Software Process and HCI

advertisement
Virtual University
Human-Computer Interaction
Lecture 16
HCI PROCESS AND Methodologies
Imran Hussain
University of Management and Technology (UMT)
1
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
In the Last Lecture
•
•
•
•
•
•
•
•
•
2
HCI Process and Methodologies
Problems with digital devices and products
Significance of process
Key factors to be consider
Quality and Usability
Usability in process
Evolution of software development process
Design
Difference between interface design and interaction design
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
In Today’s Lecture
• Life-cycle Models for Interactive systems
–
–
–
–
–
–
3
Waterfall Model
Spiral Model
RAD Model
Star Life-cycle Model
Usability engineering Model
Goal Directed Model
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Design Approach
Iterative and incremental approach towards design
4
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Lifecycle Models
• Software lifecycle model consists of different stages and phases
from start to completion.
5
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Various Models for SW Lifecyles
• “Historical Models”
– Waterfall model
– Spiral model
• Government Standards
– DoD standards: 2167, 2167A
– FAA standard DO-178A, DO-178B
• Corporate “Standards” or common practices
– Many companies define their own.
– Perhaps using:
• Unified Process (was the Rational U.P.)
• Extreme Programming
6
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Why Learn About Process Now?
• There are general principles of about:
–
–
–
–
7
What we do at various stages of SW development
How to inject quality into SW
How to avoid early problems that cause huge problems later
Recognize that SE is not just writing code
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Waterfall Model
• Early, simple model
–
–
–
–
Do the phases shown before, in order
Complete one phase before moving on to the next
Produce a document that defines what to do at the start of each phase
At end of each stage, a document or other work-product is produced:
requirements doc, design doc, code, etc.
– Little or no iteration (going back to previous phase)
• The order of phases/stages is generally “right”, but…
– Following the waterfall precisely is not effective in real development
practice.
8
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Traditional ‘Waterfall’ Lifecycle
Requirements
analysis
Design
Code
Test
Maintenance
9
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Traditional ‘Waterfall’ Lifecycle
Requirements
analysis
Design
Code
Test
Maintenance
10
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Activities in the Life Cycle
• Requirements specification
– Designer and customer try capture what the system is expected to
provide can be expressed in natural language or more precise
languages, such as a task analysis would provide
• Architectural design
– High-level description of how the system will provide the services
required factor system into major components of the system and how
they are interrelated needs to satisfy both functional and non-functional
requirements
• Detailed design
• Refinement of architectural components and interrelations to identify
modules to be implemented separately the refinement is governed by
the non-functional requirements
11
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Flaws of the Waterfall
• Need iteration and feedback
– Things change (especially requirements)
– Change late requires change in earlier results
– Often need to do something multiple times, in stages
• As described, it’s very rigid
– Not realistic to freeze results after each phase
• The model does not emphasize important issues
– Risk management
– Prototyping
– Quality
12
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
A Lifecycle for RAD (Rapid Applications Development)
Project set-up
JAD workshops
Iterative design
and build
Engineer and
test final prototype
Implementation
review
13
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Spiral Model (Barry Boehm)
• Important features:
— Risk analysis
— Prototyping
— Iterative framework allowing ideas to be checked and evaluated
— Explicitly encourages alternatives to be considered
— Good for large and complex projects but not simple ones
14
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Spiral Lifecycle Model
15
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Features of Win Win Spiral Model
• Identification of stakeholders
• Stakeholder includes user
• Win condition of each stakeholder was specified
16
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
HCI in the Software Process
• Software engineering and the design process for interactive
systems
• Usability engineering
• Iterative design and prototyping
• Design rationale
17
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
The Software Lifecycle
• Software engineering is the discipline for understanding the software
design process, or life cycle
• Designing for usability occurs at all stages of the life cycle, not as a
single isolated activity
18
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
A Simple Interaction Design Model
Identify needs/
establish
requirements
(Re)Design
Evaluate
Build an
interactive
version
Final product
Exemplifies a user-centered design approach
19
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
The Star Lifecycle Model
• Suggested by Hartson and Hix (1989)
• Important features:
— Evaluation at the centre of activities
— No particular ordering of activities. Development may start in any one
— Derived from empirical studies of interface designers
20
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
The Star Model (Hartson and Hix, 1989)
task/functional
analysis
Implementation
Prototyping
Evaluation
Requirements
specification
Conceptual/
formal design
21
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Usability Engineering Lifecycle Model
• Reported by Deborah Mayhew
• Important features:
–
–
–
–
–
22
Holistic view of usability engineering
Provides links to software engineering approaches, e.g. OOSE
Stages of identifying requirements, designing, evaluating, prototyping
Can be scaled down for small projects
Uses a style guide to capture a set of usability goals
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Usability Engineering Lifecycle Model
Word document is provided for the figure required at this page
23
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Goal-directed Design
Product
Viability
24
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Probability of customer
Adoption (once the product
Has launched)
•
User Plan
1.
Design
2.
schedule
3.
Form and
behavior
spec
Probability of
Sustaining business
(up to launch and
Long enough after
to build revenue)
Probability of
Technical completion
(delivery)
Overall probability
Of product success
User Model
1.
2.
Technology Model
1.
Technology components
Context
•
Historical
•
Social
•
Economic
User
•
•
•
2.
Competitors
3.
Build vs buy
buy vs open source
Demographics
Psychographics
Technographics
3.
Values
4.
Goals
5.
scenarios
Business Model
1.
Funding model
2.
Income/expense projections etc.
Business Plan
1.
Marketing plan
2.
Launch plan
3.
Distribution plan
25
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
User Research
• Qualitative nature
– Market Research and Market segmentation
– Market research gives user survey data.
• Quantitative data is useful for selling a product but not useful for
providing information how people use the product.
26
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Gap between user research and ultimate design solution
27
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Reason for Gap
Goal-directed methods are not being used
28
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
• Goals of users
• Needs of business
• Constraints of technology
29
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Research is carried out by researchers instead of designers
30
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Goal-directed Design
Research
Modeling
Requirements
Framework
Refinement
User and the
domain
Users and
use context
Definition of user,
business& technical needs
Definition of design
structure & flow
Of behavior, form&
content
31
Virtual University - Human Computer Interaction
© Imran Hussain | UMT
Development Stages
Initiate
32
Design
Virtual University - Human Computer Interaction
Code
Test
Ship
© Imran Hussain | UMT
Download