2. Agenda for discussion
Define Prototyping
Why rapid prototyping?
Types of prototypes
Advantages and disadvantages of prototyping
Risks in Prototyping
3. Prototyping Defined
Rapid prototyping is a process whereby wireframes or simple
mocks-ups of the system are used as the base layer and
interactive elements can be added that allow the user to
mimic how they may use the real system. Interactive elements
would typically include being able to click on drop down lists
and view the options it holds or, navigating between pages.
IEEE defines prototyping as “ A type of development in which
emphasis is placed on developing prototypes early in the
development process to permit early feedback and analysis in
support of the development process.”
4. Why rapid prototyping?
• By using a prototype model users are able to try and test the functionality before it is
built into the live system. This provides a way of identifying any potential errors in
the requirements and even establishing new requirements that hadn’t been
previously considered. Creating a version of the system in this way is also quick to
produce and easy to change if something isn’t correct and requires re-testing –
making it a very cost effective way of both capturing and validating requirements.
• In additional rapid prototyping provides an opportunity to get system users engaged
and on board at an early stage of the development project. There are many tools that
can help to produce rapid prototypes, the best of which allow users to attach
feedback directly to the prototype
• This agile approach can leave many spiralling costs and a process that will leave
them still trying to firm up requirements at the end but, managed right this process
should actually result in quite the opposite and save expenditure in the long term.
5.
6. Types of prototyping
Throw-away Prototyping
Evolutionary Prototyping
Low Fidelity Prototyping
High Fidelity Prototyping
7. Throw Away Prototype
Throw Away Prototype is developed from the
initial requirements but is not used for the final
project.
Some developers believe that this type is a waste
of time because you don’t use it.
8. Evolutionary Prototype
Evolutionary prototyping is consider the most
fundamental form of prototyping.
Evolutionary prototyping main concept is to build a
robust prototype and constantly improve it.
Objective to deliver a working system to the end user.
9. Low-fidelity Prototyping
They are constructed to depict concepts, design
alternatives and screen layouts. They are intended to
demonstrate general look and feel of the interface.
They are created to educate , communicate and
inform, but not to train, test .
Low fidelity prototyping is used early in the design
cycle to show general conceptual approaches
10. High-Fidelity Prototyping
High-fidelity prototypes represent the core functionality of
the products user interface.
High fidelity prototypes are fully interactive systems. Users
can enter data in entry fields, respond to messages,
select icon to open windows and interact with user
interface as if it were a real system.
11. Advantages of Prototyping
Reference: http://facpub.stjohns.edu/~wolfem
1. Reduces risk of incorrect user requirements
2. Good where requirements are
changing/uncommitted
3. Regular visible progress aids management
4. Supports early product marketing
12. Disadvantages of Prototyping
Reference: http://facpub.stjohns.edu/~wolfem
1. An unstable/badly implemented prototype often
becomes the final product. (Migration to a type 1
process!)
2. Requires extensive customer collaboration
– Costs customers time/money
– Needs committed customers
– Difficult to finish if customer withdraws
– May be too customer specific, no broad market
3. Difficult to know how long project will last
4. Easy to fall back into code-and-fix without proper
requirements analysis, design, customer evaluation and
feedback.
13. Risks in Prototyping
Client may believe that system is real.
Unrealistic expectations of the progress
Implementers make poor choice
Justified in prototype but not in real system
Tempting to build real system same way
Prototype is not identical to the real system
Users may interact differently due to different response
characteristics
Must interpret prototype experience with care