201
Phd course on Formal modelling and analysis of interactive systems Part 2 Formal Tools and HCI Concepts CSP Process Algebra, HCI Concepts and Modelling Human Behaviour Antonio Cerone United Nations University International Institute for Software Technology Macau SAR China email: [email protected] web: www.iist.unu.edu A. Cerone, UNU-IIST – p.1/70

Part 2 Formal Tools and HCI Concepts

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Phd course on

Formal modelling and analysis of interactive systems

Part 2Formal Tools and HCI ConceptsCSP Process Algebra, HCI Concepts and Modelling Human Behaviour

Antonio Cerone

United Nations University

International Institute for Software Technology

Macau SAR China

email:[email protected]

web:www.iist.unu.edu

A. Cerone, UNU-IIST – p.1/70

ContentsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

1. Formal Tools and ATM Example

2. HCI Concepts

3. Modelling Human Behaviour

4. ATM Example Revisited

5. References

A. Cerone, UNU-IIST – p.2/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Tools

A. Cerone, UNU-IIST – p.3/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

-

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

-

- abstract

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

-

- abstract

-nd/prob/stoch

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

-

- abstract

-nd/prob/stoch

- verification

A. Cerone, UNU-IIST – p.4/70

Formal MethodsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

TraditionalMathematical Modelling Formal Methods

model�detailed

behaviour�deterministic

use�simulation

-

- abstract

-nd/prob/stoch

- verification

?Formal Verification

A. Cerone, UNU-IIST – p.4/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

?mathematical

meaning(semantics)

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

?mathematical

meaning(semantics)

Formality

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

?mathematical

meaning(semantics)

Formality

?formal

reasoningprove properties

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

?mathematical

meaning(semantics)

Formality

?formal

reasoningprove properties

PPPPPPPPPqAbstraction

A. Cerone, UNU-IIST – p.5/70

FormalityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formal Specification Language���������)

precisesyntax

?unambiguous

?mathematical

meaning(semantics)

Formality

?formal

reasoningprove properties

PPPPPPPPPqAbstraction

?high-level view

ignoreimplementation details

A. Cerone, UNU-IIST – p.5/70

Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• event-based formal specification languages

A. Cerone, UNU-IIST – p.6/70

Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• event-based formal specification languages• basic entities: actions and processes

A. Cerone, UNU-IIST – p.6/70

Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• event-based formal specification languages• basic entities: actions and processes• processes

A. Cerone, UNU-IIST – p.6/70

Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• event-based formal specification languages• basic entities: actions and processes• processes

• evolve by performing actions

A. Cerone, UNU-IIST – p.6/70

Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• event-based formal specification languages• basic entities: actions and processes• processes

• evolve by performing actions• are composed using operators

A. Cerone, UNU-IIST – p.6/70

Examples of Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

CSP — Communicating Sequential ProcessesCCS — Calculus of Communicating SystemsCirCal — Circuit CalculusLotos — Language of Temporal Ordering SpecsACP — Algebra of Communicating Processes

A. Cerone, UNU-IIST – p.7/70

Examples of Process AlgebrasFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

CSP — Communicating Sequential ProcessesCCS — Calculus of Communicating SystemsCirCal — Circuit CalculusLotos — Language of Temporal Ordering SpecsACP — Algebra of Communicating Processes

A. Cerone, UNU-IIST – p.7/70

Concurrency WorkbenchFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Concurrency Workbench of New Century(CWB-NC) supports

A. Cerone, UNU-IIST – p.8/70

Concurrency WorkbenchFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Concurrency Workbench of New Century(CWB-NC) supports

• modelling using several process algebras:CCS and some extensions, Lotos, CSP

• simulation• model-checking

A. Cerone, UNU-IIST – p.8/70

Starting CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

shell>

A. Cerone, UNU-IIST – p.9/70

Starting CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

shell> cwb-nc csp

The Concurrency Workbench of the New Century(Version 1.2 --- June, 2000)

cwn-nc>

A. Cerone, UNU-IIST – p.9/70

Starting CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

shell> cwb-nc csp

The Concurrency Workbench of the New Century(Version 1.2 --- June, 2000)

cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc>

A. Cerone, UNU-IIST – p.9/70

Starting CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

shell> cwb-nc csp

The Concurrency Workbench of the New Century(Version 1.2 --- June, 2000)

cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc> help

Available CWB-NC commands are:caching {on | off}cat identifiercd directory...

A. Cerone, UNU-IIST – p.9/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Automatic Teller Machine (ATM)Example

