Metop Research Institute

Download Graph_Product_Line

Description: Lopez-Herrejon and Batory [2001] developed the Graph Product Line as a bench- mark for product line technology. Similar to the Functional Graph Library, a user can select between weighted and unweighted and between directed and undi- rected edges, between three different underlying data structures (vertex lists, neighbor lists, edge objects), and several algorithms such as depth first search, cycle detection, or Kruskal’s algorithm. The Graph Product Line is interesting as a case study, because it contains many alternative features and nontrivial depen- dencies (e.g., Kruskal’s algorithm requires undirected and weighted edges) and because the domain is well-known. The Graph Product Line was developed from scratch with the feature-oriented language Jak (27 feature modules). We manually wrote a Java implementation that merges all features in a single code base and annotated that implementa- tion. Additionally, we annotated the HTML documentation, so each variant has a documentation that describes only available features.

Generator: CIDE

Authors: Roberto Lopez Herrejon, Christian Kästner


Language: Jak, HTML

Development tool: CIDE

Number of Features: 18

Lines of code*: 1350

Number of classes: 16

Number of products:




Upload date: 2012-08-12

Last updated: 2012-08-12


*calculated with SourceMonitor
Edit | Back