Universal Access in the Information Society

, Volume 18, Issue 4, pp 747–770 | Cite as

A microservice-based architecture for enhancing the user experience in cross-device distributed mashup UIs with multiple forms of interaction

  • Antonio Jesús Fernández-García
  • Luis Iribarne
  • Antonio Corral
  • Javier CriadoEmail author
  • James Z. Wang
Long Paper


Mobility and continuous connection entail the emergence of heterogeneous devices with multiple forms of interaction. However, it is challenging for developers and corporations to keep up with the devices and provide applications adapted to them. Besides, better user experiences attuned to users’ needs and desires are increasingly in demand. User interfaces play a major role because they must be distributed through different devices and offer a customized experience for each user–device combination. We take advantage of the component-based applications easiness to build customized interfaces that can give optimal solutions to fulfill the requirements for adapting themselves to cross-device applications with multiple forms of interaction. User interaction on mashup interfaces can generate a great deal of data, which can be analyzed for improving the interaction and usefulness of the applications. In our paper, we have created a microservice-based architecture that generates datasets which contain the user behavior for further analysis. Therefore, the user experience and usability in distributed user interfaces may be improved through prediction models generated from the data. Each microservice autonomously fetches its own data and performs consistently so that it can transform datasets optimally by using feature engineering techniques. Thus, data analysis and algorithms can create accurate yet simple prediction models that provide useful knowledge to enhance the user experience. A REST API web service is added to each microservice to facilitate their communication with other microservices and/or third-party clients. The entire microservice architecture, including feature engineering and RESTful API web services for each microservice, offers an infrastructure to handle and process data interaction of cross-devices applications with multiple forms of interaction. This approach has been deployed in a real mashup application where new datasets have been created, processed and validated.


Cross-device applications Multiform interaction Distributed interfaces Microservice architectures Feature engineering Mashup user interfaces 



