Recent Results
Up one levelCompilation of recent results
- Flexible Model Element Introduction Policies for Aspect-Oriented Modeling — by Brice Morin — last modified 2010-07-09 15:28
- Aspect-Oriented Modeling techniques make it possible to use model transformation to achieve advanced separation of concerns within models. Applying aspects that introduce model elements into a base model in the context of large, potentially composite models is nevertheless tricky: when a pointcut model matches several join points within the base model, it is not clear whether the introduced element should be instantiated once for each match, once within each composite, once for the whole model, or based on a more elaborate criteria. This paper argues that in order to enable a modeler to write semantically correct aspects for large, composite models, an aspect weaver must support a flexible instantiation policy for model element introduction. Example models highlighting the need for such a mechanism are shown, and details of how such policies can be implemented are presented.
- Security-Driven Model-Based Dynamic Adaptation — by Vegard Dehlen — last modified 2010-07-09 15:25
- Security is a key-challenge for software engineering, especially when considering access control and software evolutions. No satisfying solution exists for maintaining the alignment of access control policies with the business logic. Current implementations of access control rely on the separation between the policy and the application code. In practice, this separation is not so strict and some rules are hard-coded within the application, making the evolution of the policy difficult. We propose a new methodology for implementing security-driven applications. From a policy defined by a security expert, we generate an architectural model, reflecting the access control policy. We leverage the advances in the models@runtime domain to keep this model synchronized with the running system. When the policy is updated, the architectural model is updated, which in turn reconfigures the running system. As a proof of concept, we apply the approach to the development of a library management system.
- Revisiting the Relationship between Software Architecture and Requirements: the case of Dynamically Adaptive Systems — by Nelly Bencomo — last modified 2010-06-16 19:21
- This paper revisits the relationship between software architecture and requirements focusing on the case of selfadaptive systems. The authors present their view of the state-of-the-art, including their own work, on both areas and their contribution towards the development of selfadaptive systems. The authors support the claim that there is no fundamental distinction between architectural decisions and architecturally significant requirements and discuss how these claims are specifically appropriate for the case of selfadaptive systems. A discussion of the approach described and challenges for the case of adaptive systems are also presented.
- Inquiring the usage of aspect-oriented programming: an empirical study. — by Freddy Muñoz — last modified 2010-05-27 18:54
- Back in 2001, the MIT announced aspect-oriented programming as a key technology in the next 10 years. Nowadays, 8 years later, AOP is not widely adopted. Several reasons can explain this distrust in front of AOP, and one of them is the lack of robust tools for analysis, testing and maintenance. In order to develop dedicated solutions for assisting the development with AOP, and increase its adoption, we need to understand how it is actually used. In this paper we analyze 38 aspect-oriented open source projects with respect to the impact of aspects on the projects, and to coverage of the language features. This reveals that AOP is currently used in a cautious way. This work is a first step to built support and development tools dedicated to actual practices for AOP, based on empirical usage profiles.
- A framework for testing model composistion engines. — by Freddy Muñoz — last modified 2010-05-27 18:52
- Model composition helps designers managing complexities by modeling different system views separately, and later compose them into an integrated model. In the past years, researchers have focused on the definition of model composition approaches (operators) and the tools supporting them (model composition engines). Testing model composition engines is hard. It requires the synthesis and analysis of complex data structures (models). In this context, synthesis means to assembly complex structures in a coherent way with respect to semantic constraints. In this paper we propose to automatically synthesize input data for model composition engines using a model decomposition operator. Through this operator we synthesize models in a coherent way, satisfying semantic constraints and taking into account the complex mechanics involved in the model composition. Furthermore, such operator enables a straightforward analysis of the composition result.
- Artificial table testing dynamically adaptive systems. — by Freddy Muñoz — last modified 2010-05-27 18:49
- Dynamically Adaptive Systems (DAS) are systems that modify their behavior and structure in response to changes in their surrounding environment. Critical mission systems increasingly incorporate adaptation and response to the environment; examples include disaster relief and space exploration systems. These systems can be decomposed in two parts: the adaptation policy that specifies how the system must react according to the environmental changes and the set of possible variants to reconfigure the system. A major challenge for testing these systems is the combinatorial explosions of variants and envi-ronment conditions to which the system must react. In this paper we focus on testing the adaption policy and propose a strategy for the selection of envi-ronmental variations that can reveal faults in the policy. Artificial Shaking Table Testing (ASTT) is a strategy inspired by shaking table testing (STT), a technique widely used in civil engineering to evaluate building's structural re-sistance to seismic events. ASTT makes use of artificial earthquakes that simu-late violent changes in the environmental conditions and stresses the system adaptation capability. We model the generation of artificial earthquakes as a search problem in which the goal is to optimize different types of envi-ronmental variations.
- D7.06 Collaboration Activities Plan — by Martin Viktil — last modified 2010-05-27 11:45
- This report covers the plans made for DiVA’s collaboration with other projects funded under the Software Services, Architecture and Infrastructure (SSAI) unit. There are two parts of this plan: the initial plan developed at the beginning of the project and a revised plan for the second project period.
- D7.3a Plan for using and disseminating the knowledge — by Martin Viktil — last modified 2010-06-30 19:53
- This deliverable provides an overview of the dissemination and exploitation status and plans of the DiVA consortium. Exploitation / use of knowledge: D7.3a describes the general exploitation approach in DiVA and features roughly the main exploitable assets, being current or prospective results of the DiVA research and development work. Addressing the different exploitable assets, the exploitation plans of all partners are given, i.e., plans for using the DiVA knowledge later on commercially or in other ways. Currently R&D work has achieved the very first results. Exploitation planning is therefore still quite vague and will have to be refined, extended and concretized along the evolution of the various results in the upcoming version of this dissemination and use plan. Dissemination of knowledge: D7.3a wraps up all dissemination activities (conference participation, workshops, participation in trade fairs etc.) within the reporting period, and lists as well related publications (scientific, marketing or other). A rough plan for dissemination activities within the upcoming reporting period is provided.
- D6.2 Case Study Implementation and Validation — by Martin Viktil — last modified 2010-07-01 13:22
- This document has two purposes: the first one is to provide an evaluation plan detailing individual evaluation plans for each case study: the crisis management case study and the CRM (Customer Relationship Management) case study. The second one is to describe the case studies implementation and the evaluation of the DiVA technical results of the second period throughout the case studies.
- D5.1 Diva Studio architecture — by Martin Viktil — last modified 2010-05-25 18:40
- This document introduces the architecture of the D5.1 deliverable: the DiVA Studio software. The DiVA Studio is publicly downloadable from http://divastudio.gforge.inria.fr/bundle/latest_build/DiVAStudio.zip Please, be wary that this document does not contain the deliverable, but rather provides a general overview of the DiVA studio (the actual deliverable) and some technical guidelines for using it.
- D4.2 Adaptation model and validation framework first version — by Martin Viktil — last modified 2010-05-25 18:31
- D1.3 Framework for Composition of Dynamic Variability in Requirements — by Martin Viktil — last modified 2010-05-25 18:21
- In the DiVA deliverable “D1.2: The Framework for Identification and Modelling of Dynamic Variability in Requirements” [2] we have presented the initial DiVA RE framework that supports modelling of user requirements from textual input using feature tree representations. Within such trees the commonality and variability points, as well as points of adaptation, are also identified and modelled. The present deliverable addresses two further challenges defined by the DiVA project workplan: 1 Supporting the modelling and analysis of “systems of systems” with DiVA RE framework, and 2 Supporting composition of dynamic variability with the DiVA RE models. To address these challenges, the DiVA RE approach requires a way of identifying points of overlap in multiple requirement models, as well as a mechanism that allows composing DiVA models for different systems at such overlap points. In developing these mechanisms DiVA RE workpackage has established a collaboration with the DISCS project, whereby the graph comparison techniques incepted in DISCS are being utilised, validated, and extended for DiVA purposes, as well as continued to build on our past and current work. The present deliverable reports on this framework.
- D2.1 - Transformation Framework — by Vegard Dehlen — last modified 2010-05-18 17:35
- Constructing and executing distributed systems that can automatically adapt to the dynamic changes of the environment are highly complex tasks. Non-trivial challenges include provisioning of efficient design time and run time representations, system validation to ensure safe adaptation of interdependent components, and handling of possible combinatorial explosions of adaptive system artefacts such as configurations, variant dependencies and adaptation rules. These are all challenges where current approaches offer only partial solutions. Furthermore, existing technologies are typically only provided at the implementation level which makes them complex to use. This deliverable describes the first version of the model transformation framework in Work Package 2. As stated in the DoW the objective of WP2 is to develop a domain-specific language for adaptive system specifications, and a composition and transformation framework. The first phase of the project has mainly focused on the former part (the domain specific language for adaptive system specifications) and is described in this deliverable. The composition and transformation framework part of WP2 will be the focus in the second phase of DiVA. This deliverable consists of three parts. The main part is the tools and metamodels developed so far. The second part is video tutorials showing the usage of these tools, while the third part is this document. This document presents the domain-specific modelling language for adaptive system specification and the tools that support specification, model checking and design time simulation of the adaptation model of adaptive systems. The proposed approach combines aspect-oriented and model-driven principles to cope with the combinatorial explosion and provide model level representations of variants, context variables and adaptation rules. An open source Eclipse-based editor has been developed to support system specification according to the meta-model. Based on the implemented adaptation meta-model, model checking and simulation facilities are provided to prepare for safe adaptation. At runtime the adaptation models are used to drive the adaptation. The approach is validated through case studies.
- Context for Goal-level Product Line Derivation — by Ruzanna Chitchyan — last modified 2010-04-16 17:30
- Product line engineering aims at developing a family of products and facilitating the derivation of product variants from it. Context can be a main factor in determining what products to derive. Yet, there is gap in incorporating context with variability models. We advocate that, in the first place, variability originates from human intentions and choices even before software systems are constructed, and context influences variability at this intentional level before the functional one. Thus, we propose to analyze variability at an early phase of analysis adopting the intentional ontology of goal models, and studying how context can influence such variability. Below we present a classification of variation points on goal models, analyze their relation with context, and show the process of constructing and maintaining the models. Our approach is illustrated with an example of a smarthome for people with dementia problems.
- Towards a Unified Framework for Contextual Variability in Requirements — by Ruzanna Chitchyan — last modified 2010-04-16 17:28
- Context is a significant factor in deciding the set of requirements relevant to a system (i.e., software product construction), the alternatives the system can adopt to satisfy these requirements, and the quality assessment of each alternative. By context we mean the conditions in the operating environment of an system that influences how the system should behave in different situations. However, the relationship between context and requirements can be challenging to capture and analyze. Presently this area of requirements engineering is largely under-researched. In this position paper, we discuss several ways by which context can be related to requirements and subsequently used for product derivation. We outline an approach that facilitates better understanding and use of contextual information in requirements. Our approach integrates three requirements engineering approaches - goal modeling, feature modeling, and problem frames - and is aimed at facilitating treatment of contextual variability in requirements.
- Formal semantic conflict detection in aspect-oriented requirements — by Ruzanna Chitchyan — last modified 2010-04-16 17:25
- The goal of Aspect-Oriented Requirements Engineering is to identify possible crosscutting concerns, and to develop composition specifications, which can be used to reason about potential conflicts in the requirements. Recent work in AORE has moved from a syntactic approach to composition, which leads to fragile compositions and increased coupling between aspect and base concerns, to a semantic composition approach, based on semantics of the natural language itself. However, such compositions are at present only informally specified, and as such precise conflict detection between the requirements compositions is difficult. We present an approach for the formalisation of these semantic-based compositions which means that logical conflicts between compositions can be precisely identified and understood semantically. We show that the approach can be supported by off-the-shelf tools, meaning it is scalable and feasible for even large requirements specifications.
- A framework for constructing semantically composable feature models from natural language requirements — by Ruzanna Chitchyan — last modified 2010-04-16 17:20
- The goal of Aspect-Oriented Requirements Engineering is to identify possible crosscutting concerns, and to develop composition specifications, which can be used to reason about potential conflicts in the requirements. Recent work in AORE has moved from a syntactic approach to composition, which leads to fragile compositions and increased coupling between aspect and base concerns, to a semantic composition approach, based on semantics of the natural language itself. However, such compositions are at present only informally specified, and as such precise conflict detection between the requirements compositions is difficult. We present an approach for the formalisation of these semantic-based compositions which means that logical conflicts between compositions can be precisely identified and understood semantically. We show that the approach can be supported by off-the-shelf tools, meaning it is scalable and feasible for even large requirements specifications.
- EA-Analyzer: Automating Conflict Detection in Aspect-Oriented Requirements — by Ruzanna Chitchyan — last modified 2010-04-16 17:13
- One of the aims of Aspect-Oriented Requirements Engineering is to address the composability and subsequent analysis of crosscutting and non-crosscutting concerns during requirements engineering. Composing concerns may help to reveal conflicting dependencies that need to be identified and resolved. However, detecting conflicts in a large set of textual aspect-oriented requirements is an error-prone and time-consuming task. This paper presents EA-Analyzer, the first automated tool for identifying conflicts in aspect-oriented requirements specified in natural-language text. The tool is based on a novel application of a Bayesian learning method that has been effective at classifying text. We present an empirical evaluation of the tool with three industrial-strength requirements documents from different real-life domains. We show that the tool achieves up to 92.97% accuracy when one of the case study documents is used as a training set and the other two as a validation set.
- From Sequence Diagrams to State Machines by Graph Transformation — by Martin Viktil — last modified 2010-04-13 17:28
- Modeling Context and Dynamic Adaptations with Feature Models — by Martin Viktil — last modified 2010-04-13 17:24