Title :
An Empirical Study of Unused Design Decisions in Open Source Java Software
Author_Institution :
Dept. of Comput. Sci., Univ. of Auckland, Auckland, New Zealand
Abstract :
A recent study on how inheritance is used in open source Java software revealed a surprising number of interfaces that were neither implemented nor extended. While innocent explanations for this exist (the interfaces are part of frameworks that only clients of the frameworks implement), it does raise the question of how much "dead code\´\´ exists in applications. Dead code usually refers to code within a function that cannot be executed, but unused interfaces, and more generally unused public methods, represent dead code at the "design\´\´ level, and so can potentially have a significant impact on future maintenance costs. This paper presents a large empirical study on existence of design decisions that are unused. This study examined 100 open source Java applications. The results show a significant level of unused design decisions.
Keywords :
Java; public domain software; software maintenance; dead code; open source Java software; unused design decisions; unused interfaces; unused public methods; Application software; Computer science; Cost function; Java; Open source software; Software engineering; Software maintenance; Unused design; code analysis; empirical study; open source software;
Conference_Titel :
Software Engineering Conference, 2008. APSEC '08. 15th Asia-Pacific
Conference_Location :
Beijing
Print_ISBN :
978-0-7695-3446-6
DOI :
10.1109/APSEC.2008.30