ch 10 prototyping page 1 cs 368 prototyping an initial version of a software system used to...
Post on 22-Dec-2015
214 views
TRANSCRIPT
Ch 10 Prototyping page 1CS 368
Prototyping
• an initial version of a software system used to demonstrate concepts, compare design alternatives and to explore the problem and possible solutions.
• it should be suitable for representative users to interact with in order to observe their behavior and identify potential usability problems.
• heavily used in industry: automotive, consumer electronics
Ch 10 Prototyping page 2CS 368
Looking for Innovation
• strive for multiple designs early to discover the best solution
• product designers are trained to consider alternatives, software developers generally are not
• most ideas are evolutionary rather than revolutionary
• humans tend to build upon what they already know rather than truly think out of the box
• Examples of true innovation
Doc Brown invented the flux capacitor which is the basis for time travel
velcro
amazon.cm “one click”
post-it notes
Ch 10 Prototyping page 3CS 368
Advantages
• relatively cheap and quick to create
• a lot of bang for the buck
• the user can better clarify her needs by seeing the features in action
• actually shortens development time by identifying problems early when it is easier to make changes
• enhances communication with the user
• supports an iterative design process
Ch 10 Prototyping page 4CS 368
Types of Prototypes
• Low Fidelity
quick and cheap to create
might not look realistic
limited functionality
used early in the specification or design phase
• Demonstration
targeted functional for specific concepts
user can respond to the demonstration
• High Fidelity
more realistic
slower to develop and more expensive
nearly complete functionality
more effective towards the end of the design phase
Ch 10 Prototyping page 5CS 368
Additional Strategies
• Evolutionary
make incremental changes to the ‘final’ product
designers may feel overly committed and limit their choices
• Throw Away
forced to start from scratch
• Local vs Global Features
depth vs breadth
perhaps implement one menu instead of all of them
• Wizard of Oz
create the illusion of a functional application under the control of someone in the background
could be done for a voice application
Ch 10 Prototyping page 6CS 368
Prototyping Tools
• Visual Basic for relatively quick event-driven prototypes
• Scripting languages such as Python allow for rapid development
• Tkl / tk
• HTML authoring tools
• Paper
google “paper prototyping” for resources
Ch 10 Prototyping page 7CS 368
Group Activity
• Day 1
introduce the problem
explain the prototyping materials
• Day 2
iterative design and refine the prototype
• Day 3
send envoys out to the other groups
each group has a puppeteer and scribe
note usability problems
• Possible projects
Restrict interaction style to Menus for Linux commands
Phone message system for a receptionist to take messages