• DocumentCode
    3066971
  • Title

    Supporting program comprehension using semantic and structural information

  • Author

    Maletic, Jonathan I. ; Marcus, Andrian

  • Author_Institution
    Dept. of Math. Sci., Memphis Univ., TN, USA
  • fYear
    2001
  • fDate
    12-19 May 2001
  • Firstpage
    103
  • Lastpage
    112
  • Abstract
    Focuses on investigating the combined use of semantic and structural information of programs to support the comprehension tasks involved in the maintenance and reengineering of software systems. "Semantic information" refers to the domain-specific issues (both the problem and the development domains) of a software system. The other dimension, structural information, refers to issues such as the actual syntactic structure of the program, along with the control and data flow that it represents. An advanced information retrieval method, latent semantic indexing, is used to define a semantic similarity measure between software components. Components within a software system are then clustered together using this similarity measure. Simple structural information (i.e. the file organization) of the software system is then used to assess the semantic cohesion of the clusters and files with respect to each other. The measures are formally defined for general application. A set of experiments is presented which demonstrates how these measures can assist in the understanding of a nontrivial software system, namely a version of NCSA Mosaic.
  • Keywords
    data flow analysis; indexing; information retrieval; online front-ends; program control structures; reverse engineering; software maintenance; software metrics; systems re-engineering; NCSA Mosaic; control flow; data flow; domain-specific issues; file organization; information retrieval method; latent semantic indexing; problem domain; program comprehension; semantic cohesion; semantic information; semantic similarity measure; software component clustering; software development domain; software systems maintenance; software systems reengineering; structural information; syntactic program structure; Application software; Computer languages; Computer science; Data mining; Documentation; Indexing; Information retrieval; Natural languages; Software measurement; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2001. ICSE 2001. Proceedings of the 23rd International Conference on
  • ISSN
    0270-5257
  • Print_ISBN
    0-7695-1050-7
  • Type

    conf

  • DOI
    10.1109/ICSE.2001.919085
  • Filename
    919085