Software development is a multifaceted process. It is challenging to define or measure software qualities and quantities and to determine a valid and concurrent measurement metric. In software development, a metric is the measurement of a particular characteristic of a program's performance or efficiency.The goal of software metrics is to improve understanding of a product or process. Aspect Oriented Programming (AOP) extends the traditional object-oriented programming (OOP) model to improve code reuse across different object hierarchies. AOP can be used with object oriented programming. AspectJ is an implementation of aspect-oriented programming for Java. Software maintenance is the most desired, but most elusive and difficult task in software engineering. The cost of maintenance is as high as 60% to 80% of the total cost of the software. So, plenty of this project are going on in software maintenance. Though, Aspect-oriented paradigm has made it easier, it remains the critical hotspot of research. One way of grappling with the maintenance problem, is to use the complexity metrics. Many studies were made to understand the relationship among complexity metrics, cognition, and maintenance. This paper wrestles with four newly proposed object-oriented cognitive complexity metrics to develop maintenance effort prediction models through various statistical techniques.Empirical study designs are made with ANOVA and experimented.Discussion on results proves the maintenance effort prediction models are more robust, more accurate, and can be employed to estimate the maintenance effort.
Read full abstract