Problems relating to modularity result in the under-performance of the object-oriented software development paradigm in a number of areas. Aspect-oriented software development (AOSD) is a relatively new technology that extends modularisation capabilities in computer software. In particular, crosscutting concerns can be modularised. A crosscutting concern arises in a software system when the implementation of a system requirement impacts on more than one implementation module. Such a property hinders the ease with which the software can evolve. With AOSD techniques, the ability to modularise crosscutting concerns results in software that exhibits greater evolvability, as it enhances changeability, pluggability and comprehensibility. This paper reports on the impact on system evolvability arising from the re-implementation of an existing object-oriented system using AOSD techniques. In particular, AspectJ is used, which is an aspect-oriented extension to JavaTM. We found that the use of AOSD techniques and AspectJTM can greatly enhance the modularisation of certain concerns, leading to enhanced evolvability properties. However, for other types of concern the effects on evolvability were less positive. The difference between the two types of concerns related to the extent to which they could actually be modularised using AspectJ.
更多
查看译文
关键词
Exception Handling,Implementation Module,Connection Variable,Database Connection,Transaction Class