Abstract
The complexity and dynamism of modern systems have made software development a task that requires a lot of time and effort since traditional methods and tools focus on the implementation domain instead of the problem. The implementation and maintenance of software user interfaces have been no exception. Model-Driven Engineering (MDE) emerges as a potential approach to increase the level of abstraction, improve the management of the complexity and evolution of the system, and ultimately maximize the productivity of software development projects. Therefore, this paper presents a systematic literature review to understand the state of the art on model-driven user interface engineering by following the Kitchenham’s guidelines. This study aims to answer the following research questions: i) How is MDE used to build and maintain software user interfaces? and ii) How is the research addressed in studies related to using MDE to build and maintain software user interfaces? First, 1708 primary studies were collected from multiple research sources. Then, applying inclusion and exclusion criteria, 51 articles on relevant MDE proposals focused on software user interfaces were selected. Finally, quantitative and qualitative methods based on extraction criteria were applied to answer the proposed research questions, determine the advantages and disadvantages of the existing proposals, and identify the challenges, gaps, and research opportunities.
Access provided by Autonomous University of Puebla. Download conference paper PDF
Similar content being viewed by others
Keywords
- Model-Driven Engineering (MDE)
- Model-Driven Development (MDD)
- Models@run.time
- Systematic review
- User interface (UI)
1 Introduction
The increasing complexity of modern systems is one of the main challenges for software development [1, 2]. Particularly, those systems operate in highly distributed scenarios, in which the heterogeneity of devices, computing platforms, and user profiles predominates; for example, screen size and resolution, storage capacity, bandwidth, operating systems, knowledge, experience, and capabilities of users, among others [3, 4]. In addition, modern systems are characterized by their ubiquity, looking for the permanent adaptation of user requirements based on their mobility and context [4, 5].
The User Interface (UI) is the border between man and machine; therefore, it is responsible for ensuring that the user experience is satisfactory [1]. However, the UI is one of the aspects most affected by the growing complexity of systems. As a result, Its development and maintenance activities require more effort, time, and resources [6, 7]. In addition, about half the budget is invested in UI implementation tasks [8]. Therefore, it becomes essential to have software engineering methods and tools to facilitate and speed up the tasks of implementing and maintaining the UI requirements [1].
Model-Driven Engineering (MDE) emerges as an appropriate approach to abstracting the complexity of systems and improving their evolution [6]. MDE proposes the use of domain models as first-class citizen artifacts for the development or operation of systems [9]. Those models describe the system from different viewpoints or perspectives (e.g., architecture, behavior, UI), considering different abstraction levels [10]. In particular, the models can be used to capture the common characteristics of the UI and, through transformations, produce multiple implementations adjusted to the heterogeneity of the technological platforms, the context, or the users’ needs [11]. Also, those models are used to reason about the state and behavior of the system at runtime in order to adjust its UI [12]. Thus, MDE provides important benefits to increase developers’ productivity and reduce the system maintenance related to the UI.
In the literature, several systematic reviews [13,14,15,16,17,18] can be found that address, in general, the state of knowledge of MDE or that study other system perspectives different from the user interface. Hence, there is no an updated systematic review oriented to model-driven user interface engineering that evidences its particular state in order to understand aspects, such as the types of platforms and solutions to which the existing proposals are oriented, the models, languages, and tools they use, the empirical evaluation methods they apply, among others.
Consequently, this paper presents a systematic literature review to understand the state of the art on the use of MDE to support the development of software applications’ UI, for which the guidelines of Kitchenham et al. [19] have been followed. This study aims to answer the following research questions: i) How is MDE used to build and maintain software user interfaces? and ii) How is the research addressed in studies related to using MDE to build and maintain software user interfaces? First, 1708 primary studies were automatically retrieved from multiple research sources. Then, applying inclusion and exclusion criteria, 51 articles on MDE proposals focused on the software user interface were selected. In addition, a quality assessment of the selected studies was carried out to classify them according to their scientific relevance. Finally, quantitative and qualitative methods based on extraction criteria were applied to answer the proposed research questions.
The structure of this paper is as follows: Sect. 2 presents a review of the related work. Section 3 describes the methodology and protocol used in the systematic review. Section 4 includes a discussion of the results of the systematic review, highlighting the strengths, weaknesses, gaps, and challenges of using MDE to support software user interfaces. Finally, Sect. 5 presents the conclusions and lines of future work.
2 Related Work
This section presents a bibliographic review of the leading systematic and mapping literature reviews that aims to show the technological state of MDE.
Gottardi and Braga [13] present a systematic mapping to identify the technological and application domains in which MDE is successful as well as the challenges in applying this methodology to general-purpose development processes. Similarly, Bucchiarone et al. [14] present a discussion about the significant challenges and research initiatives for the MDE scientific community. Regarding the application of models at runtime, Bencomo et al. [15] analyze the state of the art of this line of research. For this, a taxonomy is used to compare the main research approaches and results in the area during the last decade and identify the corresponding research gaps and challenges.
In other more specific work, Shamsujjoha et al. [16] research what Model-Driven Development (MDD) techniques and methodologies have been used to support the development of mobile apps and how those techniques have been employed, identifying key benefits, limitations, gaps, and potential future research. Likewise, in their systematic review, Tufail et al. [17] present an analysis of the MDD tools that have been proposed for mobile applications. Finally, Ordonez et al. [18] present a systematic review of MDD and software accessibility, including the review of accessibility standards and a qualitative evaluation of the existing proposals.
In conclusion, it can be determined that the existing systematic reviews and mappings on MDE do not deepen their study from the viewpoint of user interfaces. Therefore, this article aims to help researchers fill this information limitation and identify research gaps, challenges, and opportunities in this field to support future studies.
3 Research Methods
This systematic literature review is aligned with the guidelines of Kitchenham et al. [19, 20] to ensure a reliable, replicable, and auditable process. This methodology comprises three stages: i) planning the review, to identify the objectives and validate the review protocol; ii) conducting the review, to perform the previously defined protocol; and iii) disseminating the review, to prepare a report with the results of the review.
3.1 Planning the Review
Research Question.
The overall objective of this systematic literature review is to understand the state of technological knowledge on Model-Driven User Interface Engineering. The proposed research questions are:
-
RQ1. How is MDE used to build and maintain software user interfaces?
-
RQ2. How is the research addressed in studies related to using MDE to build and maintain software user interface?
Data Sources and Search Strategy.
The information sources selected for the automatic search of primary studies were Scopus and Google Scholar indexers. For the manual search, the most significant conferences, journals, and book chapters dealing with MDE oriented to software user interfaces were selected. In addition, the snowball technique was applied to find additional relevant articles. The search was conducted from 2000, when Model-Driven Engineering reached relevance since around this date, the interest of researchers increased with the launch of the Model-Driven Architecture (MDA) initiative of the Object Management Group (OMG). Table 1 presents the search string used, which was applied to the article metadata: title, abstract, and keywords.
Selection of Primary Studies.
The primary studies obtained from the automatic and manual search were evaluated and selected by four researchers based on the title, abstract, and keywords. Discrepancies in the selection of studies were resolved by consensus, after reviewing the complete paper.
Primary studies meeting any of the following inclusion criteria were included:
-
IC1. Primary studies that address paradigms, approaches, methods, or techniques of MDE to design and build software user interfaces.
-
IC2. Primary studies that propose tools or applications based on MDE to design and build software user interfaces.
Primary studies that met at least one of the following exclusion criteria were excluded:
-
EC1. Editorials, prologues, opinions, interviews, news, or posters.
-
EC2. Duplicate studies in different sources.
-
EC3. Short articles with less than four pages.
-
EC4. Articles written in a language other than English.
-
EC5. Gray literature, thesis, and introduction papers.
Quality Assessment of Primary Studies.
A checklist of three questions was established to assess the quality of the selected studies (see Table 2). Each question was evaluated using a scale from 0 to 1. The scores obtained in the three questions were added to determine the total score for each article. The quality assessment was used only to classify the studies according to scientific relevance, and to have an adequate synthesis in the presentation of the results.
Data Extraction Strategy.
A data extraction form was used to facilitate and standardize the collection and systematization of information from the articles, as well as to answer the research questions initially proposed (see Table 3).
Methods of Analysis and Synthesis.
Two methods were used for the analysis and synthesis of the information collected: i) quantitative, based on the construction different types of graphs to represent the frequency of responses for each extraction criterion or combination of extraction criteria; and ii) qualitative, description of the most relevant proposals, identifying strengths, weaknesses, and research opportunities.
3.2 Conducting the Review
This subsection describes the process of collecting, selecting and assessing the quality of the primary studies, using the inclusion, exclusion, and quality criteria defined in the review protocol. Although the automatic search was carried out using indexers, Fig. 1 shows the results obtained in each activity of this process, classified according to the main computer digital libraries. A brief description of each activity of the process is given below:
-
1.
Automatic search. The search string was adapted and executed in each indexer, collecting 1708 primary studies for further analysis.
-
2.
First selection. The titles, abstracts and keywords of the retrieved studies were evaluated according to the inclusion and exclusion criteria in order to determine their relevance to the research topic. As a result, 56 studies were selected.
-
3.
Second selection. In this activity, discrepancies and doubts about the selection of some articles were resolved by consensus among all the participant researchers once the complete article had been reviewed. As a result, the repository was reduced to 42 studies. In turn, a manual search for articles was performed; and the snowball technique was applied to the selected articles, including 9 additional studies, having a total of 51 definitive studies.
-
4.
Quality Assessment. As a final activity, the selected primary studies were ranked, according to their level of scientific rigor and relevance.
4 Results and Discussion
As a result of the execution of the systematic review, 51 primary studies on MDE proposals oriented to the UI have been selected. Figure 2 presents the distribution of the studies by year. It can be seen that starting in 2005, articles on MDE applied to the UI began to be published, with the highest publication years being 2010, 2013, and 2015 with 9, 7, and 6 articles, respectively. However, several years can also be seen with a low number of publications, which leads to think that it is a line of research that does not have a permanent interest on the part of researchers, especially as of 2015, there is a considerable decrease in publications. According to the type of publication, 32 studies have been published in conferences, followed by 17 studies in journals; and, finally, 2 studies are book chapters.
Regarding the evaluation of the quality of the studies (see Fig. 3), the QAQ1 question has achieved very satisfactory results, with 27 studies scored as very relevant (more than 10 citations), 22 studies as relevant (between 1 and 10 citations), and barely 2 studies as irrelevant (not cited). Similarly, the QAQ2 question presents a favorable assessment, with 25 and 13 studies published in very relevant and relevant journals or conferences, respectively. Finally, the QAQ3 question shows a significant number of studies (15) that have not been subject to an empirical evaluation. In addition, of the 36 studies that include an assessment of their proposed solution, many studies (13) apply only a proof of concept. Consequently, the lack of evaluation or the type of evaluation used is the main threat to most of the proposed solutions’ validity, reliability, and generalization.
RQ1. How is MDE used to design and build software user interfaces?
EC1: Paradigm type. This extraction criterion aims to determine the extent to which researchers use the MDD and models@run.time paradigms to support software UI development and operation, respectively. In this sense, of the 51 studies, 36 (70.59%) apply the models only at design time to increase the abstraction and automation of the UI artifact development process [1, 4, 6, 8, 10, 11, 21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50], while only 15 (29.41%) cover the use of runtime models [12, 51,52,53,54,55,56,57,58,59,60,61,62,63,64]. Therefore, an important research opportunity is to extend the use of runtime models to maintain a two-way causal relationship between the model and the operating system. In this way. Thus, it would be possible to have more robust and autonomous solutions that analyze the models at runtime to support the adaptation of the UI according to the behavior of the operating environment of the system.
Among the most relevant studies on MDD is Bouchelligua et al. [45], which propose a model-based approach for adaptive UI generation through parameterized transformations from an abstract interface to a concrete interface. These transformation parameters are determined according to the context of the use of the application. In turn, Bendaly et al. [4] present a generic approach that takes as inputs an accessibility context model of a given user and the UI model in order to provide as output the adapted UI model. Regarding models@run.time, Criado et al. [62] present a proposal to auto-adapt the component-based UI structure at runtime using dynamic model transformation since the rules that describe its behavior are not pre-established but are selected from a repository according to the context of operation.
EC2: Platform Type.
This criterion aims to know the kind of platforms to which model-driven UI engineering proposals are oriented. Table 4 shows a uniform contribution of proposals for the different platforms; that is, 45.10% of studies are focused on the web, followed by 39.22% on desktop, and 33.33% on mobile. Among the most important studies, Sottet et al. [46] propose a variability management approach integrated into a web UI rapid prototyping process, which involves the combination of MDE and Software Product Lines; while Diep et al. [42] build an integrated development environment based on platform-independent UI models in order to create UIs for mobile applications on three different platforms: Android, iOS and Windows Phone.
A noteworthy aspect is the existence of some multi-platform proposals, which shows the concern of researchers to create solutions that abstract the heterogeneity of platforms and allow, from the same high-level model, to generate UI artifacts for various types of platforms. A clear example is MANTRA [11], an approach based on abstract UI models to generate implementation code for different UI platforms (web, mobile, desktop). Furthermore, in recent years, notable proposals have appeared on MDE to support the construction of dashboards and infographics, especially in domains such as IoT and smart city [23, 50, 51].
EC3: Type of Solution Developed.
The metamodels represent the type of solution that is mainly included in the studies (66.67%). However, a smaller number of studies (45.10%) go a step further to propose a DSL tool. A remarkable aspect is that 78.26% of the proposed DSLs have high-level graphical notation. In turn, there is also a significant number of transformation engine proposals (66.67%) that achieve the automation of models by translating them into code. Particularly, 54.90% of the proposals include model-to-model transformations, while 35.29% model-to-text transformations; existing studies that combine both types of transformations (see Table 5).
Regarding methodological solutions, the review found an important group of studies (54.90%) that describe in detail the proposed process to design platform-independent domain models and transform them into concrete UI artifacts. Similarly, for architectural solutions, there are several studies (39.22%) aligned with the Model-Driven Architecture (MDA) proposed by the Object Management Group (OMG), extending and customizing this architecture to the UI domain. In turn, to a lesser extent, frameworks (27.45%) based on models have been proposed as an integral solution to automate the construction and evolution of UIs. Finally, there is a minimum of middleware-type solutions (3.92%) mainly focused on using runtime models to adapt the UI according to the operating environment (see Table 5).
In short, further research is required to take advantage of existing metamodels by building DSLs with a notation (concrete syntax) that provides an easy-to-understand and easy-to-use modeling interface for developers and domain experts. Likewise, consistent with the recommendation of the previous criterion, it is necessary to deepen the investigation of middleware based on runtime models.
A complete study is the one proposed in [10], the authors present a comprehensive MDD solution to build graphical user interfaces from declarative models. The solution comprises a method called CIAT-GUI and a set of artifacts and tools that support this method, such as metamodels, graphical DSL, and automatic generators of the concrete user interface. The study also presents the solution’s architecture and its relationship with MDA levels. Figure 4 shows a bubble chart where the extraction criteria EC1, EC2, and EC3 are related, showing the extent to which the MDE paradigms have been applied by type of platform and type of proposed solution.
EC4: Modeling and Serialization Language Used.
Among the leading modeling and serialization languages used by MDE proposals for UI, ordered according to their recurrence level, are: XML [10, 11, 21,22,23,24, 28, 33, 34, 41, 42, 44, 47,48,49, 57,58,59,60], UML [6, 10, 11, 22, 26, 28, 29, 33, 35, 38, 43, 48, 58], ECORE - XMI [1, 4, 8, 11, 21,22,23,24, 28, 29, 35, 50, 64], MOF [10, 23, 24, 28, 29, 33, 38, 41, 47, 58], IFML [25, 27, 31, 46], OCL [56, 62], OWL [32, 58], KERMETA [34, 45], GOPPRR [48, 50], and JSON [24].
EC5: Development Tool Used to Build the DSL.
The most used tool by researchers to build DSLs is EMF (Eclipse Model Framework) [10, 11, 23, 24, 29, 51, 62, 64], followed well below by Sirius [21, 23], MetaEdit + [48, 50], Xtext [26, 29], and Papyrus [6].
EC6: Development Tool Used to Support Transformations.
According to this criterion, the preferred tool of the researchers to build the transformations is ATL [1, 10,11,12, 22, 23, 35, 41, 62]. Then, other tools are used to a lesser extent, such as ACCELEO [1, 21, 23, 28], M2T [8, 33, 51], XTEND [26, 29], XPAND [35], and MofScript [10].
EC7: Programming Language in Which the UI Artifacts are Generated.
The results of this criterion demonstrate that the studied approaches generate the code of the target UI artifacts in a variety of languages; however, Java [1, 4, 6, 10, 11, 21, 26, 28, 29, 35, 37, 38, 41, 48, 51, 53, 55, 59,60,61,62, 64], HTML [4, 11, 23, 24, 29, 37, 46, 47, 51, 52, 57, 58], and JavaScript [6, 23, 24, 27, 42, 51, 52, 57] are the most commonly used; while far below Python [24, 54], C++ [44, 59], C# [11, 29], Objective-C [29], XAML [29, 38], ASP.NET [23] are used.
EC8: Operating System on Which the Generated UI Artifacts Run.
Similarly, this criterion demonstrates the concern of researchers to create solutions for multiple platforms. In this sense, ordered according to their level of recurrence, the review has evidenced studies that generate UI artifacts to run on operating systems: Windows [4, 11, 22, 27, 28, 38, 40, 43,44,45, 48, 49, 54, 57, 59,60,61, 63, 64], Android [4, 6, 11, 21, 26, 27, 29, 33, 35, 42, 49, 51, 63], and iOS [6, 27, 29, 33, 35, 42, 57], preferably. Finally, a small group of studies generate solutions for: Windows Phone [29, 35, 42], and BlackBerry OS [35].
RQ2. How is the research addressed in studies related to using MDE to design and build software user interfaces?
EC9: Validation type. An essential aspect of the review of the selected studies was to define the type of validation that each of them performed on the respective research. The results show that the papers that carried out a case study represent 31.37%, while the proof of concept and experiment with 25.49% and 15.69%, respectively, and finally, the survey reaches only 1.96%. On the other hand, the papers that have not used any evaluation represent 29.41% (see Table 6). In summary, the studies that do not include an empirical evaluation and those that simply use a proof of concept represent more than half of the studies (54.90%), being the main limitation of this area of research. Hence, researchers should use more rigorous evaluation methods to determine the validity of the results. Figure 5 presents a bubble chart that contrasts the type of evaluation performed by the type of MDE solution proposed.
Among the research papers to be highlighted in this section, firstly, the authors of [51] used a combination of evaluation types, consisting of a case study, a family of experiments, and a survey, in order to test the scalability, usability, and understandability of a smart city KPIs assessment modeling framework. In another study, Brambilla et al. [27] implemented three real industrial case studies to demonstrate the feasibility of their model-based approach to front-end and user interface design for IoT systems. Finally, the study presented by [10] presented a case study to evaluate the perception of software engineers from a pharmaceutical company about the usefulness of the proposed model-based user interface design method and tools.
EC10: Study type.
It was found that 72.55% are new studies that have not presented a previous phase [1, 4, 6, 10, 12, 21, 24, 26,27,28,29,30,31,32,33,34, 36,37,38, 42, 44, 45, 47,48,49,50, 53,54,55,56,57, 59,60,61,62,63,64], while 27.45% correspond to research papers that are an extension of past research [8, 11, 22, 23, 25, 35, 39,40,41, 43, 46, 51, 52, 58].
EC11: Approach Scope.
The results of this criterion show that 76.47% represent the research papers developed in an academic environment [1, 4, 6, 10,11,12, 21,22,23,24,25,26, 29,30,31,32,33, 36, 37, 40, 42,43,44,45,46,47,48,49,50,51, 53,54,55,56, 58, 59, 62,63,64], while only 23.53% were carried out with the participation of the industry [8, 27, 28, 34, 35, 38, 39, 41, 52, 57, 60, 61].
5 Conclusions and Future Work
The UI (front-end) is one of the fundamental components of the software to guarantee a satisfactory user experience. However, due to the intrinsic complexity and uncertainty of modern systems and the demands of multiple stakeholders, emerging methods, such as MDE, are required to improve the quality of the development and operation of software user interfaces. This work covers the need for an updated systematic literature review on Model-Driven Engineering applied to UIs that gives an overview of the current state and orientation for future research. The main conclusions and findings of the research questions are detailed below:
-
RQ1. Among the strengths of this field of research is the existence of an important group of multi-platform MDE proposals that combine methodologies, architectures, metamodels, DSLs, and transformation engines. Also, in recent years, studies have appeared focused on constructing dashboards. However, studies have concentrated fundamentally on design time; therefore, a significant research challenge is to delve into the use of runtime models to promote the UI’s autonomous adaptation. One way to operationalize this requirement would be to propose model-based middleware at runtime. Likewise, it is necessary to take advantage of several proposed metamodels to complement them with a high-level visual DSL tool.
-
RQ2. The main concern is the large number of studies that have not been empirically evaluated or have applied a proof of concept. Hence, new studies should be promoted that contemplate more rigorous types of evaluation to validate the existing proposals, seeking a greater industry participation.
In future work, it is proposed to build a middleware based on runtime models to support the adaptation of UIs on multiple platforms, considering the strengths of the analyzed studies.
References
Zeferino, N.V., Vilain, P.: A model-driven approach for generating interfaces from user interaction diagrams. In: 16th International Conference on Information Integration and Web-based Applications and Services, pp. 474–478 (2014)
France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Future of Software Engineering, pp. 37–54 (2007)
Mitrović, N., Bobed, C., Mena, E.: Dynamic user interface architecture for mobile applications based on mobile agents. In: Ciuciu, I., et al. (eds.) OTM 2016. LNCS, vol. 10034, pp. 282–292. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-55961-2_29
Bendaly, H.Y., Zouhaier, L., Ben, A.L.: Model driven approach for adapting user interfaces to the context of accessibility: case of visually impaired users. J. Multimodal User Interfaces 13(4), 293–320 (2019)
López-Jaquero, V., Vanderdonckt, J., Montero, F., González, P.: Towards an extended model of user interface adaptation: the Isatine framework. In: International Conference on Engineering for Human-Computer Interaction, pp. 374–392 (2008)
Khan, M., et al.: A retargetable model-driven framework for the development of mobile user interfaces. J. Circuits Syst. Comput. 31(01), 2250018 (2022)
Zhang, L., Qu, Q.X., Chao, W.Y., Duffy, V.G.: Investigating the combination of adaptive uis and adaptable UIs for improving usability and user performance of complex UIs. Int. J. Hum.-Comput. Interact. 36(1), 82–94 (2020)
Frey, A.G., Sottet, J.S., Vagner, A.: Towards a multi-stakeholder user interface engineering approach with adaptive modelling environments. In: Symposium on Engineering Interactive Computing Systems, pp. 33–38 (2014)
Erazo-Garzón, L., Priscilla, C., Gustavo, R., Moyano, J.: A domain-specific language for modeling IoT system architectures that support monitoring. IEEE Access 10, 61639–61665 (2022)
Molina, A.I., et al.: CIAT-GUI: a MDE-compliant environment for developing graphical user interfaces of information systems. Adv. Eng. Softw. 52, 10–29 (2012)
Botterweck, G.: A model-driven approach to the engineering of multiple user interfaces. In: International Conference on Model Driven Engineering Languages and Systems, pp. 106–115 (2006)
Criado, J., et al.: A model-driven approach to graphical user interface runtime adaptation. In: International Conference on Model Driven Engineering Languages and Systems, pp. 49–59 (2010)
Gottardi, T., Vaccare Braga, R.T.: Understanding the successes and challenges of model-driven software engineering-a comprehensive systematic mapping. In: XLIV Latin American Computer Conference (CLEI), pp. 129–13 (2018)
Bucchiarone, A., et al.: Grand challenges in model-driven engineering: an analysis of the state of the research. Softw. Syst. Model. 19(1), 5–13 (2020)
Bencomo, N., Götz, S., Song, H.: Models@run.time: a guided tour of the state of the art and research challenges. Softw. Syst. Model. 18(5), 3049–3082 (2019)
Shamsujjoha, M., Grundy, J., Li, L., Khalajzadeh, H., Lu, Q.: Developing mobile applications via model driven development: a systematic literature review. Inf. Softw. Technol. 140, 106693 (2021)
Tufail, H., Azam, F., Anwar, M.W., Qasim, I.: Model-driven development of mobile applications: a systematic literature review. In: 9th Annual Information Technology, Electronics and Mobile Communication Conference, pp. 1165–1171 (2019)
Ordoñez, K., Hilera, J., Cueva, S.: Model-driven development of accessible software: a systematic literature review. Univers. Access Inf. Soc. 21, 295–324 (2022)
Kitchenham, B., Charters, S.: Guidelines for performing systematic literature reviews in software engineering, vol. 5. Ver. 2.3 EBSE Technical report (2007)
Erazo-Garzón, L., Erraez, J., Cedillo, P., Illescas-Peña L.: Quality assessment approaches for ambient assisted living systems: a systematic review. In: International Conference on Applied Technologies, vol. 1193, pp. 421–439 (2019)
Ali, A., Rashid, M., Azam, F., Rasheed, Y., Anwar, M.W.: A model-driven framework for android supporting cross-platform GUI development. In: 4th National Computing Colleges Conference, pp. 1–6 (2021)
Thomas, M., Mihaela, I., Andrianjaka, R.M., Germain, D.W., Sorin, I.: Metamodel based approach to generate user interface mockup from UML class diagram. Procedia Comput. Sci. 184, 779–784 (2021)
Rojas, E., Bastidas, V., Cabrera, C.: Cities-board: a framework to automate the development of smart cities dashboards. Internet Things J. 7(10), 10128–10136 (2020)
Vázquez-Ingelmo, A., García-Peñalvo, F.J., Therón, R., Conde, M.Á.: Representing data visualization goals and tasks through meta-modeling to tailor information dashboards. Appl. Sci. 10(7), 2306 (2020)
Kai, C.R., Liu, X.: IFML-based web application modeling. Procedia Comput. Sci. 166, 129–133 (2020)
Sabraoui, A., et al.: MDD approach for mobile applications based on DSL. In: International Conference of Computer Science and Renewable Energies, pp. 1–6 (2019)
Brambilla, M., Umuhoza, E., Acerbis, R.: Model-driven development of user interfaces for IoT systems via domain-specific components and patterns. J. Internet Serv. Appl. 8(1), 1–21 (2017)
Roubi, S., Erramdani, M., Mbarki, S.: Generating graphical user interfaces based on model driven engineering. Int. Rev. Comput. Softw. 10(5), 520–528 (2015)
Lachgar, M., Abdali, A.: Generating android graphical user interfaces using an MDA approach. In: 3rd International Colloquium in Information Science and Technology, pp. 80–85 (2014),
Zouhaier, L., et al.: A model driven approach for improving the generation of accessible user interfaces. In: 10th International Joint Conference on Software Technologies, pp. 1–6 (2015)
Da Costa, S.L., Graciano Neto, V.V., De Oliveira, J.L.: A user interface stereotype to build web portals. In: 9th Latin American Web Congress, pp. 10–18 (2014)
Zouhaier, L., Hlaoui, Y.B., Ben Ayed, L.J.: Generating accessible multimodal user interfaces using MDA-based adaptation approach. In: 38th Annual Computer Software and Applications Conference, pp. 535–540 (2014)
Schuler, A., Franz, B.: Rule-based generation of mobile user interfaces. In: 10th International Conference on Information Technology: New Generations, pp. 267–272 (2013)
Ben Ammar, L., Mahfoudhi, A.: Usability driven model transformation. In: 6th International Conference on Human System Interactions, pp. 110–116 (2013)
Sabraoui, A., El Koutbi, M., Khriss, I.: A MDA-based model-driven approach to generate GUI for mobile applications. Int. Rev. Comput. Softw. 8(3), 844–852 (2013)
Frey, A.G., Céret, E., Dupuy-Chessa, S., Calvary, G.: QUIMERA: a quality metamodel to improve design rationale. In: 3rd Symposium on Engineering Interactive Computing Systems, pp. 265–270 (2011)
Shirogane, J., Mukaeda, H., Iwata, H., Fukazawa, Y.: GUI prototype generation based on an MDA process. In. International Conference on Information Systems, pp. 478–482 (2010)
da Cruz, A.M.R., Faria, J.P.: A metamodel-based approach for automatic user interface generation. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 256–270. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16145-2_18
Raneburger, D.: Interactive model driven graphical user interface generation. In: 2nd Symposium on Engineering Interactive Computing Systems, pp. 321–324 (2010)
Ahmed, S., Ashraf, G.: Model-based user interface engineering with design patterns. J. Syst. Softw. 80(8), 1408–1422 (2007)
Ian Bull, R., Favre, J.M.: Visualization in the context of model driven engineering. In: MDDAUI@MoDELS (2005)
Diep, C.K., Tran, Q.N., Tran, M.T.: Online model-driven IDE to design GUIs for cross-platform mobile applications. In: 4th Symposium on Information and Communication Technology, pp. 294–300 (2013)
Raneburger, D., et al.: Optimized GUI generation for small screens. In: Hussmann, H., Meixner, G., Zuehlke, D. (eds.) Model-Driven Development of Advanced User Interfaces, SCI, vol. 340, pp. 107–122, Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-14562-9_6
Frey, A.G., Calvary, G., Dupuy-Chessa, S.: Xplain: an editor for building self-explanatory user interfaces by model-driven engineering. In: 2nd Symposium on Engineering Interactive Computing Systems, pp. 41–46 (2010)
Bouchelligua, W., Mahfoudhi, A., Benammar, L., Rebai, S., Abed, M.: An MDE approach for user interface adaptation to the context of use. In: Bernhaupt, R., Forbrig, P., Gulliksen, J., Lárusdóttir, M. (eds.) HCSE 2010. LNCS, vol. 6409, pp. 62–78. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16488-0_6
Sottet, J.-S., Vagner, A., Frey, A.G.: Model transformation configuration and variability management for user interface design. In: Desfray, P., Filipe, J., Hammoudi, S., Pires, L.F. (eds.) MODELSWARD 2015. CCIS, vol. 580, pp. 390–404. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-27869-8_23
Miñón, R., Moreno, L., Martínez, P., Abascal, J.: An approach to the integration of accessibility requirements into a user interface development method. Sci. Comput. Program. 86, 58–73 (2014)
Gibbs, I., Dascalu, S., Harris, F.C.: A separation-based UI architecture with a DSL for role specialization. J. Syst. Softw. 101, 69–85 (2015)
Aquino, N., Vanderdonckt, J., Pastor O.: transformation templates: adding flexibility to model-driven engineering of user interfaces. In: Symposium on Applied Computing, pp. 1195–1202 (2010)
De Morais, C.M., Kelner, J., Sadok, D., Lynn, T.: SiMoNa: a proof-of-concept domain specific modeling language for IoT infographics. In: Symposium on Visual Languages and Human-Centric Computing, pp. 199–203 (2018)
De Sanctis, M., Iovino, L., Rossi, M.T., Wimmer, M.: MIKADO: a smart city KPIs assessment modeling framework. Softw. Syst. Model 21(1), 281–309 (2022)
Bezerra, J.D.H., De Souza C.T.: A model-based approach to generate reactive and customizable user interfaces for the web of things. In: 25th Brazillian Symposium on Multimedia and the Web, pp. 57–60 (2019)
García, A., et al.: Model-based self-explanatory uis for free, but are they valuable? In: IFIP Conf. on Human-Computer Interaction, pp. 144–161 (2013)
Akiki, P.A., Bandara, A.K., Yu, Y.: Cedar studio: an IDE supporting adaptive model-driven user interfaces for enterprise applications. In: 5th Symposium on Engineering Interactive Computing Systems, pp. 139–144 (2013)
Criado, J., et al.: Adapting component-based user interfaces at runtime using observers. In: 16th Jornadas de Ingeniería del Software y Bases de Datos, pp. 707–712 (2011)
Iribarne, L., Padilla, N., Criado, J., Vicente-Chicote, C.: An interaction meta-model for cooperative component-based user interfaces. In: Meersman, R., Dillon, T., Herrero, P. (eds.) OTM 2010. LNCS, vol. 6428, pp. 259–268. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-16961-8_44
Paterno, F., Santoro, C., Spano, L.D.: MARIA: a universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments. ACM Trans. Comput.-Hum. Interact. 16(4), 1–30 (2009)
Kapłański, P., et al.: Automated reasoning based user interface. Expert Syst. Appl. 71, 125–137 (2017)
Coutaz, J., Balme, L., Alvaro, X., Calvary, G., Demeure, A., Sottet, J.-S.: An MDE-SOA approach to support plastic user interfaces in ambient spaces. In: Stephanidis, C. (ed.) UAHCI 2007. LNCS, vol. 4555, pp. 63–72. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73281-5_7
Khaddam, I., Mezhoudi, N., Vanderdonckt, J.: Adapt-first: a MDE transformation approach for supporting user interface adaptation. In: 2nd World Symposium on Web Applications and Networking, pp. 1–9 (2015)
Criado, J., et al.: An MDE approach for runtime monitoring and adapting component-based systems: application to WIMP user interface architectures. In: 38th Euromicro Conference on Software Engineering and Advanced Applications, pp. 150–157 (2012)
Criado, J., et al.: Toward the adaptation of component‐based architectures by model transformation: behind smart user interfaces. Softw. Pract. Exp. 45(12), 1677–1718 (2015)
Roscher, D., et al.: Dynamic distribution and layouting of model-based user interfaces. In: Hussmann, H., Meixner, G., Zuehlke, D. (eds.) Model-Driven Development of Advanced User Interfaces, SCI, vol. 340, pp. 171–197, Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-14562-9_9
Lehmann, G., Blumendorf, M., Albayrak, S.: Development of context-adaptive applications on the basis of runtime user interface models. In: 2nd Symposium on Engineering Interactive Computing Systems, pp. 309–314 (2010)
Acknowledgements
This study is part of the research project “Methodology and infrastructure based on models at runtime for the construction and operation of self-aware Internet of Things systems.” Therefore, we thank LIDI - Universidad del Azuay for its support.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Erazo-Garzón, L., Suquisupa, S., Bermeo, A., Cedillo, P. (2023). Model-Driven Engineering Applied to User Interfaces. A Systematic Literature Review. In: Botto-Tobar, M., Zambrano Vizuete, M., Montes León, S., Torres-Carrión, P., Durakovic, B. (eds) Applied Technologies. ICAT 2022. Communications in Computer and Information Science, vol 1755. Springer, Cham. https://doi.org/10.1007/978-3-031-24985-3_42
Download citation
DOI: https://doi.org/10.1007/978-3-031-24985-3_42
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-24984-6
Online ISBN: 978-3-031-24985-3
eBook Packages: Computer ScienceComputer Science (R0)