149,759 research outputs found

    Variability and Evolution in Systems of Systems

    Full text link
    In this position paper (1) we discuss two particular aspects of Systems of Systems, i.e., variability and evolution. (2) We argue that concepts from Product Line Engineering and Software Evolution are relevant to Systems of Systems Engineering. (3) Conversely, concepts from Systems of Systems Engineering can be helpful in Product Line Engineering and Software Evolution. Hence, we argue that an exchange of concepts between the disciplines would be beneficial.Comment: In Proceedings AiSoS 2013, arXiv:1311.319

    Synthesis of Attributed Feature Models From Product Descriptions: Foundations

    Get PDF
    Feature modeling is a widely used formalism to characterize a set of products (also called configurations). As a manual elaboration is a long and arduous task, numerous techniques have been proposed to reverse engineer feature models from various kinds of artefacts. But none of them synthesize feature attributes (or constraints over attributes) despite the practical relevance of attributes for documenting the different values across a range of products. In this report, we develop an algorithm for synthesizing attributed feature models given a set of product descriptions. We present sound, complete, and parametrizable techniques for computing all possible hierarchies, feature groups, placements of feature attributes, domain values, and constraints. We perform a complexity analysis w.r.t. number of features, attributes, configurations, and domain size. We also evaluate the scalability of our synthesis procedure using randomized configuration matrices. This report is a first step that aims to describe the foundations for synthesizing attributed feature models

    Quantitative Analysis of Probabilistic Models of Software Product Lines with Statistical Model Checking

    Get PDF
    We investigate the suitability of statistical model checking techniques for analysing quantitative properties of software product line models with probabilistic aspects. For this purpose, we enrich the feature-oriented language FLan with action rates, which specify the likelihood of exhibiting particular behaviour or of installing features at a specific moment or in a specific order. The enriched language (called PFLan) allows us to specify models of software product lines with probabilistic configurations and behaviour, e.g. by considering a PFLan semantics based on discrete-time Markov chains. The Maude implementation of PFLan is combined with the distributed statistical model checker MultiVeStA to perform quantitative analyses of a simple product line case study. The presented analyses include the likelihood of certain behaviour of interest (e.g. product malfunctioning) and the expected average cost of products.Comment: In Proceedings FMSPLE 2015, arXiv:1504.0301

    Hybrid Algorithms Based on Integer Programming for the Search of Prioritized Test Data in Software Product Lines

    Get PDF
    In Software Product Lines (SPLs) it is not possible, in general, to test all products of the family. The number of products denoted by a SPL is very high due to the combinatorial explosion of features. For this reason, some coverage criteria have been proposed which try to test at least all feature interactions without the necessity to test all products, e.g., all pairs of features (pairwise coverage). In addition, it is desirable to first test products composed by a set of priority features. This problem is known as the Prioritized Pairwise Test Data Generation Problem. In this work we propose two hybrid algorithms using Integer Programming (IP) to generate a prioritized test suite. The first one is based on an integer linear formulation and the second one is based on a integer quadratic (nonlinear) formulation. We compare these techniques with two state-of-the-art algorithms, the Parallel Prioritized Genetic Solver (PPGS) and a greedy algorithm called prioritized-ICPL. Our study reveals that our hybrid nonlinear approach is clearly the best in both, solution quality and computation time. Moreover, the nonlinear variant (the fastest one) is 27 and 42 times faster than PPGS in the two groups of instances analyzed in this work.Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech. Partially funded by the Spanish Ministry of Economy and Competitiveness and FEDER under contract TIN2014-57341-R, the University of Málaga, Andalucía Tech and the Spanish Network TIN2015-71841-REDT (SEBASENet)

    Towards a Modular Product Line of Graphical Editors

    Get PDF
    This thesis addresses designing Product Lines (PLs) of Graphical Editors (GEs). It provides a feasible top-down design approach specialized on such Graphical Editor Product Lines (GEPLs), which can be configured dynamically. Furthermore, the end product's features are implemented modular, which has numerous positive effects on the development and maintenance processes for the family. These effects reach from decreasing the complexity of big PLs, allowing to delegate split up development tasks onto multiple isolated working teams, easier debugging and flexibility to extend or specialize a family of products as well as being able to use functionalities developed by third-party vendors. While design methods avoiding monolithic architectures and implementations exist for many PL domains, there are none known for GEPLs. Yet, the domain of those offers many challenges as GEPLs are actually comprised of Software Product Lines (SPLs) and Language Product Lines (LPLs), which is a combination untackled by any modular design approach known to me. Additionally, products in the domain require to implement multiple distinct and specific concerns, leading to artifacts which differ significantly but have to be located and managed in a single component. Overall, this justifies the need for specialized design approaches for the GEPL domain. In regard to this need, this thesis gives an overview of the existing landscape of approaches to design PLs, analyzing solutions offered by other researchers. Furthermore, a requirement analysis for the GEPL domain is conducted. Its results are the foundation for the presentation of a top-down design approach for dynamically configurable GEPLs, which are implemented feature modularly. Finally, a case study documenting the development of such a family of GEs is providing a proof of its feasibility.:1 Introduction 1.1 Motivation 1.2 Problem Definition 1.3 Outline 1.4 Terminology 2 Survey on Software and Language Product Line Design 2.1 Classification Scheme 2.1.1 Domain 2.1.2 Configuration 2.1.3 Design Method 2.1.4 Modularity 2.2 Overview 2.3 Discussion 2.3.1 Evaluation 2.3.2 Results 3 Requirements of Graphical Editor Product Lines 32 3.1 Functional Requirements 3.1.1 Edit Concerns 3.1.2 Language Family Concerns 3.2 Non-Functional Requirements 3.2.1 User Requirements 3.2.2 Development Requirements 4 Design of Graphical Editor Product Lines 4.1 Characteristics 4.2 Design Approach 4.2.1 Edit Concerns 4.2.2 Language Family Concerns 4.3 Discussion 4.3.1 Techniques 4.3.2 Evaluation 5 Case study: Modularization of a Family of Graphical Editors 5.1 Background 5.1.1 Compartment Role Object Model 5.1.2 Full-fledged Role Modeling Editor 5.1.3 Reusable Technology 5.2 Realization 5.2.1 Edit Concerns 5.2.2 Language Family Concerns 5.3 Discussion 5.3.1 Requirements 5.3.2 Limitations of the Modularization 5.3.3 Results 6 Conclusion 6.1 Summary 6.1.1 Desired Properties 6.1.2 Feasibility 6.2 Contributions 6.3 Future Work 6.3.1 Bottom-Up Design Method 6.3.2 Requirements 6.3.3 Modularizatio

    Variability Abstractions: Trading Precision for Speed in Family-Based Analyses (Extended Version)

    Full text link
    Family-based (lifted) data-flow analysis for Software Product Lines (SPLs) is capable of analyzing all valid products (variants) without generating any of them explicitly. It takes as input only the common code base, which encodes all variants of a SPL, and produces analysis results corresponding to all variants. However, the computational cost of the lifted analysis still depends inherently on the number of variants (which is exponential in the number of features, in the worst case). For a large number of features, the lifted analysis may be too costly or even infeasible. In this paper, we introduce variability abstractions defined as Galois connections and use abstract interpretation as a formal method for the calculational-based derivation of approximate (abstracted) lifted analyses of SPL programs, which are sound by construction. Moreover, given an abstraction we define a syntactic transformation that translates any SPL program into an abstracted version of it, such that the analysis of the abstracted SPL coincides with the corresponding abstracted analysis of the original SPL. We implement the transformation in a tool, reconfigurator that works on Object-Oriented Java program families, and evaluate the practicality of this approach on three Java SPL benchmarks.Comment: 50 pages, 10 figure
    • …
    corecore