SlideShare une entreprise Scribd logo
1  sur  57
Télécharger pour lire hors ligne
When User Stories aren’t
enough
Active Architecture




   @tbunio
   Bornagainagilist.wordpress.com
Agile Review


Agenda                            User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• Me
• Agile Review
    - Agile Question
•   User Stories and User Story Process
•   What‟s missing?
•   Active Architecture
•   Examples
•   Questions
Agile Review


Me                                             User Stories

                                               What‟s missing?

                                               Active Architecture

                                               Examples




• Investors Group for 12 years
   - Software Developer
   - DBA/Data Architect
• Protegra for 10 years
   - DBA/Data Architect
   - Project Manager
   - Agile Team Member
      • Project Manager/Application Architect/Tester



• @tbunio
• Bornagainagilist.wordpress.com
Agile Review


Agile Interests                   User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• Agile on fixed price contacts
• Agile in large enterprises
   - Government
   - Private
• Agile estimating
• Agile tools
• Agile database development
Agile Review


Learning outcomes                  User Stories

                                   What‟s missing?

                                   Active Architecture

                                   Examples




• Describe what Active Architecture is

• Describe the benefits of Active Architecture and what
  some limitations of User Stories might be

• Contrast Active Architecture to other forms of
  Architecture documentation
Agile Review


Agile Question                    User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• What do people think is the main shortcoming of Agile?
Agile Review


Agile Review   User Stories

               What‟s missing?

               Active Architecture

               Examples
Agile Review


Traditional                                  User Stories

                                             What‟s missing?

                                             Active Architecture

                                             Examples




•   Textual Status Reports
•   Detailed project plan at the start of the project
•   Discrete project roles
•   Serial project phases
•   Large and voluminous requirements documentation
•   Large testing phase
    - Usually can result in manual testing
• „Big Bang‟ deployment
    - Usually can result in manual deployments
Agile Review


Agile                                  User Stories

                                       What‟s missing?

                                       Active Architecture

                                       Examples




•   Visual Project Management
•   Not a detailed project plan at the start of the project
•   Cross-functional team members
•   Iterations
•   Lean requirement documentation
•   Testing phase integrated in all activities
    - Automated testing
• Multiple deployments
    - Automated deployments and continuous integration
Agile Review


Agile Thoughts   User Stories

                 What‟s missing?

                 Active Architecture

                 Examples
Agile Review


Agile Thoughts                            User Stories

                                          What‟s missing?

                                          Active Architecture

                                          Examples




• Being quicker and doing less for the sake of being
  quicker and doing less is not being Agile
   - It needs to result in more value to the client and project
• We need to be careful to not throw the Baby (good
  traditional processes) out with the Bathwater (bad
  traditional processes)
• In particular
   - All Up front Design and Architecture
   - All Estimating
• Traditional and Agile are not mutually exclusive
  processes
   - There are opportunities for hybrid approaches
Agile Review


These are not the processes   User Stories

                              What‟s missing?


you are looking for…          Active Architecture

                              Examples
Agile Review


User Stories                            User Stories

                                        What‟s missing?

                                        Active Architecture

                                        Examples




     Copyright : The Sherpa Project – www.thesherpaproject.com
Agile Review


User Stories                            User Stories

                                        What‟s missing?

                                        Active Architecture

                                        Examples




     Copyright : The Sherpa Project – www.thesherpaproject.com
Agile Review


User Stories                            User Stories

                                        What‟s missing?

                                        Active Architecture

                                        Examples




     Copyright : The Sherpa Project – www.thesherpaproject.com
Agile Review


What User Stories are…      User Stories

                            What‟s missing?

                            Active Architecture

                            Examples




A small piece of         • As a user, I want to
functionality that         login with my
provides some value        password, so that I
to a user                  can gain access to
                           the site.


     “A place holder for a conversation.”
Agile Review


What User Stories are…            User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




I   Independent *
N   Negotiable (can be prioritized)
V   Valuable (to a user)
E   Estimable
S   Small
T   Testable
Agile Review


Formats             User Stories

                    What‟s missing?

                    Active Architecture

                    Examples




By the book:

As a [role],     As a [user]
I want to        I want to
[some action],   [login with my pwd]
so that          so that
[goal]           [I can gain access to
                 the site]
Agile Review


Formats                       User Stories

                              What‟s missing?

                              Active Architecture

                              Examples




                          As a
Who                       [user]
                          I want to
What                      [login with my pwd]
                          so that
Why                       [I can gain access to
                          the site]
The “by the book” format is great for learning, but
       at its core, it is just Who/What/Why
Agile Review


User Story Process                 User Stories

                                   What‟s missing?

                                   Active Architecture

                                   Examples




• Typically User Story will be compiled using a variety of
  methods.

• These include User Story Mapping and other traditional
  methods
   - Interviewing
   - Workshops
   - Focus groups
Agile Review


User Story Estimation                  User Stories

                                       What‟s missing?

                                       Active Architecture

                                       Examples




• All the User Stories are then typically estimated relatively
• Planning Poker is then done either on:
   - An iteration by iteration basis
   - A few iterations in advance


• Planning Poker will typically confirm the Requirements
  and enhance aspects of the design

• In addition, Planning Poker usually also touches on
  aspects of detailed design and architecture.
Agile Review


What is missing?                                User Stories

                                                What‟s missing?

                                                Active Architecture

                                                Examples




• Since we are doing design iteratively…
   - How do we minimize rework?
      • Could designs in later iterations cause rework?
   - How do we know our designs are consistent across iterations?
      • What if different team members are responsible for different aspects?
      • What if team composition changes?
   - How do we know they are no gaps in our design?
      • Are there user stories that we are missing?


• And since User Stories are from a user event
  perspective, are we missing „System‟ stories that define
  background details?
Agile Review


What are we missing?               User Stories

                                   What‟s missing?

                                   Active Architecture

                                   Examples




• User Stories and Planning Poker sessions will answer
  these questions eventually

• But is there a light-weight process that can answer these
  questions earlier to minimize rework?
Agile Review


Shared Design Vision   User Stories

                       What‟s missing?

                       Active Architecture

                       Examples
Agile Review


Shared Design Vision             User Stories

                                 What‟s missing?

                                 Active Architecture

                                 Examples




• After we have compiled and estimated the User Stories,
  do we have a shared vision of the design and ultimate
  solution?
   - At a high level?
Agile Review


Without a Shared Vision   User Stories

                          What‟s missing?

                          Active Architecture

                          Examples
Agile Review


User Experience Visioning              User Stories

                                       What‟s missing?

                                       Active Architecture

                                       Examples




• In David Alpert‟s talk yesterday on User Experience
  Design, he mentioned the process of „thinking through‟
  the User Experience
   - After this development went very smoothly


• This provided the awareness of context of the bigger
  picture for all that were involved.

• I am essentially proposing a Lean/Agile „thinking through‟
  process for design or architecture
Agile Review


What would the Document   User Stories

                          What‟s missing?


look like?                Active Architecture

                          Examples
Agile Review


Traditional Design   User Stories

                     What‟s missing?


Documents            Active Architecture

                     Examples




• Large

• Textual

• Passive State
Agile Review


Agile Design Document     User Stories

                          What‟s missing?

                          Active Architecture

                          Examples




• Light-weight

• Graphical and textual

• Active State
Agile Review


Agile Design Document             User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• Active versus Passive
• Traditional design document is passive like a road map
• Active Architecture is active like trip directions

• They don‟t describe the road, they describe how the road
  is to be travelled or used.
Agile Review


Three types of Agile              User Stories

                                  What‟s missing?


Requirements                      Active Architecture

                                  Examples




• User Stories – Stories of how the User interacts with
  the application or manual processes

• Component Conversations – Conversations between
  components of the application

• Technical Tasks – Technical tasks that the applications
  needs to perform within a component
Agile Review


Active Architecture   User Stories

                      What‟s missing?

                      Active Architecture

                      Examples
Agile Review


Agile Requirements                    User Stories

                                      What‟s missing?

                                      Active Architecture

                                      Examples




• It is thought that User Stories and Tests can be all the
  documentation you require on an Agile project

• But we know we can‟t create tests for everything

• How can we create complete user stories for:
   - Portfolio Rebalancing Engine
   - Payroll Engine
   - Scheduling or Matching Engines
Agile Review


Solution Planning and   User Stories

                        What‟s missing?


Design                  Active Architecture

                        Examples
Agile Review


Component Conversations           User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• Ensures User Stories are consistent in how functionality
  is handled across components
• Ensures User Stories do not create an undue amount of
  rework when an original story is encountered in a later
  iteration
• Ensures that the entire solution has been thought
  through at a high level
• Reduces the chance that a story will be discovered late
  that will require earlier stories to be revisited
• Ensures technical tasks are implemented consistently
  across components
Agile Review


Component Conversation            User Stories

                                  What‟s missing?

                                  Active Architecture

                                  Examples




• Ensures the creation of complex back-end high level
  requirements that would be inefficient and possibly
  inconsistent to define on a story by story basis
• Ensures the creation of complex back-end high level
  requirements that may not be covered easily by user
  stories
• Components conversations can be reviewed to ensure
  we have all the system functionality covered and there
  are no gaps.
Agile Review


Agile Planning   User Stories

                 What‟s missing?

                 Active Architecture

                 Examples
Agile Review


Agile Planning   User Stories

                 What‟s missing?

                 Active Architecture

                 Examples
Agile Review


Solution Driven Development         User Stories

                                    What‟s missing?

                                    Active Architecture

                                    Examples




• “I believe in what I like to term Solution Driven
  Development. If you can‟t or haven‟t envisioned the
  solution, how can you start executing the project? Some
  people would say that not having to envision the total
  solution is Agile. I believe it is unprofessional. Some
  would say that the solution will change anyway so why
  spend the effort envisioning and planning when it is likely
  to change? I believe that we can’t proceed unless we
  have a shared vision on what we are creating.”
