Event

PhD Defense: Supporting Change in Product Lines within the Context of Use Case-Driven Development and Testing

  • Conférencier  Ines Hajri

  • Lieu

    Room E004, JFK Building 29, Avenue John F. Kennedy L-1855 Luxembourg

    LU

Members of the defense committee:

  • Chairman: Dr Shiva NEJATI, University of Luxembourg
  • Vice-chairman: Dr Fabrizio PASTORE, University of Luxembourg
  • Supervisor: Prof. Dr Lionel BRIAND, University of Luxembourg
  • Member: Prof. Dr Alexander EGYED, Johannes Kepler University, Austria
  • Member: Dr Stefania GNESI, The Alessandro Feado Institute of Information Science & Technology, Italy

Abstract:

Product Line Engineering (PLE) is a crucial practice in many software development environments where systems are complex and developed for multiple customers with varying needs. At the same time, many business contexts are use case-driven where use cases are the main artifacts driving requirements elicitation and many other development activities. In these contexts, variability information is often not explicitly represented, which leads to ad-hoc change management for use cases, domain models and test cases in product families.

In this thesis, we address the problems of modeling variability in requirements with additional traceability to feature models and the manual and error prone requirements configuration and regression testing in product families.

We provide the following contributions:

  • A modeling method for capturing variability information in product line use case and domain models by relying exclusively on commonly used artifacts in use-case driven development, thus avoiding unnecessary modeling overhead.
  • An approach for automated configuration of product specific use case and domain models that guides customers in making configuration decisions and automatically generates use case diagrams, use case specifications, and domain models for configured products.
  • A change impact analysis approach for evolving configuration decisions in product line use case models that automatically identifies the impact of decision changes on other decisions, and incrementally reconfigures product specific use case diagrams and specifications for evolving decisions.
  • An approach for automated classification and prioritization of system test cases in a family of products that automatically classifies and prioritizes, for each new product, system test cases of previous product(s) in a product line, and provides guidance in modifying existing system test cases to cover new use case scenarios that have not been tested in the product line before.

 

All our approaches have been developed and evaluated in close collaboration with our industry partner IEE.