This work has been funded by the EU ERDF and the Spanish Ministry of Economy and Competitiveness (MINECO) under Project TIN2013-41576-R. A.J. Fernandez-Garcia has been funded by a FPI Grant BES-2014-067974. J.Z. Wang was funded by the US National Science Foundation under Grant No. 1027854.


  1. 1.
    Albertos-Marco, F., Penichet, V.M.R., Gallud, J.A.: Distributing interaction in responsive cross-device applications. In: Current Trends in Web Engineering ICWE 2016. LNCS 9881, pp. 174–178. Springer (2016)Google Scholar
  2. 2.
    Beck, K., et al.: Manifesto for agile software development.
  3. 3.
    Chen, L.: Continuous delivery: huge benefits, but challenges too. IEEE Softw. 32(2), 50–54 (2015)CrossRefGoogle Scholar
  4. 4.
    Criado, J., Rodríguez-Gracia, D., Iribarne, L., Padilla, N.: Toward the adaptation of component-based architectures by model transformation: behind smart user interfaces. Softw. Pract. Exp. 45(12), 1677–1718 (2015)CrossRefGoogle Scholar
  5. 5.
    Criado, J., Vicente-Chicote, C., Padilla, N., Iribarne, L.: A model-driven approach to graphical user interface runtime adaptation. In: 5th International Workshop on Models, CEUR-WS, vol. 641, pp. 49–59 (2010)Google Scholar
  6. 6.
    Cyfe: Business mashup to manage social media, analytics, marketing, sales, support and infrastructure components.
  7. 7.
    Daniel, F., Matera, M.: Mashups: Concepts, Models and Architectures. Springer, Berlin (2014)CrossRefGoogle Scholar
  8. 8.
    Elmqvist, N.: Distributed User Interfaces: State of the Art, Distributed User Interfaces, Human–Computer Interaction, pp. 1–12. Springer, London (2011)CrossRefGoogle Scholar
  9. 9.
    ENIA: The Environmental Information Agent Project.
  10. 10.
    Fehling, C., Leymann, F., Retter, R., Schupeck, W., Arbitter, P.: Cloud application architecture patterns. In: Cloud computing patterns: fundamentals to design, build, and manage cloud applications, pp. 151–238. Springer, Vienna (2014). Google Scholar
  11. 11.
    Fernández-García, A.J., Iribarne, L., Corral, A., Wang, J.Z.: Evolving mashup interfaces using a distributed machine learning and model transformation methodology. In: OTM 2015. LNCS 9416, pp. 401–410. Springer (2015)Google Scholar
  12. 12.
    Fernández-Villamor, J.I., Iglesias, C.A., Garijo, M.: Microservices—lightweight service descriptions for REST architectural style. ICAART 2010, 576–579 (2010)Google Scholar
  13. 13.
    Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)Google Scholar
  14. 14.
    Freeboard: Dashboards for the internet of things.
  15. 15.
    Geckoboard: KPI mashup dashboard software for businesses.
  16. 16.
    Ghiani, G., Paternò, F., Spano, L.D., Pintori, G.: An environment for end-user development of web mashups. Int. J. Hum. Comput. Stud. 87, 38–64 (2016)CrossRefGoogle Scholar
  17. 17.
    Han, S., He, D., Yue, Z., Brusilovsky, P.: Supporting cross-device web search with social navigation-based mobile touch interactions. In: User Modeling, Adaptation and Personalization UMAP 2015. LNCS 9146, pp. 143–155. Springer (2015)Google Scholar
  18. 18.
    Hoyer, V., Fischer, M.: Market overview of enterprise mashup tools. In: Service-Oriented Computing ICSOC 2008. LNCS, vol. 5364, pp. 708–721. Springer (2008)Google Scholar
  19. 19.
    Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation. Addison-Wesley, Reading (2011)Google Scholar
  20. 20.
    Inc: Cisco Systems. Cisco Visual Networking Index: Forecast and Methodology, 2015–2020. Technical Report, Cisco Systems, Inc. (2016)Google Scholar
  21. 21.
    Iribarne, L., Padilla, N., Criado, J., Vicente-Chicote, C.: Metamodeling the structure and interaction behavior of cooperative component-based user interfaces. J. Univ. Comput. 18(19), 2669–2685 (2012)Google Scholar
  22. 22.
    Kane, S.K., Karlson, A.K., Meyers, B.R., Johns, P., Jacobs, A., Smith, G.: Exploring cross-device web use on PCs and mobile devices. In: Human–Computer Interaction INTERACT 2009. LNCS, vol. 5726, pp. 722–735. Springer, Berlin (2009)CrossRefGoogle Scholar
  23. 23.
    Kantardzic, M.: Data Mining: Concepts, Models, Methods and Algorithms. Wiley, London (2002)zbMATHGoogle Scholar
  24. 24.
    Lewis, J., Fowler, M.: Microservices: a definition of this new architectural term. (2014)
  25. 25.
    Nebeling, M., Zimmerli, C., Husmann, M., Simmen, D.E., Norrie, M.C.: Information concepts for cross-device applications. In: 3rd Work. on Distributed User Interfaces: Models, Methods and Tools (DUI 2013), pp. 14–17 (2013)Google Scholar
  26. 26.
    Netvibes: Mashup application for analyze and act on all the data that matters to a brand or business.
  27. 27.
    OGC: The open geospatial consortium.
  28. 28.
    Paredes-Valverde, M.A., Alor-Hernández, G., Rodríguez-González, A., Valencia-García, R., Jiménez-Domingo, E.: A systematic review of tools, languages, and methodologies for mashup development. Softw. Pract. Exp. 45(3), 365–397 (2015)CrossRefGoogle Scholar
  29. 29.
    Poslad, S.: Ubiquitous Computing: Basics and Vision, pp. 1–40. Wiley, London (2009)CrossRefGoogle Scholar
  30. 30.
    Ramasubramanian, K., Singh, A.: Feature Engineering, pp. 181–217. Apress, Berkeley (2017)Google Scholar
  31. 31.
    Sanctorum, A., Signer, B.: Towards user-defined cross-device interaction. In: Current Trends in Web Eng. ICWE 2016. LNCS, vol. 9881, pp. 179–187. Springer (2016)Google Scholar
  32. 32.
    Santosa, S., Wigdor, D.: A field study of multi-device workflows in distributed workspaces. In: The ACM Int. Joint Conf. on Pervasive and Ubiquitous Computing (UbiComp 2013), pp. 63–72. ACM, New York (2013)Google Scholar
  33. 33.
    SOAP (Simple Object Access Protocol) W3C Standard.
  34. 34.
    REDIAM network. The Andalusian Environmental Information Network, Spain.
  35. 35.
    Thönes, J.: Microservices. IEEE Softw. 32(1), 113–116 (2015)CrossRefGoogle Scholar
  36. 36.
    Tschudnowsky A., Gaedke M.: Loop discovery in publish-subscribe-based user interface mashups. In: Engineering the Web in the Big Data Era ICWE 2015. LNCS, vol. 9114, pp. 683–686. Springer (2015)Google Scholar
  37. 37.
    Vallecillos, J., Criado, J., Fernández-García, A.J., Padilla, N., Iribarne, L.: A web services infrastructure for the management of mashup interfaces. In: Workshop on Engineering Service-Oriented Applications (WESOA 2015). LNCS, vol. 9586, pp. 64–75, Springer (2016)Google Scholar
  38. 38.
    Velosa, A., Schulte, W.R, Lheureux, B.J.: Hype cycle for the internet of things. (2016)
  39. 39.
    zur Muehlen, M., Nickerson, J., Swenson, K.D.: Developing web services choreography standards: the case of REST vs. SOAP. Decis. Supp. Syst. 40(1), 9–29 (2005)CrossRefGoogle Scholar

Copyright information

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

Authors and Affiliations

  1. 1.Applied Computing GroupUniversity of AlmeriaAlmeríaSpain
  2. 2.College of Information Sciences and TechnologyThe Pennsylvania State UniversityState CollegeUSA

Personalised recommendations