Agile Review


Welcome Changing                       User Stories

                                       What‟s missing?


Requirements                           Active Architecture

                                       Examples




• “welcome changes to the requirements in response to
  evolving business needs”.

• Two assumptions:
   - “Changes are welcome to the requirements” – This means we
     know what the baseline of the requirements are. Otherwise, how
     could we know what a change is?

   - “Respond to evolving business needs” - We are responding to
     evolving business needs. This assumes that we have a baseline
     of current business needs.
Agile Review


Active Architecture                User Stories

                                   What‟s missing?


Objectives                         Active Architecture

                                   Examples




• To think things through from a requirements and design
  perspective

• To envision and design the solution to ensure that the
  solution is complete, consistent, and cohesive
Agile Review


Potential Format                     User Stories

                                     What‟s missing?

                                     Active Architecture

                                     Examples




• [#][Component A] does
   [primary action].[object].[additional action] by
   [Action].[Component B] when [event]
Agile Review


Facebook example –                       User Stories

                                         What‟s missing?


Browsing Friends                         Active Architecture

                                         Examples




- [1][SuggestedFriends] does [create].[SuggestedFriendList] by [filtering
  common connections across all friends].[Connection-DB] when [user
  logs on]
- [2][FacebookUser] does
  [Sends].[FriendInvitation] by
  [selectingconnectioninvitebutton].[SuggestedFriendList] when
  [User clicks on send friend request]
- [3][FacebookUser] does
  [Updates].[SuggestedFriendList] by
  [selectingconnectionhidebutton].[SuggestedFriendList][HideFriendList]
  when
  [User clicks on hide friend]
- [4][FacebookUser] does
  [Accept].[FriendInvitation] by
  [selecting accept invitation].[PendingInvitations] when
  [User clicks on accept invitation]
Agile Review


FaceBook example –                 User Stories

                                   What‟s missing?


Learnings                          Active Architecture

                                   Examples




• There is a process that creates these
  SuggestedFriendLists separate from the User
  interactions
• There is a Connection-DB that is used to create this
  SuggestedFriendList and possibly the HideFriendList
• There is an object that contains the Pending Invitations.
  (And possibly a similar concept for other pending
  objects)
• There is the concept of a persisted HideFriendList to
  ensure suggestions that have been selected to be
  hidden will not appear again.
Agile Review


Email Example   User Stories

                What‟s missing?

                Active Architecture

                Examples
Agile Review


Email Example   User Stories

                What‟s missing?

                Active Architecture

                Examples
Agile Review


Email Example   User Stories

                What‟s missing?

                Active Architecture

                Examples
Agile Review


Email Example   User Stories

                What‟s missing?

                Active Architecture

                Examples
Agile Review


Email Example   User Stories

                What‟s missing?

                Active Architecture

                Examples
Agile Review


Email Example                          User Stories

                                       What‟s missing?

                                       Active Architecture

                                       Examples




• Although the User Story map will help to flesh out the
  functionality in Iterations, what about the following items?

   - Message delivery and transmission (and confirmation)
   - How and when will messages be stored?
       • How can they be recovered?
   - Junk mail and approved sender functionality
   - Encryption/Decryption functionality


• For novel solutions, it usually isn‟t enough to just
  document the user interactions requirements
Agile Review


Active Architecture                     User Stories

                                        What‟s missing?


Guidelines                              Active Architecture

                                        Examples




• Maximum of 2-3 days for a 3-6 month project
• Accompanied by a solution design diagram on a white
  board
   - Take pictures after review with team to gain consensus
   - You can‟t make me use Visio… not gonna do it..


• These two deliverables can be all that is required for
  Agile design documentation
Courage
Courage
Courage


• Most of what I‟ve presented are other thoughts and
  guidelines with my thoughts and guidelines

• I encourage you to try them out and tailor them to your
  own situation

• How else can we make Agile processes even better?
References


• Blog Posts :
   - http://bornagainagilist.wordpress.com/2011/06/13/active-
     architecture-user-stories-for-architecture/
   - http://bornagainagilist.wordpress.com/2011/07/14/solution-
     driven-development/


• InfoQ article:
   - http://www.infoq.com/articles/active-architecture-agile
Questions?

Contenu connexe

Similaire à T bunio active-architecture

The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...Adrian Jones
 
Agile Analysis, Not Fragile Analysis
Agile Analysis, Not Fragile AnalysisAgile Analysis, Not Fragile Analysis
Agile Analysis, Not Fragile AnalysisAdam Monago
 
Exploring ux practices 4 product development agile2012
Exploring ux practices 4 product development agile2012Exploring ux practices 4 product development agile2012
Exploring ux practices 4 product development agile2012drewz lin
 
Agile Way to First Iteration
Agile Way to First IterationAgile Way to First Iteration
Agile Way to First IterationMikalai Alimenkou
 
Agile Estimation And Planning Part I
Agile Estimation And Planning Part IAgile Estimation And Planning Part I
Agile Estimation And Planning Part IKevin Zamora
 
Effective Prototyping Process for Software Creation
Effective Prototyping Process for Software CreationEffective Prototyping Process for Software Creation
Effective Prototyping Process for Software CreationJonathan Arnowitz
 
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013Ariadna Font Llitjos
 
Lean-Agile SharePoint Development
Lean-Agile SharePoint DevelopmentLean-Agile SharePoint Development
Lean-Agile SharePoint DevelopmentBill Ayers
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to KanbanWill Iverson
 
10 Hinweise für Architekten
10 Hinweise für Architekten10 Hinweise für Architekten
10 Hinweise für Architektenadesso AG
 
Frayed Edges - Architecture In Practice
Frayed Edges - Architecture In PracticeFrayed Edges - Architecture In Practice
Frayed Edges - Architecture In PracticeAman Kohli
 
Building an mvp that works for users
Building an mvp that works for users Building an mvp that works for users
Building an mvp that works for users Ariadna Font Llitjos
 
Ten Advices for Architects
Ten Advices for ArchitectsTen Advices for Architects
Ten Advices for ArchitectsEberhard Wolff
 
Using rapid prototying_for_design_iteration
Using rapid prototying_for_design_iterationUsing rapid prototying_for_design_iteration
Using rapid prototying_for_design_iterationdrewz lin
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - UXPA International
 
Sdec 2011 ux_agile_svt
Sdec 2011 ux_agile_svtSdec 2011 ux_agile_svt
Sdec 2011 ux_agile_svtsdeconf
 

Similaire à T bunio active-architecture (20)

The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal...
 
Agile Analysis, Not Fragile Analysis
Agile Analysis, Not Fragile AnalysisAgile Analysis, Not Fragile Analysis
Agile Analysis, Not Fragile Analysis
 
Exploring ux practices 4 product development agile2012
Exploring ux practices 4 product development agile2012Exploring ux practices 4 product development agile2012
Exploring ux practices 4 product development agile2012
 
AT2012_Pune_UserStories_BhawanaGupta
AT2012_Pune_UserStories_BhawanaGuptaAT2012_Pune_UserStories_BhawanaGupta
AT2012_Pune_UserStories_BhawanaGupta
 
Agile Way to First Iteration
Agile Way to First IterationAgile Way to First Iteration
Agile Way to First Iteration
 
Agile Estimation And Planning Part I
Agile Estimation And Planning Part IAgile Estimation And Planning Part I
Agile Estimation And Planning Part I
 
Effective Prototyping Process for Software Creation
Effective Prototyping Process for Software CreationEffective Prototyping Process for Software Creation
Effective Prototyping Process for Software Creation
 
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013
Designing an MVP that works for users (2 and 1/2 hours) @Lean UX NYC 2013
 
User Story Mapping
User Story MappingUser Story Mapping
User Story Mapping
 
Lean-Agile SharePoint Development
Lean-Agile SharePoint DevelopmentLean-Agile SharePoint Development
Lean-Agile SharePoint Development
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
 
What is UCD ?
What is UCD ?What is UCD ?
What is UCD ?
 
10 Hinweise für Architekten
10 Hinweise für Architekten10 Hinweise für Architekten
10 Hinweise für Architekten
 
Frayed Edges - Architecture In Practice
Frayed Edges - Architecture In PracticeFrayed Edges - Architecture In Practice
Frayed Edges - Architecture In Practice
 
Building an mvp that works for users
Building an mvp that works for users Building an mvp that works for users
Building an mvp that works for users
 
Ten Advices for Architects
Ten Advices for ArchitectsTen Advices for Architects
Ten Advices for Architects
 
Using rapid prototying_for_design_iteration
Using rapid prototying_for_design_iterationUsing rapid prototying_for_design_iteration
Using rapid prototying_for_design_iteration
 
Agile marries itil
Agile marries itilAgile marries itil
Agile marries itil
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Sdec 2011 ux_agile_svt
Sdec 2011 ux_agile_svtSdec 2011 ux_agile_svt
Sdec 2011 ux_agile_svt
 

Plus de sdeconf

S rogalsky user-storymapping
S rogalsky user-storymappingS rogalsky user-storymapping
S rogalsky user-storymappingsdeconf
 
Sdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svtSdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svtsdeconf
 
S bueckert sdecmobile
S bueckert sdecmobileS bueckert sdecmobile
S bueckert sdecmobilesdeconf
 
Ro r trilogy-part-1
Ro r trilogy-part-1Ro r trilogy-part-1
Ro r trilogy-part-1sdeconf
 
Rackforce the cloud
Rackforce the cloudRackforce the cloud
Rackforce the cloudsdeconf
 
Pscad agile adoption
Pscad agile adoptionPscad agile adoption
Pscad agile adoptionsdeconf
 
L phillips apm
L phillips apmL phillips apm
L phillips apmsdeconf
 
J wagner security
J wagner securityJ wagner security
J wagner securitysdeconf
 
G meredith scala
G meredith scalaG meredith scala
G meredith scalasdeconf
 
Dan perron lim
Dan perron limDan perron lim
Dan perron limsdeconf
 
Sdec11.agile ina day
Sdec11.agile ina daySdec11.agile ina day
Sdec11.agile ina daysdeconf
 
D alpert ux101
D alpert ux101D alpert ux101
D alpert ux101sdeconf
 
C maksymchuk android
C maksymchuk androidC maksymchuk android
C maksymchuk androidsdeconf
 
C fowler intro-azure
C fowler intro-azureC fowler intro-azure
C fowler intro-azuresdeconf
 
C fowler azure-dojo
C fowler azure-dojoC fowler azure-dojo
C fowler azure-dojosdeconf
 
Booked in agileadoption
Booked in agileadoptionBooked in agileadoption
Booked in agileadoptionsdeconf
 
A baryklo design-patterns
A baryklo design-patternsA baryklo design-patterns
A baryklo design-patternssdeconf
 

Plus de sdeconf (17)

S rogalsky user-storymapping
S rogalsky user-storymappingS rogalsky user-storymapping
S rogalsky user-storymapping
 
Sdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svtSdec 2011 ask_watchlisten_svt
Sdec 2011 ask_watchlisten_svt
 
S bueckert sdecmobile
S bueckert sdecmobileS bueckert sdecmobile
S bueckert sdecmobile
 
Ro r trilogy-part-1
Ro r trilogy-part-1Ro r trilogy-part-1
Ro r trilogy-part-1
 
Rackforce the cloud
Rackforce the cloudRackforce the cloud
Rackforce the cloud
 
Pscad agile adoption
Pscad agile adoptionPscad agile adoption
Pscad agile adoption
 
L phillips apm
L phillips apmL phillips apm
L phillips apm
 
J wagner security
J wagner securityJ wagner security
J wagner security
 
G meredith scala
G meredith scalaG meredith scala
G meredith scala
 
Dan perron lim
Dan perron limDan perron lim
Dan perron lim
 
Sdec11.agile ina day
Sdec11.agile ina daySdec11.agile ina day
Sdec11.agile ina day
 
D alpert ux101
D alpert ux101D alpert ux101
D alpert ux101
 
C maksymchuk android
C maksymchuk androidC maksymchuk android
C maksymchuk android
 
C fowler intro-azure
C fowler intro-azureC fowler intro-azure
C fowler intro-azure
 
C fowler azure-dojo
C fowler azure-dojoC fowler azure-dojo
C fowler azure-dojo
 
Booked in agileadoption
Booked in agileadoptionBooked in agileadoption
Booked in agileadoption
 
A baryklo design-patterns
A baryklo design-patternsA baryklo design-patterns
A baryklo design-patterns
 

Dernier

11042024_First India Newspaper Jaipur.pdf
11042024_First India Newspaper Jaipur.pdf11042024_First India Newspaper Jaipur.pdf
11042024_First India Newspaper Jaipur.pdfFIRST INDIA
 
13042024_First India Newspaper Jaipur.pdf
13042024_First India Newspaper Jaipur.pdf13042024_First India Newspaper Jaipur.pdf
13042024_First India Newspaper Jaipur.pdfFIRST INDIA
 
Emerging issues in migration policies.ppt
Emerging issues in migration policies.pptEmerging issues in migration policies.ppt
Emerging issues in migration policies.pptNandinituteja1
 
Power in International Relations (Pol 5)
Power in International Relations (Pol 5)Power in International Relations (Pol 5)
Power in International Relations (Pol 5)ssuser583c35
 
15042024_First India Newspaper Jaipur.pdf
15042024_First India Newspaper Jaipur.pdf15042024_First India Newspaper Jaipur.pdf
15042024_First India Newspaper Jaipur.pdfFIRST INDIA
 
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...The Lifesciences Magazine
 
Geostrategic significance of South Asian countries.ppt
Geostrategic significance of South Asian countries.pptGeostrategic significance of South Asian countries.ppt
Geostrategic significance of South Asian countries.pptUsmanKaran
 
12042024_First India Newspaper Jaipur.pdf
12042024_First India Newspaper Jaipur.pdf12042024_First India Newspaper Jaipur.pdf
12042024_First India Newspaper Jaipur.pdfFIRST INDIA
 
16042024_First India Newspaper Jaipur.pdf
16042024_First India Newspaper Jaipur.pdf16042024_First India Newspaper Jaipur.pdf
16042024_First India Newspaper Jaipur.pdfFIRST INDIA
 
Political-Ideologies-and-The-Movements.pptx
Political-Ideologies-and-The-Movements.pptxPolitical-Ideologies-and-The-Movements.pptx
Political-Ideologies-and-The-Movements.pptxSasikiranMarri
 
lok sabha Elections in india- 2024 .pptx
lok sabha Elections in india- 2024 .pptxlok sabha Elections in india- 2024 .pptx
lok sabha Elections in india- 2024 .pptxdigiyvbmrkt
 

Dernier (12)

11042024_First India Newspaper Jaipur.pdf
11042024_First India Newspaper Jaipur.pdf11042024_First India Newspaper Jaipur.pdf
11042024_First India Newspaper Jaipur.pdf
 
World Economic Forum : The Global Risks Report 2024
World Economic Forum : The Global Risks Report 2024World Economic Forum : The Global Risks Report 2024
World Economic Forum : The Global Risks Report 2024
 
13042024_First India Newspaper Jaipur.pdf
13042024_First India Newspaper Jaipur.pdf13042024_First India Newspaper Jaipur.pdf
13042024_First India Newspaper Jaipur.pdf
 
Emerging issues in migration policies.ppt
Emerging issues in migration policies.pptEmerging issues in migration policies.ppt
Emerging issues in migration policies.ppt
 
Power in International Relations (Pol 5)
Power in International Relations (Pol 5)Power in International Relations (Pol 5)
Power in International Relations (Pol 5)
 
15042024_First India Newspaper Jaipur.pdf
15042024_First India Newspaper Jaipur.pdf15042024_First India Newspaper Jaipur.pdf
15042024_First India Newspaper Jaipur.pdf
 
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...
Mitochondrial Fusion Vital for Adult Brain Function and Disease Understanding...
 
Geostrategic significance of South Asian countries.ppt
Geostrategic significance of South Asian countries.pptGeostrategic significance of South Asian countries.ppt
Geostrategic significance of South Asian countries.ppt
 
12042024_First India Newspaper Jaipur.pdf
12042024_First India Newspaper Jaipur.pdf12042024_First India Newspaper Jaipur.pdf
12042024_First India Newspaper Jaipur.pdf
 
16042024_First India Newspaper Jaipur.pdf
16042024_First India Newspaper Jaipur.pdf16042024_First India Newspaper Jaipur.pdf
16042024_First India Newspaper Jaipur.pdf
 
Political-Ideologies-and-The-Movements.pptx
Political-Ideologies-and-The-Movements.pptxPolitical-Ideologies-and-The-Movements.pptx
Political-Ideologies-and-The-Movements.pptx
 
lok sabha Elections in india- 2024 .pptx
lok sabha Elections in india- 2024 .pptxlok sabha Elections in india- 2024 .pptx
lok sabha Elections in india- 2024 .pptx
 

T bunio active-architecture

  • 1. When User Stories aren’t enough Active Architecture @tbunio Bornagainagilist.wordpress.com
  • 2. Agile Review Agenda User Stories What‟s missing? Active Architecture Examples • Me • Agile Review - Agile Question • User Stories and User Story Process • What‟s missing? • Active Architecture • Examples • Questions
  • 3. Agile Review Me User Stories What‟s missing? Active Architecture Examples • Investors Group for 12 years - Software Developer - DBA/Data Architect • Protegra for 10 years - DBA/Data Architect - Project Manager - Agile Team Member • Project Manager/Application Architect/Tester • @tbunio • Bornagainagilist.wordpress.com
  • 4. Agile Review Agile Interests User Stories What‟s missing? Active Architecture Examples • Agile on fixed price contacts • Agile in large enterprises - Government - Private • Agile estimating • Agile tools • Agile database development
  • 5. Agile Review Learning outcomes User Stories What‟s missing? Active Architecture Examples • Describe what Active Architecture is • Describe the benefits of Active Architecture and what some limitations of User Stories might be • Contrast Active Architecture to other forms of Architecture documentation
  • 6. Agile Review Agile Question User Stories What‟s missing? Active Architecture Examples • What do people think is the main shortcoming of Agile?
  • 7. Agile Review Agile Review User Stories What‟s missing? Active Architecture Examples
  • 8. Agile Review Traditional User Stories What‟s missing? Active Architecture Examples • Textual Status Reports • Detailed project plan at the start of the project • Discrete project roles • Serial project phases • Large and voluminous requirements documentation • Large testing phase - Usually can result in manual testing • „Big Bang‟ deployment - Usually can result in manual deployments
  • 9. Agile Review Agile User Stories What‟s missing? Active Architecture Examples • Visual Project Management • Not a detailed project plan at the start of the project • Cross-functional team members • Iterations • Lean requirement documentation • Testing phase integrated in all activities - Automated testing • Multiple deployments - Automated deployments and continuous integration
  • 10. Agile Review Agile Thoughts User Stories What‟s missing? Active Architecture Examples
  • 11. Agile Review Agile Thoughts User Stories What‟s missing? Active Architecture Examples • Being quicker and doing less for the sake of being quicker and doing less is not being Agile - It needs to result in more value to the client and project • We need to be careful to not throw the Baby (good traditional processes) out with the Bathwater (bad traditional processes) • In particular - All Up front Design and Architecture - All Estimating • Traditional and Agile are not mutually exclusive processes - There are opportunities for hybrid approaches
  • 12. Agile Review These are not the processes User Stories What‟s missing? you are looking for… Active Architecture Examples
  • 13. Agile Review User Stories User Stories What‟s missing? Active Architecture Examples Copyright : The Sherpa Project – www.thesherpaproject.com
  • 14. Agile Review User Stories User Stories What‟s missing? Active Architecture Examples Copyright : The Sherpa Project – www.thesherpaproject.com
  • 15. Agile Review User Stories User Stories What‟s missing? Active Architecture Examples Copyright : The Sherpa Project – www.thesherpaproject.com
  • 16. Agile Review What User Stories are… User Stories What‟s missing? Active Architecture Examples A small piece of • As a user, I want to functionality that login with my provides some value password, so that I to a user can gain access to the site. “A place holder for a conversation.”
  • 17. Agile Review What User Stories are… User Stories What‟s missing? Active Architecture Examples I Independent * N Negotiable (can be prioritized) V Valuable (to a user) E Estimable S Small T Testable
  • 18. Agile Review Formats User Stories What‟s missing? Active Architecture Examples By the book: As a [role], As a [user] I want to I want to [some action], [login with my pwd] so that so that [goal] [I can gain access to the site]
  • 19. Agile Review Formats User Stories What‟s missing? Active Architecture Examples As a Who [user] I want to What [login with my pwd] so that Why [I can gain access to the site] The “by the book” format is great for learning, but at its core, it is just Who/What/Why
  • 20. Agile Review User Story Process User Stories What‟s missing? Active Architecture Examples • Typically User Story will be compiled using a variety of methods. • These include User Story Mapping and other traditional methods - Interviewing - Workshops - Focus groups
  • 21. Agile Review User Story Estimation User Stories What‟s missing? Active Architecture Examples • All the User Stories are then typically estimated relatively • Planning Poker is then done either on: - An iteration by iteration basis - A few iterations in advance • Planning Poker will typically confirm the Requirements and enhance aspects of the design • In addition, Planning Poker usually also touches on aspects of detailed design and architecture.
  • 22. Agile Review What is missing? User Stories What‟s missing? Active Architecture Examples • Since we are doing design iteratively… - How do we minimize rework? • Could designs in later iterations cause rework? - How do we know our designs are consistent across iterations? • What if different team members are responsible for different aspects? • What if team composition changes? - How do we know they are no gaps in our design? • Are there user stories that we are missing? • And since User Stories are from a user event perspective, are we missing „System‟ stories that define background details?
  • 23. Agile Review What are we missing? User Stories What‟s missing? Active Architecture Examples • User Stories and Planning Poker sessions will answer these questions eventually • But is there a light-weight process that can answer these questions earlier to minimize rework?
  • 24. Agile Review Shared Design Vision User Stories What‟s missing? Active Architecture Examples
  • 25. Agile Review Shared Design Vision User Stories What‟s missing? Active Architecture Examples • After we have compiled and estimated the User Stories, do we have a shared vision of the design and ultimate solution? - At a high level?
  • 26. Agile Review Without a Shared Vision User Stories What‟s missing? Active Architecture Examples
  • 27. Agile Review User Experience Visioning User Stories What‟s missing? Active Architecture Examples • In David Alpert‟s talk yesterday on User Experience Design, he mentioned the process of „thinking through‟ the User Experience - After this development went very smoothly • This provided the awareness of context of the bigger picture for all that were involved. • I am essentially proposing a Lean/Agile „thinking through‟ process for design or architecture
  • 28. Agile Review What would the Document User Stories What‟s missing? look like? Active Architecture Examples
  • 29. Agile Review Traditional Design User Stories What‟s missing? Documents Active Architecture Examples • Large • Textual • Passive State
  • 30. Agile Review Agile Design Document User Stories What‟s missing? Active Architecture Examples • Light-weight • Graphical and textual • Active State
  • 31. Agile Review Agile Design Document User Stories What‟s missing? Active Architecture Examples • Active versus Passive • Traditional design document is passive like a road map • Active Architecture is active like trip directions • They don‟t describe the road, they describe how the road is to be travelled or used.
  • 32. Agile Review Three types of Agile User Stories What‟s missing? Requirements Active Architecture Examples • User Stories – Stories of how the User interacts with the application or manual processes • Component Conversations – Conversations between components of the application • Technical Tasks – Technical tasks that the applications needs to perform within a component
  • 33. Agile Review Active Architecture User Stories What‟s missing? Active Architecture Examples
  • 34. Agile Review Agile Requirements User Stories What‟s missing? Active Architecture Examples • It is thought that User Stories and Tests can be all the documentation you require on an Agile project • But we know we can‟t create tests for everything • How can we create complete user stories for: - Portfolio Rebalancing Engine - Payroll Engine - Scheduling or Matching Engines
  • 35. Agile Review Solution Planning and User Stories What‟s missing? Design Active Architecture Examples
  • 36. Agile Review Component Conversations User Stories What‟s missing? Active Architecture Examples • Ensures User Stories are consistent in how functionality is handled across components • Ensures User Stories do not create an undue amount of rework when an original story is encountered in a later iteration • Ensures that the entire solution has been thought through at a high level • Reduces the chance that a story will be discovered late that will require earlier stories to be revisited • Ensures technical tasks are implemented consistently across components
  • 37. Agile Review Component Conversation User Stories What‟s missing? Active Architecture Examples • Ensures the creation of complex back-end high level requirements that would be inefficient and possibly inconsistent to define on a story by story basis • Ensures the creation of complex back-end high level requirements that may not be covered easily by user stories • Components conversations can be reviewed to ensure we have all the system functionality covered and there are no gaps.
  • 38. Agile Review Agile Planning User Stories What‟s missing? Active Architecture Examples
  • 39. Agile Review Agile Planning User Stories What‟s missing? Active Architecture Examples
  • 40. Agile Review Solution Driven Development User Stories What‟s missing? Active Architecture Examples • “I believe in what I like to term Solution Driven Development. If you can‟t or haven‟t envisioned the solution, how can you start executing the project? Some people would say that not having to envision the total solution is Agile. I believe it is unprofessional. Some would say that the solution will change anyway so why spend the effort envisioning and planning when it is likely to change? I believe that we can’t proceed unless we have a shared vision on what we are creating.”
  • 41. Agile Review Welcome Changing User Stories What‟s missing? Requirements Active Architecture Examples • “welcome changes to the requirements in response to evolving business needs”. • Two assumptions: - “Changes are welcome to the requirements” – This means we know what the baseline of the requirements are. Otherwise, how could we know what a change is? - “Respond to evolving business needs” - We are responding to evolving business needs. This assumes that we have a baseline of current business needs.
  • 42. Agile Review Active Architecture User Stories What‟s missing? Objectives Active Architecture Examples • To think things through from a requirements and design perspective • To envision and design the solution to ensure that the solution is complete, consistent, and cohesive
  • 43. Agile Review Potential Format User Stories What‟s missing? Active Architecture Examples • [#][Component A] does [primary action].[object].[additional action] by [Action].[Component B] when [event]
  • 44. Agile Review Facebook example – User Stories What‟s missing? Browsing Friends Active Architecture Examples - [1][SuggestedFriends] does [create].[SuggestedFriendList] by [filtering common connections across all friends].[Connection-DB] when [user logs on] - [2][FacebookUser] does [Sends].[FriendInvitation] by [selectingconnectioninvitebutton].[SuggestedFriendList] when [User clicks on send friend request] - [3][FacebookUser] does [Updates].[SuggestedFriendList] by [selectingconnectionhidebutton].[SuggestedFriendList][HideFriendList] when [User clicks on hide friend] - [4][FacebookUser] does [Accept].[FriendInvitation] by [selecting accept invitation].[PendingInvitations] when [User clicks on accept invitation]
  • 45. Agile Review FaceBook example – User Stories What‟s missing? Learnings Active Architecture Examples • There is a process that creates these SuggestedFriendLists separate from the User interactions • There is a Connection-DB that is used to create this SuggestedFriendList and possibly the HideFriendList • There is an object that contains the Pending Invitations. (And possibly a similar concept for other pending objects) • There is the concept of a persisted HideFriendList to ensure suggestions that have been selected to be hidden will not appear again.
  • 46. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples
  • 47. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples
  • 48. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples
  • 49. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples
  • 50. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples
  • 51. Agile Review Email Example User Stories What‟s missing? Active Architecture Examples • Although the User Story map will help to flesh out the functionality in Iterations, what about the following items? - Message delivery and transmission (and confirmation) - How and when will messages be stored? • How can they be recovered? - Junk mail and approved sender functionality - Encryption/Decryption functionality • For novel solutions, it usually isn‟t enough to just document the user interactions requirements
  • 52. Agile Review Active Architecture User Stories What‟s missing? Guidelines Active Architecture Examples • Maximum of 2-3 days for a 3-6 month project • Accompanied by a solution design diagram on a white board - Take pictures after review with team to gain consensus - You can‟t make me use Visio… not gonna do it.. • These two deliverables can be all that is required for Agile design documentation
  • 55. Courage • Most of what I‟ve presented are other thoughts and guidelines with my thoughts and guidelines • I encourage you to try them out and tailor them to your own situation • How else can we make Agile processes even better?
  • 56. References • Blog Posts : - http://bornagainagilist.wordpress.com/2011/06/13/active- architecture-user-stories-for-architecture/ - http://bornagainagilist.wordpress.com/2011/07/14/solution- driven-development/ • InfoQ article: - http://www.infoq.com/articles/active-architecture-agile