0% found this document useful (0 votes)
101 views

Lecture 2 Hci in The Software Process

This document discusses software engineering and the design process for interactive systems. It covers two main models of the software lifecycle: the waterfall model and iterative design/prototyping. The waterfall model involves linear stages like requirements, design, implementation, and testing. Iterative design uses prototypes, user testing, and repeated cycles of design, implementation, and testing to develop requirements. Both approaches have advantages and disadvantages depending on factors like how well understood the problem and interaction paradigm are. The document emphasizes that many real-world systems blend elements of different approaches.

Uploaded by

khang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
101 views

Lecture 2 Hci in The Software Process

This document discusses software engineering and the design process for interactive systems. It covers two main models of the software lifecycle: the waterfall model and iterative design/prototyping. The waterfall model involves linear stages like requirements, design, implementation, and testing. Iterative design uses prototypes, user testing, and repeated cycles of design, implementation, and testing to develop requirements. Both approaches have advantages and disadvantages depending on factors like how well understood the problem and interaction paradigm are. The document emphasizes that many real-world systems blend elements of different approaches.

Uploaded by

khang
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Agenda

• Software engineering and the design process


Lecture 2 for interactive systems

• Iterative design and prototyping


HCI in the software • When is each best?
process • Self study – read and take your own notes
Chapter 6 – Usability engineering

– Design rationale

The software lifecycle The waterfall model


Requirements
specification
• Software engineering is the discipline for
understanding the software design process, or Architectural
life cycle design

Detailed
• Designing for usability occurs at all stages of design

the life cycle, not as a single isolated activity


Coding and
unit testing
• There are many models of the software life
cycle we will look at the 2 main ones Integration

– Waterfall
and testing

– Prototyping
Operation and
maintenance
Detailed design
Activities in the life cycle
– Detailed design of the interface
•Requirements specification
–designer and customer try – Move from informal to formal specification
capture what the system is
expected to provide can be
expressed in natural language
or more precise languages,
• Separation of layers
such as a task analysis would – A layered approach to software development
provide
will provide for more flexibility
–Informal design and scenario • Data
based design will result in • Logic
better requirements analysis
• Interface

The life cycle for interactive


Testing
systems
• Testing is not only about functionality of Requirements cannot assume a linear
code sequence of activities
specification

• Usability testing Architectural as in the waterfall model


design
– There are some basics that are nearly
always important Detailed
design
• Layout
• Language Coding and
• Number of click/steps to perform task unit testing

• Choose rather than remember


Integration
– More detail in weeks 7 & 8 lots of feedback! and testing

Operation and
maintenance
Iterative design and prototyping

• Iterative design overcomes inherent problems • Prototypes


of incomplete requirements – simulate or animate some features of intended
system
– different types of prototypes
Requirements • throw-away
• incremental
• evolutionary

Review Design • Management issues


– time
– planning
– non-functional features
Implement – contracts

Techniques for prototyping Research example


Storyboards
• We wanted to build a paperless
need not be computer-based
can be animated assignment grading product with pen
Limited functionality simulations annotation of assignments.
some part of system functionality provided by designers – New paradigm
tools like HyperCard are common for these
– Few studies
Wizard of Oz technique
– Technical challenges
Warning about iterative design
design inertia – early bad decisions stay bad • Build a prototype
diagnosing real usability problems in prototypes….
…. and not just the symptoms
Waterfall or Prototype Waterfall or prototype

• Waterfall • Prototype • It doesn’t have to be a one or the other


– Interaction paradigm – The interaction paradigm decision
‘standard’ and well new or poorly
understood? understood? • Many systems are a blend
– The problem is well – The problem definition is – With some parts are prototyped to elicit
understood? incomplete or poorly
requirements
defined?
– Data centric systems – Interface centric systems • There isn’t one ‘best way’
• games
• Information systems
• Modelling
• Nor is there a ‘silver bullet’
• Data warehouse
• Design tools

Summary

The software engineering life cycle


– distinct activities and the consequences for
interactive system design

Design rationale
– recording design knowledge
– process vs. structure

You might also like