Agile Project Management: Breaking Old Software Management Paradigms - PowerPoint PPT Presentation

1 / 42
About This Presentation
Title:

Agile Project Management: Breaking Old Software Management Paradigms

Description:

Presentations: Design engaging, interactive Adobe Flash and multimedia presentations online ... Promotional Brief Flash videos that showcase key resources. ... – PowerPoint PPT presentation

Number of Views:944
Avg rating:3.0/5.0
Slides: 43
Provided by: ryanam
Category:

less

Transcript and Presenter's Notes

Title: Agile Project Management: Breaking Old Software Management Paradigms


1
Agile Project Management Breaking Old Software
Management Paradigms
  • Presented by Ryan Martens
  • President Founder, Rally SDC

2
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
3
Audience Survey
  • What part of the software industry do you work
    in?
  • Software (ISV, ASP)
  • Corporate (IT)
  • Services (ISV, Consultant)
  • Other
  • How many people are PMP certified?
  • YES
  • NO

4
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?

5
Agile Adoption Survey
  • What is your current level of experience in Agile
    Project Management and Development?
  • Know the concept
  • Learning
  • Some experience on a team using it
  • Active practitioner

6
What does Agile look like?
7
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

8
A Generalized Agile Process
Release
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
  • .

9
An Agile Iteration
10
What project management paradigms are we breaking?
11
What Paradigms Are We Breaking?
Agile Development
WaterfallDevelopment
Iterative Development
Iterative and Incremental Development
Parallel Development
AcceptanceTest Driven Development
Process
Measure of Success
Conformance to Plan
Response to Change
Culture
Command-and-Control
Leadership /Collaborative
Design
QA
Tool Support
12
New Measures of Success
Agile Development
WaterfallDevelopment
Iterative Development
Iterative and Incremental Development
Parallel Development
AcceptanceTest Driven Development
Process
Measure of Success
Conformance to Plan
Response to Change
  • 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

13
Culture of Discipline and Collaboration
Agile Development
WaterfallDevelopment
Iterative Development
Iterative and Incremental Development
Parallel Development
AcceptanceTest Driven Development
Process
Culture
Command-and-Control
Leadership /Collaborative
  • 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

14
Continuous Design Test
Agile Development
WaterfallDevelopment
Iterative Development
Iterative and Incremental Development
Parallel Development
AcceptanceTest Driven Development
Process
Design
QA
  • 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

15
Agile Project Tooling
Agile Development
WaterfallDevelopment
Iterative Development
Iterative and Incremental Development
Parallel Development
AcceptanceTest Driven Development
Process
Tool Support
  • 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

16
Benefits from Implementing Agile
  • Deliver benefits early (First Iteration is
    demonstrable)
  • Avoid significant rework by only doing
    just-in-time detailed design
  • Avoid dead-end design decisions by managing with
    LPM decisions and trade-off matrix
  • Raise quality by moving testing forward in the
    process
  • Become responsive by supporting scope adjustments
    every iteration
  • Become reliable by instituting regular heartbeats
    to the team
  • Increase estimating accuracy by working in small
    chunks
  • Decrease risk by always having working software
  • Increase throughput via real-time visibility
  • Increase team moral by dropping the death
    marches.

