DSDM (formerly Dynamic System Development Method) is an agile method created in 1994 that focuses on the entire project lifecycle. It was designed as an alternative to the increasingly popular RAD (Rapid Application Development) with the intention of giving teams more control and discipline.
The key to DSDM’s success lies with the underlying philosophy “that any project must be aligned to clearly defined strategic goals and focus on early delivery of real benefits to the business”. This philosophy and the 8 principles of DSDM help teams maintain focus and achieve defined project goals.
The DSDM agile framework is underpinned by 8 key principles. These are:
Advocates of DSDM believe that a business case must be made for the project before any development can begin. The team must have total, crystal-clear comprehension of the project’s priorities so that each decision helps to achieve the defined goals.
As an agile framework, DSDM works with fixed timeboxes and iterations to create a product. There is a strong emphasis placed on prompt delivery to help control changing requirements.
Collaboration is crucial to the success of DSDM. Teams should work as a singular unit to create quality products with real value baked into every feature.
For agile teams, streamlining processes and avoiding waste is crucial. DSDM follows that same principle but reminds us to never sacrifice quality. To adhere to this principle, DSDM teams must continuously test and review their work.
DSDM differs from other agile methods as it requires the foundations of the project to be established early. The foundations don’t need to have too much detail, just enough to define the problem and how you intend to solve it.
To do this, DSDM teams perform analysis and ‘enough design up front’ (EDUF) at the start of the project.
As with other agile methodologies, teams using the DSDM agile framework will build the product incrementally to ensure maximum value.
At every stage of development, DSDM teams need to be transparent. This is enabled through daily stand-ups, sprint reviews, and prototyping.
DSDM was created to give product managers more control over their projects. PMs can demonstrate control by ensuring that all progress is visible and progress is measured by deliverables.
As agile methodologies, Scrum and DSDM have many overlapping concepts but are quite distinct from each other.
Scrum is better used in a product development context, where the objective is to create a new product with uncertain requirements. DSDM is best suited to a project context where there is a tighter scope and a higher need for governance.
Another key difference between DSDM and scrum are the roles for each framework. Scrum has a specific Product Owner role, whereas DSDM spreads the role across multiple people.