elaborating interactive graphical user interfaces. the
proposed IFVM (IFML Virtual Machine) considers
not only the UI general structure, but also the
different types of events that could be triggered as
well as the caused navigations between the views
especially the content-dependent ones.
The remainder of the paper is organized as
follows. We start out, in section 2, with the related
work on model execution approaches. In section 3,
we explore conceptual modeling of Human Computer
Interactions (HCIs) by presenting the user interface
description language IFML and its executability. The
section 4 is devoted to the proposed process of IFVM
virtual machine for executing IFML models. Future
works are presented in section 5. Section 6 concludes
the paper.
2 RELATED WORK
In this work and in related references, it was observed
that many researches have been proposed for directly
executing models, without code generation, as those
based on UML for the design of the back-end. Here
(Gotti and Mbarki, 2016), the authors discuss many
proposed works in this field through a comparative
study.
The literature on front-end development shows a
variety of model-based approaches for GUIs
generation. As for (Frajták, Bures and Jelinek, 2015),
authors discuss the automatic generation of
automated application front-end from the IFML
model. (Laaz et al., 2018) studied many other related
solutions or tools for modeling IFML by providing a
comparative analysis while considering various
criteria.
Besides, other model driven solutions, based on
IFML, were emerged for the development of code
generators by affording extension for the IFML
language, among these solutions we cite (Brambilla,
Mauri and Umuhoza, 2014).
(Gotti and Mbarki, 2016) offer a new utilization
of IFML language in the software modernization
field. they propose an architecture-driven
modernization (ADM) based approach to obtain
knowledge of the structure and behavior of source
code by generating three independent platform
combined models: KDM to capture the knowledge
discovery, IFML to extract the structure of the
presentation and TaskModel for tasks aspect needed
for the construction of the future user interface (UI).
However, to the authors' best knowledge, most of
the previous studies do not take into account the
IFML executability, while we refer to our previous
work (Gotti and Mbarki, 2016), the focus is different.
Although several solutions have suggested code
generation of IFML, little or no one have proposed a
direct execution of IFML without code generation
except (Gotti and Mbarki, 2016).
Nevertheless, in this paper, we explore the
possibility of executing IFML models by providing a
new model driven design of a virtual machine called
IFVM for directly executing the abstract models.
3 CONTEXT
A human can control and communicate with a
machine by means of what we call Human-Computer
Interaction (HCI). Engineers in this field are studying
how humans interact with computers or with each
other using computers, as well as how to design
systems that are ergonomic, efficient, easy to use, or
more generally adapted to their context of use.
Quite recently, considerable attention has been
paid to the new trend of computing everywhere in the
modern communication. It consists of the merging of
various technologies to allow people to work
everywhere in different devices. There is a need to
adapt the UIs with their context of use, i.e., plasticity
(Jean-Sébastien, Gaëlle and Jean-Marie, 2006). To
solve this issue many solutions have been proposed.
We focus on those model-based that permit plasticity
by elaborating platform independent models
describing the UIs and then it could be easy to
generate the implementation via model
transformations and code generators.
In fact, abstract modeling of UIs become a
necessity to adapt platforms and technologies
changes. So, the answer of how to permit UIs
presentation at a high level of abstraction is by
defining a language for abstractly describing the UIs
regarding many criteria as described here (Selic,
2003). We call this language a User Interface
Description Language (UIDL) (Orit et al., 2008).
OMG in its turn has adopted IFML in March 2013
as its vision of UIDL. IFML is designed to capture the
user interaction, the content and the control behavior
of the software systems front-end.
3.1 IFML Language
IFML allows the system modeler to design the
structure of the general view part of the system in
terms of ViewContainers with navigation relations,
and what ViewContainers could contain in terms of
ViewComponents. ViewComponents enable content
display and data entry, they could be associated with