17
How do you get to Agile?
18
Four Paths to Great Software(Consistently
Responsive)
Culture of Discipline
Hierarchical
High
Great Organization
Agility Innovation
High
Low
Bureaucratic
Start-up
Low
(Adapted from Collins Good-to-Great Matrix of
Creative Discipline, 2002)
19
Four Paths to Great Software(Consistently
Responsive)
Culture of Discipline
Hierarchical
High
Great Organization
Agile Organization
Waterfall
Agility Innovation
Agile Development
High
Low
Solo Virtuosos
Chaos
Bureaucratic
Start-up
Low
(Adapted from Collins Good-to-Great Matrix of
Creative Discipline, 2002)
20
Four Paths to Great Software(Consistently
Responsive)
Culture of Discipline
Hierarchical
High
Great Organization
Agile Organization
Path 4 Scaling Extending Agile
Path 1 Agility
Waterfall
Agility Innovation
Agile Development
High
Low
Path 2 Discipline
Path 3 Agility Discipline
Solo Virtuosos
Chaos
Bureaucratic
Start-up
Low
(Adapted from Collins Good-to-Great Matrix of
Creative Discipline, 2002)
21
How Organizations Become More Responsive
D. Anderson Agile Software Management
Accounting for Systems
22
Agile Increasing Success
Agile Development
Cycle Time
Increasing Throughput
Detailed Inventory
Decreasing Investment
Feedback Delays
Decreasing Operating Expense
Increasing Success
Risks
23
Incremental and Iterative
Agile Development
Cycle Time
Year
Quarters
Months
Detailed Inventory
Whole Project
Phase
Iteration
Feedback Delays
Across Job Functions
Across Phase
Across Iteration
Risks
Entire Business
Project
Iteration
24
Incremental Iterative Cadence
Development Complete
Demonstration
Detailed Iteration Planning Design
Develop all Features in Parallel
Automate Tests
Elaborate Features Into Requirements
Fix Deferred Defects
Manual Test Bug Fix
Elaborate Manual Tests
Iteration N1
Iteration N-1
Iteration N
25
Parallel Development Cadence
Development Complete
Demonstration
Detailed Iteration Planning Design
Test Fix
Dev Feature Priority 1
Automate Tests
Elab. Tests Feature 1
Elaborate Features Into Requirements
Test Fix
Dev Feature Priority 2
Fix Deferred Defects
Elab. Tests Feature 2
Test Fix
Dev Feature Priority 3
Elab. Tests Feature 3
Iteration N1
Iteration N-1
Iteration N
26
Acceptance Test Driven Development Cadence
Demonstration
Detailed Iteration Planning Design
Dev Feature Priority 1
Dev Feature Priority 4
Auto. Tests Feature 1
Auto. Tests Feature 4
Elaborate Features Into Requirements and Test
Cases
Dev Feature Priority 2
Dev Feature Priority 5
Auto. Tests Feature 2
Auto. Tests Feature 5
Dev Feature Priority 3
Auto. Tests Feature 3
Iteration N1
Iteration N-1
Iteration N
27
Increasing Agility Success
Agile Development
Cycle Time
Year
Quarters
Months
Weeks
Detailed Inventory
Whole Project
Phase
Iteration
Increment
Feature
Feedback Delays
Across Job Functions
Across Phase
Across Iteration
Across Increment
Across Feature
Risks
Entire Business
Project
Iteration
Increment
Feature
28
The Day in the Life of an Agile Project Manager
29
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

30
How do I get started?
31
Evolution of Agile inside a team
  • Rollover
  • Implement daily stand-up meetings, create an
    automated build process to always be close to
    shippable code
  • 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
  • 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
  • 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

32
Technical Team Disciplines
  • 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

33
Resources to Self-teach 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
  • 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

34
Professional Help
  • Training Opportunities
  • Lean Manager Practitioners Classes
  • www.poppendieck.com/courses.htm
  • SCRUM Master Class
  • www.controlchaos.com/certifiedscrum/
  • eXtreme Programming
  • www.xprogramming.com/xpmag/services.htm
  • Rallys 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

35
Just give me two weeks
  • 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 youve learned.
  • Do it again.
  • 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.

36
Audience Survey
  • How many people use these Project Management
    Tools for planning and tracking?
  • MS-Project Stand alone
  • MS-Project Enterprise (or other Project Servers)
  • Spreadsheets

37
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
38
Planning an Agile Project
  • Prioritized Backlog of features with gross
    estimates
  • Estimate of team velocity
  • Creates Release Iterations
  • Draft Iteration FBS
  • Detailed Planning for the next Iteration

39
Tracking an Agile Project
  • Complete detailed estimates tasks
  • Rank FBS for Iteration
  • Start work update status
  • Track status of tasks, tests defects
  • Demonstrate new features
  • Collect metrics

40
Report on an Agile Project
  • Remaining burn-down
  • Accepted features
  • Velocity of team
  • Prioritized Backlog
  • Test Coverage
  • Outstanding bugs
  • Current Iteration dates

41
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?

42
Questions?Ryan.martens_at_rallydev.com
ORAgilecoach_at_rallydev.com
Write a Comment
User Comments (0)
About PowerShow.com