Without a framework, the building falls.

Without a framework, the building falls.

Team-based frameworks, techniques and methods have dominated the discussion over short history of Agile as a named movement. Concepts like Scrum and Extreme Programing (just two of the more prominent frameworks) caught the interest of software developers and IT management for many reasons, including the promise of customer responsiveness, faster delivery rates, increased productivity and the implementation excesses of heavyweight frameworks, such as the CMMI. Excess of the later still resounds in the minds of many developers, process improvement specialist and IT leaders. The fear of excess overhead and administration has dampened the discussion and exploration of techniques to scale Agile to the address program level and enterprise issues.  In the past few years, three primary frameworks have emerged to vie for the heavyweight championship of Agile. They are:

  1. Dynamic Systems Development Method (DSDM). DSDM is a project delivery/system development method. Originally released in 1994, DSDM predates the Agile Manifesto and was one the frameworks that drove the evolution of lightweight incremental development. DSMD takes a broader view of projects and integrates other lifecycle steps into the framework on top of a developer lead Scrum team. The framework has been tailored to integrate the PRINCE2 (European Project Management Standard) as a project and program management tool. DSDM is open source. (http://www.dsdm.org/)
  2. Disciplined Agile Delivery (DAD). DAD is a framework that incorporates concepts from many of the standard techniques and frameworks (Scrum, lean, Agile modeling and Agile Unified Process to name a few) to develop an organizational model. Given that DAD was developed and introduced after the introduction of Agile-as-a-movement, DAD explicitly reflects the Agile principles espoused in the Agile Manifesto while reflecting organizational scaling concerns. DAD has been influenced and championed by Scott Amber (Disciplined Agile Delivery: A Practitioner’s Guide to Agile, 2012) and IBM. The model is proprietary (http://disciplinedagiledelivery.com/)
  3. Scaled Agile Framework Enterprise (SAFe). SAFe as a framework leverages Kanban as tool to introduce organizational portfolio management and then to evolve concepts to programs to project and finally to Scrum teams. SAFe explicitly addresses the necessity of architecture to develop in lockstep with functionality. As with DSDM and DAD, SAFe’s goal is provide a framework to scale Agile in a manner that addresses the concerns and needs to the overall business, IT and development organizations. SAFe is a proprietary framework that was originally developed by Dean Leffingwell and now is supported by the company Scaled Agile. (http://scaledagileframework.com/)

There is a huge amount of controversy in the Agile community about the need for frameworks for scaling Agile, as evidenced by shouting matches at conferences and the vitriol on message boards. However many large organizations in both commercial and governmental organizations are using DSDM, DAD and SAFe as mechanisms to scale Agile.  Shouting is not going to stop what many organizations view as a valuable mechanism to deliver functionality to their customers.

note

Software development frameworks and methodologies are roadmaps.  Frameworks provide scaffolding based on a set values and principles. Methodologies (as we noted here) augment a framework with tools, processes and practices. One framework can be implemented by many methodologies, each representing different interpretations of the embedded values and principles.  Each different interpretation requires a different combination of tools, processes and practices.

Disciplined Agile Delivery (DAD) is a methodology that builds on many other frameworks and methodologies, including Extreme Programming (xP), which is also a methodology. Even though xP predates the Agile Manifesto (Kent Beck the creator of xP helped create the Agile Manifesto), both xP and DAD leverage Agile as their core framework.  DAD uses a three phase structure: inception, construction and transition, with iterations/sprints, stand-ups, demonstrations and retrospectives as processes in all phases.  xP features a flow that begins with an architectural spike followed by release planning, construction iterations, acceptance tests and small releases. Both represent very different implementations of Agile.

There isn’t a one-to-one relationship between software development frameworks and methodologies. One framework can be interpreted, and therefore implemented, in many different ways.  Different does not mean wrong, but it does mean that anyone that wants to embrace a specific framework needs to find (or create) a methodology that fits their interpretation of the values and principles within the framework.