Upload
richard-cheng
View
519
Download
4
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
Introduction to Agile
Richard Cheng
◊ Agile trainer & coach
◊ Excella Agile Center of Excellence Lead
◊ Member of PMI, Scrum Alliance, Agile Alliance, Agile Leadership Network
◊ PMP, CSM, CSPO, CSP, PMI-ACP
◊ Founder & executive committee member of Agile Defense Adoption Proponents Team (ADAPT), an Agile DoD Task Force
◊ Deep expertise in Federal and commercial Agile transformations
2
“Traditional” IT Project Management
◊ Process and tools◊ Comprehensive documentation◊ Contract negotiations◊ Following a plan
This is how we control projects….
3
Waterfall Development
Requirements
Design
Develop
Test
Deploy
4
IT Industry average success rate?
Success rate ~ 33%
IT Industry average success rate?
Success rate ~ __%
Industry Success Rate
From 2010 report from The Standish Group
5
Problems with Waterfall
Requirements
Design
Develop
Test
Deploy
“I believe in this concept, but the implementation described above is risky and invites failure” – Dr. Winston Royce
What happens if something goes wrong?
Managing the Development of Large Software Systems, Winston Royce (1970) 6
“Traditional” IT Project Management
◊ Process and tools◊ Comprehensive documentation◊ Contract negotiations◊ Following a plan
Designed to minimize risk and control change
7
Agile Manifesto
Individuals and interactions
over Process and tools
Working software over Comprehensive documentation
Customer collaboration over Contract negotiation
Responding to change over Following a plan
We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
That is, while there is value in the items on the right, we value the items on the left more.
http://agilemanifesto.org/8
1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
7. Working software is the primary measure of progress. Agile processes promote sustainable development.
8. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical excellence and good design enhances agility.
10. Simplicity--the art of maximizing the amount of work not done--is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. 9
Agile Principles (paraphrased)
1. Satisfy the customer through early and continuous delivery
2. Welcome changing requirements
3. Deliver frequently, preferring a shorter timescale
4. Business & technical team working together daily
5. Pick the right team, support them & trust them
6. Face-to-Face communication
7. Working software is the primary measure of progress
8. Sustainable constant pace
9. Technical excellence and good design enhances agility
10.Simplicity; maximizing the amount of work not done
11.Best results emerge from self organizing teams
12.Regularly reflect & adjust to become more effective
10
Agile Methodologies
Agile
Scrum – Iterative method used by most teamsXP – The software engineering practices
Kanban – Often used in operations
Lean – Concepts used for organizational Agile
11
Scrum Overview
Project development is performed in 2 to 4 week iterations
Product Owner creates a prioritized backlog of features
Highest priority features delivered first
At the end of the iteration, the deliverables are reviewed by the business customers
The team reflects on the process
This is repeated until the project is completed
* Diagram from Mountain Goat Software 12
Advantages of Scrum◊ Adaptability (Scrum) over Predictability (Waterfall)
– Waterfall makes it expensive to make changes to the project– Scrum development minimizes the cost of change
◊ Showing tangible results throughout the project
◊ Continuous Improvement
◊ Shorter feedback loop
◊ Identify and resolve problems faster
◊ Lessons learned and applied during each iteration instead of at the end of the project
◊ High assurance of product vision due to continual inspection by business representatives 13
Scrum Framework
Scrum
Roles
Meetings
Product OwnerScrum Development TeamScrum Master
Sprint PlanningDaily ScrumSprint ReviewRetrospective
Product BacklogSprint BacklogBurndown Chart
Artifacts
14
Scrum Framework
* Diagram from Scrum Primer From the Scrum Primer
15
16from 2011 VersionOne survey 16
Metrics based on Industry Studies
Agile Productivity– Productivity increase
34% to 200%– 3x to 6x greater
productivity gain on coached teams over non-coached
Waterfall Agile
Person Months 540 54
Lines of Code 58,000 51,000
Function Points (FP) 900 959
FP per Developer Month
1.7 17.8
Metrics based on Industry Studies
Feature Usage in Software
– 20% of features always or often used
– 60% of features never or rarely used
Often13%
Some-times16%
Always7%Rarely
19%
Never45%
Metrics based on Industry Studies
◊ Faster return on investment
◊ Project Success– Industry Average:33% success rate– Agile project: 75% success rate
Sources:Business Value of Agile Metrics, Dr. David Rico (2009)Rolling out Agile in a Large Enterprise, Gabrielle Benefield (2008)Agile Development in the Enterprise, Dr. Jeff Sutherland (2009)User Stories Applied, Mike Cohn (2004)
Standish Group Study, Jim Johnson (2002)Software By Numbers, Mark Denne and Jane Cleland-Huang (2003)Why Incremental Development Is Better, John Scumniotales (2009)The State of Agile Development, VersionOne (2008)
Agile & PMI
"Good practice means there is general agreement that the application of project management processes has been shown to enhance the chances of success over a wide range of projects ..."
"...Good practice does not mean that the knowledge, skills and processes described should always be applied uniformly on all projects. For any given project, the project manager, in collaboration with the project team, is always responsible for determining which processes are appropriate, and the appropriate degree of rigor for each process.“
- PMBOK 4th Edition Chapter 1 – 1.1
• PMI Agile Community of Practicehttp://agile.vc.pmi.org/Public/Home.aspx
• PMI Agile Certified Practitioner (PMI-ACP)http://www.pmi.org/en/Certification/New-PMI-Agile-Certification.aspx
20
Agile & PMBOK
from Sliger, PMI Global Congress 2008 North America21
Agile & CMMI
“…Scrum has a significant, palpable positive effect on project governance and product quality…..”
“…The inherent benefit of using Scrum is its ability to incorporate new practices and show results quickly….”
- Excella Client, SEI CMMI current state analysis report
22
Agile & CMMI
Requirements Management
Project Planning
Project Monitoring and Control
Supplier Agreement Management
Measurement and Analysis
Process and Product Quality Assurance
Configuration Management
Requirements Development
Technical Solution
Product Integration
Verification
Validation
Organizational Process Focus
Organizational Process Definition
Organizational Training
Integrated Project Management
Risk Management
Decision Analysis and Resolution
CMMI Level 2 CMMI Level 3
Agile Project Management with Scrum, Ken Schwaber (2004) 23
Federal CIO 25 Point Plan
“Modular development delivers functionality in shorter timeframes and has long been considered
best practice in the private sector and in some areas of government; in fact, both Raines Rules and the
Federal Acquisition Regulation (FAR) advise agencies to plan programs in this way ……
Evidence shows that modular development leads to increased success and reduced risk . However,
because this is a new way of thinking about IT programs for some groups within government, it
requires additional training, templates, and tools.”
http://www.cio.gov/documents/25-Point-Implementation-Plan-to-Reform-Federal%20IT.pdf 24
DoD CIO’s 10-Pt Plan for IT Modernization
25
Agile & Government
Federal CIO 25 Point Planhttp://www.cio.gov/documents/25-Point-Implementation-Plan-to-Reform-Federal%20IT.pdf
DoD CIO’s 10-Point Plan for IT Modernizationhttp://dodcio.defense.gov/Portals/0/Documents/ITMod/CIO_10_Point_Plan_for_IT_Modernization.pdf
Agile Defense Adoption Proponents Team (ADAPT)http://www.afei.org/WORKINGGROUPS/ADAPT/
DoD CIO Agile HandbookTBD 26
DoD ResourcesLockheed(Zwicker
2007)
F-35 Lightning F-22 Raptor
MITRE(Northern
2010)
National Senior Leadership Decision Support SvcJoint Space Operations Center Mission SystemJoint Communications Support ElementAir and Space Operations Center (ASOC)Global Command and Control System (GCCS)
DCGS – Marine Corps (DCGS-MC)DCGS – Intelligence Backbone (DIB)DCGS – Intelligence Community (DCGS-IC)Joint Operational Planning & Execution System (JOPES)
SEI(Lapham
2010)
Joint Mission Planning System (JMPS)Single Integrated Air Picture (SIAP)Operationally Responsive Space (ORS)
Virtual Mission Operations Center (VMOC)FIST ApplicationsWarfighter’s Edge (WEdge)
NRC(Campbell
2010)
Force XXI Battle Command Brigade and BelowBlue Force Tracker (BFT)Joint Network Node (JNN)
Command Post of the Future (CPOF)Tactical Ground Reporting System (TIGR)
DISA(Risacher
2010)
Forge.Mil Storefront Widget Framework (SWF)
USTRANSCOM(Kinney 2010)
Corporate Services Vision (CSV) Agile Transportation XXI (AT21)
Zwicker, M. (2007). War stories: Fighter jets and agile development at lockheed martin. Orange Park, FL: Agile Journal.Northern, C. et al. (2010). Handbook for implementing agile in DoD information technology acquisition. McLean, VA: MITRE.Lapham, M. A. et al. (2010). Considerations for using agile in DoD acquisition (CMU/SEI-2010-TN-002). Pittsburgh, PA: SEI.Campbell, W. H. (2010). Achieving effective acquisition of information technology in the department of defense. Washington, DC: NRC.Risacher, D. (2010). ASD(NII)/DoD CIO storefront agile open source. DoD Agile Development Conference, Alexandria, VA, USA.Kinney, R. (2010). Corporate services vision and agile transport 21. DoD Agile Development Conference, Alexandria, VA, USA. 27
Book Resources
Agile Project Management with ScrumKen SchwaberISBN #073561993X
Agile Estimating and PlanningMike CohnISBN #0131479415
The Software Project Manager’s Bridge to AgilityMichele Sliger, Stacia BroderickISBN #0321502752
Agile Project Management: Creating Innovative Products Jim HighsmithISBN #0321658396
The Art of Agile DevelopmentJames ShoreISBN #0596527675
28
Upcoming Events in the DC area
◊ 10/23 – AgileDC Conference – http://agiledc.org/◊ 11/5 – Inter-Agency Agile Event (Baltimore) - TBD◊ 11/19 – 11/20 – Certified Scrum Product Owner Training
featuring Innovation Games - http://dc-cspo-training-eorg.eventbrite.com/
◊ 11/28 – ADAPT Agile Government Conference - http://afei.org/WorkingGroups/ADAPT/Pages/default.aspx
◊ 12/7 - DC Agile Engineering Conference and Global Day of Code Retreat - http://dc-agile-engineering-conference-eorg.eventbrite.com/
◊ 12/17 – 12/18 – Certified ScrumMaster training - http://dc-certified-scrummaster-training.eventbrite.com/
29
Tuckman’s Stages of Group Development
1. Forming
2. Storming
3. Norming
4. Performing
Dedicated Scrum Teams
Dedicated Scrum Teams
• Managing work instead of managing people
• Dedicated teams provide known rate of work (capacity)
• Team ramp-up costs only absorbed once
• Builds cross functionality
• All work is prioritized at the team level, meaning team members only being directed by one person
Team 1 Team 2 Team 3
Work flows into the teams
Functional and Project Team
Team 1
System Analyst
Developers
Testers
PMO
Team 2 Team 3
Project Verticals• Project team verticals are
where team members live day to day
• Work is driven by the project teams
• This is where the company accomplishes its goals
Functional Horizontals• Functional horizontals are
designed to help employees grow their skillsets
• Share best practices and ideas
• Functional horizontals support employees and the project verticals
Agile and EVMEVM is not inherently anti-Agile, issues are with implementations of EVM
– Phase based on a waterfall SDLC– Not being able to change line items– Measurement of value
ReqDesign
Dev
Release
QA
EVM Timeline
Development
Development
EVM Timeline
From this to this…
Requirements
To this….Sprint 1
Sprint 2
Sprint 3
Sprint N
…
EVM Timeline
Supplemental MaterialMetrics
Metrics for Business Initiatives
Effort Area Story Points Percentage
Foundational 78 22%
Maintenance 9 3%
Optimization 168 48%
New Product 98 28%
First Quarter Initiatives
Metrics for Business Value
Features Story Points Business Points
Comment
Feature 1 40 8 High effort, mid value
Feature 2 20 13 High effort, good value
Feature 3 4 8 Low effort, mid value
Feature 4 13 40 Mid effort, high value
Feature 5 5 20 Low effort, high value
Metrics for the Project
Project Burn Down / Burn Up Chart
Metrics for the Sprint
Metrics for Team Performance
Metrics for Team Performance
Metrics for Team Performance
For a Scrum team, key goals include:
1. Achieving a high completion percentage (actual velocity / projected velocity)
2. Stabilizing velocity
3. Increasing velocity (after 1 and 2)
Cumulative Flow Diagram
Cost Metrics
1 2 3 4 5 6 7 8 9 10 11 12 13
Story Pts Remaining 1200 1300 1123 987 978 876 725 655 524 411 290 110 0
Cost (in thousands) 1000 900 800 700 600 500 400 300 200 100 0 -100 -200-300
-100
100
300
500
700
900
1100
1300
Cost Feature Burn Down
Upcoming Classes
◊ 3/14 – 3/15 - Agile Engineering Practices Training– http://dc-agile-engineering.eventbrite.com
◊ 4/16 – 4/17 - Train the Trainers - Sharon Bowman's Training from the Back of the Room!– http://training-back-of-room-sharon-bowman.eventbrite.com
◊ 4/18 – 4/19 - Agile Testing Training– http://dc-agile-testing.eventbrite.com
◊ 4/22 – 4/23: Advanced Certified Scrum Product Owner (CSPO) Training– http://certified-scrum-product-owner-cspo-washington-dc.eventbrite.com/
◊ 4/25 – 4/26: Advanced Certified Scrum Product Owner (CSPO) Training– http://certified-scrum-product-owner-cspo-washington-dc.eventbrite.com/