A 1 hour presentation given to 2nd year NTU students on Feb 29 2012 by Jolly Tan.
Covers a brief overview of Agile, a comparison of XP and Scrum and finishing with a quick introduction to Lean Startup, Lean and Continuous Delivery thinking.
10. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Specifications
Code
Test
Fix / Integrate $
Vision & High
Level Stories
Release 1 $
Release 2 $
Release 3 $
Agile
Development Release 4 $
11. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Fix / Integrate $
Vision & High
Level Stories
Release 1 $
Release 2 $
Release 3 $
Agile
Development Release 4 $
12. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Architecture:
• Agile proves out
architecture sooner – Fix / Integrate $
significant reduction of
technical risk
Vision & High
Level Stories
Release 1 $
Release 2 $
Release 3 $
Agile
Development Release 4 $
13. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Architecture:
• Agile proves out
architecture sooner – Development Productivity: Fix / Integrate $
significant reduction of • Agile teams work with their
technical risk tools for longer and become
more proficient
• Seasoned Agile teams
produce software very
Vision & High rapidly
Level Stories
Release 1 $
Release 2 $
Release 3 $
Agile
Development Release 4 $
14. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Architecture:
• Agile proves out
architecture sooner – Development Productivity: Fix / Integrate $
significant reduction of • Agile teams work with their
End-User Feedback:
technical risk tools for longer and become
• Validates business benefits
more proficient
• Makes execution more successful
• Seasoned Agile teams
• Reduces “false features”
produce software very
• Drives high IT value
Vision & High rapidly
Level Stories
Release 1
$
Release 2 $
Release 3 $
Agile
Development Release 4 $
15. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Architecture:
• Agile proves out
architecture sooner – Development Productivity: Fix / Integrate $
significant reduction of • Agile teams work with their
End-User Feedback:
technical risk tools for longer and become
• Validates business benefits
more proficient
• Makes execution more successful
• Seasoned Agile teams
• Reduces “false features”
produce software very
• Drives high IT value
Vision & High rapidly
Level Stories
Release 1 $
Risk:
• Virtually eliminates late
surprises
Release 2 $
Release 3 $
Agile
Development Release 4 $
16. Agile versus Traditional
Project Plan/Estimation
Requirements Gathering
Development Traditional
Use Cases / Development
Functional Specs
Design
Project Estimates: Specifications
• Agile gives more accurate estimates
earlier in the project Code
• Progress measured by tested software
Test
Architecture:
• Agile proves out
architecture sooner – Development Productivity: Fix / Integrate $
significant reduction of • Agile teams work with their
End-User Feedback:
technical risk tools for longer and become
• Validates business benefits
more proficient
• Makes execution more successful
• Seasoned Agile teams
• Reduces “false features”
produce software very
• Drives high IT value
Vision & High rapidly
Level Stories
Software in production:
• Agile approach reduces time
Release 1 $
Risk:
to market
• Virtually eliminates late
• Business decides when to go
surprises
live
Release 2 $
• Reduces risk of failure due to
early exit/reduction of
project scope
Release 3 $
Agile
Development Release 4 $
17. Making the right choice ...
Agile Traditional
Volatile Stable
requirements requirements
Automation Little Automation
Customer readily Customer not
available accessible
Co-located Segregated
team team
Time to market Fixed scope
matters matters
18. What is Agile?
Agile is an iterative and incremental approach to software development
Agile Manifesto* …
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
And a toolbox of practices (e.g. continuous integration, stand-ups, pair
programming, test driven development, refactoring, collective code
ownership, etc)
* while there is value in the items on the right, we value the items on the left more
19. What Agile is not
Not a specific process
Not one size fits all
A team is Agile they are not “doing Agile”
23. XP versus Scrum
Focus:
Focus:
Programming Project
Management
24. XP versus Scrum
Formalised in 1999
Main collaborators: Formalised in 1996
Ward Cunningham, Main collaborators:
Ron Jeffries Jeff Sutherland, Mike
Practices date back Beedle
to early 1960s Most popular form of
Agile in use today *
Motto: “if it’s
good/hard, do it a
lot”
Source: http://www.versionone.com/state_of_agile_development_survey/11/
26. XP Practices
On-site
Custom
er Plannin
Metaphor 40 Hour g Game
Week
Refactorin
g Simpl Short
e Releases
Pair Desig
Programm n Testing
ing
Coding
Standar
ds
Collective
Continu
Ownershi
ous
p
Integrati
27. XP and Scrum
Scrum alone
? XP alone
Scrum and XP
28. XP and Scrum
Source: http://www.versionone.com/state_of_agile_development_survey/11/