Skip to main content

Domain-Specific Modelling for Human–Computer Interaction

  • Chapter
  • First Online:
The Handbook of Formal Methods in Human-Computer Interaction

Part of the book series: Human–Computer Interaction Series ((HCIS))

Abstract

Model-driven engineering (MDE) is an important enabler in the development of complex, reactive, often real-time, and software-intensive systems, as it shifts the level of specification from computing concepts (the “how”) to conceptual models or abstractions in the problem domain (the “what”). Domain-specific modelling (DSM) in particular allows to specify these models in a domain-specific modelling language (DSML), using concepts and notations of a specific domain. It allows the use of a custom visual syntax which is closer to the problem domain and therefore more intuitive. Models created in DSMLs are used, among others, for simulation, (formal) analysis, documentation, and code synthesis for different platforms. The goal is to enable domain experts, such as a power plant engineer, to develop, to understand, and to verify models more easily, without having to use concepts outside of their own domain. The first step in the DSM approach when modelling in a new domain is, after a domain analysis, creating an appropriate DSML. In this chapter, we give an introduction to DSML engineering and show how it can be used to develop a human–computer interaction interface. A DSML is fully defined by its syntax and semantics. The syntax consists of (i) the abstract syntax, defining the DSML constructs and their allowed combinations, captured in a metamodel, and (ii) the concrete syntax, specifying the visual representation of the different constructs. The semantics defines the meaning of models created in the domain. In this chapter, we show how two types of semantics (operational and translational) can be modelled using model transformations. Operational semantics gives meaning to the modelling language by continuously updating the model’s state, effectively building a simulator. Translational semantics defines mappings of models in one language onto models in a language with known semantics. This enables the automatic construction of behavioural models, as well as models for verification. The former can be used for automated code synthesis (leading to a running application), whereas the latter leads to model checking. We choose to specify properties for model checking using the ProMoBox approach, which allows the modelling of properties in a syntax similar to the original DSML. A major advantage of this approach is that the modeller specifies both requirements (in the form of properties) and design models in a familiar notation. The properties modelled in this domain-specific syntax are verified by mapping them to lower-level languages, such as Promela, and results are mapped back to the domain-specific level. To illustrate the approach, we create a DSML for modelling the human–computer interaction interface of a nuclear power plant.

The original version of the book was revised: For detailed information please see Erratum. The erratum to the book is available at 10.1007/978-3-319-51838_21

