A flexible data acquisition system for storing the interactions on mashup user interfaces

Abstract Nowadays, mashups applications are growing in popularity. They are accessible by cross-device applications, supporting multiple forms of interaction in cloud environments. In general, mashups manage a huge amount of heterogeneous data from different sources and handle different kinds of users. In this respect, mashup User Interfaces are becoming one of the most important pieces in many kinds of current management systems, such as for certain geographic or environmental information systems working on the Internet. In this type of systems, the user interface plays a particular role due to the huge variety of components or apps that the users need to manage at the same time. However, currently, there has been scant attention paid to the management of the user’s interaction with mashups interfaces. This goal involves the need of having important, well-constructed tools and methods conducting the data acquisition process for managing properly: (a) the interaction over the mashup user interfaces, at the front-end side; (b) the storage of the interaction in relational databases; and (c) well-supported microservices structures handled in the cloud. The fact of having valuable and flexible data acquisition processes encourages the deployment of others important issues of the interaction management, i.e., data searching, data mining, marketing, security, accessibility, usability or traceability of interaction data, among others. In this article, we present a flexible Data Acquisition System capable of capturing the human-computer interactions performed by users over mashup (User) Interfaces with the aim of storing them in a relational database. Firstly, the morphology of traditional mashup applications, their specifications and the relevant information that surrounds an interaction have been studied. Thereupon, a data acquisition system that stores user interaction on mashup based on such specifications was constructed. To achieve that purpose, an architecture of microservices was also designed in the cloud to detect, acquire, and collect the interactions performed over this kind of interfaces. The whole process is ready for acquiring internal data of the information system as well as context information and location awareness. To validate the data acquisition system, some tests on empirical case studies have been developed. Efficiency and effectiveness have also been determined by evaluating the performance of the acquisition system during different load tests. Finally, in order to ensure the software quality, a continuous integration strategy for software development and an easy management of the code have been used, facilitating the software maintenance alongside the microservice architecture, where functionalities are well encapsulated.

[1]  Kai Zheng,et al.  Research Article: An Interface-driven Analysis of User Interactions with an Electronic Health Records System , 2009, J. Am. Medical Informatics Assoc..

[2]  Siu-Ming Yiu,et al.  Modeling Web navigation by statechart , 2000, Proceedings 24th Annual International Computer Software and Applications Conference. COMPSAC2000.

[3]  Paulo F. Pires,et al.  Evaluating REST architectures - Approach, tooling and guidelines , 2016, J. Syst. Softw..

[4]  Rüdiger Heimgärtner Identification of the User by Analyzing Human Computer Interaction , 2009, HCI.

[5]  P. Mell,et al.  SP 800-145. The NIST Definition of Cloud Computing , 2011 .

[6]  Bo Cheng,et al.  Modeling Users' Behavior for Testing the Performance of a Web Map Tile Service , 2014 .

[7]  Mohammed Elkoutbi,et al.  User Interface Prototyping Based on UML Scenarios and High-Level Petri Nets , 2000, ICATPN.

[8]  Jaime Lloret,et al.  Implementation of end-user development success factors in mashup development environments , 2016, Comput. Stand. Interfaces.

[9]  Berry Eggen,et al.  User interaction with everyday lighting systems , 2014, Personal and Ubiquitous Computing.

[10]  Marc Abrams,et al.  UIML: An Appliance-Independent XML User Interface Language , 1999, Comput. Networks.

[11]  Fulvio Mastrogiovanni,et al.  Skinware: A real-time middleware for acquisition of tactile data from large scale robotic skins , 2014, 2014 IEEE International Conference on Robotics and Automation (ICRA).

[12]  Fabio Paternò,et al.  CTTE: Support for Developing and Analyzing Task Models for Interactive System Design , 2002, IEEE Trans. Software Eng..

[13]  Jean Vanderdonckt,et al.  On the Problem of Selecting Interaction Objects , 1994, BCS HCI.

[14]  Frank Maddix Human-computer interaction - theory and practice , 1990, Ellis Horwood series in computers and their applications.

[15]  宋爱红,et al.  Modeling Users’ Behavior for Testing the Performance of a Web Map Tile Service , 2014 .

[16]  Colin Atkinson,et al.  Model-Driven Development: A Metamodeling Foundation , 2003, IEEE Softw..

[17]  Brad A. Myers,et al.  Past, Present and Future of User Interface Software Tools , 2000, TCHI.

[18]  Liming Zhu,et al.  Composing enterprise mashup components and services using architecture integration patterns , 2011, J. Syst. Softw..

[19]  Fabio Paternò,et al.  TERESA: a transformation-based environment for designing and developing multi-device interfaces , 2004, CHI EA '04.

[20]  Javier Criado,et al.  A safe approach using virtual devices to evaluate home automation architectures prior installations , 2017, 2017 International Conference on Engineering, Technology and Innovation (ICE/ITMC).

[21]  Clemente Izurieta,et al.  Comparison of JSON and XML Data Interchange Formats: A Case Study , 2009, CAINE.

[22]  Feng Zhang,et al.  Research in Automatic Search Engine Replacement Algorithm for Web Caching Based on User Behavior , 2010, 2010 Seventh Web Information Systems and Applications Conference.

[23]  Jacob Eisenstein,et al.  XIML: a common representation for interaction data , 2002, IUI '02.

