hcpro lecture11 (21.2.2014) · 2014-03-13 · iso 9241-210 as a process instruction ... user...

35
http://www.cs.tut.fi/ihte HCPro Lecture11 (21.2.2014): Software engineering and software processes in relation to human centered design Jarmo Palviainen

Upload: others

Post on 20-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

http://www.cs.tut.fi/ihte

HCProLecture11 (21.2.2014):

Software engineering and software processes in relation tohuman centered design

Jarmo Palviainen

Page 2: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Topics of the lecture

Human centered process• ISO 9241-210 (and a bit 9241-11)• Example methods (oldies) (PD, TRUMP, CD)

Software processes• Example methods (XP, RUP)

HCD-process in relation to softwareengineering

Page 3: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Background of ISO 9241-210ISO 9241 is a ”standard group”, consisting offollowing parts:

• Part 1: General introduction• Part 2: Guidance on task requirements• Part 3: Visual display requirements• Part 4: Keyboard requirements• Part 5: Workstation layout and postural

requirements• Part 6: Guidance on the work environment• Part 9: Requirements for non-keyboard

input devices• Part 11: Guidance on usability• Part 12: Presentation of information• Part 13: User guidance• Part 14: Menu dialogues• Part 15: Command dialogues• Part 16: Direct manipulation dialogues• Part 17: Form filling dialogues

• Part 20: Accessibility guidelines forinformation/communication technology(ICT) equipment and services

• Part 100: Introduction to standardsrelated to software ergonomics

• Part 110: Dialogue principles• Part 151: Guidance on World Wide Web

user interfaces• Part 171: Guidance on software

accessibility• Part 210: Human-centred design for

interactive systems• Part 300: Introduction to electronic visual

display requirements• Part 302: Terminology for electronic

visual displays• ETC…..

Page 4: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

ISO 9241-210

• ISO definition of human-centred design:approach to systems design and development that aims tomake interactive systems more usable by focusing on theuse of the system and applying human factors/ergonomicsand usability knowledge and techniques

• Target group: ”those managing design processes”• Describes human centered design process

• ”from a higher level of abstraction than most methodology books”[Jokela & al]

• describes usability at a level of principles, planning andactivities (process oriented vs. product oriented)

Page 5: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

ISO 9241-210 as a process instruction

• Does NOT take a stand on what methods are used• Describes in general level what is documented and

how• Based on ISO 9241-11, in a project one needs to

determine the following:1. The users of the system,2. Goals of users,3. Environments of use4. Measures of effectiveness, efficiency and satisfaction.

Page 6: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

ISO9241 process descriptions

• The standard does notdescribe process(es)particularly well

• ”activities”• products (documentation)

Phase products process

Recognizing users xx -

Defining user goals - -

Specifying contexts ofuse

xx x

Specifying measuresof usability

x -

xx = describedx = a limited description- = not described

[Jokela & al]

Page 7: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Examples of outputs from HCD activities [9241-210]

Activities Outputs from HCDUnderstand and specify thecontext of use

Context of use description

Specify the user requirements Context of use specificationUser needs descriptionUser requirements specification

Produce design solutions to meetthese requirements

User interaction specificationUser interface specificationImplemented user interface

Evaluate the designs againstrequirements

Evaluation resultsConformance test resultsLong-term monitoring results

Page 8: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

PRINCIPLES OF HCD [ISO9241-210]

1. The design is based upon an explicit understandingof users, tasks and environments.

2. Users are involved throughout design anddevelopment.

3. The design is driven and refined by user-centredevaluation.

4. The process is iterative.5. The design addresses the whole user experience.6. The design team includes multidisciplinary skills

and perspectives.

Page 9: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Human centered design methods

• They should guarantee human centredness in theprocess and some optimization in the process (shouldbe able to avoid known problems)

• Pattern of thinking: A good process -> a decent product• Coverage may be more or less of the whole process

from feasibility study to the introduction of the product

Page 10: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Selected methods and approaches

1970 1980 1990 2000

”1971”Participatory

design

1977 Jointapplication

developement

TRUMP

1997Contextual

design

1999 ”Cooperdesign”

1981 Softsystems

methodology

ISO13407

1993 NielsenUsability

Engineering

2005Rapid

Contextualdesign

UIdesign…

Page 11: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Participatory Design (PD)

• One of the first methods aiming for usercenteredness

• Based on Scandinavian tradition on trade unions(Norway, Sweden)

• Academically interesting, functioned as basis formany new methods

• Several variations, all of them were:• Involving the users into the design processs• Using common, low tech tools• Focusing on user tasks – not so much on user interface

design• Producing a specification that essentially reduced the

time used on designing and testing the user interface

Page 12: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Participatory Design..

• Is based on observing the users with master-apprentice-model

• Users participate the design team’s sessions and tellabout their work, context and tasks

• What currently goes well and what does not

1. Definingwork flows

2. Definingtask objects

3. Designinguser interface

Page 13: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Joint Application Design

• Was developed in IBM to support the traditionaldesign process

• Efficiency oriented – popular in industry• Suitable for supporting the start of the project,

analysis and design• JAD was carried out as an indipendent piece of

project• Otherwise the project was done in the traditional way

Page 14: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Joint Application Design..

• In JAD the user is ”one of thedesigners”• Based on a workshop with specifiedstructure

• JAD workshop should include peoplefrom different departmets

• Team work encouraged• Produces a document defining work

flows, dislays and the reports for themanagement information system

• Also interviews may be used•• All phass are done in the earlyphase, before technical design

1. Project set up

2. Study/research

3. Preparations

4. JAD workshop

5. End report

Page 15: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Contextual Design

• Developed by Karen Holtzblatt & Hugh Beyer• Emphasis on the beginning of the development project• Detailed instructions for different stages• The design team carries out a remarkable analysis and

test phase before going to implementation• UI design is started only at phase 5• Implementation is started in phase 7• The natural structure of the observed work!

• Often only some parts are applied, the first phase oftenjust alone

Page 16: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Contextual Design..

1. Contextual Inquiry

2. Work Modeling

3. Consolidation

4. Work Redesign

5. User EnvironmentDesign

6. Mock-up and Testwith Customers

7. Putting into Practise

The next phase is basedon the previous

Page 17: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Esimerkki lähteeestä:Applying Contextual Design to

Build a Course Scheduler:A Case StudyD’Amico et al,

Proceedings of the 41stACM Southeast Conference

2003 ACM

Page 18: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

TRUMP..

• Fairly simple method covering the whole productdevelopment process

• User centered & efficient• Based on the old human centered standard ISO

13407• Ten stages + a evaluation of capabilities• Recommended to go through all stages• Shortened version: stages 1,6 and 9.

Page 19: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Trump [Serco]

Page 20: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Topics of the lecture

Human centered process• ISO 9241-210 (and a bit 9241-11)• Example methods (oldies) (PD, TRUMP, CD)

Software processes• Example methods (XP, RUP)

HCD-process in relation to sofwareengineering

Page 21: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Software lifecycle costs

What thoughts does this diagram provoke?

Source: Haikala & Märijärvi,Ohjelmistotuotanto, 2002

Maintenance67 %

Testing 8 %

Integration 7 %

Coding 5%

Design 6 %

Requirements specification 5 %Requirements 2 %

Page 22: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Software engineering methods

• Iterative vs. e.g. waterfall• There has been talk about (r)evolutive software

development

• Agile• Heavy• Open Source

• Iterativeness has been increasing (for the last~15 years)

Page 23: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Approaches in software projects

Semi heavy Heavy

Light Semi heavy

Size and complexity of the product

The

size

and

com

plex

ityof

the

proj

ect

orga

niza

tion

Source: Pasi Kantelinen, OHKO XIX 2003

Page 24: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Agile methods (ketterät menetelmät)

XP = eXtreme Programming (”dead”)

Scrum (the most used currently (but dying J))

Crystal…Lean software development

More information http://www.agileAlliance.org/

Page 25: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Manifesto for Agile Software Development

We are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:

Individuals and interactions over processes and tools

Working software over comprehensive documentation

Customer collaboration over contract negotiation

Responding to change over following a plan

That is, while there is value in the items on

the right, we value the items on the left more.

http://agilemanifesto.org/

Page 26: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Extreme Programming

Continuous designSmall releasesTest orientednessStoriesSimple design solutionsPair programmingCollective ownershipCustomer is always presentNo working overtime

