Advertisement

Software & Systems Modeling

, Volume 18, Issue 4, pp 2753–2776 | Cite as

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

  • Jenny Ruiz
  • Estefanía SerralEmail author
  • Monique Snoeck
Regular Paper

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.

Keywords

Model-based user interface software tools User interface generation Model-driven development Integration with application development 

Notes

Acknowledgements

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

References

  1. 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)Google Scholar
  2. 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. 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)Google Scholar
  4. 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)Google Scholar
  5. 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)Google Scholar
  6. 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. 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)Google Scholar
  8. 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)Google Scholar
  9. 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)Google Scholar
  10. 10.
    Brambilla, M., Cabot, J., Wimmer, M.: Model-Driven Software Engineering in Practice. Morgan & Claypool, San Rafael (2012)CrossRefGoogle Scholar
  11. 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)Google Scholar
  12. 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)CrossRefGoogle Scholar
  13. 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)Google Scholar
  14. 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)Google Scholar
  15. 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)Google Scholar
  16. 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)Google Scholar
  17. 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)Google Scholar
  18. 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)Google Scholar
  19. 19.
    Feuerstack, S., Blumendorf, M., Schwartze, V., Albayrak, S.: Model-based layout generation. In: AVI, pp. 217–224. ACM (2008)Google Scholar
  20. 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)Google Scholar
  21. 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. 22.
    Gomaa, M., Salah, A., Rahman, S.: Towards a better model based user interface development environment: a comprehensive survey. In: MICS 5 (2005)Google Scholar
  23. 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)CrossRefGoogle Scholar
  24. 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)Google Scholar
  25. 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)Google Scholar
  26. 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. 27.
    Hailpern, B., Tarr, P.: Model-driven development: the good, the bad, and the ugly. IBM Syst. J. 45(3), 451–461 (2006)CrossRefGoogle Scholar
  28. 28.
    Jha, N.K.: Low-power system scheduling, synthesis and displays. In: IEE Proceedings-Computers and Digital Techniques, vol. 152, pp. 344–352 (2005)Google Scholar
  29. 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)Google Scholar
  30. 30.
    Karanam, M.: MDA Tool support for model driven software evolution: a survey. Issues 1(1), 11–17 (2015)Google Scholar
  31. 31.
    Kennard, R., Leaney, J.: Towards a general purpose architecture for UI generation. J. Syst. Softw. 83(10), 1896–1906 (2010)CrossRefGoogle Scholar
  32. 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)Google Scholar
  33. 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)Google Scholar
  34. 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)Google Scholar
  35. 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)Google Scholar
  36. 36.
    Lonczewski, F., Schreiber, S.: The FUSE-system: an integrated user interface design environment. In: CADUI, vol. 96, pp. 37–56 (1996)Google Scholar
  37. 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)Google Scholar
  38. 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)CrossRefGoogle Scholar
  39. 39.
    Märtin, C.: Software life cycle automation for interactive applications: the AME design environment. In: CADUI, pp. 57–76 (1996)Google Scholar
  40. 40.
    Meixner, G., Paternò, F., Vanderdonckt, J.: Past, present, and future of model-based user interface development. I-Com 10(3), 2–11 (2011)CrossRefGoogle Scholar
  41. 41.
    Mellor, S.J.: MDA Distilled: Principles of Model-Driven Architecture. Addison-Wesley Professional, Reading (2004)Google Scholar
  42. 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)Google Scholar
  43. 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)Google Scholar
  44. 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)CrossRefGoogle Scholar
  45. 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)Google Scholar
  46. 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)Google Scholar
  47. 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)CrossRefGoogle Scholar
  48. 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)CrossRefGoogle Scholar
  49. 49.
    Myers, B.A.: Why are human–computer interfaces difficult to design and implement. DTIC Document (1993)Google Scholar
  50. 50.
    Myers, B.A.: User interface software tools. ACM Trans. Comput. Hum. Interact. (TOCHI) 2(1), 64–103 (1995)MathSciNetCrossRefGoogle Scholar
  51. 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)Google Scholar
  52. 52.
    Pastor, O., Molina, J.C.: Model-Driven Architecture in Practice. Springer, Berlin (2007)Google Scholar
  53. 53.
    Paternò, F.: From model-based to natural development. IST PROGRAMME (2003)Google Scholar
  54. 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)CrossRefGoogle Scholar
  55. 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)Google Scholar
  56. 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)zbMATHCrossRefGoogle Scholar
  57. 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)Google Scholar
  58. 58.
    Puerta, A.R.: The MECANO project: comprehensive and integrated support for model-based interface development. In: CADUI, vol. 96, pp. 19–36 (1996)Google Scholar
  59. 59.
    Raneburger, D.: Interactive model-driven generation of graphical user interfaces for multiple devices. Doctoral dissertation, Vienna University of Technology (2014)Google Scholar
  60. 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. 61.
    Schlungbaum, E.: Model-Based User Interface Software Tools Current State of Declarative Models. Georgia Institute of Technology, Atlanta (1996)Google Scholar
  62. 62.
    Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39(2), 25–31 (2006)CrossRefGoogle Scholar
  63. 63.
    Snoeck, M.: Enterprise Information Systems Engineering: The MERODE Approach. Springer, Berlin (2014)CrossRefGoogle Scholar
  64. 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)Google Scholar
  65. 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)CrossRefGoogle Scholar
  66. 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)Google Scholar
  67. 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)Google Scholar
  68. 68.
    Vanderdonckt, J.: Model-driven engineering of user interfaces: promises, successes, and failures. In: ROCHI’2008, pp. 1–10 (2008)Google Scholar
  69. 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)CrossRefGoogle Scholar
  70. 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)Google Scholar
  71. 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)Google Scholar
  72. 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)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  1. 1.University of HolguínHolguínCuba
  2. 2.KU LeuvenLouvainBelgium

Personalised recommendations