0% found this document useful (0 votes)
58 views18 pages

Human-Computer Interaction: Ali Harris (Fall 2020)

This document provides an overview of prototyping techniques for human-computer interaction. It discusses high-fidelity prototyping which aims to closely resemble the final product. It also covers iterative design approaches like rapid prototyping where prototypes are discarded, incremental prototyping which develops the product in separate components, and evolutionary prototyping where each prototype serves as the basis for the next iteration. The document outlines advantages and disadvantages of different prototyping methods and some potential problems to consider around time, planning, and testing non-functional features with prototypes.

Uploaded by

Anan Tariq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views18 pages

Human-Computer Interaction: Ali Harris (Fall 2020)

This document provides an overview of prototyping techniques for human-computer interaction. It discusses high-fidelity prototyping which aims to closely resemble the final product. It also covers iterative design approaches like rapid prototyping where prototypes are discarded, incremental prototyping which develops the product in separate components, and evolutionary prototyping where each prototype serves as the basis for the next iteration. The document outlines advantages and disadvantages of different prototyping methods and some potential problems to consider around time, planning, and testing non-functional features with prototypes.

Uploaded by

Anan Tariq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Human-Computer

Interaction
Ali Harris (Fall 2020)
Lecture # 27: Prototyping (cont.)

1
What will be covered today…

 High Fidelity Prototypes


 Iterative Design
 Approaches of Prototyping
 Rapid Prototyping
 Incremental Prototyping
 Evolutionary Prototyping

2
High-fidelity Prototyping

 Choice of materials and methods


 Similar or identical to the ones in the final product
 Looks more like the final system
 Appearance, not functionality
 Common development environments
 Macromedia Director, PowerPoint, Basic Web development tools
 Misled user expectations
 Users may think they have a full system

3
Mockups

 A mockup is a high fidelity, static, design representation. Very often a


mockup is a visual design draft, or even the actual visual design.
 It represents the structure of information, visualizes the content and
demonstrates the basic functionalities in a static way

4
Hi-fi Prototype

 A comprehensive and interactive prototype that is quite close to the final


products with lots of functions, interactions and details.

5
Advantages vs Disadvantages

Low-Fidelity Prototype High-Fidelity Prototype

Advantages - low developmental cost - fully interactive


- evaluate multiple design concepts - look and feel of final product
- clearly defines navigational
scheme
Disadvantages - limited error checking - more expensive to develop
- navigational and flow limitations - time consuming to build
- developers are reluctant to
change something they have crafted
for hours
6
7
Iterative Design

 We discussed previously that for an interactive system


it is not possible to completely specify all
requirements from the beginning of the life cycle
(formality gap).
 The only way to be sure about some features of the
potential design is to build them and test them out on
real users. The design can then be modified to
correct any false assumptions that were revealed in
the testing. This is the essence of iterative design.
 Iterative design is described by the use of prototypes,
artifacts that simulate or animate some but not all
features of the intended system. 8
Prototyping approaches

 Prototype is a working model of software with


some limited functionality.
 There are three main approaches to prototyping:
 Throw Away/Rapid
 Incremental

 Evolutionary

9
Throw Away/Rapid Prototyping

 The prototype is built and tested. The design knowledge gained from this
exercise is used to build the final product, but the actual prototype is
discarded.
 The figure depicts the procedure in using throw-away prototypes to arrive at
a final requirements specification in order for the rest of the design process
to proceed.

10
Throw Away/Rapid Prototyping

 The most obvious reason for using Throwaway Prototyping is that it can be
done quickly.
 If the users can get quick feedback on their requirements, they may be able
to refine them early in the development of the software. Making changes
early in the development lifecycle is extremely cost effective since there is
nothing at that point to redo.
 If a project is changed after a considerable work has been done then small
changes could require large efforts to implement since software systems
have many dependencies.
 Speed is crucial in implementing a throwaway prototype, since with a limited
budget of time and money little can be expended on a prototype that will be
discarded.
11
Incremental Prototyping

 The final product is built as


separate components, one at
a time.
 There is one overall design for
the final system, but it is
partitioned into independent
and smaller components. The
final product is then released
as a series of products, each
subsequent release including
one more component.

12
Incremental Prototyping

 An advantage of this method is that the end-users have the


opportunity to test the developed components and their
functionality. They also have opportunities to provide feedback
while other components are still in development, and can thus
influence the outcome of further development.
 Example: In a new word processing application a user may be
able to work with the interface to open and save documents,
but may not be able to print those documents or make changes
fonts or styles because these components have yet to be
delivered. The end-users are able to provide feedback on the
components developed so far. This may influence also how
further components are implemented. 13
Evolutionary Prototyping

 The prototype is not discarded and


serves as the basis for the next iteration
of design.
 In this case, the actual system is seen as
evolving from a very limited initial
version to its final release.
 Evolutionary prototyping also fits in well
with the modifications which must be
made to the system that arise during the
operation and maintenance activity in
the life cycle.

14
Evolutionary Prototyping

 This approach is particularly useful when the exact


requirements of the solution cannot be set out in
advance, or are considered to be vague.
 The end-users can become closely involved during the
development, playing a key role as each iteration moves
further from prototype and closer to a useable solution
that does what it is needed to do, and does it well.

15
Problems in Prototyping

 Prototypes differ according to the amount of functionality and


performance they provide relative to the final product.
 At the other extreme, full functionality can be provided at the
expense of other performance characteristics, such as speed.
 The prototype of an interactive system is used to test requirements by
evaluating their impact with real users.
 On the management side, there are several potential problems:
 Time
 Planning
 Non-functional features
16
Problems in Prototyping

 Time: Building prototypes takes time and, if it is a throw-away prototype, it


can be seen as precious time taken away from the real design task. So the
value of prototyping is only appreciated if it is fast, hence the use of the
term rapid prototyping. However, rapid development should not be mistaken
for rushed evaluation which might lead to erroneous results and invalidate
the only advantage of using a prototype in the first place.
 Planning: Most project managers do not have the experience necessary for
adequately planning and costing a design process which involves prototyping.
 Non-functional features: Often the most important features of a system will
be non-functional ones, such as safety and reliability, and these are precisely
the kinds of features which are sacrificed in developing a prototype. For
evaluating usability features of a prototype, response time – yet another
feature often com- promised in a prototype – could be critical to product
acceptance. 17
The End!

18

You might also like