Prototyping model
- SOFTWARE ENGINEERING
PROTYPING LIFECYCLE MODEL
-Shirley Jenifer Joseph
13Z348 - SOFTWARE ENGINEERING
Software engineeringis the study and application
of engineering to the design, development, and
maintenance of software.
Software prototyping refers to the activity of
creating prototypes of software applications. - INTRODUCTION
A prototyingmodel requires that before carrying out
the development of the actual software, a working
prototype of the system should be built.
A prototype is a toy implementation of the system.
A prototype usually turns out to be a very crude
version of the actual system, possibly exhibiting
limited functional capabilities, low reliability, and
inefficient performance as compared to the actual
software. - In many
instances the client only has a general view
of what is to be expected from the software product.
In such a scenario where there is an absence of
detailed information regarding the input to the
system, the processing needs and the output
requirements, the prototyping model may be
employed. - SE, Software Lifecycle,
Hans van Vliet, ©2008 5
PROTOTYPING AS A TOOL FOR
REQUIREMENTS ENGINEERING
reqs engineering
designdesign
implementationimplementation
testingtesting
maintenance - STEPS OF PROTOTYPING
MODEL
REQUIREMENTSAND GATHERING ANALYSIS:
The user is interviewed to gather information
regarding the requirement of the software.
QUICK DESIGN:
A preliminary design or quick design involving only
the important aspects is created.
BUILD PROTOTYPE:
Information from the quick design is modified to
form a prototype. - ASSESSMENT:
The proposedsystem is now presented to the user
for consideration.
PROTOTYPE REFINEMENT:
Once the user evaluates the prototype the required
changes are made and the final prototype is used to
make the final system.
ENGINEER PRODUCT:
The final thoroughly tested and undergoes routine
maintenance in order to avoid any future sytem
failures. - TYPES OF PROTOTYPING
Throwaway protoypes
Evolutionary prototypes
Incremental prototypes
Extreme prototypes - THROWAWAY PROTOTYPES
Does notform part of the final solution
Helps to gain more ideas and explore more
possibilities - EVOLUTIONARY PROTOTYPES
Provides feedbackand suggestions for
development.
Each stage evolves towards the final system and
hence it is known as evolutionary prototype. - INCREMENTAL PROTOTYPES
The finalproduct is built as separate prototypes
At the end the separate prototypes are merged in
an overall design. - EXTREME PROTOTYING
This processis usually used for the development of
web applications.
In this process the prototyping id broken down into
three parts. - ADVANTAGES OF PROTOTYPE
MODEL:
Theresulting system is easier to use
User needs are better accommodated
The resulting system has fewer features
Problems are detected earlier - The design is
of higher quality
The resulting system is easier to
maintain
The development incurs less effort
Provides better communication
between the user and the engineer. - DISADVANTAGES OF PROTOTYPE
MODEL:
Theresulting system has more features
The performance of the resulting system is worse
The design is of less quality
The resulting system is harder to maintain
The prototyping approach requires more
experienced team members - RECOMMENDATIONS
The users andthe designers must be well aware of
the issues and the pitfalls
Use prototyping when the requirements are unclear
Prototyping needs to be planned and controlled as
well