Defining variability in activity diagrams and Petri nets

  • Authors:
  • André Heuer;Vanessa Stricker;Christof J. Budnik;Sascha Konrad;Kim Lauenroth;Klaus Pohl

  • Affiliations:
  • Paluno - The Ruhr Institute of Software Technology, University of Duisburg-Essen, Gerlingstr. 16, 45127 Essen, Germany;Paluno - The Ruhr Institute of Software Technology, University of Duisburg-Essen, Gerlingstr. 16, 45127 Essen, Germany;Siemens Corporate Research, 755 College Road East, Princeton, NJ 08540, USA;Plainsboro, NJ, USA;adesso AG, Stockholmer Allee 24, 44269 Dortmund, Germany;Paluno - The Ruhr Institute of Software Technology, University of Duisburg-Essen, Gerlingstr. 16, 45127 Essen, Germany

  • Venue:
  • Science of Computer Programming
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Control flow models, such as UML activity diagrams or Petri nets, are widely accepted modeling languages used to support quality assurance activities in single system engineering as well as software product line (SPL) engineering. Quality assurance in product line engineering is a challenging task since a defect in a domain artifact may affect several products of the product line. Thus, proper quality assurance approaches need to pay special attention to the product line variability. Automation is essential to support quality assurance approaches. A prerequisite for automation is a profound formalization of the underlying control flow models and, in the context of SPLs, of the variability therein. In this paper, we propose a formal syntax and semantics for defining variability in Petri nets. We use these extended Petri nets as a foundation to formally define variability in UML activity diagrams; UML activity diagrams serve as a basis for several testing techniques in product line engineering. We illustrate the contribution of such a formalization to assurance activities in product line engineering by describing its usage in three application examples.