Agile methodology v 4.5 s
Click here to load reader
-
Upload
james-sutter -
Category
Technology
-
view
2.502 -
download
0
Transcript of Agile methodology v 4.5 s
Agile Methodology
David Mann, CIO July 8, 2010
People are more important than any process!
2
The most important thing about process is "To Have One"
Examples of SDLC processes:• Agile (MSF for Agile, SCRUM, LEAN, …)
• Waterfall
• Spiral
• Extreme Programming
• ASD
• Rational Unified
3
Adaptive/Predictive ScaleADAPTIVE PREDICTIVE
Scrum 1993
Rational Unified Process 1981
MSF 4.0 2006 MSF 4.0 for CMM 2006
PMI PMBOK (PMP) 1969
MSF 1994
DSDM 1995
Extreme Programming 1999
Feature Driven (FDD) 2000
Adaptive (ASD) 2000
Lean 2003
Crystal Clear 2005
MSF 4.0 for Agile 2006
AGILE ITERATIVE WATERFALL
CMM 1991 CMM 1991
Some processes are more AdaptiveSome processes are more Predictive
Which one is right for me? Agile is more suitable for new product development where the scope gradually emerges and continues to evolve. It is appropriate for new business model in a changing marketplace
Waterfall is more suitable for static models with defined unchangeable scope. It is appropriate for maintaining mature systems with mature business model
5
Agile Misconception
Agile is not about rushing things; but if Agile is applied things gets delivered faster with higher quality. Why?
• Short Sprints (iterations) - 2 to 3 weeks• Full Customers Involvement to adjust course• Frequent Releases & Check-Points• Multi tracks • Focusing on delivering software (not process)
Agile does not mean chaos:• Think of Agile as many micro-waterfalls• Agile has “change control“ after each sprint (but less formal)• Agile has meaningful short documents; prototypes clarify requirements and design; all team
members work in a project-room to reduces documents and meetings; the team must focus on delivering quality software and not just documents
6
MSF for Agile Development
Agile has tracks not phases; teams dash to the finish-line without waiting for each other
Build
PlanEnvisionQA/Stabilize
Deploy
What is Agile about? Agile is about putting something in front of the business/customer quickly so that business and IT can adjust course by:
• Changing scope & requirements to gain the highest ROI• Changing plan & processes to reduce cost• Changing solution for the best design & performance• Changing QA test for the ultimate quality• Changing the deployment for enhance SLA• Adjusting to the marketplace and competitors
Agile is about embracing change
Agile is about customer’s active participation and not the end-result victim
8
“The only constant in the universe is change”
Waterfall Development Methodology
Start
Design
Build / Coding
Quality Assurance
Target
New Target
What if the Target is changed:
Lost Time & Money!Waterfall has poor success rate in the industry
Deploy
Scope / Requirements
Agile Development Methodology
Start
Target
New Target
Sprint 1Sprint 2
Sprint 3Sprint 4
Sprint 5Sprint 6
New Target
Sprint 8Sprint 7
Sprint 9
Success !
Agile Development Methodology
Correct the Course
Perceived Challenges with Agile:
Moving Deadlines
Over Budget
Difficult ROI Calculation
12
Solutions: Agile requires a mind-shift
Moving Deadlines: have a strict discipline on the feature list (features diet). Go to market with the minimum set of features and continue your growth (ex. Adobe Reader 9.3, iPhone 4.0, Flash Player 10.1). Standish study shows that:
45% of features built are never used 19% are rarely used 16% are sometimes used 13% are used often 7% are always used
Over Budget: IT expenditure as a percentage of the revenue; set a budget for a project and develop within that budget
ROI Calculation: with shorter and frequent release cycle, ROI can be measured against actuals to make better decisions and reduce risk
13
14
MSF for Agile MethodologyRoles & Responsibilities
Sponsor&
Business
PMDBusinessAnalyst
Architect
Developer
QATester
ReleaseManager
PMO - Project ManagerResponsibilities: DELIVER
• Manage Sponsor’s Expectations• Project Plans & Sprint Plans• Team Communication including Project
Status, Meetings, Executive Reports• Project Budget Management• Resource Management• Obtain Estimates• Keep trends, Actual vs. Estimates• Work with Managers to Assign Tasks & Hold
team members Accountable for the deliveries• Change Control• Risk Management; Lessons Learned• Coordinate Technical Rollout Plan and
Business Rollout Plan• Portfolio Management • SDLC & Process Improvements
15
MSF for Agile Methodology
SponsorBusiness
PMDBusinessAnalyst
Architect
Developer
QATester
ReleaseManager
• Foster open communications• Work toward a shared vision
(focus on delivering business value)
• Empower team members• Establish clear accountability• Deliver incremental value• Stay Agile & expect change• Invest in Quality• Learn from experiences• Partner with customers
Foundational Principles - Team
16
Agile Process & DeliverablesRepeated for each Sprint
Envision
Plan
/Des
ign
Build
Stabilize
(Testing)
DeployPDD
BRD
PrototypeTDD
TestPlan
CodeComplete
TestComplete
RolloutPlans
ProductionReleaseUAT
Adoption
Q & A