Skip to main content
  • Book
  • © 2023

Handbook of Re-Engineering Software Intensive Systems into Software Product Lines

  • Includes 20 chapters structured in 4 parts

  • Provides comprehensive compendium of the fundamentals of re-engineering legacy applications

  • Presents a compilation of knowledge and experiences

Buy it now

Buying options

eBook USD 149.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 249.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access

This is a preview of subscription content, access via your institution.

Table of contents (20 chapters)

  1. Front Matter

    Pages i-xxxii
  2. Feature Location and Variability Model Extraction

    1. Front Matter

      Pages 1-1
    2. Feature Location in Software Variants Toward Software Product Line Engineering

      • Hamzeh Eyal Salman, Abdelhak-Djamel Seriai, Christophe Dony
      Pages 3-30
    3. Semantic History Slicing

      • Yi Li, Julia Rubin, Marsha Chechik
      Pages 53-77
    4. Feature Location in Models (FLiM): Design Time and Runtime

      • Lorena Arcega, Jaime Font, Øystein Haugen, Carlos Cetina
      Pages 79-113
    5. Search-Based Variability Model Synthesis from Variant Configurations

      • Wesley K. G. Assunção, Silvia R. Vergilio, Roberto E. Lopez-Herrejon, Lukas Linsbauer
      Pages 115-141
    6. Machine Learning for Feature Constraints Discovery

      • Hugo Martin, Paul Temple, Mathieu Acher, Juliana Alves Pereira, Jean-Marc Jézéquel
      Pages 175-196
  3. Reengineering Product Line Architectures

    1. Front Matter

      Pages 197-197
    2. Extraction of Software Product Line Architectures from Many System Variants

      • Anas Shatnawi, Abdelhak-Djamel Seriai, Houari Sahraoui
      Pages 199-220
    3. ModelVars2SPL: From UML Class Diagram Variants to Software Product Line Core Assets

      • Wesley K. G. Assunção, Silvia R. Vergilio, Roberto E. Lopez-Herrejon
      Pages 221-250
    4. Extraction and Evolution of a Software Product Line from Existing Web-Based Systems

      • Erick Sharlls Ramos de Pontes, Uirá Kulesza, Carlos Eduardo da Silva, Eiji Adachi, Elder Cirilo
      Pages 251-273
    5. Re-Engineering Microservice Applications into Delta-Oriented Software Product Lines

      • Maya R. A. Setyautami, Hafiyyan S. Fadhlillah, Daya Adianto, Ichlasul Affan, Ade Azurat
      Pages 275-292
    6. Understanding the Variability on the Recovery of Product Line Architectures

      • Crescencio Lima, Mateus Cardoso, Ivan do Carmo Machado, Eduardo Santana de Almeida, Christina von Flach Garcia Chavez
      Pages 293-315
  4. Frameworks

    1. Front Matter

      Pages 317-317
    2. PAxSPL: A Framework for Aiding SPL Reengineering Planning

      • Luciano Marchezan, Elder Rodrigues, João Carbonell, Maicon Bernardino, Fábio Paulo Basso, Wesley K. G. Assunção
      Pages 319-353
    3. Bottom-Up Technologies for Reuse: A Framework to Support Extractive Software Product Line Adoption Activities

      • Jabier Martinez, Tewfik Ziadi, Tegawendé F. Bissyandé, Jaques Klein, Yves le Traon
      Pages 355-377
    4. Systematic Software Reuse with Automated Extraction and Composition for Clone-and-Own

      • Lukas Linsbauer, Stefan Fischer, Gabriela Karoline Michelon, Wesley K. G. Assunção, Paul Grünbacher, Roberto E. Lopez-Herrejon et al.
      Pages 379-404
    5. Re-engineering Automation Software with the Variability Analysis Toolkit

      • Kamil Rosiak, Lukas Linsbauer, Birgit Vogel-Heuser, Ina Schaefer
      Pages 405-428

About this book

This handbook distils the wealth of expertise and knowledge from a large community of researchers and industrial practitioners in Software Product Lines (SPLs) gained through extensive and rigorous theoretical, empirical, and applied research. It is a timely compilation of well-established and cutting-edge approaches that can be leveraged by those facing the prevailing and daunting challenge of re-engineering their systems into SPLs. The selection of chapters provides readers with a wide and diverse perspective that reflects the complementary and varied expertise of the chapter authors. This perspective covers the re-engineering processes, from planning to execution.

