ENASE 2017 Abstracts


Area 1 - Service Science and Business Information Systems

Full Papers
Paper Nr: 45
Title:

Knowledge Engineering for Business Process Modeling

Authors:

Sonya Ouali, Mohamed Mhiri and Faiez Gargouri

Abstract: The process is the pivot of the business modeling. Thus, the goal of modeling is to present the main flows exchanged with the internal and external environment. Indeed, there are several pieces of information that take place throughout the process life cycle, from design to execution. Behind these pieces of information, there is a lot of business knowledge that should be acquired to improve the quality of such a modeling. The aim of this paper is to manipulate the business knowledge when developing modeling perspectives. For this reason, our solution consists in proposing an ontological approach to create a Multidimensional Business Knowledge base (MBK BASE) to help the designers of the business process with their tasks. In this way, on the one hand, we outline an overview of our proposed solution by relating it to other research. In fact, we define the main business concepts and we describe some semantic relationships which are expressed with the descriptive logic. On the other hand, we give an illustrative case study related to the treatment choice process of a patient with breast cancer in order to demonstrate the applicability of our solution.
Download

Paper Nr: 48
Title:

GenDomus: Interactive and Collaboration Mechanisms for Diagnosing Genetic Diseases

Authors:

Carlos Iñiguez-Jarrín, Alberto García S., José F. Reyes R. and Óscar Pastor López

Abstract: Considering the impact of Next Generation Sequence (NGS) technologies into the genetic field, the data analysis of huge amounts of sequenced DNA to transform it into knowledge has become a challenge. Within the diagnosis of genetic diseases, the data analysis is still a manual procedure where human cognitive endeavour and active collaboration of several stakeholders is required. Web technologies have been widely used to improve the collaboration between different devices. We present GenDomus, a web solution based on an underlying conceptual model that incorporates advanced interactions mechanisms and collaborative and cognitive aspects in order to support scientists in the diagnosis of genetic diseases. The relevant contribution is to describe the design guidelines and advances in the implementation of such a solution. The cognitive analysis perspective together with the collaborative environment in the complex context of the genome analysis domain conforms an attractive combination where web technologies can provide advanced efficient platforms to improve the genetic diagnosis.
Download

Paper Nr: 71
Title:

Biologically Inspired Security as a Service for Service-Oriented Middleware

Authors:

Tashreen Shaikh Jamaluddin, Hoda Hassan and Haitham S. Hamza

Abstract: Service-Oriented computing is a new programming paradigm based on service-oriented architecture that uses web services as its basic building block. Service-Oriented Middleware is a middleware layer that was developed to support service-oriented computing by allowing the flexible integration and operation of web services within the service-oriented computing environment. With the wide adoption of service-oriented computing, web service applications are no longer contained within tightly controlled environments, and thus could be subjected to malicious attacks, such as Denial of Service attacks. In this paper, we propose a generic security service that protects web services against denial of service attacks at the service-oriented middleware layer. Our security service draws on a bio-inspired framework that was developed to counteract denial of service at the network layer. To evaluate our work we have developed a prototype that showed that our proposed security service was able to detect denial of service attacks targeting a web service.
Download

Paper Nr: 75
Title:

GenesLove.Me: A Model-based Web-application for Direct-to-consumer Genetic Tests

Authors:

José Fabián Reyes Román, Carlos Iñiguez-Jarrín and Óscar Pastor López

Abstract: The objective of this work was to enhance personalized medicine through the development and implementation of Genomic Information Systems (GeIS). For this, a web application called “GenesLove.Me” (GLM) was developed to provide direct-to-consumer genetic tests (DCGT). This paper focuses on the development of the business processes (BPMN) and a conceptual model (CM) for GLM, designed to analyze and improve the processes involved in this type of service and provide a model-based platform to manage genetic diagnoses in a scalable, secure and reliable way. Software Engineering (SE) approaches applied to the genomic context play a key role in the advancement of personalized and precision medicine.
Download

Paper Nr: 87
Title:

Wireless Sensor Network based System for the Prevention of Hospital Acquired Infections

