Introduction
Learn the 8 DSDM principles and ensure they stick in your mind with this handy graphic and article. Ideal if you are working on DSDM projects at the moment or taking an AgilePM course.
That’s because the Agile PM certification scheme is based upon the DSDM framework. So, by attending an Agile Project Management course (Agile PM course) you will essentially be learning about DSDM.
DSDM (Dynamic Systems Development Method) – an agile method
DSDM (Dynamic Systems Development Method) is an iterative agile framework which was originally developed to deliver software projects iteratively, and in a more efficient way. DSDM is sometimes referred to as DSDM Atern.
DSDM became the first agile framework to incorporate agile project management aspects. Compared with Scrum which focuses solely on product delivery during an iteration, DSDM also has built-in project management capabililties. DSDM therefore is quite different from other agile frameworks.
DSDM is not only useful on software projects
DSDM can be applied to projects other than software projects. It can also be applied on any product development projects. By delivering a workable product incrementally at the end of each timebox, DSDM can deliver business value early in the product development lifecycle.
DSDM provides agile project management
In the UK, the Agile Business Consortium worked in partnership with APMG International to create Agile Project Management (AgilePM), an agile project management certification scheme with exams. agileKRC offers both classroom training in AgilePM, as well as e-learning solutions. Both training options include the AgilePM exam.
DSDM principles – the building blocks
DSDM based upon principles
Based upon 8 principles and an underlying agile philosophy, DSDM became a popular agile approach amongst software developers seeking an alternative to rapid application development (RAD) approaches in the years after 2000. RAD approaches did not scale well for people collaborating on a team however. DSDM thus became one of the first agile approaches to be used within the software development community.
The 8 DSDM principles underpin the whole framework. Each principle must be adhered to by the project team, as ignoring any of the principles can increase the chance of project failure.
The graphic below was created to help you learn about DSDM. If you like it, please show your appreciation by linking back to this page.
Now, let’s find out more about the DSDM principles and how teams can ensure they stick to them.
The 8 DSDM principles
1. Focus on the business need
DSDM has a strong business-driven approach. A business case must be established for the project and the team must understand project priorities. Every decision the team make during the project should help achieve the project goal and the team must ensure the project is delivered on time.
MoSCoW prioritisation
To adhere to this principle, DSDM teams have several tools at their disposal. For example, the MoSCoW technique helps the team prioritise which of the business requirements Must be, Should be, Could be or Won’t be delivered. Timeboxing helps to separate work into manageable chunks of time, with each chunk having its own deliverables and deadline.
The Foundation phase in DSDM also helps the team build focus. During this phase, team roles are established. The team then form the overall strategy, decide how risk/quality will be assessed, how technology will be used and how the project will be managed.
2. Deliver on time
Fixed time periods
DSDM is an agile framework that works plans work in fixed time periods (timeboxes), rather like sprints in Agile Scrum. The aim is to deliver a useable software product at the end of each timebox (iteration). DSDM is thus an incremental approach, as well as an iterative development approach to delivering software.
DSDM places a strong emphasis on prompt delivery, proposing that even projects without any need for a fixed deadline still benefit from one. This is because having deadlines is the best way to control changing requirements. To stick to this principle, DSDM teams should focus on priorities, hit deadlines and manage their time by using the MoSCoW and timeboxing techniques.
3. Collaborate
Team spirit and collaboration is highly important for DSDM teams. This is based on a rejection of having multiple departments that rarely interact. Teams should instead work as one unit and collaborate to encourage understanding, higher performance and shared ownership.
Business and technical staff work together
DSDM teams fulfil this principle by having business and technical staff together in the team, instead of separately. The team involve stakeholders throughout the project and ensure each team member feels empowered to make decisions. The team use ‘workshops’ to meet stakeholders and involve them in the project.
Ensuring collaboration
The visionary, ambassador and business advisor roles also ensure collaboration. The visionary conveys the sponsor’s needs to the team and ensures the business case objectives are achieved. Ambassadors communicate user’s needs to the development team, whilst business advisors assist with areas such as law or marketing. On a non-agile project, these roles would be performed outside of the project or would not exist at all.
4. Never compromise quality
Quality is always fixed on DSDM projects and must be decided at the start. The final product shouldn’t be any more or any less than the quality decided upon.
Continuous testing
To adhere to this principle, DSDM teams must ensure quality doesn’t become a variable by testing continuously and reviewing constantly. This testing and reviewing occurs during the ‘exploration’ and ‘engineering’ iterative development phases. Testing should happen early in the project. Again, MoSCoW and timeboxing can be used to ensure testing is appropriate and organized.
5. Build incrementally from firm foundations
DSDM differs from other agile methods as it requires the foundations of the project to be agreed early. The foundations don’t need to be in too much detail – just agree on what the problem is and how to solve it. Once foundations are established, the solution must be delivered incrementally.
Just enough design up front
To adhere to this principle, DSDM teams must ensure they perform analysis and ‘enough design up front’ (EDUF) at the start of the project. During each increment, the team must re-assess priorities and project viability, ensuring they have taken stakeholder feedback into consideration. Both the feasibility and foundation phases allow for establishing a foundation; the exploration and engineering phases allow for incremental delivery.
6. Develop iteratively
DSDM proposes that nothing is created perfectly first time and projects operate in a constantly changing world. Incremental delivery allows for such change to be embraced and leads to higher stakeholder satisfaction. Each iteration is combined with testing, demonstrations and feedback. This ensures that each iteration improves upon the last and leads to a decent final product.
Feedback loop
DSDM teams can adhere to this principle by building feedback into each iteration. They must also be in the mindset that details should emerge later, not sooner, and they must embrace change. During each iteration, they should encourage creativity and experimentation, which will lead to learning and improvement. Constant review and feedback allow for change and progress to occur.
To deliver an incremental working release of software at the end of each iteration DSDM recommends the MoSCoW prioritisation technique to prioritise requirements to be worked on by the team during a timebox. Requirements are typically capture in the form of user stories.
7. Communicate continuously and clearly
Bad communication often leads to project failure and traditional non-agile approaches fail to address this. DSDM aims to improve communication by using frequent face-to-face meetings, visual communication (modelling), advance releases of prototypes and workshop sessions.
Daily stand-ups
DSDM teams can fulfil this principle with several methods. One way is to encourage team interaction through daily stand-up meetings. These informal meetings allow the team to meet and discuss issues or ideas together. Facilitated workshops are also an effective way for stakeholders to improve their understanding and discuss requirements.
DSDM teams commonly use modelling and prototyping to further improve communication. These practical methods help replace the need for heavy, useless documentation.
Modelling
Modelling is a visual form of communication utilizing diagrams. This allows for complex systems, designs and products to be better understood.
DSDM makes use of prototyping by creating prototypes of the product early in development, to allow stakeholders to ‘test-drive’ early versions of the solution. The idea is to build something fast, get feedback quickly, and to break it sooner, rather than later. The underlying DSDM philosophy is that if something isn’t going to work, it is better to find that out as soon as possible, and change course sooner, rather than later.
Prototyping
Prototyping means creating prototypes of the product early in development, to allow stakeholders to ‘test-drive’ early versions of the solution.
8. Demonstrate control
It is vital to keep control of the project. DSDM proposes that it is only possible to do this by using a plan aligned to the project aims, with both being accessible to the entire team.
Ensure progress is visible
DSDM teams, especially the project manager and team leader, can fulfil this principle by ensuring plans and progress are visible to everyone. Managing must be proactive with an emphasis on reporting and tracking.
Measure progress by delivery
Also, progress must be measured by looking at what has been delivered, rather than activities completed. Timeboxing helps to control who is doing what and when. DSDM can also be combined with methods such as Kanban, which help teams to visualize project progress and see who is doing what, when and how long it will take them.
Summary
As you might have noticed, the eight DSDM principles embody the principles of the agile manifesto. The focus on iterative delivery, effective communication, collaboration and continuous delivery all align with the agile philosophy. DSDM also has some of its own characteristics – it’s process model and specific team roles – for instance. Yet, many of the other tools and techniques recommended by DSDM – modelling, prototyping and workshops, timeboxing, MoSCoW – are used by other agile methods.
Because DSDM sticks to the original agile philosophy, this makes it an effective method to adopt in any workplace. If these principles strike a chord with you, why not take an Agile PM course?
DSDM® is a Registered Trade Mark of Agile Business Consortium Limited.