An Evaluation of Maintainability of Aspect-Oriented Systems: a Practical Approach
نویسندگان
چکیده
Maintenance of software systems is becoming major concern for software developers and users. In software projects/products, where software changes/updates are frequently required to improve software quality, maintainability is an important characteristic of ISO 9126 quality standard to evaluate. Analyzability, changeability, stability, and testability are sub attributes/characteristics of maintainability in ISO 9126. In this paper, changeability is measured by making changes at code level of an AspectOriented (AO) system. The approach taken to evaluate the changeability of an AO system is to compute the impact of changes made to modules of the system. Some projects in aspect-oriented programming (AOP) language, AspectJ, have been taken for testing. The results suggest that the AO system can easily absorb changes and AO design metrics can be used as indicators of changeability as well as of maintainability. The results also suggest that a code level change in AO systems not always cause less change impact to other modules than a code level change in Object-Oriented (OO) systems.
منابع مشابه
مروری نظاممند بر مهندسی نرمافزار جنبهگرا: گامها، روشها و چالشها
Aspect-oriented engineering has been introduced as a new development approach based on modularization in order to increase the maintainability and reusability of software. Aspect-oriented software engineering uses the concept of aspect to modularize crosscutting concerns. Today, this approach is considered in the both research and industrial environments. Different methods has been proposed for...
متن کاملMaintainability Dynamic Metrics Data Collection Based on Aspect-oriented Technology
The increase dependence on software aspects has led the society to emphasize the importance of software quality and metrics. At present there are two categories of quality metrics; dynamic and static. Although dynamic metrics can provide a clearer insight into the software quality issue; it is observed that static metrics are often used for such a purpose. This is due mainly to the technical di...
متن کاملAspect Oriented Program Design in Distributed Application
Aspect Oriented Programming is changing the way software is developed in various domains of computing and software Engineering. In this project we discuss the main characteristics of Aspect oriented program (AOP) with a particular focus on distributed systems. Our experiments support the hypothesis that the use of Aspect oriented program will result in a better separation of concerns and thus i...
متن کاملDwarf Frankenstein is still in your memory: tiny code reuse attacks
Code reuse attacks such as return oriented programming and jump oriented programming are the most popular exploitation methods among attackers. A large number of practical and non-practical defenses are proposed that differ in their overhead, the source code requirement, detection rate and implementation dependencies. However, a usual aspect among these methods is consideration of the common be...
متن کاملA Fuzzy Approach for Evaluation of Maintainability of Object Oriented Software System
The demand for efficient software system is increasing day by day. Maintainability is considered as an important quality factor for developing the efficient software system. Recent trends show that mostly software systems are using object-oriented technique to develop the quality software products. Object-oriented approach enhances the maintainability of software system. In literature there are...
متن کامل