A demonstration-based approach for domain-specific modeling language creation

Thumbnail Image
Journal Title
Journal ISSN
Volume Title
University of Alabama Libraries

Model-Driven Engineering (MDE) is a promising approach for addressing the issues of complex and large software system development that enables software engineers to develop software systems with high-level abstract models. In MDE, models are first-class entities of software system development and can improve the understanding of problem domains. In addition, models are used to predict the quality and performance of software systems. Within the context of MDE, Domain-Specific Modeling Languages (DSMLs) are developed to describe notions of a specific domain using either textual or graphical syntax. DSMLs provide a language that has abstractions and notations, as well as precise and concise modeling constructs, for specific domains (e.g., automotive, avionics, finance, and etc). DSMLs assist domain experts in describing their problems closer to the problem domain when compared to General-Purpose Modeling Languages (GPMLs), such as Unified Modeling Language (UML) or programming languages. DSMLs have been shown in the literature to provide several benefits, such as productivity improvement, quality improvement, and reduction of miscommunication. However, development of new DSMLs can be challenging and requires much time and effort. In addition, the current state of DSML is still in its infancy compared to the tools and resources available for creation of programming language environments. This dissertation investigates a new approach for DSML creation that allows domain experts to have a more prominent role in describing the languages that they use. The core contributions of the dissertation are focused on three aspects related to domain-specific modeling language creation: 1) enable the creation of DSMLs in a demonstration-based approach by recording and analyzing the operational behavior exhibited by a domain expert as they model notions of their domain, 2) enable domain expert verification of the inferred language by exploring the model space, and 3) enable domain expert verification of the inferred language by exploring the model space.. The objectives and contributions of the research will be explained in detail in this dissertation, combined with case studies from several domain modeling languages to demonstrate how a domain expert can build their own DSMLs in practice.

Electronic Thesis or Dissertation
Computer science