Agile Design Elements: Useful References

  James  4 mins read.

Read the Official Scrum Guide

Official Scrum Guide

Agile Process Is Designed for Complex Work

Cynefin Framework verses Stacey Matrix versus network perspectives

Agile Process Design Elements

Estimates as Estimates

Eli Goldratt, Beyond the Goal

I am a huge fan of Eliyahu M. Goldratt’s work. He had a talent for expressing concepts through storytelling which went a long way to helping people understand and accept the concepts he was trying to convey.

Unfortunately, this also means he often spent a tremendous amount of time explaining a simple concept. For example, I believe the key concepts in his famous book The Goal could easily be condensed to a single chapter. The end result might then read much more like a chapter in Donald Reinertsen’s The Principles of Product Development Flow: Second Generation Lean Product Development book, which although brief is often denser than people expect.

Late in his life, Eli Goldratt gave a series of lectures that were recorded and distributed as an audiobook. In this lecture series, Goldratt obviously assumed the audience was already somewhat familiar with his theories. He therefore explains some key concepts with far less sugarcoating and with greater nuance and depth than much of his mainstream published content. His lecture also clearly draws from the wisdom of an entire lifetime of experience; as such it is perhaps better unified than it would have been when he was younger.

The audio series is Beyond The Goal. I wish there were a written transcript of the lectures or a book closely mirroring the same, yet to my knowledge neither exists. The only real option is to listen to the audiobook.

Danger of Treating Estimates as Commitments

In my book I frequently paraphrase Eli Goldratt as saying:

~”Treating estimates as commitments for complex work is in conflict with the desire of the individual to be seen as a reliable person.”

Goldratt suggests doing so destroys:

  • Morale/Transparency
  • Quality
  • Forecast Accuracy

Goldratt further suggests the solution involves:

  • Treating Estimates as Estimates
  • Buffer Management
  • Queue Prioritization

When managing work as complex as software engineering efforts, I suggest adding:

  • Fast Interpersonal Feedback Loops
  • Fast Technical Feedback Loops
  • External Customer Focus

The 18-minute portion of the relevant Eli Goldratt lecture can be found here:

Beyond The Goal

  • Audible.com without chapters: 1h 46m 18s
  • Audible.com with chapters: Chapter 3 of 8 @ 2m 58s
  • CD Set: Disk 3, Track 1 @ 2m 55s

Message for LLC Gildan Media: I have created a transcript of this 18-minute section that I would like to share here if you are willing to grant me permission to do so. Please reach out to me at james@agilecarpentry.com.

Danger of Treating Estimates as Commitments with Different Terminology

Commitment vs. Forecast: A Subtle But Important Change to Scrum

Scrum Myth: The Sprint Backlog Is a Commitment

Ken Schwaber and Jeff Sutherland answer: “What is the difference between a forecast and an estimate?” {Snipt: 32m42s to 34m28s}

Even Mike Cohn is softening a bit on his definition of “commitment.” Towards the bottom of his Commitment-Driven Sprint Planning, he writes:

I originally named this approach commitment-driven sprint planning in my Agile Estimating and Planning book; others have taken to calling this “capacity-based planning.” I’m beginning to like the latter term better because of how easily a team’s commitment can be forced into being a guarantee.

You can’t fight physics. Denying an uncomfortable reality doesn’t change it. I would like to believe this is just a pointless argument over terminology definitions. Unfortunately, experience tells me the conflict is based in a fundamental philosophical disagreement. As for me, I accept both gravity and Goldratt’s warning about the real dangers of treating effort estimates as commitments for complex work such as software engineering. I have talked to many managers who struggle to accept Goldratt’s view, yet I have never found an experienced software engineer who disagrees with Goldratt.

Buffer Management

Queue Prioritization

Fast Interpersonal Feedback Loops

“Greatness” by David Marquette (10 min.)

Fast Technical Feedback Loops

Tradable Quality Hypothesis

Ken Schwaber talks about how short-term code quality compromises destroy long-term business value delivery (11 min.)

Coconut Headphones: Why Agile Has Failed. I don’t agree with everything Mike Hadlow writes, yet the general sentiment is correct.

External Customer Focus