A MODEL-DRIVEN APPROACH FOR MULTI-PLATFORM EXECUTION OF INTERACTIVE UIS DESIGNED WITH IFML
Keywords:IFML, Model Execution, MDA, Bytecode, Virtual Machine, Model Interpretation, Model Compilation, Human Computer Interaction, GUIs Plasticity, Computing Everywhere.
AbstractQuite recently, considerable attention has been paid to the design, implementation and evaluation of graphical user interfaces due to the apparition of the new strategic trend of computing everywhere. Accordingly, it is necessary to adopt an abstract representation of systems front-end in order to ensure this trend. IFML (Interaction Flow Modeling Language) is a user interfaces description language used to describe the content and interaction behavior of applications front-end. It has been conceived with executability aspect that is obtained via model transformations and full code generators into functional codes. however, these code generators are often accompanied by a loss of information. The main goal of this paper is to present a new virtual machine for directly executing GUIs models designed with IFML language in combination with UML domain model; that captures the content dependency. These input models will be then run on different platforms and devices. We adopted a new model driven approach that includes the hybrid approach of interpretive compiler; through a set of transformation rules, for the implementation of the desired virtual machine.
J.-S. Sottet, G. Calvary, and J.-M. Favre, “Models at run-time for sustaining user interface plasticity,” Proceedings of the 2006 International Conference on Models Run Time Workshop Conjunction Model, 2006, pp. 1-4.
B. Selic, “The pragmatics of model-driven development,” IEEE Softw., vol. 20, no. 5, pp. 19-25, Sep. 2003.
O. Shaer, R.J.K. Jacob, M. Green, K. Luyten, “User interface description languages for next generation user interfaces,” Proceedings of the International Conference on Human Factors in Computing Systems CHI’08, New York, NY, USA, 2008, pp. 3949–3952.
J. Miller and J. Mukerji, MDA Guide Version 1.0.1, 2003.
OMG, “About the Unified Modeling Language Specification Version 2.5.1,” 2017. [Online]. Available at: https://www.omg.org/spec/UML/.
W. Bouchelligua, A. Mahfoudhi, L. Benammar, S. Rebai, and M. Abed, “An MDE approach for user interface adaptation to the context of use,” Proceedings of the International Conference on Human-Centred Software Engineering, 2010, pp. 62–78.
N. Laaz, K. Wakil, S. Mbarki, and D. N. A. Jawawi, “Comparative analysis of interaction flow modeling language tools,” J. Comput. Sci., vol. 14, no. 9, pp. 1267–1278, Oct. 2018.
Z. Gotti and S. Mbarki, “Java swing modernization approach – Complete abstract representation based on static and dynamic analysis,” Proceedings of the International Conference on ICSOFT-EA, 2016.
OMG, ADM Platform Task Force, Object Management Group, 2003. [Online]. Available at: https://www.omg.org/adm/.
S. Gotti and S. Mbarki, “UML executable: A comparative study of UML compilers and interpreters,” Proceedings of the 2016 International Conference on Information Technology for Organizations Development (IT4OD), 2016, pp. 1–5.
S. Gotti and S. Mbarki, “IFVM bridge: A model driven IFML execution,” Int. J. Online Biomed. Eng. IJOE, vol. 15, no. 4, pp. 111–126, Feb. 2019.
B. A. Myers, “A brief history of human-computer interaction technology,” Interactions, vol. 5, no. 2, pp. 44–54, Mar. 1998.
A. Schuster, Ed., Intelligent Computing Everywhere, London: Springer-Verlag, 2007.
J. Guerrero-Garcia, J. M. Gonzalez-Calleros, J. Vanderdonckt, and J. Munoz-Arteaga, “A theoretical survey of user interface description languages: Preliminary results,” Proceedings of the 2009 Latin American Web Congress, 2009, pp. 36–43.
IFML: The Interaction Flow Modeling Language, The OMG standard for front-end design, [Online]. Available at: https://www.ifml.org/
M. Brambilla, The IFML book – OMG’s Interaction Flow Modeling Language explained, 1st ed., Morgan Kaufmann, 2014.
E. Cariou, C. Ballagny, A. Feugas, and F. Barbier, “Contracts for Model Execution Verification,” Proceedings of the European Conference on Modelling Foundations and Applications ECMFA’2011, 2011, pp. 3–18.
A. Aggarwal, D. S. K. Singh, and S. Jain, “A Hybrid Approach of Compiler and Interpreter,” International Journal of Scientific & Engineering Research, vol. 5, no. 6, p. 4, 2014.
OMG, “About the MOF Query/View/Transformation Specification Version 1.3,” 2016. [Online]. Available at: https://www.omg.org/spec/QVT/About-QVT.
T. Lindholm, F. Yellin, G. Bracha, and A. Buckley, The Java® Virtual Machine Specification, Oracle Help Center, 2013, 604 p.
D. Ehringer, “The Dalvik Virtual Machine,” 2010. [Online]. Available at: http://www.davidehringer.com/software/android/The_Dalvik_Virtual_Machine.pdf.
A. Rigo and S. Pedroni, “PyPy’s approach to virtual machine construction,” Proceedings of the Companion to the 21st ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA'06, 2006, pp. 944-953.
Acceleo. [Online]. Available at: https://www.eclipse.org/acceleo/documentation/.
E. Bruneton, “ASM 4.0 A Java bytecode engineering library,” 154 p.
Eclipse, “Open source IFML editor.” [Online]. Available at: http://ifml.github.io/.
How to Cite
LicenseInternational Journal of Computing is an open access journal. Authors who publish with this journal agree to the following terms:
• Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
• Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
• Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work.