遇见数据集

GROOT (chanGe pROneness Open daTaset)

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

资源简介:

GROOT (chanGe pROneness Open daTaset) 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 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>instanceID</strong>: It is responsible for identifying each instance of the dataset uniquely. <strong>classID</strong>: This column indicates the class from which the information of the row was extracted. It is a value obtained by hashing the name of the class. <strong>releaseID</strong>: This column indicates the release from which the information of the row was extracted. <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>number_of_changes:</strong> It is the number of changes that a class suffered through all the releases. Range: 0 - 7 <strong>will_change:</strong> It is the dependent variable, the indicator of a class change prone. <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.

GROOT(变更倾向性开放数据集,Change Proneness Open Dataset)通用信息 数据集特征:多变量 关联任务:分类 实例数量:4183 属性数量:8 是否含缺失值:否 应用领域:软件工程 数据来源:Cristiano Sousa Melo、Matheus Mayron Lima da Cruz、Antônio Diogo Forte Martins、José Maria da Silva Monteiro Filho、Javam de Castro Machado ## 数据集说明 本研究的数据集源自2013年启动的一款Web应用的后端源代码,截至2018年共收集了8个软件版本以分析易变更类。因变量“将发生变更”的标注依据文献[1]获得。该因变量存在类别不平衡问题:共包含3871个“未变更(0)”标签与312个“将变更(1)”标签。 ## 属性说明 1. **实例标识符(instanceID)**:用于唯一标识数据集中的每个实例。 2. **类标识符(classID)**:该列表示提取当前行信息所属的类,其值为对类名进行哈希运算得到的结果。 3. **版本标识符(releaseID)**:该列表示提取当前行信息所属的软件版本。 4. **对象间耦合度(Coupling Between Object, CBO)[2]**:若一个类使用了另一个类的成员函数或实例变量,则二者存在耦合。CBO用于衡量给定类的耦合类总数,取值范围为0~162。 5. **环形复杂度(Cyclomatic Complexity, CC)[3]**:这是一种用于衡量程序复杂度的软件度量指标,定量表示程序源代码中线性独立路径的数量,取值范围为0~488.0。 6. **继承树深度(Depth of Inheritance Tree, DIT)[2]**:定义为每个类的继承图的最大深度,取值范围为0~7。 7. **方法内聚缺失度(Lack of Cohesion on Methods, LCOM)[2]**:该指标为无共享实例变量的成员函数对数量,减去存在共享实例变量的成员函数对数量,取值范围为0~1。 8. **代码行数(LOC)**:指不包含导入语句与注释的源代码总行数,取值范围为0~1369。 9. **子类数量(Number Of Children, NOC)[2]**:指每个类的直接子类的数量,取值范围为0~189。 10. **类响应集(Response For a Class, RFC)[2]**:指当该类的对象接收到消息时,可能被执行的方法总数,取值范围为0~413。 11. **类加权方法数(Weighted Methods per Class, WMC)[2]**:指一个类所包含的方法总数,取值范围为0~56。 12. **类出现频次(class_frequency)**:指该类在所有软件版本中出现的总次数,取值范围为0~8。 13. **变更次数(number_of_changes)**:指该类在所有软件版本中经历的总变更次数,取值范围为0~7。 14. **是否易变更(will_change)**:为因变量,用于标识类是否具有变更倾向性。 15. **变更概率(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
二维码
社区交流群
二维码
科研交流群
商业服务