Authors:

Iuliana Bocicor, Maria Dascălu, Agnieszka Gaczowska, Sorin Hostiuc, Alin Moldoveanu, Antonio Molina, Arthur-Jozsef Molnar, Ionuț Negoi and Vlad Racoviță

Abstract: Hospital acquired infections are a serious threat to the health and well-being of patients and medical staff within clinical units. Many of these infections arise as a consequence of medical personnel that come into contact with contaminated persons, surfaces or equipment and then with patients, without following proper hygiene procedures. In this paper we present our ongoing efforts in the development of a wireless sensor network based cyber-physical system which aims to prevent hospital infections by increasing compliance to established hygiene guidelines. The solution, currently developed under European Union funding integrates a network of sensors for monitoring clinical workflows and ambient conditions, a workflow engine that executes encoded workflow instances and monitoring software that provides real-time information in case of infection risk detection. As a motivating example, we employ the workflow in the general practitioner’s office in order to comprehensively present types of sensors and their positioning in the monitored location. Using the information collected by deployed sensors, the system is capable of immediately detecting infection risks and taking action to prevent the spread of infections.
Download

Short Papers
Paper Nr: 32
Title:

Entropy-based Framework Dealing with Error in Software Development Effort Estimation

Authors:

Salma El Koutbi and Ali Idri

Abstract: Software engineering community often investigates the error concerning software development effort estimation as a part, and sometimes, as an improvement of an effort estimation technique. The aim of this paper is to propose an approach dealing with both model and attributes measurement error sources whatever the effort estimation technique used. To do that, we explore the concepts of entropy and fuzzy clustering to propose a new framework to cope with both error sources. The proposed framework has been evaluated with the COCOMO’81 dataset and the Fuzzy Analogy effort estimation technique. The results are promising since the actual confidence interval percentages are closer to those proposed by the framework.
Download

Paper Nr: 41
Title:

A Guidance System for Business Process Flexibility

Authors:

Asma Mejri, Sonia Ayachi Ghannouch and Ricardo Martinho

Abstract: During the last decades, flexibility has gained a strong presence, in a variety of disciplines, mainly in the BPM field. The real challenge for BPM consists in providing modeling paradigms and BPMSs with adequate information and features to deal with the often conflicting requirements of flexibility. In this setting, we focus on providing a guidance approach for enhancing business process flexibility. Our purpose is therefore to perceive which modeling paradigm(s) and/or business process management system(s) (BPMS(s)) are the most adequate to the specific organization needs in terms of flexibility. This approach was implemented in a plug-in named BPFlexGuide. To evaluate this approach, we have studied the emergency care (EC) process. Users interested in the EC process were guided to use the AristaFlow BPM suite BPMS. The results of this study would help designers to choose the best paradigms and BPMS that best fit their needs on flexibility.
Download

Paper Nr: 84
Title:

Proactive Trust Assessment of Systems as Services

Authors:

Jorge López, Natalia Kushik and Nina Yevtushenko

Abstract: The paper is devoted to the trust assessment problem for specific types of software/hardware systems, namely Systems as Services. We assume that such systems are designed and utilized in all application domains, and therefore the aspects of trust are becoming crucial. Moreover, these systems are mainly used on-demand and are often represented by a composition of ‘smaller’ services. Thus, an effective method for estimating/assessing the trust level of a given component service (or a system as a whole) needs to be utilized. Most known methods and techniques for trust evaluation mainly rely on the passive testing and system monitoring; in this paper, we propose a novel approach for this problem taking advantage of active testing techniques. Test sequences to be applied to a system/service under test are derived based on determining the critical values of non-functional service parameters. A set of these parameters can be obtained via a static code analysis of the system/service or by addressing available experts. Machine learning techniques can be applied later on, for determining critical parameter values and thus, deriving corresponding test sequences. The paper contains an illustrative example of RESTFul web service which components are checked w.r.t. critical trust properties.
Download

Area 2 - Software Engineering

Full Papers
Paper Nr: 9
Title:

A Statistical Approach to Resolve Conflicting Requirements in Pervasive Computing Systems