[24]  Benjamin Michotte,et al.  A transformational approach for multimodal web user interfaces based on UsiXML , 2005, ICMI '05.

[25]  Javier Criado,et al.  Toward the adaptation of component‐based architectures by model transformation: behind smart user interfaces , 2015, Softw. Pract. Exp..

[26]  Volker Hoyer,et al.  Market Overview of Enterprise Mashup Tools , 2008, ICSOC.

[27]  Tor-Morten Grønli,et al.  Towards end-user development of REST client applications on smartphones , 2016, Comput. Stand. Interfaces.

[28]  Norman W. Paton,et al.  User Interface Modeling in UMLi , 2003, IEEE Softw..

[29]  James Zijun Wang,et al.  Optimally Storing the User Interaction in Mashup Interfaces Within a Relational Database , 2016, ICWE Workshops.

[30]  Subhajyoti Bandyopadhyay,et al.  Cloud computing - The business perspective , 2011, Decis. Support Syst..

[31]  Jeffrey V. Nickerson,et al.  Developing web services choreography standards - the case of REST vs. SOAP , 2005, Decis. Support Syst..

[32]  Cesare Pautasso,et al.  REST: Advanced Research Topics and Practical Applications , 2014 .

[33]  Dian Tjondronegoro,et al.  Modeling users' web search behavior and their cognitive styles , 2014, J. Assoc. Inf. Sci. Technol..

[34]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture Volume 1: A System of Patterns , 1996 .

[35]  Fernando Alonso,et al.  A component- and connector-based approach for end-user composite web applications development , 2014, J. Syst. Softw..

[36]  C. L. Philip Chen,et al.  Data-intensive applications, challenges, techniques and technologies: A survey on Big Data , 2014, Inf. Sci..

[37]  Benjamin Lieberman UML Activity Diagrams : Detailing User Interface Navigation , 2001 .

[38]  M. Anusha,et al.  Big Data-Survey , 2016 .

[39]  Piotr Jankowski,et al.  Evaluating user interaction with a web-based group decision support system: A comparison between two clustering methods , 2015, Decis. Support Syst..

[40]  Imran Khan,et al.  Service composition for IP smart object using realtime Web protocols: Concept and research challenges , 2016, Comput. Stand. Interfaces.

[41]  Ralph Deters,et al.  Architectural Designs from Mobile Cloud Computing to Ubiquitous Cloud Computing - Survey , 2014, 2014 IEEE World Congress on Services.

[42]  Peter Lake,et al.  Information Systems Management in the Big Data Era , 2015, Advanced Information and Knowledge Processing.

[43]  Javier Criado,et al.  A cloud service for COTS component-based architectures , 2016, Comput. Stand. Interfaces.

[44]  Augusto Ciuffoletti,et al.  Automated Deployment of a Microservice-based Monitoring Infrastructure , 2015, Cloud Forward.

[45]  Nuno Jardim Nunes,et al.  Representing User-Interface Patterns in UML , 2003, OOIS.

[46]  Carlos Angel Iglesias,et al.  Microservices - Lightweight Service Descriptions for REST Architectural Style , 2010, ICAART.

[47]  Jean Vanderdonckt,et al.  Encapsulating knowledge for intelligent automatic interaction objects selection , 1993, INTERCHI.

[48]  Karl Aberer,et al.  A Survey of Model-based Sensor Data Acquisition and Management , 2013, Managing and Mining Sensor Data.

[49]  Hallvard Trætteberg UI Design without a Task Modeling Language - Using BPMN and Diamodl for Task Modeling and Dialog Design , 2008, TAMODIA/HCSE.

[50]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[51]  Marco Winckler,et al.  StateWebCharts: A Formal Description Technique Dedicated to Navigation Modelling of Web Applications , 2003, DSV-IS.

[52]  Djoerd Hiemstra,et al.  Analysis of Search and Browsing Behavior of Young Users on the Web , 2014, TWEB.

[53]  Feng Liang,et al.  A Scalable Data Acquisition Architecture in Web-Based IOT , 2011 .

[54]  Robert Feldt,et al.  Validity Threats in Empirical Software Engineering Research - An Initial Survey , 2010, SEKE.

[55]  Florian Daniel,et al.  Mashups - Concepts, Models and Architectures , 2014, Data-Centric Systems and Applications.

[56]  Jesús Manuel Almendros-Jiménez,et al.  An extension of UML for the modeling of WIMP user interfaces , 2008, J. Vis. Lang. Comput..

[57]  Charu C. Aggarwal,et al.  Mining Sensor Data Streams , 2013, Managing and Mining Sensor Data.

[58]  Alberto Trombetta,et al.  BPMN: An introduction to the standard , 2012, Comput. Stand. Interfaces.

[59]  Stefano Ceri,et al.  Web Modeling Language (WebML): a modeling language for designing Web sites , 2000, Comput. Networks.

[60]  Nancy P. Lin,et al.  Web user behaviors prediction system using trend similarity , 2007 .

[61]  Günther Palm,et al.  A generic framework for the inference of user states in human computer interaction , 2012, Journal on Multimodal User Interfaces.

[62]  Daniel M. Batista,et al.  A Survey of Large Scale Data Management Approaches in Cloud Environments , 2011, IEEE Communications Surveys & Tutorials.