ICSOFT-PT 2014 Abstracts


Area 1 - Models

Full Papers
Paper Nr: 23
Title:

Functional Requirements Under Security PresSuRE

Authors:

Stephan Faßbender, Maritta Heisel and Rene Meis

Abstract: Recently, there has been an increase of reported security incidents hitting large software systems. Such incidents can originate from different attackers exploiting vulnerabilities of different parts of a system. Hence, there is a need for enhancing security considerations in software development. It is crucial for requirements engineers to identify security threats early on, and to refine the threats into security requirements. In this paper, we introduce a methodology for Problem-based Security Requirements Elicitation (PresSuRE). PresSuRE is a method for identifying security needs during the requirements analysis of software systems using a problem frame model. Our method does not rely entirely on the requirements engineer to detect security needs, but provides a computer-aided security threat identification, and subsequently the elicitation of security requirements. The identification is based on the functional requirements for a system-to-be. We illustrate and validate our approach using a smart grid scenario provided by the industrial partners of the EU project NESSoS.

Paper Nr: 24
Title:

Propagating Model Refactorings to Graph Transformation Rules

Authors:

Sabine Winetzhammer and Bernhard Westfechtel

Abstract: Model-driven software engineering reduces the effort of developing software by replacing low-level programming with the construction of high-level executable models. Refactoring improves the structure of software artifacts without changing external behavior. Originally, refactoring was developed for and applied to (object-oriented) programs. In the context of model-driven software engineering, refactoring has to be applied to both structural and behavioral models. In this paper, we present tool support for model refactoring in ModGraph, a tool which employs Ecore class diagrams for structural modeling and graph transformation rules for behavioral modeling. In particular, we focus on the propagation of refactorings of the structural model into the behavioral model.

Paper Nr: 28
Title:

An LTL Semantics of BusinessWorkflows with Recovery

Authors:

Luca Ferrucci, Marcello M. Bersani and Manuel Mazzara

Abstract: We describe a business workflow case study with abnormal behavior management (i.e. recovery) and demonstrate how temporal logics and model checking can provide a methodology to iteratively revise the design and obtain a correct-by construction system. To do so we define a formal semantics by giving a compilation of generic workflow patterns into LTL and we use the bound model checker Zot to prove specific properties and requirements validity. The working assumption is that such a lightweight approach would easily fit into processes that are already in place without the need for a radical change of procedures, tools and people’s attitudes. The complexity of formalisms and invasiveness of methods have been demonstrated to be one of the major drawback and obstacle for deployment of formal engineering techniques into mundane projects.

Short Papers
Paper Nr: 2
Title:

Real-time Reconfigurable Scheduling of Aperiodic OS Tasks on Multiprocessor Systems

Authors:

Hamza Gharsellaoui, Atef Gharbi and Samir Ben Ahmed

Abstract: The paper deals with the real-time scheduling of aperiodic OS tasks that composed multiprocessor embedded systems which can change their behaviors at run-time for each reconfiguration scenario. A reconfiguration scenario is assumed to be any run-time automatic addition, removal, or also update of OS tasks according to external events or also user requirements. We propose a new approach to check the system’s feasibility of the tasks while minimizing their response times. An agent-based architecture is proposed to provide run-time technical solutions for users in order to reach again the system’s feasibility after any reconfiguration scenario for the whole multiprocessor embedded systems. We discuss the paper’s contribution by analyzing the experimental results that we did on a running example.

Paper Nr: 3
Title:

The Impact of Agile Approaches on Software Quality Attributes - An Empirical Study

Authors:

Doaa M. Shawky and Salwa K. Abd-El-Hafiz

Abstract: Agile software development describes those software systems which undergo rapid changes as a result of the testing and requirements fulfillment processes. This development technique came into view in order to overcome the drawbacks of long software life cycles of traditional development methods. This paper investigates the effects of agile practices on the quality of the produced software systems. We have used 20 open and closed source systems of various sizes and functionalities. While the development process of 9 of the studied systems followed agile approaches, the rest were developed using traditional approaches. Firstly, a set of software metrics is generated to describe each system. The metrics encompass complexity and inheritance characteristics of the studied systems. Secondly, the generated metrics are used as predictors of the type of the followed development process using binary logistic regression. The obtained high goodness-of-fit measures show the strong relationship between the used metrics and the type of the followed development process. More specifically, the study reveals that following agile practices has a great impact on lack of cohesion of methods, fan in and maximum depth of inheritance tree.

