Skip to main content
Log in

Evaluating user interface generation approaches: model-based versus model-driven development

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Advances in software design possibilities have led to a growing interest in the study of user interfaces (UIs). Many Model-Based User Interface Development Environments (MB-UIDEs) have been proposed to deal with the generation of the UIs (semi-) automatically by using models with different levels of abstraction. Often, this generation is limited to the UI part of an application. However, achieving true model-driven development (MDD) requires the co-development of application and UI and, hence, needs to go a step further. This paper analyzes a large set of existing MB-UIDEs, evaluates, from a critical perspective, to what extent they can be considered full MDD environments, and adequately addresses the co-design of UI and application. Following the guidelines proposed by Kitchenham and Charters (Engineering 2, 2007), we performed a systematic literature review. A total of 96 papers were examined. Based on these papers, an assessment framework containing 10 criteria with specific metrics to evaluate MB-UIDEs was defined and 30 different environments were evaluated following these criteria. The evaluation identifies several gaps in the existing state of the art and highlights the areas of promising improvement. The evaluation shows that, although a strong progress has being achieved over the last years, the existing environments do not yet fully exploit the benefits and potentialities of MDD, nor do they adequately integrate UI design with application logic design and generation. Further research needs to be done to support the MDD of UIs and the co-design of the underlying application. The difficulty of use of the existing MB-UIDEs, the lack of UI design flexibility, and the lack of complete and integrated development support are the main research gaps that need to be addressed.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

Notes

  1. http://www.andromda.org/.

  2. https://eclipse.org/acceleo/downloads/.

  3. http://www.arcstyler.com.

  4. http://www.ifml.org.

  5. https://www.w3.org/TR/xhtml1/.

  6. http://www.leonardi-free.org and http://www.w4.eu.

  7. Olivanova software: http://software.olivanova.com/uk/.

