24 research outputs found

    Extraction of Product Evolution Tree from Source Code of Product Variants

    Full text link
    Proceedings of the 17th International Software Product Line Conference SPLC '13 Proceedings of the 17th International Software Product Line Conferenc

    The state of adoption and the challenges of systematic variability management in industry

    Get PDF
    Handling large-scale software variability is still a challenge for many organizations. After decades of research on variability management concepts, many industrial organizations have introduced techniques known from research, but still lament that pure textbook approaches are not applicable or efficient. For instance, software product line engineering—an approach to systematically develop portfolios of products—is difficult to adopt given the high upfront investments; and even when adopted, organizations are challenged by evolving their complex product lines. Consequently, the research community now mainly focuses on re-engineering and evolution techniques for product lines; yet, understanding the current state of adoption and the industrial challenges for organizations is necessary to conceive effective techniques. In this multiple-case study, we analyze the current adoption of variability management techniques in twelve medium- to large-scale industrial cases in domains such as automotive, aerospace or railway systems. We identify the current state of variability management, emphasizing the techniques and concepts they adopted. We elicit the needs and challenges expressed for these cases, triangulated with results from a literature review. We believe our results help to understand the current state of adoption and shed light on gaps to address in industrial practice.This work is supported by Vinnova Sweden, Fond Unique Interminist®eriel (FUI) France, and the Swedish Research Council. Open access funding provided by University of Gothenbur

    Raters’ reliability in clone benchmarks construction

    Get PDF
    International audienceCloned code often complicates code maintenance and evolution and must therefore be effectively detected. One of the biggest challenges for clone detectors is to reduce the amount of irrelevant clones they found, called false positives. Several benchmarks of true and false positive clones have been introduced, enabling tool developers to compare, assess and fine-tune their tools. Manual inspection of clone candidates is performed by raters that do not have expertise on the underlying code. This way of building benchmarks might be unreliable when considering context-dependent clones i.e., clones valid for a specific purpose. Our goal is to investigate the reliability of rater judgments about context-dependent clones. We randomly select about 600 clones from two projects and ask several raters, including experts of the projects, to manually classify these clones. We observe that judgments of non expert raters are not always repeatable. We also observe that they seldomly agree with each others and with the expert. Finally, we find that the project and the fact that a clone is a true or false positive might have an influence on the agreement between the expert and non experts. Therefore, using non experts to produce clone benchmarks could be unreliable

    Managing Product Variants by Project Centralization

    Full text link

    Evaluating Company’s Readiness for Adopting Product Line Engineering: a Second Evaluation Round

    Get PDF
    Product lines have emerged in the software industry as an attractive approach to perform planned reuse of code. Nevertheless, a product line solution is not appropriate in all cases and also requires some conditions to be implemented successfully. The literature offers several contributions regarding the adoption of product lines. However, only a few of them are able to support decision-makers in making informed decisions in favor of or against following this approach. We proposed APPLIES, a framework for evaluating the organization’s motivation and preparation for adopting product lines. This article presents the second version of the APPLIES framework as well as the second iteration of the evaluation of this approach. This evaluation consisted of (i) a workshop with a practitioner who had experience in adopting the product line production approach and; (ii) a review of the content by five product line experts. The results obtained from the evaluation resulted in modifications to the framework content, mainly to simplify the statements and eliminate redundant elements. Also, we detected new functionalities and modifications that we expect to be resolved in the following evaluation iterations. Further evaluations and improvements are needed to mature the framework. Moreover, we expect to incorporate APPLIES into a process that covers the aspects that a company must consider before deciding to adopt this production paradigm

    Evaluating Company’s Readiness for Adopting Product Line Engineering: a Second Evaluation Round

    Get PDF
    Product lines have emerged in the software industry as an attractive approach to perform planned reuse of code. Nevertheless, a product line solution is not appropriate in all cases and also requires some conditions to be implemented successfully. The literature offers several contributions regarding the adoption of product lines. However, only a few of them are able to support decision-makers in making informed decisions in favor of or against following this approach. We proposed APPLIES, a framework for evaluating the organization’s motivation and preparation for adopting product lines. This article presents the second version of the APPLIES framework as well as the second iteration of the evaluation of this approach. This evaluation consisted of (i) a workshop with a practitioner who had experience in adopting the product line production approach and; (ii) a review of the content by five product line experts. The results obtained from the evaluation resulted in modifications to the framework content, mainly to simplify the statements and eliminate redundant elements. Also, we detected new functionalities and modifications that we expect to be resolved in the following evaluation iterations. Further evaluations and improvements are needed to mature the framework. Moreover, we expect to incorporate APPLIES into a process that covers the aspects that a company must consider before deciding to adopt this production paradigm

    Visualizing the customization endeavor in product-based-evolving software product lines: a case of action design research

    Get PDF
    [EN] Software Product Lines (SPLs) aim at systematically reusing software assets, and deriving products (a.k.a., variants) out of those assets. However, it is not always possible to handle SPL evolution directly through these reusable assets. Time-to-market pressure, expedited bug fixes, or product specifics lead to the evolution to first happen at the product level, and to be later merged back into the SPL platform where the core assets reside. This is referred to as product-based evolution. In this scenario, deciding when and what should go into the next SPL release is far from trivial. Distinct questions arise. How much effort are developers spending on product customization? Which are the most customized core assets? To which extent is the core asset code being reused for a given product? We refer to this endeavor as Customization Analysis, i.e., understanding the functional increments in adjusting products from the last SPL platform release. The scale of the SPLs' code-base calls for customization analysis to be conducted through Visual Analytics tools. This work addresses the design principles for such tools through a joint effort between academia and industry, specifically, Danfoss Drives, a company division in charge of the P400 SPL. Accordingly, we adopt an Action Design Research approach where answers are sought by interacting with the practitioners in the studied situations. We contribute by providing informed goals for customization analysis as well as an intervention in terms of a visual analytics tool. We conclude by discussing to what extent this experience can be generalized to product-based evolving SPL organizations other than Danfoss Drives.Open Access funding provided thanks to the CRUE-CSIC agreement with Springer Nature. This work is supported by the Spanish Ministry of Science, Innovation and Universities grant number RTI2018099818-B-I00 and MCIU-AEI TIN2017-90644-REDT (TASOVA). ONEKIN enjoys support from the program 'Grupos de Investigacion del Sistema Univesitario Vasco 2019-2021' under contract IT1235-19. Raul Medeiros enjoys a doctoral grant from the Spanish Ministry of Science and Innovation

    Evaluating Company’s Readiness for Adopting Product Line Engineering: a Second Evaluation Round

    Get PDF
    Product lines have emerged in the software industry as an attractive approach to perform planned reuse of code. Nevertheless, a product line solution is not appropriate in all cases and also requires some conditions to be implemented successfully. The literature offers several contributions regarding the adoption of product lines. However, only a few of them are able to support decision-makers in making informed decisions in favor of or against following this approach. We proposed APPLIES, a framework for evaluating the organization’s motivation and preparation for adopting product lines. This article presents the second version of the APPLIES framework as well as the second iteration of the evaluation of this approach. This evaluation consisted of (i) a workshop with a practitioner who had experience in adopting the product line production approach and; (ii) a review of the content by five product line experts. The results obtained from the evaluation resulted in modifications to the framework content, mainly to simplify the statements and eliminate redundant elements. Also, we detected new functionalities and modifications that we expect to be resolved in the following evaluation iterations. Further evaluations and improvements are needed to mature the framework. Moreover, we expect to incorporate APPLIES into a process that covers the aspects that a company must consider before deciding to adopt this production paradigm
    corecore