Understanding object-oriented source code from the behavioural perspective

N. Walkinshaw, M. Roper, M. Wood

Research output: Chapter in Book/Report/Conference proceedingChapter

9 Citations (Scopus)

Abstract

Comprehension is a key activity that underpins a variety of software maintenance and engineering tasks. The task of understanding object-oriented systems is hampered by the fact that the code segments that are related to a user-level function tend to be distributed across the system. We introduce a tool-supported code extraction technique that addresses this issue. Given a minimal amount of information about a behavioural element of the system that is of interest (such as a use-case), it extracts a trail of the methods (and method invocations) through the system that are needed in order to achieve an understanding of the implementation of the element of interest. We demonstrate the feasibility of our approach by implementing it as part of a code extraction tool, presenting a case study and evaluating the approach and tool against a set of established criteria for program comprehension tools.
LanguageEnglish
Title of host publicationProceedings of the 13th International Workshop on Program Comprehension (IWPC'05)
Place of PublicationUSA
Number of pages11
Publication statusPublished - 2005

Fingerprint

Computer software maintenance
Software engineering

Keywords

  • slicing
  • hammock graphs
  • behavioural comprehension
  • object-oriented programming

Cite this

Walkinshaw, N., Roper, M., & Wood, M. (2005). Understanding object-oriented source code from the behavioural perspective. In Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05) USA.
Walkinshaw, N. ; Roper, M. ; Wood, M. / Understanding object-oriented source code from the behavioural perspective. Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05). USA, 2005.
@inbook{bae687adf8f04d79b75cb82793e61396,
title = "Understanding object-oriented source code from the behavioural perspective",
abstract = "Comprehension is a key activity that underpins a variety of software maintenance and engineering tasks. The task of understanding object-oriented systems is hampered by the fact that the code segments that are related to a user-level function tend to be distributed across the system. We introduce a tool-supported code extraction technique that addresses this issue. Given a minimal amount of information about a behavioural element of the system that is of interest (such as a use-case), it extracts a trail of the methods (and method invocations) through the system that are needed in order to achieve an understanding of the implementation of the element of interest. We demonstrate the feasibility of our approach by implementing it as part of a code extraction tool, presenting a case study and evaluating the approach and tool against a set of established criteria for program comprehension tools.",
keywords = "slicing, hammock graphs, behavioural comprehension, object-oriented programming",
author = "N. Walkinshaw and M. Roper and M. Wood",
year = "2005",
language = "English",
isbn = "0-7695-2254-8",
booktitle = "Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05)",

}

Walkinshaw, N, Roper, M & Wood, M 2005, Understanding object-oriented source code from the behavioural perspective. in Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05). USA.

Understanding object-oriented source code from the behavioural perspective. / Walkinshaw, N.; Roper, M.; Wood, M.

Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05). USA, 2005.

Research output: Chapter in Book/Report/Conference proceedingChapter

TY - CHAP

T1 - Understanding object-oriented source code from the behavioural perspective

AU - Walkinshaw, N.

AU - Roper, M.

AU - Wood, M.

PY - 2005

Y1 - 2005

N2 - Comprehension is a key activity that underpins a variety of software maintenance and engineering tasks. The task of understanding object-oriented systems is hampered by the fact that the code segments that are related to a user-level function tend to be distributed across the system. We introduce a tool-supported code extraction technique that addresses this issue. Given a minimal amount of information about a behavioural element of the system that is of interest (such as a use-case), it extracts a trail of the methods (and method invocations) through the system that are needed in order to achieve an understanding of the implementation of the element of interest. We demonstrate the feasibility of our approach by implementing it as part of a code extraction tool, presenting a case study and evaluating the approach and tool against a set of established criteria for program comprehension tools.

AB - Comprehension is a key activity that underpins a variety of software maintenance and engineering tasks. The task of understanding object-oriented systems is hampered by the fact that the code segments that are related to a user-level function tend to be distributed across the system. We introduce a tool-supported code extraction technique that addresses this issue. Given a minimal amount of information about a behavioural element of the system that is of interest (such as a use-case), it extracts a trail of the methods (and method invocations) through the system that are needed in order to achieve an understanding of the implementation of the element of interest. We demonstrate the feasibility of our approach by implementing it as part of a code extraction tool, presenting a case study and evaluating the approach and tool against a set of established criteria for program comprehension tools.

KW - slicing

KW - hammock graphs

KW - behavioural comprehension

KW - object-oriented programming

UR - http://www.program-comprehension.org/iwpc2005/

UR - http://www.cis.strath.ac.uk/research/publications/papers/strath_cis_publication_601.pdf

M3 - Chapter

SN - 0-7695-2254-8

BT - Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05)

CY - USA

ER -

Walkinshaw N, Roper M, Wood M. Understanding object-oriented source code from the behavioural perspective. In Proceedings of the 13th International Workshop on Program Comprehension (IWPC'05). USA. 2005