Agile Values and Principles for a New Generation
“In the journey to all things Agile, Uncle Bob has been there, done that, and has the both the t-shirt and the scars to show for it. This delightful book is part history, part personal stories, and all wisdom. If you want to understand what Agile is and how it came to be, this is the book for you.”
–Grady Booch
“Bob’s frustration colors every sentence of Clean Agile, but it’s a justified frustration. What is in the world of Agile development is nothing compared to what could be. This book is Bob’s perspective on what to focus on to get to that ‘what could be.’ And he’s been there, so it’s worth listening.”
–Kent Beck
“It’s good to read Uncle Bob’s take on Agile. Whether just beginning, or a seasoned Agilista, you would do well to read this book. I agree with almost all of it. It’s just some of the parts make me realize my own shortcomings, darn it. It made me double-check our code coverage (85.09%).”
–Jon Kern
Nearly twenty years after the Agile Manifesto was first presented, the legendary Robert C. Martin (“Uncle Bob”) reintroduces Agile values and principles for a new generation–programmers and nonprogrammers alike. Martin, author of Clean Code and other highly influential software development guides, was there at Agile’s founding. Now, in Clean Agile: Back to Basics, he strips away misunderstandings and distractions that over the years have made it harder to use Agile than was originally intended.
Martin describes what Agile is in no uncertain terms: a small discipline that helps small teams manage small projects . . . with huge implications because every big project is comprised of many small projects. Drawing on his fifty years’ experience with projects of every conceivable type, he shows how Agile can help you bring true professionalism to software development.
• Get back to the basics–what Agile is, was, and should always be
• Understand the origins, and proper practice, of SCRUM
• Master essential business-facing Agile practices, from small releases and acceptance tests to whole-team communication
• Explore Agile team members’ relationships with each other, and with their product
• Rediscover indispensable Agile technical practices: TDD, refactoring, simple design, and pair programming
• Understand the central roles values and craftsmanship play in your Agile team’s success
If you want Agile’s true benefits, there are no shortcuts: You need to do Agile right. Clean Agile: Back to Basics will show you how, whether you’re a developer, tester, manager, project manager, or customer.
Author(s): Robert C. Martin
Series: Robert C. Martin Series
Edition: 1
Publisher: Pearson
Year: 2019
Language: English
Commentary: Vector PDF
Pages: 240
City: Boston, MA
Tags: Software Engineering; Agile; Refactoring; Scrum; Team Management; Test-Driven Development; Pair Programming
Cover
Half Title
Title Page
Copyright Page
Dedication
Contents
Foreword
Preface
Acknowledgments
About the Author
Chapter 1 Introduction to Agile
History of Agile
Snowbird
After Snowbird
Agile Overview
The Iron Cross
Charts on the Wall
The First Thing You Know
The Meeting
The Analysis Phase
The Design Phase
The Implementation Phase
The Death March Phase
Hyperbole?
A Better Way
Iteration Zero
Agile Produces Data
Hope versus Management
Managing the Iron Cross
Business Value Order
Here Endeth the Overview
Circle of Life
Conclusion
Chapter 2 The Reasons for Agile
Professionalism
Software Is Everywhere
We Rule the World
The Disaster
Reasonable Expectations
We Will Not Ship Shyt!
Continuous Technical Readiness
Stable Productivity
Inexpensive Adaptability
Continuous Improvement
Fearless Competence
QA Should Find Nothing
Test Automation
We Cover for Each Other
Honest Estimates
You Need to Say “No”
Continuous Aggressive Learning
Mentoring
The Bill of Rights
Customer Bill of Rights
Developer Bill of Rights
Customers
Developers
Conclusion
Chapter 3 Business Practices
Planning
Trivariate Analysis
Stories and Points
ATM Stories
Stories
Story Estimation
Managing the Iteration
The Demo
Velocity
Small Releases
A Brief History of Source Code Control
Tapes
Disks and SCCS
Subversion
Git and Tests
Acceptance Tests
Tools and Methodologies
Behavior-Driven Development
The Practice
Whole Team
Co-Location
Conclusion
Chapter 4 Team Practices
Metaphor
Domain-Driven Design
Sustainable Pace
Overtime
Marathon
Dedication
Sleep
Collective Ownership
The X Files
Continuous Integration
Then Came Continuous Build
The Continuous Build Discipline
Standup Meetings
Pigs and Chickens?
Shout-out
Conclusion
Chapter 5 Technical Practices
Test-Driven Development
Double-Entry Bookkeeping
The Three Rules of TDD
Debugging
Documentation
Fun
Completeness
Design
Courage
Refactoring
Red/Green/Refactor
Bigger Refactorings
Simple Design
Design Weight
Pair Programming
What Is Pairing?
Why Pair?
Pairing as Code Review
What about the Cost?
Just Two?
Management
Conclusion
Chapter 6 Becoming Agile
Agile Values
Courage
Communication
Feedback
Simplicity
The Menagerie
Transformation
The Subterfuge
The Lion Cubs
Weeping
Moral
Faking It
Success in Smaller Organizations
Individual Success and Migration
Creating Agile Organizations
Coaching
Scrum Masters
Certification
Real Certification
Agile in the Large
Agile Tools
Software Tools
What Makes for an Effective Tool?
Physical Agile Tools
The Pressure to Automate
ALMs for the Not-Poor
Coaching—An Alternative View
The Many Paths to Agile
From Process Expert to Agile Expert
The Need for Agile Coaching
Putting the Coach into Agile Coach
Going Beyond the ICP-ACC
Coaching Tools
Professional Coaching Skills Are Not Enough
Coaching in a Multiteam Environment
Agile in the Large
Using Agile and Coaching to Become Agile
Growing Your Agile Adoption
Going Big by Focusing on the Small
The Future of Agile Coaching
Conclusion (Bob Again)
Chapter 7 Craftsmanship
The Agile Hangover
Expectation Mismatch
Moving Apart
Software Craftsmanship
Ideology versus Methodology
Does Software Craftsmanship Have Practices?
Focus on the Value, Not the Practice
Discussing Practices
Craftsmanship Impact on Individuals
Craftsmanship Impact on Our Industry
Craftsmanship Impact on Companies
Craftsmanship and Agile
Conclusion
Chapter 8 Conclusion
Afterword
Index
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W