• 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