ENASE 2022 Abstracts


Area 1 - Challenges and Novel Approaches to Systems and Software Engineering (SSE)

Full Papers
Paper Nr: 13
Title:

Developing Accessible eHealth Portals: A Human-centred Approach

Authors:

Kwangsu Choi, Hourieh Khalajzadeh, Humphrey O. Obie, Jennifer Mcintosh and Zhidian Lin

Abstract: eHealth technology is being developed at a rapid rate in line with advances in Information and Communication Technology (ICT). As eHealth technology increases, ensuring equitable accessibility and usability for all end-users is becoming a significant challenge. Considering human factors in the design phase of an application will help ensure usability and accessibility gaps are addressed. We conducted a survey with a broad range of users to investigate the relationship between different human factors and design elements that address these human factors. From the survey results, we developed a high-fidelity design prototype which we validated with a usability study to enhance the usability and accessibility for diverse end-users.
Download

Paper Nr: 18
Title:

Improving Integration Process Efficiency through Pull Request Prioritization

Authors:

Agustín Olmedo, Gabriela Arévalo, Ignacio Cassol, Christelle Urtado and Sylvain Vauttier

Abstract: Pull-based Development (PbD) is widely used in software teams to integrate incoming changes into a project codebase. In this model, contributions are advertised through Pull Request (PR) submissions. Project administrators are responsible for reviewing and integrating PRs. Prioritizing PRs is one of the main concerns of project administrators in their daily work. Indeed, conflicts occur when PRs are concurrently opened on a given target branch and propose different modifications for a same code part. We propose to consider the integration process efficiency (IPE) as the fact that for a given integration cost (i.e., number of conflicts to be solved) the highest gain is reached (i.e., the largest number of PRs are integrated). The goal of this work is to optimize the IPE through PR prioritization. We propose a process that provides a sequence of unconflicting PR groups. This sequence minimizes the number of conflict resolutions and defines an optimized integration order according to the efficiency of the integration process. We apply our proposal to seven representative historical integration sequences from an open source project. In all seven cases, the IPE obtained by our proposal is higher than the historical IPE from 28.73% to 156.52%.
Download

Paper Nr: 19
Title:

A Human-centric Accessible eHealth Booking Web Portal

Authors:

Zhidian Lin, Hourieh Khalajzadeh, Humphrey O. Obie, Jennifer Mcintosh and Kwangsu Choi

Abstract: The use of eHealth web portals is rapidly increasing with the extensive demand for eHealth services and established benefits of using health-related software. Unfortunately, most of these applications underestimate or even ignore Human-centric issues (HCIs) and thus result in a system that is not fit-for-purpose. This emphasises the importance of allowing for diverse end-users characteristics, such as age, gender, culture, occupation, and cognitive impairment, when designing eHealth web portals. In this paper, we describe a study we conducted involving a preliminary survey in three languages to determine different users’ needs, taking into account their human-centric issues. We designed an e-booking prototype and evaluated it with user studies. Our results suggest that age and language are the most crucial human-centric aspects to be considered when developing an eHealth web portal. The study also provided recommendations for appropriate web design elements for building human-centric eHealth applications.
Download

Paper Nr: 31
Title:

Trends on Crowdsourcing JavaScript Small Tasks

Authors:

Ioannis Zozas, Iason Anagnostou and Stamatia Bibi

Abstract: Crowdsourcing has become a popular alternative model for software development, aiming at assigning tasks to developers through an open call for participation. The major challenge when crowdsourcing software tasks, is to appropriately orient the tasks to ensure the participation of the community and increase the chances of getting a high-quality solution. Especially in constantly evolving development environments, such as JavaScript (JS) programming language and its applications, it is of high importance to be aware of the skills that can be acquired by the community, to successfully invest in crowdsourcing. In the current paper, we aim to explore trends when crowdsourcing small JS development tasks in an attempt to unveil a) the core technological skills that are more frequently required in the crowdsourced tasks, b) the functionalities that are more frequently crowdsourced, and c) the relationship between the technological skills and the functionalities crowdsourced. For this reason, we analysed 8-year contest data collected from Bountify crowdsourcing platform. The results showed that JS small task development does not focus on a single technology but on a series of technologies, frameworks and libraries that in most cases either overlap or complement each other.
Download

Paper Nr: 52
Title:

On the Use of Machine Learning for Predicting Defect Fix Time Violations

Authors:

Ümit Kanoğlu, Can Dolaş and Hasan Sözer

Abstract: Accurate prediction of defect fix time is important for estimating and coordinating software maintenance efforts. Likewise, it is useful to predict whether or not the initially estimated defect fix time will be exceeded during the maintenance process. We present an empirical evaluation on the use of machine learning for predicting defect fix time violations. We conduct an industrial case study based on real projects from the telecommunications domain. We prepare a dataset with 69,000 defect reports regarding 293 projects being maintained between 2015 and 2021. We employ 7 machine learning algorithms. We experiment with 3 subsets of 25 features derived from defects as well as the corresponding projects. Gradient boosted classifiers perform the best by reaching up to 72% accuracy.
Download

Paper Nr: 76
Title:

A Data Lake Metadata Enrichment Mechanism via Semantic Blueprints

Authors:

Michalis Pingos and Andreas S. Andreou

Abstract: One of the greatest challenges in Smart Big Data Processing nowadays revolves around handling multiple heterogeneous data sources that produce massive amounts of structured, semi-structured and unstructured data through Data Lakes. The latter requires a disciplined approach to collect, store and retrieve/ analyse data to enable efficient predictive and prescriptive modelling, as well as the development of other advanced analytics applications on top of it. The present paper addresses this highly complex problem and proposes a novel standardization framework that combines mainly the 5Vs Big Data characteristics, blueprint ontologies and Data Lakes with ponds architecture, to offer a metadata semantic enrichment mechanism that enables fast storing to and efficient retrieval from a Data Lake. The proposed mechanism is compared qualitatively against existing metadata systems using a set of functional characteristics or properties, with the results indicating that it is indeed a promising approach.
Download

Paper Nr: 79
Title:

An Empirical Study on Neophytes of Stack Overflow: How Welcoming the Community is towards Them

Authors:

Abdullah Al Jobair, Suzad Mohammad, Zahin R. Maisha, Md. I. Mostafa and Md. N. Haque

Abstract: Stack Overflow (SO) is the most popular question and answers (Q&A) platform for programmers with a rapidly expanding community of new users. However, the unwelcoming environment towards new users has been under discussion for several years, which is a major concern towards the enhancement of a skillful community. In this work, we study a specific group of users who are either registered in the last 45 days or have a reputation less than or equal to 50 and term them as “neophytes”. We investigate whether neophytes actually face hurdles while collaborating in Stack Overflow and, if so, identify the reasons behind this phenomenon by qualitative and quantitative analysis. Our study finds that neophytes are indeed facing hurdles while collaborating in the platform. The reasons behind the hurdles include harsh moderation of posts, negligence of the posts, deleting or closing of posts, downvoting without providing any proper reasoning, etc. Our findings can provide guidelines to create a more user-friendly Stack Overflow community. Furthermore, this study can guide researchers to observe the reactions of neophytes in adverse situations and recommend some steps for the community to make positive changes to the Stack Overflow environment.
Download

