A Service Sharing Approach to Integrating Program Comprehension Tools
Dean Jin, James R. Cordy
Abstract
Dean Jin, James R. Cordy
Abstract
Software maintenance is the most time consuming and costly phase of the software development lifecycle. For every dollar spent on creating a new software system, nine dollars is spent on maintaining it throughout its useful life. By the late 1980s maintenance spending accounted for an estimated US$30 billion worldwide. Any activity that even minimally reduces maintenance efforts would yield significant cost savings within the software industry [3]. Tool support for maintainers has focused largely on providing assistance in activities related to program comprehension. The goal of these tools is to provide a rapid means for maintainers to understand large scale software systems. Most program comprehension tools have a specific strength or specialized application area [10] but are weak in other areas. No single tool exists that provides all the functionality and flexibility that most software maintainers need. For this reason, research attention has been focused on getting program comprehension tools to integrate with each other. In this paper we present a novel approach to facilitating integration among tools used by maintainers to assist in program comprehension. We start by showing that program comprehension tools have many similar characteristics. Taking full advantage of this fact, we outline how specially designed adapters and a domain ontology can be used together to allow these tools to integrate transparently with each other.
OpenAlex reports 10 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
Software maintenance is the most time consuming and costly phase of the software development lifecycle. For every dollar spent on creating a new software system, nine dollars is spent on maintaining it throughout its useful life. By the late 1980s maintenance spending accounted for an estimated US$30 billion worldwide. Any activity that even minimally reduces maintenance efforts would yield significant cost savings within the software industry [3]. Tool support for maintainers has focused largely on providing assistance in activities related to program comprehension. The goal of these tools is to provide a rapid means for maintainers to understand large scale software systems. Most program comprehension tools have a specific strength or specialized application area [10] but are weak in other areas. No single tool exists that provides all the functionality and flexibility that most software maintainers need. For this reason, research attention has been focused on getting program comprehension tools to integrate with each other. In this paper we present a novel approach to facilitating integration among tools used by maintainers to assist in program comprehension. We start by showing that program comprehension tools have many similar characteristics. Taking full advantage of this fact, we outline how specially designed adapters and a domain ontology can be used together to allow these tools to integrate transparently with each other.
Key concepts: Program comprehension, Computer science, Software engineering, Software maintenance, Comprehension, Flexibility (engineering), Software development, Software