Domain-Specific Modelling for Human–Computer Interaction [chapter]

Simon Van Mierlo, Yentl Van Tendeloo, Bart Meyers, Hans Vangheluwe
2017 Human–Computer Interaction Series  
Developing complex, reactive, often real-time, software-intensive systems using a traditional, code-centric approach, is not an easy feat: knowledge is required from both the problem domain (e.g., power plant engineering), and computer programming. Apart from being inefficient and costly, due to the need for an additional programmer on the project, this can also result in more fundamental problems. The programmer, who implements the software, has no knowledge of the problem domain, or basic
more » ... ledge at best. The domain expert, on the other hand, has deep knowledge of the problem domain, but only a limited understanding of computer programs. This can result in communication problems, such as the programmer making false assumptions about the domain, or the domain expert to gloss over details when explaining the problem to the programmer. Furthermore, the domain experts will finally receive a software component that they don't fully understand, making it difficult for them to validate and modify if necessary. There is in effect a conceptual gap between the two domains, hindering productivity. Model-Driven Engineering (MDE) [30] tries to bridge this gap, by shifting the level of specification from computing concepts (the "how") to conceptual models or abstractions in the problem domain (the "what"). Domain-Specific Modelling (DSM) [12] in particular makes it possible to specify these models in a Domain-Specific Modelling Language (DSML), using concepts and notations of a specific domain. The goal is to enable domain experts to develop, understand, and verify models more easily, without having to use concepts outside of their own domain. It
doi:10.1007/978-3-319-51838-1_16 fatcat:rgnd6owc4nazfj6apbsn6kgjee