DSDM vs. Scrum
Introduction
Agile software development methods have been steadily gaining in popularity since 2001. There are many different frameworks available within the agile umbrella. Most people trace the roots of agile back to 2001 when 17 people got together at a ski resort in Snowbird, UT and created the Agile Manifesto (Agile Alliance, 2019). Before that meeting there were already experts developing software in the mid-nineties that were mixing old and new ideas to come up with better methodologies for their teams to build software. These experts began to share their methodologies with others by creating frameworks such as DSDM and Scrum. This article will compare those two frameworks.
DSDM
DSDM used to stand for Dynamic Systems Development Method but the widespread adoption outside of IT lead to the dropping of the acronym (agileKRC, 2019). DSDM does not stand for anything although some have espoused the tagline of “Driving Strategy, Delivering More”. There are eight essential principles of any DSDM implementation that are key to the framework’s philosophy. Those principles are: focus on the business need, deliver on time, collaborate, never compromise quality, build incrementally from firm foundations, develop iteratively, communicate clearly and continuously, and demonstrate control. Common problems such as late delivery, cost overruns, or deliverables not meeting the expectations are addressed with DSDM by creating a flexible environment that still focuses on hitting deadlines and maintaining high quality. It uses an iterative and incremental lifecycle to involve stakeholders. Clear roles and responsibilities are given in the project and project teams work in timeboxes to ensure adherence to schedules. DSDM balances the amount of upfront design so that risk is reduced but there is still enough flexibility for the inevitable change that occurs. Figure 1 below shows a comparison of DSDM and traditional project management.
Figure 1. – Comparison of Traditional and DSDM (By the author)
Core Techniques of DSDM
DSDM uses 7 phased steps that are organized in a set of roles and responsibilities (Powell-Morse, 2017). The steps are:
- Pre-project
- Feasibility study
- Business study
- Functional model iteration
- Design and build iteration
- Implementation
- Post-project
These phases are supported by several core techniques:
- Timeboxing – A technique using intervals no longer than 2, 4, or 6 weeks, during which a given set of tasks are completed. A timebox can contain several tasks and at the end a product needs to be delivered. Tasks can also be changed during a timebox allowing for rapid response to business needs.
- MoSCoW Rules – MoSCoW rules weigh the importance of requirements by categorizing them as must have, should have, could have, and want to have. These categories are then used to prioritize tasks.
- Prototyping – This satisfies DSDM principles of frequent delivery and incremental development by implementing critical functionality first and discovering difficulties early in the development process.
- Testing – DSMS advocates testing through each iteration to ensure quality.
- Modeling – Diagrams of specific system or business components help visualize and improve understanding.
Scrum
Scrum is a framework within Agile that helps teams work together. It encourages teams to learn through experiences, self-organize, and continuously improve through reflection on their successes and failures (James, 2015). Scrum is informative and instructional. It adjusts to fluctuating factors and promotes continuous learning. Scrum is structured in a way to acknowledge that teams don’t know everything at the beginning of a project. Teams adapt to changes in conditions and user requirements. There are short release cycles to allow teams to learn and improve. Scrum is a structured framework, but it is not rigid. It can be adapted to fit the needs of any organization. Figure 2 below shows the Scrum cycle.
Figure 2. – Scrum Cycle (By the author)
Core Techniques of Scrum
At the core of Scrum are Scrum values, the Scrum framework, Scrum roles, and Scrum activities and artifacts. The Scrum values are focus, courage, openness, commitment, and respect. These values serve as the foundation for the Scrum team’s processes and interactions (Drumond, 2019). The Scrum framework guides a team through the creation of a product and focuses on value and high visibility of progress. A key benefit of the Scrum framework is that it is consistent across all products. It does not have to be modified depending on what product is being developed. Scrum cycles consist of Scrum roles, activities, and artifacts working together. A Scrum team is made up of three roles:
- Product Owner – The product owner holds the vision of the product.
- ScrumMaster – Guides the team through the Scrum framework to build the product.
- Development Team – The development team builds the product.
Scrum includes five activities which can be defined as meetings. These activities are product backlog refinement, sprint planning, daily Scrum, sprint review, and the sprint retrospective. These activities are used to produce tangible deliverables which are referred to as artifacts. The Scrum framework includes three tangible artifacts including a shippable subset of a product called a product increment, a prioritized list of ideas related to the product called a product backlog, and a sprint backlog which is a detailed plan for the development of the product within the next sprint. A Scrum cycle repeats for every sprint. A cycle can be defined as follows:
- Product owner, development team and ScrumMaster collaborate on product increments during a timeboxed sprint interval.
- The product increment is approved by the product owner once acceptance criteria is met and they have reached the team’s shared definition of done.
- The Scrum Team works from the product backlog.
- Sprint planning meeting produces a sprint backlog which is used to plan for the next sprint.
- Daily Scrum meetings are used to coordinate as the team self-organizes to execute the work.
- The product backlog is refined in preparation of the next sprint planning meeting.
- Sprint is concluded with a sprint review and sprint retrospective to review the product and process.
Conclusion
Agile is a mindset based on the Agile Manifesto, the four values, and the twelve principles (Agile Alliance, 2019). DSMD and Scrum are frameworks within the Agile umbrella. All project management methodologies have pros and cons. Both DSDM and Scrum can be adapted to fit the needs of any business. Organizations need to choose a methodology that leadership will support and that aligns with their long-term goals. Whether it is DSDM, Scrum or another framework within the Agile umbrella, adhering to the principles is key to success.
References
Agile Alliance. (2019). What is Agile Software Development?. Retrieved from https://www.agilealliance.org/agile101/
agileKRC. (2019). What is DSDM and the 8 principles. Retrieved from https://agilekrc.com/resource/168/what-dsdm-and-8-principles
Drumond, C. (2019). Scrum - what it is, how it works, and why it's awesome. Retrieved from https://www.atlassian.com/agile/scrum
James, M. (2015). An Empirical Framework For Learning (Not a Methodology). Retrieved from https://scrummethodology.com/
Powell-Morse, A. (2017). Dynamic Systems Development Method: How it Led to Agile Project Management. Retrieved from https://airbrake.io/blog/software-development/dynamic-systems-development-method-agile
Senior Project Manager at UCL Consultants Ltd
3 年So, what's the result of the comparison between DSDM and Scrum?
Founder & CMO | B2B Marketing Expertise | Digital Marketing | ASO
4 年Scrum is known to be an agile framework that enables us to put all our efforts into delivering the business value in an appropriate manner and in as little time as possible. ?But all differences aside, one thing every learner must remember is that both these approaches/frameworks work on the same principle that helps different teams to abide by agile principles and get projects done. For CSM Certification Study resources: https://www.takethiscourse.net/psm-exam/
Assistant Controller at CIANBRO
5 年Great article, Jason! It's important to note how important communication is in both SCRUM and DSDM- not only with the client, but also within the project team. If it fits the project, either of these Agile methodologies sound like a great option.
Manager Clinical Apps & Technology
5 年Great article and breakdown of SCRUM and DSDM.? Communication is key in SCRUM and daily meetings help keep staff on task, and ensure accountability.? The fact that you can incorporate the experience you have gained and your learning into the next cycle helps maximize the ultimate value of the project.?