ATTAC-L 4 ATTAC-L: A Visual Tool for Specifying the Domain Vocabulary for a Domain-Specific Modeling Language (AVAILABLE)

Type of Thesis: 
Master Thesis

In computer science, a domain-specific language (DSL) is a (usually) small language dedicated to, and restricted to, a particular domain and a specific class of problems [1]. It provides appropriated abstractions that make the specifications of solutions for this particular class of problems easier and less time consuming. The abstractions are using the vocabulary of the problem domain and as such domain experts can understand, validate, and often even develop themselves specifications expressed in the DSL.

A domain-specific modeling language (DSML) [2] is a domain-specific language for the purpose of modeling systems. A DSML can be considered as a special kind of domain-specific language.

Domain-specific modeling languages have already been proposed for several domains, from insurance products to microcontroller-based voice systems [2]. In the WISE lab, a DSML for modeling the narrative of a serious game has been developed, called ATTAC-L (see e.g., [3]). Serious digital games are games specifically designed to teach people about a specific subject or assist them in learning as they play. Serious games can be used to teach everything from topics in regular education to promoting better health-related behavior and marketing. Therefore, the domain of the serious game may vary from game to game. For this reason, it should be possible to use ATTAC-L with different domain vocabularies. Currently, ATTAC-L is applied on the domain of cyber bullying.

ATTAC-L is a visual DSML (see figure below) and its syntax is based on a Controlled Natural Language (CNL), which is a strict and controlled subset of natural language. Using a CNL-based syntax for our DMSL provides an easy and human-readable, yet flexible and expressive way to specify (i.e., model) the story of a game. This makes it significantly easier for people without programming knowledge (such as most subject-matter experts) to understand, and even create models, and in this way a better communication and collaboration within multidisciplinary teams can be achieved. ATTAC-L is supported by a web-based tool and a simulator is available to try out the modeled stories in a 3D environment.


Figure 1: Part of a narrative in ATTAC-L

The goal of the work is to adapt and extend the tools for ATTAC-L in such a way that they can work with different domain vocabularies by using ATTAC-L itself. The following steps can be followed:

(1)  Perform a literature review for related work, i.e., existing vocabulary definition tools

(2)  Adapt the ATTAC-L tool in such a way that it can be customized with a given domain vocabulary (loading a domain vocabulary at its start) and allows for checking against this vocabulary during modeling.

(3)  Develop a tool that allows defining a domain vocabulary usable by the ATTAC-L tool.
Such a vocabulary should define what actions, entities, and states can be used in the game. This vocabulary must be in terms of the vocabulary of the target domain of the serious game. For instance, for the domain of cyber bullying, the vocabulary includes terms such as ‘bully’, ‘victim’, ‘bystander’, ‘message’, ‘post-on’, ‘send-to’, etc. Any implementation jargon must be avoided and the tool should have a high usability for non-technical people, as the people involved in the development of the story and the creation of domain vocabulary are domain experts who are usually not schooled in computer science. For this reason, we want to explore the use of ATTAC-L itself and its associated tool for the definition of a domain vocabulary. Because ATTAC-L is using a CNL, the domain vocabulary could be specified in natural language, which makes it easy for non-technical users to specify the vocabulary. In order to achieve this, a vocabulary needs to be developed that allows specifying domain vocabularies, i.e. a kind of meta-domain-vocabulary needs to be constructed.

(4)  Perform user studies

1. To evaluate the usability and effectiveness of the approach and tool developed by applying it for the definition of at least two domains by non-technical users, followed by its use in ATTAC-L and the simulator (this can be limited to one domain vocabulary).

2. To compare the vocabulary definition tool with existing vocabulary definition tools (optional).

Note: the inclusion of optional tasks depends on the program of the student and whether a research training/internship is included or not.

For more information contact Prof. dr. Olga De Troyer.


1.   van Deursen, A., Klint, P., and Visser, J.: Domain-specific languages: an annotated bibliography, ACM SIGPLAN Notices, Volume 35 Issue 6, (2000)

2.   Luoma, J., Kelly, S., and Tolvanen, J.-P.: Defining Domain-Specific Modeling Languages: Collected Experiences. In: Proceedings of the 4th OOPSLA Workshop on Domain-Specific Modeling (DSM’04), Vancouver, British Columbia, Canada (2004)

3.     Van Broeckhoven, F., De Troyer, O.: “ATTAC-L: A Modeling Language for Educational Virtual Scenarios in the Context of Preventing Cyber Bullying”, Proceedings of IEEE 2nd International Conference on Serious Games and Applications for Heath (2013).

Background Knowledge: 
  • javascript, jquery and json
  • Unity (optional task)
  • Knowledge of gojs is a plus.
Technical challenges: 

- Digging into and extending existing code

- Defining a meta-domain-vocabulary for ATTAC-L



Academic Year: