155 research outputs found

    Metamodelisation to support Test and Evolution

    Get PDF
    Legacy software systems correspond to the wealth of the companies. They often exist for dozens of years and concentrate a big part of the company knowledge, its business rules or its savoir-faire. Requirements to which these systems answer have evolved with time, as well as the used technologies leading to modications. These mo-dications occurring after the software delivery, they are considered maintenance. They correspond to more than 80% of the software li-fecycle and its cost. Maintaining a software system is a complex and useful activity that deserves to o be anticipated from the design activity. Remodularisation phases may be useful to reduce complexity massed from successive evolutions and to provide new strong basis for future evolutions. Work presented in this manuscript answers to a unique target : Designing systems of good quality, easily maintainable and managing their evolutions. Quality can be ensured and measured from dierent ways. In this document, I only focus on tests. Tests enable developers to identify and locate errors or check after an evolution that unchanged parts are not impacted. Finally, software artefacts do not independently evolve. The evolution of one of them may have consequences on one or several others. In this document, two types of software are considered chains of model transformations or traditional programs. Thus, transformation chains are not seen as a way to generate code from models via transformations. They are considered software system by them selves that would need to be later maintained and to make evolve. Results presented in this document may be summarised as such : Proposal of a new transformation type localized transformations introducing better reusability, modularity and exibility in transformation chains. Adaptations in designing and building chains are thus needed

    Towards a Unified Notation to Represent Model Transformation

    Get PDF
    In order to unify our internal exchange and communication about transformations, we propose TrML (Transformation Modeling Language), a unified UML notation to design model transformations. This proposal aims to reify the synthesis of existing notations dedicated to transformation modeling. TrML is independent from implementation details and could be adapted to several transformation engines. To let TrML run on top of existing engine, we transform TrML model to a model accepted by the engine. But, which language should we use for the first transformation? TrML, the targeted engine or another one? In this article we will describe how we bootstrap our new language on top of existing transformation engines

    Towards a Systematic Propagation of Evolution Requirements in IS Adaptation Projects

    Get PDF
    Information system adaptation is a type of system evolution that can be managed defining evolution requirements as a set of gaps with the current system. Today, most Requirements Engineering approaches for system evolution guide the modification of requirements, but very few tell how the required modifications can be elicited or even specified as such in a requirements document. This paper proposes an approach that facilitates the search and expression of evolution requirements. It advocates a business driven approach to align system adaptations to the objectives of the changing organisation. The approach is presented, then and illustrated it with an example

    On the customization of model management systems for file-centric IDEs

    Get PDF
    International audienceModel-based solutions are becoming more sophisticated because of the advent of new types of models, languages, and editors. To deal with this complexity, some of the current Integrated Development Environments (IDEs) offer Model Management Systems (MMSs) that provide functionalities to visualize, navigate, and search the modeling artifacts existing in a workspace. Each MMS defines the types of modeling artifacts that it supports and, commonly, furnish extensibility mechanisms for including new ones. However, the use of those mechanisms usually requires a big implementation effort. As a result, when an MMS does not support all the types of modeling artifacts that a model-driven engineer uses, he/she discards it and ends up manipulating his/her solution through file system views which is not appropriate when projects become larger. In this paper we present some of our preliminary results towards the construction of MoMS-DL, a domain-specific language to define (and automatically generate) customized Eclipse-based MMSs improv- ing the daily work of model-driven engineers

    JSClassFinder: A Tool to Detect Class-like Structures in JavaScript

    Get PDF
    With the increasing usage of JavaScript in web applications, there is a great demand to write JavaScript code that is reliable and maintainable. To achieve these goals, classes can be emulated in the current JavaScript standard version. In this paper, we propose a reengineering tool to identify such class-like structures and to create an object-oriented model based on JavaScript source code. The tool has a parser that loads the AST (Abstract Syntax Tree) of a JavaScript application to model its structure. It is also integrated with the Moose platform to provide powerful visualization, e.g., UML diagram and Distribution Maps, and well-known metric values for software analysis. We also provide some examples with real JavaScript applications to evaluate the tool.Comment: VI Brazilian Conference on Software: Theory and Practice (Tools Track), p. 1-8, 201

    Using Feature Model to Build Model Transformation Chains

    Get PDF
    International audienceModel transformations are intrinsically related to model-driven engineering. According to the increasing size of standardised meta-model, large transformations need to be developed to cover them. Several approaches promote separation of concerns in this context, that is, the definition of small transformations in order to master the overall complexity. Unfortunately, the decomposition of transformations into smaller ones raises new issues: organising the increasing number of transformations and ensuring their composition (i.e. the chaining). In this paper, we propose to use feature models to classify model transformations dedicated to a given business domain. Based on this feature models, automated techniques are used to support the designer, according to two axis: (i) the definition of a valid set of model transformations and (ii) the generation of an executable chain of model transformation that accurately implement designer's intention. This approach is validated on Gaspard2, a tool dedicated to the design of embedded system

    APIEvolutionMiner: Keeping API Evolution under Control

    Get PDF
    International audienceDuring software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool

    APIEvolutionMiner: Keeping API Evolution under Control

    No full text
    International audienceDuring software evolution, source code is constantly refactored. In real-world migrations, many methods in the newer version are not present in the old version (e.g., 60% of the methods in Eclipse 2.0 were not in version 1.0). This requires changes to be consistently applied to reflect the new API and avoid further maintenance problems. In this paper, we propose a tool to extract rules by monitoring API changes applied in source code during system evolution. In this process, changes are mined at revision level in code history. Our tool focuses on mining invocation changes to keep track of how they are evolving. We also provide three case studies in order to evaluate the tool

    Experimenting a Modeling Approach for Designing Organization's Strategies in the Context of Strategic Alignment

    No full text
    National audienceAligning information systems (IS) to businesses hasrecently become a top-level concern in organizations.Several activities can be undertaken to deal withstrategic alignment: elaboration of key indicators,target definition, monitoring, analysis, impactpropagation etc. Working on strategic alignment, orcorrespondence between business and IS, requires torepresent and document these two elements. Indeed,documenting strategy is necessary to evaluate the ISability to satisfy the fundamental requirements oforganizations. Different works have demonstrated thatevaluating, documenting and analyzing IS alignmentcalls for modeling the elements to align. In the contextof strategic alignment, the problem is that there arevery few modeling techniques available to documentorganizations' strategic objectives with the level offormality needed to achieve this task. Within these few,even fewer are compatible with the ones used to defineIS functionalities. This paper explores the usability ofa goal modeling technique, already used in ISengineering, to model organization's strategy and tofacilitate strategic alignment analysis. An applicationexample is given, based on the well-known SevenEleven Japan case study
    • …
    corecore