Special Issue on Advanced Practices in Web Engineering 2020

J. G. Enríquez1,*, A. Jiménez-Ramírez1 and S. Meliá2

1Computer Languages and Systems Department. Escuela Técnica Superior de Ingeniería Informática, Avenida Reina Mercedes, s/n, 41012, Sevilla. Spain

2Computer Languages and Systems Department. Universidad de Alicante. Carretera San Vicente s/n, 03690 San Vicente del Raspeig, Alicante (Spain)

* Corresponding author

E-mail: jgenriquez@us.es

Editorial

Web engineering is aligned with the undergoing evolution of modern web applications which have higher user expectations and demands than ever before. Thus, the ability of developers to adopt new advanced practices could be the difference between success and failure.

This special issue addresses a set of advanced practices that we consider most relevant for the proper development of modern web applications such as (1) a systematic development by applying MDE, Testing and Agile methodologies, (2) techniques for the improvement of the user experience (UX), (3) the capability of gathering and processing large amounts of data by means of Big Data and Machine Learning, and last but not least, (4) the ability to address large projects with systems of systems.

We started with the need to improve the user experience in web applications, one of the possible mechanisms is the use of usability tests through questionnaires to know what user experience has been. In this context, the paper presented by Hinderks et al. has proposed an approach that evaluates the results from the User Experience Questionnaire (UEQ) using the importance-performance analysis (IPA). The aim of the authors is to create another possibility to interpret the results of the UEQ and to derive recommendations for action from them.

The next advanced practice that modern web applications should include is the study of how information and data are processed, stored, managed and visualized.

The growing volumes and sources of data have made Big Data technologies to become mainstream. In that sense, techniques like Data Visualization are being used increasingly to group large amounts of data in order to transform them into useful information. In addition, the vast amount of data, that is currently available online, attracted many parties to analyze sentiments expressed in these data extracting valuable knowledge.

In the paper presented by Conejero et al., an approach to automatically generate dynamic Sankey Diagrams allowing users to filter the data shown, called LiveSankey, is described. As a result, multiple conditions may be established over the data used and the corresponding diagram can be dynamically rebuilt. Moreover, Shoukry and Rafea work on to improve the Egyptian sentiment classification by combining different classification algorithms. To achieve this aim, authors combine multiple semantic orientation classifiers using different subsets from SATALex Egyptian lexicon and three classification algorithms: Naïve Bayes, Maximum Entropy and Support Vector Machines. This combination results in an improvement of the accuracy of Egyptian dataset sentiment classification.

Geographic Information Systems (GIS) applications manage information with a spatial component providing the user with different functionalities on different application domains, but they are usually developed according to a common architecture and using a common set of technologies. Hence, they share a significant number of elements that make some aspects of their development quite repetitive. In addition, Machine Learning (ML) algorithms could be applied in this scenario. However, developing an ML project entails the effort of many ML experts who have to select and configure the appropriate algorithm to process the data to learn from, between other things. Model-Driven Engineering may help to create solutions to these problems.

The work presented by Alvarado et al. describes a declarative Domain-Specific for the development of GIS, allowing developers to specify the entities, geographic layers, and maps of the applications using a declarative language. Then, the specification is transformed into a working GIS application. Enríquez et al. propose an approach towards a common language to consolidate the current distributed knowledge sources related to the algorithm selection in ML, that is, a method to join the knowledge gathered through this language in a unified store that can be exploited later on, and a traceability links maintenance.

Improving the development of web applications by applying software methodologies is an essential practice for Web applications. In this regard, Web application testing is a big challenge due to the management of complex asynchronous communications, the concurrency between the clients-servers, and the heterogeneity of resources employed. These environmental factors can cause flakiness, which occurs when the same test case sometimes obtains one test outcome and other times another outcome in the same application due to the execution of environmental factors. The research carried out by Morán et al. puts the focus on the localization of the root cause of flakiness in web applications based on the characterization of the different environmental factors that are not controlled during testing. The technique presented by the authors can locate automatically the root cause of flakiness and provide enough information to both understand it and fix it.

The functions, capabilities, and effects produced by the application services of Cyber-Physical Systems (CPS) are usually consumed by users performing their daily activities in a variety of environmental conditions. Thus, it is critical to ensure that those systems neither interfere with human activities nor harm the users involved. Ko et al. propose a framework for testing and verifying the safety and reliability of CPS services from the perspectives of CPS environments and users. The framework provides an environment-aware testing method, a metric to automate the test of the most effective services that deliver effects from physical devices to users and, in addition, a computational model that assesses mental workloads to test whether a CPS service can cause cognitive depletion or contention problems for users.

Immersed in the fourth industrial revolution, Smart Contracts related to Blockchain networks take on a very important role. The paper presented by Sánchez-Gómez et al. discusses the possibility of using transformation protocols to obtain derived artefacts like test case definitions and Smart Contract code scaffolds. This technique would allow to simplify and improve the management and execution of collaborative business processes.

Finally, the last advanced practice is the use of the Systems of Systems (SoS) methodology when dealing with a web application made up of multiple web systems distributed over the network. There is a wide variety of methodologies and domains of application in the literature to form framed solutions in the context of SoS, but there is no unified consensus for its use and even less when it comes to agile environments of continuous integration and deployment in which traceability requirements are critical. The research proposed by Morales-Trujillo et al. presents an agile framework that aims to guarantee the traceability of a SoS from the early stages, unifying the discovery, development and operations and providing full coverage in the conformation of the solution.

Editorial