References

  1. Akiki, P.A., Bandara, A.K., Yu, Y.: RBUIS: simplifying enterprise application user interfaces through engineering role-based adaptive behavior. In: Proceedings of the 5th ACM SIGCHI Symposium on Engineering Interactive Computing Systems, pp. 3–12. ACM (2013)

  2. Akiki, P.A., Bandara, A.K., Yu, Y.: Adaptive model-driven user interface development systems. ACM Comput. Surv. 47(1), 9 (2015)

    Google Scholar 

  3. Aquino, N., Vanderdonckt, J., Panach, J.I., Pastor, O.: Conceptual modelling of interaction. In: Embley, DW., Thalheim, B (eds.) Handbook of Conceptual Modeling, pp. 335–358. Springer, Berlin, Heidelberg (2011)

  4. Aquino, N., Vanderdonckt, J., Pastor, O.: Transformation templates: adding flexibility to model-driven engineering of user interfaces. In: SAC’2010, pp. 1195–1202. ACM Press, New York, Sierre (2010)

  5. Berti, S., Correani, F., Paterno, F., Santoro, C.: The TERESA XML language for the description of interactive systems at multiple abstraction levels. In: Proceedings Workshop on Developing User Interfaces with XML: Advances on User Interface Description Languages, pp. 103–110 (2004)

  6. Bézivin, J.: In search of a basic principle for model driven engineering. Eur. J. Inform. Prof. 5(2), 21–24 (2004)

    Google Scholar 

  7. Blumendorf, M., Lehmann, G., Feuerstack, S., Albayrak, S.: Executable models for human–computer interaction. In: International Workshop on Design, Specification, and Verification of Interactive Systems, pp. 238–251. Springer (2008)

  8. Bodart, F., Vanderdonckt, J.: Towards a systematic building of software architectures: the TRIDENT methodological guide. In: Design, Specification and Verification of Interactive Systems, DSV-IS’95, pp. 262–278. Citeseer (1995)

  9. Botterweck, G.: A model-driven approach to the engineering of multiple user interfaces. In: Kühne, T. (ed.) Models in Software Engineering, pp. 106–115. Springer, Berlin, Heidelberg (2006)

  10. Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. Morgan & Claypool, San Rafael (2012)

    Book  Google Scholar 

  11. Cabot, J., Teniente, E.: Constraint support in MDA tools: a survey. In: European Conference on Model Driven Architecture-Foundations and Applications, pp. 256–267. Springer (2006)

  12. Calvary, G., Coutaz, J., Thevenin, D., Limbourg, Q., Bouillon, L., Vanderdonckt, J.: A unifying reference framework for multi-target user interfaces. Interact. Comput. 15(3), 289–308 (2003)

    Article  Google Scholar 

  13. Coninx, K., Luyten, K., Vandervelpen, C., Van den Bergh, J., Creemers, B.: Dygimes: dynamically generating interfaces for mobile computing devices and embedded systems. In: Mobile HCI, pp. 256–270. Springer (2003)

  14. Cuppens, E., Raymaekers, C., Coninx, K.: A model-based design process for interactive virtual environments. In: International Workshop on Design, Specification, and Verification of Interactive Systems, pp. 225–236. Springer (2005)

  15. Da Silva, P.P.: User interface declarative models and development environments: a survey. In: Interactive Systems Design, Specification, and Verification, pp. 207–226. Springer (2001)

  16. Delgado, A., Estepa, A., Estepa, R.: Waine: automatic generator of web based applications. In: Third International Conference on Web Information Systems and Technologies, pp. 226–233 (2007)

  17. Engel, J., Herdin, C., Märtin, C.: Evaluation of model-based user interface development approaches. In: International Conference on Human–Computer Interaction, pp. 295–307. Springer (2014)

  18. Feuerstack, S., Blumendorf, M., Kern, M., Kruppa, M., Quade, M., Runge, M., Albayrak, S.: Automated usability evaluation during model-based interactive system development. In: Forbrig, P., Paternò, F. (eds.) Engineering Interactive Systems, pp. 134–141. Springer, Berlin, Heidelberg (2008)

  19. Feuerstack, S., Blumendorf, M., Schwartze, V., Albayrak, S.: Model-based layout generation. In: AVI, pp. 217–224. ACM (2008)

  20. Gajos, K., Weld, D.S.: SUPPLE: automatically generating user interfaces. In: Proceedings of the 9th International Conference on Intelligent User Interfaces, pp. 93–100. ACM (2004)

  21. Goderis, S.: On the Separation of User Interface Concerns: A Programmer’s Perspective on the Modularisation of User Interface Code. ASP/VUBPRESS/UPA, Antwerp (2008)

    Google Scholar 

  22. Gomaa, M., Salah, A., Rahman, S.: Towards a better model based user interface development environment: a comprehensive survey. In: MICS 5 (2005)

  23. Griffiths, T., Barclay, P.J., Paton, N.W., McKirdy, J., Kennedy, J., Gray, P.D., Cooper, R., Goble, C.A., da Silva, P.P.: Teallach: a model-based user interface development environment for object databases. Interact. Comput. 14(1), 31–68 (2001)

    Article  Google Scholar 

  24. Guerrero-García, J., Gonzalez-Calleros, J.M., Vanderdonckt, J., Muñoz-Arteaga, J.: A theoretical survey of user interface description languages: preliminary results. In: Web Congress, 2009. LA-WEB’09. Latin American, pp. 36–43. IEEE (2009)

  25. Guerrero-García, J., González-Calleros, J.M., Vanderdonckt, J., Muñoz-Arteaga, J.: A theoretical survey of user interface description languages: complementary results. In: UsiXML 2011, pp. 229–236 (2011)

  26. Guerrero, J., Vanderdonckt, J., Gonzalez, J.: FlowiXML: a step towards designing workflow management systems. J. Web Eng. 4(2), 163–182 (2008)

    Google Scholar 

  27. Hailpern, B., Tarr, P.: Model-driven development: the good, the bad, and the ugly. IBM Syst. J. 45(3), 451–461 (2006)

    Article  Google Scholar 

  28. Jha, N.K.: Low-power system scheduling, synthesis and displays. In: IEE Proceedings-Computers and Digital Techniques, vol. 152, pp. 344–352 (2005)

  29. Julien, D., Ziane, M., Guessoum, Z.: GOLIATH: an extensible model-based environment to develop user interfaces. In: Jacob, R.J.K., Limbourg, Q., Vanderdonckt, J. (eds.) Computer-Aided Design of User Interfaces IV, pp. 95–106. Springer, Dordrecht (2005)

  30. Karanam, M.: MDA Tool support for model driven software evolution: a survey. Issues 1(1), 11–17 (2015)

    Google Scholar 

  31. Kennard, R., Leaney, J.: Towards a general purpose architecture for UI generation. J. Syst. Softw. 83(10), 1896–1906 (2010)

    Article  Google Scholar 

  32. Kitchenham, B.A., Charters, S.: Guidelines for performing systematic literature reviews in software engineering. Keele University and University of Durham, EBSE Technical Report, pp. 1–57 (2007)

  33. Limbourg, Q., Vanderdonckt, J., Michotte, B., Bouillon, L., Florins, M.: USIXML: a user interface description language supporting multiple levels of independence. In: ICWE Workshops, pp. 325–338 (2004)

  34. Limbourg, Q., Vanderdonckt, J., Michotte, B., Bouillon, L., López-Jaquero, V.: USIXML: a language supporting multi-path development of user interfaces. In: Engineering Human Computer Interaction and Interactive Systems, pp. 200–220. Springer (2005)

  35. Lin, J., Landay, J.A.: Damask: A tool for early-stage design and prototyping of multi-device user interfaces. In: Proceedings of the 8th International Conference on Distributed Multimedia Systems (2002 International Workshop on Visual Computing), pp. 573–580 (2002)

  36. Lonczewski, F., Schreiber, S.: The FUSE-system: an integrated user interface design environment. In: CADUI, vol. 96, pp. 37–56 (1996)

  37. Luo, P., Szekely, P., Neches, R.: Management of interface design in HUMANOID. In: Proceedings of the INTERACT’93 and CHI’93 Conference on Human Factors in Computing Systems, pp. 107–114. ACM (1993)

  38. Marin, I., Ortin, F., Pedrosa, G., Rodriguez, J.: Generating native user interfaces for multiple devices by means of model transformation. Front. Inf. Technol. Electron. Eng. 16(12), 995–1017 (2015)

    Article  Google Scholar 

  39. Märtin, C.: Software life cycle automation for interactive applications: the AME design environment. In: CADUI, pp. 57–76 (1996)

  40. Meixner, G., Paternò, F., Vanderdonckt, J.: Past, present, and future of model-based user interface development. I-Com 10(3), 2–11 (2011)

    Article  Google Scholar 

  41. Mellor, S.J.: MDA Distilled: Principles of Model-Driven Architecture. Addison-Wesley Professional, Reading (2004)

    Google Scholar 

  42. Meskens, J., Vermeulen, J., Luyten, K., Coninx, K.: Gummy for multi-platform user interface designs: shape me, multiply me, fix me, use me. In: Proceedings of the working conference on Advanced visual interfaces, pp. 233–240. ACM (2008)

  43. Mitchell, K.J., Kennedy, J.B.: DRIVE: an environment for the organised construction of user-interfaces to databases. In: Proceedings of the 1996 International Conference on Interfaces to Databases. British Computer Society (1996)

  44. Molina, A.I., Giraldo, W.J., Gallardo, J., Redondo, M.A., Ortega, M., García, G.: CIAT-GUI: a MDE-compliant environment for developing Graphical User Interfaces of information systems. Adv. Eng. Softw. 52, 10–29 (2012)

    Article  Google Scholar 

  45. Molina, J.C., Pastor, O.: MDA, OO-Method y la tecnología OlivaNova Model Excecution. I Taller Sobre Desarrollos Dirigidos Por Modelos, MDA Y Aplicaciones. Málaga (2004)

  46. Molina, P.J., Meliá, S., Pastor, O.: Just-UI : a user interface specification model. In: CADUI’2002, pp. 63–74. Kluwer Acad. Pub, Dordrecht (2002)

  47. Mori, G., Paterno, F., Santoro, C.: Design and development of multidevice user interfaces through multiple logical descriptions. IEEE Trans. Softw. Eng. 30(8), 507–520 (2004)

    Article  Google Scholar 

  48. Mori, G., Paternò, F., Santoro, C.: CTTE: support for developing and analyzing task models for interactive system design. IEEE Trans. Softw. Eng. 28(8), 797–813 (2002)

    Article  Google Scholar 

  49. Myers, B.A.: Why are human–computer interfaces difficult to design and implement. DTIC Document (1993)

  50. Myers, B.A.: User interface software tools. ACM Trans. Comput. Hum. Interact. (TOCHI) 2(1), 64–103 (1995)

    Article  MathSciNet  Google Scholar 

  51. Myers, B.A., Rosson, M.B.: Survey on user interface programming. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, pp. 195–202. ACM (1992)

  52. Pastor, O., Molina, J.C.: Model-Driven Architecture in Practice. Springer, Berlin (2007)

    Google Scholar 

  53. Paternò, F.: From model-based to natural development. IST PROGRAMME (2003)

  54. 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. (TOCHI) 16(4), 19 (2009)

    Article  Google Scholar 

  55. Paternò, F., Zini, E.: Applying information visualization techniques to visual representations of task models. In: Proceedings of the 3rd Annual Conference on Task Models and Diagrams, pp. 105–111 (2004)

  56. Penichet, V.M.R., Lozano, M.D., Gallud, J.A., Tesoriero, R.: User interface analysis for groupware applications in the TOUCHE process model. Adv. Eng. Softw. 40(12), 1212–1222 (2009)

    Article  MATH  Google Scholar 

  57. Popp, R., Kaindl, H., Raneburger, D.: Connecting interaction models and application logic for model-driven generation of web-based graphical user interfaces. In: Software Engineering Conference (APSEC), 2013 20th Asia-Pacific, vol. 1, pp. 215–222. IEEE (2013)

  58. Puerta, A.R.: The MECANO project: comprehensive and integrated support for model-based interface development. In: CADUI, vol. 96, pp. 19–36 (1996)

  59. Raneburger, D.: Interactive model-driven generation of graphical user interfaces for multiple devices. Doctoral dissertation, Vienna University of Technology (2014)

  60. Sboui, T., Ayed, M.B.: Generative software development techniques of user interface: survey and open issues. Int. J. Comput. Sci. Inf. Secur. 14(7), 824 (2016)

    Google Scholar 

  61. Schlungbaum, E.: Model-Based User Interface Software Tools Current State of Declarative Models. Georgia Institute of Technology, Atlanta (1996)

    Google Scholar 

  62. Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39(2), 25–31 (2006)

    Article  Google Scholar 

  63. Snoeck, M.: Enterprise Information Systems Engineering: The MERODE Approach. Springer, Berlin (2014)

    Book  Google Scholar 

  64. Souchon, N., Vanderdonckt, J.: A review of XML-compliant user interface description languages. In: Interactive Systems. Design, Specification, and Verification, pp. 377–391. Springer (2003)

  65. Stary, C.: TADEUS: seamless development of task-based and user-oriented interfaces. IEEE Trans. Syst. Man Cybern. Part A Syst. Hum. 30(5), 509–525 (2000)

    Article  Google Scholar 

  66. Sukaviriya, P., Foley, J.D., Griffith, T.: A second generation user interface design environment: the model and the runtime architecture. In: Proceedings of the INTERACT’93 and CHI’93 Conference on Human Factors in Computing Systems, pp. 375–382. ACM (1993)

  67. Szekely, P.A., Sukaviriya, P.N., Castells, P., Muthukumarasamy, J., Salcher, E.: Declarative interface models for user interface construction tools: the MASTERMIND approach. In: EHCI, pp. 120–150. Citeseer (1995)

  68. Vanderdonckt, J.: Model-driven engineering of user interfaces: promises, successes, and failures. In: ROCHI’2008, pp. 1–10 (2008)

  69. Viana, W., Andrade, R.M.C.: XMobile: a MB-UID environment for semi-automatic generation of adaptive applications for mobile devices. J. Syst. Softw. 81(3), 382–394 (2008)

    Article  Google Scholar 

  70. Vi Tran, T.A.: UI generation from task, domain and user models: the DB-USE approach. In: 2nd ACM SIGCHI, pp. 353–356. ACM (2010)

  71. Vi Tran, T.A., Vanderdonckt, J., Kolp, M., Wautelet, Y.: Generating user interface for information applications from task, domain and user models with DB-USE. In: 1st International Workshop on USer Interface eXtensible Markup Language UsiXML’2010, pp. 183–194 (2010)

  72. Wiecha, C., Bennett, W., Boies, S., Gould, J., Greene, S.: ITS: a tool for rapidly developing interactive applications. ACM Trans. Inf. Syst. (TOIS) 8(3), 204–236 (1990)

    Article  Google Scholar 

