Size and effort estimation for applications written in Java
The paper presents a methodology for estimation of software size and effort at early stages of software development. The research concentrates on the size estimation problem, which seems to be the weakest element of cost estimation. The methodology concerns the object-oriented technology and the Java language. Authors review current techniques of size and cost estimation to identify their strengths and weaknesses. The paper describes statistical characteristics of class and method sizes for programs written in Java. The analysis of nearly one million lines of code lead to the conclusion that the average class size and the average method size is independent from application size. This feature is useful in calculating the final application size if the number of classes is known or could be estimated during software development. The paper contains definitions of three simple models of size estimation that are based on class and method sizes. The presented approach may be easily applied as it uses data that is typically produced during early stages of software development. The experimental model was theoretically verified and analysed. Further, an independent set of applications written in Java was used to verify the correctness of the acquired equations and models. Statistical characteristics were acquired and analysed with the use of a dedicated tool that was implemented as a part of the research.
java software size estimation object oriented