Authors:

Osama M. Khaled, Hoda M. Hosny and Mohamed Shalan

Abstract: Pervasive computing systems are complex and challenging. In this research, our aim is to build a robust reference architecture for pervasive computing derived from real business needs and based on process re-engineering practices. We derived requirements from different sources grouped by selected quality features and worked on refining them by identifying the conflicts among these requirements, and by introducing solutions for them. We checked the consistency of these solutions across all the requirements. We built a mathematical model that describes the degrees of consistency with the requirements model and showed that they are normally distributed within that scope.
Download

Paper Nr: 18
Title:

Feature Model Composition Assisted by Formal Concept Analysis

Authors:

Jessie Carbonnel, Marianne Huchard, André Miralles and Clémentine Nebut

Abstract: In the domain of software product lines, Feature Models (FM) play a central role in variability modeling, completed by configuration collections (from concrete software product lines), logical representations, constraint programming or conceptual structures, coming from the field of Formal Concept Analysis (FCA). The development of feature models may take several forms, including their synthesis from configuration collections or their design in several steps (by several teams or with different concerns). FM composition (merge) operators are part of that design activity as they assist their iterative building. In this paper, we describe an approach, based on two main merging semantics (intersection and union), which assists designers in merging several FMs. This approach benefits from the help of FCA to represent all the FMs with the same configuration set through a canonical form. We describe the implementation of our approach and present a set of concrete examples.
Download

Paper Nr: 29
Title:

An Architecture for Visualization of Industrial Automation Data

Authors:

Guillaume Prévost, Jan Olaf Blech, Keith Foster and Heinrich W. Schmidt

Abstract: We introduce a framework for visualization of data originating from industrial automation devices. Our framework uses cloud-based services to collect data from industrial automation controllers. Clients can subscribe to the data sources and visualize them in accordance with customer needs. Data from industrial automation facilities is associated with formal semantic models, such as a mathematical representation of the material flow in a production plant. The formal models are used to represent interdependencies between entities, their functionality and other descriptive elements. Ultimately this is used in the visualization and for reasoning about systems. In addition to the software framework we describe work on our demonstrator: an example factory with Raspberry Pi-based controllers that are interconnected via standard ethernet technology.
Download

Paper Nr: 36
Title:

A Causal Semantics for UML2.0 Sequence Diagrams with Nested Combined Fragments

Authors:

Fatma Dhaou, Ines Mouakher, J. Christian Attiogbé and Khaled Bsaies

Abstract: Combined Fragments (CF) are the new features added to UML2.0 sequence diagrams (SD). They have widely increased its expressiveness power, permitting to model complex behaviours, they can be nested to allow more sophisticated behaviours. We focus on the most popular CF of control-flow ALT, OPT, LOOP, SEQ allowing to model respectively alternative, optional, iterative and sequential behaviours. They require a meticulous processing for the generation of partial order between their events. We proposed in a previous work, a causal semantics based on partial order theory, which is suitable for deriving of all possible valid traces for sequence diagrams with CF modelling behaviours of distributed systems. In this work, to deal with nested CF, we first update the formalization of sequence diagram, then we extend this semantics.
Download

Paper Nr: 42
Title:

Security Support in Continuous Deployment Pipeline

Authors:

Faheem Ullah, Adam Johannes Raft, Mojtaba Shahin, Mansooreh Zahedi and Muhammad Ali Babar

Abstract: Continuous Deployment (CD) has emerged as a new practice in the software industry to continuously and automatically deploy software changes into production. Continuous Deployment Pipeline (CDP) supports CD practice by transferring the changes from the repository to production. Since most of the CDP components run in an environment that has several interfaces to the Internet, these components are vulnerable to various kinds of malicious attacks. This paper reports our work aimed at designing secure CDP by utilizing security tactics. We have demonstrated the effectiveness of five security tactics in designing a secure pipeline by conducting an experiment on two CDPs– one incorporates security tactics while the other does not. Both CDPs have been analysed qualitatively and quantitatively. We used assurance cases with goal-structured notations for qualitative analysis. For quantitative analysis, we used penetration tools. Our findings indicate that the applied tactics improve the security of the major components (i.e., repository, continuous integration server, main server) of a CDP by controlling access to the components and establishing secure connections.
Download