Paper Nr: 4
Title:

Developing User Interfaces with EMF Parsley

Authors:

Lorenzo Bettini

Abstract: In this paper we describe the main features of EMF Parsley, a new Eclipse project for implementing applications based on the Eclipse Modeling Framework (EMF). EMF Parsley aims at complementing the EMF reflective mechanisms with respect to rapidly creating user interfaces based on models, without having to deal with internal details and setup code. In particular, EMF Parsley uses injection mechanisms to easily customize all the aspects of such applications. Moreover, it provides a set of reusable user interface components like trees, tables and detail forms that manage the model with the introspective EMF capabilities, together with reusable views, editors and dialogs. Besides project wizards, to easily create projects based on EMF Parsley, the main developing tool is a DSL, implemented with Xtext/Xbase, that provides a rapid customization mechanism.

Paper Nr: 11
Title:

A Meta-Modeling Approach for Extending the Instructional Design Semantics of Learning Management Systems

Authors:

Esteban Loiseau, Pierre Laforcade and Sébastien Iksal

Abstract: Nowadays Learning Management Systems (LMS) are not restricted to distant learning. Nevertheless, the pedagogical expressiveness of courses designed by teachers is strongly dependent on their knowledge and level of expertise on the LMS they use. The GraphiT project aims to help teachers design pedagogically sound and technically executable learning designs. To this end, we propose to support teachers by providing them with an LMS-specific Visual Instructional Design Language, according to a Domain Specific Modeling approach and tooling. This paper focuses on the abstract syntax of such language. We propose a specific LMS-centered approach for raising the pedagogical expressiveness of their implicit learning design semantics. We discussed how the LMS low-level parameterisations could be abstracted in order to build higher-level building blocks. Based on the Moodle LMS, we present and verify our meta-modeling approach by formalising the abstract syntax of a Moodle-dedicated instructional design language.

Paper Nr: 14
Title:

Model Weaving and Pedagogy - Mapping Abstraction Levels in Instructional Design Languages

Authors:

Esteban Loiseau, Pierre Laforcade and Sébastien Iksal

Abstract: The GraphiT project aims at providing teachers with an operationalizable instructional design language. To provide compatibility with existing e-learning platforms, the produced learning scenarios have to comply with a platform specific metamodel. The issue addressed in this paper is about mapping high level pedagogical elements captured from teachers’ practices to low-level platform features. We propose to use model weaving to specify the mappings between different abstraction levels. Weaving models can then be used to generate model transformations that will effectively perform modifications on the model at runtime.

Paper Nr: 15
Title:

Automated Quantitative Attributes Prediction from Architectural Description Language

Authors:

Imen Derbel, Lamia Labed Jilani and Ali Mili

Abstract: Software architecture has become an increasingly important research topic in recent years. Concurrently much more attention has been paid to methods of evaluating non functional attributes of these architectures. However, in current architectural description languages (ADLs) based on a formal and abstract model of system behavior, there is a notable lack of support for representing and reasoning about non functional attributes. In this paper, we propose ACME+ ADL as an extension of ACME ADL and discuss our quantitative model for formal analysis of software architectures. This paper gives an overview of our formal approach for describing software architectures and analyzing their performance, reliability, maintainability and availability. The proposed model is supported by an automated tool that transforms an architecture described in ACME+ into a set of inequalities characterizing system non functional attributes. These inequalities are then solved using Mathematica in order to obtain system properties as function of its components and connectors properties.

Paper Nr: 19
Title:

Refining Use Cases through Temporal Relations

Authors:

António Miguel Rosado da Cruz

Abstract: In UML, use cases can be used both for modeling the external requirements of a subject (system) and the functionality offered by a subject. Moreover, use cases can also be used to specify the requirements the subject poses on its environment, by defining how the actors should interact with the subject. Task models are used in the HCI community to model tasks the user and the system must carry out when interacting. In contrast with task-models, temporal relations are not allowed within use case models. This paper proposes three temporal relations between use cases, making possible the inclusion of more detail in the use case model, thus enhancing the expressiveness of use cases for modeling requirements and contributing to better user interface (UI) models generation, within the context of an automatic model-to-model transformation process between a use case model and a UI model.

