Copyright 1998. David Gilmore, Elizabeth Churchill, & Frank Ritter

How & When do we apply Human Factors ideas?

The design cycle: Introducing design as an activity

What is design?

Some general points

 

Objectives for design

 

Some views of the design process

Design as a general process model

a design problem arises:

Design as problem solving

designer evaluates different options within a design space, considering trade-offs

 

A definition from an expert

J. Christopher Jones Design Methods: Seeds of Human Futures (1970)

"The fundamental problem is that designers are obliged to use current information to predict a future state that will not come about unless their predictions are correct. The final outcome of designing has to be assumed before the means of achieving it can be explored: the designers have to work backwards in time from an assumed effect upon the world to the beginning of a chain of events that will bring the effect about."

 

And it gets worse

 

"If, as is likely, the act of tracing out the intermediate steps exposes unforeseen difficulties or suggests better objectives, the pattern of the original problem may change so drastically that the designers are thrown back to square one" (Jones).

 

Contrast designing with scientific reasoning

The process of design is not linear

 

Design is very different from analytical techniques that lie at root of scientific reasoning

 

Design as an ill structured problem (Herbert Simon, 1984)

 

Design as a 'wicked problem' (Rittel and Webber, 1984)

Properties of wicked problems

no single convergent solution

no definitive formulation

difficulties of specifying needs

specification and design hard to separate clearly

understanding the problem is bound up with the ideas that we have about solving it

no stopping rules

solutions to wicked problems are not true or false but good or bad

lack of stopping rules = lack of any certain criteria that can be used to establish when the solution to a problem has been found such that any further work will not be able to improve upon it. e.g. software: lack of any quality measures that can be used to establish that any one system is the 'best' one possible

therefore

life cycle models etc, where the task of specification is followed neatly by that of design is rarely a realistic description of actual practices

software designs usually come in shades of grey in that there are usually no right or wrong solutions or structures

every wicked problem can be considered to be a symptom of another problem. Resolving discrepancy or inconsistency in a design may pose another problem in its turn.

e.g. in writing a computer program a choice of data structure that helps with resolving one problem may well present an entirely new difficulty later.

 

E.g. designing real time systems:

it may be possible to organise the system so that it can produce a response to one type of event within some required interval but the way that this is achieved may place such constraints upon the operation of the system that it will then be unable to meet some other demand in an adequate time.

 

Models of design process

frameworks (for software development)

aim is to produce plans so that software production can proceed

idea is to influence organisation of software development

2 types of design process structure

(1) life cycle forms, e.g. 'software life cycle'

e.g. 'waterfall model' (Royce, 1970)

pros

cons

e.g.

* when design models become enshrined in procedures there is always a danger that such models may constrain creativity rather than support it

* rigidity of procedures

* problems with formalisation

* job content issues: division of tasks

* communication problems

* distance from users

* distance from requirements specification

view life-cycle models as descriptive frameworks rather than as prescriptive frameworks

(2) incremental forms

e.g.

User centred design

Human centred design

 

pros

cons

 

Questions to ask in the design process

Validation: are we building the right product?

needs analysis

Verification: are we building the product right?

test, evaluate, iterate, know your user