Dynamic Systems Development Method
Download
Report
Transcript Dynamic Systems Development Method
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?