A. Cerone, UNU-IIST – p.10/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Informal Specification

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

A. Cerone, UNU-IIST – p.11/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Informal Specification

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

Then the machine.• delivers the cash to the user;• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.

A. Cerone, UNU-IIST – p.11/70

Modelling• extract from the informal description the

actions that define the evolution of the systemand label them with actions of the algebra

A. Cerone, UNU-IIST – p.12/70

Modelling• extract from the informal description the

actions that define the evolution of the systemand label them with actions of the algebra

• give a precise and unambigous interpretationto each identified action

A. Cerone, UNU-IIST – p.12/70

Modelling• extract from the informal description the

actions that define the evolution of the systemand label them with actions of the algebra

• give a precise and unambigous interpretationto each identified action, taking into account• which party (user or machine) performs the

action• whether and how the other party interacts

A. Cerone, UNU-IIST – p.12/70

Modelling• extract from the informal description the

actions that define the evolution of the systemand label them with actions of the algebra

• give a precise and unambigous interpretationto each identified action, taking into account• which party (user or machine) performs the

action• whether and how the other party interacts

• define the dynamic evolution of the system byapplying the operators of the algebra to theactions

A. Cerone, UNU-IIST – p.12/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Informal Specification

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

Then the machine.• delivers the cash to the user;• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.

A. Cerone, UNU-IIST – p.13/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formalisation

An ATM machine requires a user to• insert a bank card;

action card in, performed by user,machine “swallows” the card

• enter the right pin for that card

Then the machine.• delivers the cash to the user;• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.A. Cerone, UNU-IIST – p.14/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formalisation

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

action pin, performed by user,machine accepts the pin

Then the machine.• delivers the cash to the user;• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.A. Cerone, UNU-IIST – p.15/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formalisation

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

Then the machine.• delivers the cash to the user;

action cash out, performed by machine• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.A. Cerone, UNU-IIST – p.16/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formalisation

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

Then the machine.• delivers the cash to the user;• returns the bank card to the user;

action card out, performed by machine• waits that the user has collected cash and

card before being ready for a new transaction.A. Cerone, UNU-IIST – p.17/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Formalisation

An ATM machine requires a user to• insert a bank card;• enter the right pin for that card

Then the machine.• delivers the cash to the user;• returns the bank card to the user;• waits that the user has collected cash and

card before being ready for a new transaction.actions coll cash, coll card performed by userdetected by the machine A. Cerone, UNU-IIST – p.18/70

ATM Machine ActionsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• card in: user inserts card andmachine swallows it

• pin: user enters pin andmachine accepts it

• cash out: machine delivers cash to user• card out: machine returns card to user• coll cash: user collects cash and

machine detects it• coll card: user collects cash and

machine detects it• ready: machine is ready

A. Cerone, UNU-IIST – p.19/70

CSP Prefix OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Prefix Operator (in CWB-NC: ->) defines thesequentialisation of two action, that is, in CSPterminology, that the first action prefixes thesecond.

A. Cerone, UNU-IIST – p.20/70

CSP Prefix OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Prefix Operator (in CWB-NC: ->) defines thesequentialisation of two action, that is, in CSPterminology, that the first action prefixes thesecond.

Example:card in -> pin

Action card in prefixes action pin

A. Cerone, UNU-IIST – p.20/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

insert a bank card

card in

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����

enter the right pin for that card

card in -> pin

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����

delivers the cash to the user

card in -> pin -> cash out

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����-coll cash ����

waits that the user has collected cash

card in -> pin -> cash out-> coll cash

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����-coll cash ����

?

card out

����

returns the bank card to the user

card in -> pin -> cash out-> coll cash -> card out

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����-coll cash ����

?

card out

����-coll card ����

waits that the user has collected card

card in -> pin -> cash out-> coll cash -> card out -> coll card

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����-coll cash ����

?

card out

����-coll card ����

� �6 ready

be ready for a new transaction

Machine = card in -> pin -> cash out-> coll cash -> card out -> coll card-> ready -> Machine

A. Cerone, UNU-IIST – p.21/70

Example: ATM MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6cash out

����-coll cash ����

?

card out

����-coll card ����

� �6 ready

Machine = ready -> card in -> pin-> cash out -> coll cash -> card out-> coll card -> Machine

A. Cerone, UNU-IIST – p.21/70

ATM: CWB-NC CodeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

CSP Model

proc Machine = ready -> card in-> pin -> cash out -> CashGiven

proc CashGiven = coll cash-> card out -> CardReturned

proc CardReturned = coll card -> Machine

