DocumentCode
176223
Title
Program Dependency Analysis for Consolidating Customized Product Copies
Author
Klatt, Benjamin ; Krogmann, Klaus ; Seidl, Christoph
Author_Institution
Software Eng. Dept., Res. Center for Inf. Technol., Karlsruhe, Germany
fYear
2014
fDate
Sept. 29 2014-Oct. 3 2014
Firstpage
496
Lastpage
500
Abstract
To cope with project constraints, copying and customizing existing software products is a typical practice to flexibly serve customer-specific needs. In the long term, this practice becomes a limitation for growth due to redundant maintenance efforts or wasted synergy and cross selling potentials. To mitigate this limitation, customized copies need to be consolidated into a single, variable code base of a software product line (SPL). However, consolidation is tedious as one must identify and correlate differences between the copies to design future variability. For one, existing consolidation approaches lack support of the implementation level. In addition, approaches in the fields of difference analysis and feature detection are not sufficiently integrated for finding relationships between code modifications. In this paper, we present remedy to this problem by integrating a difference analysis with a program dependency analysis based on Program Dependency Graphs (PDG) to reduce the effort of consolidating developers when identifying dependent differences and deriving clusters to consider in their variability design. We successfully evaluated our approach on variants of the open source ArgoUML modeling tool, reducing the manual review effort about 72% with a precision of 99% and a recall of 80%. We further proved its industrial applicability in a case study on a commercial relationship management application.
Keywords
Unified Modeling Language; customer relationship management; feature extraction; product customisation; program diagnostics; public domain software; software product lines; PDG; code modifications; commercial relationship management application; cross selling potentials; customer-specific needs; customized product copies; difference analysis; feature detection; industrial applicability; open source ArgoUML modeling tool; program dependency analysis; program dependency graphs; project constraints; redundant maintenance efforts; software product line; wasted synergy; Algorithm design and analysis; Context; Merging; Object oriented modeling; Software; Software algorithms; Unified modeling language; program dependencies; reengineering; software engineering; software product lines; variability;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Maintenance and Evolution (ICSME), 2014 IEEE International Conference on
Conference_Location
Victoria, BC
ISSN
1063-6773
Type
conf
DOI
10.1109/ICSME.2014.81
Filename
6976125
Link To Document