Today: AF Chapter 1 – Goal-Directed Design AF Chapter 2 - Implementation Models and Mental Models.
-
Upload
isabel-terry -
Category
Documents
-
view
215 -
download
1
Transcript of Today: AF Chapter 1 – Goal-Directed Design AF Chapter 2 - Implementation Models and Mental Models.
Today:
AF Chapter 1 – Goal-Directed DesignAF Chapter 2 - Implementation Models and Mental Models
Initiate
The Evolution of the Software Development Process
Design begins to precede the programming process…Formally defining the user and the user’s goals drives the entire development effort
Testing and design became separate steps…Testing in case the code needed fixing; GUI design after coding was done
Code/Test Ship Originally, programmers did it all…Design, code, test, and ship
PROGRAMMERS
Code/TestManagers brought order…
Understanding the market and the competition
PROGRAMMERSMANAGERS
Code Ship
PROGRAMMERS
Initiate
MANAGERS
Test GUI Design
QUALITY ASSURANCE DESIGNERS
Design Ship
DESIGNERS
Initiate
MANAGERS
Code Bug Test
PROGRAMMERS QUALITY ASSURANCE
User TestUSABILITY PRACTITIONERS
Ship
What do people desire?
Of the things people desire, what will
sustain a business?
Of the things people desire that will sustain
a business, what can we build?
Building Successful SoftwareBalancing Desirability, Viability, and Technology
OBJECTIVE:A PRODUCT
THAT IS DESIRABLE, VIABLE, AND BUILDABLECommon Error #1Common Error #1
Emphasize Technology &Emphasize Technology &Ignore DesirabilityIgnore Desirability
(e.g., Silicon Graphics)(e.g., Silicon Graphics)
Common Error #2Common Error #2Emphasize DesirabilityEmphasize Desirability
& Ignore Viability& Ignore Viability(e.g., Napster)(e.g., Napster)
Common Error #3Common Error #3Emphasize Viability &Emphasize Viability &
Ignore DesirabilityIgnore Desirability(e.g., Microsoft)(e.g., Microsoft)
Bridging The Research/Design GapThe Traditional Model
RESEARCHPerformed by market analysts and
ethnographers (immersive cultural observers)
DESIGNPerformed by graphical interface
and industrial designers
The Goal-Directed Design Model
RESEARCHInterview the user and observe the
domain
MODELINGAnalyze the field research, looking
for patterns
REQUIREMENTSDefine and prioritize the needs of the user
and the business
FRAMEWORKUse design patterns
and principles to conceptualize design
REFINEMENTClarify, revisit,
validate, and, finally, document the design
Overview: Goal-Directed Design Process
Research & Modeling•Who will use the product?•What problem will it solve for them?
Requirements & Design•What is the product and what does it contain?•What does it look like and how does it behave?
ScopeDefine the project’s intent and
constraintsAudit
Review existing work and product
InterviewsDiscuss values, issues, and expectations
ObservationsApply ethnographic research techniques
PersonasDefine typical users
GoalsDeduce what users want
RequirementsImagine a system to help users reach goals
ScenariosTell stories about ideal user experiences
ElementsDerive components based on
users
FrameworkOrganize the components
SpecificationsRefine details and describe models
There is frequently a marked contrast between the user’s mental model of how software works and the developer’s implementation
model of how it actually works.
Chapter 2: Implementation Models and Mental Models
User’s Mental ModelsExample: A scientist’s mental model of a technical paper
Title
Authors
Abstract
Body
Body (end)
References
Body (cont.)
The user’s mental model of the process of searching for and purchasing an article from an on-line system
Key Assumptions:• Articles are peer-reviewed
and published in journals• Articles are first published in
print & later on-line• Articles are available in
publisher’s on-line database• Article and meta-data are
stored in the same place• Paying for articles is a
reasonable business expense
Developer’s Implementation ModelsAn implementation model of a technical paper
Key Assumptions:• Articles are peer-reviewed and published in journals• Articles are simultaneously published in print & on-
line• Article data and meta-data are stored on separate
databases (technical constraint)• Paying for articles is a reasonable business expense
Article: Collection of Related Information
Meta-Data:• Authors• Title• Abstract• References
• Publication Date• Journal• Volume/Issue• Etc.
Data:• Article Text• Figures• Tables
The implementation model of the process of
searching for and purchasing an article
from an on-line system
Designer’s Represented ModelsShould the designer represent the software to the user in a manner closer to the developer’s implementation model...?
… or closer to the user’s mental model?
Happy Developer
Unhappy User
Unhappy Developer
Happy User
The designer must develop a third
model that combines the simplicity of the user’s mental model
with the technical veracity of the
developer’s implementation
model.
Design Methods Supporting Mental Models
1. SimplicityMental models simplify reality, so interface design should simplify actual software functionality.• Include only needed functions• Make frequently used
functions immediately apparent
• Avoid cluttering the interface with advanced functions
• Organize the interface to fade into the background, allowing users to focus
Threshold of IndignationAt what point does the performance of a software product fail to
compensate for its complexity of use?
Threshold of IndignationThreshold of Indignation
Willingness/Willingness/Ability to PayAbility to Pay
Consumer TrendsAs time progresses, the attitudes of consumers change…
Threshold of IndignationThreshold of Indignation
Willingness/Willingness/Ability to PayAbility to Pay
Individual ConsumersIndividual Consumers
Can’t pay more, but willing Can’t pay more, but willing to endure greater to endure greater
complexity as they become complexity as they become more accustomed to old more accustomed to old
complexity and as features complexity and as features expandexpand
Industrial/Military ConsumersIndustrial/Military Consumers
Willing to continue high Willing to continue high payments as long as payments as long as
technology improves in technology improves in performance and performance and
becomes easier to usebecomes easier to use
Software Industry TrendsAs time progresses, the technological and business sides
of the software industry evolve…
Threshold of IndignationThreshold of Indignation
Willingness/Willingness/Ability to PayAbility to Pay
Business
Exp
ansion
Business
Exp
ansion
Customer base Customer base tends to lose tends to lose
regard for regard for business if prices business if prices decrease, but will decrease, but will
not accept not accept increases without increases without being convinced being convinced of technological of technological
advancesadvancesHig
h-Tech
Pro
ducts
High-T
ech P
roduct
s
Mass production Mass production and and
technological technological progress progress improve improve
performance performance (lessening (lessening
resistance to resistance to complexity) complexity)
while lowering while lowering costscosts
Design Methods Supporting Mental Models
2. FamiliarityAn interface should build on users’ prior knowledge and experience.• Allow users to start quickly and make immediate progress• Consistency in an interface reduces a user’s learning curve
Design Methods Supporting Mental Models
3. AvailabilityAn interface should provide visual cues, reminders, lists of choices, etc., automatically or on request.• People are better at
recognition than at recall
• Avoid relying on the user for file names, previous settings, etc.
Design Methods Supporting Mental Models
4. FlexibilityAn interface should support alternate interaction techniques.• Allow users to choose the
interaction method most appropriate to their situation
• Allow users to use any object in any sequence at any time
• Accommodate a wide range of user skills, physical abilities, interactions, and usage environments
Design Methods Supporting Mental Models
5. FeedbackAn interface should provide complete, continuous feedback regarding the actions taken.• Feedback supporting the
current mental model reinforces it
• Feedback contradicting the current mental model forces it to be modified
Design Methods Supporting Mental Models6. Safety
Users should feel confident in exploring, knowing that they can try an action, view the results, and then undo the action if the result is unacceptable.• Users feel more comfortable
with interfaces in which their actions do not cause irreversible consequences.
Design Methods Supporting Mental Models
7. Perceived AffordancesUsers often conclude what can and cannot be done with an interface just by examining its appearance.• By using real-world representations of objects within its
interface, a software system can provide users with an intuitive sense of the system’s affordances.
WHERE”S THE “ZOOM” ICON?WHERE”S THE “ZOOM” ICON?
PRINTPRINTPREVIEWPREVIEW
DOCUMENTDOCUMENTMAPMAP
ZOOMZOOM