Upload
ruby-small
View
22
Download
0
Embed Size (px)
DESCRIPTION
CMSC 345. Prototyping. Prototyping the Requirements. Investigate requirements Customer uncertainty Are requirements realistic Risk Reduction Reduces number of problems with requirements and overall development cost. Benefits of Prototyping. - PowerPoint PPT Presentation
Citation preview
CMSC 345
Prototyping
Prototyping the Requirements Investigate requirements
Customer uncertainty Are requirements realistic
Risk Reduction Reduces number of problems with
requirements and overall development cost
Benefits of Prototyping Identify misunderstandings between
developers and users Detect missing user services Identify and refine hard-to-use or confusing
user services Identify incomplete or inconsistent
requirements A working (but incomplete) system is quickly
available to demo feasibility and usefulness Basis for specification for production quality
system
Approaches to Prototyping Evolutionary Prototyping
Give the user an incomplete system, then modify and augment as the requirements become clear
Throw-Away Prototyping Help with requirements analysis and
validation then discarded
Evolutionary Prototyping Objective: to deliver a working system
to the end-users Starts with limited understanding of
requirements System is changed and augmented as
new requirements are discovered Incorporate well understood
requirements, then move on to those which are unclear
May never be a system specification
Problems withEvolutionary Prototyping SW Management set up to deal
with regular deliverables to asses progress. Prototypes evolve quickly. No docs.
Continual change corrupts the structure of the prototype, making maintenance difficult and costly
Requires small teams of highly skilled and motivated individuals
Throw-Away Prototyping Objective: Validate or derive the
system requirements Priority is to understand
requirements that are unclear Extends requirements analysis
with intention of reducing life cycle costs
Problems withThrow-Away Prototyping Important features may be left out
of prototype to simplify rapid development
Nonfunctional requirements such as those concerning reliability, robustness and safety cannot be adequately tested in prototype
Incremental Development Combines advantages of evolutionary
prototyping with control required for large-scale development
Avoids problem of constant change More manageable since normal
software process standards are followed Problem – software architecture must
be established before requirements are complete so requirements tend to be constrained by the architecture.
GUI Prototyping Developers cannot impose their
view on the user. User must take part.
Use evolutionary Prototyping Initial interface produced, evaluated
by users and revised until users satisfied
May be re-implemented
Enter year:____
Enter month:____
Enter day:____
July 1998
1998 2025
1 31
Jan DecTue 16 Oct 2002