Short Papers
Paper Nr: 20
Title:

Alt-Texify: A Pipeline to Generate Alt-text from SVG Visualizations

Authors:

Aspen Belle, Vanessa Goh, Akshay Kumar, Richard Pranjatno, Pui M. Yip, Umayangani Wickramaratne and Humphrey O. Obie

Abstract: Data visualizations are used everywhere on the web to convey data and insight. However, interpreting these visualizations is reliant on sight, which poses a problem for the visually impaired who rely on screen readers. Alternative text descriptions are often missing from visualizations or not of a helpful quality, which the screen readers rely on to interpret them for the user. In this short paper, we propose Alt-Texify, a pipeline to generate alternative text descriptions for SVG-based bar, line and scatter charts. Our pipeline classifies the chart type and extracts the data and labels from the SVG code and inserts the relevant information into a description template. Our approach extracts the data and labels deterministically, allowing for factually accurate descriptions 99.74% of the time.
Download

Paper Nr: 57
Title:

Transforming our World through Software: Mapping the Sustainability Awareness Framework to the UN Sustainable Development Goals

Authors:

Norbert Seyff, Stefanie Betz, Dominic Lammert, Jari Porras, Leticia Duboc, Ian Brooks, Ruzanna Chitchyan, Colin C. Venters and Birgit Penzenstadler

Abstract: The Sustainable Development Goals (SDGs) of the United Nations focus on key issues for the transformation of our world towards sustainability. We argue for stronger integration of the SDGs into requirements and software engineering and for the creation of methods and tools that support the analysis of potential effects of software systems on sustainability in general and on SDGs in particular. To demonstrate one way of undertaking this integration, we report on how the Sustainability Awareness Framework (SusAF – a tool developed by the authors of this paper) can be mapped to the SDGs, allowing the identification of potential effects of software systems on sustainability and on the SDGs. This mapping exercise demonstrates that it is possible for requirements engineers working on a specific system to consider that system’s impact with respect to SDGs.
Download

Paper Nr: 71
Title:

Web-based Search: How Do Animated User Interface Elements Affect Autistic and Non-autistic Users?

Authors:

Alexandra L. Uitdenbogerd, Maria Spichkova and Mona Alzahrani

Abstract: Many websites and other user interfaces include animated elements, particularly for advertisements. However, these can have a negative impact on users, with some cohorts, such as autistic users, being more affected. In our mixed methods study on the effect of irrelevant animations on usability we observed the effect on search activities. For those greatly impacted by on-screen animation the effect was not always to slow down a task, but search terms were entered hastily to avoid more exposure, with shorter queries on average and a greater tendency to copy and paste during query formulation. Autistic users found the task more mentally demanding, and were more distracted or annoyed by the animations.
Download

Paper Nr: 37
Title:

Machine Learning in Software Development Life Cycle: A Comprehensive Review

Authors:

Maryam Navaei and Nasseh Tabrizi

Abstract: This research concludes an overall summary of the publications so far on the applied Machine Learning (ML) techniques in different phases of Software Development Life Cycle (SDLC) that includes Requirement Analysis, Design, Implementation, Testing, and Maintenance. We have performed a systematic review of the research studies published from 2015-2021 and revealed that Software Requirements Analysis phase has the least number of papers published; in contrast, Software Testing is the phase with the greatest number of papers published.
Download

Paper Nr: 47
Title:

A Comparative Analysis of JSON Schema Inference Algorithms

Authors:

Ivan Veinhardt Latták and Pavel Koupil

Abstract: NoSQL databases are becoming increasingly more popular due to their undeniable advantages in the context of storing and processing Big Data, mainly horizontal scalability and minimal requirement to define a schema upfront. In the absence of the explicit schema, however, an implicit schema inherent to the stored data still exists and it needs to be reverse engineered from the data. Once inferred, it is of a great value to the stakeholders and database maintainers. Nevertheless, the problem of schema inference is non-trivial and is still the subject of ongoing research. In this paper we provide a comparative analysis of five recent proposals of schema inference approaches targeting the JSON format. We provide both static and dynamic comparison of the approaches. In the former case we compare various features. In the latter case we involve both functional and performance analysis. Finally, we discuss remaining challenges and open problems.
Download

Paper Nr: 55
Title:

New Energy Efficient and Fault Tolerant Methodology based on a Multi-agent Architecture in Reconfigurable Wireless Sensor Networks

Authors:

Hanene Rouainia, Hanen Grichi, Laid Kahloul and Mohamed Khalgui

Abstract: Reconfigurable wireless sensor networks became more complex and dynamic systems. Their importance increases with time and more challenges appear. The most important challenges in RWSNs are the energy and software/hardware failure problems. In this paper, we propose a new methodology composed of a set of solutions summarized in the application of the mobility, resizing, and mobile sink nodes using a multi-agent architecture and an energy efficient routing protocol. It contains also a test packet technique to detect the malfunctioning entities and isolate them. Moreover, we develop a simulator named RWSNSim which allows simulating WSNs and RWSNs with and without application of the proposed methodology. It permits also to compare the different results using line charts. Finally, we simulate a case study with RWSNSim in a 3D environment to evaluate the performance of the proposed methodology.
Download

Area 2 - Systems and Software Engineering (SSE) for Emerging Domains

Full Papers
Paper Nr: 59
Title:

Tools for the Confluence of Semantic Web and IoT: A Survey

Authors:

José M. Blanco, Bruno Rossi and Tomáš Pitner

Abstract: The last decade has meant a whole revolution in the context of Internet of Things (IoT), becoming one of the most important areas of research nowadays. The Semantic Web emerged as a way to add semantics to data to enable advanced reasoning. Due to this, the integration of both areas represents a beneficial convergence for more "semantic-aware" devices and services. In this paper we present a review to analyze the state of the art of the confluence of the Semantic Web and IoT: extracting an overview of the ad-hoc implemented tools, their categorization, and the supported sub-domains on which they exert their influence.
Download

Short Papers
Paper Nr: 9
Title:

On Modelling and Analyzing Composite Resources’ Consumption Cycles using Time Petri-Nets

Authors:

Amel Benna, Fatma Masmoudi, Mohamed Sellami, Zakaria Maamar and Rachid Hadjidj

Abstract: ICT community cornerstones (IoT in particular) gain competitive advantage from using physical resources. This paper adopts Time Petri-Nets (TPNs) to model and analyze the consumption cycles of composite resources. These resources consist of primitive, and even other composite, resources that are associated with consumption properties and could be subject to disruptions. These properties are specialized into unlimited, shareable, limited, limited-but-renewable, and non-shareable, and could impact the availability of resources. This impact becomes a concern when disruptions suspend ongoing consumption cycles to make room for the unplanned consumptions. Resuming the suspended consumption cycles depends on the resources’ consumption properties. To ensure correct modeling and analysis of consumption cycles, whether disrupted or not, TPNs are adopted to verify that composite resources are reachable, bound, fair, and live.
Download

Paper Nr: 83
Title:

Concepts for Conceptual Modelling of an IoT Application

Authors:

Naveen Prakash and Deepika Prakash

