50
1 Photo by K. W. Sanders The Flow of the Agile Business Analyst Steve Adolph Steve Adolph [email protected]

The Role of the Agile Business Analyst

Embed Size (px)

DESCRIPTION

The business analyst (BA) role seems conspicuously absent from most agile methods. Does agile make the BA role obsolete? Certainly not! But how does a BA exploit the short cycle times and collaborative nature of agile methods? Drawing from the principles of lean product development flow, Steve Adolph introduces five principles for the agile BA—Open the Channels, Chart the Flow, Generate Flow, Lean Out the Flow, and Bridge the Flow. As a communicator, the BA must Open the Channels and Chart the Flow to align all stakeholders. BAs can leverage traditional tools such as use cases to Generate Flow and feed user stories to fast moving agile teams. However, large backlogs of stories are wasteful, so lean principles are applied to Lean Out the Flow. Finally BAs may need to Bridge the Flow between more traditional elements of the organization and its agile teams. Whether you are a BA new to agile or struggling to find the right fit in your team, join this highly interactive session to “get your flow” going.

Citation preview

Page 1: The Role of the Agile Business Analyst

1

Photo by K. W. Sanders

The  Flow  of  the  Agile  Business  Analyst  

Steve  Adolph  

Steve  Adolph  [email protected]

Page 2: The Role of the Agile Business Analyst

2

§ 3

Page 3: The Role of the Agile Business Analyst

3

WIIFM  (What’s  In  It  For  Me)  On  a  post-­‐it  note,  complete  the  following  sentence:        

“This  was  a  really  great  workshop  because….”        

 

Where  are    the  BAs?  

Page 4: The Role of the Agile Business Analyst

4

         

In  the  agile  world,  do  I  s@ll  have  a  useful  job?  

Where  in  an  agile  process  is  the  BA?    What  does  the  BA  do  in  an  agile  process?  

Photo by Caroline Schiff Photography

Product Backlog

Sprint Backlog

Sprint 2-4 Weeks

Daily Scrum

Product Increment

Scrum Framework

Page 5: The Role of the Agile Business Analyst

5

Scrum  Roles  Product Owner

Scrum Master

Photo by Greg Peverill-Cont

Photo by Gavin White

Photo by Reinhold Behringer

Delivery Team

?

Where is the BA?

Scrum Master

Product Backlog

Sprint Backlog

Product Increment

Product Owner

Team

Here?

Here?

Even Here? Out Here?

Page 6: The Role of the Agile Business Analyst

6

Analysis  

Design  

Implement  

Test  

Waterfall – Agile Hybrid “Water Scrumming”

Where is the BA?

Scaled  Agile  Framework™  Big  Picture  

Where is the BA?

Page 7: The Role of the Agile Business Analyst

7

So, Just Where are the BAs?

What  is  a  BA?  In  your  groups  discuss  the  BA  role:    

What  does  a  BA  do?    What  should  they  do?    What  contribution  do  they  make?  

 Summarize  your  conversation  and  be  prepared  to  

present  your  summary.      

 

Page 8: The Role of the Agile Business Analyst

8

The  Shocking    Truth  About  

Requirements  

Or    Why  We  Need  to  be  Agile  Business  Analysts  

They  Change!  

Photo by “Mad Physicist”

Page 9: The Role of the Agile Business Analyst

9

Embrace  Change!  Uncertainty  in  the  Project  Goal  

Initial State Actual Path and precision of artifacts

Uncertainty in Stakeholder Satisfaction Space

What our SRS spec’d

Courtesy Philippe Kruchten Source: W. Royce, IBM

Scope Creep or Learning?

The  Fog  

Page 10: The Role of the Agile Business Analyst

10

Learning

The  distribu@on  of  features  used  in  a  typical  applica@on  

How  can  we  get  more  of  this….  

…and  less  of  this?  

Page 11: The Role of the Agile Business Analyst

11

SRS

Analysis  

Design  

Implement  

Test  

Requirements  and  the  Cone  of  Uncertainty  

Page 12: The Role of the Agile Business Analyst

12

Flow  Lean  for  Design  

Problems  with    Queues  

Page 13: The Role of the Agile Business Analyst

13

“We fail to recognize the critical relationship between batch size and cycle time, and the critical relationship between batch size and feedback speed” – Donald Reinersten

