Upload
techwellpresentations
View
306
Download
1
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
1
Photo by K. W. Sanders
The Flow of the Agile Business Analyst
Steve Adolph
Steve Adolph [email protected]
2
§ 3
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?
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
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?
6
Analysis
Design
Implement
Test
Waterfall – Agile Hybrid “Water Scrumming”
Where is the BA?
Scaled Agile Framework™ Big Picture
Where is the BA?
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.
8
The Shocking Truth About
Requirements
Or Why We Need to be Agile Business Analysts
They Change!
Photo by “Mad Physicist”
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
10
Learning
The distribu@on of features used in a typical applica@on
How can we get more of this….
…and less of this?
11
SRS
Analysis
Design
Implement
Test
Requirements and the Cone of Uncertainty
12
Flow Lean for Design
Problems with Queues
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
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
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
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.
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
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?
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
20
Story Splitting
Story Hierarchy
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
22
Are We Done Yet?
Story 1 Story 2
GUI
Business Logic
Database
The Agile BA Five Principles Creating
a Flow of Value
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
24
Don’t be this…
…be this
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
26
§ Photo by Eric Begin
Principle #3 Generate Flow
Generating Flow Through Story Splitting
27
By Development Phase?
By Component?
28
Three Approaches for Generating Flow
l Model Driven l Acceptance Criteria Driven l Hi fidelity-‐ Low Fidelity
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
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
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
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/
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/
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
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
36
Queues are bad…. mmmkay?
Product Development Flow
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
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?
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…..
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
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
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
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
44
Closer Collaboration
Cadence Rhythm creates predictability and facilitates flow
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!!
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?
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
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
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
50
Steve Adolph [email protected]