Feature models are widely used in software product lines and feature oriented development approaches to define the commonalities and variability of software intensive systems 4, 23,29. Evaluation will be based on the following approximate percentages. Jun 07, 20 featureoriented software product lines book. Broad and unbiased presentation of classic as well as tools, novel implementation techniques.
Featureoriented software product lines ebook by sven apel. Software product lines reconcile mass production and standardization with mass customization in software engineering. All these software product lines are implemented with feature. Feature models are widely used during the whole product line development process and are commonly used as input to produce other assets such as documents, architecture definition, or pieces of code. We found that there is a considerable number of clones in feature oriented software product lines and that a large fraction of these clones is foprelated i. Featureoriented development of software product lines. Featureoriented software product lines concepts and. These challenges are based on our study and aim to open further research directions.
We discuss open challenges in mutation testing of software product lines. Dynamic software product lines dspl constitute a promising approach for developing highlyconfigurable, runtimeadaptive systems in a featureoriented way. Software and its engineering abstraction, modeling and modularity. The journal of systems and software tu braunschweig. Featureide an extensible framework for featureoriented. Featureoriented software product lines concepts and implementation.
Spencer peterson this 1990 report establishes methods for performing a domain analysis and describes the products of the domain analysis process. Feature models are visually represented by means of feature diagrams. Looking at the evolution of pl methods in relation to each other, one could extract the picture shown in. The pivotal part ii covers a wide variety of implementation techniques including design patterns. Feature oriented model driven product lines salvador trujillo gonzalez dissertation presented to the department of computer sciences of the universityof the basque country in partial ful. Managing evolution at the feature level allows stakeholders to identify common and variable features in system families, and thus the variation points in the architecture required to support the necessary range of feature variation. A feature is a unit of functionality of a software system that satisfies a requirement, represents a design decision, and provides a potential configuration. In addition, an appendix lists various helpful tools for software productline development, along with a description of how they relate to the topics covered in this book. Requirements engineering in feature oriented software. Concepts and implementation pdf, epub, docx and torrent then this site is not for you. Assessing the maintainability of software product line feature models using structural. Features are used for the specification of commonalities and variabilities of software systems. Part i provides a general introduction to featureoriented software product lines, describing the productline approach and introducing the productline development process with its two elements of domain and application engineering.
Mapping feature models to the architecture, booktitle in objectoriented and internetbased technologies, year 2004, pages 8152, publisher springer. In addition, an appendix lists various helpful tools for software product line development, along with a description of how they relate to the topics covered in this book. In table 1, we provide an overview of the software product lines characteristics. Featureide is an eclipsebased ide that supports all phases of feature oriented software development for the development of spls. Mar 20, 2017 finally, part iii is devoted to advanced topics related to feature oriented product lines like refactoring, feature interaction, and analysis tools specific to product lines. Pdf classification of tools for featureoriented software.
Towards assessing the complexity of object migration in. Software product lines, in 17th european conference on software maintenance and reengineering csmr, pp. Code clones in featureoriented software product lines. Feature oriented software product line development is one of the most wellknown. Featureoriented software product lines semantic scholar. This button opens a dialog that displays additional images for this product with the option to zoom in or out. Requirements engineering in feature oriented software product. Since then, feature modeling has been widely adopted by the software product line community and a number of extensions have been proposed. Given the nature of software product lines spl, the importance of requirements engineering is more pronounced as spls pose more complex. Software testing, verification and reliability 29, 12 2019, e1676. The authors distill the concepts and principles underlying the field with remarkable clarity, providing a. Featureoriented software development is a paradigm for the construction, customization, and synthesis of largescale and variable software systems, focusing on structure, reuse and variation. Springerverlag, 20 electronic copy available through cmu library.
Featureoriented project line engineering request pdf. Pdf requirements engineering in feature oriented software. Software product lines spls, or software product line development, refers to software engineering methods, tools and techniques for creating a collection of similar software systems from a shared set of software assets using a common means of production the carnegie mellon software engineering institute defines a software product line as a set of softwareintensive. In addition, we will assign or recommend supplementary readings with each chapter, which we will provide via blackboard.
Modelbased security analysis of featureoriented software product lines. In featureoriented programming fop, features are implemented as distinct and composable units of functionality referred to as feature modules 3. Feature models were first introduced in the feature oriented domain analysis foda method by kang in 1990. Software product lines spls, or software product line development, refers to software engineering methods, tools and techniques for creating a collection of similar software systems from a shared set of software assets using a common means of production. Takes a dedicated developmentoriented view, focusing on automatic product derivation based on feature selection. Finally, part iii is devoted to advanced topics related to featureoriented product lines like refactoring, feature interaction, and analysis tools specific to product lines. A parallel framework of combining satisfiability modulo. Jacob kruger, mustafa alhajjaji, thomas leich, and gunter saake. Proceedings of the eighth international workshop on variability modelling of softwareintensive systems towards assessing the complexity of object migration in dynamic, featureoriented software product lines.
Kang pohang university of science and technology, sholom g. Parti software product lines 1 softwareproduct lines 3 1. Key concepts in software product lines are reusability a set of core assets designed and developed for reuse and variability management i. In software development, a feature model is a compact representation of all the products of the software product line in terms of features. Software product lines, in 17th european conference on. The book provides a systematic introduction to featureoriented software product lines, and leads the reader to more advanced topics in its second half. In computer programming, featureoriented programming fop or featureoriented software development fosd is a programming paradigm for program generation in software product lines spls and for incremental development of programs. Part i provides a general introduction to feature oriented software product lines, describing the productline approach and. To address this issue, we conduct an empirical analysis on ten feature oriented software product lines with respect to code cloning. Kang and jaejoon lee, pohang university of science and technology patrick donohoe, software engineering institute, carnegie mellon university the featureoriented reuse method concentrates on analyzing and modeling a product lines commonalities and differences in terms of features and uses this. Featureide is an eclipsebased ide that supports all phases of featureoriented software development for the development of spls. Finally, part iii is devoted to advanced topics related to feature oriented product lines like refactoring, feature interaction, and analysis tools specific to product lines. Abstract requirements engineering is recognized as a critical stage in software development lifecycle.
A feature is a semantically cohesive unit of behavior of a software system. A dspl integrates both variability in time and space in a unified conceptual framework. Analyzing the security of all products separately is generally infeasible. An initial analytical study article pdf available september 2012 with 144 reads how we measure reads. Featureoriented domain analysis foda feasibility study. In contrast to oneoff development, spls are based on the idea that the distinct products of the family share a significant amount of assets. Modelbased security analysis of featureoriented software. A software product line is a family of programs where each program is defined by a unique composition of features. We found that there is a considerable amount of clones in feature oriented software product lines and that a large fraction of these clones is foprelated i. Splc 2016 test of time award for my splc 2005 paper, to be presented at splc 2017. Ammar, optimum feature selection in software product lines. We found that there is a considerable number of clones in featureoriented software product lines and that a large fraction of these clones is foprelated i. Inevitably, reading is one of the requirements to be undergone.
While standardization has empowered the software industry to substantially scale software development and to provide affordable software to a broad market, it often does not address smaller market. Featureoriented software product lines ebook por sven apel. In this tutorial, we provide a gentle introduction to software product lines, feature oriented programming, virtual separation of concerns, and variability. If youre looking for a free download links of featureoriented software product lines. In this work, we propose secpl, a methodology for ensuring security in a software product line. Keywords security, software product lines, ocl, uml acm reference format. Applying featureoriented software development in saas. Featureoriented software product lines chalmersstore. To address this issue, we conduct an empirical analysis on ten featureoriented software product lines with respect to code cloning. Request pdf on jan 1, 20, sven apel and others published feature oriented software product lines find, read and cite all the research you need on. Report incorrect product information featureoriented software product lines. The book provides a systematic introduction to feature oriented software product lines, and leads the reader to more advanced topics in its second half.
Featureoriented software product lines guide books. Connection between layer stacks and transformation compositions. Featureoriented domain analysis foda feasibility study november 1990 technical report kyo c. Yet, a particularly challenging type of complexity arises from the variability of software product lines. Featureoriented software development semantic scholar. Software product lines enable developers to systematically manage and reuse software artifacts, which contribute to software features, based on an integrated platform 1, 25. Featureoriented software development fosd is a paradigm for the construction, customization, and synthesis of largescale software systems. In requirements engineering conference re, 2012 20th ieee.
The authors distill the concepts and principles underlying the field with remarkable clarity, providing a muchneeded foundation for the field. Featureoriented software product lines springerlink. Feature models are widely used in software product lines and featureoriented development approaches to define the commonalities and variability. Software product lines aim at empowering software vendors to tailor software products to the requirements of individual customers.
An overview of featureoriented software development. Check out the new text on feature oriented software product lines. To improve the performance and quality, someone needs to have something new every day. Let your model and values guide your search, in proc. Widely used domain engineering methods are based on feature models e. We argue that these 4 software product lines are a reasonable selection to gain insights into mutation testing for feature.
Different spl implementation techniques are integrated such as feature oriented programming. Featureoriented software product lines request pdf. Different spl implementation techniques are integrated such as featureoriented programming. While standardization has empowered the software i. Workshop on combining modelling and searchbased software engineering, 20, pp.
Requirements engineering in feature oriented software product lines. Mutation operators for featurea oriented software product lines. Apel, sven, batory, don, kastner, christian, saake, gunter. Mutation operators for featureoriented software product lines.
Ideally, based on a set of reusable parts, a software manufacturer can generate a software product based on the requirements of its customer. In computer programming, feature oriented programming fop or feature oriented software development fosd is a programming paradigm for program generation in software product lines spls and for incremental development of programs. Software product lines spls are not intended to create one application, but a number of them. In this survey, we give an overview and a personal perspective on the roots of fosd, connections to other software development paradigms, and recent developments in this field.