Paper Nr: 43
Title:

Investigating the Prioritization of Unit Testing Effort using Software Metrics

Authors:

Fadel Toure, Mourad Badri and Luc Lamontagne

Abstract: In object-oriented software, unit testing is a level of software testing where each individual class is tested by a dedicated unit test class. Unfortunately, due to time and resources constraints, this phase does not cover all classes. The testing efforts are often focused on particular classes. In this paper, we investigate an approach based on software information history to support the prioritization of classes to be tested. To achieve this goal, we first analyzed different attributes of ten open-source Java software systems for which JUnit test cases have been developed for several classes. We used the mean and the logistic regression analysis to characterize the classes for which JUnit test classes have been developed by testers. Second, we used two classifiers trained on metrics values and unit tests information collected from the selected systems. The classifiers provide, for each software, a set of classes on which unit testing efforts have to be focused. The obtained sets have been compared to the sets of classes for which JUnit test classes have been developed by testers. Results show that: (1) the metrics average values of tested classes are significantly different from the metrics average values of other classes, (2) there is a significant relationship between the fact that a JUnit test class has been developed for a class and its attributes, and (3) the sets of classes suggested by classifiers reflect the testers’ selection properly.
Download

Paper Nr: 65
Title:

Automatic Source Code Generation for Web-based Process-oriented Information Systems

Authors:

Jean Pierre Alfonso Hoyos and Felipe Restrepo-Calle

Abstract: Software development life cycle (SDLC) activities include: requirements analysis, design, development, testing and maintenance. The first two steps have wide impact in the project success, and errors in these stages can have large impact in the project duration and budget. To mitigate these problems, strategies like fast prototyping using natural language to specify software requirements have been proposed. These approaches can make the SDLC faster. In this context, this paper presents an approach to automatically generate a web application prototype running business processes using a restricted natural language specification. A comprehensive case study is presented to validate the proposal and demonstrate its applicability.
Download

Paper Nr: 68
Title:

New Approach for Selecting Cluster Head based on LEACH Protocol for Wireless Sensor Networks

Authors:

Wided Abidi and Tahar Ezzedine

Abstract: From hierarchical routing protocols, Low-Energy Adaptive Clustering Hierarchy (LEACH) has been considered as one of the effective algorithms that optimize energy and prolong the lifetime of network. In this paper, we propose a new approach of electing Cluster Head (CH) based on LEACH protocol. The selection of Cluster Head (CH) in LEACH is carried out randomly. In our proposed approach, we consider three fundamental criteria: the remaining energy, the number of neighbours within cluster range and the distance between node and CH. In fact, in our algorithm, we include these factors in calculation of threshold. Simulation results shows that our proposed approach beats LEACH protocol in regards of prolonging the lifetime of network and saving residual energy.
Download

Paper Nr: 79
Title:

A Change Impact Analysis Model for Aspect Oriented Programs

Authors:

Fabrice Déhoulé, Linda Badri and Mourad Badri

Abstract: Software change impact analysis (IA) plays a crucial role in software evolution. IA aims at identifying the possible effects of a source code modification. It is often used to evaluate the effects of a change after its implementation. However, more proactive approaches use IA to predict the potential effects of a change before it is implemented. In this way, IA provides useful information that can be used, among others, to guide the implementation of the change and to support regression tests selection. This paper aims at proposing a change impact analysis model for AspectJ programs. Aspect-Oriented Programming (AOP) is a natural extension of Object-Oriented Programming (OOP). It particularly promotes improved separation of crosscutting concerns into single units called aspects. The IA techniques proposed for object-oriented programs are not directly applicable for aspect-oriented programs due to the new dependencies introduced by aspects. The proposed model was designed to particularly support predictive IA. The model includes several impact rules based on the AspectJ language constructs. We performed an empirical evaluation of the model using several AspectJ programs. In order to assess the model prediction quality, we used two traditional measures: precision and recall. The reported results show that the model is able to achieve high accuracy.
Download

Short Papers
Paper Nr: 20
Title:

Search based GUI Test Generation in Java - Comparing Code-based and EFG-based Optimization Goals

Authors:

Mathias Menninghaus, Falk Wilke, Jan-Philipp Schleutker and Elke Pulvermüller

Abstract: Modern software systems often communicate with their users by graphical user interfaces (GUI). While the underlying business logic may be fully covered by unit tests, the GUI mostly is not. Despite the widespread use of capture and replay tools, which leave the test generation of GUI tests to the user, recent research also focuses on automated GUI test generation. From the numerous approaches, which include symbolic execution, model-based generation, and random testing, search based test data generation seems to be the most promising. In this paper, we create GUI tests using hill climbing, simulated annealing and several genetic algorithms which deal differently with the sequence length and use multi or single objective algorithms. These different test data generators are compared in terms of runtime and coverage. All approaches are also compared using different optimization goals which are a high coverage of the event flow graph (EFG) of the GUIs and a high coverage of the underlying source code. The evaluation shows that the genetic algorithms outperform hill climbing and simulated annealing in terms of coverage, and that targeting a high EFG coverage causes the best runtime performance.
Download

Paper Nr: 39
Title:

Network Reconfiguration for Wireless Sensor Networks using UML/MARTE Profile

Authors:

Raoudha Saida, Yessine Hadj Kacem, M. S BenSaleh and Mohamed Abid

Abstract: The required autonomy and the growth of the complexity of wireless sensor networks (WSNs) systems give the reconfiguration a big importance. Thus, the integration of reconfiguration scenarios (node level or network level reconfiguration) in the development cycle of WSNs system is required to offer an efficient reaction to environment variability. In this direction, existing model based design approaches of reconfigurable WSNs are limited to the design of behavioral reconfiguration techniques which bring adjustment of the system’s parameters or update some functionalities. However, network reconfiguration which presents an important ability of networked systems for dealing with the network disconnectivity and power consumption, is still under-explored. In this context, we propose a high level model based design of WSNs applications using the UML/MARTE standard to specify network reconfiguration semantics. We define a new package named «NW_Reconfiguration». A case study on water distribution network is proposed to evaluate our proposed design approach.
Download

Paper Nr: 50
Title:

Introducing Context Awareness in Unmodified, Context-unaware Software

Authors:

Markus Raab and Gergö Barany

Abstract: Software tends to be highly configurable, but most applications are hardly context aware. For example, a web browser provides many settings to configure printers and proxies, but nevertheless it is unable to dynamically adapt to a new workplace. In this paper we aim to empirically demonstrate that by dynamic and automatic reconfiguration of unmodified software we can systematically introduce context awareness. In 16 real-world applications comprising 50 million lines of code we empirically investigate which of the 2,683 run-time configuration accesses (1) already take context into account, or (2) can be manipulated at run-time to do so. The results show that context awareness can be exploited far beyond the developers’ initial intentions. Our tool Elektra dynamically intercepts the run-time configuration accesses and replaces them with a context aware implementation. Users only need to specify contexts and add context sensors to make use of this potential.
Download

Paper Nr: 52
Title:

Context-awareness Meta-model for Reconfigurable Control Systems

Authors:

Soumoud Fkaier, Mohamed Romdhani, Mohamed Khalgui and Georg Frey

Abstract: With the increasing evolution of adaptive control systems, control applications are asked to satisfy more constraints. On one hand, these applications have to guarantee flexible adaptation processes. On the other hand, they must offer an efficient interaction with the environment. Satisfying such needs is still challenging due to real-time requirements. Developing an application covering these constraints needs a robust software support. Some properties like clear structuring, flexibility and reuse are becoming necessary to ease the development of the appropriate applications. In this paper, we propose a context-aware meta-model enabling the development of real-time reconfigurable control systems. This meta-model offers a development flexibility while meeting the functional as well as the real-time constraints. To prove the efficiency of this meta-model, we implemented a framework on the basis of the new concepts. Also, we simulated a case study using the new tool. As a performance test, we calculated the system response time and we compared it with other work.
Download

Paper Nr: 69
Title:

A Tool for Visualizing the Execution of Programs and Stack Traces Especially Suited for Novice Programmers

Authors:

Stanislav Litvinov, Marat Mingazov, Vladislav Myachikov, Vladimir Ivanov, Yuliya Palamarchuk, Pavel Sozonov and Giancarlo Succi

Abstract: Software engineering education and training has obstacles caused by a lack of basic knowledge about a process of program execution. The article is devoted to the development of special tools that help to visualize the process. We analyze existing tools and propose a new approach to stack and heap visualization. The solution is able to overcome major drawbacks of existing tools and suites well for analysis of programs written in Java and C/C++.
Download

Paper Nr: 76
Title:

From Temporal Models to Property-based Testing

Authors:

Nasser Alzahrani, Maria Spichkova and Jan Olaf Blech

Abstract: This paper presents a framework to apply property-based testing (PBT) on top of temporal formal models. The aim of this work is to help software engineers to understand temporal models that are presented formally and to make use of the advantages of formal methods: the core time-based constructs of a formal method are schematically translated to the BeSpaceD extension of the Scala programming language. This allows us to have an executable Scala code that corresponds to the formal model, as well as to perform PBT of the models functionality. To model temporal properties of the systems, in the current work we focus on two formal languages, TLA+ and FocusST .
Download

Paper Nr: 82
Title:

Web Migration - A Survey Considering the SME Perspective

Authors:

Sebastian Heil and Martin Gaedke

Abstract: Legacy systems are business-critical and contain valuable knowledge gathered over years of development. Many of these systems are still non-web desktop applications. Companies are aware of the advantages of web applications. However, Web Migration (WM), i.e. transforming legacy systems into web applications, is still a challenge, in particular for Small and Medium-sized Enterprises (SMEs). A large body of research exists in this field, but the specifics of SMEs have been overseen so far. This survey provides an overview on existing WM approaches with a dedicated focus on the SME perspective. The systematic mapping study analyses 122 primary studies and tools, identifies four major research focuses, reports on common methods and techniques and the consideration of SMEs. We then outline resulting research issues and future research directions.
Download

Paper Nr: 86
Title:

Towards the Integration of Metaprogramming Services into Java

Authors:

Ignacio Lagartos, Jose Manuel Redondo and Francisco Ortin

Abstract: Dynamic languages are widely used in scenarios where runtime adaptability is a strong requirement. The metaprogramming features provided by these languages allow the dynamic adaptation of the structure of classes and objects, together with the evaluation of dynamically generated code. These features are used to build software capable of adapting to runtime changing environments. However, this flexibility is counteracted with the lack of static type checking provided by statically typed languages such as Java. Static type checking supports the earlier detection of type errors, involving a valuable tool in software development. In this position paper, we describe the steps we are following to add some runtime metaprogramming services to Java. We intend to provide the runtime flexibility of structural intercession and dynamic code evaluation provided by most dynamic languages, without losing the robustness of the compile-time type checking of Java. The metaprogramming services are provided as a library so, unlike other existing systems, any standard virtual machine and language compiler could be used.
Download

Paper Nr: 89
Title:

A Reusable Requirements Catalog for Internationalized and Sustainable Blood Donation Apps

Authors:

Sofia Ouhbi, José Luis Fernández-Alemán, Ali Idri, Ambrosio Toval, José Rivera Pozo and Manal El Bajta

Abstract: Blood donation mobile applications are efficient tools to increase awareness about the importance of blood donation acts and to attract blood donors. The aim of this paper is to define a reusable requirements repository (catalog) for blood donation applications based on the main related software engineering standards, e-health technology standards and literature. The catalog contains requirements regarding internationalization to bridge the cultural and language barriers among blood donors. It includes also requirements for sustainable blood donation applications which cover the individual, social, environmental, and technical dimensions of sustainability. This catalog can be very useful to develop, evaluate and audit blood donation applications and it can be adapted to other m-health applications.
Download

Paper Nr: 91
Title:

Does the Migration to GitHub Relate to Internal Software Quality?

Authors:

Riccardo Roveda, Francesca Arcelli Fontana, Claudia Raibulet, Marco Zanoni and Federico Rampazzo

Abstract: Software development is more and more influenced by the usage of FLOSS (Free, Libre and Open Source Software) projects. These software projects are developed in web collaborative environments hosted on web platforms, called code forges. Many code forges exist, with different capabilities. Github is perhaps the largest code forge available, and many projects have been migrated from different code forges to Github. Given its success, we want to understand if its adoption has effect on the projects' internal quality. To consider objective measures of internal quality, we apply four known tools performing static analysis to extract metrics and code anomalies. These data is extracted on six versions of six FLOSS projects, and compared to understand if the migration to Github had any consistent effect over any of the considered measures.
Download

Paper Nr: 93
Title:

Evaluating the Quality of the Documentation of Open Source Software

Authors:

Lerina Aversano, Daniela Guardabascio and Maria Tortorella

Abstract: Software documentation is a basic component of the software development process: from the definition of the functional requirements to the maintenance phase. Software documentation refers to different types of documents that facilitates the software developer’s tasks. Then, it includes the textual documentation required by the Software engineering standards, API documentation, Wiki pages and source code comments. Surveys and studies indicate that the documentation is not always available and, if available, only partially addresses the developers' needs, as it is often wrong, incomplete, out-of-date and ambiguous. This paper focuses on the quality assessment of the documentation of open source systems with the aim of understanding the support it can offer for adopting them and executing maintenance activities. Specifically, a quality model is defined and a preliminary investigation of its applicability is performed.
Download

Paper Nr: 13
Title:

A Statement Level Bug Localization Technique using Statement Dependency Graph

Authors:

Shanto Rahman, Md. Mostafijur Rahman and Kazi Sakib

Abstract: Existing bug localization techniques suggest source code methods or classes as buggy which require manual investigations to find the buggy statements. Considering that issue, this paper proposes Statement level Bug Localization (SBL), which can effectively identify buggy statements from the source code. In SBL, relevant buggy methods are ranked using dynamic analysis followed by static analysis of the source code. For each ranked buggy method, a Method Statement Dependency Graph (MSDG) is constructed where each statement acts as a node of the graph. Since each of the statements contains few information, it is maximized by combining the contents of each node and its predecessor nodes in MSDG, resulting a Node Predecessor-node Dependency Graph (NPDG). To identify relevant statements for a bug, similarity is measured between the bug report and each node of the NPDG using Vector Space Model (VSM). Finally, the buggy statements are ranked based on the similarity scores. Rigorous experiments on three open source projects named as Eclipse, SWT and PasswordProtector show that SBL localizes the buggy statements with reasonable accuracies.
Download

Paper Nr: 30
Title:

The GRADE Decision Canvas for Classification and Reflection on Architecture Decisions

Authors:

Efi Papatheocharous, Kai Petersen, Jakob Axelsson, Claes Wohlin, Jan Carlson, Federico Ciccozzi, Séverine Sentilles and Antonio Cicchetti

Abstract: This paper introduces a decision canvas for capturing architecture decisions in software and systems engineering. The canvas leverages a dedicated taxonomy, denoted GRADE, meant for establishing the basics of the vocabulary for assessing and choosing architectural assets in the development of software-intensive systems. The canvas serves as a template for practitioners to discuss and document architecture decisions, i.e., capture, understand and communicate decisions among decision-makers and to others. It also serves as a way to reflect on past decision-making activities devoted to both tentative and concluding decisions in the development of software-intensive systems. The canvas has been assessed by means of preliminary internal and external evaluations with four scenarios. The results are promising as the canvas fulfills its intended objectives while satisfying most of the needs of the subjects participating in the evaluation.
Download

Paper Nr: 78
Title:

Agent-based Semantic Negotiation Protocol for Semantic Heterogeneity Solving in Multi-agent System

Authors:

Dhouha Ben Noureddine, Atef Gharbi and Samir ben Ahmed