Batch Size

The  Problem  with  Stage  Gates  and  Phases:  Inhibi@ng  Flow  

The work product being transferred from one phase to another is 100% of the work product of the previous phase. This is maximum theoretical batch size and will result in maximum theoretical cycle time … Don Reinertsen, The Principles of Product Development Flow

Analysis  

Design  

Implement  

Test  

Page 14: The Role of the Agile Business Analyst

14

               Enhance  your  opportunity  for  learning  by  leaving    things  un@l  the  last  RESPONSIBLE    moment  

Photo by Nick Wheeler

How  to  Reduce  Waste  and  Create  a  Flow  of  Value    

How  to  Walk  Down  the  Road  in  the  Fog   Vision  

Release 1 Release 2 Release 3

ITERATION 1 ITERATION 2 ITERATION 3 ITERATION 4

Task  1  4  hours  

Task  2  6  hours  

Task  3  2  hours  

Task  4  8  hours  

Task  5  2  hours  

Photo by Matthias Werner

Page 15: The Role of the Agile Business Analyst

15

Progressive  Story  Elaboration  And  Multi  Level  Planning  

Current and next Sprint

Current Release

Next Release

Rel

ease

1

Rel

ease

2

Rel

ease

3

Reducing  Waste:  Reverse  the  Cone  of  Uncertainty  

“Cone  of  Learning”  

Wishful Thinking

What we need now

What we need soon

What we want someday

Page 16: The Role of the Agile Business Analyst

16

Agile Business Analysis: The BA as a Creator of Value

Create a steady flow of valuable “ready” stories

Group Exercise:

Among your colleagues discuss how you generate requirements in your organization. Consider the following:

Are you more flow (small batch) or large batch? - Is it an official process or unofficial?

- What is a valuable requirement?

Summarize your discussion and be prepared to present it to the rest of the workshop.

Page 17: The Role of the Agile Business Analyst

17

The  “BIG”  Story  

Photo by Brian Bennett

As a traveler, I want to be able to cancel a reservation in one move, so that all the details can handled. Acceptance Criteria: §  Cancel res for hotel, car, plane §  Charge 10% fee §  Confirmation email

A  User  Story  

Page 18: The Role of the Agile Business Analyst

18

User  Stories  are  Valuable  

I’d pay money to have that.

I’d pay money to know that.

I’d pay money to see that.

…Or what if you are building this?

Page 19: The Role of the Agile Business Analyst

19

UML  Model  of  a  Backlog  Item  

Ref Dean Leffingwell

Story  Epic  Realized by

0,1

Backlog  Item  

1..*

Really Big Epic

Epic

Epic

Epic

Epic

Epic

Page 20: The Role of the Agile Business Analyst

20

Story  Splitting  

Story  Hierarchy  

Page 21: The Role of the Agile Business Analyst

21

GUI

Business Logic

Database

A  Value  Based  Work  Break  Down    

Story 1 Story 2

Are  We  Done  Yet?  

Story 1 Story 2

GUI

Business Logic

Database

Page 22: The Role of the Agile Business Analyst

22

Are  We  Done  Yet?  

Story 1 Story 2

GUI

Business Logic

Database

The  Agile  BA  Five Principles Creating

a Flow of Value

Page 23: The Role of the Agile Business Analyst

23

Five  Principles  for  Crea@ng  a  Steady  Flow  of  Value  

1.   Open  the  Channels  2.   Chart  the  Flow  3.   Generate  Flow  4.   Lean  out  the  Flow  5.   Bridge  the  Flow  

Principle  #1  Open  the  Channels  

Photo by Peter Vajda

Page 24: The Role of the Agile Business Analyst

24

Don’t  be  this…  

…be  this  

Page 25: The Role of the Agile Business Analyst

25

Principle  #2    Chart  the  Flow  

Photo by Chris Seward

Mul@  Level  Planning  Vision  

Release 1 Release 2 Release 3

ITERATION 1 ITERATION 2 ITERATION 3 ITERATION 4

Task  1  4  hours  

Task  2  6  hours  

Task  3  2  hours  

Task  4  8  hours  

Task  5  2  hours  

Photo by Matthias Werner

Page 26: The Role of the Agile Business Analyst

26

§ Photo by Eric Begin

Principle  #3  Generate  Flow  