SPLs are families of systems that share common assets, allowing a disciplined software reuse. The adoption of SPL practices has shown to enable significant technical and economic benefits for the companies that employ them. However, successful SPLs rarely start from scratch, but instead, they usually start from a set of existing systems that must undergo well-defined re-engineering processes to unleash new levels of productivity and competitiveness.

Practitioners will benefit from the lessons learned by the community, captured in the array of methodological and technological alternatives presented in the chapters of the handbook, and will gain the confidence for undertaking their own re-engineering challenges. Researchers and educators will find a valuable single-entry point to quickly become familiar with the state-of-the-art on the topic and the open research opportunities; including undergraduate, graduate students, and R&D engineers who want to have a comprehensive understanding of techniques in reverse engineering and re-engineering of variability-rich software systems.

Keywords

  • software engineering
  • software product lines
  • configurable systems
  • variability management
  • reverse engineering
  • domain analysis
  • feature models
  • configuration management
  • customization
  • feature-oriented development
  • feature localization
  • Information retrieval
  • software mining
  • model-driven engineering
  • requirements engineering
  • microservices
  • software reuse
  • machine learning
  • artificial intelligence

Editors and Affiliations

  • École de Technologie Supérieure, Universite du Québec, Montreal, Canada

    Roberto E. Lopez-Herrejon

  • Tecnalia, Basque Research and Technology Alliance (BRTA), Derio, Spain

    Jabier Martinez

  • Pontifical Catholic University of Rio de Janeiro, Johannes Kepler University of Linz, Linz, Austria

    Wesley Klewerton Guez Assunção

  • Sorbonne Universités & CNRS-LIP6, Paris, France

    Tewfik Ziadi

  • IRISA-Inria, Institut Universitaire de France (IUF) & University of Rennes 1, Rennes, France

    Mathieu Acher

  • Departamento de Informática, Federal University of Parana (UFPR), Curitiba, Brazil

    Silvia Vergilio

About the editors

Roberto Erick Lopez-Herrejon is an Associate Professor at the Department of Software Engineering and Information Technology of the École de technologie supérieure of the University of Quebec in Montreal, Canada. Prior he was a senior postdoctoral researcher at the Johannes Kepler University in Linz, Austria. He was an Austrian Science Fund (FWF) Lise Meitner Fellow (2012-2014) at the same institution. From 2008 to 2014 he was an External Lecturer at the Software Engineering Masters Programme of the University of Oxford, England. From 2010 to 2012 he held an FP7 Intra-European Marie Curie Fellowship sponsored by the European Commission. From 2005 to 2008, he was a Career Development Fellow at the Software Engineering Centre of the University of Oxford sponsored by the Higher Education Funding Council of England (HEFCE). He obtained his Ph.D. from the University of Texas at Austin in 2006, funded in part by a Fulbright Fellowship sponsored by the U.S. State Department. His main expertise is in software customization, software product lines, search-based software engineering, and empirical software engineering.Jabier Martinez is part of the Software Technologies team at Tecnalia, Spain. His background is in providing methods and tools for systems modelling, and for achieving systematic reuse covering all the artefacts that conform a system life-cycle. He obtained the title of computer engineering from the University of the Basque Country in 2007 and, after several years of industrial experience, he received his PhD in 2016 from the Luxembourg University (SnT, Interdisciplinary centre for Security and Trust) and Sorbonne University (Lip6, Laboratory of Computer Sciences, Paris 6) with an awarded thesis about mining software artefacts for product line migration and analysis. He co-organizes the Reverse Variability Engineering series of workshops and has authored more than fifty peer-reviewed publications, and participated in several European research projects, on modelling, software reuse, variability management, software product lines, safety and security.

