agile project management: breaking old software management paradigms

42
Copyright 2003-2005, Rally Software Development Corp Agile Project Management: Breaking Old Software Management Paradigms Presented by Ryan Martens President & Founder, Rally SDC

Upload: lacota-pacheco

Post on 31-Dec-2015

18 views

Category:

Documents


0 download

DESCRIPTION

Agile Project Management: Breaking Old Software Management Paradigms. Presented by Ryan Martens President & Founder, Rally SDC. Background on Speaker. Ryan Martens President & Founder, Rally Software Development Corp. Former Director Product Management, BEA Systems - PowerPoint PPT Presentation

TRANSCRIPT

Copyright 2003-2005, Rally Software Development Corp

Agile Project Management: Breaking Old Software Management ParadigmsPresented by Ryan MartensPresident & Founder, Rally SDC

Slide 2 Copyright 2003-2005, Rally Software Development Corp

Background on Speaker

∙ Ryan Martens ₋ 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

Slide 3 Copyright 2003-2005, Rally Software Development Corp

∙ What part of the software industry do you work in?

1. Software (ISV, ASP)2. Corporate (IT)3. Services (ISV,

Consultant)4. Other

∙ How many people are PMP certified?1.YES2.NO

Audience Survey

Slide 4 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 5 Copyright 2003-2005, Rally Software Development Corp

Agile Adoption Survey

∙ What is your current level of experience in Agile Project Management and Development?

1. Know the concept2. Learning3. Some experience on a team using it4. Active practitioner

Copyright 2003-2005, Rally Software Development Corp

What does Agile look like?

Slide 7 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 8 Copyright 2003-2005, Rally Software Development Corp

A Generalized Agile Process

Release

Iteration 1 Iteration 2 Iteration 3 Iteration …

• Feature 1• Feature 2• Feature 3a

• Feature 3b• Feature 4a

• Feature 4b• Feature 5

• Feature 4c• Feature 6• Feature 7

Backlog

• Feature 8• Feature 9• ….

Slide 9 Copyright 2003-2005, Rally Software Development Corp

An Agile Iteration

Copyright 2003-2005, Rally Software Development Corp

What project management paradigms are we breaking?

Slide 11

Copyright 2003-2005, Rally Software Development Corp

What Paradigms Are We Breaking?

Culture

Measure of Success

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven Development

Command-and-Control Leadership /Collaborative

Conformance to Plan Response to Change

Design

QA

Process

Big Design Up Front Continuous

Big Test on Backend Continuous

Agile Development

Tool Support Highly specific Fully Integrated

Slide 12

Copyright 2003-2005, Rally Software Development Corp

New Measures of Success

∙ Critical Path -------------------------∙ Work Breakdown Structure

-----------------------------------------

∙ % Complete of tasks -------------- ∙ Serial functions --------------------∙ Procedural process -----------------∙ Fixed scope -------------------------

∙ Critical Chain∙ Feature Breakdown

Structure∙ # of Features accepted∙ Parallel functions∙ Empirical time boxes∙ Fixed time and resources

Measure of Success

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven Development

Conformance to Plan Response to Change

Process

Agile Development

Slide 13

Copyright 2003-2005, Rally Software Development Corp

Culture of Discipline and Collaboration

∙ 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 --------------

∙ 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

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven DevelopmentProcess

Agile Development

Culture Command-and-Control Leadership /Collaborative

Slide 14

Copyright 2003-2005, Rally Software Development Corp

Continuous Design & Test

∙ Contract with Customer ----------∙ Big Design sign off ---------------∙ Dreaded Integration phase

-------∙ Never miss Dev. Cmpt date -----∙ Work in big phases ---------------∙ Testing squeezed -----------------

∙ Partner with Customer∙ LPM Design Decisions∙ Continuous Integration∙ Never break the build∙ Work in small chunks∙ Low Features squeezed

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven DevelopmentProcess

Agile Development

Design

QA

Big Design Up Front Continuous

Big Test on Backend Continuous

Slide 15

Copyright 2003-2005, Rally Software Development Corp

Agile Project Tooling

∙ Focus on Individuals -------------∙ Optimize the parts ----------------∙ Integrate with batch update -----∙ Manage large inventories --------∙ Un-integrated with the WBS ----∙ Visibility through manual PM

report --------------------------------

∙ Focus on the team∙ Optimize the whole∙ Tight integration∙ Manage rapid throughput∙ Manage the FBS∙ Real-time visibility up, down

and across the team

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven DevelopmentProcess

Agile Development

Tool Support Highly specific Fully Integrated

Slide 16

Copyright 2003-2005, Rally Software Development Corp

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.”

Copyright 2003-2005, Rally Software Development Corp

How do you get to Agile?

Slide 18

Copyright 2003-2005, Rally Software Development Corp

Four Paths to Great Software(Consistently Responsive)

Hierarchical

Agility &Innovation

Culture of Discipline

High

High

Low

Low

Bureaucratic Start-up

GreatOrganization

(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)

Slide 19

Copyright 2003-2005, Rally Software Development Corp

Four Paths to Great Software(Consistently Responsive)

Hierarchical

Agility &Innovation

Culture of Discipline

High

High

Low

Low

Bureaucratic Start-up

Agile Development

Agile Organization

Waterfall

GreatOrganization

Chaos Solo Virtuosos

(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)

Slide 20

Copyright 2003-2005, Rally Software Development Corp

Four Paths to Great Software(Consistently Responsive)

Hierarchical

Agility &Innovation

Culture of Discipline

High

High

Low

Low

Bureaucratic Start-up

Agile Development

Agile Organization

Path 4 – Scaling & ExtendingAgile

Path 2 – Discipline

Path 1 – Agility

Waterfall

GreatOrganization

Chaos Solo Virtuosos

Path 3 – Agility & Discipline

(Adapted from Collins’ Good-to-Great Matrix of Creative Discipline, 2002)

Slide 21

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 Eliminate waste to produce higher quality with less effort

Slide 22

Copyright 2003-2005, Rally Software Development Corp

Agile = Increasing Success

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven Development

Agile Development

Risks

Cycle Time Increasing Throughput

Increasing Success

Decreasing Investment

Decreasing Operating ExpenseFeedback

Delays

DetailedInventory

Slide 23

Copyright 2003-2005, Rally Software Development Corp

Incremental and Iterative

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven Development

Agile Development

Cycle Time

FeedbackDelays

DetailedInventory

Risks

Year + Quarters Months

Whole Project

Entire Business

Project Iteration

Phase Iteration

Across JobFunctions

AcrossPhase

Across Iteration

Slide 24

Copyright 2003-2005, Rally Software Development Corp

Incremental & Iterative Cadence

Automate Tests

Elaborate Features

Into Requirements

Dem

on

stration

Iteration N Iteration N+1Iteration N-1

Detailed

Iteration

P

lann

ing

& D

esign

Manual Test&

Bug Fix

Develop all Features in Parallel

DevelopmentComplete

Fix Deferred Defects

ElaborateManual Tests

Slide 25

Copyright 2003-2005, Rally Software Development Corp

Parallel Development Cadence

Automate Tests

Elaborate Features

Into Requirements

Dem

on

stration

Iteration N Iteration N+1Iteration N-1

Detailed

Iteration

P

lann

ing

& D

esign

Test & Fix

Dev Feature Priority 1

DevelopmentComplete

Fix Deferred Defects

Elab. TestsFeature 1

Test & Fix

Dev Feature Priority 2

Elab. TestsFeature 2

Test & Fix

Dev Feature Priority 3

Elab. TestsFeature 3

Slide 26

Copyright 2003-2005, Rally Software Development Corp

Acceptance Test Driven Development Cadence

Elaborate Features

Into Requirements and Test Cases

Dem

on

stration

Iteration N Iteration N+1Iteration N-1

Detailed

Iteration

P

lann

ing

& D

esign

Dev Feature Priority 1

Auto. TestsFeature 1

Dev Feature Priority 2

Auto. TestsFeature 2

Dev Feature Priority 3

Auto. TestsFeature 3

Dev Feature Priority 4

Auto. TestsFeature 4

Dev Feature Priority 5

Auto. TestsFeature 5

Slide 27

Copyright 2003-2005, Rally Software Development Corp

Increasing Agility & Success

WaterfallDevelopment

Iterative DevelopmentIterative andIncremental

Development

ParallelDevelopment

AcceptanceTest Driven Development

Agile Development

Cycle Time Year + Quarters Months

Whole Project

Entire Business

Project Iteration

Phase Iteration

FeedbackDelays

DetailedInventory

Risks

Across JobFunctions

AcrossPhase

Across Iteration

Weeks < week

Increment Feature

Increment Feature

AcrossIncrement

Across Feature

Copyright 2003-2005, Rally Software Development Corp

The “Day in the Life” of an Agile Project Manager

Slide 29

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: ₋ Reliably Responsive to new opportunities

Copyright 2003-2005, Rally Software Development Corp

How do I get started?

Slide 31

Copyright 2003-2005, Rally Software Development Corp

Evolution of Agile inside a team

1. Rollover∙Implement daily stand-up meetings, create an automated build process to always be close to shippable code

2. Apply Agile Project Management (APM) practices∙Create and track a Backlog of stories, a Release, and its Iterations through to Acceptance∙Create short iterations and release small batches

3. Extend APM upstream into requirements elaboration∙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

4. Extend APM into test to increase quality measures∙Track test case results to story cards, manage defects from iteration to iteration∙Implement an automated acceptance testing framework

Slide 32

Copyright 2003-2005, Rally Software Development Corp

Technical Team Disciplines

1. Develop coding and naming standards2. Track remaining on tasks3. Automate the build process and share results4. Implement a Testing Framework that includes unit test,

application tests and GUI tests5. Develop a continuous integration process and server6. Move toward collective code ownership7. Cross-train through pair programming to increase flexibility,

domain knowledge and reduce risk

Slide 33

Copyright 2003-2005, Rally Software Development Corp

∙ 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₋ www.agilealliance.org

∙ Articles, events & user groups∙ Great resource for getting started

with Agile

∙ Suggested Reading₋ Home of SCRUM

www.controlchaos.com/ ₋ Agile & Iterative Development

www.craiglarman.com₋ Lean Software Development

www.poppendieck.com/ ₋ Agile Project Management

www.jimhighsmith.com/

∙ Rally Whitepaper₋ Tactical Management of Iterative

Development: Achieving Competitive Advantage, www.rallydev.com

Resources to Self-teach Agile

Slide 34

Copyright 2003-2005, Rally Software Development Corp

∙ Training Opportunities₋ Lean Manager & Practitioners

Classes∙ www.poppendieck.com/courses.ht

m

₋ SCRUM Master Class∙ www.controlchaos.com/certifiedsc

rum/

₋ eXtreme Programming∙ www.xprogramming.com/xpmag/

services.htm

₋ Rally’s 1-day Agile Workshop

∙ Mentoring Programs₋ Individual consulting:

∙ Ken Schwaber∙ Mary & Tom Poppendieck∙ Jim Highsmith∙ Mike Cohn∙ Or see www.agilealliance.org

₋ Rally Agile Pilot Program∙ 1-day team workshop∙ Developing the Agile Management

Team∙ Delivering the first Agile iterations

Professional Help

Slide 35

Copyright 2003-2005, Rally Software Development Corp

1. Pick a date two weeks from this Friday. Call it “Iteration 1 End Date.” Schedule a demo for stakeholders.

2. Decide which feature the team will accomplish (the bite-size chunk that can be completed).

3. Define the tasks required to achieve the objective and have the team bid each task.

4. Adjust scope until it looks like it might fit. Commit.

5. Execute - Have daily standup meetings for 15 minutes.

6. Be accountable. Hold the demo exactly when planned no matter how much you have achieved.

7. Reflect on what you’ve learned.

8. Do it again.

“Just give me two weeks”

Slide 36

Copyright 2003-2005, Rally Software Development Corp

Audience Survey

∙ How many people use these Project Management Tools for planning and tracking?

1. MS-Project Stand alone2. MS-Project Enterprise (or other Project Servers)3. Spreadsheets

Slide 37

Copyright 2003-2005, Rally Software Development Corp

Tools

∙ Open Source₋ M-ASE

₋ Story Server

₋ TWiki XPTrackerPlugin

₋ UserStory.NET

₋ XPlanner

₋ XpCgi

₋ XPWeb

₋ XPSwiki

∙ Commercial₋ Rally

₋ AgilePlan

₋ VersionOne

₋ Iterate

₋ Scope Manager

₋ ScrumWorks

₋ DevPlanner

₋ XpPlanIt

Most co-located teams start with paper, note cards and a whiteboard

Slide 38

Copyright 2003-2005, Rally Software Development Corp

Planning an Agile Project

1. Prioritized Backlog of features with gross estimates

2. Estimate of team velocity

3. Creates Release & Iterations

4. Draft Iteration FBS5. Detailed Planning for

the next Iteration

Slide 39

Copyright 2003-2005, Rally Software Development Corp

Tracking an Agile Project

1. Complete detailed estimates & tasks

2. Rank FBS for Iteration3. Start work & update

status4. Track status of tasks,

tests & defects5. Demonstrate new

features6. Collect metrics

Slide 40

Copyright 2003-2005, Rally Software Development Corp

Report on an Agile Project

1. Remaining burn-down

2. Accepted features3. Velocity of team4. Prioritized Backlog5. Test Coverage6. Outstanding bugs7. Current Iteration

dates

Slide 41

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?

Copyright 2003-2005, Rally Software Development Corp

[email protected] [email protected]