SlideShare une entreprise Scribd logo
1  sur  33
Design, prototyping and
construction
Introduction
A model for interaction design
Evaluate
(Re)Design
Identify needs/
establish
requirements
Build an
interactive
version
Final product
What is User-Centered Design?
• An approach to UI development and system
development.
• Focuses on understanding:
– Users, and
– Their goals and tasks, and
– The environment (physical, organizational,
social)
• Pay attention to these throughout
development
ISO on User-centered Design
• ISO 13407 describes human-centered
design processes for interactive
systems
• Principles of human-centered design:
– Active involvement of users
– Appropriate allocation of function
between user and system
– Iteration of design solutions
– Multidisciplinary design teams
ISO on User-centered Design (2)
• Essential activities in human-centered
design:
– Understand and specify the context of
use
– Specify the user and organizational
requirements
– Produce design solutions (prototypes)
– Evaluate designs with users against
requirements
What is a prototype?
• What do you think of when you hear
“prototype”?
• What kinds of prototypes have you
seen anywhere?
– in other fields or disciplines?
– on television?
• What are they “for”?
What is a prototype?
• In other design fields a prototype is a
small-scale model:
a miniature car
a miniature building or town
• Exists for some purpose
– Show the “concept” to some stakeholders
– Get feedback about some aspect
– Test somehow
• E.g. a wing in a wind-tunnel
Prototyping and Software
• Do software companies do this?
– Sometimes do it well
– But sometimes the prototype is…
Version 1.0!
• Constantine and Lockwood:
“Software is the only engineering field that
throws together prototypes and then
attempts to sell them as delivered goods.”
What is a prototype for us?
In HCI / interaction design it can be (among other
things):
a series of screen sketches
a storyboard, i.e. a cartoon-like series of scenes
a Powerpoint slide show
a video simulating the use of a system
a lump of wood (e.g. PalmPilot)
a cardboard mock-up
a piece of software with limited functionality
written in the target language or in another
language
Why prototype in general?
• Evaluation and feedback are central to interaction
design
• Developers can test feasibility of ideas with team, users
• Stakeholders can see, hold, interact with a prototype
more easily than a document or a drawing
• Team members and users can communicate effectively
• To validate existing / other requirements
• It encourages reflection: very important aspect of
design
• Prototypes answer questions, and support designers in
choosing between alternatives
What to Prototype and Why
• Prototyping reduces uncertainty
– It can be a major tool for risk management
– Apply on whatever you might be uncertain
about!
• Prototyping technical issues
– E.g. run-time issues
• Prototyping to establish requirements
– Users “see” functionality
• Prototyping for usability concerns
– Our concern in this course
When and at What Level
• For SW, you might prototype at
various times in the lifecycle
– Different goals, different techniques
• Conceptual Design
• Interaction Design
• Screen Design
Benefits of Prototyping Early
• Exploration and evaluation of different
design options
• Increase communication among users
and developers
– Rapid feedback on ideas and changes
• Identify problems and issues before
construction (expensive)
Prototyping: Conceptual Design
• Early in development
• Explore high-level issues
– Different conceptual models
– Interaction styles
– User needs and characteristics
– Usability goals
• High-level representations
– Far from final code or GUIs
Prototyping: Interaction Design
• Later in development
• Focus on user work-flows
– Tasks and scenarios you’ve identified
• Might focus at the screen (or page) level.
Possibly like this:
– identify screens, pages, activities
– Organize these in groups
– Define flows or transitions between them
• Involve users in evaluation
• Representations
– Still probably not much like final code or GUIs
Prototyping: Screen Design
• Before development
• Define and refine screens (pages)
– Blue-prints for final physical design
• User evaluation
– Both achieving tasks and navigation, and
other usability criteria (as we’ve studied)
• Representations
– Low-fidelity or high-fidelity prototypes
Low-fidelity Prototyping
•Uses a medium which is unlike the final
medium, e.g. paper, cardboard
•Is quick, cheap and easily changed
•Examples:
sketches of screens, task sequences, etc
‘Post-it’ notes
storyboards
Storyboards
•Often used with scenarios, bringing more
detail, and a chance to role play
•It is a series of sketches showing how a user
might progress through a task using the
device
•Used early in design
Sketching
• Sketching is important to low-fidelity
prototyping
• Don’t be inhibited about drawing ability.
Practice simple symbols
• Can use post-its, photo-copied widgets,
etc.
•Index cards, post-its
•Index cards (3 X 5 inches)
•Each card represents one screen
•Often used in website development
Using Office Supplies
Using Office Supplies
• Post-its, index cards
– Can represent one screen, one page
– Color coded
– Draw on them
– Group them
– Put them on a wall or whiteboard,
connect them with string or lines
• Write-on tape, clear film
• And so on… See Rettig’s article
Rettig’s “Prototyping for Tiny
Fingers”
• “To get a a good idea, get lots of
ideas.”
• Problems with hi-fi prototyping:
– too easy to focus on “fit and finish”
– developers resist changing software
– SW prototype sets expectations
– Bug in SW prototype kills an evaluation
Storyboards
• Storyboards are:
– a low fidelity visual representation where
– steps or actions represented by panels,
like a comic book
• Goals are to
– flesh out the scenarios in an interaction
design
– effectively communicate with users or
stakeholders
Principles and Variations
• (As usual in HCI) storyboards should be
“real” and “representational” rather than
“abstract” or “complete”
• Used in different ways at different phases
– Early: focus on user tasks, work-flow, context,
etc.
– Later: lo-fi drawing of screens, menus, etc.
• Principles:
– Describe a scenario -- focused on interaction
– Contains explanations, notes, etc.
• Example:
• Shows
– workflow
of mail
merging
– who’s
involved,
responsib
ilities,
etc.
• This shows high-level of view of users
involved in other storyboards
From: Usability Case Studies, http://ucs.ist.psu.edu
• Lo-fi interface sketches
– Annotated with scenario/execution info
From: Usability Case Studies, http://ucs.ist.psu.edu
• Storyboard for
a website
– for
photographers
• Sequence of
pages
– based on clicks
• Explanations /
annotations
High-fidelity prototyping
•Uses materials that you would expect to be in
the final product.
•Prototype looks more like the final system
than a low-fidelity version.
•For a high-fidelity software prototype
common environments include Macromedia
Director, Visual Basic, and Smalltalk.
•Danger that users think they have a full
system…….see compromises
High-fidelity Prototyping
• Benefits
– More realistic
– Closer to final product
• Good for developers and users
– Can collect metrics
• Limitations
– More expensive, less rapid
– Reluctance to change
– See Rettig’s list
Compromises in prototyping
•All prototypes involve compromises
•For software-based prototyping maybe there
is a slow response? sketchy icons? limited
functionality?
•Two common types of compromise
• ‘horizontal’: provide a wide range of
functions, but with little detail
• ‘vertical’: provide a lot of detail for only
a few functions
•Compromises in prototypes mustn’t be
ignored. Product needs engineering
Possible Problems with
Prototyping
• Pressure to enhance prototype to become
delivered system
– From client
– From management
• Both see code, see almost-working “system”
• Why not use the prototype?
• Prototype built for quick updates, so...
– No design, so hard to maintain
– Ugly code, no error checking
– Wrong environment
And then… Construction
•Taking the prototypes (or learning from
them) and creating a final product
•Quality must be attended to: usability (of
course), reliability, robustness,
maintainability, integrity, portability,
efficiency, etc
•Product must be engineered
Evolutionary prototyping
‘Throw-away’ prototyping

Contenu connexe

Similaire à prototyping-chap-03.ppt

Rapid Prototyping in UX Design
Rapid Prototyping in UX DesignRapid Prototyping in UX Design
Rapid Prototyping in UX DesignStephen Denning
 
Design thinking for delivery effectiveness v3.0
Design thinking for delivery effectiveness v3.0Design thinking for delivery effectiveness v3.0
Design thinking for delivery effectiveness v3.0AgileNetwork
 
Intro to User Centered Design Workshop
Intro to User Centered Design WorkshopIntro to User Centered Design Workshop
Intro to User Centered Design WorkshopPatrick McNeil
 
Multi Platform User Exerience
Multi Platform User ExerienceMulti Platform User Exerience
Multi Platform User ExerienceTanya Zavialova
 
Incorporating UX into Your Projects
Incorporating UX into Your ProjectsIncorporating UX into Your Projects
Incorporating UX into Your ProjectsKarl Kaufmann
 
Siblings or Step Siblings? Common Connections Between Technical Communication...
Siblings or Step Siblings? Common Connections Between Technical Communication...Siblings or Step Siblings? Common Connections Between Technical Communication...
Siblings or Step Siblings? Common Connections Between Technical Communication...Chris LaRoche
 
DIY Usability
DIY UsabilityDIY Usability
DIY UsabilityJan Moons
 
Guerilla Human Computer Interaction and Customer Based Design
Guerilla Human Computer Interaction and Customer Based DesignGuerilla Human Computer Interaction and Customer Based Design
Guerilla Human Computer Interaction and Customer Based DesignQuentin Christensen
 
Usability & Agile Development
Usability & Agile DevelopmentUsability & Agile Development
Usability & Agile Developmentbinuvt
 
Prototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghPrototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghNeil Allison
 
UserExperienceWebroot
UserExperienceWebrootUserExperienceWebroot
UserExperienceWebrootNancy Shepard
 
Integrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product LifecycleIntegrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product LifecycleICS
 
UX Design Process | Sample Proposal
UX Design Process | Sample Proposal UX Design Process | Sample Proposal
UX Design Process | Sample Proposal Marta Fioni
 
Dtui5 chap03rev
Dtui5 chap03revDtui5 chap03rev
Dtui5 chap03revricky5476
 
First users: Heuristics for designer/developer collaboration
First users: Heuristics for designer/developer collaborationFirst users: Heuristics for designer/developer collaboration
First users: Heuristics for designer/developer collaborationJonathan Abbett
 
Lecture (User Interface Design).ppt
Lecture (User Interface Design).pptLecture (User Interface Design).ppt
Lecture (User Interface Design).pptskknowledge
 
MHIT 603: Introduction to Prototyping
MHIT 603: Introduction to PrototypingMHIT 603: Introduction to Prototyping
MHIT 603: Introduction to PrototypingMark Billinghurst
 
Interaction design: desiging user interfaces for digital products
Interaction design: desiging user interfaces for digital productsInteraction design: desiging user interfaces for digital products
Interaction design: desiging user interfaces for digital productsDavid Little
 

Similaire à prototyping-chap-03.ppt (20)

Rapid Prototyping in UX Design
Rapid Prototyping in UX DesignRapid Prototyping in UX Design
Rapid Prototyping in UX Design
 
Design thinking for delivery effectiveness v3.0
Design thinking for delivery effectiveness v3.0Design thinking for delivery effectiveness v3.0
Design thinking for delivery effectiveness v3.0
 
Intro to User Centered Design Workshop
Intro to User Centered Design WorkshopIntro to User Centered Design Workshop
Intro to User Centered Design Workshop
 
Multi Platform User Exerience
Multi Platform User ExerienceMulti Platform User Exerience
Multi Platform User Exerience
 
Incorporating UX into Your Projects
Incorporating UX into Your ProjectsIncorporating UX into Your Projects
Incorporating UX into Your Projects
 
Siblings or Step Siblings? Common Connections Between Technical Communication...
Siblings or Step Siblings? Common Connections Between Technical Communication...Siblings or Step Siblings? Common Connections Between Technical Communication...
Siblings or Step Siblings? Common Connections Between Technical Communication...
 
DIY Usability
DIY UsabilityDIY Usability
DIY Usability
 
Guerilla Human Computer Interaction and Customer Based Design
Guerilla Human Computer Interaction and Customer Based DesignGuerilla Human Computer Interaction and Customer Based Design
Guerilla Human Computer Interaction and Customer Based Design
 
User-Centered Design
User-Centered DesignUser-Centered Design
User-Centered Design
 
Usability & Agile Development
Usability & Agile DevelopmentUsability & Agile Development
Usability & Agile Development
 
Prototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of EdinburghPrototyping - the what, why and how at the University of Edinburgh
Prototyping - the what, why and how at the University of Edinburgh
 
UserExperienceWebroot
UserExperienceWebrootUserExperienceWebroot
UserExperienceWebroot
 
Integrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product LifecycleIntegrating User Experience Design into the Product Lifecycle
Integrating User Experience Design into the Product Lifecycle
 
