Studying the chaos of code development
Ahmed E. Hassan, Richard C. Holt · 2004
As large software systems evolve, controlling their complex-ity is a major challenge for many companies, as they strive to deliver future releases on time and within budget. Several source code based metrics have been proposed to assist in determining the complexity of code to help control develop-ment costs and outcome. In this paper we offer a novel view on the problem of com-plexity in software. We present a complexity metric that is based on the process followed by the developers to produce the code instead of on the code directly. We conjecture that a chaotic/complex development process negatively affect its outcome, the source code. We validate our hypothesis em-pirically using data derived from the development process history of six large open source projects (three operating systems: NetBSD, FreeBSD, OpenBSD; a window manager: KDE; an office productivity suite: KOffice; and a database management system: Postgres). 1