26
Prototyping Teppo Räisänen http://www.oamk.fi/~terai san/ [email protected]

Prototyping Teppo Räisänen teraisan/ [email protected]

Embed Size (px)

Citation preview

Prototyping

Teppo Räisänenhttp://www.oamk.fi/~teraisan/

[email protected]

General Information

Prototyping is commonly used as a part of user-centered design paradigms

Prototyping was introduced during 1980s

Prototyping has a strong position in Contextual Design method

General Information What is a prototype?

Looks like a finished product? Behaves like a finished product? May have small faults or missing

functionalities? Prototypes can be used in many

ways To try out new features of an application Test a complete family of applications

Prototyping vs. Traditional methods

According to some sources prototyping does not fit very well in ’waterfall’ design paradigm results of intermediate phases are not

suitable for prototyping In waterfall model it is expensive to

go back a step (e.g. from implementation back to design)

Prototyping vs. Traditional methods

An experienced usability expert will be able to see some of the usability issues from the documentation This kind of practice is, however,

inadequate Many usability issues will not be found

One solution is to separate UI design to an independent subproject

Prototyping vs. Traditional methods Especially important is to use

prototyping, when new product concepts are introduced

Prototypes can also be used as a means of communication between project units Often parts of requirements spesification

are intepreted in different ways Prototypes are useful for completing

formal spesifications

Functional Prototypes

Functional protoype is essentially a product with fully implemented functionalities

The goal is still to keep the costs lower than those of a finished product

There are basically three ways to cut the expenses

Functional Prototypes

1. Cut down the product features only part of all features are

implemented the implemented features are fully

functional

2. Cut down the functionalities all features are implemented some functionalities are missing

Functional Prototypes

3. Cut down resources used in implementation

Memory optimization is not implemented

Efficency is not maximized Very effective computers are used

during testing to make up missing efficency

Error hanling is not fully implemented

Functional Prototypes

Often mixtures of aforementioned methods are used to cut down the costs of developing a prototype

Paper Prototypes In some cases it is practical to use

paper prototypes instead of functional ones

E.g. Contextual Design stresses use of paper prototypes

Piece of paper is used to represent UI A member of usability staff arranges

the UI according to user’s actions

Paper Prototypes

Changes to the UI can be illustrated by Using Post-it labels Drawing to the paper Using various pieces of paper

The person responsible for arranging the UI must know the underlying system well

Paper Prototypes

E.g. heuristic evaluation methods can be used We will go into heuristics later in the

course Use of paper prototypes is not

restricted to just desktop applications Wood block => mobile device Cardbroad box => laptop computer Pencil => bar code reader

Paper Prototypes Various software tools can be used

to sketch the contents of paper prototypes, e.g. Visual Basic for the UI views Flash for mobile device emulations

It may be psychologically easier for the test person to suggest changes to a ballpark drawing

Paper Prototypes

Compared to functional prototypes, paper prototypes are easier, faster and cheaper to produce

Several degrees of accuracy can be used during iterative cycles

Wizard of Oz

Wizard of Oz is a spesific technique of prototyping Used to test and demonstrate

technically ’impossible’ features E.g. speech recognizing text editor in

1970s User believes he/she is using a

computer-based system

Wizard of Oz In reality user’s actions are

transmitted to a person, who processes actions and forms the feedback of the system

Because of that, the response times can be quite long User can be told, that advanced

processes are time-comsuming Several ’wizards’ can be used to speed

up system’s actions

Emulation Techniques

Emulation = imitating a product’s functions using another product

E.g. mobile devices can be emulated using desktop computers More processing power, thus no need

for code optimization Ability to test device’s UI before

hardware examples are manufactured

Emulation Techniques

Emulator’s do not transmit a truthful image of a product, e.g. no physical buttons of the actual

device different display format

Simulation Techniques Simulations are used to mimic a

device by using another kind of technical enviroment

E.g. flight simulators used for pilot training

The difference between simulation and emulation is, that simulation utilizes the actual UI of a device

Simulation Techniques

Simulation can be used during early design phases of a product, e.g. Model can be made of wood or plastic The hardware buttons are included in

the model Buttons are wired to a computer

system, which gives feedback according to the user’s actions

Simulation Techniques

Simulations are effective means of marketing a product localization testing the physical adequacy of the

product Simulations are generally more

expensive than other forms of prototyping

Manuscripts A manuscript (like in a case of a

movie) can be written of a product Manuscript will represent a spesific

task, which is completed by using the product

The goal is to demonstrate the product in daily use and advantages of using the product

Manuscripts Suitable formats of manuscripts are

animations comic strips theater plays etc.

Manuscripts are not to be used as testing methods

Instead they are good for demonstrating a product to a large audience

After Prototype Has Been Used

Usually the best choice is to throw the prototype away

It is meant to be used as a sketch There are many real-world

examples of failures, when code parts of prototypes have been used in products

After Prototype Has Been Used Prototypes, which ’look too good’

can be potentially dangerous: Customer may think, that the product

is almost finished Management is not willing to throw

’almost finished’ parts of prototype away

One way of avoiding prototype’s code to be used is to implement prototype with a language unsuitable for for the product