| You
are here: Freetutes.com
> Systems
Analysis and Design
Dynamic System Development Method (DSDM)
Dynamic System Development Method is another approach to system development, which,
as the name suggests, develops the system dynamically. This methodology is independent
of tools, in that it can be used with both structured analysis and design approach
or object-oriented approach.
The Dynamic System Development Method (DSDM) is dynamic as it is a Rapid Application
Development method that uses incremental prototyping. This method is particularly
useful for the systems to be developed in short time span and where the requirements
cannot be frozen at the start of the application building. Whatever requirements
are known at a time, design for them is prepared and design is developed and incorporated
into system. In Dynamic System Development Method (DSDM), analysis, design and
development phase can overlap. Like at one time some people will be working on
some new requirements while some will be developing something for the system.
In Dynamic System Development Method (DSDM), requirements evolve with time.
Dynamic System Development Method (DSDM) has a five-phase life cycle as given
the following figure

Feasibility study
In this phase the problem is defined and the technical feasibility of the desired
application is verified. Apart from these routine tasks, it is also checked whether
the application is suitable for Rapid Application Development (RAD) approach or
not. Only if the RAD is found as a justified approach for the desired system,
the development continues.
Business study
In this phase the overall business study of the desired system is done. The
business requirements are specified at a high level and the information requirements
out of the system are identified. Once this is done, the basic architectural framework
of the desired system is prepared.
The systems designed using Rapid Application Development (RAD) should be highly
maintainable, as they are based on the incremental development process. The maintainability
level of the system is also identified here so as to set the standards for quality
control activities throughout the development process.
Functional Model Iteration
This is one of the two iterative phases of the life cycle. The main focus in
this phase is on building the prototype iteratively and getting it reviewed from
the users to bring out the requirements of the desired system. The prototype is
improved through demonstration to the user, taking the feedback and incorporating
the changes. This cycle is repeated generally twice or thrice until a part of
functional model is agreed upon. The end product of this phase is a functional
model consisting of analysis model and some software components containing the
major functionality
Design and Build Iteration
This phase stresses upon ensuring that the prototypes are satisfactorily and
properly engineered to suit their operational environment. The software components
designed during the functional modeling are further refined till they achieve
a satisfactory standard. The product of this phase is a tested system ready for
implementation.
There is no clear line between these two phases and there may be cases where
while some component has flown from the functional modeling to the design and
build modeling while the other component has not yet been started. The two phases,
as a result, may simultaneously continue.
Implementation
Implementation is the last and final development stage in this methodology.
In this phase the users are trained and the system is actually put into the operational
environment. At the end of this phase, there are four possibilities, as depicted
by figure :
-
Everything was delivered as per the user demand, so no further development
required.
-
A new functional area was discovered, so return to business study phase and
repeat the whole process
-
A less essential part of the project was missed out due to time constraint
and so development returns to the functional model iteration.
-
Some non-functional requirement was not satisfied, so development returns to
the design and build iterations phase.
Dynamic System Development Method (DSDM) assumes that all previous steps may
be revisited as part of its iterative approach. Therefore, the current step need
be completed only enough to move to the next step, since it can be finished in
a later iteration. This premise is that the business requirements will probably
change anyway as understanding increases, so any further work would have been
wasted.
According to this approach, the time is taken as a constraint i.e. the time
is fixed, resources are fixed while the requirements are allowed to change. This
does not follow the fundamental assumption of making a perfect system the first
time, but provides a usable and useful 80% of the desired system in 20% of the
total development time. This approach has proved to be very useful under time
constraints and varying requirements.
DSDM Model Limitations
- It is a relatively new model. It is not very common. So it is difficult to
understand.
DSDM Model Advantages
-
Active user participation throughout the life of the project and iterative
nature of development improves quality of the product.
-
DSDM ensures rapid deliveries.
-
Both of the above factors result in reduced project costs
Other Software/System Development Life Cycles
<<
Previous Page | Contents
| Next Page (Chapter
3 - Preliminary Analysis)
>>
|