"Being a certified bibliophile and a professional geek, I have more shelf space devoted to books on software methods than any reasonable human should possess. Balancing Agility and Discipline has a prominent place in that section of my library, because it has helped me sort through the noise and smoke of the current method wars."--From the Foreword by Grady Booch"This is an outstanding book on an emotionally complicated topic. I applaud the authors for the care with which they have handled the subject."--From the Foreword by Alistair Cockburn"The authors have done a commendable job of identifying five critical factors--personnel, criticality, size, culture, and dynamism--for creating the right balance of flexibility and structure. Their thoughtful analysis will help developers who must sort through the agile-disciplined debate, giving them guidance to create the right mix for their projects."--From the Foreword by Arthur PysterAgility and discipline: These apparently opposite attributes are, in fact, complementary values in software development. Plan-driven developers must also be agile; nimble developers must also be disciplined.
The key to success is finding the right balance between the two, which will vary from project to project according to the circumstances and risks involved. Developers, pulled toward opposite ends by impassioned arguments, ultimately must learn how to give each value its due in their particular situations.Balancing Agility and Discipline sweeps aside the rhetoric, drills down to the operational core concepts, and presents a constructive approach to defining a balanced software development strategy. The authors expose the bureaucracy and stagnation that mark discipline without agility, and liken agility without discipline to unbridled and fruitless enthusiasm. Using a day in the life of two development teams and ground-breaking case studies, they illustrate the differences and similarities between agile and plan-driven methods, and show that the best development strategies have ways to combine both attributes. Their analysis is both objective and grounded, leading finally to clear and practical guidance for all software professionals--showing how to locate the sweet spot on the agility-discipline continuum for any given project. 0321186125B10212003
"Being a certified bibliophile and a professional geek, I have more shelf space devoted to books on software methods than any reasonable human should possess. Balancing Agility and Discipline has a prominent place in that section of my library, because it has helped me sort through the noise and smoke of the current method wars."--From the Foreword by Grady Booch"This is an outstanding book on an emotionally complicated topic. I applaud the authors for the care with which they have handled the subject."--From the Foreword by Alistair Cockburn"The authors have done a commendable job of identifying five critical factors--personnel, criticality, size, culture, and dynamism--for creating the right balance of flexibility and structure. Their thoughtful analysis will help developers who must sort through the agile-disciplined debate, giving them guidance to create the right mix for their projects."--From the Foreword by Arthur PysterAgility and discipline: These apparently opposite attributes are, in fact, complementary values in software development. Plan-driven developers must also be agile; nimble developers must also be disciplined.
The key to success is finding the right balance between the two, which will vary from project to project according to the circumstances and risks involved. Developers, pulled toward opposite ends by impassioned arguments, ultimately must learn how to give each value its due in their particular situations.Balancing Agility and Discipline sweeps aside the rhetoric, drills down to the operational core concepts, and presents a constructive approach to defining a balanced software development strategy. The authors expose the bureaucracy and stagnation that mark discipline without agility, and liken agility without discipline to unbridled and fruitless enthusiasm. Using a day in the life of two development teams and ground-breaking case studies, they illustrate the differences and similarities between agile and plan-driven methods, and show that the best development strategies have ways to combine both attributes. Their analysis is both objective and grounded, leading finally to clear and practical guidance for all software professionals--showing how to locate the sweet spot on the agility-discipline continuum for any given project. 0321186125B10212003
Foreword by Grady Booch.
Foreword by Alistair Cockburn.
Foreword by Arthur Pyster.
Preface.
Acknowledgments.
Prelude.
1. Discipline, Agility, and Perplexity.
The Sources of Perplexity. Multiple Definitions. Distinguishing
Method Use from Method Misuse. Overgeneralization Based on the Most
Visible Instances. Claims of Universality. Early Success Stories.
Purist Interpretations. Clarifying Perplexity. The Two Approaches.
Plan-Driven Methods. Agile Methods. Finding Middle Ground.
2. Contrasts and Home Grounds.
Application Characteristics. Primary Goals. Size. Environment.
Management Characteristics. Customer Relations. Planning and
Control. Project Communication. Technical Characteristics.
Requirements. Development. Testing. Personnel Characteristics.
Customers. Developers. Culture. Summary. Home Grounds.
Misconceptions. Five Critical Factors.
3. A Day in the Life.
Typical Days. A Typical Day Using PSP/TSP. A Typical Day Using
Extreme Programming. Crisis Days. A Crisis Day with TSP/PSP. A
Crisis Day with XP. Summary. Differences. Similarities.
Observations.
4. Expanding the Home Grounds: Two Case Studies.
Using Plans to Scale Up Agile Methods: Lease Management Example.
Assumption 1: The Effort to Develop or Modify a Story Does Not
Increase with Time and Story Number. Assumption 2: Trusting People
to Get Everything Done on Time Is Compatible with Fixed Schedules
and Diseconomies of Scale. Assumption 3: Simple Design and YAGNI
Scale Up Easily to Large Projects. Agile Methods Scaleup: Summing
Up. Using Agility to Streamline Plan-Driven Methods: USAF/TRW
CCPDS-R Example. Individuals and Interactions over Processes and
Tools: CCPDS-R. Working Software over Comprehensive Documentation:
CCPDS-R. Customer Collaboration over Contract Negotiation: CCPDS-R.
Responding to Change over Following a Plan: CCPDS-R. Summary.
5. Using Risk to Balance Agility and Discipline.
An Overview of the Method. An Example Family of Applications:
Agent-Based Planning Systems. An Intermediate Application: Supply
Chain Management. Step 1: SupplyChain.com Project Risk Ratings.
Step 2: Compare the Agile and Plan-Driven Risks. Step 4a:
Individual Risk Resolution Strategies. Step 4b: Risk-Based Strategy
for SupplyChain.com System Development. Small Application: Event
Planning. Step 1: Event Planning Project Risk Ratings. Step 2:
Compare the Agile and Plan-Driven Risks. Steps 4a, 4b: Risk-Based
Strategy for Event Planning System Development. Very Large
Application: National Information System for Crisis Management
(NISCM). Step1: NISCM Project Risk Ratings. Step 2: Compare the
Agile and Plan-Driven Risks. Steps 3 and 4: Risk-Based Strategy for
NISCM System Development. Summary.
6. Conclusions.
The Top Six Conclusions. No Agile or Plan-Driven Method Silver
Bullet. Agile and Plan-Driven Method Home Grounds. Future
Applications Will Need Both Agility and Discipline. Balanced
Agility-Discipline Methods Are Emerging. Build Your Method UpÑDonÕt
Tailor It Down. Focus Less on MethodsÑMore on People, Values,
Communication, and Expectations Management. What Can You Do Next
about Balancing Agility and Discipline? Steps toward Balancing
Software Development Agility and Discipline. Afterword.
Appendix A. Comparing the Methods.
Scrum. Thumbnail Sketch. Comments. References. Adaptive Software
Development (ASD). Thumbnail Sketch. Comments. References. Lean
Development (LD). Thumbnail Sketch. Comments. References. Crystal.
Thumbnail Sketch. Comments. References. eXtreme Programming (XP).
Thumbnail Sketch. Comments. Reference. Dynamic Systems Development
Method (DSDM). Thumbnail Sketch. Comments. References. Rational
Unified Process (RUP). Thumbnail Sketch. Comments. References. Team
Software Process (TSP). Thumbnail Sketch. Comments. References.
Feature-Driven Development (FDD). Thumbnail Sketch. Comments.
References. Capability Maturity Model Integration (CMMI). Thumbnail
Sketch. Comments. References. Capability Maturity Model for
Software (SW-CMM). Thumbnail Sketch. Comments. References. Personal
Software Process (PSP). Thumbnail Sketch. Comments. References.
Cleanroom. Thumbnail Sketch. Comments. References. Method
Comparison Table.
Appendix B. Manifesto for Agile Software Development.
Principles behind the Agile Manifesto.
Appendix C. Capability Maturity Models.
A Short History of CMMs. CMM Concepts. Using Models to Improve
Processes.
Appendix D. Tools for Balancing.
D1. The Spiral Model Anchor Point Milestones. D2. Benefits
Realization Analysis and the DMR Results Chain. Benefits Realized.
Results Chain. D3. Schedule as an Independent Variable. Shared
Vision and Expectations Management. Feature Prioritization.
Schedule Range Estimation. Architecture and Core Capability
Determination. Incremental Development. Change and Progress
Monitoring and Control.
Appendix E. Empirical Information.
E1. The Cost of Change: Empirical Findings. E2. How Much
Architecting Is Enough? A COCOMO II Analysis. E3. Experiments and
Studies of Agile and Plan-Driven Methods. Overall Distribution of
Project Size. Process Improvement. Team Software Process and Agile
Methods. Pair Programming. Hybrid Agile/Plan-Driven Methods.
Notes.
References.
Index.
Barry Boehm has been trying to balance agility and discipline in software development since 1955. The TRW professor of software engineering and director of the USC Center for Software Engineering, he earlier served as director of the DARPA Information Science and Technology Office and as a chief scientist at TRW. Dr. Boehm's contributions to the field include the Constructive Cost Model (COCOMO), the Spiral Model of the software process, the Theory W (win-win) approach to software management and requirements determination, and his classic book, Software Engineering Economics (Prentice Hall, 1981).
Richard Turner, a research professor in engineering management and systems engineering at the George Washington University, approaches balanced software development and acquisition with broad industry and government experience and a skeptical attitude toward best practices. In support of the U.S. Department of Defense, he is responsible for identifying and transitioning new software technology into the development and acquisition of complex, software-intensive defense systems. Dr. Turner was on the original author team for Capability Maturity Model Integration (CMMI) and is coauthor off CMMI Distilled, Second Edition (Addison-Wesley, 2004).
![]() |
Ask a Question About this Product More... |
![]() |