Tuesday, January 03, 2006

Dynamic Systems Development Method

The dynamic systems development method (DSDM) provides a framework for an iterative and incremental approach to the development of Information Systems. It is one of a number of Agile methods for developing software and forms part of the Agile Alliance.

DSDM was developed in the United Kingdom in the 1990s and was first released in 1995. At this point in time (April 2005) the fourth version of the DSDM manual is in use. DSDM was developed by a consortium of vendors and experts in the field of IS development, the DSDM Consortium, combining their best-practice experiences. As an extension of rapid application development, DSDM focuses on Information System projects that are characterized by tight timescales and budgets. DSDM addresses the problems that frequently occur in the development of Information Systems with regards to going over time and budget and other common reason for project failure such as lack of user involvement and top management commitment.

Sunday, January 01, 2006

Principles of DSDM

Underlying DSDM are the following key principles. These principles form the cornerstones of development using DSDM.
The main focus of DSDM is on delivering a system that addresses the current business needs. It is not so much directed at delivering a perfect system addressing all possible business needs, but focuses its efforts on those functionalities critical in achieving the stated project/business goals.
No system is built perfectly in the first try. In the process of developing an IS, 80 percent of the solution can be developed in 20 percent of the time needed to develop the complete and perfect solution. Perfecting the IS' last 20 percent often causes the project to go over deadlines and budgets. Because DSDM focuses on delivering exactly that what the business needs, it is most times unnecessary to construct the perfect solution.
Project delivery should be on time, on budget and with good quality. How this is achieved will be addressed in a later section.
The requirements for the IS need to be flexible. As will be addressed later, flexible requirements are important enablers of DSDM.
DSDM only requires each step of the development to be completed far enough for the next step to begin. This way a new iteration of the project can commence without having to wait for the previous to be completed entirely. And with every iteration the system is improved incrementally.
Communication between project stakeholders is an important prerequisite for running an efficient and effective project.
User involvement is key in running an efficient and effective project.
The project teams need to be empowered to make decisions that are important to the progress of the project. Both Project Management and Development techniques are incorporated in DSDM. Next to developing new IS, DSDM can also be used in projects expanding current system or even non IT-related business change projects.