Software Product Line Engineering and Evolution

Software Product Line Engineering (SPLE) is of interest to any company that develops a line of software products or services that are similar, but also customized for specific customers or market segments. Developing and maintaining efficiently such software families requires specific tools and concepts, since the ones of classical software engineering are designed with a single product in mind. For instance, an error detected in one product should be analyzed to discover all products affected, and correct the problem for all products at once.

The introduction of SPLE can bring important benefits to software developers: for instance, Hewlett-Packard reported a four-fold increase of development productivity, and a ten-fold decrease of the number of defects. Cummins, Inc., reported a 50-fold reduction of time-to-market. Furthermore, introducing a product line brings commercial advantages and thus higher margins, by targeting customer needs very precisely while offering a large portfolio of products at a reduced cost.

The main tool we propose for managing a product line is Feature Modeling, a technique to explicitly and compactly document features and their legal combinations. Feature models are the basis for efficient variability management, quality assurance and automated product derivation.

 

Keywords

software product lines – software reuse – evolution

 

Current Projects


Selected publications

  • Andreas Classen, Quentin Boucher, and Patrick Heymans. A text-based approach to feature modelling: Syntax and semantics of TVL. In Science of Computer Programming, Special Issue on Software Evolution, Adaptability and Variability, 76(12):1130-1143, 2011. Ranked A in CORE. Impact factor: 1.282.
  • Andreas Classen, Patrick Heymans, Pierre-Yves Schobbens, and Axel Legay. Symbolic model checking of software product lines. In 33rd International Conference on Software Engineering (ICSE 2011), Waikiki, Honolulu, Hawaii, Proceedings, pages 321–330. ACM, 2011. Ranked A* in CORE. Acceptance rate: 14%.
  • Andreas Classen, Patrick Heymans, Pierre-Yves Schobbens, Axel Legay, and Jean-François Raskin. Model checking lots of systems: Efficient verification of temporal properties in software product lines. In Proceedings of the 32nd International Conference on Software Engineering (ICSE 2010), Cape Town, South Africa, Proceedings, pages 335–344, ACM, 2010. Ranked A* in CORE. Acceptance rate: 13.7%.
  • Pierre-Yves Schobbens, Patrick Heymans, Jean-Christophe Trigaux. Feature Diagrams: A Survey and a Formal Semantics. In Proceedings of the 14th IEEE International Conference on Requirements Engineering (RE’06), pages 139-148, 2006. Ranked A in CORE. Acceptance rate: 14%.
  • Pierre-Yves Schobbens, Patrick Heymans, Jean-Christophe Trigaux, and Yves Bontemps. Generic semantics of feature diagrams. Computer Networks, 51(2):456–479, 2007. Ranked A in CORE. Impact factor: 1.176.
  • Andreas Metzger, Patrick Heymans, Klaus Pohl, Pierre-Yves Schobbens, Germain Saval. Disambiguating the Documentation of Variability in Software Product Lines: A Separation of Concerns, Formalization and Automated Analysis. In Proceedings of the 15th IEEE International Conference on Requirements Engineering (RE’07), pp. 243-253. Ranked A in CORE. Ranked A in CORE.  Acceptance rate: 12%.
  • Patrick Heymans, Pierre-Yves Schobbens, Jean-Christophe Trigaux, Yves Bontemps, Raimundas Matulevicius, Andreas Classen. Evaluating Formal Properties of Feature Diagram Languages, in IET Software Journal , volume 2, issue 3, pp. 281-302.