Disciplined Agile Delivery Framework: A Beginner's Guide
This article hopefully gives you ample working knowledge on the concept of the DaD framework, history, lifecycles, principles, pros, cons, and more.
Join the DZone community and get the full member experience.
Join For FreeThink of Disciplined Agile Delivery as a software delivery framework because that is exactly what it is. By employing principles of disciplined agile in your team's process, you can ensure its success.
This article hopefully gives you ample working knowledge on the concept of the DaD framework before you get to the tail end. Want to delve right in?
- A little background
- What in the world is disciplined agile delivery?
- Typical DaD lifecycles
- Why will anyone want to adopt DaDs?
- DaD vs Scrum Agile Frameworks
- Team roles within a Disciplined agile delivery
- Final thoughts
Before its development in 2015, teams had to make up their agile methodologies to achieve any degree of the result.
Who Invented Disciplined Agile?
Scott Ambler, Canadian software engineer, consultant, and author, and Mark Lines, author and VP of the Project Management Institute, both luminaries of the framework, are best credited for championing the Disciplined Agile Delivery (DAD) methodology.
They developed the framework to fill the process void intentionally excluded by Scrum and provide a more cohesive approach to agile software development.
So, What in the World Is Disciplined Agile Delivery?
A Disciplined Agile (DA) is an individual-first decision process framework. As a process, it offers lightweight guidance to help teams optimize their operations according to the unique needs of each specific project.
What DA Is Not
- A practice but rather, a toolkit
- Restricted to teams only but is designed to help the entire organization achieve business
agility
Disciplined Agile Deliveries are scalable, learning-oriented approaches to agile software development. They support multiple delivery life cycles, including Lean Startup-based exploration and the traditional program life cycle.
In addition, DAD extends the waterfall approach by introducing agile project management techniques such as risk management, issue tracking, and feature prioritization.
The Disciplined Agile framework has evolved over the years. The first version, Discipline Agile 3. x, introduced a version called Disciplined Agile Enterprise, addressing the full range of processes required by businesses. The latest version, DAD 4.0, added guided continuous improvement and an agile governance strategy called "guided evolution." In August 2019, the Project Management Institute (PMI) acquired Discipline Agile.
DAD was developed to solve the inherent problems in both agile and waterfall.
The goal of DAD is to create a process that is more predictable, less risky, and more efficient than either is on its own.
Core DaD Principles
- Delight customers
- Be awesome
- Context counts
- Be pragmatic
- Choice is good
- Optimize flow
- Organize around product/services
- Enterprise awareness
Why Will, Anyone, Want to Adopt DaDs?
DaD was designed essentially to address the most common challenges that come with software delivery, including:
- The long-term planning and resource utilization are caused by a lack of predictability. It can lead to missed deadlines and large project budgets in some cases.
- The misunderstandings and inefficiencies across teams and departments are caused by a lack of collaboration and communication.
- Constantly missed opportunities and a lack of innovation caused mainly by the absence of adaptability to change.
- A bucketful of buggy products and unhappy customers, consequently as a result of continued disregard for quality.
It Aligns Scrum Teams With the Rest of the Organization
Disciplined Agile Delivery (DAD) combines lean-Agile processes and practices with a more structured, formal approach based on a hybrid model. The model promotes a learning environment where teams make quick changes and continuously explore the needs and expectations of their stakeholders.
Implementing DaD practices in a typical organization may be challenging because of organizational culture and management. However, it has proved to be very beneficial for organizations.
When an organization implements DAD correctly, teams take responsibility for their tasks and stories, and the entire organization benefits. It aligns scrum teams with the rest of the organization and enables executives to make better decisions on the workload.
The key to scaling agile is trust and autonomy. By giving people more independence and making them feel trusted, they are more likely to be engaged and produce better work. And this, in turn, will benefit the business. Happy employees translate to lower turnover rates, higher satisfaction, and higher ROI.
Prioritizes People as the Most Critical Factor in Project Success
Unlike traditional project management techniques, disciplined agile delivery puts the people behind a project at the top priority list. It focuses on facilitating critical thinking and collaboration to increase the team's chances of meeting deadlines and delivering value.
Developing critical thinking among team members requires effective communication and collaboration. Group training using Agile-based games and exercises is a great way to foster strong team bonds and promote effective communication.
Moreover, disciplined agile delivery is an enterprise-aware hybrid software process framework. It integrates agile strategies across the entire delivery lifecycle and addresses the complexities of team members. This framework also helps companies implement and scale their agile practices across all project phases, from project initiation to deployment into production.
People drive disciplined agile delivery, and leaders should empower people to take ownership of their work. Rather than putting the project's success in the hands of a few experts, agile teams can develop innovative ideas that solve real problems.
With this methodology, groups organize around passionate volunteers who want to do their best. If employees are not motivated, the project will fail.
When teams are collaborative, they modularize their work, and when the people are motivated, the team can produce higher quality software faster. So a creative team can produce better results than a command and control group.
It Is Scalable
Carrying out a mere face value comparison of Disciplined Agile Delivery and other alternatives would reveal DaDs as scalable. Rather than adopting agile practices to every level of the organization, DAD focuses on maximizing the benefits of Agile across the product delivery lifecycle - from enterprise architecture to release management to operations and support.
In addition, this framework is highly customizable to adapt to any organizational structure or technology stack.
The main challenges of scaling Agile across an organization include alignment and coordination. The Agile scaling frameworks address this problem by introducing quarterly planning events and cross-functional teams. In addition, they emphasise the importance of highlighting dependencies and risks and creating "teams of teams" to plan events.
Such events are critical in ensuring that teams remain consistent across the enterprise. Achieving this goal is possible by aligning Agile teams, implementing a centralised governance process, and ensuring that team members know each other's progress and status.
Scalable disciplined agile delivery requires that teams collaborate to plan, refine, and hold retrospectives. For example, planning involves two meetings - one with all team representatives and the other defining each team's work. In addition, teams have daily scrums, open to any team member. Finally, representatives from all teams attend sprint reviews and Scrum of Scrums.
In addition, scaling Agile requires that teams adopt the methods and processes of the Agile development lifecycle across the organization, which includes transitioning all the staff members to the new way of working. Additionally, IT departments must adjust their entire infrastructure to meet agility requirements.
If these two are not possible, scaling disciplined agile delivery will fail. It will only work when every team works with a cohesive product backlog and collaborative culture.
DaD vs Scrum Agile Frameworks
What Is the Difference Between Scrum and Disciplined Agile Delivery?
Majorly, Scrum focuses on one approach: Construction, while DaD, as heavily highlighted previously, aims to maximize the benefits of Agile across the product delivery lifecycle.
Disciplined Agile Delivery addresses the delivery of software and other projects and helps break down organizational barriers. It allows scrum teams to be coordinated and aligned with the rest of the organization and maintains transparency throughout the project lifecycle.
Whether creating a new product or refactoring an existing one, disciplined agile delivery is an excellent way to achieve both of these goals.
DaD, a hybrid framework, allows you to adapt to various lifecycles. Disciplined agile adopts strategies from different methodologies and combines relevant pieces of the existing frameworks. It helps you address all aspects of the delivery lifecycle. Keep in mind that there is no single best method. But there are many different stages of DAD, and each one has its specific benefits. To use DAD correctly, you need to be aware of the benefits and drawbacks of each.
Team Roles Within Disciplined Agile Delivery (DaD) Frameworks
Essentially, there are 2 major roles within the DaD Framework.
Primary Roles and Supporting Roles
Primary Roles
These roles are a constant in most agile teams and organizations, regardless of the size. They include:
- Stakeholders - Often represented by people funding the project. They are interested in the project and its successful outcome, although they're not a part of the scrum team directly.
- Product Owner - The product owner is part of the scrum team. They speak on behalf of the customer. They give priority to specific tasks and oversee the project.
- Team Lead - A team lead serves as an agile coach, facilitating communication and ensuring that the team has the resources to produce a solution.
- Team Members - They're the ones actively involved in developing the product. They carry out tasks on their itinerary in short sprints and report progress to the team lead.
- Architecture Owner - Usually the most technically versatile and experienced person in the team, they're in charge of designing and maintaining how the product will turn out so that it meets the customer's requirements. They reduce bottlenecks involved in the development process.
Supporting Roles
These roles are temporary and usually required to deal with issues encountered during scaling. They include:
- Specialists: Depending on the size of the team and the complexity of issues, they address and provide more excellent technical know-how in the product development process.
- Domain Experts: They're considered an expert in a subject matter. In this case, they come in to answer specific issues the development team may be facing related to the project.
- Technical Experts: Their job is to help the team overcome a persistent and complex issue and transfer some of their skills to one or more team members.
- Independent Testers: Their role is to validate the work done throughout the lifecycles by working with the development team.
- Integrators: They ensure teams, mainly large ones requiring different positions, all function together.
Typical DaD Life Cycles
The DAD framework has six (6) different lifecycles. They are:
1. The Agile Life Cycle: Majorly a concept of Scrum, it operates using milestones as critical indicators of work and is based on iteration. Work item lists are also used instead of a product backlog, giving completely effective strategies from A-Z.
2. The Lean Life Cycle: Based on Kanban, the lean life cycle supports the continuous development flow by minimizing work and managing bottlenecks encountered in the development process.
Unlike the Agile life cycle, where sprint meetings, plannings, and retrospectives hold more frequently, lean recommends having them when necessary. That's not to say it doesn't consider them necessary. And work is taken out of the work pool.
3. The Continuous Delivery - Agile Life Cycle: Considered a more advanced version of the basic Agile life cycle. It encourages the practice of shorter iterations (one week or less). Development teams develop new features at the end of each iteration.
4. The Continuous Delivery - Lean Life Cycle: It's more or less the basic lean cycle, based on Kanban, but with even shorter iterations. New releases are made on a daily, weekly, or monthly basis.
5. The Exploratory/Lean Startup Life Cycle: Eric Ries, in his book, "The Lean Startup," promotes the principles upon which this lifecycle is based and is further improved for more complex adaptive systems.
It's ideal if you're willing to experiment and evolve your idea based on your learnings. The main goal is to reduce upfront costs so small experiments can discover what the market truly wants before building the solution.
6. The Program Life Cycle: This life cycle involves organizing a team of teams. Suitable for the rare occasions that large agile teams happen. Scaling frameworks like SAFe, LeSS, and Nexus adequately address this situation.
Disciplined Agile Delivery Phases
The main phases in the DAD framework include :
1. Inception: Also known as "Sprint 0." It's usually the beginning of the development process where the team sets up different activities. It involves work that shows how the project will appear in the future, plus the project frame and its purposes. Best kept brief.
2. Construction: A lot of approval and product development is done, albeit on an incremental basis. Teams can begin to implement hybrid agile practices – Scrum, Agile data, Agile modeling, XP – to determine the nature & quality of the product.
3. Transition: This phase involves testing the solution extensively. Stakeholders are informed about the product and its progress.
The transition strategy may include continuous deployment, micro-deployments, or toggle releases.
Final Thoughts
Although software developers created DaD, its applications are limitless, and other types of work can apply its fundamental principles. The constant remains that the delivery of an evolving product by an agile team will require DaD for successful execution, variability, and uniqueness of teams notwithstanding.
From finance teams tasked with daily accounting tasks and auditing over a period to a team of writers jumping on a web content project for a period, teams could employ DaD's agile and lean principles like Scrum and Kanban and function as a self-organizing team to plan, construct and deliver work, using feedback loops to adapt as the project approaches "done" status.
Published at DZone with permission of Praise Iwuh. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments