Font Size: a A A

Research On Aspect-Oriented Software Evolution

Posted on:2007-04-09Degree:MasterType:Thesis
Country:ChinaCandidate:J JinFull Text:PDF
GTID:2178360212480010Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
Software evolution mainly improves the systems' feature to adapt environment. It is an inevitable stage when developing any scale of software system. The key factor influencing the software evolution result is the system architecture, but the traditional programming technique is hard to make all concerns keep separated during the period of evolution, and the system architecture deteriorates continuously. Using the aspect-oriented thought to separate the extended function and modularise the crosscutting structure, can keep system architecture flexibility during the period of evolution, and resolve the problem of architecture degeneration in the continuous evolution process.First, based on the concrete analysis of the limitations of traditional programming technique in the evolution process, put forward a general software evolution solution on the basis of AOP. According to that software evolution solution, carry out the aspect-orient refactor for application system at first, and chose appropriate AO realization technique for those new requirements. Such, keep these extended functions separate with the original function, and then keep system architecture flexibility.Second, study thoroughly on the static software evolution and the dynamic software evolution. On the basis of AspectJ5, put forward a system model for dynamic software evolution based on AOP. Based on reflection and meta-object protocol, we realize the separation of original function concerns and extended ones. Using meta-object protocol, we can add new function by introducing new meta-objects into this system. Such the basic system keeps stable. Thus, the system can carry out dynamic evolution during runtime.At last, carry out the software evolution on the CRMS prototype system. This example proves that the aspect-oriented software evolution can make crosscutting concern modularisation, avoid the concern tangling and scattering, needn't modify the original procedure for adding & deleting new requirements, reduce the workload, lower the software evolution cost, and provide a elegant solution for keeping the flexibility of system architecture after each evolution.
Keywords/Search Tags:Software Evolution, Concern, Aspect-Oriented Programming, Meta-Object Protocol, Reflection, Refactoring, Architecture
PDF Full Text Request
Related items