Generating  Flow  Through  Story  Splitting  

Page 27: The Role of the Agile Business Analyst

27

By  Development  Phase?  

By  Component?  

Page 28: The Role of the Agile Business Analyst

28

Three  Approaches  for  Generating  Flow

l Model  Driven  l Acceptance  Criteria  Driven  l Hi  fidelity-­‐  Low  Fidelity  

Page 29: The Role of the Agile Business Analyst

29

UML  Model  of  a  Backlog  Item  

Ref Dean Leffingwell

Use  Case  

Class Diagram

State Diagram

Other Types . . .

Model  

optionally elaborated by

Story  Epic  Realized by

0,1

Backlog  Item  

1..*

What  models  are  you  using?  Models  and  Model  Usage   Take 5 minutes to interview someone not seated in your group:

1.  What models do they use? 2.  What aspects of the problem domain do the

models reveal? 3.  Do they find the models useful? 4.  What problems (if any) have they encountered

with the models?

Be prepared to present your findings

Photo by Jason Coleman

Page 30: The Role of the Agile Business Analyst

30

Upgrade  Seat  

Traveler

Model  Driven  User  Stories  

§ Upgrade Seat § Actor: Traveler: Ticketed passenger

§ Main Success Scenario

§ 1. Traveler enters her account code for the flight and requests a seat upgrade.

§ 2.The system verifies the traveler is eligible for upgrade. § 3. The system verifies there are seats available for upgrading.

§ 4. The system upgrades the Traveler seat assignment, and the appropriate upgrade certificates are removed from the Traveler’s account.

§ 5. The system issues an upgrade receipt to the Traveler. § Alternatives § 1a: Traveler is a frequent flier

§  1a.1 The system displays her current mileage and recent flight activity.

§ 3a: Traveler does not have enough upgrade certificates §  3a.1 Traveler purchases additional upgrade certificates.

§ Business Rules § Upgrade Eligibility § Platinum frequent flyers may request an upgrade 72 hours prior to departure. § Gold frequent flyers may request an upgrade 24 hours prior to departure.

§ Silver frequent flyers are not eligible for upgrades

As a traveler…. As a traveler I want to upgrade my seat…

As a traveler I want to purchase upgrade certificates.

As a traveler I want to see my current status

As a traveler, I want to be able to cancel a reservation in one move, so that all the details can handled. Acceptance Criteria: §  Cancel res for hotel, car, plane §  Charge 10% fee §  Confirmation email

Split  Along  Acceptance  Criteria  

Page 31: The Role of the Agile Business Analyst

31

As a traveler, I want to be able to cancel my reservations for a hotel, car, and plane in one move so all details are handled. Acceptance Criteria: § plane reservation is canceled § Hotel reservation is canceled § Car reservation is canceled

Cancel  res  for  hotel,  car,  plane  

As a traveler, I want to be able to cancel my plane reservation in one move so all details are handled. Acceptance Criteria: § Cancelation request is sent to airline § Confirmation received from airline reservation is canceled

Plane  Reserva@on  is  Cancelled  

Page 32: The Role of the Agile Business Analyst

32

Low-­‐Fidelity/High  Fidelity  

Photo by Vanessa Arn Photo by Alberto Cardona

Bill  Wake’s  20  Ways  to  Split  a  Story:      1  through  9  the  “Big  Picture”  

 Consider  First   Defer  /  Later   Explanation  

Research   Implement   What  have  others  done?  

Spike     Implement   Explore  a  quick  solution  

Manual   Automated   Often  have  to  retain  manual  solution  anyway  

Buy   Build   Trade  cost  of  customizing….  

Build     Buy   ….versus  cost  of  implementing  yourself  

Single  User   Multi  –  User   Fewer  worries  about  scale,  user  accounts.  

API  only   User  Interface   Test  may  function  without  UI  

Character  or  Script  UI  

GUI   Simple  interface  can  prove  out  ideas  

Generic  UI   Custom  UI   Naked  objects  approach  can  be  cheaper  

§ - http://xp123.com/articles/twenty-ways-to-split-stories/

Page 33: The Role of the Agile Business Analyst

33

Bill  Wake’s  20  Ways  to  Split  a  Story:      10  through  16  the  “ilities”  

 Consider  First   Defer  /  Later   Explanation  

