遇见数据集

Change Proneness Prediction Data Set

收藏
Zenodo2020-07-29 更新2026-05-25 收录
数据链接:
官方服务:

资源简介:

Change Proneneness Prediction Data Set General Information Data Set Characteristics: Multivariate Associated Tasks: Classification Number of Instances: 4183 Number of Attributes: 8 Missing Values? No Area: Software Engineering Source Cristiano Sousa Melo Matheus Mayron Lima da Cruz Antônio Diogo Forte Martins Tales Matos José Maria da Silva Monteiro Filho Javam de Castro Machado Data Set Information The data set of this work is generated from the backend source code of a WEB application started in 2013, and until 2018 were collected 8 releases to analyze change-prone classes The dependent variable "will change" has obtained according to [1] The dependent variable "will change" is imbalanced, containing 3871 "not change" (0) labels and 312 "will change" (1) label Attribute Information <strong>Path:</strong> It is the ID of a class. <strong>CBO (Coupling Between Object) [2]:</strong> A class is coupled to another one if it used its member functions and/or instance variables. CBO provides the number of classes to which a given class is coupled. Range: 0 - 162 <strong>CC (Cyclomatic Complexity) [3]:</strong> It is a software metric used to indicate the complexity of a program. It is a quantitative measure of the number of linearly independent paths through a program's source code. Range: 0 - 488.0 <strong>DIT (Depth of Inheritance Tree) [2]:</strong> It is defined as the maximum depth of the inheritance graph of each class. Range: 0 - 7 <strong>LCOM (Lack of Cohesion on Methods) [2]:</strong> This is the number of pairs of member functions without shared instance variables, minus the number of pairs of members functions with shared instance variables. Range: 0 - 1 <strong>LOC:</strong> Number of lines of codes. Imports and comments are not included. Range: 0 - 1369 <strong>NOC (Number Of Children) [2]:</strong> It is the number of direct descendants for each class. Range: 0 - 189 <strong>RFC (Response For a Class) [2]:</strong> This is the number of methods that can potentially be executed in response to a message received by an object of that class. Range: 0 - 413 <strong>WMC (Weighted Methods per Class) [2]:</strong> It is the number of methods of a class.Range: 0 - 56 <strong>class_frequency:</strong> It is the number of appearences that the class has through all the releases. Range: 0 - 8 <strong>will_change:</strong> It is the dependent variable, the indicator of a class change prone. <strong>number_of_changes:</strong> It is the number of changes that a class suffered through all the releases. Range: 0 - 7 <strong>change_probability:</strong> It is the number of changes divided by the class frequency. Range: 0 - 1 References [1] Lu, H., Zhou, Y., Xu, B., Leung, H., and Chen, L. (2012). The ability of object-oriented metrics to predict change-proneness: a meta-analysis. Empirical Software Engineering, 17(3) [2] S. R. Chidamber and C. F. Kemerer, "A metrics suite for object oriented design," in IEEE Transactions on Software Engineering, vol. 20, no. 6, pp. 476-493, June 1994. [3] T. J. McCabe, "A Complexity Measure," in IEEE Transactions on Software Engineering, vol. SE-2, no. 4, pp. 308-320, Dec. 1976.

# 易变更性预测数据集 ## 通用信息 数据集特征:多变量 关联任务:分类任务 实例数量:4183 属性数量:8 是否存在缺失值:否 应用领域:软件工程 ### 数据源 克里斯蒂亚诺·苏萨·梅洛(Cristiano Sousa Melo) 马泰乌斯·梅龙·利马·达·克鲁兹(Matheus Mayron Lima da Cruz) 安东尼奥·迪奥戈·福特·马丁斯(Antônio Diogo Forte Martins) 塔莱斯·马托斯(Tales Matos) 何塞·玛丽亚·达·席尔瓦·蒙特罗·菲略(José Maria da Silva Monteiro Filho) 雅万·德·卡斯特罗·马查多(Javam de Castro Machado) ## 数据集说明 本数据集源自2013年启动的某Web应用的后端源代码,截至2018年共收集8个版本以分析易变更类。 因变量“是否会变更”的标注依据文献[1]获取。 该因变量存在类别不平衡问题:其中“不会变更”(标签值0)共3871条,“会变更”(标签值1)共312条。 ## 属性说明 1. **Path**:类的唯一标识符(ID)。 2. **CBO(Coupling Between Object,对象间耦合度)**:若一个类使用了另一个类的成员函数或实例变量,则二者存在耦合。CBO用于衡量给定类的耦合类总数,取值范围:0~162。 3. **CC(Cyclomatic Complexity,圈复杂度)**:用于衡量程序复杂度的软件度量指标,定量表示程序源代码中线性独立路径的数量,取值范围:0~488.0。 4. **DIT(Depth of Inheritance Tree,继承树深度)**:定义为每个类的继承图的最大深度,取值范围:0~7。 5. **LCOM(Lack of Cohesion on Methods,方法内聚缺失度)**:指无共享实例变量的成员函数对数量减去存在共享实例变量的成员函数对数量,取值范围:0~1。 6. **LOC**:代码行数(不包含导入语句与注释),取值范围:0~1369。 7. **NOC(Number Of Children,直接子类数量)**:指每个类的直接子类总数,取值范围:0~189。 8. **RFC(Response For a Class,类响应集)**:指接收某类对象的消息后,可被执行的潜在方法总数,取值范围:0~413。 9. **WMC(Weighted Methods per Class,类加权方法数)**:指类中包含的方法总数,取值范围:0~56。 10. **class_frequency**:该类在所有版本中出现的总次数,取值范围:0~8。 11. **will_change**:因变量,用于标识类是否易变更。 12. **number_of_changes**:该类在所有版本中经历的变更总次数,取值范围:0~7。 13. **change_probability**:变更概率,即变更次数与类出现频率的比值,取值范围:0~1。 ## 参考文献 [1] Lu, H., Zhou, Y., Xu, B., Leung, H., and Chen, L. (2012). The ability of object-oriented metrics to predict change-proneness: a meta-analysis. *Empirical Software Engineering*, 17(3) [2] S. R. Chidamber and C. F. Kemerer, "A metrics suite for object oriented design," in *IEEE Transactions on Software Engineering*, vol. 20, no. 6, pp. 476-493, June 1994. [3] T. J. McCabe, "A Complexity Measure," in *IEEE Transactions on Software Engineering*, vol. SE-2, no. 4, pp. 308-320, Dec. 1976.

提供机构:
Zenodo
创建时间:
2019-06-13
二维码
社区交流群
二维码
科研交流群
商业服务