A. Cerone, UNU-IIST – p.22/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc>

A. Cerone, UNU-IIST – p.23/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc>

A. Cerone, UNU-IIST – p.23/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc> sim MachineMachine1: -- ready --> card in->cash out->CashGivencwb-nc-sim>

A. Cerone, UNU-IIST – p.23/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc> sim MachineMachine1: -- ready --> card in->cash out->CashGivencwb-nc-sim>1card in->cash out->CashGiven1: -- card in --> cash out->CashGivencwb-nc-sim>

A. Cerone, UNU-IIST – p.23/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc> sim MachineMachine1: -- ready --> card in->cash out->CashGivencwb-nc-sim>1card in->cash out->CashGiven1: -- card in --> cash out->CashGivencwb-nc-sim>quit

Execution time (user,system,gc,realcwb-nc>

A. Cerone, UNU-IIST – p.23/70

Simulation with CWB-NCFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

...cwn-nc> load atm-machine.cspExecution time (user,system,gc,real):(0.00cwn-nc> sim MachineMachine1: -- ready --> card in->cash out->CashGivencwb-nc-sim>1card in->cash out->CashGiven1: -- card in --> cash out->CashGivencwb-nc-sim>quit

Execution time (user,system,gc,realcwb-nc> quitshell>

A. Cerone, UNU-IIST – p.23/70

ATM: User’s PerspectiveFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Task Knowledge• need to have a bank card and to know the

pin• bank card must be inserted before entering

the pin• bank card and cash must be collected as

soon as they come out

A. Cerone, UNU-IIST – p.24/70

ATM: User’s PerspectiveFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Task Knowledge• need to have a bank card and to know the

pin• bank card must be inserted before entering

the pin• bank card and cash must be collected as

soon as they come out• Possible User Expectations

• cash delivered before bank card returned

A. Cerone, UNU-IIST – p.24/70

ATM: User’s PerspectiveFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Task Knowledge• need to have a bank card and to know the

pin• bank card must be inserted before entering

the pin• bank card and cash must be collected as

soon as they come out• Possible User Expectations

• cash delivered before bank card returned• cash not delivered until bank card collected

A. Cerone, UNU-IIST – p.24/70

ATM: User’s PerspectiveFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Task Knowledge• need to have a bank card and to know the

pin• bank card must be inserted before entering

the pin• bank card and cash must be collected as

soon as they come out• Possible User Expectations

• cash delivered before bank card returned• cash not delivered until bank card collected• bank card returned before cash delivered• bank card not returned until cash collectedA. Cerone, UNU-IIST – p.24/70

Task KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• actions needed to perform it• preconditions of such actions• possibly structure of the set of actions (if any)

A. Cerone, UNU-IIST – p.25/70

Task KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• actions needed to perform it• preconditions of such actions• possibly structure of the set of actions (if any)

independently of a specificcomputer/machine/interface

A. Cerone, UNU-IIST – p.25/70

User ExpectationsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

May depend on• expertise acquired through use/training

A. Cerone, UNU-IIST – p.26/70

User ExpectationsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

May depend on• expertise acquired through use/training=⇒ user can consciously react to anexpectation failure

A. Cerone, UNU-IIST – p.26/70

User ExpectationsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

May depend on• expertise acquired through use/training=⇒ user can consciously react to anexpectation failure

• mental model of the way the machine works

A. Cerone, UNU-IIST – p.26/70

User ExpectationsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

May depend on• expertise acquired through use/training=⇒ user can consciously react to anexpectation failure

• mental model of the way the machine works=⇒ user may not be able to consciously reactto an expectation failure

A. Cerone, UNU-IIST – p.26/70

User ExpectationsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

May depend on• expertise acquired through use/training=⇒ user can consciously react to anexpectation failure

• mental model of the way the machine works=⇒ user may not be able to consciously reactto an expectation failure

depend on specificcomputers/machines/interfacesnormally used by the user

A. Cerone, UNU-IIST – p.26/70

ATM: User’s Task KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• need to have a bank card and to know the pinnot modeled

• bank card must be inserted before enteringthe pincard in -> pin

• bank card and cash must be collected as soonas they come out

A. Cerone, UNU-IIST – p.27/70

ATM: User’s Task KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• need to have a bank card and to know the pinnot modeled

• bank card must be inserted before enteringthe pincard in -> pin

• bank card and cash must be collected as soonas they come outchoice between first collecting• card• cash

A. Cerone, UNU-IIST – p.27/70

CSP Ext Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The External Choice (in CWB-NC: []) defines achoice between two possible ordering of actions,whereby the choice is driven by an externalprocess.

A. Cerone, UNU-IIST – p.28/70

CSP Ext Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The External Choice (in CWB-NC: []) defines achoice between two possible ordering of actions,whereby the choice is driven by an externalprocess.

Example:(coll cash -> coll card -> ...) [](coll card -> coll cash -> ...)

Choice between action coll cash and actioncoll card

A. Cerone, UNU-IIST – p.28/70

CSP Ext Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The External Choice (in CWB-NC: []) defines achoice between two possible ordering of actions,whereby the choice is driven by an externalprocess.

Example:(coll cash -> coll card -> ...) [](coll card -> coll cash -> ...)

Choice between action coll cash and actioncoll card

External because driven by the machine

A. Cerone, UNU-IIST – p.28/70

ATM: User ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin

-> coll card -> User

-> coll cash -> User

-> (CashFirst [] CardFirst)

proc CashFirst = coll cash

proc CardFirst = coll card

A. Cerone, UNU-IIST – p.29/70

ATM: User ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin

-> coll card -> User

-> coll cash -> User

-> (CashFirst [] CardFirst)

proc CashFirst = coll cash

proc CardFirst = coll card

need a mechanism to compose two processestogether in order to allow one process todrive the choice in the other process

A. Cerone, UNU-IIST – p.29/70

CSP Parallel OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Parallel Operator (in CSP: ‖ and inCWB-NC: [| SS |], with SS the set of actionsoffered by both processes) forces thesynchronisation of those actions that are offeredby both processes (synchronisation set) whileallowing all other actions to occur independently.

A. Cerone, UNU-IIST – p.30/70

CSP Parallel OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Parallel Operator (in CSP: ‖ and inCWB-NC: [| SS |], with SS the set of actionsoffered by both processes) forces thesynchronisation of those actions that are offeredby both processes (synchronisation set) whileallowing all other actions to occur independently.

Example:Machine ‖ User

A. Cerone, UNU-IIST – p.30/70

CSP Parallel OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Parallel Operator (in CSP: ‖ and inCWB-NC: [| SS |], with SS the set of actionsoffered by both processes) forces thesynchronisation of those actions that are offeredby both processes (synchronisation set) whileallowing all other actions to occur independently.

Example:Machine ‖ User

Machine [| {card in,pin,coll cash,coll card} |] User

Synchronisation between process Machine andprocess User on the set of common actions{card in,pin,coll cash,coll card} A. Cerone, UNU-IIST – p.30/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�?

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�??

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�???

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�????

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�????

�� ��

�� ��

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�????

�� ��

�� ��������

XXXXXX

XXXXXX������

A. Cerone, UNU-IIST – p.31/70

ATM: Machine and UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

����-card in ����

-pin ����6

����-coll cash ����

?

����-coll card ����

� �6 ready

cash out card out

6����

-card in ����-pin ����� -coll cash ����

� -coll card ����coll card

��

coll cash

$

%

'

?

�????

�� ��

�� ��������

XXXXXX

XXXXXX������

Process Machine constrains process User

A. Cerone, UNU-IIST – p.31/70

Constraining ProcessesFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Process Machine constrains process User totake alternative

coll cash -> coll card

A. Cerone, UNU-IIST – p.32/70

Constraining ProcessesFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Process Machine constrains process User totake alternative

coll cash -> coll card

• collection order is driven by the machine

A. Cerone, UNU-IIST – p.32/70

Constraining ProcessesFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Process Machine constrains process User totake alternative

coll cash -> coll card

• collection order is driven by the machine• can you suggest any action offered by the

machine and driven by the user?

A. Cerone, UNU-IIST – p.32/70

Constraining ProcessesFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Process Machine constrains process User totake alternative

coll cash -> coll card

• collection order is driven by the machine• can you suggest any action offered by the

machine and driven by the user?• transaction selection is offered by the

machine but is driven by the user

A. Cerone, UNU-IIST – p.32/70

Constraining ProcessesFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Process Machine constrains process User totake alternative

coll cash -> coll card

• collection order is driven by the machine• can you suggest any action offered by the

machine and driven by the user?• transaction selection is offered by the

machine but is driven by the user• how would you model this?

A. Cerone, UNU-IIST – p.32/70

ATM: Transaction Sel — MFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc Machine = ready -> card in-> pin -> Selection

Selection = select cash-> cash out -> CashGiven

[] select stat-> stat out -> StatGiven

proc CashGiven = coll cash-> card out -> CardReturned

proc StatGiven = coll stat-> card out -> CardReturned

proc CardReturned = coll card -> Machine

A. Cerone, UNU-IIST – p.33/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card in

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card inpin

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card inpinselect cash

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card inpinselect cashcoll cash

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card inpinselect cashcoll cashcoll card

A. Cerone, UNU-IIST – p.34/70

ATM: Transaction Sel — U1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin -> select cash-> (CashFirst [] CardFirst)

proc CashFirst = coll cash-> coll card -> User

proc CardFirst = coll card-> coll cash -> User

What is the synchronisation set?card inpinselect cashcoll cashcoll cardselect stat A. Cerone, UNU-IIST – p.34/70

ATM: DeadlockFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

System trace (= Machine trace):

stat out coll stat card out

The agent has no transitions

ready card in pin select stat

A. Cerone, UNU-IIST – p.35/70

ATM: DeadlockFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

System trace (= Machine trace):

stat out coll stat card out

The agent has no transitions

ready card in pin select stat

User trace:card in pin

A. Cerone, UNU-IIST – p.35/70

ATM: DeadlockFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

System trace (= Machine trace):

stat out coll stat card out

The agent has no transitions

ready card in pin select stat

User trace:card in pin

The user may only perform select cash

The machine may only perform coll card

A. Cerone, UNU-IIST – p.35/70

ATM: DeadlockFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

System trace (= Machine trace):

stat out coll stat card out

The agent has no transitions

ready card in pin select stat

User trace:card in pin

The user may only perform select cash

The machine may only perform coll card

Both actions are in the synchronisation set=⇒ deadlock!

A. Cerone, UNU-IIST – p.35/70

ATM: User’s Selection• Previously user always select cash• What if the user may perform eitherselect cash or select stat?

A. Cerone, UNU-IIST – p.36/70

ATM: User’s Selection• Previously user always select cash• What if the user may perform eitherselect cash or select stat?

• The selection is made by the user.It is not made by the machine!

• How to model this asymmetry?

A. Cerone, UNU-IIST – p.36/70

CSP Int Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Internal Choice (in CWB-NC: |∼|) definesan intenal choice between two possible orderingof actions.

A. Cerone, UNU-IIST – p.37/70

CSP Int Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Internal Choice (in CWB-NC: |∼|) definesan intenal choice between two possible orderingof actions.

Example:(select cash -> ...)

|∼| (select stat -> ...)

User’s choice between action select cash andaction select stat which are both offered bythe machine

A. Cerone, UNU-IIST – p.37/70

CSP Int Choice OperatorsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

The Internal Choice (in CWB-NC: |∼|) definesan intenal choice between two possible orderingof actions.

Example:(select cash -> ...)

|∼| (select stat -> ...)

User’s choice between action select cash andaction select stat which are both offered bythe machine

Internal because made by the user

A. Cerone, UNU-IIST – p.37/70

ATM: Transaction Sel — U2FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin ->( select cash -> Withdrawal

|∼| select stat -> Statement )

proc Withdrawal =coll cash -> coll card -> User

[] coll card -> coll cash -> User

proc Statement =coll stat -> coll card -> User

[] coll card -> coll stat -> User

A. Cerone, UNU-IIST – p.38/70

ATM: Transaction Sel — U2FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

proc User = card in -> pin ->( select cash -> Withdrawal

|∼| select stat -> Statement )

proc Withdrawal =coll cash -> coll card -> User

[] coll card -> coll cash -> User

proc Statement =coll stat -> coll card -> User

[] coll card -> coll stat -> User

proc System = Machine [|{card in,pin,select cash,select stat,coll cash,coll stat,coll card} |] User

A. Cerone, UNU-IIST – p.38/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

HCI Concepts

A. Cerone, UNU-IIST – p.39/70

HCI and Interactive SystemsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Humans (Users) interact with Computers• to achieve goals• by performing tasks

A. Cerone, UNU-IIST – p.40/70

HCI and Interactive SystemsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Humans (Users) interact with Computers• to achieve goals• by performing tasks

Inteactive Systems are designed to assist user

User: first priority in the requirements

A. Cerone, UNU-IIST – p.40/70

HCI and Interactive SystemsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Humans (Users) interact with Computers• to achieve goals• by performing tasks

Inteactive Systems are designed to assist user

User: first priority in the requirements

Need to understand• capabilities• limitations

of the user

A. Cerone, UNU-IIST – p.40/70

Relevant Human AspectsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

(which have a bearing with Computer Systems)

• how humans perceive the world around them• how they store information and solve problems• how they physically manipulate objects

A. Cerone, UNU-IIST – p.41/70

Relevant Human AspectsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

(which have a bearing with Computer Systems)

• how humans perceive the world around them• how they store information and solve problems• how they physically manipulate objects

=⇒ (simplified) model of human processing

A. Cerone, UNU-IIST – p.41/70

Relevant Human AspectsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

(which have a bearing with Computer Systems)

• how humans perceive the world around them• how they store information and solve problems• how they physically manipulate objects

=⇒ (simplified) model of human processingbased on

• Computer Analogy• Information Processing Theory

A. Cerone, UNU-IIST – p.41/70

Computer AnalogyFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Computers take a symbolic input, recode it, make decisions about therecoded input, make new expressions from it, store some or all of the

input, and give back a symbolic input.

By analogy that is what most cognitive psychology is about.

It is about how most people take in information, how they recode andremember it, how they make decisions, how they transform their

internal knowledge states, and how they translate these states intobehavioural outputs.

[Lachman et al. 79]R. Lachman, J. L. Lachman, E. C. Butterfield.

Cognitive Psychology and Information Processing.

Lawrence Erlbaum, 1979.

A. Cerone, UNU-IIST – p.42/70

Organisational Level AnalogyFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Central Processing Unit analogous to themechanism responsible for mental operationsto manipulate information

• Information Store analogous to long-termmemory

• Information Buffer analogous to short-termmemory

A. Cerone, UNU-IIST – p.43/70

Organisational Level AnalogyFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Central Processing Unit analogous to themechanism responsible for mental operationsto manipulate information

• Information Store analogous to long-termmemory

• Information Buffer analogous to short-termmemory

Unlikely computers humans are also influencedby external factors, such as social and organisa-tional environment.

A. Cerone, UNU-IIST – p.43/70

Information Processing TheoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Behaviourism: Psychology should be basedsolely on observable events, with nomentalistic concepts

A. Cerone, UNU-IIST – p.44/70

Information Processing TheoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Behaviourism: Psychology should be basedsolely on observable events, with nomentalistic concepts

• Information Processing defines models tocharacterise the nature of mental processes

A. Cerone, UNU-IIST – p.44/70

Information Processing TheoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Behaviourism: Psychology should be basedsolely on observable events, with nomentalistic concepts

• Information Processing defines models tocharacterise the nature of mental processes• based on computer analogy

A. Cerone, UNU-IIST – p.44/70

Information Processing TheoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Behaviourism: Psychology should be basedsolely on observable events, with nomentalistic concepts

• Information Processing defines models tocharacterise the nature of mental processes• based on computer analogy• use experiments based on

• analysis of response• subjective analysisto confirm and extend the theory

A. Cerone, UNU-IIST – p.44/70

Model Human ProcessorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

developed by Card, Moran and Newell in 1983[Card et al. 83], consists of:

• perceptual system handling sensory stimulusform the outside world

• motor system which control actions• cognitive system which connects the other two

subsystems

A. Cerone, UNU-IIST – p.45/70

Model Human ProcessorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

developed by Card, Moran and Newell in 1983[Card et al. 83], consists of:

• perceptual system handling sensory stimulusform the outside world

• motor system which control actions• cognitive system which connects the other two

subsystems

each equiped with its own processor andmemory (short-term and long-tem).

A. Cerone, UNU-IIST – p.45/70

Model Human ProcessorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

developed by Card, Moran and Newell in 1983[Card et al. 83], consists of:

• perceptual system handling sensory stimulusform the outside world

• motor system which control actions• cognitive system which connects the other two

subsystems

each equiped with its own processor andmemory (short-term and long-tem). In addition

• principles of operation dictates the behaviourof the system under certain conditions

A. Cerone, UNU-IIST – p.45/70

Simplified Generic ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A human system is an intelligent informationprocessing system

A. Cerone, UNU-IIST – p.46/70

Simplified Generic ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A human system is an intelligent informationprocessing system consisting of:

• Input-Output: senses and responders (oreffectors)involves some low-level processing

A. Cerone, UNU-IIST – p.46/70

Simplified Generic ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A human system is an intelligent informationprocessing system consisting of:

• Input-Output: senses and responders (oreffectors)involves some low-level processing

• Memory (short-term and long-tem)

A. Cerone, UNU-IIST – p.46/70

Simplified Generic ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A human system is an intelligent informationprocessing system consisting of:

• Input-Output: senses and responders (oreffectors)involves some low-level processing

• Memory (short-term and long-tem)• Processing

• problem solving• learning

A. Cerone, UNU-IIST – p.46/70

Simplified Generic ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A human system is an intelligent informationprocessing system consisting of:

• Input-Output: senses and responders (oreffectors)involves some low-level processing

• Memory (short-term and long-tem)• Processing

• problem solving• learning and consequentely• making mistakes

A. Cerone, UNU-IIST – p.46/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal

A. Cerone, UNU-IIST – p.47/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal• about task

• actions to perform it

A. Cerone, UNU-IIST – p.47/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal• about task

• actions to perform it• (possibly) structure of the set of actions

A. Cerone, UNU-IIST – p.47/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal• about task

• actions to perform it• (possibly) structure of the set of actions

independently of a specificcomputer/machine/interface

A. Cerone, UNU-IIST – p.47/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal• about task

• actions to perform it• (possibly) structure of the set of actions

independently of a specificcomputer/machine/interface

• about machine• expertise acquired through use/training

A. Cerone, UNU-IIST – p.47/70

User KnowledgeFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• goal• about task

• actions to perform it• (possibly) structure of the set of actions

independently of a specificcomputer/machine/interface

• about machine• expertise acquired through use/training• mental model

A. Cerone, UNU-IIST – p.47/70

User ActionsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• mental processing structured set of actions

A. Cerone, UNU-IIST – p.48/70

User ActionsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• mental processing structured set of actions• interaction

• driven by the mental model• triggered by the machine

A. Cerone, UNU-IIST – p.48/70

User ActionsFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• mental processing structured set of actions• interaction

• driven by the mental model• triggered by the machine

involve the use of human memory

A. Cerone, UNU-IIST – p.48/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

- Closure = successfulformation of chuncks

completion of task

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

- Closure = successfulformation of chuncks

completion of task

6postcompletion error

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

- Closure = successfulformation of chuncks

completion of task

6postcompletion error

-Rehearsal

after a few seconds

A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

- Closure = successfulformation of chuncks

completion of task

6postcompletion error

-Rehearsal

after a few secondshuge or unlimited capacityslow access: ∼ 100 mslittle decay A. Cerone, UNU-IIST – p.49/70

Human MemoryFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Sensory Memories

Short-term Memory

or

Working Memory

Long-term Memory

Iconic Echoic Haptic

information persistsfor < 500 ms

-Attention

focuses onselected information only

level of arousal

limited capacity: ∼ 7 ± 2 chunksrapid access: ∼ 70 msrapid decay: ∼ 200 ms

- Closure = successfulformation of chuncks

completion of task

6postcompletion error

-Rehearsal

after a few secondshuge or unlimited capacityslow access: ∼ 100 mslittle decay

Episodic -Semantic

A. Cerone, UNU-IIST – p.49/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Modelling Human Behaviour

A. Cerone, UNU-IIST – p.50/70

Why Poor UsabilityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• User friendly and easy to use from the point ofview of the designer

• the designer is potentially a user =⇒• implicit assumptions on the user’s

capabilities and behaviour• explicit assumptions on the user’s

knowledge of the system — the user hasentirely read and understood the manual

• interface viewed as plug-in separate from therest of the system

A. Cerone, UNU-IIST – p.51/70

Poor User ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• User Model mimics the machine (user fromthe point of view of the designer)

• the designer is potentially a user =⇒• implicit assumptions: user remembers all

required actions correctly• explicit assumptions on the user’s

knowledge of the system: none• interface viewed as plug-in separate from the

rest of the system: first modeled machine andthen the user

A. Cerone, UNU-IIST – p.52/70

Improving UsabilityFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• USER = first priority in the requirements ofinteractive systems (SE)

• study of the mind (perception, thinking andlearning) and behaviour of the human being(Psychology) and related experiments

• explicit assumptions on user’s physical andcognitive limitations and environmental andsocial constraints (Ergonomics, CognitiveScience and Sociology)

• interface developed integrally with the rest ofthe system (SE) to support tasks people wantto do and prevent / forgive careless errors

A. Cerone, UNU-IIST – p.53/70

ATM: Better User ModelFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• USER has an an explicit goal and performs atask (independent of a specific machine)

• user model should include cognitive aspectsthat explain the user’s plausible behavior

• explicit assumptions on user’s physical andcognitive limitations: short-term memory,attention, ...

• interface developed integrally with the rest ofthe system through an iterative modelling andanalysis process to support tasks people wantto do (e.g. authentication) and prevent / forgivecareless errors (e.g. forgetting collection)

A. Cerone, UNU-IIST – p.54/70

ATM: Goals and TasksFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

A. Cerone, UNU-IIST – p.55/70

ATM: Goals and TasksFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Goals• get cash• get statement

A. Cerone, UNU-IIST – p.55/70

ATM: Goals and TasksFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Goals• get cash• get statement

• Tasks• top-level task• get authenticated (with the right balance

between security and usability)• collect everything, either cash and card or

statement and card (in any order)

A. Cerone, UNU-IIST – p.55/70

ATM: Goals and TasksFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

• Goals• get cash• get statement

• Tasks• top-level task• get authenticated (with the right balance

between security and usability)• collect everything, either cash and card or

statement and card (in any order)• basic task: single action (enter pin, ... ,

collect cash)A. Cerone, UNU-IIST – p.55/70

Goals, Actions, ClosureFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Goal action

���� ����-����

-precondi -actioni

� �6 closure

A. Cerone, UNU-IIST – p.56/70

Goals, Actions, ClosureFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Goal action

���� ����

Other actions

���� ����

-����-precondi -actioni

� �6 closure

-���� -precondj

�closure

-actionj

� �6 closure

� �?

closure

A. Cerone, UNU-IIST – p.56/70

Goals, Actions, ClosureFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Goal action

���� ����

Other actions

���� ����

- -actioni

� �6 closure

- -actionj

� �?

closure

� �6 closure

A. Cerone, UNU-IIST – p.56/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

ATM Example Revisited

A. Cerone, UNU-IIST – p.57/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��•

A. Cerone, UNU-IIST – p.58/70

ATM: UserFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��•

A. Cerone, UNU-IIST – p.58/70

ATM: Interaction 1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��•

A. Cerone, UNU-IIST – p.59/70

ATM: Interaction 1FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��•

A. Cerone, UNU-IIST – p.59/70

ATM: Interaction 2FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.60/70

ATM: Interaction 2FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.60/70

ATM: Interaction 3FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.61/70

ATM: Interaction 3FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.61/70

ATM: Interaction 3FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.61/70

ATM: Interaction 4FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.62/70

ATM: Interaction 4FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.62/70

ATM: Interaction 4FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.62/70

ATM: ClosureFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

•�� ��

�� ���� ��

�� ���� ��

A. Cerone, UNU-IIST – p.63/70

ATM: ClosureFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

•�� ��

A. Cerone, UNU-IIST – p.63/70

ATM: Post-completion ErrorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

�� ��

�� ��

A. Cerone, UNU-IIST – p.64/70

ATM: Post-completion ErrorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

•�� ��

�� ��•

�� ���� ���� ��

�� ��

A. Cerone, UNU-IIST – p.64/70

ATM: Post-completion ErrorFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6cash out����

-coll cash ����?

card out

����-coll card ����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

A. Cerone, UNU-IIST – p.64/70

ATM: Correct MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6����

-����?����

-�����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

cash out

coll cash

card out

coll card

A. Cerone, UNU-IIST – p.65/70

ATM: Correct MachineFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

-card in ����-pin ����

6����

-����?����

-�����

� �6 ready����

-����� �6

closure

-card in �����

closure

-����� �6

closure

-pin

�����

closure

-����-cash out ����

-coll cash ����� �6 closure

-���� -card out�

closure����

-coll card ����� �6 closure

� �?

closure

card out

coll card

cash out

coll cash

A. Cerone, UNU-IIST – p.65/70

Closure: ExerciseFMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

How do you define the closure when you havemore than one goal?

Model actions and closure for an ATM that allowsto choose between

• cash withdrawal, and• statements printing

A. Cerone, UNU-IIST – p.66/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

References

A. Cerone, UNU-IIST – p.67/70

[Lachman et al. 79]FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

R. Lachman, J. L. Lachman, E. C. Butterfield.Cognitive Psychology and InformationProcessing.Lawrence Erbaum Associates, 1979.

Cognitive Psychology BookDescribes the Computer Analogy.

A. Cerone, UNU-IIST – p.68/70

[Card et al. 83]FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

Stuart K. Card, Thomas P. Moran and AllenNewell.The Psychology of Human-Computer interaction.Lawrence Erbaum Associates, 1983.

HCI General BookClassical book that defines the early theoreti-cal basis of HCI from an Information Process-ing perspective. Develops and describes theModel Human Processor in details.

A. Cerone, UNU-IIST – p.69/70

FMAIS 2 — Pisa, Italy, 14 December 2010 Contents | Formal Tools | ATM | HCI | Modelling HB | ATM Revisited | References

End

A. Cerone, UNU-IIST – p.70/70