Abstract: The design of IoT applications has been considered as a specification of devices and their inter-connection. In terms of the Systems Development Life Cycle, this addresses the stage of implementation design. Without explicitly modelling the application problem, this could lead to ill-fitting devices, missing processing of data and inappropriate communication choices. To obviate this, the upstream stage of conceptual modelling is explored in this paper. By, analogy with Information Systems, IoT applications are looked upon as Information Systems of Things, ISoT and the conceptual model for an ISoT is referred to as the Conceptual Model of Things, CMoT. It is shown that agent-orientation is more appropriate to ISoT than object-orientation. Agents have aspects that are its measurable properties. The proposals are illustrated with an example.
Download

Paper Nr: 50
Title:

Process Mining and Performance Business Rules

Authors:

Ella Roubtsova and Yoeri Berk

Abstract: Process mining uses event logs to build a business process model, which potentially can be used to better understand the business process performance. However, the understanding of performance almost always demands definitions in form of performance business rules within the business process. This means that process mining should be accompanied with another research method to retrieve the performance business rules of the studied business process. This paper presents an approach showing how the process mining techniques shape the structure of the semi-structured interviews for retrieving performance business rules to be checked on the logged business process. The proposed approach is illustrated with a case study of process mining and performance assessment of an application process in an employment agency.
Download

Paper Nr: 88
Title:

Architecture Requirements for Open Inference Networks

Authors:

Priscilla D. Hammond, Fritz Solms and Bruce W. Watson

Abstract: Real-time distributed Internet of Things (IoT) systems are increasingly using complex event processing to make inferences about the environment. This mode of operation is able to reduce communication requirements, improve robustness and scalability, and avoid the need for big data storage and processing. With systems making many inferences about the environment, there is no provision for general access to these inferences as well as the ability to make further inferences. Most IoT systems are closed or very limited in their openness and discoverability because they are exist for commercial purposes in which they control all the elements of the system. To this end, we propose the concept of an Open Inference Network (OIN): a novel open architecture for detecting and publishing complex events at various abstraction levels in an event cloud, i.e. the set of events consumed and produced by this system. Such systems contain three types of nodes: basic event source, inference, and activity nodes. Inference nodes detect event patterns that may encode some meaning and inject corresponding higher-level events into the event cloud. Activity nodes respond to an event by prompting an external system to perform some action; such an action may result in outputs that appear as new events. We consider the architecture requirements for OIN by assessing the required architectural elements against current IoT standards. These requirements mainly consist of event description and discoverability, and security, which together enable developers to collaboratively grow and evolve OINs. This is an intermediate study which does not include an empirical study.
Download

Area 3 - Systems and Software Quality

Full Papers
Paper Nr: 10
Title:

Schema-guided Testing of Message-oriented Systems

Authors:

André Santos, Alcino Cunha and Nuno Macedo

Abstract: Effective testing of message-oriented software requires describing the expected behaviour of the system and the causality relations between messages. This is often achieved with formal specifications based on temporal logics that require both first-order and metric temporal constructs – to specify constraints over data and real time. This paper proposes a technique to automatically generate tests for metric first-order temporal specifications that match well-understood specification patterns. Our approach takes in properties in a high-level specification language and identifies test schemas (strategies) that are likely to falsify the property. Schemas correspond to abstract classes of execution traces, that can be refined by introducing assumptions about the system. At the low level, concrete traces are successively produced for each schema using property-based testing principles. We instantiate this approach for a popular robotic middleware, ROS, and evaluate it on two systems, showing that schema-based test generation is effective for message-oriented software.
Download

Paper Nr: 17
Title:

Evaluation of an Augmented Reality Approach to Better Understanding Diverse End User Website Usage Challenges

Authors:

Minh H. Vu, Joshua S. Wyman and John Grundy

Abstract: End users with disabilities face many limitations with online accessibility. Efforts to tackle the problems of testing for these problems have not yet been sufficient. In this paper we describe an evaluation of Funkify, an augmented reality tool to simulate diverse end users’ experiences and challenges when interacting with software. The research evaluates the tool’s effectiveness for software engineers use in emulating four diverse end user challenges using a heuristics-based evaluation and cognitive walk-throughs on three target websites. Our results show that the tool successfully simulates the target personas’ challenges varying extent, with some noticeable limitations. We provide suggestions for extensions to Funkify as well as AR tools in general.
Download

Paper Nr: 56
Title:

Deep Semantic and Strutural Features Learning based on Graph for Just-in-Time Defect Prediction

Authors:

Abir M’baya and Nejib Moalla

Abstract: Change-level defect prediction which is also known as just-in-time defect prediction, will not only improve the software quality and reduce costs, but also give more accurate and earlier feedback to developers than traditional file-level defect prediction. To build just-in-time defect prediction models, most existing approaches focused on using manually traditional features (metrics of code change), and exploited different machine learning. However, those approaches fail to capture the semantic differences between code changes and the dependency information within programs; and consequently do not cover all types of bugs. Such information has an important role to play in improving the accuracy of the defect prediction model. In this paper, to bridge this research gap, we propose an end to end deep learning framework that extracts features from the code change automatically. To this purpose, we present the code change by code property sub-graphs (CP-SG) extracted from code property graphs (CPG) that merges existing concepts of classic program analysis, namely abstract syntax tree (AST), control flow graphs (CFG) and program dependence graphs (PDG). Then, we apply a deep graph convolutional neural network (DGCNN) that takes as input the selected features. The experimental results prove that our approach can significantly improve the baseline method DBN-based features by an average of 20.86 percentage points for within-project and 32.85 percentage points for cross-project.
Download

Paper Nr: 70
Title:

Characterizing Technical Debt in Evolving Open-source Software

Authors:

Arthur-Jozsef Molnar and Simona Motogna

Abstract: Technical debt represents deficiencies in software design or implementation often caused by prioritizing feature development over fixing existing issues. Like its financial counterpart, technical debt comprises a principal and an interest. Not addressing it in time leads to development crises, where focus and resources must be shifted to address existing issues. Existing software tools allow measuring the level of debt and pinpointing its sources, which can help practitioners control it. In the present paper we aim to investigate the prevalence, characteristics, and evolution of technical debt in several open-source applications. We used SonarQube to study 112 application versions that covered more than 15 years of development for each application. We studied the way debt characteristics and source code distribution evolved over the target applications’ lifecycles. We addressed concerns regarding the accuracy of the analysis and illustrated some of the limitations of existing tools. We observed that a small number of issue types were responsible for most of the debt. We found that each application had its own technical debt particularities. As future work, we aim to expand our selection of analysis tools, leverage open data sets, and extend our investigation to other systems and types of software.
Download

Paper Nr: 94
Title:

Augmenting Library Development by Mining Usage Data from Downstream Dependencies

Authors:

Christoph Thiede, Willy Scheibel, Daniel Limberger and Jürgen Döllner

