loading...
Understanding Open Source Software through Software Archaeology: The Case of Nethack
Columbia, Maryland April 24-April 28
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/SEW.2006.3730th Annual IEEE/NASA Software Engine ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Melissa M. Simmons, Penn State University, USA
Pam Vercellone-Smith, Penn State University, USA
Phillip A. Laplante, Penn State University, USA
In this study open source software was examined from an archaeological perspective. The objective: to explore the evolution of a long-lived open source project with the intention of learning how code evolution has progressed over time. This investigation provides a case study of Nethack, an enormously popular open source game that has been in development for more than a decade. The Goal Question Metric approach was employed to derive measurement goals for the evaluation of open source software (OSS) evolution in Nethack. According to Lehman?s laws, the incremental growth size of successive releases tends to decline during the active life of an evolving program. Our results demonstrate that the evolution patterns observed for Nethack do not consistently conform to Lehman?s laws. The growth in Nethack?s tarball distribution size, as well as lines of code, exhibited a linear increase in growth in this investigation. Additionally, Lehman?s laws dictate that the complexity of a system will increase as it ages. Interestingly, in Nethack, the McCabe cyclomatic complexity was found to decrease with successive releases while the Halstead complexity increased. These results suggest that while the structure complexity of Nethack declined with successive releases, the complexity of calculational logic increased. These findings raise questions concerning the evolution of other OSS applications.
Citation:
Melissa M. Simmons, Pam Vercellone-Smith, Phillip A. Laplante, "Understanding Open Source Software through Software Archaeology: The Case of Nethack," sew, pp.47-58, 30th Annual IEEE/NASA Software Engineering Workshop SEW-30 (SEW'06), 2006
Usage of this product signifies your acceptance of the Terms of Use.