2. Values and Principles
The DSDM framework can be implemented for agile and traditional development
processes. To show how DSDM relates to the agile methodology it’s essential to
understand how DSDM principles relate to agile development process values. The
following chapter introduces the DSDM principles and matches them to key agile
concepts afterwards. In the last two sections a brief analysis of the DSDM philosophy
will conclude with a reflection on whether DSDM introduces any new concepts.
2.1 The 9 Principles
The following nine principles are essential to any DSDM implementation, ignoring
one of them will break with the frameworks philosophy and significantly increase
project risks. This is in sharp contrast to the DSDM project structure, where some of
the steps may be disregarded or modified to fit a concrete project layout.
2.1.1 Active user Involvement is Imperative
The first principle is considered the most important, because user involvement
through out the project effectively reduces errors in terms of user perception, and
therefore reduces error costs. Instead of working with a large set of users a DSDM
project guidelines recommend working with a small, select set of users continually,
rather then in periodic workshops or review sessions. Continuity is required by
several other DSDM principles as well, highlighting this single project attribute even
more.
2.1.2 Teams Must be Empowered to Make Decisions
To proceed as quickly as possible transaction costs, as resulting from friction in
communications of project participants and managers, need to be avoided. Requesting
authorization of even modest resources, or simple requirement changes will slow
down a project significantly. Addressing these inefficiencies users and other DSDM
participants should be given limited authority to make decisions related to:
· Requirements in practice
· Which functionality needs to be in a given increment
· Prioritization of requirements and features
· Fine details of the technical solution
2.1.3 Focus on Frequent Delivery
Frequent deliveries of results ensure that errors are detected quickly, are easily
reversed and closer at the source of the error. This applies both to program code as
well as to documents like requirements or data models.
2.1.4 Fitness for Business is Criterion for Accepted Deliverables
As the name of the DSDM framework suggest, its primary endeavor is to deliver
software which is good enough to solve the business need and bother with any