Barry Boehm University of Southern California Richard Turner OUSD(AT&L)/DS/SE (George Washington University) Balancing Agility and Discipline: Balancing Agility and Discipline: Evaluating and Integrating Agile and Plan- Evaluating and Integrating Agile and Plan- Driven Methods Driven Methods Based on Balancing Agility and Discipline: A Guide for the Perplexed , B. Boehm and R. Turner, Addison Wesley, 2004
90
Embed
Balancing Agility and Discipline: Evaluating and Integrating Agile and Plan-Driven Methods
Barry Boehm University of Southern California Richard Turner OUSD(AT&L)/DS/SE (George Washington University). Balancing Agility and Discipline: Evaluating and Integrating Agile and Plan-Driven Methods. - PowerPoint PPT Presentation
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Barry BoehmUniversity of Southern California
Richard TurnerOUSD(AT&L)/DS/SE
(George Washington University)
Balancing Agility and Discipline:Balancing Agility and Discipline: Evaluating and Integrating Agile and Evaluating and Integrating Agile and
Plan-Driven MethodsPlan-Driven Methods
Based on Balancing Agility and Discipline: A Guide for the Perplexed,
B. Boehm and R. Turner, Addison Wesley, 2004
4/19/04 2
Outline
• Tutorial learning objectives– Survey of assumptions about participants
• General software trends and implications– Sources of perplexity about agile, plan-driven
methods• Overview of agile and plan-driven methods
– XP, TSP “days in the life”– Comparisons of differences, strengths,
weaknesses• Risk-based balance of agility and discipline
– Small, medium, large examples • Observations and Way Forward
– Hands-on exercise• Conclusions; review of learning objectives
4/19/04 3
Tutorial Learning Objectives
• Practitioners and managers– Understand agile, plan-driven method strengths,
difficulties– Learn risk-based approach to tailor hybrid
methods– Practice in formulating organizational strategy
• Researchers – Understand research issues, opportunities
• Techniques for achieving rapid quality• Empirical analyses
• Educators– Understand differences in agile, plan-driven
3 Able to revise a method (break its rules) to fit an unprecedented new situation
2 Able to tailor a method to fit a precedented new situation
1A With training, able to perform discretionary method steps (e.g., sizing stories to fit increments, composing patterns, compound refactoring, complex COTS integration). With experience can become Level 2.
1B With training, able to perform procedural method steps (e.g. coding a simple method, simple refactoring, following coding standards and CM procedures, running tests). With experience can master some Level 1A skills.
-1 May have technical skills, but unable or unwilling to collaborate or follow shared methods.
4/19/04 38
Summary of Home Grounds
Characteristics Agile Plan-driven
Application
Primary Goals Rapid value; responding to change Predictability, stability, high assurance
Size Smaller teams and projects Larger teams and projects
Environment Turbulent; high change; project-focused Stable; low-change; project/organization focused
Management
Customer Relations
Dedicated on-site customers, where feasible; focused on prioritized increments
As-needed customer interactions; focused on contract provisions; increasingly evolutionary
Planning/Control
Internalized plans; qualitative control Documented plans, quantitative control
• Agility risks– Scalability– Use of simple design– Personnel turnover– Too-frequent releases– Not enough agile-capable people
• Plan-driven risks– Rapid change– Need for rapid results– Emergent requirements– Not enough discipline-capable people
4/19/04 49
Three Examples
• Agent-based systems
• Small – Event Managers application
• Medium – SupplyChain.com application
• Large – National Information System for Crisis Management (NISCM) application
• Each example results in a development strategy based on risk analyses
4/19/04 50
Event Managers Project
• Small startup company
• Diverse set of smaller agent-based planning applications
• This project: support for managing the infrastructure and operations of conferences and conventions
• Widening variety of options and interdependencies, makes an agent-based approach highly attractive
4/19/04 51
Event Managers Profile
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Risk Items Risk Ratings Event Managers
Environmental Risks E1. Technology uncertainties E2. Many stakeholders E3. Complex system of systems Risks of using Agile Methods A1. Scalability A2. Use of simple design A3. Personnel turnover A4. Too-frequent releases A5. Not enough agile-capable people Risks of using disciplined methods D1. Rapid change D2. Need for rapid results D3. Emergent requirements D4. Not enough discipline-capable people
Risk rating scale: - minimal risk - moderate risk
- Serious but manageable risk - Very serious but manageable risk - Show-stopper risk
• Establish commitment to proceed, incremental capabilities, backlog
• Develop next-increment features
• Test, exercise, deploy new increment• Re-prioritize next-increment features• Analyze lessons learned; prepare strategy for next increment
Customer Management; Representative Users
Joint Developer-Customer Agile Team
LCA
4/19/04 53
SupplyChain.com Profile
• Turnkey agent-based supply chain management systems
• Distributed, multi-organization teams of about 50 people
• Parts of applications are relatively stable, while others are highly volatile
• Architectures are driven by a few key COTS packages that are also continually evolving
4/19/04 54
SupplyChain.com Profile
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Risk Items Risk Ratings SupplyChain.com
Environmental Risks E1. Technology uncertainties E2. Many stakeholders E3. Complex system of systems Risks of using Agile Methods A1. Scalability A2. Use of simple design A3. Personnel turnover A4. Too-frequent releases A5. Not enough agile-capable people Risks of using disciplined methods D1. Rapid change D2. Need for rapid results D3. Emergent requirements D4. Not enough discipline-capable people
Risk rating scale: - minimal risk - moderate risk
- Serious but manageable risk - Very serious but manageable risk - Show-stopper risk
4/19/04 55
SupplyChain.com Strategy
Startup 1. Teambuilding and Shared
Vision
3. Design, Development and Deployment2. Systems Definition and Architecting
Stakeholders
Furnish CRACK representatives and alternates
Staff and organize to cover all success-critical risk areas
Environmental Risks E1. Technology uncertainties E2. Many stakeholders E3. Complex system of systems Risks of using Agile Methods A1. Scalability — A2. Use of simple design — A3. Personnel turnover A4. Too-frequent releases A5. Not enough agile-capable people — Risks of using disciplined methods D1. Rapid change D2. Need for rapid results D3. Emergent requirements D4. Not enough discipline-capable people
Risk rating scale: - minimal risk - moderate risk
- Serious but manageable risk - Very serious but manageable risk - Show-stopper risk
NISCM Profile
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
4/19/04 58
NISCM Strategy
Startup Teambuilding and Shared
Vision
Design, Development and Deployment
Systems Definition and Architecting
Stable, Higher-criticality Module Teams
Stakeholders
Furnish CRACK representatives and alternates
• Staff and organize to cover all success-critical risk areas
• Prepare for and select competitors for concept definition
Environmental Risks E1. Technology uncertainties E2. Many stakeholders E3. Complex system of systems Risks of using Agile Methods A1. Scalability — A2. Use of simple design — A3. Personnel turnover A4. Too-frequent releases A5. Not enough agile-capable people — Risks of using disciplined methods D1. Rapid change D2. Need for rapid results D3. Emergent requirements D4. Not enough discipline-capable people Risk rating scale: - minimal risk - moderate risk
- Serious but manageable risk - Very serious but manageable risk - Show-stopper risk
4/19/04 60
Outline
• Tutorial learning objectives– Survey of assumptions about participants
• General software trends and implications– Sources of perplexity about agile, plan-driven
methods• Overview of agile and plan-driven methods
– XP, TSP “days in the life”– Comparisons of differences, strengths,
weaknesses• Risk-based balance of agility and discipline
– Small, medium, large examples • Observations and Way Forward
– Hands-on exercise• Conclusions; review of learning objectives
4/19/04 61
Summary of Observations
• No silver bullet• Clear agile and
plan-driven home grounds
• Increased demands for agility, velocity, quality
• Balanced methods are emerging
• Build methods up vs. tailor down
• Methods are important; people more so – Values– Communications– Expectations
– Many large, critical, mixed-skill, ordered culture, stable projects
• In the future– Large projects are no
longer stable– Maintenance of extensive
process and product plans will become too expensive
– Complexity and conformity werewolves are waiting for agile projects
– Attributes of both approaches will be needed
4/19/04 64
Balanced Methods are Emerging
• Agile methods– Crystal Orange– DSDM– FDD– Lean Development
• Plan-Driven methods– Rational Unified
Process– CMMI
• Hybrid– Boehm-Turner Risk-
based– Code Science/Agile
Plus
4/19/04 65
Build up – Don’t Tailor Down
• Plan-driven methods traditionally– Define heavyweight process guidelines– Advocate tailoring– Treat mass of processes as security blanket
• Agilists traditionally– Begin with the minimum – Add as needed (and justified by cost-benefit)– Start small; extend only where necessary
4/19/04 66
Maybe its not the methods!
• Agile movement has echoed a long line of warning calls
• Success of agile may be due as much to people factors as to technology
• Valuing people over processes is the most important factor in the manifesto
I know I saw something about that in the process somewhere…
4/19/04 67
People
• Of the people, by the people, for the people
• Separation of concerns is increasingly harmful
• A few quotes…– The notion of “user” cannot be
precisely defined, and therefore it has no place in computer science or software engineering. Dijkstra
– Analysis and allocation of the system requirements is not the responsibility of the software engineering group, but it is a prerequisite for their work. The Capability Maturity Model for Software.
– Software engineering is not project management. Tucker
4/19/04 68
Values
• Reconciling values is a critical people-oriented task
• Stakeholders value different things• Software engineering is usually value-
neutral– Every requirement, object, test case, defect
equally important
• Process improvement and plan-driven methods are inwardly-focused – Aimed at productivity improvement– Not higher value to customer
• Agilists attention to prioritization and negotiation are promising
4/19/04 69
Communications
• Face it, most engineers can’t talk, much less write
• Need to bridge the customer-developer communications gap
• IKIWISI* reigns• Rapid change increases
need for solid communication
• Few sources of guidance– Cockburn’s Agile Software
Development is a good starting place
*I’ll know It When I See It
4/19/04 70
Expectations Management
• Differences between successful and troubled projects is often expectations management
• SW developers have problems with EM – Strong desire to please– Little confidence in prediction– Over confidence in abilities
• Most significant common factor in highly effective plan-driven or agile teams
• EM means not setting up unrealistic expectations– Process mastery– Preparation– Courage
Developers seem to like Sisyphean tasks…
4/19/04 71
Research Challenges and Opportunities
• Techniques for achieving rapid quality– Risk/value-driven process lightening– Agile with lightweight V&V overlay– Capitalizing on domain knowledge– Reuse, component-based approaches– Automating quality enhancement
• Empirical analyses– Distributed agile methods– Hybrid agile/plan-driven methods– Effects of individual practices– Effects of scale, personnel turnover
4/19/04 72
•60% of projects in agile home ground
•60% of effort in plan-driven home ground
Size Distribution
4/19/04 73
Development Methods
4/19/04 74
Do Both Assure Success?
• TSP and agile methods are indeed silver bullets and always succeed spectacularly well.
• People tend to report success more than they do failures.
• The pioneer projects are being done by high-capability early adopters of new methods.
• The pioneer projects are experiencing some Hawthorne effects of performing extra well while being in the spotlight.
• The projects are being compared to particularly poorly performing past projects.
• High improvement numbers make options worth exploring
4/19/04 75
Reifer Scorecard for XP
4/19/04 76
Pair Programming Results
• Short studies are suspect; pairs take about 10 hours to jell
4/19/04 77
Educational Approaches
• Survey courses– Materials here plus excursions into practice– Try, compare inspections and pair
programming– Try, compare refactoring vs. use of design
patterns
• Project courses– Some practices need tailoring to student
constraints– Steep learning curve; precede with survey
course
4/19/04 78
Experimental XP-Like Course
• Goals:– Create an improved version of Agile
COCOMOII– Use XP practices; supplement where needed– Gather software process data
requirements– Prototype GUI, draft class design: pair-work
4/19/04 81
Electronic Story/Task Cards
4/19/04 82
XP + situational common sense => Lightweight method
• Coding variants:– Coding standards:: drafted, team consensus,
will evolve as needed– Customer available bi-weekly for
feedback/report– Tests are being written before any code, all
code is unit & integration tested
• Quality guidelines:– Digital archives of artifacts – Simple, short, risk-based documentation
4/19/04 83
Organizational Way Forward
• Convene key stakeholders to determine organizational goals and strategies
• Rebalance agility and discipline in this organizational context
4/19/04 84
Determining Organizational Goals and Strategies
• Current software organization’s status and needs• Key stakeholders’ needs and trends• How to cope with future trends• The increased pace of change and need for agility• The increased concern with software
dependability and need for discipline• Your ability to satisfy your stakeholders’ evolving
value propositions and to keep up with your toughest competitors
• The increasing gap between supply and demand for Cockburn Levels 2 and 3 people
• Your ability to cope with existing and emerging challenges– COTS integration, evolving Internet/Web
capabilities, distributed and mobile operations, agent coordination, multimode virtual collaboration, and outsourcing jobs
4/19/04 85
Collins’ Good to Great- HarperBusiness, 2001
Bureaucratic Organization
Start-up Organization
Hierarchical Organization
Great Organization
Low
Low
High
High
Ethic of Entrepreneurship
Culture of Discipline
4/19/04 86
Rebalancing Agility and Discipline
In agile or plan-driven home ground
Highly mixed agile/plan driven profile
Graph “typical project” on 5D chart
-Now; 5 years ahead
Develop best home ground continuous process improvement strategy
Treat anomalies as risks to be managed
Develop incremental mixed strategy. Try on pilot project
Integrate, execute process, people, technology plans. Monitor and control using Balanced Scorecard.
In home ground with some anomalies
4/19/04 87
Hands-on Exercise
• Graph your organization’s “typical project” on 5D charts– Now; 5 years from now
• Identify major needs for organizational change– With respect to balancing agility and discipline– With respect to future trends, environmental risks
• Identify most critical first steps for improvement
• Identify pilot project for applying first steps– Application, staffing– Needs for education, teambuilding, culture change
• Summarize in bulleted strategic plan
4/19/04 88
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Agile
Plan-driven
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Agile
Plan-driven
Figure 6-1
Now
4/19/04 89
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Agile
Plan-driven
Personnel
Dynamism (% Requirements-change/month)
Culture (% thriving on chaos vs. order)
Size (# of personnel)
Criticality (Loss due to impact of defects)
5030
105
1
90
70
50
30
10
3
10
30
100
300
35
30
25
20
15
Essential Funds Discretionary
Funds Comfort
Single Life
Many Lives
(% Level 1B) (% Level 2&3)
0
10
20
30
40
Agile
Plan-driven
Figure 6-1
In 5 Years
4/19/04 90
Conclusions
• Plan-driven and agile methods both aim to– Satisfy customers– Meet cost and schedule parameters
• Home grounds exist, but the need/opportunity for integration is expanding
• We recommend a self-assessment of your organization and business – Locate your place in the home ground space– Identify areas of change and how they might
move your location– Look for ways to integrate methods to better
respond to change• People concerns dominate method