Combining Models for Interactive System Modelling



Our approach for modelling interactive systems has been to develop models for the interface and interaction which are lightweight but with an underlying formal semantics. Combined with traditional formal methods to describe functional behaviour, this provides the ability to create a single formal model of interactive systems and consider all parts (functionality, user interface and interaction) with the same rigorous level of formality. The ability to convert the different models we use from one notation to another has given us a set of models which describe an interactive system (or parts of that system) at different levels of abstraction in ways most suitable for the domain but which can be combined into a single model for model checking, theorem proving, etc. There are, however, many benefits to using the individual models for different purposes throughout the development process. In this chapter, we provide examples of this using the nuclear power plant control system as an example.


  1. Bolton ML, Bass EJ (2010) Formally verifying human-automation interaction as part of a system model: limitations and tradeoffs. Innov Syst Softw Eng A NASA J 6(3):219–231CrossRefGoogle Scholar
  2. Bowen J, Reeves S (2006a) Formal models for informal GUI designs. In: 1st international workshop on formal methods for interactive systems, Macau SAR China, 31 October 2006. electronic notes in theoretical computer science, Elsevier, vol 183, pp 57–72Google Scholar
  3. Bowen J, Reeves S (2006b) Formal refinement of informal GUI design artefacts. In: Australian software engineering conference (ASWEC’06). IEEE, pp 221–230Google Scholar
  4. Bowen J, Reeves S (2008) Formal models for user interface design artefacts. Innov Syst Softw Eng 4(2):125–141CrossRefGoogle Scholar
  5. Bowen J, Reeves S (2013) Modelling safety properties of interactive medical systems. In: 5th ACM SIGCHI symposium on engineering interactive computing systems, EICS’13. ACM, pp 91–100Google Scholar
  6. Bowen J, Reeves S (2014) A simplified Z semantics for presentation interaction models. In: FM 2014: formal methods—19th international symposium, Singapore, pp 148–162Google Scholar
  7. Courtney A (2003) Functionally modeled user interfaces. In: Interactive systems. design, specification, and verification. 10th international workshop DSV-IS 2003. Lecture notes in computer science, LNCS. Springer, pp 107–123Google Scholar
  8. Derrick J, Boiten E (2014) Refinement in Z and object-Z: foundations and advanced applications. Formal approaches to computing and information technology, 2nd edn. SpringerGoogle Scholar
  9. Dix A, Runciman C (1985) Abstract models of interactive systems. Designing the interface, people and computers, pp 13–22Google Scholar
  10. Duke DJ, Harrison MD (1995) Interaction and task requirements. In: Palanque P, Bastide R (eds) Eurographics workshop on design, specification and verification of interactive system (DSV-IS’95). Springer, pp 54–75Google Scholar
  11. Duke DJ, Faconti GP, Harrison MD, Paternò F (1994) Unifying views of interactors. In: Advanced visual interfaces, pp 143–152Google Scholar
  12. Duke DJ, Fields B, Harrison MD (1999) A case study in the specification and analysis of design alternatives for a user interface. Formal Asp Comput 11(2):107–131CrossRefGoogle Scholar
  13. Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3):231–274MathSciNetCrossRefMATHGoogle Scholar
  14. Harrison MD, Dix A (1990) A state model of direct manipulation in interactive systems. In: Formal methods in human-computer interaction. Cambridge University Press, pp 129–151Google Scholar
  15. Henson MC, Deutsch M, Reeves S (2008) Z Logic and its applications. Monographs in theoretical computer science. An EATCS series. Springer, pp 489–596Google Scholar
  16. Hussey A, MacColl I, Carrington D (2000) Assessing usability from formal user-interface designs. Technical report, TR00-15, Software Verification Research Centre, The University of QueenslandGoogle Scholar
  17. ISO, IEC 13568 (2002) Information technology-Z formal specification notation-syntax, type system and semantics. International series in computer science, 1st edn. Prentice-Hall, ISO/IECGoogle Scholar
  18. Jacob RJK (1982) Using formal specifications in the design of a human-computer interface. In: 1982 conference on human factors in computing systems. ACM Press, pp 315–321Google Scholar
  19. Limbourg Q, Vanderdonckt J, Michotte B, Bouillon L, López-Jaquero V (2004) UsiXML: a language supporting multi-path development of user interfaces. In: 9th IFIP working conference on engineering for human-computer interaction jointly with 11th international workshop on design, specification, and verification of interactive systems, EHCI-DSVIS’2004, Kluwer Academic Press, pp 200–220Google Scholar
  20. Paternò FM (2001) Task models in interactive software systems. Handbook of software engineering and knowledge engineeringGoogle Scholar
  21. Paternò FM, Sciacchitano MS, Lowgren J (1995) A user interface evaluation mapping physical user actions to task-driven formal specification. In: Design, specification and verification of interactive systems. Springer, pp 155–173Google Scholar
  22. Philipps J, Scholz P (1998) Formal verification and hardware design with statecharts. In: Prospects for hardware foundations, ESPRIT working group 8533. NADA—new hardware design methods, survey chapters, pp 356–389Google Scholar
  23. Puerta A, Eisenstein J (2002) XIML: a universal language for user interfaces. In: Intelligent user interfaces (IUI). ACM Press, San FranciscoGoogle Scholar
  24. Reeve G (2005) A refinement theory for \(\mu \)charts. PhD thesis, The University of WaikatoGoogle Scholar
  25. Reeve G, Reeves S (2000a) \(\mu \)-charts and Z: examples and extensions. In: Proceedings of APSEC 2000. IEEE Computer Society, pp 258–265Google Scholar
  26. Reeve G, Reeves S (2000b) \(\mu \)-charts and Z: hows, whys and wherefores. In: Grieskamp W, Santen T, Stoddart B (eds) Integrated formal methods 2000: proceedings of the 2nd international workshop on integrated formal methods. LNCS, vol 1945. Springer, pp 255–276Google Scholar
  27. Reichart D, Dittmar A, Forbrig P, Wurdel M (2008) Tool support for representing task models, dialog models and user-interface specifications. In: Interactive systems. Design, specification, and verification: 15th international workshop, DSV-IS’08. Springer, Berlin, pp 92–95Google Scholar
  28. Scholz P (1996) An extended version of mini-statecharts. Technical report, TUM-I9628, Technische Univerität München.
  29. Thimbleby H (1990) Design of interactive systems. In: McDermid JA (ed) The software engineer’s reference book. Butterworth-Heineman, Oxford, Chap, p 57Google Scholar
  30. Thimbleby H (2004) User interface design with matrix algebra. ACM Trans Comput Hum Interact 11(2):181–236CrossRefGoogle Scholar
  31. Woodcock J, Davies J (1996) Using Z: specification, refinement and proof. Prentice HallGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.University of WaikatoHamiltonNew Zealand

Personalised recommendations