Rally Roadblocks

Download Report

Transcript Rally Roadblocks

Agile Project Management:
Breaking Old Software Management Paradigms
Presented by Ryan Martens
President & Founder, Rally SDC
Copyright 2003-2005, Rally Software Development Corp
Background on Speaker
∙ Ryan Martens
₋
₋
₋
₋
₋
Slide 2
President & Founder, Rally
Software Development Corp.
Former Director Product
Management, BEA Systems
VP Services, Avitek (Custom Java
Development Firm)
Director/Project Manager, BDM
Technologies (Systems
Integrator)
MBA, BSCE (Construction Mgmt)
& Minor CS
The Most Agile Route Between Two Points
On Course On Time
Rally increases the reliability and
responsiveness of software-driven
companies by enhancing
development productivity and agility
Copyright 2003-2005, Rally Software Development Corp
Audience Survey
∙
What part of the software
industry do you work in?
1.
2.
3.
4.
Slide 3
Software (ISV, ASP)
Corporate (IT)
Services (ISV, Consultant)
Other
∙ How many people are PMP
certified?
1.YES
2.NO
Copyright 2003-2005, Rally Software Development Corp
Objectives for Today
∙ Thesis:
Agile Project Management is becoming a mainstream alternative to
“Plan Driven” Project Management. Agile is both disciplined and
innovative; it makes your team more reliable and responsive.
∙ What you will learn:
₋ What does Agile look like?
₋ What project management paradigms are we breaking with Agile
versus Plan-Driven Development?
₋ How do you get to Agile?
₋ How does it change the “Day-in-the-life” of a PM?
₋ How do you get started?
₋ What tools and resources are available?
Slide 4
Copyright 2003-2005, Rally Software Development Corp
Agile Adoption Survey
∙
What is your current level of experience in Agile
Project Management and Development?
1.
2.
3.
4.
Slide 5
Know the concept
Learning
Some experience on a team using it
Active practitioner
Copyright 2003-2005, Rally Software Development Corp
What does Agile look like?
Copyright 2003-2005, Rally Software Development Corp
Survey of Agile Methods
∙ Dynamic System Development Method (Dane Faulkner)
∙ Adaptive Software Development (Jim Highsmith)
∙ Crystal (Alistair Cockburn)
∙ SCRUM (Ken Schwaber)
∙ XP (Kent Beck)
∙ Lean Software Development (Mary Poppendieck)
∙ Feature Driven Development (Jeff DeLuca)
∙ Agile RUP
Slide 7
Copyright 2003-2005, Rally Software Development Corp
A Generalized Agile Process
Release
Slide 8
Iteration 1
Iteration 2
Iteration 3
Iteration …
Backlog
• Feature 1
• Feature 2
• Feature 3a
• Feature 3b
• Feature 4a
• Feature 4b
• Feature 5
• Feature 4c
• Feature 6
• Feature 7
• Feature 8
• Feature 9
• ….
Copyright 2003-2005, Rally Software Development Corp
An Agile Iteration
Slide 9
Copyright 2003-2005, Rally Software Development Corp
What project management paradigms are we
breaking?
Copyright 2003-2005, Rally Software Development Corp
What Paradigms Are We Breaking?
Agile Development
Process
Waterfall
Development
Iterative Development
Measure
of Success
Conformance to Plan
Culture
Command-and-Control
Design
Big Design Up Front
QA
Tool Support
Slide 11
Iterative and
Incremental
Development
Parallel
Development
Acceptance
Test Driven
Development
Response to Change
Leadership /Collaborative
Continuous
Big Test on Backend
Continuous
Highly specific
Fully Integrated
Copyright 2003-2005, Rally Software Development Corp
New Measures of Success
Agile Development
Waterfall
Development
Process
Measure
of Success
Iterative and
Incremental
Development
Parallel
Development
Conformance to Plan
∙
∙
∙
∙
∙
∙
Slide 12
Iterative Development
Critical Path -----------------------Work Breakdown Structure
---------------------------------------% Complete of tasks ------------Serial functions ------------------Procedural process ---------------Fixed scope -----------------------Copyright 2003-2005, Rally Software Development Corp
Acceptance
Test Driven
Development
Response to Change
∙
∙
∙
∙
∙
∙
Critical Chain
Feature Breakdown
Structure
# of Features accepted
Parallel functions
Empirical time boxes
Fixed time and resources
Culture of Discipline and Collaboration
Agile Development
Waterfall
Development
Process
Iterative and
Incremental
Development
Command-and-Control
Culture
∙
∙
∙
∙
∙
∙
Slide 13
Iterative Development
Culture of sign-offs ---------------High-level plans = Roll-up of
detailed plans ----------------------Detailed Planning early ----------Protect the Project Scope --------Demonstrate at End ---------------Weekly PM meetings -------------
Parallel
Development
Acceptance
Test Driven
Development
Leadership /Collaborative
∙
∙
∙
∙
∙
∙
Copyright 2003-2005, Rally Software Development Corp
Culture of learning
Gross estimates of backlog
create the high-level plans
Detailed Planning in chunks
Protect the Iteration Scope
Demonstrate every Iteration
Daily Stand-up meetings
Continuous Design & Test
Agile Development
Process
Waterfall
Development
Design
Big Design Up Front
Iterative and
Incremental
Development
Parallel
Development
∙
∙
∙
∙
∙
∙
Contract with Customer --------Big Design sign off -------------Dreaded Integration phase -----Never miss Dev. Cmpt date ---Work in big phases -------------Copyright 2003-2005,
Rally Software Development Corp
Testing squeezed
------------
Acceptance
Test Driven
Development
Continuous
Big Test on Backend
QA
Slide 14
Iterative Development
Continuous
∙
∙
∙
∙
∙
∙
Partner with Customer
LPM Design Decisions
Continuous Integration
Never break the build
Work in small chunks
Low Features squeezed
Agile Project Tooling
Agile Development
Waterfall
Development
Process
Tool Support
∙
∙
∙
∙
∙
∙
Slide 15
Iterative Development
Iterative and
Incremental
Development
Highly specific
Parallel
Development
Acceptance
Test Driven
Development
Fully Integrated
Focus on Individuals -----------Optimize the parts --------------Integrate with batch update ---Manage large inventories ------Un-integrated with the WBS ---Visibility through manual PM
report -------------------------------
∙
∙
∙
∙
∙
∙
Copyright 2003-2005, Rally Software Development Corp
Focus on the team
Optimize the whole
Tight integration
Manage rapid throughput
Manage the FBS
Real-time visibility up, down
and across the team
Benefits from Implementing Agile
1.
Deliver benefits early (First Iteration is demonstrable)
2.
Avoid significant rework by only doing just-in-time detailed
design
3.
Avoid dead-end design decisions by managing with LPM decisions
and trade-off matrix
4.
Raise quality by moving testing forward in the process
5.
Become responsive by supporting scope adjustments every
iteration
6.
Become reliable by instituting regular heartbeats to the team
7.
Increase estimating accuracy by working in small chunks
8.
Decrease risk by always having working software
9.
Increase throughput via real-time visibility
10. Increase team moral by dropping the “death marches.”
Slide 16
Copyright 2003-2005, Rally Software Development Corp
How do you get to Agile?
Copyright 2003-2005, Rally Software Development Corp
Four Paths to Great Software
(Consistently Responsive)
Culture of Discipline
High
Great
Organization
Hierarchical
Agility &
Innovation
Low
High
Bureaucratic
Start-up
Low
Slide 18
(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)
Copyright 2003-2005, Rally Software Development Corp
Four Paths to Great Software
(Consistently Responsive)
Culture of Discipline
High
Great
Organization
Hierarchical
Agile
Organization
Agility &
Innovation
Low
Waterfall
Agile
Development
Chaos
Solo Virtuosos
Bureaucratic
Start-up
Low
Slide 19
High
(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)
Copyright 2003-2005, Rally Software Development Corp
Four Paths to Great Software
(Consistently Responsive)
Culture of Discipline
High
Great
Organization
Hierarchical
Agile
Organization
Path 4 – Scaling & Extending
Agile
Path 1 – Agility
Agility &
Innovation
Low
Agile
Development
Waterfall
Path 3 – Agility &
Discipline
Path 2 – Discipline
Solo Virtuosos
Chaos
Bureaucratic
Start-up
Low
Slide 20
High
(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)
Copyright 2003-2005, Rally Software Development Corp
How Organizations Become More Responsive
*D. Anderson: Agile Software Management
Accounting for Systems
Three Levers to Increase Responsiveness
Increase Throughput
Shorten cycle times to speed delivery of functionality to
customers
Decrease Investment
Reduce inventory and the cost capture, elaboration,
communication and scheduling
Decrease Operating Expense
Slide 21
Eliminate waste to produce higher quality with less effort
Copyright 2003-2005, Rally Software Development Corp
Agile = Increasing Success
Agile Development
Waterfall
Development
Iterative Development
Iterative and
Incremental
Development
Cycle Time
Increasing Throughput
Detailed
Inventory
Decreasing Investment
Parallel
Development
Feedback
Delays
Decreasing Operating Expense
Risks
Increasing Success
Slide 22
Copyright 2003-2005, Rally Software Development Corp
Acceptance
Test Driven
Development
Incremental and Iterative
Agile Development
Waterfall
Development
Iterative Development
Iterative and
Incremental
Development
Year +
Quarters
Months
Detailed
Inventory
Whole Project
Phase
Iteration
Feedback
Delays
Across Job
Functions
Across
Phase
Across
Iteration
Entire
Business
Project
Iteration
Cycle Time
Risks
Slide 23
Copyright 2003-2005, Rally Software Development Corp
Parallel
Development
Acceptance
Test Driven
Development
Incremental & Iterative Cadence
Development
Complete
Slide 24
Elaborate
Manual
Tests
Manual Test
&
Bug Fix
Iteration N
Copyright 2003-2005, Rally Software Development Corp
Demonstration
Iteration N-1
Detailed Iteration
Planning & Design
Elaborate
Features
Into
Requirements
Develop all
Features in Parallel
Automate Tests
Fix
Deferred Defects
Iteration N+1
Parallel Development Cadence
Development
Complete
Slide 25
Iteration N
Copyright 2003-2005, Rally Software Development Corp
Automate Tests
Demonstration
Iteration N-1
Detailed Iteration
Planning & Design
Elaborate
Features
Into
Requirements
Dev Feature
Priority 1
Test &
Fix
Elab. Tests
Feature 1
Dev Feature
Priority 2
Test &
Fix
Elab. Tests
Feature 2
Dev Feature
Priority 3
Test &
Fix
Elab. Tests
Feature 3
Fix
Deferred Defects
Iteration N+1
Acceptance Test Driven Development Cadence
Slide 26
Iteration N
Copyright 2003-2005, Rally Software Development Corp
Demonstration
Iteration N-1
Detailed Iteration
Planning & Design
Elaborate
Features
Into
Requirements
and Test Cases
Dev Feature
Dev Feature
Priority 1
Priority 4
Auto. Tests
Auto. Tests
Feature 1
Feature 4
Dev Feature
Dev Feature
Priority 2
Priority 5
Auto. Tests
Auto. Tests
Feature 2
Feature 5
Dev Feature
Priority 3
Auto. Tests
Feature 3
Iteration N+1
Increasing Agility & Success
Agile Development
Waterfall
Development
Iterative Development
Iterative and
Incremental
Development
Parallel
Development
Acceptance
Test Driven
Development
Year +
Quarters
Months
Weeks
< week
Detailed
Inventory
Whole Project
Phase
Iteration
Increment
Feature
Feedback
Delays
Across Job
Functions
Across
Phase
Across
Iteration
Across
Increment
Across
Feature
Entire
Business
Project
Iteration
Increment
Feature
Cycle Time
Risks
Slide 27
Copyright 2003-2005, Rally Software Development Corp
The “Day in the Life” of an Agile Project
Manager
Copyright 2003-2005, Rally Software Development Corp
Customer Success Story
∙ Before
₋
8 month release, 2 month iterations
∙ Dilemma
₋
Still missing the opportunities & Iteration goals
∙ After
₋
₋
₋
2 week iterations exposed issues
Separate Patch & Support team
Lowered defect inventory
∙ As a results:
₋
Slide 29
Reliably Responsive to new opportunities
Copyright 2003-2005, Rally Software Development Corp
How do I get started?
Copyright 2003-2005, Rally Software Development Corp
Evolution of Agile inside a team
1.
Rollover
2.
Apply Agile Project Management (APM) practices
3.
Extend APM upstream into requirements elaboration
4.
Extend APM into test to increase quality measures
Slide 31
∙Implement daily stand-up meetings, create an automated build process to always be
close to shippable code
∙Create and track a Backlog of stories, a Release, and its Iterations through to Acceptance
∙Create short iterations and release small batches
∙Capture use cases, scenarios for richer requirements statements, and build parent-child
relationships to pull testing forward
∙Build tight link to the customer for feedback
∙Track test case results to story cards, manage defects from iteration to iteration
∙Implement an automated acceptance testing framework
Copyright 2003-2005, Rally Software Development Corp
Technical Team Disciplines
1.
2.
3.
4.
5.
6.
7.
Slide 32
Develop coding and naming standards
Track remaining on tasks
Automate the build process and share results
Implement a Testing Framework that includes unit test,
application tests and GUI tests
Develop a continuous integration process and server
Move toward collective code ownership
Cross-train through pair programming to increase flexibility,
domain knowledge and reduce risk
Copyright 2003-2005, Rally Software Development Corp
Resources to Self-teach Agile
∙
∙
∙
Slide 33
Suggested Process
₋
₋
₋
₋
₋
₋
Internal champion
Suggested reading
Brown bag discussions
Guest lectures
Local Agile/XP user groups
Agile Conferences
∙ Agile Development
∙ XP / Agile Universe
∙ Software Development
Where to start on the web
₋
Suggested Reading
₋
Home of SCRUM
₋
Agile & Iterative Development
₋
₋
∙
www.controlchaos.com/
www.craiglarman.com
Lean Software Development
www.poppendieck.com/
Agile Project Management
www.jimhighsmith.com/
Rally Whitepaper
₋
www.agilealliance.org
∙ Articles, events & user groups
∙ Great resource for getting started with
Agile
Copyright 2003-2005, Rally Software Development Corp
Tactical Management of Iterative
Development: Achieving
Competitive Advantage,
www.rallydev.com
Professional Help
∙
Slide 34
Training Opportunities
₋
Lean Manager & Practitioners
Classes
∙
Mentoring Programs
₋
Individual consulting:
₋
Rally Agile Pilot Program
∙ www.poppendieck.com/courses.ht
m
₋
SCRUM Master Class
₋
eXtreme Programming
₋
Rally’s 1-day Agile Workshop
∙ www.controlchaos.com/certifiedscr
um/
∙ www.xprogramming.com/xpmag/s
ervices.htm
Copyright 2003-2005, Rally Software Development Corp
∙
∙
∙
∙
∙
Ken Schwaber
Mary & Tom Poppendieck
Jim Highsmith
Mike Cohn
Or see www.agilealliance.org
∙ 1-day team workshop
∙ Developing the Agile Management
Team
∙ Delivering the first Agile iterations
“Just give me two weeks”
5.
1.
2.
3.
4.
Slide 35
Pick a date two weeks from this
Friday. Call it “Iteration 1 End
Date.” Schedule a demo for
stakeholders.
Decide which feature the team will
accomplish (the bite-size chunk
that can be completed).
Define the tasks required to
achieve the objective and have the
team bid each task.
Adjust scope until it looks like it
might fit. Commit.
6.
7.
8.
Copyright 2003-2005, Rally Software Development Corp
Execute - Have daily
standup meetings for 15
minutes.
Be accountable. Hold the
demo exactly when planned
no matter how much you
have achieved.
Reflect on what you’ve
learned.
Do it again.
Audience Survey
∙
How many people use these Project Management
Tools for planning and tracking?
1.
2.
3.
Slide 36
MS-Project Stand alone
MS-Project Enterprise (or other Project Servers)
Spreadsheets
Copyright 2003-2005, Rally Software Development Corp
Tools
∙ Open Source
₋
₋
₋
₋
₋
₋
₋
₋
∙ Commercial
M-ASE
Story Server
TWiki XPTrackerPlugin
UserStory.NET
XPlanner
XpCgi
XPWeb
XPSwiki
₋
₋
₋
₋
₋
₋
₋
₋
Rally
AgilePlan
VersionOne
Iterate
Scope Manager
ScrumWorks
DevPlanner
XpPlanIt
Most co-located teams start with paper, note cards and a whiteboard
Slide 37
Copyright 2003-2005, Rally Software Development Corp
Planning an Agile Project
1.
2.
3.
4.
5.
Slide 38
Prioritized Backlog of
features with gross
estimates
Estimate of team
velocity
Creates Release &
Iterations
Draft Iteration FBS
Detailed Planning for
the next Iteration
Copyright 2003-2005, Rally Software Development Corp
Tracking an Agile Project
1.
2.
3.
4.
5.
6.
Slide 39
Complete detailed
estimates & tasks
Rank FBS for Iteration
Start work & update
status
Track status of tasks,
tests & defects
Demonstrate new
features
Collect metrics
Copyright 2003-2005, Rally Software Development Corp
Report on an Agile Project
1. Remaining burndown
2. Accepted features
3. Velocity of team
4. Prioritized Backlog
5. Test Coverage
6. Outstanding bugs
7. Current Iteration
dates
Slide 40
Copyright 2003-2005, Rally Software Development Corp
Objectives for Today
∙ Thesis:
Agile Project Management is becoming a mainstream alternative to
“Plan-Driven” Project Management. Agile is both disciplined and
innovative; it makes your team more reliable and responsive.
∙ What you learned:
₋ What does Agile look like?
₋ What project management paradigms are we breaking with Agile
versus Plan-Driven Development?
₋ How do you get to Agile?
₋ How does it change the “Day-in-the-life” of a PM?
₋ How do you get started?
₋ What tools and resources are available?
Slide 41
Copyright 2003-2005, Rally Software Development Corp
Questions?
[email protected] OR
[email protected]
Copyright 2003-2005, Rally Software Development Corp