A Hybrid Framework

Disciplined Agile (DA) is a hybrid framework that builds upon the solid foundation of other methods and software process frameworks. The DA framework adopts practices and strategies from existing sources and provides advice for when and how to apply them together. In one sense methods such as Scrum, Extreme Programming (XP), Kanban, and Agile Modeling (AM) provide the process bricks and DAD the mortar to fit the bricks together effectively.

HybridThe DA framework adopts strategies from the following sources:

  • Scrum. The Scrum method focuses on team leadership and requirements change management during the construction portion of the delivery lifecycle. Scrum captures some really great ideas that have become commonly adopted by agile teams.
  • Extreme Programming (XP). XP is an agile method that focuses primarily on construction-oriented practices such as continuous integration (CI), test-driven development (TDD), pair programming, sustainable pace, small releases, simple design, and many others. Although XP’s practices appear straightforward on the surface, many of them require significant technical skill and discipline on the part of practitioners.
  • Lean software development. Practitioners of agile development are increasing looking to adapt ideas from lean thinking. Lean software development is based on seven principles: Eliminate waste, amplify learning, decide as late as possible, deliver as fast as possible, empower the team, build integrity in, and see the whole.
  • Kanban. Kanban is a method for managing knowledge work with an emphasis on just-in-time delivery while not overloading the team members. In this approach, the process, from definition of a task to its delivery to the customer, is visualized and team members pull work from a queue or work item pool.
  • Unified Process (UP). The UP is an iterative and incremental process framework for software development. Although often instantiated as a heavy-weight approach, it has in fact been instantiated in a very light weight and agile manner, particularly in the form of Agile Unified Process (AUP) or OpenUP. The DA framework adopts and enhances several critical governance strategies from the UP.
  • Agile Modeling (AM). AM is a practice-based methodology for effective modeling and documentation of software-based system. AM was purposely architected to be a source of strategies which can be tailored into other base processes, something the DAD framework takes explicit advantage of. AM strategies adopted by DA include initial requirements and architecture envisioning, just in time (JIT) model storming, continuous documentation, and several others.
  • Agile Data. The Agile Data (AD) method defines a collection of strategies that IT professionals can apply in a wide variety of situations to work together effectively on the data aspects of software systems. Practices for evolutionary/agile database development include database refactoring, database regression testing, agile data modeling, and continuous database integration.
  • Enterprise methods. DA is starting to adopt strategies from enterprise IT methods such as Scaled Agile Framework (SAFe) and Enterprise Unified Process (EUP). These strategies address enterprise architecture, product management, portfolio management, operations and support, release management and other important IT disciplines. These strategies reflect the DA philosophy of enterprise awareness.
  • Other methods. DA adopts techniques and practices from other methods such as Dynamic System Development Method (DSDM), Feature Driven Development (FDD), Evo, Outside-In Development (OID), and Crystal Clear.
  • Other frameworks. In the DA 2.0 release of the framework we’ve started to adopt leaned-out strategies from the ITIL, COBiT, TOGAF, and DAMA frameworks (to name a few).
  • Agile development practices. There are many practices that are not specific to agile methods that have been developed within the agile community, and DA leverages many of them.

One of the great advantages of agile and lean software development is the wealth of practices, techniques, and strategies available to you. This is also one of its greatest challenges because without something like the DA framework it’s difficult to know what to choose and how to fit them together.  In many ways the DA framework does the “heavy process lifting” for you in that it shows how all of these great ideas fit together, enabling you to get on with your actual job which is to produce great solutions for your stakeholders.

3 thoughts on “A Hybrid Framework

  1. Gopinath Ramakrishnan

    DAD as a hybrid framework reminds me of Goddess Durga in Indian mythology. As the story goes she borrows,aligns,assimilates,leverages the energy and different kinds of weapons of all the other gods to slay a terrible demon who otherwise could not be vanquished by individual efforts.
    What I like about DAD is its non-prescriptive approach and its openness to acknowledge and apply the good things from other models with due consideration to
    the current organizational context and business goals.
    However this framework is not for faint-hearted looking for easy, quick and prescriptive cook book like solutions.
    Understanding and applying DAD requires maturity, patience and experience, but the effort will be worth it.
    Hope this framework gains more traction in the industry.

    1. Fakhar Anwar

      DAD is a cover name for EUP while pleasing Agilers who are blind trend-followers so Agilers will transit to EUP in the name of DAD. DAD does not provide any added value to EUP and Scot Ambler is the man behind EUP, AUP / Agile Modeling, DAD now renamed as DA. In reality, Agile Manifesto and its implementations specially Agile-SCRUM and Agile-XP have failed in real world projects due to lacking Enterprise Disciplines including Project Management and Risk Management.

      1. Scott Ambler Post author

        Fakhar, it may be interesting to note that DA brings activities around risk management, program management, portfolio management, and management in general explicitly into the agile software process.

        Also, on average, agile teams appear to enjoy higher levels of success than do traditional teams. This may be one of the reasons why agile strategies have become the dominant approach now in the IT space.

        Good luck though with your worldview.


Leave a Reply

Your email address will not be published. Required fields are marked *