Title: Mining software repositories for empirical validation of laws of software evolution for Java projects

Authors: Arvinder Kaur; Vidhi Vig

Addresses: Guru Gobind Singh Indraprastha University, Sec 16-C, Dwarka, New Delhi 78, India ' Guru Gobind Singh Indraprastha University, Sec 16-C, Dwarka, New Delhi 78, India

Abstract: Mining of software repositories for the study of software evolution and its laws have been studied extensively for procedural languages like C but very few studies have verified these laws for object-oriented (OO) languages like Java despite the fact both follow a completely different paradigm. Also, most of the earlier studies done for Java projects do not employ statistical tests to prove or refute these laws. This paper attempts to statistically validate the Lehman's eight laws of software evolution for 11 Java projects containing 493 official releases. The study validates three: law of continuing change, self-regulation and continuing growth, out of the eight laws of software evolution. The study found that statistical tests tend to refute the law even if they have passed graphically indicating the importance of these tests and suggests reinstatement or addition of new laws with precise definitions and metrics for better analysis of the laws.

Keywords: software evolution; open source; software engineering; software metrics; software maintenance; repository mining; software repositories; Java projects; data mining; continuing change; self-regulation; continuing growth.

DOI: 10.1504/IJCSYSE.2016.079003

International Journal of Computational Systems Engineering, 2016 Vol.2 No.3, pp.155 - 173

Received: 28 Dec 2015
Accepted: 11 Mar 2016

Published online: 08 Sep 2016 *

Full-text access for editors Full-text access for subscribers Purchase this article Comment on this article