Abstract: Software and its dependencies build up a graph where edges connect packages with their dependencies. In this graph, downstream dependencies are all the nodes that depend on a package of interest. Although gathering and mining such downstream dependencies allow for informed decision-making for a package developer, there is much room for improvement, such as automation and integration of this approach into their development process. This paper makes two contributions: (i) We propose an approach for efficiently gathering downstream dependencies of a single package and extracting usage samples from them using a static type analyzer. (ii) We present a tool that allows npm package developers to survey the aggregated usage data directly in their IDE in an interactive and context-sensitive way. We evaluate the approach and the tool on a selection of open source projects and specific development-related questions with respect to found downstream dependencies, gathering speed, and required storage. Our methods return over 8 000 downstream dependencies for popular packages and process about 12 dependencies per minute. The usage sample extraction offers high precision for basic use cases. The main limitations are the exclusion of unpopular and closed-source downstream dependencies as well as failing analysis when encountering complex build configurations or metaprogramming patterns. To summarize, we show that the tool supports package developers in gathering usage data and surveying the use of their packages and APIs within their downstream dependencies, allowing for informed decision-making.
Download

Short Papers
Paper Nr: 14
Title:

A-Index: Semantic-based Anomaly Index for Source Code

Authors:

E. N. Akimova, A. Y. Bersenev, A. S. Cheshkov, A. A. Deikov, K. S. Kobylkin, A. V. Konygin, I. P. Mezentsev and V. E. Misilov

Abstract: The software development community has been using handcrafted code quality metrics for a long time. Despite their widespread use, these metrics have a number of known shortcomings. The metrics do not take into account project-specific coding conventions, the wisdom of the crowd, etc. To address these issues, we propose a novel semantic-based approach to calculating an anomaly index for the source code. This index called A-INDEX is the output of a model trained in unsupervised mode on a source code corpus. The larger the index value, the more atypical the code fragment is. To test A-INDEX we use it to find anomalous code fragments in Python repositories. We also apply the index for a variant of the source code defect prediction problem. Using BugsInPy and PyTraceBugs datasets, we investigate how A-INDEX changes when the bug is fixed. The experiments show that in 63% of cases, the index decreases when the bug is fixed. If one keeps only those code fragments for which the index changes significantly, then in 71% of cases the index decreases when the bug is fixed.
Download

Paper Nr: 15
Title:

A Comprehensive Dynamic Data Flow Analysis of Object-Oriented Programs

Authors:

Laura Troost and Herbert Kuchen

Abstract: Studies have shown that in the area of testing data-flow coverage is often more effective in exposing errors compared to other approaches such as branch coverage. Thus, evaluating and generating test cases with respect to the data-flow coverage is desirable. Unfortunately, data-flow coverage is rarely considered in practice due to the lack of appropriate tools. Existing tools are typically based on static analysis and cannot distinguish between traversable and non-traversable data flows. They also have typically difficulties with properly handling aliasing and complex data structures. Thus, we propose a tool for dynamically analyzing the data-flow coverage which avoids all these drawbacks. In combination with our existing test-case generator, it enables the creation of an (almost) minimal set of test cases that guarantee all data flows to be covered. We have evaluated our tool based on a couple of benchmarks.
Download

Paper Nr: 29
Title:

AV-AFL: A Vulnerability Detection Fuzzing Approach by Proving Non-reachable Vulnerabilities using Sound Static Analyser

Authors:

Sangharatna Godboley, Kanika Gupta and R. G. Monika

Abstract: The correctness of software depends on how well the vulnerabilities of the program are detected before the actual release of the software. Fuzzing is an effective method for vulnerability detection but it also comes with its drawback. The traditional fuzzing tools are less efficient in terms of speed and code coverage. In this paper, we demonstrate how a fuzzer works more efficiently when the input to it is given based on static analysis of the source code. We introduce the Alarmed Vulnerabilities-based American Fuzzy Lop (AV-AFL) tool that eliminates the unreachable targets from the program by analyzing the source code using the FRAMA-C tool (a sound static analyzer). The method uses Evolved Value Analysis (EVA) plugged-in with FRAMA-C tool to report alarms of possible run-time errors and gives the improvised program as an input to the AFL fuzzer. Experimental results show that the AV-AFL produces better results in total 71.11% of 45 programs than AFL in terms of vulnerability detection.
Download

Paper Nr: 30
Title:

Quality Evaluation of Mobile GIS for Data Collection

Authors:

Badr El Fhel, Lamyae Sardi and Ali Idri

Abstract: High-quality software has to fulfil stakeholders’ requirements identified in a requirement engineering process. This paper presents an overview of requirements regarding mobile Geographic Information System for data collection, which have been extracted based on literature, standards and existing apps in the market. The quality model ISO/IEC 25010 was explored using measures stated in the ISO/IEC 25023 standard. A checklist that marks the influence of each requirement on the quality characteristics and sub-characteristics has been established in order to calculate three degrees of the requirements influence on the external product quality of mobile GIS. The result obtained show that requirements related to online data access have the highest impact on the external quality characteristics whereas functional suitability and usability are the most influenced characteristics by the requirements.
Download

Paper Nr: 34
Title:

An Unified Testing Process Framework for Small and Medium Size Tech Enterprise with Incorporation of CMMI-SVC to Improve Maturity of Software Testing Process

Authors:

Md. Tarek Hasan, Somania N. Mahal, Nabil A. Bakar, Md. M. Hasan, Noushin Islam, Farzana Sadia and Mahady Hasan

Abstract: Software testing service provides a quality assurance approach for evaluating and improving the quality of software. While various obstacles may arise in the software testing services context. Most of the time, testing service quality is not always as expected. This paper illustrates the main motive is to improve the practice areas of the software testing process so that small software companies can enhance the maturity levels. We conducted surveys and collected data from 11 small software companies in Bangladesh to assess the current testing service. The survey’s results revealed the gaps in their CMMI-SVC practice areas and also pinpointed potential improvement of practice areas. This document presents a made strides system pointing at the exposure of how to tailor key practice areas of CMMI SVC in the testing process. We proposed a framework that is based on a unified testing model. By following the proposed steps any software companies can enhance their maturity level.
Download

Paper Nr: 46
Title:

The Subtle Art of Digging for Defects: Analyzing Features for Defect Prediction in Java Projects

Authors:

Geanderson Santos, Adriano Veloso and Eduardo Figueiredo

Abstract: The task to predict software defects remains a topic of investigation in software engineering and machine learning communities. The current literature proposed numerous machine learning models and software features to anticipate defects in source code. Furthermore, as distinct machine learning approaches emerged in the research community, increased possibilities for predicting defects are made possible. In this paper, we discuss the results of using a previously applied dataset to predict software defects. The dataset contains 47,618 classes from 53 Java software projects. Besides, the data covers 66 software features related to numerous aspects of the code. As a result of our investigation, we compare eight machine learning models. For the candidate models, we employed Logistic Regression (LR), Naive Bayes (NB), K-Nearest Neighbor (KNN), Multilayer Perceptron (MLP), Support Vector Machine (SVM), Decision Tree (CART), Random Forest (RF), and Gradient Boosting Machine (GBM). To contrast the models’ performance, we used five evaluation metrics frequently applied in the defect prediction literature. We hope this approach can guide more discussions about benchmark machine learning models for defect prediction.
Download

Paper Nr: 84
Title:

Towards an Overhead Estimation Model for Multithreaded Parallel Programs

Authors:

Virginia Niculescu, Camelia Şerban and Andreea Vescan