Abstract: In this article, we propose an interactive agent model in an open and heterogeneous multi-agent system (MAS). Our model allows agents to autonomously communicate between each other through semantic heterogeneity. The communication problem can be expressed by the calculation based on the abilities acquired in the receiver agent, compared to the message sent by the sender agent. Hence, the semantic heterogeneity should be resolved in the message processing. The agent can autonomously enrich its own ontology by using semantic negotiation approach in several steps. We develop firstly, a model using an ontology alignment framework. Then, we enhance a similarity measure to select the most similar pairs by combining a psychological knowledge of the relevance, the resemblance, and the non-symmetry of similarity. At the end, we suggest a protocol for supporting semantic negotiation. In order to explain our approach, we implement a simple benchmark production system on JADE.
Download

Paper Nr: 83
Title:

Prodeling with the Action Language for Foundational UML

Authors:

Thomas Buchmann

Abstract: Model-driven software development (MDSD) – a software engineering discipline, which gained more and more attention during the last few years – aims at increasing the level of abstraction when developing a software system. The current state of the art in MDSD allows software engineers to capture the static structure in a model, e.g., by using class diagrams provided by the Unified Modeling Language (UML), and to generate source code from it. However, when it comes to expressing the behavior, i.e., method bodies, the UML offers a set of diagrams, which may be used for this purpose. Unfortunately, not all UML diagrams come with a precisely defined execution semantics and thus, code generation is hindered. Recently, the OMG issued the standard for an Action Language for Foundational UML (Alf), which allows for textual modeling of software system and which provides a precise execution semantics. In this paper, an integrator between an UML-based CASE tool and a tool for Alf is presented, which empowers the modeler to work on the desired level of abstraction. The static structure may be specified graphically with the help of package or class diagrams, and the behavior may be added using the textual syntax of Alf. This helps to blur the boundaries between modeling and programming. Executable Java code may be generated from the resulting Alf specification.
Download

Paper Nr: 92
Title:

Software Engineering and Genomics: The Two Sides of the Same Coin?

Authors:

José Fabián Reyes Román, Ana León Palacio and Óscar Pastor López

Abstract: Programs are historically the basic notion in Software Engineering (SE) that represent the final artefact to be executed in a machine. These programs have been created by humans, using a silicon-based code, whose final components use a binary code represented by 0s and 1s. If we look at life as a program with a DNA-based genetic code and a final representation that uses four essential units (A, C, G and T), one challenging question emerges. Can we establish a correspondence between life -from a genomic perspective- and programs -from a Software Engineering perspective-? This paper assumes a positive answer to this question and goes further into this mapping by proposing how conceptual models (CM) are not only required to understand life but to manage the huge amount of data generated in the genomic domain day after day. The main contributions focus on i) showing how to design such a Conceptual Model of the Human Genome (CMHG), analysing how it evolves as knowledge accumulates on the domain, and ii) how these ideas can be applied in an advanced, genome-based, precision medicine, under the assumption that this medicine will only reach our health systems if these sound SE practices are properly applied in the genomic domain.
Download

Paper Nr: 100
Title:

Enriching Frame-based Structured Representations for Requirements using Case Frames - An Approach Towards Handling Incompleteness in Informal Requirements

Authors:

Akanksha Mishra and Richa Sharma

Abstract: Requirements gathered during early phase of requirements engineering are informal and vague. These informal requirements are analyzed with the goal of detecting three major problems in requirements – ambiguity, inconsistency, and incompleteness in order to arrive at correct and formal set of requirements. These problems are quite intertwined, with one problem leading to another. Incompleteness in requirements, however, is considered to be a principal reason for poor quality of requirements, and is the most difficult issue to address. There are multiple views around defining and detecting incompleteness in requirements. In this paper, we present an approach towards handling incompleteness in informal requirements considering individual requirements statement expressed in natural language as an atomic requirement. Our approach is based on enriching frame-based structured representation using FrameNet database that, in turn, can prove useful in identifying potential missing information from requirements. We also report our observations from the evaluation study conducted with a case study.
Download