HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
PDF The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
A guide for perplexed software professionals who have heard the buzz about agile methodologies, but want to separate the hype from reality.
° Helps organization achieve the speed of agility without sacrificing the discipline of process
° For quick learning and easy reference, the margins contain a "fast track" summary of the material
° Forewords by Grady Booch, Alistair Cockburn, and Watts Humphrey!
Nowadays, there are many methodologies you can introduce your to students. On the one hand, there are the more agile methods that focus on individual projects, and how to get them done fast—the camp represented by Beck and Cockburn. On the other hand, there are the more disciplined methods, focused on setting up organizational processes for getting projects done with predictable high quality—the camp best represented by the SEI, the CMMI, and Humphrey. Although these methods are often presented as mutually exclusive, they actually lie on a continuum. The authors of Balancing Agility and Discipline have worked out clear guidelines for determining where on that continuum a particular software development project is located—and therefore, how agile or disciplined a chosen methodology can or has to be.
Software Development: Agile vs. Disciplined Methods
Download the Sample Chapter related to this title.
Download the sample pages (includes Chapter 2 and Index)
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.
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.
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.
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.
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.
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.
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.
Principles behind the Agile Manifesto.
A Short History of CMMs.
CMM Concepts.
Using Models to Improve Processes.
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.
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.
Why We Wrote This BookTrue believers represent software development alternatives
In the last few years, two ostensibly conflicting approaches to software development have competed for hegemony. Agile method supporters released a manifesto that shifts the focus from traditional plan-driven, process-based methods to lighter, more adaptive paradigms. Traditional methods have reasserted the need for strong process discipline and rigorous practices. True believers on both sides have raised strident, often antagonistic, voices.
This book is for the rest of us
We wrote this book for the rest of usthose caught in the middle of the method wars simply trying to get our projects completed and accepted within too-tight schedules and budgets. We hope to clarify the perplexity about the roles of discipline, agility, and process in software development. We objectively compare and contrast the traditional, plan-driven approaches to the newer, agile approaches and present an overview of their home grounds, strengths, and weaknesses. We then describe a risk-based approach to aid in balancing agility and discipline within a software development project.
Our goal is to help you in your business environment
We hope that this is a practical book. It is intended to be neither academic nor exhaustive, but pragmatic. It is based on our own development experiences, current and past literature, long conversations with proponents of agile and plan-driven approaches, teaching students how to balance discipline and agility, and years of observing and measuring software development in industry, government, and academia. We discuss the subject matter absent a need to choose sides. Our goal is to help you gain the understanding and information you need to integrate the approaches in a manner that best fits your business environment.
Who Should Read This Book The perplexed—or just curious This book is for perplexed software and management professionals who have heard the buzz about agile methods and want to separate the chaff from the wheat. Perhaps you have a CMM- or ISO-certified organization and want to know if and how agile methods can help you. Or perhaps some part of your organization has adopted agile methods and you are unsure of how they should fit in. Fundamentally, if you need to understand how the latest software development approaches can help meet business goals, this book is for you.
Most of you are busy people, and "must-read" material attacks you from all sides, 24/7. Some of you want to quickly assess the material for later reflection. Others want to know how to implement the concepts we present. For that reason, weve tried to make this book easy to read quickly but with pointers to more in-depth material.
In a hurry? Use the fast track for a quick overview
If time is short, use the fast track summaries to scan the total content of the book, stopping to read things you find interesting or particularly applicable to your needs, and following the icons for specific technical information. If you find you need even more detailed material, there are references as well as a list of additional resources in Appendix F.
First and last chapters are key
You can also tailor your reading through chapter selection. Reading the first and last chapters gives a pretty good idea of the material at a familiarization level. You can read the chapters in any order. Here is a quick summary:
Download the Index
file related to this title.