Top-down (UCD) vs. bottom-up (XP)

Page 27: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Lean software development –Lean principles

1. Eliminate waste2. Amplify learning3. Decide as late as possible4. Deliver as fast as possible5. Empower the team6. Build integrity in7. See the whole

Page 28: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

”Heavy” process models

• CMM (Capability Maturity Model)• Basic level = chaos• Repeatable = basic methods• Defined = organization is developing its processes• Controlled = organization has started colleting data about it’s

processes• Optimizing = data is used systematically

• RUP (Rational Unified Process)

Page 29: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Rational Unified process

Inception Elaboration Construction Transition

- Tuotteen ominaisuudet- Alustavat mallit- Alustava tuotearkkitehtuuri- Tarvittaessa proto- Riskit- Alustava projektisuunnitelma- Onnistumiskriteerit

- Täydennetyt mallit- Toteutettu toimiva perusarkkitehtuuri- Arkkitehtuurikuvaus- Riskit- Seuraavan vaiheen projektisuunnitelma- Onnistumiskriteerit- Alustava käyttöohje

- Lähes täydelliset mallit- Beta-versio- Arkkitehtuurikuvaus- Seuraavan vaiheen projektisuunnitelma- Onnistumiskriteerit- Käyttöohje

- Installointivalmis ohjelmisto- Byrokratiadokumentit- Täydelliset mallit- Arkkitehtuurikuvaus- Käsikirjat- WWW-palvelut yms.

Iter. Iter.Iter. Iter. Iter.Iter.Iter.Iter. Iter.Iter.

Iter. Iter.Iter.

Page 30: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

RUP continues

Inception Elaboration Construction Transition

Requirements

Analysis

Design

Implementation

Test

iter. 1 iter. 2 ... ... ... .... .... .... ...

Page 31: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

Topics of the lecture

Human centered process• ISO 9241-210 (and a bit 9241-11)• Example methods (oldies) (PD, TRUMP, CD)

Software processes• Example methods (XP, RUP)

HCD-process in relation to sofwareengineering

Page 32: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

XP /Agile vs. HCD (Contextual Design)

Bottom-up Top-down

Customer centered User (human) centered

Strongly iterative Strongly iterative

Hi-fi prototypes Low-fi prototypes

Focus on implementation,testability, functionality

Focus on task flows, concept,navigation

Considering implementation andtestability is more based on”individuals”

Scenarios / use stories Scenarios

Page 33: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

RUP vs. HCD (Contextual Design)

Top-down Top-down

Customer centered User (human) centered

Strongly iterative Strongly iterative

Prototyping is considered, butthe nature of prototypes is notdefined

Low-fi prototypes

Focus moves from”businesscases” to user interface designto implementation

Focus on task flows, concept,navigation

Considering implementation andtestability is more based on”individuals”

Scenarios Scenarios

Page 34: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

HCD + traditional waterfall

• Simple to apply• HCD-activities carried out mainly during feasibility and design

phases• Evaluation at test phase

• Traditional HCD process problem: can it be fixed radically at this stage anymore

• On the other hand, fundamental low-prototyping is allowed in the design phase• Can be applied to products where interactions are simple and the

system is not very dynamic• Waterfall has been so last season for >20 years, but it’s still very

popular J

Page 35: HCPro Lecture11 (21.2.2014) · 2014-03-13 · ISO 9241-210 as a process instruction ... User interaction specification User interface specification ... Long-term monitoring results

References

• ISO 9241-210, ISO 9241-11, ISO 13407• Timo Jokela, Netta Iivari, Juha Matero, Minna Karukka. The Standard

of User-Centered Design and the Standard Definition of Usability:Analyzing ISO 13407 against ISO 9241-11

• Hugh Beyer and Karen Holtzblatt. Contextual Design: DefiningCustomer-Centered Systems. Morgan Kaufmann, 1998

• Nielsen, Usability Engineering, Morgan Kaufmann, 1993• Xristine Faulkner, Usability Engineering, 1999

We used to read this but…now its just highlyrecommendable:

• Introduction to Agile Usability - User Experience Activitieson Agile Development Projects

• http://www.agilemodeling.com/essays/agileUsability.htm