Code quality analysis in open source software development

Abstract Proponents of open source style software development claim that better software is produced using this model compared with the traditional closed model. However, there is little empirical evidence in support of these claims. In this paper, we present the results of a pilot case study aiming: (a) to understand the implications of structural quality; and (b) to figure out the benefits of structural quality analysis of the code delivered by open source style development. To this end, we have measured quality characteristics of 100 applications written for Linux, using a software measurement tool, and compared the results with the industrial standard that is proposed by the tool. Another target of this case study was to investigate the issue of modularity in open source as this characteristic is being considered crucial by the proponents of open source for this type of software development. We have empirically assessed the relationship between the size of the application components and the delivered quality measured through user satisfaction. We have determined that, up to a certain extent, the average component size of an application is negatively related to the user satisfaction for this application.

[1]  R. E. Berry,et al.  A style analysis of C programs , 1985, CACM.

[2]  Maurizio Pighin,et al.  A Predictive Metric Based on Discriminant Statistical Analysis , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[3]  Steve McConnell,et al.  Software Engineering Principles , 1999, IEEE Software.

[4]  Susan A. Mengel,et al.  A case study of the static analysis of the quality of novice student programs , 1999, SIGCSE '99.

[5]  Les Hatton,et al.  Reexamining the Fault Density-Component Size Connection , 1997, IEEE Softw..

[6]  Shari Lawrence Pfleeger,et al.  Software metrics (2nd ed.): a rigorous and practical approach , 1997 .

[7]  Victor R. Basili,et al.  Editorial: Open Source and Empirical Software Engineering , 2001, Empirical Software Engineering.

[8]  Shiu-Kai Chin,et al.  High-confidence design for security: don't trust—verify , 1999, CACM.

[9]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[10]  Norman E. Fenton,et al.  A Critique of Software Defect Prediction Models , 1999, IEEE Trans. Software Eng..

[11]  Robin W. Whitty,et al.  Software quality assurance and measurement : a worldwide perspective , 1995 .

[12]  Greg Wilson Soapbox - Is the Open-Source Community Setting a Bad Example? , 1999, IEEE Softw..

[13]  Michael W. Godfrey,et al.  Evolution in open source software: a case study , 2000, Proceedings 2000 International Conference on Software Maintenance.

[14]  Ioannis Stamelos,et al.  Knowledge based evaluation of software systems: a case study , 2000, Inf. Softw. Technol..

[15]  Thomas Drake,et al.  Measuring Software Quality: A Case Study , 1996, Computer.

[16]  Tim O'Reilly,et al.  Lessons from open-source software development , 1999, CACM.

[17]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[18]  ShepperdMartin,et al.  An empirical investigation of an object-oriented design heuristic for maintainability , 2003 .

[19]  Eric S. Raymond,et al.  The Cathedral and the Bazaar , 2000 .

[20]  Maurice H. Halstead,et al.  Elements of software science , 1977 .

[21]  Alexis Tsoukiàs,et al.  IusWare: a methodology for the evaluation and selection of software products , 1997, IEE Proc. Softw. Eng..

[22]  Shari Lawrence Pfleeger,et al.  Software Metrics : A Rigorous and Practical Approach , 1998 .

[23]  Ioannis Stamelos,et al.  An empirical investigation of an object-oriented design heuristic for maintainability , 2003, J. Syst. Softw..

[24]  Audris Mockus,et al.  A case study of open source software development: the Apache server , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.