Wesley Klewerton Guez Assunção is currently a University Assistant at Johannes Kepler University Linz (JKU) - Austria and Postdoctoral researcher at Pontifical Catholic University of Rio de Janeiro (PUC-Rio) - Brazil. Wesley received his M.Sc. in Informatics (2012) and Ph.D. in Computer Science (2017) both from Federal University of Paraná (UFPR) - Brazil. His areas of interest are Software Modernization, Variability Management, Collaborative Engineering of Complex Systems, Software Testing, and Search Based Software Engineering. He published research papers, in collaboration with many international researchers, in conferences like ICSME, SANER, MSR, EASE, SPLC, SSBSE, GECCO, to cite some, as well as in journals such as EMSE, IST, and JSS. Wesley has also served as reviewers for many conferences and journals, and as organizer of conferences (e.g., PC co-chair of SPLC’22), symposiums, workshops, competitions, and meetings.
Mathieu Acher is Associate Professor at University of Rennes 1/IRISA/Inria, France. His research focuses on modelling, reverse engineering, and learning variability of software-intensive systems. He is the author of more than one hundred peer-reviewed publications in international journals and conferences. He was program committee co-chair of SPLC (Systems and Software Product Line Conference) 2017 and VaMoS (Conference on Variability Modelling of Software-Intensive Systems) 2020, served in the steering committees of SPLC and VaMoS, and co-organized the Reverse Variability Engineering series of workshops. His work has received one Most Influential Paper Award (SLE’19) and two Best Paper Awards (SPLC’21, ICPE’19). He is currently leading a research project, VaryVary, on machine learning and (deep) software variability. Since 2021, he is a junior research fellow at Institut Universitaire de France (IUF).
Tewfik Ziadi is Associate Professor at the Sorbonne University and the head of the MoVe team at LIP6 Lab. He received a Ph.D. in Computer Science from Universite of Rennes 1 in 2005 and his habilitation (HDR) in 2016 from Sorbonne Université. His research interests include Software Product Lines, Variability Modeling, and Model-Driven Development. His research has been published at several top tier software engineering venues and journals, such as the TSE, IST, and JSS journals and the IEEE/ACM International Conference on Automated Software Engineering (ASE). He is a co-developer of the BUT4Reuse platform for Bottom-Up technologies for Reuse. He is the scientific coordinator of an international project and the general co-chair of the Systems and Software Product Line Conference (SPLC 2019) and co-chair of the ACM SAC VSPLE Variability and Software Product Line Engineering Track, 2019. He was the publication chair of ICSR 2018 (International Conference on Software Reuse), and co-chair of the editions of the REverse Variability Engineering workshop (REVE 2013–2018).

Silvia Regina Vergilio received Master and Doctoral degrees from University of Campinas (UNICAMP), Brazil. She is currently a professor of Software Engineering in the Computer Science Department of Federal University of Paraná (UFPR), Brazil, where she leads the Research Group on Software Engineering. She has been involved in several projects and her research is mainly supported by CNPq (PQ Level 1D). She is the author of more than one hundred peer-reviewed publications in international journals and conferences. She serves as assistant editor of the Journal of Software Engineering: Research and Development, and acts as peer reviewer for diverse international journals. She served on the Program Committee of conferences such as SPLC, SSBSE, CEC, GECCO, SANER, and ICPC. Her research interests include software testing, software reliability, Software Product Lines (SPLs) and Search-based Software Engineering (SBSE).



Bibliographic Information

  • Book Title: Handbook of Re-Engineering Software Intensive Systems into Software Product Lines

  • Editors: Roberto E. Lopez-Herrejon, Jabier Martinez, Wesley Klewerton Guez Assunção, Tewfik Ziadi, Mathieu Acher, Silvia Vergilio

  • DOI: https://doi.org/10.1007/978-3-031-11686-5

  • Publisher: Springer Cham

  • eBook Packages: Computer Science, Computer Science (R0)

  • Copyright Information: Springer Nature Switzerland AG 2023

  • Hardcover ISBN: 978-3-031-11685-8Published: 24 November 2022

  • Softcover ISBN: 978-3-031-11688-9Published: 24 November 2023

  • eBook ISBN: 978-3-031-11686-5Published: 22 November 2022

  • Edition Number: 1

  • Number of Pages: XXXII, 517

  • Number of Illustrations: 64 b/w illustrations, 115 illustrations in colour

  • Topics: Software Engineering/Programming and Operating Systems, Software Management, Computer System Implementation

Buy it now

Buying options

eBook USD 149.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book USD 199.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book USD 249.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Other ways to access