Finding Refactorings via Change Metrics

Demeyer, Serge; Ducasse, Stéphane; Nierstrasz, Oscar (2000). Finding Refactorings via Change Metrics. In: 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (pp. 166-177). New York NY: ACM Press 10.1145/353171.353183

[img] Text
p166-demeyer.pdf - Published Version
Restricted to registered users only
Available under License Publisher holds Copyright.

Download (121kB)

Reverse engineering is the process of uncovering the design and the design rationale from a functioning software system. Reverse engineering is an integral part of any successful software system, because changing requirements lead to implementations that drift from their original design. In contrast to traditional reverse engineering techniques -which analyse a single snapshot of a system- we focus the reverse engineering effort by determining where the implementation has changed. Since changes of object-oriented software are often phrased in terms of refactorings, we propose a set of heuristics for detecting refactorings by applying lightweight, object-oriented metrics to successive versions of a software system. We validate our approach with three separate case studies of mature object-oriented software systems for which multiple versions are available. The case studies suggest that the heuristics support the reverse engineering process by focusing attention on the relevant parts of a software system.

Item Type:

Conference or Workshop Item (Paper)

Division/Institute:

08 Faculty of Science > Institute of Computer Science (INF)
08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG) [discontinued]

UniBE Contributor:

Ducasse, Stephane, Nierstrasz, Oscar

Subjects:

000 Computer science, knowledge & systems
500 Science > 510 Mathematics

ISBN:

1-58113-200-X

Publisher:

ACM Press

Language:

English

Submitter:

Anja Ebeling

Date Deposited:

11 Dec 2017 14:36

Last Modified:

11 Apr 2024 16:12

Publisher DOI:

10.1145/353171.353183

Additional Information:

Also in ACM SIGPLAN Notices 35 (10)

BORIS DOI:

10.7892/boris.104436

URI:

https://boris.unibe.ch/id/eprint/104436

Actions (login required)

Edit item Edit item
Provide Feedback