Calculating Mccabe's Cyclomatic Complexity Metric And Its Effect On The Quality Aspects Of Software
Marwa Najm Abd Jader, Riyadh Zaghlool Mahmood
Most software developers aims at having a high-quality software that is easily maintainable, easily understandable, well structured, reliable, etc. Measuring software complexity is quite important as high complexity has been identified to be the reason behind difficult understanding and reading and problematic changes in the future. Added to that, it has been the source of defects and poor software quality in the present time. Accordingly, high complexity entails the presence of serious faults in the software and duly higher costs to maintain and fix. Software complexity metrics determine the improvement of software quality and project controllability to a large extent. In this work, we have calculated the software complexity metric (McCabe's Cyclomatic Complexity (CC)). Simplifying testing by guaranteeing the execution of at least one statement during testing. That is to say, the number of test cases will be equal to the Cyclomatic Complexity of the program. Such information is important for testing. Identifying reliability risk level, testability level; and cost/effort so as to maintain (maintenance risk level) by depending on Cyclomatic Complexity CC. Also, identifying Bad fix probability of an error that is unintentionally set into a program at the time of fixing a previous error, or while maintaining a code. As the complexity of the software increases, the probability to introduce new errors also increases. Finally, we have explained the results which are under discussion by specific tables and figures to illustrate the value and information of the metric in detail.
Software Complexity Metrics, CC Metric, Cyclomatic Complexity, McCabe's Cyclomatic Complexity, Quality Attributes, CC number, Software Quality.
Calculating Mccabe's Cyclomatic Complexity Metric And Its Effect On The Quality Aspects Of Software. Marwa Najm Abd Jader, Riyadh Zaghlool Mahmood. 2018. IJIRCT, Volume 3, Issue 5. Pages 10-22. https://www.ijirct.org/viewPaper.php?paperId=IJIRCT1709003