Mastering Software Variability with FeatureIDE [electronic resource] /
Meinicke, Jens.author.
Thüm, Thomas.author.
Schröter, Reimar.author.
Benduhn, Fabian.author.
Leich, Thomas.author.
Saake, Gunter.author.
This book is a self-contained, practical introduction how to use FeatureIDE for modeling and implementing variable systems. In particular, readers learn how to analyze domains using feature models, specify requirements in form of configurations, and how to generate code based on conditional compilation and feature-oriented programming. Given the interactive style of the book, readers can directly try out the open-source development environment. All code examples are available in the standard distribution on GitHub and can immediately been used for individual modifications. Each part of the book is presented as a step-by-step tutorial and additionally illustrated using an ongoing example of elevator control software written in Java. Written by the core development team of FeatureIDE, this book is suitable for students using a tool for deepening the theoretical foundations of variability modeling and implementation, and as a reference for practitioners needing a stable and scalable tool for industrial applications. FeatureIDE is the most used open-source tool for feature modeling and has been continuously improved since 2004. The success of FeatureIDE is due to being a vehicle for cutting-edge product-line research by still providing an easy-to-use and seamless integration into Eclipse. FeatureIDE is a much needed and necessary step forward. It presents the analyses and amenities that one might/should see in next-generation SPL tooling. I have used FeatureIDE for many years and am very-pleased to see SPL research ideas come to life. - Don Batory, The University of Texas at Austin, USA Features and Benefits Offers a step-by-step tutorial on FeatureIDE, an open-source Eclipse plug-in for software product-line engineering used in industrial projects Written by the core development team of FeatureIDE for both practitioners and students Illustrates all relevant topics and issues using a running example of elevator control software.
Includes bibliographical references and index.
1 Software Variability -- 2 Getting Started -- 3 FeatureIDE in a Nutshell -- 4 An Elevator as a Running Example -- 5 Feature Modeling -- 6 Product Configuration -- 7 Feature Traceability in Feature Models and Configurations -- 8 Quality Assurance for Feature Models and Configurations -- 9 Conditional Compilation with FeatureIDE -- 10 Developing an Elevator with Conditional Compilation -- 11 Feature Traceability for Conditional Compilation -- 12 Quality Assurance for Conditional Compilation -- 13 Feature-Oriented Programming with FeatureIDE -- 14 Developing an Elevator with Feature-Oriented Programming -- 15 Feature Traceability for Feature-Oriented Programming -- 16 Quality Assurance for Feature-Oriented Programming -- 17 Tool Support Beyond Preprocessors and Feature Modules -- 18 Tool Support for Product-Line Maintenance -- 19 Overview on FeatureIDE.
This book is a self-contained, practical introduction how to use FeatureIDE for modeling and implementing variable systems. In particular, readers learn how to analyze domains using feature models, specify requirements in form of configurations, and how to generate code based on conditional compilation and feature-oriented programming. Given the interactive style of the book, readers can directly try out the open-source development environment. All code examples are available in the standard distribution on GitHub and can immediately been used for individual modifications. Each part of the book is presented as a step-by-step tutorial and additionally illustrated using an ongoing example of elevator control software written in Java. Written by the core development team of FeatureIDE, this book is suitable for students using a tool for deepening the theoretical foundations of variability modeling and implementation, and as a reference for practitioners needing a stable and scalable tool for industrial applications. FeatureIDE is the most used open-source tool for feature modeling and has been continuously improved since 2004. The success of FeatureIDE is due to being a vehicle for cutting-edge product-line research by still providing an easy-to-use and seamless integration into Eclipse. FeatureIDE is a much needed and necessary step forward. It presents the analyses and amenities that one might/should see in next-generation SPL tooling. I have used FeatureIDE for many years and am very-pleased to see SPL research ideas come to life. - Don Batory, The University of Texas at Austin, USA Features and Benefits Offers a step-by-step tutorial on FeatureIDE, an open-source Eclipse plug-in for software product-line engineering used in industrial projects Written by the core development team of FeatureIDE for both practitioners and students Illustrates all relevant topics and issues using a running example of elevator control software.
Software engineering.
Management information systems.
Software Engineering.
Software Management.