Papyrus-RT
2
which is the current focus of ongoing re-
search (Hili et al., 2017; Kahani et al., 2017). Keep-
ing with the simplified nature of the IML, this will be
a significantly reduced subset of the UML-RT profile
to demonstrate functionality of existing tools, such as
Papyrus-RT, without the need to cover some of UML-
RT’s more complex implementation issues. The sec-
ond method is to implement block based data-driven
behavior in the style of Simulink models, again using
a significantly reduced block library to demonstrate
functionality. For each of these behavioral modeling
methods, IML will include some mechanism of ex-
ecution and/or simulation. The intent is to be able
to walk though execution of the models, and provide
simulated inputs to observe the system’s responses.
For code generation, our intent will be to generate
functional code, in Java for example, for the behav-
ioral models that can be run independently from the
IML framework. The focus of this aspect of IML is
to demonstrate the power of MDSE to produce source
code from graphical models.
The final area of work for us in development
of the IML is related to model-based testing and
model-checking techniques. We have yet to deter-
mine the specifics, but we will leverage existing test-
ing technologies, such as test case generation through
symbolic execution for the UML-RT based mod-
els (Zurowska and Dingel, 2012; Rapos and Dingel,
2012), and some form of Simulink model style of test-
ing capable of generating full test suites that apply to
both simulation and code generation, while consider-
ing the evolution of systems and their tests (Matinne-
jad et al., 2016).
7 CONCLUSIONS
The goal of the IML and its framework is to pro-
vide computer science and software engineering ed-
ucators adequate tool support to effectively incorpo-
rate MDSE into their curriculum, either as modules
in existing courses or, ideally, as full courses on the
topic. We envision IML as a modeling language that
is capable of producing small-scale and simpler work-
ing software systems, but one that is not burdened by
the cumbersome nature of many existing languages
and tools available currently. By stripping away many
low-level details and leaving only what is necessary
for a student to master modeling techniques such as
meta-modeling, model transformations, model-based
testing, and others, IML aims to fill a sufficient void
in educational focused software.
2
https://www.eclipse.org/papyrus-rt/
REFERENCES
Ammann, P. and Offutt, J. (2016). Introduction to software
testing. Cambridge University Press.
Amyot, D., Farah, H., and Roy, J.-F. (2006). Evaluation of
development tools for domain-specific modeling lan-
guages. In International Workshop on System Analysis
and Modeling, pages 183–197. Springer.
Ciccozzi, F., Famelis, M., Kappel, G., Lambers, L., Mosser,
S., Paige, R. F., Pierantonio, A., Rensink, A., Salay,
R., Taentzer, G., Vallecillo, A., and Wimmer, M.
(2018). Towards a body of knowledge for model-
based software engineering. In MODELS, pages 82–
89, New York, NY, USA. ACM.
Fleurey, F. and Solberg, A. (2009). A domain specific
modeling language supporting specification, simula-
tion and execution of dynamic adaptive systems. In
MODELS, pages 606–621. Springer.
Furtado, A. W. and Santos, A. L. (2006). Using domain-
specific modeling towards computer games develop-
ment industrialization. In OOPSLA workshop on
domain-specific modeling (DSM06).
Hahn, C. (2008). A domain specific modeling language
for multiagent systems. In Joint conference on
Autonomous agents and multiagent systems, pages
233–240. International Foundation for Autonomous
Agents and Multiagent Systems.
Hamou-Lhadj, A., Gherbi, A., and Nandigam, J. (2009).
The impact of the model-driven approach to software
engineering on software engineering education. In
International Conference on Information Technology:
New Generations, pages 719–724.
Hili, N., Dingel, J., and Beaulieu, A. (2017). Modelling and
code generation for real-time embedded systems with
uml-rt and papyrus-rt. In International Conference on
Software Engineering Companion, pages 509–510.
Hutchinson, J., Rouncefield, M., and Whittle, J. (2011).
Model-driven engineering practices in industry. In
International Conference on Software Engineering,
pages 633–642. ACM.
Hutchinson, J., Whittle, J., and Rouncefield, M. (2014).
Model-driven engineering practices in industry: So-
cial, organizational and managerial factors that lead to
success or failure. SCP, 89:144–161.
Kahani, N., Hili, N., Cordy, J. R., and Dingel, J. (2017).
Evaluation of uml-rt and papyrus-rt for modelling
self-adaptive systems. In International Workshop on
Modelling in Software Engineering, pages 12–18.
K
¨
arn
¨
a, J., Tolvanen, J.-P., and Kelly, S. (2009). Evaluating
the use of domain-specific modeling in practice. In
OOPSLA workshop on Domain-Specific Modeling.
Kelly, S. and Tolvanen, J.-P. (2008). Domain-specific mod-
eling: enabling full code generation. John Wiley &
Sons.
Mannila, L. and de Raadt, M. (2006). An objective compar-
ison of languages for teaching introductory program-
ming. In Baltic Sea conference on Computing educa-
tion research, pages 32–37. ACM.
Matinnejad, R., Nejati, S., Briand, L. C., and Bruckmann,
T. (2016). Automated test suite generation for time-
continuous simulink models. In Proceedings of the
MODELSWARD 2019 - 7th International Conference on Model-Driven Engineering and Software Development
424