• DocumentCode
    3409339
  • Title

    Slicing object-oriented software

  • Author

    Larsen, Loren ; Harrold, Mary Jean

  • fYear
    1996
  • fDate
    25-29 Mar 1996
  • Firstpage
    495
  • Lastpage
    505
  • Abstract
    Describes the construction of system dependence graphs for object-oriented software on which efficient slicing algorithms can be applied. We construct these system dependence graphs for individual classes, groups of interacting classes and complete object-oriented programs. For an incomplete system consisting of a single class or a number of interacting classes, we construct a procedure dependence graph that simulates all possible calls to public methods in the class. For a complete system, we construct a procedure dependence graph from the main program in the system. Using these system dependence graphs, we show how to compute slices for individual classes, groups of interacting classes and complete programs. One advantage of our approach is that the system dependence graphs can be constructed incrementally because representations of classes can be reused. Another advantage of our approach is that slices can be computed for incomplete object-oriented programs such as classes or class libraries. We present our results for C++, but our techniques can be applied to other statically typed object-oriented languages such as Ada-95
  • Keywords
    diagrams; graphs; object-oriented programming; program diagnostics; software libraries; software reusability; subroutines; Ada-95; C++ language; class libraries; class representation reuse; efficient slicing algorithms; incomplete object-oriented programs; incremental construction; interacting classes; object-oriented software slicing; procedure call simulation; procedure dependence graph; public methods; statically typed object-oriented languages; system dependence graphs; Algorithm design and analysis; Computational modeling; Computer science; Data analysis; Data flow computing; Flow graphs; Libraries; Object oriented modeling; Software algorithms; Testing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 1996., Proceedings of the 18th International Conference on
  • Conference_Location
    Berlin
  • ISSN
    0270-5257
  • Print_ISBN
    0-8186-7247-1
  • Type

    conf

  • DOI
    10.1109/ICSE.1996.493444
  • Filename
    493444