Agile

DSDM Agile Methodology

What is DSDM Agile Methodology?
DSDM Agile Methodology (Dynamic Systems Development Method) emphasizes iterative development and user involvement. It provides a structured approach for delivering high-quality projects on time and within budget.

The Dynamic Systems Development Method (DSDM) is an agile project delivery framework that is primarily used as a software development method. First released in 1994, DSDM originally sought to provide discipline to the rapid application development (RAD) method. In 2007, DSDM became a generic approach to project management and solution delivery. DSDM is rooted in the software development community, but the method is universal and can be applied easily beyond just IT.

The DSDM Agile Project Framework is an iterative and incremental approach that embraces principles of Agile development, including continuous user/customer involvement. DSDM fixes cost, quality and time at the outset and uses the MoSCoW prioritisation of scope into Musts, Shoulds, Coulds and Won't haves to adjust the project deliverable to meet the stated time constraint. DSDM is one of a number of Agile methods for developing software and non-IT solutions, and it forms a part of the Agile Alliance.

Key Principles of DSDM

The DSDM Agile Project Framework is based on nine key principles that primarily revolve around business needs/value, active user involvement, empowered teams, frequent delivery, integrated testing, and stakeholder collaboration. These principles form the foundations of the method and are defined by the DSDM consortium as being integral to the successful application of DSDM.

These principles are that: focus should be on the business need; deliverables should be fit for purpose; iterative and incremental development is necessary to converge on an accurate business solution; a collaborative and cooperative approach between all stakeholders is essential; any changes to the project should be reversible; requirements are baselined at a high level; testing is integrated throughout the project lifecycle; a clear and continuous business justification is necessary; and finally, the project team has the freedom to decide how best to achieve the project goals within the project framework.

Focus on the Business Need

Every decision taken during a project should be justified in terms of the business benefit that it provides. This principle ensures that the focus of the project remains on the business need throughout the project's duration. The business case, which justifies the project, should be agreed and confirmed by the stakeholders and reviewed throughout the project.

By focusing on the business need, the DSDM approach ensures that the project does not lose sight of the business objectives and that every task undertaken brings the project closer to these objectives. This principle is fundamental to the DSDM approach and underpins the other eight principles.

Deliver on Time

Time is a critical factor in the DSDM approach. DSDM projects always have a fixed deadline, and the other project variables are adjusted to meet this deadline. This ensures that the project does not suffer from scope creep and that the project's focus remains on the most important features, as defined by the business need.

By delivering on time, the DSDM approach ensures that the business is able to plan effectively for the delivery of the project, and that the project's benefits are realised as soon as possible. This principle is closely related to the focus on the business need, as it ensures that the project delivers value to the business at the earliest opportunity.

Roles and Responsibilities in DSDM

DSDM recognises that individuals are likely to have different skills and knowledge, and that different roles will be required to deliver a successful project. DSDM defines a set of roles and responsibilities that should be filled to ensure that the project has the necessary skills and experience to deliver the project's objectives.

These roles are divided into three categories: executive roles, project-level roles, and solution development roles. Each role has a defined set of responsibilities, and it is important that these responsibilities are understood and agreed by the individuals filling these roles.

Executive Roles

The executive roles in DSDM are primarily concerned with the strategic aspects of the project. These roles include the Business Sponsor, who owns the business case for the project, and the Business Visionary, who has a clear vision of the desired outcome for the project. The executive roles also include the Technical Coordinator, who ensures that the technical aspects of the project align with the business needs.

These roles are critical to the success of the project, as they ensure that the project remains aligned with the business objectives and that the technical solution is appropriate for the business need. The individuals filling these roles should have the necessary authority to make decisions on behalf of the business and should be actively involved in the project throughout its duration.

Project-Level Roles

The project-level roles in DSDM are primarily concerned with the day-to-day management of the project. These roles include the Project Manager, who is responsible for the overall management of the project, and the Team Leader, who is responsible for managing the solution development team. The project-level roles also include the Business Analyst, who is responsible for analysing the business needs and defining the business requirements.

These roles are critical to the success of the project, as they ensure that the project is delivered on time and to the required quality. The individuals filling these roles should have the necessary skills and experience to manage the project effectively and should be actively involved in the project throughout its duration.

Phases and Activities in DSDM

DSDM divides the project into five phases: Feasibility, Foundations, Exploration, Engineering, and Deployment. Each phase has a specific purpose and output, and each phase is intended to be iterative, allowing for flexibility and adaptation as the project progresses.

The Feasibility phase is used to determine whether the project is viable from a business perspective. The Foundations phase is used to establish a solid base for the project, including the definition of the business requirements and the agreement of the project plan. The Exploration phase is used to develop the solution, and the Engineering phase is used to build, test, and review the solution. The Deployment phase is used to deliver the solution to the business.

Feasibility Phase

The Feasibility phase is the first phase of a DSDM project. This phase is used to determine whether the project is viable from a business perspective and whether the proposed solution is technically feasible. The output of this phase is a Feasibility Report, which provides a high-level view of the proposed solution and an assessment of its feasibility.

