Dean Leffingwell is a renowned software development methodologist, author, and software team coach who has spent his career helping software teams meet their goals. He is the former founder and CEO of Requisite, Inc., makers of RequisitePro, and a former vice president at Rational Software, where he was responsible for the commercialization of RUP. During the last five years, in his role as both an independent consultant and as advisor/methodologist to Rally Software, Mr. Leffingwell has applied his experience to the organizational challenge of implementing agile methods at scale with entrepreneurial teams as well as distributed, multinational corporations. These experiences form much of the basis for this book. Mr. Leffingwell is also the lead author of Managing Software Requirements, Second Edition: A Use Case Approach (Addison-Wesley, 2003).
Foreword | p. xvii |
Preface | p. xxi |
Acknowledgments | p. xxvii |
About the Author | p. xxix |
Overview of Software Agility | p. 1 |
Introduction to Agile Methods | p. 5 |
Achieving Competitive Advantage in a Software Economy | p. 5 |
Enter Agile Methods | p. 6 |
Agile at Scale | p. 7 |
A Look at the Methods | p. 8 |
The Trend to Agile Adoption | p. 10 |
Business Benefits of Software Agility | p. 11 |
A Brief Look at XP, Scrum, and RUP | p. 13 |
Summary | p. 15 |
Why the Waterfall Model Doesn't Work | p. 17 |
Problems with the Model | p. 19 |
Assumptions Underlying the Model | p. 20 |
Enter Corrective Actions via Agile Methods | p. 26 |
The Essence of XP | p. 29 |
What Is XP? | p. 29 |
What's So Controversial about XP? | p. 30 |
What's So Extreme about XP? | p. 30 |
The Fundamental Tenet of XP | p. 31 |
The Values, Principles, and Practices of XP | p. 33 |
The Process Model for XP | p. 38 |
Applicability of the Method | p. 39 |
Suggested Reading | p. 40 |
The Essence of Scrum | p. 41 |
What Is Scrum? | p. 41 |
The Roles in Scrum | p. 42 |
The Philosophical Roots of Scrum | p. 42 |
The Values, Principles, and Practices of Scrum | p. 43 |
Key Practices of Scrum | p. 44 |
The Fundamental Tenet of Scrum: Empirical Process Control | p. 45 |
The Process Model for Scrum | p. 46 |
On Scrum and Organizational Change | p. 48 |
Applicability of the Method | p. 48 |
Suggested Reading | p. 49 |
The Essence of RUP | p. 51 |
What Is RUP? | p. 51 |
Key Characteristics of RUP | p. 51 |
Roots of RUP | p. 52 |
Agile RUP Variants | p. 60 |
Applicability of the Method | p. 61 |
Suggested Reading | p. 62 |
Lean Software, DSDM, and FDD | p. 63 |
Lean Software Development | p. 63 |
Dynamic Systems Development Method | p. 65 |
Feature-Driven Development | p. 70 |
The Essence of Agile | p. 75 |
What Are We Changing with Agile? | p. 75 |
The Heartbeat of Agile: Working Code in a Short Time Box | p. 81 |
Summary | p. 85 |
The Challenge of Scaling Agile | p. 87 |
Apparent Impediments of the Methods | p. 88 |
Impediments of the Enterprise | p. 90 |
Summary | p. 94 |
Seven Agile Team Practices That Scale | p. 95 |
The Define/Build/Test Component Team | p. 101 |
What Is the Define/Build/Test Component Team? | p. 102 |
Eliminating the Functional Silos | p. 104 |
The Roles and Responsibilities of an Agile Component Team | p. 106 |
Creating Self-Organizing, Self-Managing Define/Build/Test Teams | p. 109 |
Distributed Teams | p. 114 |
Two Levels of Planning and Tracking | p. 115 |
A Generalized Agile Framework | p. 116 |
Summary: Two Levels of Planning | p. 120 |
Mastering the Iteration | p. 123 |
Iteration: The Heartbeat of Agility | p. 123 |
The Standard, Two-Week Iteration? | p. 123 |
Planning and Executing the Iteration | p. 124 |
Iteration Planning | p. 125 |
Iteration Execution | p. 129 |
Iteration Tracking and Adjusting | p. 132 |
Iteration Cadence Calendar | p. 135 |
Smaller, More Frequent Releases | p. 139 |
Benefits of Small Releases | p. 139 |
Defining and Scheduling the Release | p. 141 |
Planning the Release | p. 144 |
Release Tracking | p. 147 |
The Release Roadmap | p. 149 |
Agile at Scale Preview: Release Planning and Tracking in the Large | p. 150 |
Concurrent Testing | p. 155 |
Introduction to Agile Testing | p. 155 |
Agile Testing Principles | p. 156 |
Unit Testing | p. 158 |
Acceptance Testing | p. 160 |
Component Testing | p. 162 |
System and Performance Testing | p. 162 |
Summary: Agile Testing Strategy in a Nutshell | p. 164 |
Continuous Integration | p. 169 |
What Is Continuous Integration? | p. 169 |
Continuous Integration | p. 171 |
The Three Steps to Continuous Integration | p. 172 |
What Is Continuous Integration Success? | p. 175 |
Regular Reflection and Adaptation | p. 179 |
Iteration Retrospective | p. 180 |
Release Retrospective | p. 184 |
Creating the Agile Enterprise189 | |
Intentional Architecture | p. 195 |
What Is Software Architecture? | p. 195 |
Agile and Architecture | p. 197 |
On Refactoring and Systems of Scale | p. 201 |
What Are You Bu | |
Table of Contents provided by Publisher. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.