balancing agility and discipline chapter 2 : contrasts and home grounds presented by: shawn mulkey
Post on 31-Dec-2015
222 Views
Preview:
TRANSCRIPT
Copyright 2004 Shawn Mulkey
Chapter Contents
• Evaluation Criteria
• Project Characteristics– Application– Management– Technical– Personnel
• Evidence– Empirical & Anecdotal
Copyright 2004 Shawn Mulkey
Application Characteristics• Goals
• Size– People– Complexity
• Environment
Copyright 2004 Shawn Mulkey
Agile Application Characteristics• Goals
– Rapid Value and Responsiveness– Organic Objectives– Avoids False Assumptions– Can Create Shortsightedness– Customer Involvement Vital
• Size– Small To Medium Teams
• 10 – 20 Members
– Defines Many Other Characteristics
Copyright 2004 Shawn Mulkey
Agile Application Characteristics• Environment
– Turbulent, “High-Change”– Emergent Requirements– Danger of Inadequate Testing– Focus on Current Project
• May Ignore Standards• Difficult to Integrate
– Target System Must Be Flexible
Copyright 2004 Shawn Mulkey
Plan-Driven Application Characteristics
• Goals– Predictability, Stability and High Assurance
• Enforced Through Standardization, Measurement & Control
– Breaks Down With High Rate of Change– Provides Standards Compliance
• Size– Scales Well to Large Projects– Knowledge and Communication Explicit
Copyright 2004 Shawn Mulkey
Plan-Driven Application Characteristics
• Environment– Covers Broad Range of Activities– Uses Architecture and Extensible Designs– Quantitative Process Improvement
Copyright 2004 Shawn Mulkey
Management Characteristics• Customer Relations
• Planning and Control
• Project Communications– Internal– External
Copyright 2004 Shawn Mulkey
Agile Management Characteristics• Customer Relations
– Dedicated, Collocated Representative– Connect to Consumer and Development– Customer Must Remain
• Focused• Informed• Unbiased
– Initial Trust Difficult To Build• Only With Early Deliveries• Best when Internal
Copyright 2004 Shawn Mulkey
Agile Management Characteristics• Planning and Control
– Means To An End– Operates on Implicit Knowledge
• Creates Agility• XP Techniques Support
– Kent Beck: “Planning Driven” over “Plan Driven”
• Project Communication– Tacit Interpersonal Contact– Knowledge Pooling (Retrospection)– Little One-Way Communication– Tolerance and Scalability Limit
Copyright 2004 Shawn Mulkey
Plan-Driven Management Characteristics
• Customer Relations– More Formal– Defined by Contract
• Implicit or Explicit• Can Become Stress Point
– Stable Relationship Base• Engineers Develop• Stakeholders Monitor
– Trust Imparted by Process Maturity• Can Be Misleading
Copyright 2004 Shawn Mulkey
Plan-Driven Management Characteristics
• Planning and Control– Plans Anchor Process– Provide Broad Communication– Leverages Historical Data
• Past Plans
– Rapid Change Elevates Costs
• Project Communication– Explicit, Documented Knowledge– Generally One-Way– Not Always Properly Scaled
• Greatest Common Denominator
Copyright 2004 Shawn Mulkey
Agile Technical Characteristics• Requirements
– Adjustable Stories• More Informal than Use Cases
– Heavy Use of Iteration & Prioritization– Every Delivery Negotiated
• Strongest Need• Feasible Inclusion
– Some Requirements Difficult to Capture• Non-Functional• Quality
– Risk Evaluation Useful Technique
Copyright 2004 Shawn Mulkey
Agile Technical Characteristics• Development
– Fundamental Differences– Simple Design vs. Architecture
• BDUF vs. YAGNI
– Several Assumptions• Amortizes Rework• Future Capabilities Never Used
– Assumptions Problematic• Experts Contain Rework Effort• Low Rework Doesn’t Scale• Foreseeable Additions Need Architecture
Copyright 2004 Shawn Mulkey
Agile Technical Characteristics• Testing
– Test Driven Development– Pair Programming Reviews– Avoids Documentation– Addresses Tests Early– Provides Explicit Application Knowledge– Rapid Change Costly– Coverage May Be Inadequate
• Lack of Expertise
Copyright 2004 Shawn Mulkey
Plan-Driven Technical Characteristics
• Requirements– Complete– Consistent– Traceable– Testable– Traditionally Performed Externally– CMMI Has Introduced New Concepts
• Evolutionary Requirements• Integrated Teaming
– Requirements Risk Analysis Valuable
Copyright 2004 Shawn Mulkey
Plan-Driven Technical Characteristics
• Development– Planning & Architecture
• BDUF
– High Re-Use Potential– Overkill in Small Projects– Can Employ Rapid Techniques
• Incremental• Pair Programming
Copyright 2004 Shawn Mulkey
Plan-Driven Technical Characteristics
• Testing– Suffers Late Discovery Problem
• Too Much Work Done First• Requirements & Design Checking Helps
– Test Plan• Allows End-to-End Testing• Document Upkeep Expensive
– Testing Usually External• Can Create Adversarial Relationship
Copyright 2004 Shawn Mulkey
Personnel Characteristics• Customers
• Developers
• Organizational Culture
Copyright 2004 Shawn Mulkey
Agile Personnel Characteristics• Customers
– Central Concept– Representative Must Be CRACK
• Collaborative• Representative• Authorized• Committed• Knowledgeable
Not On Crack
Copyright 2004 Shawn Mulkey
Agile Personnel Characteristics• Developers
– Requires “Critical Mass” of Premium People• Amicability• Talent• Skill• Communication
– Without Process Breaks Down
• Culture– Empowered By “Many Degrees Of Freedom”– Bottom-Up Revolutionary Flavor– Early CMM Had Similar Feel
Copyright 2004 Shawn Mulkey
Plan-Driven Personnel Characteristics
• Customers– Also Need CRACK Reps– Planning Allows Part-Time Presence– Guided By Contract
• Can Become Burdon
• Developers– Can Utilize Expertise Early
• Concentrate Talent• Utilize Other Resources
– 49.999% Developers Below Median
Copyright 2004 Shawn Mulkey
The (Adapted) Cockburn Scale
Levels of Software Method Understanding and Use
Level Characteristics
3 Able to revise in unprecedented situation
2 Able to tailor a method to fit new situation
1A With training can perform discretionary steps, can train to level 2
1B With training can perform basic procedural steps
-1 May have technical skills but unable or unwilling to collaborate
Copyright 2004 Shawn Mulkey
Plan-Driven Personnel Characteristics
• Culture– Clear Policies & Procedures– Defines Role– Clarifies Expectations & Constraints– Clear Integration Boundaries– Agile Techniques Recognized– Bureaucracy Can Hinder
Copyright 2004 Shawn Mulkey
Home Ground Summary
Characteristics Agile Plan-Driven
Primary Goals Rapid value, Responding to change
Predictability, Stability
Size Smaller teams and projects
Larger teams & project
Environment Turbulent; high change; project-focus
Stable; low-change; project/organization focused
Application
Copyright 2004 Shawn Mulkey
Home Ground Summary
Characteristics Agile Plan-Driven
Customer Relations
Dedicated on-site customers
As-needed customer interactions
Planning & Control
Internalized plans; qualitative control
Documented plans; qualititative control
Communication Tacit interpersonal knowledge
Explicit documented knowledgeM
anagement
Copyright 2004 Shawn Mulkey
Home Ground Summary
Characteristics Agile Plan-Driven
Requirements Prioritized informal stories and test cases
Formalized project, capability
Development Simple design; refactoring assumed inexpensive
Extensive design; refactoring assumed expensive
Testing Executable test cases define requirements
Documented test plans and procedures
Technical
Copyright 2004 Shawn Mulkey
Home Ground Summary
Characteristics Agile Plan-Driven
Customers Dedicated, collocated, capable performers
Capable performers, not always collocated
Developers At least 30% full-time level 2 and 3 experts; avoid 1Bs
50% level 3s early;10% throughout; 1Bs workable
Culture Empowered with degrees of freedom
Empowered by framework of policies and procedures
Personnel
Copyright 2004 Shawn Mulkey
Decision StarPersonnel
% Level 1B % Level 2 & 3
CriticalityLoss due to impact of defects Dynamism
% Requirements-change/month
SizeNumber of personnel
Culture% Thriving on chaos vs. order
10
90
70
50
30300
3
100
1030
Essential Funds
Losable Funds
ComfortSingle Life
Multiple Lives
0
10
20
30
40
30
25
20
15
35
50
510
30
1
Agile
Plan - Driven
top related