Dynamic Systems Development Method (DSDM) explained
Dynamic Systems Development Method (DSDM): This article explains the Dynamic Systems Development Method in a practical way. Next to what this method is, this article also highlights tt’s effectiveness, the priorities and integration with other methods, the principles and some techniques and instruments. Enjoy reading!
What is the Dynamic Systems Development Method?
The Dynamic Systems Development Method (DSDM) is an agile software development framework. DSDM was first released in 1994, when it was mainly used for Rapid Application Development (RAD).
In later versions of DSDM, the framework was revised and a general approach to project management in systems development was devised.
Emergence of software development methods
In the 1990s, Rapid Application Development (RAD) became very popular in a short time. That meant the old green screens disappeared and gave way to the graphical interfaces we know today.
Various tools were also launched to build applications, such as PowerBuilder. This made it easy for developers to share their solutions with customers. Prototyping was born. The drawbacks of the traditional waterfall methods of software development soon became a thing of the past.
RAD also had drawbacks. The main criticism was that it was unstructured. Many companies and developers came up with their own approach and definition of system and software development.
Subsequently, the DSDM Consortium was established in 1994. The aim was to jointly develop and promote an independent framework. A group of suppliers and software development experts was brought together and best practices were exchanged. The result was DSDM Public Version.
In 2016, the DSDM Consortium was renamed Agile Business Consortium. They own and manage the DSDM framework.
What makes Dynamic Systems Development Method effective?
The Dynamic Systems Development Method encompasses a wide range of activities that are carried out throughout the life of a project. The framework has a good foundation and makes effective management possible. That is why it distinguishes itself from other Agile systems development methods, such as the Systems Development Life Cycle (SDLC).
DSDM is an iterative and incremental approach to systems development, meaning close involvement of users and customers in development is possible. The framework is built on the general principles of Agile manufacturing.
Priorities and integration with other methods
The method allows the user to determine the costs, time and quality requirements prior to a system development project. The MoSCoW method is also applied for prioritizing different tasks. These tasks are divided into musts, shoulds and will not haves.
The last versions of DSDM came out in 2014. The updated framework was published in DSDM Agile Project Framework.
The last manual also recognized the importance of integration with other frameworks such as ITIL, PRINCE2 and other project management approaches.
Before the latest version of DSDM came out, only an integration with Extreme Programming (XP) was suggested in the manual.
Principles of the Dynamic Systems Development Method
The Dynamic Systems Development Method as a method recognizes that many projects fail because of human error, more than technological error. The focus is therefore on helping people to work together. There are eight principles underlying the method. These are:
- Focus on the business need
- Deliver on time
- Never compromise quality
- Build incrementally from firm foundations
- Develop iteratively
- Communicate continuously and clearly
- Demonstrate control
Techniques and instruments within DSDM
Below are some techniques that are used within DSDM.
Timeboxing is breaking down a project so that it becomes easy to complete it step by step. Each part has its own budget and delivery time. The requirements are also determined individually for all parts.
MoSCoW is used for prioritizing tasks and requirements. It is an acronym for:
- Must have
- Should have
- Could have
- Won’t have
Prototyping refers to the practice of prototyping systems at an early stage of development. It enables early identification of problems and shortcomings and allows the customer to test the software in advance. This also encourages good user engagement. That is one of the key success factors of the Dynamic Systems Development Method.
Testing ensures good quality products that the customer can use to move forward. DSDM states that testing is desirable and necessary in each iteration. The team is free to use its own chosen test method.
A workshop ensures that all stakeholders of a project are brought together to discuss and determine requirements and functionalities.
Modeling helps visualize a business domain and improve understanding about the system. It provides a schematic representation of aspects of a system.
Deliverables must be managed well because at the end of each timebox, a piece of the system is delivered. These must then be configured and built into a whole.
Lifecycle of system development according to DSDM
There are four main stages identified in the system development life cycle according to the Dynamic Systems Development Method: feasibility, foundation, evolutionary development and deployment. These phases are preceded by a pre-project phase and the life cycle ends with a post-project phase. The total thus consists of six phases.
1. Pre-project phase
The pre-project phase ensures that only the right projects and activities are started and that they are set up in the right way from a clearly defined framework and objective.
2. Feasibility phase
The feasibility phase is intended to determine whether the project is actually feasible from a technical or cost perspective. This phase ends with a decision whether to continue with the project or to stop the project.
3. Foundations phase
The foundations phase is an addition to the feasibility study and takes it to a higher level. The aim is to gain a good understanding of the business reasons for the project and what it provides a solution for. This phase usually lasts no longer than a few weeks.
4. Evolutionary development phase
This phase builds on the foundations of the project laid in the previous steps. The purpose of the phase is to create the final solution.
This phase also applies most methods and techniques to support the work in that phase, including the MoSCoW method, or modelling, timeboxing and prototyping.
5. Deployment phase
The deployment phase aims to put the developed solution into operational use.
6. Post-project phase
The post-project phase involves checking whether all objectives have been achieved. Whether all the benefits of a solution have been achieved will become clear at a later date, since most of the benefits of a system arise with long-term use.
Role division in DSDM
Some formal roles have emerged in the DSDM environment. It is important that all project members are assigned a role before the project begins. Each role has its own tasks and responsibilities.
The first role is for the Business Sponsor. This party is also known as the project champion. The person in this role has the ability and responsibility to deploy the right funds and resources at the right times.
The Business Visionary is the person who has the responsibility to deploy the project by ensuring that critical requirements are identified early on. The visionary has the most accurate perception of the system’s goals and ensures that everything runs smoothly.
The Business Ambassador ensures that the knowledge and experiences of the end user are central to the development process. This person ensures that feedback is obtained on a continuous basis.
The Project Manager is someone from the user community or IT landscape who manages the project in general.
The Technical Coordinator ensures that the design of the system architecture and the monitoring of quality is effectively successful.
Team Leaders lead their team and ensure that all teams work together well.
Workshop Facilitators ensure that the progress of workshops remains positive and that communication and preparation for workshops can take place without hindrance.
In addition, the team has various specialist roles, such as a business process architect, a quality manager, engineers and more.
Now It’s Your Turn
What do you think? Do you recognize the explanation about the Dynamic Systems Development Method (DSDM)? Are software development methods used in your work environment? Do you see similarities with systems development approaches like SDLC? Will these kind of methods become unnecessary in the future thanks to technical tools? Do you have any tips or comments? Or do you want to learn something about a related topic?
Share your experience and knowledge in the comments box below.
- Iivari, J., Hirschheim, R., & Klein, H. K. (2000). A dynamic framework for classifying information systems development methodologies and approaches. Journal of management information systems, 17(3), 179-218.
- Lewis, M. D., Lamey, A. V., & Douglas, L. (1999). A new dynamic systems method for the analysis of early socioemotional development. Developmental Science, 2(4), 457-475.
- Stapleton, J. (1999). DSDM: Dynamic systems development method. In Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No. PR00275) (pp. 406-406). IEEE.
- Stapleton, J. (1997). DSDM, Dynamic systems development method: the method in practice. Cambridge University Press.
How to cite this article:
Janse, B. (2022). Dynamic Systems Development Method (DSDM) explained. Retrieved [insert date] from Toolshero: https://www.toolshero.com/information-technology/dynamic-systems-development-method/
Published on: 10/04/2022 | Last update: 12/13/2022
Add a link to this page on your website:
<a href=”https://www.toolshero.com/information-technology/dynamic-systems-development-method/”>Toolshero: Dynamic Systems Development Method (DSDM) explained</a>
We are sorry that this post was not useful for you!
Let us improve this post!
Tell us how we can improve this post?