Download references

Acknowledgements

This project was funded by the VLIR-UOS program under the Cuba Network project ZIUS2015AP033.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Estefanía Serral.

Additional information

Communicated by Dr. Jeff Gray and Heinrich Hussmann.

Appendices

Appendix 1

Search strings per repository

Repository

Search string

Web of Science

Theme: (“model-based user interface” OR “model-driven user interface” OR MDUID OR MDUI OR MDEUI OR MBUIDE OR MB-UIDE OR MBUID OR MB-UID) AND theme: (development or design or generation).

Scopus

TITLE-ABS-KEY ((“model-based user interface” OR “model-driven user interface” OR MDUID OR MDUI OR MDEUI OR MBUIDE OR MB-UIDE OR MBUID OR MB-UID) AND (design OR development OR generation)) AND (LIMIT-TO (SUBJAREA, “COMP”) OR LIMIT-TO (SUBJAREA, “ENGI”))

Appendix 2

Exclusion criteria for the systematic search.

  • Short papers

  • Papers analyzing approaches in an early stage

  • Books of proceedings

  • Papers with techniques for a specific aspect or development phase (e.g., adaptation technique, prototyping technique, layouting technique, consistency check technique, requirement elicitation phase) (or comparison of techniques)

  • Papers with analysis of languages or notations (or comparison of languages or notations)

  • Papers with tools used to edit some kind of model

  • Papers for which the full text is not available

  • Paper discussing a prediction tool

  • Paper with usability assessment

  • Paper analyzing principles of unified UI development

  • Paper presenting specification of interactive questionnaires

  • Paper with a taxonomy to evaluate task models

  • Paper with a Web-based ontology editor

  • Paper with authoring tool

  • Paper with a discussion of patterns

Number of discarded papers according to these exclusion criteria

Cause

Discarded

Short papers

16

Early stage

19

Book of proceedings

20

Technique for only a specific aspect or development phase comparison of techniques

71

Language or notation, or comparison among languages or notations

22

Tool for some kind of model

29

Paper not available

8

Remaining reasons

36

Total

221

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ruiz, J., Serral, E. & Snoeck, M. Evaluating user interface generation approaches: model-based versus model-driven development. Softw Syst Model 18, 2753–2776 (2019). https://doi.org/10.1007/s10270-018-0698-x

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-018-0698-x

Keywords

Navigation