UX Design Process | Sample Proposal
UX Design Process | Sample Proposal UX Design Process | Sample Proposal
UX Design Process | Sample Proposal
 
Dtui5 chap03rev
Dtui5 chap03revDtui5 chap03rev
Dtui5 chap03rev
 
First users: Heuristics for designer/developer collaboration
First users: Heuristics for designer/developer collaborationFirst users: Heuristics for designer/developer collaboration
First users: Heuristics for designer/developer collaboration
 
Designing and prototyping
Designing and prototypingDesigning and prototyping
Designing and prototyping
 
Lecture (User Interface Design).ppt
Lecture (User Interface Design).pptLecture (User Interface Design).ppt
Lecture (User Interface Design).ppt
 
MHIT 603: Introduction to Prototyping
MHIT 603: Introduction to PrototypingMHIT 603: Introduction to Prototyping
MHIT 603: Introduction to Prototyping
 
Interaction design: desiging user interfaces for digital products
Interaction design: desiging user interfaces for digital productsInteraction design: desiging user interfaces for digital products
Interaction design: desiging user interfaces for digital products
 

Dernier

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 

Dernier (20)

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 

prototyping-chap-03.ppt

  • 2. A model for interaction design Evaluate (Re)Design Identify needs/ establish requirements Build an interactive version Final product
  • 3. What is User-Centered Design? • An approach to UI development and system development. • Focuses on understanding: – Users, and – Their goals and tasks, and – The environment (physical, organizational, social) • Pay attention to these throughout development
  • 4. ISO on User-centered Design • ISO 13407 describes human-centered design processes for interactive systems • Principles of human-centered design: – Active involvement of users – Appropriate allocation of function between user and system – Iteration of design solutions – Multidisciplinary design teams
  • 5. ISO on User-centered Design (2) • Essential activities in human-centered design: – Understand and specify the context of use – Specify the user and organizational requirements – Produce design solutions (prototypes) – Evaluate designs with users against requirements
  • 6. What is a prototype? • What do you think of when you hear “prototype”? • What kinds of prototypes have you seen anywhere? – in other fields or disciplines? – on television? • What are they “for”?
  • 7. What is a prototype? • In other design fields a prototype is a small-scale model: a miniature car a miniature building or town • Exists for some purpose – Show the “concept” to some stakeholders – Get feedback about some aspect – Test somehow • E.g. a wing in a wind-tunnel
  • 8. Prototyping and Software • Do software companies do this? – Sometimes do it well – But sometimes the prototype is… Version 1.0! • Constantine and Lockwood: “Software is the only engineering field that throws together prototypes and then attempts to sell them as delivered goods.”
  • 9. What is a prototype for us? In HCI / interaction design it can be (among other things): a series of screen sketches a storyboard, i.e. a cartoon-like series of scenes a Powerpoint slide show a video simulating the use of a system a lump of wood (e.g. PalmPilot) a cardboard mock-up a piece of software with limited functionality written in the target language or in another language
  • 10. Why prototype in general? • Evaluation and feedback are central to interaction design • Developers can test feasibility of ideas with team, users • Stakeholders can see, hold, interact with a prototype more easily than a document or a drawing • Team members and users can communicate effectively • To validate existing / other requirements • It encourages reflection: very important aspect of design • Prototypes answer questions, and support designers in choosing between alternatives
  • 11. What to Prototype and Why • Prototyping reduces uncertainty – It can be a major tool for risk management – Apply on whatever you might be uncertain about! • Prototyping technical issues – E.g. run-time issues • Prototyping to establish requirements – Users “see” functionality • Prototyping for usability concerns – Our concern in this course
  • 12. When and at What Level • For SW, you might prototype at various times in the lifecycle – Different goals, different techniques • Conceptual Design • Interaction Design • Screen Design
  • 13. Benefits of Prototyping Early • Exploration and evaluation of different design options • Increase communication among users and developers – Rapid feedback on ideas and changes • Identify problems and issues before construction (expensive)
  • 14. Prototyping: Conceptual Design • Early in development • Explore high-level issues – Different conceptual models – Interaction styles – User needs and characteristics – Usability goals • High-level representations – Far from final code or GUIs
  • 15. Prototyping: Interaction Design • Later in development • Focus on user work-flows – Tasks and scenarios you’ve identified • Might focus at the screen (or page) level. Possibly like this: – identify screens, pages, activities – Organize these in groups – Define flows or transitions between them • Involve users in evaluation • Representations – Still probably not much like final code or GUIs
  • 16. Prototyping: Screen Design • Before development • Define and refine screens (pages) – Blue-prints for final physical design • User evaluation – Both achieving tasks and navigation, and other usability criteria (as we’ve studied) • Representations – Low-fidelity or high-fidelity prototypes
  • 17. Low-fidelity Prototyping •Uses a medium which is unlike the final medium, e.g. paper, cardboard •Is quick, cheap and easily changed •Examples: sketches of screens, task sequences, etc ‘Post-it’ notes storyboards
  • 18. Storyboards •Often used with scenarios, bringing more detail, and a chance to role play •It is a series of sketches showing how a user might progress through a task using the device •Used early in design
  • 19. Sketching • Sketching is important to low-fidelity prototyping • Don’t be inhibited about drawing ability. Practice simple symbols • Can use post-its, photo-copied widgets, etc.
  • 20. •Index cards, post-its •Index cards (3 X 5 inches) •Each card represents one screen •Often used in website development Using Office Supplies
  • 21. Using Office Supplies • Post-its, index cards – Can represent one screen, one page – Color coded – Draw on them – Group them – Put them on a wall or whiteboard, connect them with string or lines • Write-on tape, clear film • And so on… See Rettig’s article
  • 22. Rettig’s “Prototyping for Tiny Fingers” • “To get a a good idea, get lots of ideas.” • Problems with hi-fi prototyping: – too easy to focus on “fit and finish” – developers resist changing software – SW prototype sets expectations – Bug in SW prototype kills an evaluation
  • 23. Storyboards • Storyboards are: – a low fidelity visual representation where – steps or actions represented by panels, like a comic book • Goals are to – flesh out the scenarios in an interaction design – effectively communicate with users or stakeholders
  • 24. Principles and Variations • (As usual in HCI) storyboards should be “real” and “representational” rather than “abstract” or “complete” • Used in different ways at different phases – Early: focus on user tasks, work-flow, context, etc. – Later: lo-fi drawing of screens, menus, etc. • Principles: – Describe a scenario -- focused on interaction – Contains explanations, notes, etc.
  • 25. • Example: • Shows – workflow of mail merging – who’s involved, responsib ilities, etc.
  • 26. • This shows high-level of view of users involved in other storyboards From: Usability Case Studies, http://ucs.ist.psu.edu
  • 27. • Lo-fi interface sketches – Annotated with scenario/execution info From: Usability Case Studies, http://ucs.ist.psu.edu
  • 28. • Storyboard for a website – for photographers • Sequence of pages – based on clicks • Explanations / annotations
  • 29. High-fidelity prototyping •Uses materials that you would expect to be in the final product. •Prototype looks more like the final system than a low-fidelity version. •For a high-fidelity software prototype common environments include Macromedia Director, Visual Basic, and Smalltalk. •Danger that users think they have a full system…….see compromises
  • 30. High-fidelity Prototyping • Benefits – More realistic – Closer to final product • Good for developers and users – Can collect metrics • Limitations – More expensive, less rapid – Reluctance to change – See Rettig’s list
  • 31. Compromises in prototyping •All prototypes involve compromises •For software-based prototyping maybe there is a slow response? sketchy icons? limited functionality? •Two common types of compromise • ‘horizontal’: provide a wide range of functions, but with little detail • ‘vertical’: provide a lot of detail for only a few functions •Compromises in prototypes mustn’t be ignored. Product needs engineering
  • 32. Possible Problems with Prototyping • Pressure to enhance prototype to become delivered system – From client – From management • Both see code, see almost-working “system” • Why not use the prototype? • Prototype built for quick updates, so... – No design, so hard to maintain – Ugly code, no error checking – Wrong environment
  • 33. And then… Construction •Taking the prototypes (or learning from them) and creating a final product •Quality must be attended to: usability (of course), reliability, robustness, maintainability, integrity, portability, efficiency, etc •Product must be engineered Evolutionary prototyping ‘Throw-away’ prototyping