A Tool Chain Approach to Source Lines Of Code Estimation Using Petri Nets and Directed Graphs Open Access
Downloadable ContentDownload PDF
A Tool Chain Approach to Source Lines Of Code Estimation Using Petri Nets and Directed Graphs presents the development and demonstration of a novel tool-chain using known techniques with the intent of supporting more accurate source line of code (SLOC) predictions to improve software level of effort estimates. Data from U.S. Government Agency software repositories building high availability and high reliability software products empirically shows that McCabe's Cyclomatic Complexity (CC) Number has a linear relationship with SLOC and can therefore be used to predict SLOC. The research also empirically illustrates that CC and SLOC are commutative, in the sense that one can be used to predict the other for software projects in highly structured software development environments. The tool-chain begins with requirements documents, from which either Unified Modeling Language (UML) or Petri net models are produced, which are used to derive the CC. The CC is then used to calculate a reasonable estimate of software size for a software project, given knowledge of the software team's performance and a medium Capability Maturity Model/ Capability Maturity Model Integration (CMM/CMMI) level with strictly enforced software coding standard operating procedures (SOPs). This technique will be most appropriate for code produced under high CMMI environments, such as critical safety code, and may not be effective or be appropriate under other conditions. The results show that the tool-chain can be used to accurately model software systems and provide additional insight into the software level of effort.