ICSOFT-PT 2015 Abstracts


Area 1 - Models

Full Papers
Paper Nr: 5
Title:

SuperMod — A Model-Driven Tool that Combines Version Control and Software Product Line Engineering

Authors:

Felix Schwägerl, Thomas Buchmann and Bernhard Westfechtel

Abstract: Version control (VC) and Software Product Line Engineering (SPLE) are two software engineering disciplines to manage variability in time and variability in space. In this paper, a thorough comparison of VC and SPLE is provided, showing that both disciplines imply a number of desirable properties. As a proof of concept for the combination of VC and SPLE, we present SuperMod, a tool realizes an existing conceptual framework that transfers the iterative VC editing model to SPLE. The tool allows to develop a software product line in a single-version workspace step by step, while variability management is completely automated. It offers familiar version control metaphors such as check-out and commit, and in addition uses the SPLE concepts of feature models and feature configuration the definition of logical variability and to define the logical scope of a change. SuperMod has been implemented in a model-driven way and primarily targets EMF models as software artifacts. We successfully apply the tool to a standard SPLE example.

Paper Nr: 8
Title:

Semantic Version Management based on Formal Certification

Authors:

Jean-Yves Vion-Dury and Nikolaos Lagos

Abstract: This paper describes a Semantic Version Management method that enables managing consistently digital resources throughout their life cycle. The core notion is that resources are described be means of logical specifications formally expressed using an extensible logical language. A new version is considered certified only if the resource owner is able to formally prove that it satisfies its logical specification. The method includes formal proofs for qualifying changes (occurring either on the resource content or on the corresponding specifications) and accordingly characterizing them via the definition of appropriate version labels. Based on the above method, a service-oriented solution is also described that enables managing changes consistently, in a sound manner, for both resource owners and users.

Paper Nr: 9
Title:

Java--Meets Eclipse - An IDE for Teaching Java Following the Object-later Approach

Authors:

Lorenzo Bettini and Pierluigi Crescenzi

Abstract: In this paper, we introduce a new Eclipse-based IDE for teaching Java following the object-later approach. In particular, this IDE allows the programmer to write code in Java--, a smaller version of the Java language that does not include object-oriented features. For the implementation of this language we used Xtext, an Eclipse framework for implementing Domain Specific Languages; besides the compiler mechanisms, Xtext also allows to easily implement all the IDE tooling mechanisms in Eclipse. By using Xtext we were able to provide an implementation of Java-- with all the powerful features available when using an IDE like Eclipse (including debugging, automatic building, and project wizards). With our implementation, it is also straightforward to create self-assessment exercises for students, which are integrated in Eclipse and JUnit.

Paper Nr: 14
Title:

Systematic Identification of Information Flows from Requirements to Support Privacy Impact Assessments

Authors:

Rene Meis and Maritta Heisel

Abstract: Several countries prescribe or advise government departments and organizations to perform a privacy impact assessment (PIA) if these prepare new projects or change existing ones that involve personal information. A PIA shall summarize what personal information is collected, processed, stored, and distributed in the context of the project. But there is only little support for undertaking a PIA and to create a PIA report, most countries only provide vague guidelines and simple templates. We present in this paper an extension of the problem-based privacy analysis (ProPAn) method that derives information needed to conduct a PIA from a requirements model in problem frame notation. We provide a formally specified method with well-defined steps and tool support to reduce the effort to be spent for eliciting the needed information and to ensure that the needed information is as complete and coherent as possible to form an adequate basis for the creation of a PIA report.

Paper Nr: 17
Title:

Model Checking to Improve Precision of Design Pattern Instances Identification in OO Systems

Authors:

Mario L. Bernardi, Marta Cimitile, Giuseppe De Ruvo, Giuseppe A. Di Lucca and Antonella Santone

Abstract: In the last two decades some methods and tools have been proposed to identify the Design Pattern (DP) instances implemented in an existing Object Oriented (OO) software system. This allows to know which OO components are involved in each DP instance. Such a knowledge is useful to better understand the system thus reducing the effort to modify and evolve it. The results obtained by the existing methods and tools can suffer a lack of completeness or precision due to the presence of false positive/negative. Model Checking (MC) algorithms can be used to improve the precision of DP’s instances detected by a tool by automatically refining the results it produces. In this paper a MC based technique is defined and applied to the results of an existing DPs mining tool, called Design Pattern Finder (DPF), to improve the precision by verifying automatically the DPs instances it detects. To verify and assess the feasibility and the effectiveness of the proposed technique, we carried out a case study where it was applied on some open source OO systems. The results showed that the proposed technique allowed to improve the precision of the DPs instances detected by the DPF tool.

Paper Nr: 18
Title:

Transformation from R-UML to R-TNCES: New Formal Solution for Verification of Flexible Control Systems

Authors:

Mohamed Oussama Ben Salem, Olfa Mosbahi, Mohamed Khalgui and Georg Frey