Abstract: The main purpose of using parallel computation is to reduce the execution time. To reach this goal, reducing the overhead time induced by the additional operations that parallelism implicitly imposes, becomes a necessity. In this respect, the paper proposes a new model that evaluates the overhead introduced into parallel multithreaded programs that follows SPMD (Single Program Multiple Data) model. The model is based on a metric that is evaluated using the source code analysis. Java programs were considered for this proposal, but the metric could be easily adapted for any multithreading supporting imperative language. The metric is defined as a combination of several atomic metrics considering various synchronisation mechanisms. A theoretical validation of this metric is presented, together with an empirical evaluation of several use cases. Additionally, we propose an AI based strategy to refine the evaluation of the metric by obtaining accurate approximation for the weights that are used in combining the considered atomic metrics.
Download

Paper Nr: 95
Title:

Application of Property-based Testing Tools for Metamorphic Testing

Authors:

Nasser Alzahrani, Maria Spichkova and James Harland

Abstract: Metamorphic testing (MT) is a general approach for the testing of a specific kind of software systems – so-called “non-testable”, where the “classical” testing approaches are difficult to apply. MT is an effective approach for addressing the test oracle problem and test case generation problem. The test oracle problem is when it is difficult to determine the correct expected output of a particular test case or to determine whether the actual outputs agree with the expected outcomes. The core concept in MT is metamorphic relations (MRs) which provide formal specification of the system under test. One of the challenges in MT is effective test generation. Property-based testing (PBT) is a testing methodology in which test cases are generated according to desired properties of the software. In some sense, MT can be seen as a very specific kind of PBT. In this paper, we show how to use PBT tools to automate test generation and verification of MT. In addition to automation benefit, the proposed method shows how to combine general PBT with MT under the same testing framework.
Download

Paper Nr: 40
Title:

A Comprehensive Review of Testing Blockchain Oriented Software

Authors:

Mariam Lahami, Afef J. Maalej, Moez Krichen and Mohamed A. Hammami

Abstract: This work presents a short review on the most relevant studies in the context of testing Blockchain-Oriented Software (BoS), especially at the smart contract level. Focusing on dynamic testing, we first provide a classification of 20 studies according to the accessibility of smart contract code. Second, we give an overview of each identified work while highlighting its advantages and limitations. Third, we discuss challenges and opportunities in this research area. After carrying out this review, it was noticed that there is much work to be done, especially in the context of model-based testing of smart contracts which can be a good research line for detecting defects and enhancing the quality of such applications.
Download

Paper Nr: 74
Title:

Testing React Single Page Web Application using Automated Testing Tools

Authors:

Md M. Hasan, Mohammad A. Rahman, Md S. Chowdhury, Md H. Rahman, Kaal H. Abdulle, Farzana Sadia and Mahady Hasan

Abstract: In modern software development practices, single page application development is becoming popular. Among the available frameworks, React is a popular platform to develop web applications front-end. For most of the software, almost half of the application code is for the front-end. Therefore testing the front-end or GUI is also almost equally important. In modern application development, React is by far the most popular front-end framework/library. In modern development practice, like agile development or CI/CD development, testing performance and the easiness of implementing testing tools are very crucial factor. In this paper, three different testing tools, Jest, Enzyme and Cypress specifically designed for React based single page application, were analysed. The main objective is to check the execution time performance for the same testing functionality on different tools, and developer friendliness of these tools. While each tool having their own features and limitations, for modern development practices like Agile or CI/CD, Enzyme is tested as a better tool which is both easy to integrate while providing efficiency.
Download

Paper Nr: 93
Title:

Combining SBFL with Mutation Testing: Challenges of a Practical Approach

Authors:

Anna Derezińska and Sofia Krutko

Abstract: Research on fault localization techniques focuses on their efficiency and cost reduction. Spectra-Based Fault Localization (SBFL) counts to the mostly used methods. Hybrid approaches have been shown to be beneficial. We discuss the challenges of a revised approach combining SBFL with mutation testing. Certain unconvinced issues of mutation testing have been identified, and a practical framework has been prepared to evaluate different variants of the approach. Building a new repository with faulty programs has been launched in order to study the approach not only on the commonly used legacy programs, but also on faulty programs of more contemporary versions of the Java language and unit tests.
Download

Area 4 - Theory and Practice of Systems and Applications Development

Full Papers
Paper Nr: 6
Title:

On the Use of Allen’s Interval Algebra in the Coordination of Resource Consumption by Transactional Business Processes

Authors:

Zakaria Maamar, Fadwa Yahya and Lassaad Ben Ammar

Abstract: This paper presents an approach to coordinate the consumption of resources by transactional business processes. Resources are associated with consumption properties known as unlimited, limited, limited-but-extensible, shareable, and non-shareable restricting their availabilities at consumption-time. And, processes are associated with transactional properties known as pivot, retriable, and compensatable restricting their execution outcomes in term of either success or failure. To consider the intrinsic characteristics of both consumption properties and transactional properties when coordinating resource consumption by processes, the approach adopts Allen’s interval algebra through different time-interval relations like before, overlaps, and during to set up the coordination, which should lead to a free-of-conflict consumption. A system demonstrating the technical doability of the approach based on a case study about loan application business-process and a real dataset is presented in the paper, as well.
Download

Paper Nr: 38
Title:

Business Process Model and Notation for Forensic-Ready Software Systems

Authors:

Lukas Daubner, Raimundas Matulevičius, Barbora Buhnova and Tomas Pitner

Abstract: The design and development of secure systems is an important and challenging task. However, such systems should also be prepared for eventual disputes or occurrences of a security incident. To solve this, forensic-ready software systems are, by-design, prepared to assist in the forensic investigation and to provide on-point data with high evidentiary value. However, software engineering support for the systematic development of such software systems is rather sparse. This paper tackles the problem by introducing novel modelling notation, called BPMN for Forensic-Ready Software Systems (BPMN4FRSS), including its syntax and semantics. The notation aims to capture the forensic-ready controls and enable reasoning over them, primarily focusing on potential digital evidence. Importantly, it is made to support forensic readiness oriented risk management decisions. The approach is then demonstrated in a scenario where the controls, which mitigate security and business risks, are properly represented.
Download

Paper Nr: 45
Title:

Mining Developer Expertise from Bug Tracking Systems using the Author-topic Model

Authors:

Daniel Atzberger, Jonathan Schneider, Willy Scheibel, Daniel Limberger, Matthias Trapp and Jürgen Döllner

Abstract: During the software development process, software defects, so-called bugs, are captured in a semi-structured manner in a bug tracking system using textual components and categorical features. It is the task of the triage owner to assign open bugs to developers with the required skills and expertise. This task, known as bug triaging, requires in-depth knowledge about a developer’s skills. Various machine learning techniques have been proposed to automate this task, most of these approaches apply topic models, especially Latent Dirichlet Allocation, for mining the textual components of bug reports. However, none of the proposed approaches explicitly models a developer’s expertise. In most cases, these algorithms are treated as a black box, as they allow no explanation about their recommendation. In this work, we show how the Author-Topic Model, a variant of Latent Dirichlet Allocation, can be used to capture a developer’s expertise in the latent topics of a corpus of bug reports from the model itself. Furthermore, we present three novel bug triaging techniques based on the Author-Topic Model. We compare our approach against a baseline model, that is based on Latent Dirichlet Allocation, on a dataset of 18 269 bug reports from the Mozilla Firefox project collected between July 1999 to June 2016. The results show that the Author-Topic Model can outperform the baseline approach in terms of the Mean Reciprocal Rank.
Download

