You are on page 1of 32

Justin.

Bowers

DYNAMIC SYSTEMS
DEVELOPMENT METHOD
Overview

 What is DSDM?
 History and Background
 Principles
 Project Life Cycle
 Techniques and Roles
 When to use
 Summary
 References
What is DSDM?

 Dynamic Software Development Method


 A RAD approach to software development
 Iterative and Incremental
 Eliminate problems of:
 Going over-budget
 Missing deadlines
 Users not involved
 Management not commited
History

 1990s - Rapid Application Development


 "Meet the needs of a fast business"
 January 1994 - 16 founding members of
DSDM Consortium
 January 1995 - Version 1 completed.
 May 2003 - Current version is 4.2
Organization

 United Kingdom based


 Non-profit, vendor-independent
 Board of 11 directors, 10 elected
 Academic membership costs about $860 US
 http://dev.dsdm.org/membership/list.asp
Accredited Training

 Accredited Training Organizations


 Offer courses to become a practitioner
 About 655 US Dollars for the basic training
 1 hour test, 60 questions
Accredited Training
9 Principles
 1. Active user involvement
 2. Teams must be empowered to make their own decisions.
 3. Frequent releases more important than maximizing
quality.
 4. Primary criteria for deliverables is meeting business needs.
 5. Iterative development is essential to reach correct solution.
 6. Any change during development can be reversed.
 7. The most high level requirements should be unchangeable.
 8. Testing shall occur throughout the lifecycle of the project.
 9. All stakeholders must cooperate and communicate.
Attaining Success

 Management
 Must accept the philosophy
 Empower project team to make decisions
 OR participate regularly with development
 End users
 Must be willing to test and judge functional
prototypes
Phases

 Pre-Project
 Project Lifecycle
 Post-Project
Pre-Project

 This is not a planning stage


 Identify a project
 Have funding
 Have commitment
Process Overview

 Feasibility Study
 Business Study
 Functional Model Iteration
 Design and Build Iteration
 Implementation
Process Lifecycle
Feasibility Study

 Investigate scope of an approved project


 Kick-off workshop to ensure stakeholders buy
in to the project. [1]
 Questions:
 Can this project meet the required business
needs?
 Is this project suited for the use of DSDM?
 What are the most important risks?
Feasibility Study

 Produces:
 Feasibility Report
 Feasibility Prototype (optional proof-of-concept)
 Outline Plan, a schedule of major milestones
 Risk Log
Business Study

 Refine the plans of the feasibility study


 Produces:
 Business Area Definition
 Prioritized requirements list
 Development plan
 Updated risk log
 Leave non-functional requirements for later
Functional Model Iteration

 Utilize requirements to begin designs


 Four sub-stages
 Identify functional prototype
 Schedule development
 Create functional prototype
 Review prototype
 Begin user involvement; show prototypes
 Begin testing models
Functional Model Iteration

 Produces:
 Functional model
 Functional prototype

 May combine this phase with Build phase if


 Working on a small project
 Technology exists to generate code from models
Design and Build

 Integrate components of previous phase


 Four sub-stages
 Identify design prototype
 Schedule development
 Create design prototype
 Review design prototype
Design and Build

 Produces:
 Fully designed prototype
 User Documentation
 Testing continues
Implementation

 System is delivered to end user


 Four sub-stages
 User approval
 Train users
 Implement system on-site
 Review system
Implementation

 Review is critical
 May return to modeling phase
 Eventually delivers final system
Post-Project

 Team has disbanded


 Maintenance, Support, Review
 Continuing nature of DSDM on a smaller
scope
Techniques of DSDM

 Prototyping
 Testing
 Modeling
 Configuration Management
 Workshops
 MoSCoW
 Timeboxing
MoSCoW

 Must have
 Should have
 Could have
 Would have
Timeboxing

 Split the project up


 Fixed budgets and delivery dates
 Allows omission of least important
requirements
 Pareto principle
Roles

 Executive Sponsor
 Visionary
 Ambassador User
 Project Manager
 Technical Co-ordinater
 Team Leader
 Developer
 Tester
 Scribe (documentation)
 Facilitator (workshop communication)
Role Details

 Executive Sponsor
 Commits funding
 Final say in decision making
 Visionary
 Greatest knowledge and view
 Supervising project direction
 Ambassador User
 User experience and knowledge
When to Use

 Inappropriate projects
 real time
 safety critical
 have well defined requirements
 have no fixed end date
 re-usable components
 Appropriate projects
 prioritisable requirements
 fixed end date
 cleared defined users
 can be broken down
Summary

 Eliminate time and budget as variables


 Prioritized requirements
 Incremental process
 User involvement
 Testing, prototyping
References
 [1] DSDM Public Version 4.2 Manual. (n.d.). DSDM Consortium -
Enabling Business Agility. Retrieved March 24, 2010, from
http://www.dsdm.org/version4/2/public/default.asp

 [2] What Is DSDM? - CodeProject. (n.d.). Your Development Resource -


CodeProject. Retrieved March 24, 2010, from
http://www.codeproject.com/KB/

 [3] Davies, R. (2004, September 21). DSDN Explained. Agile eXperience.


Retrieved March 24, 2010, from
www.agilexp.com/presentations/DSDMexplained.pdf

 [4] Dynamic Systems Development Method - Wikipedia, the free


encyclopedia. (n.d.). Wikipedia, the free encyclopedia. Retrieved March
29, 2010, from
http://en.wikipedia.org/wiki/Dynamic_Systems_Development_Method
Questions?

You might also like