Abstract: Unified Modeling Language (UML) is currently accepted as the standard for modeling software and control systems since it allows to concentrate on different aspects of the system under design. However, UML lacks formal semantics and, hence, it is not possible to apply, directly, mathematical techniques on UML models to verify them. UML does not feature explicit semantics to model flexible control systems sharing adaptive shared resources either. Thus, this paper proposes a new UML profile, baptized R-UML (Reconfigurable UML), to model such reconfigurable systems. The profile is enriched with a PCP-based solution for the management of resource sharing. The paper also presents an automatic translation of R-UML into R-TNCES, a Petri Net-based formalism, to support model checking.

Short Papers
Paper Nr: 2
Title:

A Tool for Management of Knowledge Dispersed throughout Multiple References

Authors:

Carlos Saénz-Adán, Francisco J. García-Izquierdo, Ángel Luis Rubio, Eduardo Sáenz-de-Cabezón Irigaray, Emilio Rodríguez-Priego and Oscar Díaz

Abstract: When modeling tasks are performed, it is important that the different modeling team members share a common vocabulary. This implies not only agreement on the terminology itself but especially on the meaning of the terms used. To this end it comes in handy to have graphical tools for sharing and analyzing the knowledge dispersed throughout different sources. In this paper we present RCMTool, a tool for creating References-enriched Concept Maps (RCM). This technique has been specially designed to facilitate the compact presentation and comparison of different definitions provided by multiple authors in diverse sources. This paper presents the main features of RCMTool, based on the development of an RCM metamodel and the inclusion of a natural language processing engine.

Paper Nr: 13
Title:

A Pi-calculus-based Approach for the Verification of UML2 Sequence Diagrams

Authors:

Aissam Belghiat and Allaoua Chaoui

Abstract: UML2 sequence diagrams are interaction diagrams which have been used largely to model the behaviour of objects interaction in systems. These diagrams suffer from lack of precise semantics due to the semi-formal nature of the UML notation. This problem hinders the automatic analysis and verification of such diagrams. Process algebras have been used largely in order to deal with such problem. In this paper, we propose a mapping of CombinedFragments of UML2 sequence diagrams into π-calculus specifications and use the Mobility Workbench (MWB) tool for the verification of these diagrams. The mapping provides a formal semantics as well as formal analysis and checking for UML2 sequence diagrams. We illustrate our approach by an example to prove the usefulness of the translation.

Paper Nr: 23
Title:

Linear Software Models: Equivalence of Modularity Matrix to Its Modularity Lattice

Authors:

Iaakov Exman and Daniel Speicher

Abstract: Modularity is an important feature to solve the composition problem of software systems from subsystems. Recently it has been shown that Software systems’ Modularity Matrices linking structors to functionals can be put in almost block-diagonal form, where blocks reveal higher-level software modules. An alternative formalization has been independently proposed using Conceptual Lattices linking attributes to objects. But, are these independent formalizations related? This paper shows the equivalence of Modularity Matrices to their respective Modularity Lattices. Both formalizations support the simplest form of software composition, i.e. linear composition, expressed as an addition of independent components. This equivalence has both theoretical and practical advantages. These are illustrated by comparison of both representations for a series of case studies.

Posters
Paper Nr: 19
Title:

On A-posteriori Integration of Ecore Models and Hand-written Java Code

Authors:

Thomas Buchmann and Felix Schwägerl

Abstract: Model-driven software engineering emphasizes using models as primary development artefacts. In many cases, the static structure of a software system can be automatically generated from static models such as class diagrams. However, hand-written source code is still necessary, either for specifying method bodies or for integrating the generated code with already existing artefacts or frameworks. In this paper, we present a concept and the corresponding technical solution, which allow to lift up hand-written code for method bodies to the model level and tightly integrate it with the Ecore model. Furthermore, we demonstrate the feasibility of our approach with the help of a concrete use case.

Paper Nr: 21
Title:

DBMS for Business Systems

Authors:

Evgeniy Grigoriev

Abstract: Many problems of traditional business systems (SAP, Microsoft Dynamics, etc.) are largely caused by their architecture where a tier that implements the business model and data processing (application server or thick client) is separated from the DBMS where the data is stored. A new approach to extend the relational DBMS with a means for creating expressive heterogeneous business models according to principles well-known to users of existing business systems is discussed. With it the business system architecture can be simplified fundamentally because of transferring all data modelling and processing directly to the place of their storage. Principles of a creation and a use of complex business models and data access in these models are discussed. Some questions related to system performance are reviewed.

Area 2 - Aspects

Short Papers
Paper Nr: 12
Title:

OCL for Rich Domain Models Implementation - An Incremental Aspect based Solution

Authors:

Alberto-Manuel Fernández-Álvarez, Daniel Fernández-Lanvin and Manuel Quintela-Pumares