The Feasibility phase is also used to identify any potential risks associated with the project and to determine whether these risks can be managed effectively. This phase is critical to the success of the project, as it ensures that the project is based on a solid business case and that the proposed solution is technically feasible.

Foundations Phase

The Foundations phase is the second phase of a DSDM project. This phase is used to establish a solid base for the project, including the definition of the business requirements, the agreement of the project plan, and the establishment of the project team. The output of this phase is a Foundations Report, which provides a detailed view of the project's objectives, scope, and plan.

The Foundations phase is also used to identify any potential risks associated with the project and to determine whether these risks can be managed effectively. This phase is critical to the success of the project, as it ensures that the project is based on a solid business case and that the project plan is realistic and achievable.

Benefits of Using DSDM

DSDM provides a number of benefits for organisations that choose to use it as their project delivery framework. These benefits primarily revolve around the principles of Agile development, including continuous user/customer involvement, frequent delivery, integrated testing, and stakeholder collaboration.

By involving the user/customer throughout the project, DSDM ensures that the solution meets the business needs and that the user/customer is satisfied with the solution. By delivering frequently, DSDM ensures that the business is able to realise the benefits of the project as soon as possible. By integrating testing throughout the project, DSDM ensures that the solution is of high quality and that any issues are identified and resolved quickly. By encouraging stakeholder collaboration, DSDM ensures that the project is aligned with the business objectives and that all stakeholders are engaged and committed to the project's success.

Increased User Satisfaction

One of the key benefits of using DSDM is the increased user satisfaction that it can deliver. By involving the user/customer throughout the project, DSDM ensures that the solution meets the business needs and that the user/customer is satisfied with the solution. This can lead to increased user satisfaction, as the user/customer feels that their needs have been met and that they have been involved in the development of the solution.

This increased user satisfaction can also lead to increased business benefits, as satisfied users are more likely to use the solution effectively and to recommend it to others. This can lead to increased usage of the solution, increased productivity, and increased business benefits.

Improved Quality

Another key benefit of using DSDM is the improved quality that it can deliver. By integrating testing throughout the project, DSDM ensures that the solution is of high quality and that any issues are identified and resolved quickly. This can lead to improved quality, as the solution is tested and reviewed throughout its development and any issues are resolved before the solution is delivered to the business.

This improved quality can also lead to increased business benefits, as a high-quality solution is more likely to be used effectively and to deliver the expected benefits. This can lead to increased usage of the solution, increased productivity, and increased business benefits.

Challenges and Limitations of DSDM

While DSDM provides a number of benefits, it also has some challenges and limitations that need to be considered. These primarily revolve around the need for a cultural shift towards Agile development, the need for active user/customer involvement, and the need for a flexible approach to project management.

The cultural shift towards Agile development can be challenging for organisations that are used to more traditional, waterfall-based approaches to project management. This can require a significant change in mindset and working practices, and can take time to implement effectively. The need for active user/customer involvement can also be challenging, as it requires the user/customer to be available and engaged throughout the project. This can be difficult to achieve in practice, particularly in larger organisations where the user/customer may have other responsibilities. The need for a flexible approach to project management can also be challenging, as it requires the project team to be able to adapt and respond to changes quickly and effectively. This can require a high level of skill and experience, and can be difficult to achieve in practice.

Need for a Cultural Shift

The cultural shift towards Agile development can be one of the most challenging aspects of implementing DSDM. This requires a significant change in mindset and working practices, and can take time to implement effectively. Organisations that are used to more traditional, waterfall-based approaches to project management may find this shift challenging, as it requires a different approach to planning, execution, and control.

However, this cultural shift can also be one of the most beneficial aspects of implementing DSDM. By embracing the principles of Agile development, organisations can become more flexible, responsive, and customer-focused. This can lead to increased business benefits, as the organisation is able to deliver solutions that meet the business needs more effectively and efficiently.

Need for Active User/Customer Involvement

The need for active user/customer involvement can also be a challenging aspect of implementing DSDM. This requires the user/customer to be available and engaged throughout the project, which can be difficult to achieve in practice. In larger organisations, the user/customer may have other responsibilities and may not be able to dedicate the necessary time to the project.

However, this active user/customer involvement can also be one of the most beneficial aspects of implementing DSDM. By involving the user/customer throughout the project, DSDM ensures that the solution meets the business needs and that the user/customer is satisfied with the solution. This can lead to increased user satisfaction, increased usage of the solution, and increased business benefits.

Conclusion

The DSDM Agile Project Framework is a robust and flexible approach to project management and solution delivery. By embracing the principles of Agile development, DSDM can deliver a number of benefits, including increased user satisfaction, improved quality, and increased business benefits. However, implementing DSDM can also be challenging, and requires a cultural shift towards Agile development, active user/customer involvement, and a flexible approach to project management.

Despite these challenges, the benefits of DSDM can far outweigh the challenges, making it a valuable approach for any organisation looking to improve their project delivery and solution development practices. By understanding the principles, roles, phases, benefits, and challenges of DSDM, organisations can make an informed decision about whether this approach is right for them, and can take the necessary steps to implement it effectively.