Applying and Evaluating Halstead's Complexity Metrics and Maintainability Index for RPG [chapter]

Zoltán Tóth
2017 Lecture Notes in Computer Science  
Although RPG is an older programming language for developing general-purpose software systems, it is still widely used by many companies due to the many legacy modules written in RPG that are still in use. IBM's RPG programming language has continuously evolved with the new demands. RPG has become a high-level programming language, however its original purpose was only to replicate punched card processing. Whilst RPG went through a bunch of improvements, the methodologies related to code
more » ... assurance for RPG hardly come along. RPG is strongly applied for business applications, yet there is a lack of appropriate research studies and tools in this field. In this study, we first propose an application of Halstead's complexity metrics for RPG/400 and RPG IV. Furthermore, we investigate the usefulness and the impact of Halstead's complexity metrics in RPG programs. We examine the Halstead's complexity metrics and four Maintainability Index metrics in details to get more insight about how they correlate with other software product metrics and how could we use them to improve the quality of RPG software systems. To do so, we used Principal Component Analysis (PCA) to show the dimensionality and behavior of these metrics. We found that Halstead's complexity metrics form a strong metric group that can be used to give more details about RPG software systems.
doi:10.1007/978-3-319-62404-4_43 fatcat:3jkev64r5fbvjgcv7iquqbnwqe