An Empirical Study of Java System Evolution at the Method Level

E. Nasseri, S. Counsell
{"title":"An Empirical Study of Java System Evolution at the Method Level","authors":"E. Nasseri, S. Counsell","doi":"10.1109/SERA.2009.12","DOIUrl":null,"url":null,"abstract":"Exploring the evolution of systems can provide valuable insights into the traits of developers and inform our understanding of system dynamics. While we usually expect an object-oriented system to grow (in classes) as it ages, what are not so obvious are patterns in the evolution of specific class features. In this paper, we explore empirical traits of four Java open-source systems using data extracted by two tools and informed by a previous study of inheritance depth evolution. We analyse evolution at a lower level of granularity given by the ‘methods’ of a class on an incremental (change per version) basis rather than absolute class size per version. Evolution at a finer-grain can identify trends not possible on a class-wide basis; the approach thus represents a ‘white-box’ view of the investigation of evolutionary forces. Our analysis also allowed direct comparison with a set of low-level refactorings extracted by an automated tool in a previous study. Scrutiny of trends in methods was further motivated by the fact that the vast majority of refactorings apply not at the class level but at the method level.","PeriodicalId":333607,"journal":{"name":"2009 Seventh ACIS International Conference on Software Engineering Research, Management and Applications","volume":"48 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2009-12-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"9","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2009 Seventh ACIS International Conference on Software Engineering Research, Management and Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SERA.2009.12","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 9

Abstract

Exploring the evolution of systems can provide valuable insights into the traits of developers and inform our understanding of system dynamics. While we usually expect an object-oriented system to grow (in classes) as it ages, what are not so obvious are patterns in the evolution of specific class features. In this paper, we explore empirical traits of four Java open-source systems using data extracted by two tools and informed by a previous study of inheritance depth evolution. We analyse evolution at a lower level of granularity given by the ‘methods’ of a class on an incremental (change per version) basis rather than absolute class size per version. Evolution at a finer-grain can identify trends not possible on a class-wide basis; the approach thus represents a ‘white-box’ view of the investigation of evolutionary forces. Our analysis also allowed direct comparison with a set of low-level refactorings extracted by an automated tool in a previous study. Scrutiny of trends in methods was further motivated by the fact that the vast majority of refactorings apply not at the class level but at the method level.
方法层次上Java系统演化的实证研究
探索系统的演化可以为开发人员的特征提供有价值的见解,并告知我们对系统动力学的理解。虽然我们通常期望面向对象系统随着年龄的增长而增长(在类中),但不那么明显的是特定类特性演变中的模式。在本文中,我们利用两种工具提取的数据,并根据先前的继承深度进化研究,探索了四个Java开源系统的经验特征。我们以增量(每个版本的变化)为基础,而不是以每个版本的绝对类大小为基础,在较低粒度级别上分析演化。更细微的进化可以识别出在整个阶级基础上不可能出现的趋势;因此,这种方法代表了研究进化力量的一种“白盒”观点。我们的分析还允许与先前研究中由自动化工具提取的一组低级重构进行直接比较。对方法趋势的仔细研究进一步受到这样一个事实的推动,即绝大多数重构不是应用于类级别,而是应用于方法级别。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信