Paper Nr: 27
Title:

A Visual Programming Language for Soccer

Authors:

António Belguinha, Pedro Rodrigues, P.J.S. Cardoso, J.M.F. Rodrigues and Domingos Paciência

Abstract: The use of Information Technologies (IT) in high competition sports is an instrument often used. However, the majority of the performers, including technical teams, do not have skills to program those IT tools to their needs. In this paper we present the low level implementation of a visual programming language (VPL) that allows the user without programming expertise to produce relatively complex programs by drawing them on a web application. The VPL tool application is illustrated by applying it to detect programmed situations from a soccer game, using previously obtained tracking data. The tool can be applied to other collective ball sports.

Posters
Paper Nr: 9
Title:

Modelling Microservices in Email-marketing - Concepts, Implementation and Experiences

Authors:

Martin E. Brüggemann, Raoul Vallon, Aykut Parlak and Thomas Grechenig

Abstract: Our experience with email-based marketing campaigns (or short: “Microservices”) showed that they are an intersecting set of a) projects and processes and b) technology and creativity. Their properties of fixed due date, fixed scope and at the same time fixed duration render classical management methodologies unfeasible. The same applies to the supporting enterprise infrastructure architecture, where ad-hoc changes lead to a loss of stability and performance. The remedy was found in Model-Driven Engineering; a choreography for Microservices helped to indicate improvement opportunities for both the architecture and the information flow within, which in turn increased throughput.

Paper Nr: 20
Title:

Semantic Resource Adaptation Based on Generic Ontology Models

Authors:

Bujar Raufi, Florije Ismaili, Jaumin Ajdari, Mexhid Ferati and Xhemal Zenuni

Abstract: In recent years, a substantial shift from the web of documents to the paradigm of web of data is witnessed. This is seen from the proliferation of massive semantic repositories such as Linked Open Data. Recommending and adapting resources over these repositories however, still represents a research challenge in the sense of relevant data aggregation, link maintenance, provenance and inference. In this paper, we introduce a model of adaptation based on user activities for performing concept adaptation on large repositories built upon extended generic ontology model for Adaptive Web-Based Systems. The architecture of the model is consisted of user data extraction, user knowledgebase, ontology retrieval and application and a semantic reasoner. All these modules are envisioned to perform specific tasks in order to deliver efficient and relevant resources to the users based on their browsing preferences. Specific challenges in relation to the proposed model are also discussed.

Paper Nr: 21
Title:

Traditional vs Agile Development - A Comparison Using Chaos Theory

Authors:

Doaa M. Shawky

Abstract: Agile software development describes those methods with iterative and incremental development. This development method came into view to overcome the drawbacks of traditional development methods. Although agile development methods have become very popular since the introduction of the Agile Manifesto in 2001, however, there is an ongoing debate about the strengths and weakness of these methods in comparison with traditional ones. In this paper, a new dimension for the comparison between the two methods is presented. We postulate that, since both methods are based mainly on human activity, the two methods can be modeled using Chaos Theory. Source codes that are produced by the two methods in subsequent versions are characterized by a set of software metrics. Modeling and analysis of these metrics are performed using the Chaos Theory. Initial results show that the metrics sequences of both methods are chaotic sequences. Furthermore, agile methods produce more chaotic metrics sequences. However, is being chaotic a good or a bad feature? We argue that sometimes being chaotic is not a weakness, on the contrary, it is a strength.

Paper Nr: 22
Title:

Measurement of Fairness in Process Models Using Entropy and Stochastic Petri Nets

Authors:

Martin Ibl

Abstract: Measurements of various properties of the process models in the last few years become relatively widely explored area. These are properties such as uncertainty, complexity, readability or cohesion of process models. Quantification of these properties can provide better insight in term of, for instance, user-friendliness, predictability, clarity, etc. of the process model. The aim of this work is to design a method for quantification of fairness in the process models which are modelled using stochastic Petri nets. The method is based on mapping the set of all reachable markings of Petri net into Markov chain and then quantification of entropy from stationary probabilities of the individual places (all places or a specific subset). The resulting value of fairness is from the interval <0, 1>.

Area 2 - Aspects

Full Papers
Paper Nr: 7
Title:

Model-Driven Development Versus Aspect-Oriented Programming - A Case Study

Authors:

Uwe Hohenstein and Christoph Elsner