Static   Dynamic   Do  once  and  ignore  updates  

Ignore  Errors   Handle  Errors   Minimize  Error  codes  (don’t  ignore  exceptions)  

Transient   Persistent   Focus  on  behaviour  over  persistence  

Low  Fidelity   High  Fidelity   Quality  of  result  (e.g.  pixel  depth)  

Unreliable   Reliable   “Perfect  uptime  is  very  expensive”  Wm  Pietri  

Small  Scale   Large  Scale   Build  load  capacity  over  time  

Less  “ilities”   More  “ilities”   Address  NFRs  later  

§ - http://xp123.com/articles/twenty-ways-to-split-stories/

Bill  Wake’s  20  Ways  to  Split  a  Story:      17  through  20  the  “Features”  (+  2  more)  

 Consider  First   Defer  /  Later   Explanation  

Few   Many   Easier  to  do  fewer  features  

Main  Flow   Alternative  Flows  

Happy  paths  versus  all  possible  paths  

0   1   Nothing  is  easier  than  something  

1   Many   One  is  easier  than  many  

One  level   All  levels   One  level  is  the  base  case  for  all  levels  

Base  Case   General  Case   Base  case  must  be  done,  others  needn’t  

§ - http://xp123.com/articles/twenty-ways-to-split-stories/

Page 34: The Role of the Agile Business Analyst

34

When  to  Use?  

Big Epic representing a significant feature that should be implemented in a few months?

Smaller “story”, some functional uncertainty, and low technical risk?

Smaller “story”, with some technical risk?

§ Visioning § Road mapping § Release planning § Sprint Planning § Backlog Grooming

Creating a Cadence for Generating Flow

Photo by Davide Simonell

Page 35: The Role of the Agile Business Analyst

35

How are you generating flow?

In your groups discuss the following topics 1.  What ceremonies do you have that generate flow? 2.  What are the impediments to generating a flow of

sprintable stories? 3.  What changes do you have influence to make that can

overcome these impediments and improve flow?

Be prepared to share your conclusions.

Principle  4    “Lean  out  the  Flow”  

Craig Kohtz

Page 36: The Role of the Agile Business Analyst

36

Queues  are  bad….  mmmkay?  

Product  Development  Flow  

Page 37: The Role of the Agile Business Analyst

37

Queues  Create…  

Longer  Cycle  Times  

Increase  Risk  

More  Variability  

More  Overhead  

Lower  Quality  

Less  Motivation  From Product Development Flow by Donald Reinersten

Problems  with    Queues  

What  is  the  Problem  with  Stage  Gates  and  Phases?  

? Don Reinertsen, The Principles of Product Development Flow

Analysis  

Design  

Implement  

Test  

Page 38: The Role of the Agile Business Analyst

38

@#$%!!!    We  don’t  have  to  worry  about  queues  and  variance,  

we’re  agile!  

We  just  throw  @#$  into  the  backlog!  

We’re  Agile?  

Where is the value?

Page 39: The Role of the Agile Business Analyst

39

Photo by World Bank Photo Collection Photo by Pennybinary

Wow!  I  love  what  I’m  hearing  about  this  agile  transformation  thing  you’re  doing…are  you  really  delivering  new  features  every  two  weeks?  

Yes!  We  get  new  valuable  features  into  revenue  service  every  two  weeks.  

Photo by World Bank Photo Collection Photo by Pennybinary

I  love  you  guys!  Look  I’ve  been  thinking  about  a  new  feature  that  will  just  rock  the  market  place.  When  can  I  have  it?  

Let’s  see,  you’ll  have  to  talk  to  the  product  owner,  but  right  now  we  have  over  300  items  in  our  backlog  and  we’re  delivering  about  5  items  each  sprint…..  

Page 40: The Role of the Agile Business Analyst

40

“Lean  out  the  Flow”  

Craig Kohtz

Leaning out the flow is a principle and a set of practices for minimizing the inventory of requirements (Work in Progress), using small batches of requirements and minimizing queues to facilitate rapid feedback and learning.

Decreasing    Queue  Length:  Shape of a well groomed Backlog

Page 41: The Role of the Agile Business Analyst

41

Tools  for  Leaning  Out  the  Flow  

§ Groom  the  Backlog  § Collabora@on  § Cadence  

Backlog Grooming