Paper Nr: 58
Title:

The Diversity of Approaches to Support Software Project Management in the Agile Context: Trends, Comparisons and Gaps

Authors:

Elielton C. Carvalho and Sandro B. Oliveira

Abstract: The literature has reported a significant number of approaches to support software development teams. Due to this diversity of approaches, the process of choosing which one is the most suitable for a given project becomes a complex task as new approaches emerge. In addition, there has been no comprehensive work on what these project management approaches are, nor what their main advantages and limitations are. Therefore, it becomes important to research the characteristics of these approaches and map them to minimize decision challenges. Therefore, the objective of this work is to identify primary studies in software engineering that present approaches to support the management of software projects in the agile context. To achieve this goal, we conducted a systematic review study and selected 65 studies on software project management approaches. From these studies, we identified eight different types of approaches, with software being the most used approaches in this context. In addition, nine project areas were identified in which these approaches focus, among which "Schedule" and "Quality" stand out as the areas with the greatest focus by the approaches. Finally, we identified that the "Planning" is the phase of the project in which the approaches place more emphasis.
Download

Paper Nr: 64
Title:

Modeling the Dynamic Reconfiguration in Smart Crisis Response Systems

Authors:

Akram Seghiri, Faiza Belala and Nabil Hameurlain

Abstract: Crises response systems form the majority of today’s complex systems; they generate situations characterized by harmful consequence, low probability, and short decision time. The decision-making in these systems constitute a challenging issue and must be conscientiously supported. The aim of this paper is twofold, we derive a referential architecture for crisis response system-of-systems in one hand, the role of communication and the characteristics of constituent systems that are needed to adapt their dynamic behavior are added to the architecture standard of IEEE. In the other hand, we define a formal model on the basis of the Maude Strategy language, to deal with the dynamic reconfiguration of these system types.
Download

Paper Nr: 80
Title:

Classification Techniques Use to Empirically Validate Redundancy Metrics as Reliability Indicators based on Fault-proneness Attribute

Authors:

Dalila Amara and Latifa A. Rabai

Abstract: Software metrics are proposed as quantitative measures of internal quality factors like cohesion and complexity. For the external ones such as reliability and maintainability, they are usually predicted by means of various metrics of internal attributes. In this context, we have focused on a suite of four entropy-based software redundancy metrics considered as software reliability indicators. Despite their important purpose, they are manually computed and only theoretically validated. Hence, we have implemented an empirical approach for assessing these metrics, using a set of programs retrieved from real software projects. Given that software reliability as external attribute, cannot be directly evaluated, we employ other measurable quality factors representing direct reflections of this attribute. Among them, defect density and fault-proneness are widely used as means to measure and predict software reliability based on software metrics. The basic idea is to generate an empirical dataset embodying for each program, the values of the redundancy metrics and the values of one of these measurable attributes. In our previous work, we have studied their relationship with the defect density attribute in order to validate them as useful reliability indicators. Promising results indicating the usefulness of these metrics as defect density indicators are obtained. Classifying modules (functions or classes) as defective or not defective is also an important reliability indicator. Literature review shows that software reliability counts on its fault-prone modules and more trusted software consists of less fault-prone units. Therefore, we aim in this paper to propose an empirical approach to validate the redundancy metrics as significant reliability indicators. The validation is carried out using the accuracy measure and results show that the fault proneness attribute can be predicted using the redundancy metrics with a good accuracy rate of 0.82.
Download

Paper Nr: 101
Title:

A Supervised Generative Topic Model to Predict Bug-fixing Time on Open Source Software Projects

Authors:

Pasquale Ardimento and Nicola Boffoli

Abstract: During software maintenance activities an accurate prediction of the bug-fixing time can support software managers to better resources and time allocation. In this work, each bug report is endowed with a response variable (bug-fixing time), external to its words, that we are interested in predicting. To analyze the bug reports collections, we used a supervised Latent Dirichlet Allocation (sLDA), whose goal is to infer latent topics that are predictive of the response. The bug reports and the responses are jointly modeled, to find latent topics that will best predict the response variables for future unlabeled bug reports. With a fitted model in hand, we can infer the topic structure of an unlabeled bug report and then form a prediction of its response. sLDA adds to LDA a response variable connected to each bug report. Two different variants of the bag-of-words (BoW) model are used as baseline discriminative algorithms and also an unsupervised LDA is considered. To evaluate the proposed approach the defect tracking dataset of LiveCode, a well-known and large dataset, was used. Results show that SLDA improves recall of the predicted bug-fixing times compared to other BoW single topic or multi-topic supervised algorithms.
Download

Short Papers
Paper Nr: 33
Title:

Automated Summarization of Service Workflows to Facilitate Discovery and Composition

Authors:

Panagiotis Kotsikoris, Theodore Chaikalis, Apostolos Ampatzoglou and Alexander Chatzigeorgiou

Abstract: The last decade marked undeniably the leading role of web services and the establishment of service-oriented architectures. Indeed, it is nowadays hard to find a contemporary software application that does not use at least one third-party web service. The main driver for this paradigm shift, lies in the benefits that decoupled, cloud-based services bring to software development, operation and maintenance as well as at the seamless deployment, integration and scalability features those modern public clouds provide. Furthermore, the widespread adoption of services has led to the consequent demand for a structured and accessible method for automatic service categorization, documentation, and identification, so that all available web services can be easily identified and used from possible clients. In the realm of web services, service compositions known as workflows provide a natural way to automate existing business processes and bridge the gap between technical and non-technical stakeholders. This work proposes an automatic documentation generator for business processes which facilitates service discovery, based on automatic summarization of business processes created through Business Process Model and Notation (BPMN)
Download

Paper Nr: 51
Title:

ManLang: A Requirements Modeling Language for the Production Planning in Manufacturing

Authors:

Mert Ozkaya and Gulsah G. Gokcek

Abstract: In manufacturing industries, production planning involves making early decisions about the design and production of a product that focuses on different concerns such as the investment to be made, the product (and its parts) to be manufactured, production line, workstations, and production processes. The decisions and requirements about those concerns tend to be specified using office tools in many manufacturing companies (e.g., MS Excel). However, office tools lead to some issues including (i)the lack of support for separation of concerns, graphical editing, precise notation set, and error detection, and (ii)inconsistent and incomplete requirements specifications. In this paper, we propose a modeling language called ManLang for specifying the production planning requirements graphically using multiple viewpoints (i.e., investment, product, line, workstation, and process). With ManLang, the different viewpoint models may be specified separately in a way that the viewpoint models can also be traced via the defined relationships between the viewpoints. We support ManLang with a graphical modeling editor, which enables for the multiple-viewpoints modeling and the automated model validation against such properties as model completeness and correctness. We further evaluated the usability of ManLang and its editor via a survey conducted among the practitioners from manufacturing industries.
Download

Paper Nr: 67
Title:

Mining Experienced Developers in Open-source Projects

Authors:

Quentin Perez, Christelle Urtado and Sylvain Vauttier

