Lecture at ICTAC School 2021: 18th International Colloquium on Theoretical Aspects of Computing, Nazarbayev University, Nur-Sultan, Kazakhstan, 1st September 2021.
https://www.alandix.com/academic/talks/ICTCS-School-2021/
The first part of this lecture gives a lightning introduction to the use of formal methods in human–computer interaction. This will include an overview of the kinds of models, and typical domains where technqiues are currently applied. It will then outline some of the potential future directions for the field based on the “Trends and Gaps” chaper of “The Handbook of Formal Methods in Human-Computer Interaction”.
2.
Part I – lightning tour
kinds of model
gaps and challenges
ICTAC 2021
3. what to model
users
– cognitive models
– task models
system
– behaviour
– architectural structure
world
– domain models
4. what to model
users
– cognitive models
– task models
system
– behaviour
– architectural structure
world
– domain models
5. types of system model
• dialogue – main modes
• full state definition
specific
system
6. example: car clock
three buttons:
mode – cycles between hours, mins, seconds
+/– – increments/decrements selected item
we will define state and actions
N.B. will not be right first time ... spot the mistakes ...
16:55:00
mode – +
7. clock state
state
hours: Nat, mins: Nat, secs: Nat – all just numbers
selected: { ‘NONE’, ‘HRS’, ‘MINS’, ‘SECS’ }
hours < 24 ∧ mins < 60 ∧ secs < 60
initial state
hours = 0, mins = 0, secs= 0
selected = ‘NONE’
display
hours “:” mins “:” secs (with selected flashing)
8. clock actions …
increment (+)
if ( selected = ‘NONE’ ) do nothing
if ( selected = ‘HRS’ )
if ( hours < 23 ) hours’ = hours+1
if ( hours = 23 ) hours’ = 0
if ( selected = ‘MINS’ )
if ( mins< 59 ) mins’ = mins+1
if ( mins= 59 ) mins’ = 0
...
9. types of system model
• dialogue – main modes
• full state definition
• abstract interaction model
specific
system
generic
issues
10. PIE model – abstract properties
predict
e.g. predictability:
17. HCI trends: formal challenges
changing user interaction
– choice and ubiquity, diverse people, diverse devices
and contexts, physicality and embodiment, really
invisible, experience and values, social and personal
use, notification-based interaction, basic HCI
changing technology
– vast assemblies, big data, autonomy and complexity
changing design and development
– maker/hacker culture and mass customization, agile
and test-driven development
18. formalising interaction: challenges
what – actors and entities
– people, physical objects, space, information
what – levels of abstraction
– granularity, continuity and time, level of generality,
syntax vs semantics
who and when (and why?)
– reducing formal expertise, reducing effort, increasing
benefit
how
– types of reasoning, knowledge rich reasoning,
flexible levels of detail, multiple notations, generic
descriptions and standards
19. today
• domains – not nuclear!
• physical as well as digital
• granularity – not just dialogue
• flexible level of detail
• method users – no Maths degree
20. exercise
choose something physical
e.g. book, phone, scissors
if digital assume battery dead.
model it formally (-ish) … or whatever works!
– What it’s like
– What you can do with it
– How it fits with other things
Image Mark Turnauckas: https://www.flickr.com/photos/marktee/5590077419