10 research outputs found

    Identifying and visualizing variability in object-oriented variability-rich systems

    Get PDF
    International audienceIn many variability-intensive systems, variability is implemented in code units provided by a host language, such as classes or functions, which do not align well with the domain features. Annotating or creating an orthogonal decomposition of code in terms of features implies extra effort, as well as massive and cumbersome refactoring activities. In this paper, we introduce an approach for identifying and visualizing the variability implementation places within the main decomposition structure of object-oriented code assets in a single variability-rich system. First, we propose to use symmetry, as a common property of some main implementation techniques, such as inheritance or overloading, to identify uniformly these places. We study symmetry in different constructs (e.g., classes), techniques (e.g., subtyping, overloading) and design patterns (e.g., strategy, factory), and we also show how we can use such symmetries to find variation points with variants. We then report on the implementation and application of a toolchain, symfinder, which automatically identifies and visualizes places with symmetry. The publicly available application to several large open-source systems shows that symfinder can help in characterizing code bases that are variability-rich or not, as well as in discerning zones of interest w.r.t. variability

    A design of a configurable feature model configurator

    Get PDF
    Our feature configuration tool S2T2 Configurator integrates (1) a visual interactive representation of the feature model and (2) a formal reasoning engine that calculates consequences of the user’s actions and provides formal explanations. The tool’s software architecture is designed as a chain of components, which provide mappings between visual elements and their corresponding formal representations. Using these mappings, consequences and explanations calculated by the reasoning engine are communicated in the interactive representation

    Interactive techniques to support the configuration of complex feature models.

    Get PDF
    Whenever a software engineer derives a product from a product line, he has to resolve variability by making con guration decisions. This con guration process can become rather complex because of depen- dencies within the variability model and knock-on e ects and dependencies in other related artefacts. Because of the limited cognitive capacity of the human engineer, this complexity limits the ability of handling product lines with large con guration spaces. To address this problem we focus on techniques that support the interactive con guration of larger feature models, including (1) visual interaction with a formal reason- ing engine, (2) visual representation of multiple interrelated hierarchies, (3) indicators for con guration progress and (4) ltering of visible nodes. The concepts are demonstrated within S2T2 Con gurator, an interactive feature con guration tool. The techniques are discussed and evaluated with feature models, however, we believe they can be generalised to other models that describe con guration choices, e.g., variability models and decision models

    “Neurotrophic Atrophy”

    No full text

    Big data from electronic health records for early and late translational cardiovascular research: challenges and potential

    No full text
    corecore