2010
DOI: 10.1016/j.jss.2009.08.011
|View full text |Cite
|
Sign up to set email alerts
|

Class movement and re-location: An empirical study of Java inheritance evolution

Abstract: Inheritance is a fundamental feature of the Object-Oriented (OO) paradigm. It is used to promote extensibility and reuse in OO systems. Understanding how systems evolve, and specifically, trends in the movement and re-location of classes in OO hierarchies can help us understand and predict future maintenance effort. In this paper, we explore how and where new classes were added as well as where existing classes were deleted or moved across inheritance hierarchies from multiple versions of four Java systems. We… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

1
3
0

Year Published

2013
2013
2021
2021

Publication Types

Select...
4
2
1

Relationship

0
7

Authors

Journals

citations
Cited by 13 publications
(4 citation statements)
references
References 22 publications
1
3
0
Order By: Relevance
“…The fifth column indicates the system problem domain. The number of systems, number of versions and the range of domains analysed are comparable to related work [12,13,17]. The range of system sizes is in keeping with system sizes found by Radjenović et al in a review of code-survey research -where less than 200 classes was categorised as a small system, 200-1000 classes medium sized, and 1000 or greater as large [14].…”
Section: Study Corpussupporting
confidence: 84%
See 1 more Smart Citation
“…The fifth column indicates the system problem domain. The number of systems, number of versions and the range of domains analysed are comparable to related work [12,13,17]. The range of system sizes is in keeping with system sizes found by Radjenović et al in a review of code-survey research -where less than 200 classes was categorised as a small system, 200-1000 classes medium sized, and 1000 or greater as large [14].…”
Section: Study Corpussupporting
confidence: 84%
“…This had the tendency to increase the shallow breadth of hierarchies through time. In related research [13], Nasseri et al found that most of the inheritance changes were again in shallow areas of the hierarchies (level three or shallower) and that many of the changes led to a 'squashing' of the hierarchies.…”
Section: Related Workmentioning
confidence: 99%
“…shown that DIT values tend to be generally low and that, if anything, inheritance hierarchies will tend to collapse over time (becoming shallower) rather than deeper [56,52,57]. Typically, this leads to systems with low median DIT values of one or two, as Table 7 shows.…”
Section: Ditmentioning
confidence: 95%
“…In their comparison analysis, the authors also suggested which type of refactoring is required. In an another empirical study of JAVA inheritance evaluation, Nasseri et al [12] found that larger and highly coupled classes were less cohesive and more frequently moved than smaller and less coupled classes. Kaczmarek and Kucharski [13] demonstrated how to estimate size and efforts for JAVA based applications.…”
Section: Introductionmentioning
confidence: 99%