Disciplined Agile Delivery: What is it, and how does it work?
- Methodologies
Disciplined Agile Delivery (DA) is an agile methodology that works as a toolkit/strategy which assists in the company’s decision-making, considering the size of the team and other specificities of the organization’s context.
This framework organizes, simplifies and streamlines an organization’s processes in a personalized way, respecting the WoW – Way to Working of each company. It is a hybrid approach that includes a variety of other practices and processes, such as Scrum, Kanban, Extreme Programming, Agile Data, Agile Modeling, and DSDM.
With Disciplined Agile, you identify which tools serve each specific situation, and this flexibility keeps the company competitive and adaptable to any adversity. Each role has its particular responsibilities to support the organization’s flow moving.
How Disciplined Agile works
Disciplined Agile acts as a time-saver for the project. It mitigates risks through its practical and pragmatic approach to project management. DA is malleable enough to remain open to changes to its tools according to the needs of the teams.
Smooth delivery is every company’s dream. It can be achieved with Disciplined Agile, which provides fast enough deliveries that the organization can think about the next goal, the next job, and the next business cycle.
This methodology can be used not only for software development but also for elaborating marketing strategies.
Daily Meeting e Disciplined Agile
Through practices such as the daily meeting, Disciplined Agile ensures that all teams work together and actively collaborate throughout the process, ensuring that each team member is aware of project progress and can readily share guidance. The daily meeting is also a way to share strategies that contribute to software development.
Thus, it is easier to answer specific questions: What will be the next goal we should hit? How can I speed up this task? Should we change strategy now? What can I do to outrun the competition? How can I contribute to delivering results that provide a better customer experience? What value/benefit will my delivery provide to the customer?
Smooth delivery is every company’s dream. It can be achieved with Disciplined Agile, which provides fast enough deliveries that the organization can think about the next goal, the next job, and the next business cycle.
What’s the best method?
There is frequent discussion in the agile community about which method is best, but the reality is that organizations can benefit from these methods when used together.
Many organizations start their journey towards agility via Scrum – the most used by companies according to the “13th Annual State of Agile Report 2019” – which is a lightweight and simple to understand framework. However, Scrum is a part of what is needed to provide complete solutions to customers. Invariably, teams look for other methods that complete it.
When we look into these other methods, conflicts with terminology, roles, and goals come to the fore. People often don’t know where to look or even what to consider.
Disciplined Agile Delivery
To address these challenges, DAD (Disciplined Agile Delivery) emerged in 2009 when Scott Ambler was head of IT methodology at IBM Rational.
“Very few people could describe what they were actually doing. For example, when asked which frameworks teams were following, one often heard: ‘We use Scrum’ or ‘We use Kanban’ as if that was enough of an answer. In fact, the teams had adopted Scrum/Kanban strategies and Extreme Programming, Agile Modeling, and Unified Process, among other things. Often, companies reinvent ideas using these methods without even knowing them, wasting a lot of time and money”. Scott Amblers recalls in an interview.
Not surprisingly, DAD was conceived to address the critical aspects of software development that some frameworks intentionally leave up to you to decide. Let’s go to them:
hybrid approach
As mentioned earlier, DAD adopts practices and strategies from different methods because one of the significant advantages of agile and lean software development is the wealth of approaches, techniques, and strategies available.
Cover the entire delivery lifecycle
The focus of DAD is on delivery, which is a subset of the product lifecycle, from initial concept through delivery to operations and support. The figure below shows a high-level view of the DAD lifecycle. It’s a three-phase lifecycle in which you incrementally build a product.
inception
Here, the product/project initiation activities take place. Most teams do some initial survey work at the beginning of a product/project. While some people refer to this effort as Sprint/Iteration 0, it’s easy to see that according to the “Agile Initiation 2013” survey, on average, this effort takes about a month at Inception, while the most common duration of iteration/ sprint is two weeks. So in the early DAD phase, we do some very light vision activities to frame the project/product correctly.
construction
During this phase, a DAD team will produce a potentially consumable solution incrementally. They can do this through a set of iterations or a lean, continuous flow approach. The team can apply a hybrid of practices from Scrum, XP, Agile Modeling, Agile Data, and other methods to deliver the solution.
transition
DAD recognizes that deploying the solution to stakeholders is often not a trivial exercise for agile projects in large companies. Therefore, teams must try to simplify their deployment processes so that, over time, this phase lasts less and less time until, ideally, it disappears.
DAD life cycles
To be non-prescriptive and reflect the reality of teams in the best possible way, Disciplined Agile Delivery supports six lifecycle types, namely:
People First: Roles in DA
Just as the DAD adopts practices and strategies from various methods, the roles suggested by the DAD also follow this hybrid approach considering the size of the teams. From a team with up to 15 people to a team with 50 people or more.
It is also worth remembering that several roles have different names depending on the methodology being followed, common to agile teams. Roles are not positions. Anyone assumes one or more roles and can change roles over time, with any role having zero or more people at any given time.
The roles in DAD are divided into primary roles, which exist in all teams regardless of scale, and secondary roles, which typically are present when the initiative is more extensive and only for a certain period.
Considering that the focus of Disciplined Agile Delivery (DAD) ranges from conception to operation and support and service decommissioning, it is natural to believe that more roles are needed for greater scope.
Let’s go to the primary and secondary roles:
The primary roles are:
Team Lead: Responsible for facilitating team ceremonies, removing impediments, promoting cooperation, and ensuring the process is followed.
Product Owner: Represents stakeholders. They are the only person on a team responsible for the list of prioritized work items (called a product backlog in Scrum), making timely decisions, and providing product information.
Team Member: Responsible for creating and delivering the increment. The work includes modeling, programming, reviewing, and testing.
Architecture Owner: Responsible for architectural decisions. The Architecture Owner will be involved with the predicted architecture for the product. The Architecture Owner is different from a traditional architect in that he is not solely responsible for setting the direction of architecture but rather facilitating its creation and evolution.
Stakeholders: These are the people who affect or are affected by the system’s success.
These are secondary roles:
Specialist: Someone who has one or more technical specialties (e.g., Java programming, project management, database administration, etc.), software, and the business domain in which they work and, more importantly, actively seeks to gain new skills both in their existing specialties and in other areas.
Independent Tester: Effective agile teams often have a separate test team working in parallel that validates their work throughout the lifecycle. It is an optional role, usually adopted only in very complex (or at scale) projects.
Domain Expert: knows details that are not always the domain of the end-user or stakeholders, such as a specialist in financial rates, for example.
Technical Expert: For example, technical experts – such as a DBA – are brought in temporarily to help the team overcome a complex problem and transfer their skills to one or more developers on the team.
Integrator: responsible for the integration of complex systems and subsystems.
Moving to agile requires a paradigm shift, and part of that shift is the acceptance that people’s roles have changed for the better.
Disciplined Agile Principles
There are certain principles in Disciplined Agile that are important to maintaining the quality of results and the team’s stability. These values ensure that things don’t get out of hand and the team doesn’t lose strength and focus on its goals. Among them are:
Delight the Customer
A team that uses the Disciplined Agile methodology seeks to meet customer expectations and surprise them by providing the best experience with that product. It is essential that the customer is loyal and does not go in search of the competition.
Be awesome
For the organization to be successful, it must focus on maintaining it, not just achieving it. The market is unpredictable, and the team is doomed to internal and external circumstances that it is not always possible to control. Therefore, Disciplined Agile encourages you to maintain a scale of progress in which the imposed goals are consistently exceeded, and the company becomes a reference.
Context Counts
For a team to be successful, it needs to be attentive to its own needs. Relying on just one tool, such as Scrum or Kanban, is not fully effective or is only effective up to a certain point. As a toolkit, Disciplined Agile encourages the company to find its way of working WoW. Disciplined Agile is flexible and seeks the best tools for the individuality of each company and its context so that the organization keeps evolving.
Be pragmatic
The team not only needs to be fast but effective in everything they propose, delivering high-quality products. With Disciplined Agile, the organization seeks to progress using the necessary methods in each context.
The Choice is Good
Knowing the specifics of each technique is part of choosing the best strategy for a given context.
Optimize the Flow
Optimizing the entire organization’s processes, not in specific parts, encourages the company’s flow to always keep moving, avoiding unnecessary wear and tear. With less time spent on operations, the team remains motivated and more proactive.
Organize around Products and Services
Disciplined Agile encourages the team always to look to generate value for customers, wanting the best in its products, services, and offers.
Business Awareness
Having a business conscience means thinking about the long term and not just about specific and individual issues, always trying to adapt your processes, giving and receiving feedback, maintaining an interactive and harmonious environment with the team, and facilitating the improvement of organizational methods.
Daily Meeting
As the name implies, Daily Meetings are daily meetings commonly held in the morning, before the workday. These are short, 15-minute meetings but are extremely necessary to keep the team flowing. They manage all team processes.
Thus, each person/team voluntarily reports on the progress of their part in the project. Doubts, anxieties, unforeseen events, impediments in carrying out the task, ideas, everything is placed there. Through this meeting, it is also possible to exchange feedback.
This stage acts as a facilitator in decision-making and monitoring the company’s management, avoiding the need to ask about the progress of activities frequently.
For the meeting not to be prolonged and to keep the 15 minutes, each developer should summarize the analysis of their project in 3 questions:
What did I do yesterday?
What am I going to do today?
What prevents me from reproducing the ideal result?
It is also at the Daily Meeting that the company’s work plan for the next cycle is discussed and ways for teams to achieve the goal.
Everyone on the team must participate, as any absence can disrupt the workflow and the intention here is precise to automate decision-making processes.
DAD benefits
At the end of the day, while the growing number of frameworks and the various opinions about them may differ, they demonstrate the adaptability that agility is known for. Evolution and ongoing debate lead to one thing all agilists agree on: the need to inspect and adapt.
Taking into account the need for inspection and adaptation in a changing environment, which usually takes a lot of time, one of the strengths of DAD is openly not being prescriptive, both in roles and in life cycles. This hybrid approach tells that there is no “silver bullet” strategy for all situations in all companies.
DAD is a valuable reference for its approach and can be even better if associated with daily meetings. But I understand that the first step is to educate your organization and understand the Lean and Agile principles that make up the DAD frameworks so that your team has better ways to solve your customer’s problem, delivering more and more value.