Abstract: This case study compares two different technologies – model-driven development (MDD) and aspect-oriented programming (AOP) – both trying to avoid redundant code, but with very different approaches. A real industrial software system, the OpenSOA platform, which had already applied a model-driven XML/XSL-T approach, is used as the basis for implementation and comparison. For evaluation purpose, we have re-implemented the XSL-T implemented logic with a corresponding AOP implementation in AspectJ. Taking into account several criteria, our case study indicates that the AOP implementation reveals its strengths in avoiding redundancy, better testability, and understandability. However, more advanced tooling could significantly improve the position of MDD for the latter. MDD is in turn the more flexible approach, allowing generation of arbitrary artefacts the design demands. As the main issue of the case study, to generate wrapper classes and boilerplate-code, is rather common, we believe that our results have potential to be transferred to other problem settings. Furthermore, we think that our evaluation criteria will help guiding others in making technology choices. We also give an outlook on how combinations of MDD and AOP may leverage the best of both worlds.

Paper Nr: 10
Title:

Aspect-oriented Requirements Engineering with Problem Frames

Authors:

Stephan Faßbender, Maritta Heisel and Rene Meis

Abstract: Nowadays, the requirements of various stakeholders for a system do not only increase the complexity of the system-to-be, but also contain different cross-cutting concerns. In such a situation, requirements engineers are really challenged to master the complexity and to deliver a coherent and complete description of the system-to-be. Hence, they are in need for methods which reduce the complexity, handle functional and quality requirements, check completeness and reveal interactions, and are tool supported to lower the effort. One possible option to handle the complexity of a system-to-be is the separation of concerns. Both, aspect-oriented requirements engineering and the problem frames approach implement this principle. Therefore, we propose a combination of both, the AORE4PF (Aspect-Oriented Requirements Engineering for Problem Frames) method. AORE4PF provides guidance for classifying requirements, separating the different concerns, modeling requirements for documentation and application of completeness and interaction analyses, and weaving the reusable parts to a complete and coherent system. AORE4PF provides tool support for most activities. We exemplify our method using a smart grid case obtained from the NESSoS project. For validation, the results of a small experiment in the field of crisis management systems are presented.

Short Papers
Paper Nr: 26
Title:

Combining Aspect-orientation and UPPAAL Timed Automata

Authors:

Dragos Truscan, Jüri Vain and Martin Koskinen

Abstract: We discuss an approach to combine aspect-oriented concepts with UPPAAL timed automata (UPTA) with the focus on providing a systematic constructive approach and automation tool support for model weaving. Our approach allows for decoupling the design of different aspects of the system and suggests the use of explicit composition patterns to weave the aspects together. We exemplify with an auto-off lamp example.

Area 3 - Services

Short Papers
Paper Nr: 6
Title:

The RITMARE Starter Kit - Bottom-up Capacity Building for Geospatial Data Providers

Authors:

Cristiano Fugazza, Stefano Menegon, Monica Pepe, Alessandro Oggioni and Paola Carrara

Abstract: Capacity building by data providers is a fundamental task in the creation of a decentralized Spatial Data Infrastructure. This challenge has been tackled in the RITMARE Flagship Project by providing the Starter Kit, a comprehensive set of domain-oriented software components that exposes standard services for the management of geospatial information. We report on the characteristics of this toolkit, developed by the National Research Council of Italy (CNR), particularly with regard to the underlying service-oriented architecture and the novel semantics-aware methodology that is proposed for metadata editing.

Area 4 - Context

Short Papers
Paper Nr: 8
Title:

On Specifying and Verifying Context-aware Systems

Authors:

Brahim Djoudi, Chafia Bouanaka and Nadia Zeghib

Abstract: Software systems often need to be adapted for different execution environments, problem sets, and available resources to maintain and ensure their efficiency and reliability, being thus context-aware. Albeit, many approaches for context-aware systems specification have been proposed in the literature, the absence or poor representation of contextual information and its relationships with system entities without affecting system complexity and consistency usually leads to low-precision and irrelevant results. Moreover, it is difficult to verify the correctness of existing context models. In this paper, we propose a formal model for context-aware adaptive systems specification. The model also supports formal verification of the obtained system model through a set of inherent invariants, where context-aware systems behaviour can be verified according to system invariants by applying model checking techniques.