Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News InfoQ Presentation: DSDM and Lean Explained

InfoQ Presentation: DSDM and Lean Explained

In part two of the Agile Styles presentation, Mary Poppendieck and Jean Tabaka, both veterans of Agile coaching and training, explained the basics, respectively, of Lean and DSDM methodologies. This video reveals some of the groundwork that brought us to today's acceptance of Agile, and presents the basics of these two well-known approaches to Agile software delivery. This InfoQ video: Agile Styles: Lean and DSDM, presents two important alternatives to the more widespread Scrum and XP methodologies.

DSDM: Dynamic Systems Development Method

We sometimes forget that Agile is neither brand new nor sketchily conceived. DSDM is arguably the oldest formal Agile methodology. The DSDM Consortium was founded in January 1994, and in 2001 Arie van Bennekum represented the methodology at Snowbird and signed the Agile Manifesto. Now, DSDM is the only formal Agile methodology recognized for use by UK government contractors, and the DSDM Consortium's certifications are recognized world-wide. Jean Tabaka was so impressed by what she learned fin the 1990's rom the DSDM Consortium that she has made Agile software development the focus of her career: she is now an Agile Coach with Rally Software in Boulder, Colorado.

DSDM is driven by nine principles:
  1. Active user involvement is imperative.
  2. The team must be empowered to make decisions.
  3. The focus is on frequent delivery of products.
  4. Fitness for business purpose is the essential criterion for acceptance of deliverables.
  5. Iterative and incremental development is necessary to converge on an accurate business solution.
  6. All changes during development are reversible.
  7. Requirements are baselined at a high level.
  8. Testing is integrated throughout the life cycle.
  9. Collaboration and co-operation between stakeholders is essential.
Like other Agile approaches, it includes prioritized requirements, time boxed delivery, and collaborative facilitated workshops. But, in addition, it covers more of the business lifecycle, including these phases: Pre-Project phase, Feasibility Study, and Business Study before development starts, as well as a formal Post-Project phase. As such, it is often considered "the heaviest" of the Agile methodologies, whereas it should probably, more correctly, be considered the most far-reaching.

Lean Software Development

Mary Poppendieck spoke on Lean Software Development, which she and husband Tom developed following Mary's participation in creating JIT (Just In Time) Manufacturing at 3M 1980s, using ideas adapted from the Toyota Production System.

In her presentation, Poppendieck elaborated on the "7 Principles of Lean Software Development":
  1. Eliminate Waste
  2. Build Quality In
  3. Create Knowledge
  4. Defer Commitment
  5. Deliver Fast
  6. Respect People
  7. Optimize the Whole
The Lean approach is implemented by identifying and then removing all operations that don't add value - simple to say, harder to do. One aspect that makes this feel strange is that value is only considered from the customer's point of view, what Poppendieck called "putting on Customer glasses". Examples of waste are: reams of paperwork, to-do lists, red tape, anything that confuses customers, or anything delivered which doesn't work . She explained how removing or resolving these one after the other, over time, leads toward the lucrative combination of speedy delivery, high-quality and low development cost that distinguish market leadering companies.

Poppendieck also briefly talked about the wholistic key measures that drive Lean development: cycle time, accomplishment of the business case and customer satisfaction. She pointed out that these are more reliable than the common metrics of cost, schedule and scope, which may lead to sub-optimization (improvements to one part of the process which do not provide the expected benefits because other parts of the process do not support it).

From queuing theory, Poppendieck listed a few key tactics that can bring "leanness" to any process:
  • Even out the Arrival of Work
  • Minimize the Number of Things In Process
  • Minimize the Size of Things In Process
  • Establish a Regular Cadence
  • Limit Work to Capacity
  • Use Pull Scheduling
For the background on what makes these methodologies different and valuable, view the InfoQ presentation: Agile Styles: DSDM and Lean.

Rate this Article