Abstract
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.
Similar content being viewed by others
References
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)
Beck, K., et al.: Manifesto for agile software development. http://agilemanifesto.org
Chen, L.: Continuous delivery: huge benefits, but challenges too. IEEE Softw. 32(2), 50–54 (2015)
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)
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)
Cyfe: Business mashup to manage social media, analytics, marketing, sales, support and infrastructure components. http://www.cyfe.com/
Daniel, F., Matera, M.: Mashups: Concepts, Models and Architectures. Springer, Berlin (2014)
Elmqvist, N.: Distributed User Interfaces: State of the Art, Distributed User Interfaces, Human–Computer Interaction, pp. 1–12. Springer, London (2011)
ENIA: The Environmental Information Agent Project. http://acg.ual.es/projects/enia/ui/
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). https://doi.org/10.1007/978-3-7091-1568-8_4
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)
Fernández-Villamor, J.I., Iglesias, C.A., Garijo, M.: Microservices—lightweight service descriptions for REST architectural style. ICAART 2010, 576–579 (2010)
Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)
Freeboard: Dashboards for the internet of things. http://freeboard.io/
Geckoboard: KPI mashup dashboard software for businesses. https://www.geckoboard.com/
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)
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)
Hoyer, V., Fischer, M.: Market overview of enterprise mashup tools. In: Service-Oriented Computing ICSOC 2008. LNCS, vol. 5364, pp. 708–721. Springer (2008)
Humble, J., Farley, D.: Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation. Addison-Wesley, Reading (2011)
Inc: Cisco Systems. Cisco Visual Networking Index: Forecast and Methodology, 2015–2020. Technical Report, Cisco Systems, Inc. (2016)
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)
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)
Kantardzic, M.: Data Mining: Concepts, Models, Methods and Algorithms. Wiley, London (2002)
Lewis, J., Fowler, M.: Microservices: a definition of this new architectural term. http://martinfowler.com/articles/microservices.html (2014)
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)
Netvibes: Mashup application for analyze and act on all the data that matters to a brand or business. https://www.netvibes.com/
OGC: The open geospatial consortium. http://www.opengeospatial.org/
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)
Poslad, S.: Ubiquitous Computing: Basics and Vision, pp. 1–40. Wiley, London (2009)
Ramasubramanian, K., Singh, A.: Feature Engineering, pp. 181–217. Apress, Berkeley (2017)
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)
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)
SOAP (Simple Object Access Protocol) W3C Standard. https://www.w3.org/TR/soap12/
REDIAM network. The Andalusian Environmental Information Network, Spain. http://www.juntadeandalucia.es/medioambiente/site/rediam/
Thönes, J.: Microservices. IEEE Softw. 32(1), 113–116 (2015)
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)
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)
Velosa, A., Schulte, W.R, Lheureux, B.J.: Hype cycle for the internet of things. https://www.gartner.com/doc/3371743/hype-cycle-internet-things- (2016)
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)
Acknowledgements
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.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Fernández-García, A.J., Iribarne, L., Corral, A. et al. A microservice-based architecture for enhancing the user experience in cross-device distributed mashup UIs with multiple forms of interaction. Univ Access Inf Soc 18, 747–770 (2019). https://doi.org/10.1007/s10209-017-0606-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10209-017-0606-0