A Fresh Perspective on Measuring Complexity in Object-Oriented Software

H. A. N. Nikeshala · 2024

The measurement of software complexity is a critical component in the development of modern software systems, directly influencing maintainability, scalability, and reliability. As software projects grow in complexity and scale, the need for effective complexity management becomes increasingly vital. This paper contributes to the body of knowledge by introducing the Aggregated Weighted Complexity (AWC) metric, a novel and comprehensive tool designed to evaluate software complexity in object-oriented programming. The AWC metric is significant in that it integrates multiple dimensions of complexity-structural, data, control, systemic, and cognitive-thereby offering a holistic assessment that addresses the multifaceted nature of software systems. The potential impact of the AWC metric is substantial. By offering a detailed and actionable measure of complexity, the metric helps in reducing technical debt, improving code quality, and fostering sustainable development practices. It encourages the adoption of best practices in concurrency management, exception handling, and memory management, all of which are crucial for developing reliable and efficient software systems. Future research will focus on empirically validating the AWC metric across diverse programming languages and development frameworks. Additionally, there is significant potential for integrating advanced technologies such as artificial intelligence and machine learning to enhance the metric's predictive capabilities. Expanding the applicability of the AWC metric to include emerging programming paradigms will further broaden its utility and relevance, ensuring it remains a vital tool for complexity management in modern software engineering.

Read the paper · More papers on PaperTik