Skip to content

iagohribeiro/Zanshin-DSL

Repository files navigation

Zanshin-DSL

Project done as a final requirement to get a Bachelor's degree in Computer Engineering.

Abstract

Adaptive systems have the ability to make decisions to adjust and reconfigure themselves when necessary. In this context, Zanshin (SOUZA, 2012) is an approach that supports the development and simulation of adaptive systems using a controller. Unagi (BERNABÉ, 2017) is a CASE tool that implements a graphical editor for requirements models for adaptive systems using the format expected by the Zanshin controller. However, these tools are separate and require knowledge of their internal structure to be combined. This work proposes to intragrate both tools to facilitate the creation of models in Unagi and, later, simulation in Zanshin. In addition, it proposes to evolve Unagi so that it can build and run model simulations using a Domain-Specific Language (DSL). To this end, in the tool joining stage, technologies such as Java and XML were used to develop buttons and their respective Zanshin control commands in the Sirius toolbar, which composes the Unagi, inside Eclipse. In the DSL development stage, the Xtext and Xtend technologies were used for the complete development of the language, from the syntax definition to the code generation. Thus, with this work, the Unagi and Zanshin systems were integrated, besides the creation of the DSL, facilitating the use of Zanshin for users interested in Requirements Engineering with focus on Adaptive Systems.

Undergraduate thesis

More about the project can be found in my Undergraduate thesis (Portuguese version).

About

Project done as a final requirement to get a Bachelor's degree in Computer Engineering.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published