130 likes | 240 Views
A Prototyping Lifecycle. The Waterefall Model and Prototyping. As early as the 1980’s the classic “Waterfall model” of software development was criticised as a “fake” as failing to address the fundamental issue of the software crisis incomplete, inaccurate, changed requirements
E N D
The Waterefall Model and Prototyping • As early as the 1980’s the classic “Waterfall model” of software development was criticised • as a “fake” • as failing to address the fundamental issue of the software crisis • incomplete, inaccurate, changed requirements • for pushing user evaluation to the end of the lifecycle • A “prototyping” RAD lifecycle proposed instead • rejected as “unmanageable” • prototyping restricted to requirements gathering • RAD has re-emerged in the last two years
DSDM2- a RAD Process • The Dynamic Systems Development Method (DSDM2) is a public domain standard specification for a Rapid Application Development (RAD) or evolutionary delivery process • supported by more than 200 companies in the UK • worthy as an example of a modern, industrial strength, lifecycle for prototyping
DSDM Overview • “Three pizzas and a cheese”: the five phases of DSDM are: 1. Feasibility study 2. Business study 3. Functional model iteration 4. System design and build iteration 5. Implementation
DSDM Feasibility Study • An assessment of whether or not DSDM is appropriate to the project. • Has serious impact on user community; worth it in trade-off to deliver in sharp time-scales? • Feasibility study should be short, sharp • Deliverables include Feasibility Report; Outline Development Plan and a fast prototype
DSDM Business Study • Aim is to gain understanding of the business processes of the client organisation • The activity is strongly collaborative • involves facilitated workshops • First deliverable is a Business Area Definition • high-level, prioritised, view of processes to be automated • identifies business processes, user classes, user representatives for development • Other deliverables are System Architecture Definition and Outline Prototyping Plan
DSDM Functional Model Iteration • Shares with the Design and Build Iteration the following cycles of four activities: 1. Identify what you are doing in the cycle 2. Agree how you will go about doing it 3. Do it 4. Check that you did it right • by reviewing documents, demonstrating a prototype or software testing • Delivers Analysis model(s) and major software components
DSDM Functional Iteration (contin.) • Other products include • Prioritised functions • core functions are guaranteed delivery • Functional prototyping review documents • maintains history of user feedback • Non-functional requirements • Risk analysis of future development
DSDM Design and Build Iteration • Product is the Tested System • tests are iterative • tested system will not necessarily deliver ALL requirements, but will deliver the core “minimum usable subset”) • early deliverables are design prototypes and design prototyping review documents.
DSDM Implementation • Covers cutover from development environment to operational environment • Products include • delivered system and documentation • User Manual • trained user population • Project Review Document
Principles of DSDM • Active user involvement is imperative • DSDM teams must be empowered to make decisions • Focus is on frequent delivery of products • Fitness for purpose is the essential criterion for acceptance of deliverables • Iterative and incremental development is necessary to converge on an accurate business solution • All changes during development are reversible
Principles of DSDM (contin.) • Requirements are base-lined at a high level • Testing is integrated throughout the lifecycle • A collaborative and co-operative approach between all stakeholders is essential