Abstract: Object Constraint Language (OCL) can be used to express domain model constraints. Those related to a single object are easy to implement. However, when a constraint depends on the state of more than one object (domain and class constraints) the problem turns much more complicated. Developers must deal with several difficulties: how to write the invariant check, when to execute the constraint verification, over what objects and what to do in case of a constraint violation. Things are harder if we add feasible performance as requirement. We propose a tool that combines incremental OCL processing, with translation into aspect code and execution inside an atomicity execution context. The output is aspect code, ready to be integrated with business code that checks all the invariants efficiently at the end of the atomic operation.

Area 3 - Services

Short Papers
Paper Nr: 22
Title:

A Service-oriented Architecture for GIS Applications

Authors:

Atif Naseer, Hossam I. Aldoobi and Basem Y. Alkazemi

Abstract: Many Geographic Information Systems (GIS) are currently built according to the N-Tier architectural style. Despite the advantages of this style in terms of simplicity for the GIS business domain, it lacks many capabilities related to several key characteristics that might affect reusability and extensibility of GIS systems. Service-oriented architecture (SOA), on the other hand, can better serve the continual changing nature of GIS business requirements by facilitating faster and more reliable implementation of business requirements. This paper analyzes the current state of one of the commonly used GIS applications, namely GRASS, to define a potential road map for re-factoring its architecture to match our proposed SOA style in this paper.

Posters
Paper Nr: 3
Title:

Novel Approach for Computing Skyline Services with Fuzzy Consistent Model for QoS- based Service Composition

Authors:

Fatma Rhimi, Saloua Ben Yahia and Ben Ahmed Samir

Abstract: Service composition is emerging as an effective solution to ensure the integration of multiple atomic web services in order to create value-added customized services. However, the exploding number of the deployed service candidates that is constantly increasing makes the process of choosing the best service candidates an important challenge. When there are multiple web services that offer the same functionalities, we need to select the best one according to its non-functional criteria (e.g. response time, price, reliability). Skyline is a technique that helps reducing the size of our search space and comes as a complementary approach to the optimization methods. In fact, Skyline consists in preselecting the best candidates in the search space according to their non-functional criteria. Those web services are considered optimal as they are not dominated by any other point in the search space. Therefore, we will eliminate all the irrelevant web services which will considerably reduce the complexity of the computation. Most of the current Skyline computation relies on a strict dominance relationship called Pareto-dominance. In this paper, we propose a new method to compute the Skyline points with a fuzzy approach which allows taking into consideration the users preferences. We will through this paper show how we could construct a consistent fuzzy model to overcome the shortcomings of web service composition computation. A detailed study of the approach will demonstrate the effectiveness and the efficiency of the proposed algorithm.

Paper Nr: 7
Title:

An Approach for Integrating Kerberized non Web-based Services with Web-based Identity Federations

Authors:

Aleksandr Bersenev, Arsen Hayrapetyan, Marcus Hardt and Michael Simon

Abstract: Many identity federations are designed to be used with web browsers. This paper proposes an approach for integrating non web-based applications with web-based identity federations using Kerberos protocol. We evaluate this approach by making NFS server available for users of SAML-based identity federation of Baden- Württemberg state of Germany. We make use of LDAP-Facade software for federating non web-based services. We have modified the web-interface component of LDAP-Facade to enable the registration with kerberized services. Our approach can be used without modifications on the client side.

Area 4 - Context

Short Papers
Paper Nr: 20
Title:

Progress Report on a Proposed Theory for Software Development

Authors:

Diana Kirk and Stephen MacDonell

Abstract: There is growing acknowledgement within the software engineering community that a theory of software development is needed to integrate the myriad methodologies that are currently popular, some of which are based on opposing perspectives. We have been developing such a theory for a number of years. In this position paper, we overview our theory along with progress made thus far. We suggest that, once fully developed, this theory, or one similar to it, may be applied to support situated software development, by providing an overarching model within which software initiatives might be categorised and understood. Such understanding would inevitably lead to greater predictability with respect to outcomes.

Paper Nr: 25
Title:

A Model Driven Approach for Improving the Generation of Accessible User Interfaces

Authors:

Lamia Zouhaier, Yousra Bendaly Hlaoui and Leila Jemni Ben Ayed

Abstract: In a ubiquitous computing, disable users are required to accommodate their particular needs using interactive systems. Thus, ensuring accessibility into applications' user interfaces is highly recommended. Hence, it is crucial to elaborate a generic solution which is compliant to handicapped user requirements. Therefore, this paper is addressed to define a model driven approach for generating adapted interface according to accessibility context. This approach benefits from Model Driven Engineering methodologies. In addition, it is characterized by the integration of a multimodal solution which selects the suitable modality of interaction into the adaptation process. This will improve the degree of user interface flexibility. This approach is based on different model transformations’ belonging to different abstraction levels of the adapted user interface development according to the captured accessibility context attributes.