DOI: 10.5281/zenodo.3345899
title: GROOT (chanGe pROneness Open daTaset)

description: 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.