Abstract: Experienced developers are key for the success of software development projects. In open-source software development, due to openness and distance, one cannot always rely on interpersonal interactions to know who these key people are. Automating the mining of experienced developers is not an easy task either, because of the subjectivity and relativity of what experience is and also because the material to search from (code and development-related metadata) does not obviously relate developers to their capabilities. Some research works propose developer profiling or clustering solutions though, from which we take inspiration. This paper advocates that it is possible to learn from tangible metrics extracted from code and development-related artifacts who are the experienced developers. It uses a supervised learning-based approach trained with a manually labeled dataset of 703 developers from 17 open-source projects from GitHub for which 23 metrics are automatically extracted. Experienced developers classification results show a high F1 measure. A companion explainability study analyzes which metrics are the most influential.
Download

Paper Nr: 81
Title:

Towards the Art of Writing Agile Requirements with User Stories, Acceptance Criteria, and Related Constructs

Authors:

António S. Ferreira, Alberto Rodrigues da Silva and Ana R. Paiva

Abstract: Nowadays, more organizations adopt agile methodologies to guarantee short and frequent delivery times. A plethora of novel approaches and concepts regarding requirements engineering in this context are emerging. User stories are usually informally described as general explanations of software features, written from end-users perspective, while acceptance criteria are high-level conditions that enable their verification. This paper focuses on the art of writing user stories and acceptance criteria, but also on their relationships with other related concepts, such as quality requirements. In the pursuance of deriving guidelines and linguistic patterns to facilitate the writing of requirements specifications, a systematic literature review was conducted to provide a cohesive and comprehensive analysis of such concepts. Despite considerable research on the subject, no formalized model and systematic approach to assist this writing. We provide a coherent analysis of these concepts and related linguistic patterns supported by a running example of specifications built on top of ITLingo RSL, a publicly available tool to enforce the rigorous writing of specification artefacts. We consider that adopting and using the guidelines and patterns from the present discussion contribute to writing better and more consistent requirements.
Download

Paper Nr: 92
Title:

Dynamic Link Network Emulation: A Model-based Design

Authors:

Erick Petersen, Jorge López, Natalia Kushik, Claude Poletti and Djamal Zeghlache

Abstract: This paper presents the design and architecture of a network emulator whose links’ parameters (such as delay and bandwidth) vary at different time instances. The emulator can thus be used in order to test and evaluate novel solutions for such networks, before their final deployment. To achieve this goal, different existing technologies are carefully combined to emulate link dynamicity, automatic traffic generation, and overall network device emulation. The emulator takes as an input a formal model of the network to emulate and configures all required software to execute live software instances of the desired network components, in the requested topology. We devote our study to the so-called dynamic link networks, with potentially asymmetric links. Since emulating asymmetric dynamic links is far from trivial (even with the existing state-of-the-art tools), we provide a detailed design architecture that allows this. As a case study, a satellite network emulation is presented. Experimental results show the precision of our dynamic assignments and the overall flexibility of the proposed solution.
Download

Paper Nr: 98
Title:

Use of Gamification as Implementation Approach for Software Process Improvement: Trends and Gaps

Authors:

Adolfo O. Colares, Julio C. Furtado and Sandro B. Oliveira

Abstract: Studies carried out in the context of software process improvement (SPI) report problems and difficulties that organizations face to implement process models and standards, mainly related to the inability to overcome some critical factors. Thus, properly conducting SPI can facilitate the development of more efficient processes to overcome such difficulties, using gamification elements. Therefore, this paper aims to identify problems in the implementation phase of an SPI effort and use gamification as a tool to mitigate barriers during SPI implementation in a company that opted for an SPI program such as CMMI (Capability Maturity Model Integration) and / or MR-MPS-SW (Reference Model for Brazilian Software Process Improvement) and create the applicability guide using gamification in SPI that can be used by software organizations. The search string returned 499 (four hundred and ninety-nine) studies, of which 07 (seven) were selected according to the Systematic Literature Review presented in this paper.
Download

Paper Nr: 11
Title:

ReCoTOS: A Platform for Resource-sparing Computing Task Optimization

Authors:

Jānis Kampars, Guntis Mosāns, Jānis Zuters, Aldis Gulbis and Rasa Gulbe

Abstract: To cope with the growing volume of data and complexity of the associated processing logic, modern CPU capabilities such as vector registers and SIMD (Single Instruction Multiple Data) instructions need to be taken advantage of. Although from a technical point of view, usage of SIMD instructions is not complicated, building computing tasks with good SIMD capabilities has always been a challenging task. Modern compilers assist developers to some extent with solutions like Compiler Automatic Vectorization, which is not always sufficient, and several researchers demonstrate that manual code optimization is still necessary. The paper gives an overview of the existing computing task optimization approaches, designs and describes development of a cloud-based software optimization platform and demonstrates its usage by optimizing a software correlator.
Download

Paper Nr: 21
Title:

Practitioners’ Perspective on Practices for Preventing Technical Debt Accumulation in Scientific Software Development

Authors:

Elvira-Maria Arvanitou, Nikolaos Nikolaidis, Apostolos Ampatzoglou and Alexander Chatzigeorgiou

Abstract: Scientific software development refers to a specific branch of software engineering that targets the development of scientific applications. Such applications are usually developed by non-expert software engineers (e.g., natural scientists, biologists, etc.) and pertain to special challenges. One such challenge (stemming from the lack of proper software engineering background) is the low structural quality of the end software—also known as Technical Debt—leading to long debugging and maintenance cycles. To contribute towards understanding the software engineering practices that are used in scientific software development, and investigating whether their application can lead to preventing structural quality decay (also known as Technical Debt prevention); in this study, we seek insights from professional scientific software developers, through a questionnaire-based empirical setup. The results of our work suggest that several practices (e.g., Reuse and Proper Testing) can prevent the introduction of Technical Debt in software development projects. On the other hand, other practices seem as either improper for TD prevention (e.g., Parallel / Distributed Programming), whereas others as non-applicable to the branch of scientific software development (e.g., Refactorings or Use of IDEs). The results of this study prove useful for the training plan of scientists before joining development teams, as well as for senior scientists that act as project managers in such projects.
Download

Paper Nr: 28
Title:

Solution to CAD Designer Effort Estimation based on Analogy with Software Development Metrics

Authors:

Oksana Ņikiforova, Vitaly Zabiniako, Jurijs Kornienko, Pāvels Garkalns, Ruslan Rizhko and Madara Gasparoviča-Asīte

Abstract: Although the CAD designer’s work has been automated with CASE tools for more than 30 years, the field of effort estimation methods for measuring the efficiency of a CAD designer has not been developed. In the field of software development, where the specifics of work are similar to the specifics of CAD designer’s work (participation in projects with certain tasks and defined work results), the methods and metrics for evaluating work efficiency have stabilised to some extent over the past 30 years. The focus of the article is to establish analogies in efficiency metrics of software developer’s work and that of CAD designer’s work and to propose a tool prototype – a supported approach for CAD designer’s work efficiency estimation.
Download

Paper Nr: 36
Title:

Exploring the Impact of Toxic Comments in Code Quality

Authors:

Jaime Sayago-Heredia, Gustavo Chango, Ricardo Pérez-Castillo and Mario Piattini

