What is DSDM? - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

What is DSDM?

Description:

What is DSDM? And why use it in Analysis and Design teaching? – PowerPoint PPT presentation

Number of Views:170
Avg rating:3.0/5.0
Slides: 24
Provided by: tempusjep3
Category:

less

Transcript and Presenter's Notes

Title: What is DSDM?


1
What is DSDM?
  • And why use it in Analysis and Design teaching?

2
What is DSDM?
  • Dynamic Systems Development Method
  • A framework of controls for the development of IT
    Systems to tight time scales
  • A repository for system development best practice
  • A public domain method for Rapid Application
    Development (RAD)

3
What is RAD?
  • Random Application Development
  • Really Awful Development
  • (A license to hack)
  • OR
  • Responsive Application Development
  • Really Agile Development
  • Rapid Application Development

4
History of DSDM
  • The DSDM Consortium was born in 1994 with 16
    members
  • Its objective was to produce and promote a de
    facto, non-proprietary RAD method
  • Version 1 - Feb 1995
  • Version 2 - late 1995
  • Version 3 - 1997
  • Version 4 - late 2001
  • Version 4.2 early 2003 includes XP

5
SAMPLE OF DSDM CONSORTIUM MEMBERS
  • British Airways
  • BT
  • Camelot Group plc
  • Eurotunnel
  • Her Majestys Customs and Excise
  • Hewlett Packard
  • IBM UK
  • John Lewis plc
  • Lloyds Bank
  • Marconi Plc
  • Orange PCS
  • Royal Bank of Scotland
  • Shell UK Exploration and Production
  • Sussex Police
  • The Wellcome Trust
  • University of Brighton

6
Why use DSDM?
  • Its based on the 80/20 principle
  • It assumes requirements change as understanding
    increases
  • Its an iterative, incremental development
    approach
  • It concentrates on business needs, not
    development activities
  • Provides the necessary framework and rigour for
    RAD (ISO 9001)

7
DSDM v Waterfall
Functionality
Time Resources
Fixed
Waterfall

DSDM
Flexible
Functionality
Time Resources
8
Contents of DSDM (1)
  • Based on 9 underlying principles
    http//www.dsdm.org/en/about/principles.asp
  • Suitability filter
  • Team Structures
  • Role definitions (skills and responsibilities)
  • Effective user involvement
  • Project Planning and Control
  • Product descriptions
  • Estimating and Measurement

9
Contents of DSDM (2)
  • Development Process
  • Configuration Management
  • Risk Assessment
  • Quality and Testing
  • Software Procurement
  • ADVICE ON EVERYTHING YOU NEED FOR SYSTEM
    DEVELOPMENT ?

10
When is DSDM appropriate?
  • An interactive system
  • functionality clearly demonstrable at user
    interface
  • A clearly defined user group
  • users are actively involved in the development
    process
  • Computational complexity can be decomposed
  • For large systems that can be split into smaller
    components
  • Time is constrained
  • Requirements can be prioritised
  • Requirements are unclear and may change
    frequently

11
When is DSDM not appropriate?
  • Real time systems
  • Safety Critical Systems
  • Computationally complex systems
  • Systems where requirements must be fully
    specified before construction.

12
The DSDM Framework
Feasibility Business Study
Agree Plan
Implement
Identify
Functional Model
Create
Train Users
Implementation
Review
Protype
Business
Protype
Review Prototype
User approval
Identify Prototypes
Agree
Design and Build
Review
Plan
Create Prototype
13
The Framework
  • The development cycle is based on iteration and
    increment
  • Each phase/iteration has a prescribed set of
  • Objectives
  • Roles
  • Preconditions
  • Products

14
Key Techniques
  • Facilitated Workshops
  • Requirements Prioritisation
  • MoSCoW
  • Timeboxing
  • Modelling
  • Prototyping

15
Feasibility Study - Non-iterative
  • Is DSDM the best approach?
  • Use of Suitability Filter
  • Can the proposed development meet general
    business requirements?
  • Outline of technical options
  • Estimates of time and effort
  • Short duration a few weeks

16
Business Study - Non iterative
  • Basis for all future work
  • Scope and prioritise business requirements
  • Prioritised Requirements List
  • Scope non functional requirements
  • e.g. maintainability requirements
  • Outline development plan
  • Identify users
  • Reassess risks
  • Outline System Architecture

17
Functional Model - Iterative
  • Static and dynamic model of functionality
  • Models and prototypes
  • Document non functional requirements
  • Performance
  • Recovery and fall back
  • Security
  • Etc.

18
Design and Build - Iterative
  • Refine Functional model to meet non functional
    requirements
  • Engineer application so it demonstrably satisfies
    user requirements
  • Produces a tested system that satisfies user
    requirements

19
Implementation - Iterative
  • Moves the tested system into the work environment
  • User guidelines
  • User training

20
DSDM Summary
  • a complete framework for System Development
  • iterative incremental life cycle
  • business/user driven projects
  • small teams to aid communication
  • fixed project duration
  • flexible requirements and prioritising
  • not specific to any particular tools/techniques

21
The Prioritised Requirements List
  • A product of the Business Study phase
  • Defines what the proposed solution must do and
    how well it must do it
  • Uses the MoSCoW rules for prioritising
  • Is used to determine
  • The products needed for project success
  • The order of increments
  • The deliverables of the timeboxes

22
MoSCoW Rules
  • Must have
  • Should have
  • Could have
  • Would like to have (but Wont)

23
Structure of a Requirement
  • Business Requirement X (Must)
  • Function/Feature X.1 (Should)
  • Quality Criterion X.1.a (Must)
  • Quality Criterion X.1.b (Should)
  • Quality Criterion X.1.c (Could)
  • Function/Feature X.2 (Must)
  • Quality Criterion X.2.a (Must)
  • Quality Criterion X.2.b (Should)
  • Quality Criterion X.2.c (Would like)

24
How is DSDM evolving?
  • e-DSDM
  • An extension to the method for e-business system
    development (version 2 recently released)
  • An Agile method
  • Signatories to the Agile Manifesto
  • www.agilealliance.com
  • DSDM and eXtreme Programming
  • White papers and now in v4.2
  • Programme change management
  • Advanced Dynamic Programme Management in
    conjunction with the NCC

25
Using DSDM to teach A D
  • Advantages
  • It provides coverage of the whole life cycle
  • It introduces techniques such as
  • Iterative, incremental development
  • Prototyping
  • Requirements prioritisation
  • It recommends, not prescribes, modelling
    techniques to use
  • E.g. UML
  • Other AD methods can be fitted into the
    framework
  • E.g. OO, traditional and Agile methods

26
Using DSDM to teach A D
  • Disadvantages
  • RAD invites students to hack code!
  • It is also a Project Management method
  • Uncertain what the long term future of DSDM will
    be
  • Not suitable for
  • Systems where requirements must be fully
    specified before construction
  • Computationally complex systems
Write a Comment
User Comments (0)
About PowerShow.com