l  Looking    forward  over  the  next  few  iterations  and  slicing  stories  to  fit  into  the  funnel      

l  Confirming  which  existing  stories  are  to  be  included  

l  Adding  new  stories  based  on  risks,  new  discoveries,  bugs  and  “overhang”  stories  

 

Setting  the  theme/stories  for  the  upcoming  iteration  Slicing  large  stories  Assigning  stories  for  expansion  

Page 42: The Role of the Agile Business Analyst

42

Mul@-­‐Level  Planning  Grooming  and  Cadence   Vision  

Release 1 Release 2 Release 3

ITERATION 1 ITERATION 2 ITERATION 3 ITERATION 4 ITERATION 5 ITERATION 6

Decreasing    Lq  Queue  Length:  Multi Level Planning and the Groomed Backlog

Future Release

Next Release

Current Release

Page 43: The Role of the Agile Business Analyst

43

Reducing  Queue  Length:    Backlog  Policy  and  Well  Groomed  Backlog(s)  

Team Backlog: Current Release

Feature Backlog: Features for Next Release

Portfolio Backlog: Epics representing large initiatives

Page 44: The Role of the Agile Business Analyst

44

Closer Collaboration

Cadence Rhythm creates predictability and facilitates flow

Page 45: The Role of the Agile Business Analyst

45

Toss  the  Trash  Photo by Ming Xia

“Lean  out  the  Flow”:  Lessons  Learned  

§ Progressive Elaboration - Leave it to the last responsible moment

§ Multi Level Planning

§ Groom with regular cadence

§ Queues are bad: Limit Work in Progress

§ Don’t assume you don’t have large queues just because you’re “agile”

§ Collaborate!!

§ Collaborate!!

§ Collaborate!!

Page 46: The Role of the Agile Business Analyst

46

Principle  #5    Bridge  the  Flow

Photo by Ava Babil

SOW

Business Case

Risk Assessment

Vision

SRS

Project Plan

Architecture

Test Plan

Test Results

Governance  and  the  PMO  View  of  the  World  

Project Execution

and Control

Initiation / Planning

Project Conclusion Will it be ready in time?

Will it work? Is it safe? Is this project still a good bet?

Page 47: The Role of the Agile Business Analyst

47

Working in your groups, discuss the following questions for Bridging the Flow: In terms of stage gates and documentation and rapid feedback cycles:

1.  Which stage gates and documents are relevant (e.g. actually used, or necessary)?

2.  Which are required by outside regulatory agency? 3.  Which could be eliminated altogether? 4.  Which could potentially be, optimized, or

lightened? 5.  Which gate keepers can you engage as allies?

Be prepared to report out your answers (and questions)

The  Flow  of  the  Agile  BA  

Page 48: The Role of the Agile Business Analyst

48

Where  is  the  BA?  Product Owner

Scrum Master

Photo by Greg Peverill-Cont

Photo by Gavin White

Photo by Reinhold Behringer

Delivery Team

?

l Principle  1:  Open  the  Channels  l  Cadence  l  Boundary  Spanning  l  Personal  Networks  l  Informal  Backchannels  

l Principle  2:  Chart  the  Flow  l  Vision    l  Roadmap    

The  5  Principles  for  the  Flow  of  the  Agile  BA  

Page 49: The Role of the Agile Business Analyst

49

l Principle  3:  Generate  Flow  l  Model  Driven  Stories  l  Splitting  stories  along  acceptance  criteria  l  Lo-­‐fidelity/Hi  Fidelity  story  splits  

l Principle  4:  Lean  Out  the  Flow  l  Self  organization  –  decreasing  average  processing  time    l  Limit  Queue  Length  

l  Multi-­‐level  planning  (Chart  the  Flow)  l  Monitor  backlog  size  

The  5  Principles  for  the  Flow  of  the  Agile  BA  

l Principle  5:  Bridge  the  Flow  l  Optimize  Stage  Gates  l  Eliminate,  Lighten,  or  Optimize  Documentation  l  Cultivate  Allies  l  Don’t  let  required  work  products  slow  cycle  time:  Be  

prepared  to  reverse  engineer  work  products    

   

The  5  Principles  for  the  Flow  of  the  Agile  BA  

Page 50: The Role of the Agile Business Analyst

50

Steve  Adolph  [email protected]