Empirical investigation of SEA-Based dependence cluster properties

A. Beszédes, Lajos Schrettner, Béla Csaba, Tamás Gergely, Judit Jász, T. Gyimóthy

Research output: Chapter in Book/Report/Conference proceedingConference contribution

3 Citations (Scopus)

Abstract

Dependence clusters are (maximal) groups of source code entities that each depend on the other according to some dependence relation. Such clusters are generally seen as detrimental to many software engineering activities, but their formation and overall structure are not well understood yet. In a set of subject programs from moderate to large sizes, we observed frequent occurrence of dependence clusters using Static Execute After (SEA) dependences (SEA is a conservative yet efficiently computable dependence relation on program procedures). We identified potential linchpins inside the clusters; these are procedures that can primarily be made responsible for keeping the cluster together. Furthermore, we found that as the size of the system increases, it is more likely that multiple procedures are jointly responsible as sets of linchpins. We also give a heuristic method based on structural metrics for locating possible linchpins as their exact identification is unfeasible in practice, and presently there are no better ways than the brute-force method. We defined novel metrics and comparison methods to be able to demonstrate clusters of different sizes in programs.

Original languageEnglish
Title of host publicationIEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013
PublisherIEEE Computer Society
Pages1-10
Number of pages10
ISBN (Print)9781467357395
DOIs
Publication statusPublished - 2013
Event2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013 - Eindhoven, Netherlands
Duration: Sep 22 2013Sep 23 2013

Other

Other2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013
CountryNetherlands
CityEindhoven
Period9/22/139/23/13

Fingerprint

Heuristic methods
Software engineering

Keywords

  • dependence clusters
  • linchpins and linchpin sets
  • Source code dependence analysis
  • Static execute after

ASJC Scopus subject areas

  • Software

Cite this

Beszédes, A., Schrettner, L., Csaba, B., Gergely, T., Jász, J., & Gyimóthy, T. (2013). Empirical investigation of SEA-Based dependence cluster properties. In IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013 (pp. 1-10). [6648178] IEEE Computer Society. https://doi.org/10.1109/SCAM.2013.6648178

Empirical investigation of SEA-Based dependence cluster properties. / Beszédes, A.; Schrettner, Lajos; Csaba, Béla; Gergely, Tamás; Jász, Judit; Gyimóthy, T.

IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013. IEEE Computer Society, 2013. p. 1-10 6648178.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Beszédes, A, Schrettner, L, Csaba, B, Gergely, T, Jász, J & Gyimóthy, T 2013, Empirical investigation of SEA-Based dependence cluster properties. in IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013., 6648178, IEEE Computer Society, pp. 1-10, 2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013, Eindhoven, Netherlands, 9/22/13. https://doi.org/10.1109/SCAM.2013.6648178
Beszédes A, Schrettner L, Csaba B, Gergely T, Jász J, Gyimóthy T. Empirical investigation of SEA-Based dependence cluster properties. In IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013. IEEE Computer Society. 2013. p. 1-10. 6648178 https://doi.org/10.1109/SCAM.2013.6648178
Beszédes, A. ; Schrettner, Lajos ; Csaba, Béla ; Gergely, Tamás ; Jász, Judit ; Gyimóthy, T. / Empirical investigation of SEA-Based dependence cluster properties. IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013. IEEE Computer Society, 2013. pp. 1-10
@inproceedings{bb253867e8814da2b409a9635f607348,
title = "Empirical investigation of SEA-Based dependence cluster properties",
abstract = "Dependence clusters are (maximal) groups of source code entities that each depend on the other according to some dependence relation. Such clusters are generally seen as detrimental to many software engineering activities, but their formation and overall structure are not well understood yet. In a set of subject programs from moderate to large sizes, we observed frequent occurrence of dependence clusters using Static Execute After (SEA) dependences (SEA is a conservative yet efficiently computable dependence relation on program procedures). We identified potential linchpins inside the clusters; these are procedures that can primarily be made responsible for keeping the cluster together. Furthermore, we found that as the size of the system increases, it is more likely that multiple procedures are jointly responsible as sets of linchpins. We also give a heuristic method based on structural metrics for locating possible linchpins as their exact identification is unfeasible in practice, and presently there are no better ways than the brute-force method. We defined novel metrics and comparison methods to be able to demonstrate clusters of different sizes in programs.",
keywords = "dependence clusters, linchpins and linchpin sets, Source code dependence analysis, Static execute after",
author = "A. Besz{\'e}des and Lajos Schrettner and B{\'e}la Csaba and Tam{\'a}s Gergely and Judit J{\'a}sz and T. Gyim{\'o}thy",
year = "2013",
doi = "10.1109/SCAM.2013.6648178",
language = "English",
isbn = "9781467357395",
pages = "1--10",
booktitle = "IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013",
publisher = "IEEE Computer Society",

}

TY - GEN

T1 - Empirical investigation of SEA-Based dependence cluster properties

AU - Beszédes, A.

AU - Schrettner, Lajos

AU - Csaba, Béla

AU - Gergely, Tamás

AU - Jász, Judit

AU - Gyimóthy, T.

PY - 2013

Y1 - 2013

N2 - Dependence clusters are (maximal) groups of source code entities that each depend on the other according to some dependence relation. Such clusters are generally seen as detrimental to many software engineering activities, but their formation and overall structure are not well understood yet. In a set of subject programs from moderate to large sizes, we observed frequent occurrence of dependence clusters using Static Execute After (SEA) dependences (SEA is a conservative yet efficiently computable dependence relation on program procedures). We identified potential linchpins inside the clusters; these are procedures that can primarily be made responsible for keeping the cluster together. Furthermore, we found that as the size of the system increases, it is more likely that multiple procedures are jointly responsible as sets of linchpins. We also give a heuristic method based on structural metrics for locating possible linchpins as their exact identification is unfeasible in practice, and presently there are no better ways than the brute-force method. We defined novel metrics and comparison methods to be able to demonstrate clusters of different sizes in programs.

AB - Dependence clusters are (maximal) groups of source code entities that each depend on the other according to some dependence relation. Such clusters are generally seen as detrimental to many software engineering activities, but their formation and overall structure are not well understood yet. In a set of subject programs from moderate to large sizes, we observed frequent occurrence of dependence clusters using Static Execute After (SEA) dependences (SEA is a conservative yet efficiently computable dependence relation on program procedures). We identified potential linchpins inside the clusters; these are procedures that can primarily be made responsible for keeping the cluster together. Furthermore, we found that as the size of the system increases, it is more likely that multiple procedures are jointly responsible as sets of linchpins. We also give a heuristic method based on structural metrics for locating possible linchpins as their exact identification is unfeasible in practice, and presently there are no better ways than the brute-force method. We defined novel metrics and comparison methods to be able to demonstrate clusters of different sizes in programs.

KW - dependence clusters

KW - linchpins and linchpin sets

KW - Source code dependence analysis

KW - Static execute after

UR - http://www.scopus.com/inward/record.url?scp=84891127443&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84891127443&partnerID=8YFLogxK

U2 - 10.1109/SCAM.2013.6648178

DO - 10.1109/SCAM.2013.6648178

M3 - Conference contribution

SN - 9781467357395

SP - 1

EP - 10

BT - IEEE 13th International Working Conference on Source Code Analysis and Manipulation, SCAM 2013

PB - IEEE Computer Society

ER -