An erratum to this chapter can be found at http://dx.doi.org/10.1007/978-3-319-51838-1_21

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 259.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 329.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 329.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  • Barišić A, Amaral V, Goulão M, Barroca B (2011) Quality in use of domain-specific languages: a case study. In: Proceedings of the 3rd ACM SIGPLAN workshop on evaluation and usability of programming languages and tools, ACM, PLATEAU’11, pp 65–72

    Google Scholar 

  • Boulanger F, Hardebolle C, Jacquet C, Marcadet D (2011) Semantic adaptation for models of computation. In: 2011 11th International conference on application of concurrency to system design (ACSD), pp 153–162. doi:10.1109/ACSD.2011.17

  • Cellier FE (1991) Continuous system modeling. Springer

    Google Scholar 

  • Costagliola G, Deufemia V, Polese G (2004) A framework for modeling and implementing visual notations with applications to software engineering. ACM Trans Soft Eng Methodol 13(4):431–487

    Article  Google Scholar 

  • Dwyer MB, Avrunin GS, Corbett JC (1999) Patterns in property specifications for finite-state verification. In: International conference software engineering, pp 411–420

    Google Scholar 

  • Guerra E, de Lara J, Kolovos DS, Paige RF (2010) A visual specification language for model-to-model transformations. In: VL/HCC

    Google Scholar 

  • Guerra E, de Lara J, Wimmer M, Kappel G, Kusel A, Retschitzegger W, Schönböck J, Schwinger W (2013) Automated verification of model transformations based on visual contracts. Autom Soft Eng 20(1):5–46. doi:10.1007/s10515-012-0102-y

    Article  Google Scholar 

  • Harel D (1987) Statecharts: a visual formalism for complex systems. Sci Comput Program 8(3):231–274

    Article  MathSciNet  MATH  Google Scholar 

  • Harel D, Naamad A (1996) The STATEMATE semantics of statecharts. ACM Trans Softw Eng Methodol 5(4):293–333

    Article  Google Scholar 

  • Harel D, Rumpe B (2004) Meaningful modeling: what’s the semantics of "semantics"? Computer 37(10):64–72

    Article  Google Scholar 

  • Holzmann GJ (1997) The model checker SPIN. Trans Softw Eng 23(5):279–295

    Article  Google Scholar 

  • Kelly S, Tolvanen JP (2008) Domain-specific modeling: enabling full code generation. Wiley

    Google Scholar 

  • Kleppe A (2007) A language description is more than a metamodel. In: Fourth international workshop on software language engineering

    Google Scholar 

  • Kühne T (2006) Matters of (meta-) modeling. Softw Syst Model 5:369–385

    Article  Google Scholar 

  • Kühne T, Mezei G, Syriani E, Vangheluwe H, Wimmer M (2009) Explicit transformation modeling. In: MoDELS workshops. Lecture notes in computer science. Springer, 6002:240–255

    Google Scholar 

  • Lucio L, Mustafiz S, Denil J, Vangheluwe H, Jukss M (2013) FTG+PM: an integrated framework for investigating model transformation chains. In: SDL 2013: model-driven dependability engineering. Lecture notes in computer science, vol 7916. Springer, pp 182–202

    Google Scholar 

  • Meyers B, Vangheluwe H (2014) A multi-paradigm modelling approach for the engineering of modelling languages. In: Proceedings of the doctoral symposium of the ACM/IEEE 17th international conference on model driven engineering languages and systems, CEUR Workshop Proceedings, pp 1–8

    Google Scholar 

  • Meyers B, Wimmer M, Vangheluwe H, Denil J (2013) Towards domain-specific property languages: the ProMoBox approach. In: Proceedings of the 2013 ACM workshop on domain-specific modeling. ACM, New York, NY, USA, DSM’13, pp 39–44. doi:10.1145/2541928.2541936

  • Meyers B, Deshayes R, Lucio L, Syriani E, Vangheluwe H, Wimmer M (2014) ProMoBox: a framework for generating domain-specific property languages. In: Software language engineering. Lecture notes in computer science, vol 8706. Springer International Publishing, pp 1–20

    Google Scholar 

  • Moody D (2009) The "physics" of notations: toward a scientific basis for constructing visual notations in software engineering. IEEE Trans Softw Eng 35(6):756–779

    Article  Google Scholar 

  • Murata T (1989) Petri nets: properties, analysis and applications. Proc IEEE 77(4):541–580

    Article  Google Scholar 

  • Petre M (1995) Why looking isn’t always seeing: readership skills and graphical programming. Commun ACM 38(6):33–44

    Article  Google Scholar 

  • Pnueli A (1977) The temporal logic of programs. In: Proceedings of the 18th annual symposium on foundations of computer science. IEEE computer society, Washington, DC, USA, SFCS’77, pp 46–57. doi:10.1109/SFCS.1977.32

  • Risoldi M (2010) A methodology for the development of complex domain-specific languages. PhD thesis, University of Geneva. http://archive-ouverte.unige.ch/unige:11842

  • Sendall S, Kozaczynski W (2003) Model transformation: the heart and soul of model-driven software development. IEEE Softw 20(5):42–45

    Article  Google Scholar 

  • Smith MH, Holzmann GJ, Etessami K (2001) Events and constraints: a graphical editor for capturing logic requirements of programs. In: Proceedings of the fifth IEEE international symposium on requirements engineering. IEEE computer society. Washington, DC, USA, RE’01, pp 14–22. http://dl.acm.org/citation.cfm?id=882477.883639

  • Syriani E (2011) A multi-paradigm foundation for model transformation language engineering. PhD thesis, McGill University, Canada

    Google Scholar 

  • Syriani E, Vangheluwe H (2013) A modular timed graph transformation language for simulation-based design. Softw Syst Model 12(2):387–414

    Article  Google Scholar 

  • Syriani E, Vangheluwe H, Mannadiar R, Hansen C, Van Mierlo S, Ergin H (2013) AToMPM: a web-based modeling environment. In: Proceedings of MODELS’13 demonstration session, pp 21–25

    Google Scholar 

  • Vangheluwe H (2008) Foundations of modelling and simulation of complex systems. ECEASST 10

    Google Scholar 

  • Zeigler BP, Praehofer H, Kim TG (2000) Theory of modeling and simulation, 2nd edn. Academic Press

    Google Scholar 

  • Zhang Y, Xu B (2004) A survey of semantic description frameworks for programming languages. SIGPLAN Not 39(3):14–30

    Article  Google Scholar 

Download references

Acknowledgements

This work was partly funded by a PhD fellowship from the Research Foundation - Flanders (FWO) and the Agency for Innovation by Science and Technology in Flanders (IWT). Partial support by the Flanders Make strategic research centre for the manufacturing industry is also gratefully acknowledged.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Simon Van Mierlo .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this chapter

Cite this chapter

Van Mierlo, S., Van Tendeloo, Y., Meyers, B., Vangheluwe, H. (2017). Domain-Specific Modelling for Human–Computer Interaction. In: Weyers, B., Bowen, J., Dix, A., Palanque, P. (eds) The Handbook of Formal Methods in Human-Computer Interaction. Human–Computer Interaction Series. Springer, Cham. https://doi.org/10.1007/978-3-319-51838-1_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-51838-1_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-51837-4

  • Online ISBN: 978-3-319-51838-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics