The Java system dependence graph

N. Walkinshaw, M. Roper, M. Wood

Research output: Contribution to conferencePaper

40 Citations (Scopus)

Abstract

The Program Dependence Graph was introduced by Ottenstein and Ottenstein in 1984 [14]. It was suggested to be a suitable internal program representation for monolithic programs, for the purpose of carrying out certain software engineering operations such as slicing and the computation of program metrics. Since then, Horwitz et al. have introduced the multi-procedural equivalent System Dependence Graph [9]. Many authors have proposed object-oriented dependence graph construction approaches [11, 10, 20, 12]. Every approach provides its own benefits, some of which are language specific. This paper is based on Java and combines the most important benefits from a range of approaches. The result is a Java System Dependence Graph, which summarises the key benefits offered by different approaches and adapts them (if necessary) to the Java language.

Conference

ConferenceProceedings of Source Code Analysis and Manipulation (SCAM'03)
CityAmsterdam, The Netherlands
Period26/09/0327/09/03

Fingerprint

Software engineering

Keywords

  • program dependence graph
  • Java
  • data flow graphs
  • program slicing
  • object oriented programming
  • software metrics

Cite this

Walkinshaw, N., Roper, M., & Wood, M. (2003). The Java system dependence graph. 55-64. Paper presented at Proceedings of Source Code Analysis and Manipulation (SCAM'03), Amsterdam, The Netherlands, . https://doi.org/10.1109/SCAM.2003.1238031
Walkinshaw, N. ; Roper, M. ; Wood, M. / The Java system dependence graph. Paper presented at Proceedings of Source Code Analysis and Manipulation (SCAM'03), Amsterdam, The Netherlands, .9 p.
@conference{bb5e3785bd5a456d958f18aa49faf892,
title = "The Java system dependence graph",
abstract = "The Program Dependence Graph was introduced by Ottenstein and Ottenstein in 1984 [14]. It was suggested to be a suitable internal program representation for monolithic programs, for the purpose of carrying out certain software engineering operations such as slicing and the computation of program metrics. Since then, Horwitz et al. have introduced the multi-procedural equivalent System Dependence Graph [9]. Many authors have proposed object-oriented dependence graph construction approaches [11, 10, 20, 12]. Every approach provides its own benefits, some of which are language specific. This paper is based on Java and combines the most important benefits from a range of approaches. The result is a Java System Dependence Graph, which summarises the key benefits offered by different approaches and adapts them (if necessary) to the Java language.",
keywords = "program dependence graph, Java, data flow graphs, program slicing, object oriented programming, software metrics",
author = "N. Walkinshaw and M. Roper and M. Wood",
year = "2003",
month = "9",
day = "26",
doi = "10.1109/SCAM.2003.1238031",
language = "English",
pages = "55--64",
note = "Proceedings of Source Code Analysis and Manipulation (SCAM'03) ; Conference date: 26-09-2003 Through 27-09-2003",

}

Walkinshaw, N, Roper, M & Wood, M 2003, 'The Java system dependence graph' Paper presented at Proceedings of Source Code Analysis and Manipulation (SCAM'03), Amsterdam, The Netherlands, 26/09/03 - 27/09/03, pp. 55-64. https://doi.org/10.1109/SCAM.2003.1238031

The Java system dependence graph. / Walkinshaw, N.; Roper, M.; Wood, M.

2003. 55-64 Paper presented at Proceedings of Source Code Analysis and Manipulation (SCAM'03), Amsterdam, The Netherlands, .

Research output: Contribution to conferencePaper

TY - CONF

T1 - The Java system dependence graph

AU - Walkinshaw, N.

AU - Roper, M.

AU - Wood, M.

PY - 2003/9/26

Y1 - 2003/9/26

N2 - The Program Dependence Graph was introduced by Ottenstein and Ottenstein in 1984 [14]. It was suggested to be a suitable internal program representation for monolithic programs, for the purpose of carrying out certain software engineering operations such as slicing and the computation of program metrics. Since then, Horwitz et al. have introduced the multi-procedural equivalent System Dependence Graph [9]. Many authors have proposed object-oriented dependence graph construction approaches [11, 10, 20, 12]. Every approach provides its own benefits, some of which are language specific. This paper is based on Java and combines the most important benefits from a range of approaches. The result is a Java System Dependence Graph, which summarises the key benefits offered by different approaches and adapts them (if necessary) to the Java language.

AB - The Program Dependence Graph was introduced by Ottenstein and Ottenstein in 1984 [14]. It was suggested to be a suitable internal program representation for monolithic programs, for the purpose of carrying out certain software engineering operations such as slicing and the computation of program metrics. Since then, Horwitz et al. have introduced the multi-procedural equivalent System Dependence Graph [9]. Many authors have proposed object-oriented dependence graph construction approaches [11, 10, 20, 12]. Every approach provides its own benefits, some of which are language specific. This paper is based on Java and combines the most important benefits from a range of approaches. The result is a Java System Dependence Graph, which summarises the key benefits offered by different approaches and adapts them (if necessary) to the Java language.

KW - program dependence graph

KW - Java

KW - data flow graphs

KW - program slicing

KW - object oriented programming

KW - software metrics

U2 - 10.1109/SCAM.2003.1238031

DO - 10.1109/SCAM.2003.1238031

M3 - Paper

SP - 55

EP - 64

ER -

Walkinshaw N, Roper M, Wood M. The Java system dependence graph. 2003. Paper presented at Proceedings of Source Code Analysis and Manipulation (SCAM'03), Amsterdam, The Netherlands, . https://doi.org/10.1109/SCAM.2003.1238031