6 research outputs found

    Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study

    Get PDF
    International audienceModel-based Software Product Line (MSPL) engineering ai- ms at deriving customized models corresponding to individ- ual products of a family. MSPL approaches usually promote the joint use of a variability model, a base model expressed in a specific formalism, and a realization layer that maps variation points to model elements. The design space of an MSPL is extremely complex to manage for the engineer, since the number of variants may be exponential and the derived product models have to be conformant to numerous well-formedness and business rules. In this paper, the objec- tive is to provide a way to generate MSPLs, called counterex- amples, that can produce invalid product models despite a valid configuration in the variability model. We provide a systematic and automated process, based on the Common Variability Language (CVL), to randomly search the space of MSPLs for a specific formalism. We validate the effective- ness of this process for three formalisms at different scales (up to 247 metaclasses and 684 rules). We also explore and discuss how counterexamples could guide practitioners when customizing derivation engines, when implementing check- ing rules that prevent early incorrect CVL models, or simply when specifying an MSPL

    Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study

    Get PDF
    International audienceModel-based Software Product Line (MSPL) engineering ai- ms at deriving customized models corresponding to individ- ual products of a family. MSPL approaches usually promote the joint use of a variability model, a base model expressed in a specific formalism, and a realization layer that maps variation points to model elements. The design space of an MSPL is extremely complex to manage for the engineer, since the number of variants may be exponential and the derived product models have to be conformant to numerous well-formedness and business rules. In this paper, the objec- tive is to provide a way to generate MSPLs, called counterex- amples, that can produce invalid product models despite a valid configuration in the variability model. We provide a systematic and automated process, based on the Common Variability Language (CVL), to randomly search the space of MSPLs for a specific formalism. We validate the effective- ness of this process for three formalisms at different scales (up to 247 metaclasses and 684 rules). We also explore and discuss how counterexamples could guide practitioners when customizing derivation engines, when implementing check- ing rules that prevent early incorrect CVL models, or simply when specifying an MSPL

    Assessing Product Line Derivation Operators Applied to Java Source Code: An Empirical Study

    Get PDF
    International audienceProduct Derivation is a key activity in Software Product Line Engineering. During this process, derivation operators modify or create core assets (e.g., model elements, source code instructions, components) by adding, removing or substituting them according to a given configuration. The result is a derived product that generally needs to conform to a programming or modeling language. Some operators lead to invalid products when applied to certain assets, some others do not; knowing this in advance can help to better use them, however this is challenging, specially if we consider assets expressed in extensive and complex languages such as Java. In this paper, we empirically answer the following question: which product line operators, applied to which program elements , can synthesize variants of programs that are incorrect , correct or perhaps even conforming to test suites? We implement source code transformations, based on the derivation operators of the Common Variability Language. We automatically synthesize more than 370,000 program variants from a set of 8 real large Java projects (up to 85,000 lines of code), obtaining an extensive panorama of the sanity of the operations

    Strategies to Manage Enterprise Information Technology Projects

    Get PDF
    Since 2005, most midsize company information technology (IT) projects had a 62.4% failure rate because of wrong project team communication skills or cost overruns. IT leaders expect negative IT project outcomes will cost over $2 billion by 2020. Using the actor-network theory, the purpose of this single case study was to explore strategies used by IT leaders from a midsize IT company in Washington, D.C. to plan and execute projects under budget and on time. Using purposeful sampling, 5 IT leaders were selected for this study because of their experience in implementing successful strategies for projects. Data were collected using face-to-face semistructured interviews, company documentation, and internal organizational risk reports. Yin\u27s 5-step process was used for data analysis to compile, disassemble, reassemble, interpret, and conclude the data. The interpretation of data, subjected to methodological triangulation and member checking to strengthen the dependability and credibility of the findings, yielded 3 themes of IT leader communication skills: IT leader strategy, IT leader knowledge, and implementation of cost savings. The findings indicated that IT leaders serve as the key actors in the IT project network, and leader communication skills are essential for implementing strategies for IT project completion and cost savings. With this knowledge, IT leaders can implement strategies to plan and execute projects under budget and on time. The implications for a positive social change includes the potential for IT leaders to reduce project production waste and contribute to economic expansion

    Generating Counterexamples of Model-based Software Product Lines

    Get PDF
    International audienceIn a Model-based Software Product Line (MSPL), the variability of the domain is characterized in a variability model and the core artifacts are base models conforming to a modeling language (also called metamodel). A realization model connects the features of the variability model to the base model elements, triggering operations over these elements based on a configuration. The design space of an MSPL is extremely complex to manage for the engineer, since the number of variants may be exponential and the derived product models have to be conforming to numerous well-formedness and business rules. In this paper, the objective is to provide a way to generate MSPLs, called counterexamples (also called anti-patterns), that can produce invalid product models despite a valid configuration in the variability model. We describe the foundations and motivate the usefulness of counterexamples (e.g., inference of guidelines or domain-specific rules to avoid earlier the specification of incorrect mappings; testing oracles for increasing the robustness of derivation engines given a modeling language). We provide a generic process, based on the Common Variability Language (CVL) to randomly search the space of MSPLs for a specific modelling language. We develop LineGen a tool on top of CVL and modeling technologies to support the methodology and the process. LineGen targets different scenarios and is flexible to work either with just a domain metamodel as input or also with pre-defined variability models and base models. We validate the effectiveness of this process for three formalisms at different scales (up to 247 metaclasses and 684 rules). We also apply the approach in the context of a real industrial scenario involving a large-scale metamodel
    corecore