Abstract: Software development has an important human-side, which implies that developers' feelings have a significant impact to software development and could affect developers' quality, productivity, and performance. In this paper, we explore the process to find, understand and relate the effects of toxic emotions on code quality. We propose a tool and sentiments dataset, a clean set of commit messages, extracted from SonarQube code quality metrics and toxic comments obtained from GitHub. Moreover, we perform a preliminary statistical analysis of the dataset. We apply natural language processing techniques to identify toxic developer sentiments on commits that could impact code quality. Our study describes data retrieval process along with tools used for performing a preliminary analysis. The preliminary dataset is available in CSV format to facilitate queries on the data and to investigate in depth factors that impact developer emotions. Preliminary results imply that there is a relationship between toxic comments and code quality that may affect the quality of the software project. Future research will be the development of a complete dataset and an in-depth analysis for efficiency validation experiments along with a linear regression. Finally, we will estimate the code quality as a function of developers' toxic comments.
Download

Paper Nr: 44
Title:

Process Mining to Discover the Global Process from its Fragments’ Executions

Authors:

Minh Khoi Nguyen, Hanh Nhi Tran and Ileana Ober

Abstract: Process analysis to improve performance and detect anomalies is important for process management. However, such an analysis requires a global process model that is sometimes hard to get, especially for complex processes involving various teams. This is also an obstacle for BAPE (Bottom-up Artifact-centric Process Environment), an artifact-centric process management environment that allows splitting a process into several fragments which are separately modeled and enacted by different actors. Thus, the knowledge about the whole process is distributed over the involved teams and an overview on the complete process is missing. This paper presents the integration of process mining into BAPE in order to construct the overall process model from the execution data of process fragments.
Download

Paper Nr: 61
Title:

Legal-Onto: An Ontology-based Model for Representing the Knowledge of a Legal Document

Authors:

Thinh H. Nguyen, Hien D. Nguyen, Vuong T. Pham, Dung A. Tran and Ali Selamat

Abstract: In the legal knowledge domain, legal norm documents are general rules which are mandatory for people in a certain field. Many regulations are affecting to activities in a field. Ontology is an effective approach for representing practical knowledge domains. In this paper, an integration ontology for representing the knowledge of a law document is proposed. This model is integrated of ontology about relational knowledge and the graph of keyphrases as a conceptual graph. It can represent semantic of contents in the law document. Based on this integrated model, the improvement method of self-attention network by language-oriented semantic analyzing is studied for intellectual retrieval on the law document. Moreover, the proposed method is applied to construct an intelligent support system for knowledge querying on Vietnam Land Law. It can help users to query some meaning of terminology in land law and some land-related administrative procedures.
Download

Paper Nr: 66
Title:

A Reusable Catalog of Requirements for Gamified Mobile Health Applications

Authors:

Lamyae Sardi, Ali Idri, Leanne M. Redman, Hassan Alami and José L. Fernández-Alemán

Abstract: The new era of mobile technologies has revolutionized all fundamental human pursuits in that many sectors have been reshaped and tangibly improved, such as education, finance, and healthcare. Referred to as mHealth, the use of mobile technologies to track and improve health outcomes is a rapidly expanding trend. A plethora of mobile health applications (mHealth apps) are being constantly developed thanks to the rapid adoption of mobile devices. From basic exercise trackers to powerful self-management tools, mHealth apps play several roles towards the provision of better healthcare. To induce playful experiences and boost engagement, gamification has proven to be extremely effective with mHealth apps. This paper presents a catalog of reusable requirements for gamified mHealth apps in terms of gamification, functional suitability, usability, and security, Further improvements are intended to be made continuously to the catalog by adding additional requirements scattered from other standards and information sources.
Download

Paper Nr: 73
Title:

Contextual Factors Affecting Software Development Practice Efficacy: A Practitioners’ Perspective

Authors:

Diana Kirk and Kelly Blincoe

Abstract: Practitioners tailor software development methodologies to suit project contexts. Tailoring is often at the level of the project, where individual practices are adapted, often according to tacit knowledge. As the research community does not yet have a good understanding of which contextual factors contribute most to project and practice outcomes, we are not in a position to provide advice and support to practitioners. In this paper, we present the findings from an investigation into the contextual factors that affect practice efficacy. We took a practitioner-centric approach because it is recognised that a person’s beliefs and viewpoints affect the way they approach tasks and so are likely to contribute to outcomes. We interviewed twelve participants from three software organisations using the Repertory Grid Technique (RGT). We found that participants varied in the richness of the data provided. Categories ‘Task’ and ‘Team Efficacy’ were the most represented, with opposing viewpoints stated for some aspects. The research contribution is that we have exposed a personal element in the way practitioners view context and this has implications for research into practice efficacy.
Download

Paper Nr: 82
Title:

EMBED-SoSE: Drawing a Cyber-physical System of Systems

Authors:

André S. Ivo, Sheila G. Ribeiro and Fatima Mattiello-Francisco

Abstract: The general availability of a robust communication infrastructure facilitates and encourages the connection between everything and anything (Internet of Things-IoT and Cyber-Physical Systems-CPS). The composition of CPSs is a reality. Every day new systems are created from arrangements of legacy systems, referred to as CP system of systems (CPSoS). The constituent systems of a CPSoS have very peculiar characteristics, which hinder traditional systems engineering techniques. In addition, it is common for these systems to present many intangible aspects, which further increases the complexity, especially in the representation of their design. This work proposes EMBED-SoSE, an approach to the engineering of critical systems based on shared visual thinking, which aims to facilitate and reduce the cognitive effort in the systems design process.
Download

Paper Nr: 90
Title:

Glaserian Systematic Mapping Study: An Integrating Methodology

Authors:

Gustavo Navas and Agustín Yagüe

Abstract: This research arises as an answer to the limited classification capability that reaches the vast majority of selected articles within a Systematic Mapping Study (SMS) when studying the Grounded Theory (GT) in Software Development. The result of our research is Glaserian Systematic Mapping Study (GSMS). It is a methodology that combines SMS and Glaserian Grounded Theory (GGT), which is one of the two variants of the GT. Combining the robustness and sequential process of SMS with GGT and its iterative features, GSMS provides a more robust, flexible, iterative, and scalable methodology. SMS and GGT share two main activities, data collection and data analysis. However, they are conducted differently. The resulted integration takes advantage of this fact and maps both related activities and outcomes to produce a more robust and systematic methodology. In addition, our research formalizes equations to represent the typical data saturation of qualitative methods such as GGT. With GSMS, we were able to classify more articles than with SMS alone.
Download

Paper Nr: 91
Title:

From PIM and PSM with Performance Annotation to Palladio Models

Authors:

Dariusz Gall

Abstract: Essential step in Software Performance Enginnering (SPE) is finding software performance characteristics. We provide transformations of Platform Independent Model (PIM), and Platform Specific Model (PSM) models enriched by performance annotation in Modeling and Analysis of Real-Time Embedded Systems (MARTE) to the Palladio Component Model (PCM) performance model. The system’s structural viewpoint, i.e., PSM’s class and deployment diagrams, are mapped to the Component Repository. The system’s behavior, i.e., sequence diagrams, are transformed into the PCM Service Effect Specifications. The PCM Resource Environment is generated from PSM’s deployment diagram. Finally, the PCM Usage Model is created, combining these models and the PIM’s use cases.
Download