Font Size: a A A

Research On Framework To Resolve The Structural Conflict In Aop Application

Posted on:2011-05-03Degree:MasterType:Thesis
Country:ChinaCandidate:Z LiFull Text:PDF
GTID:2198330332975958Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
At present, Aspect-Oriented Programming (AOP) is well along toward the practicality. However, AOP will also meet some problems in the practical application. Structural conflict is one of the key issues in the development of Aspect-Oriented software. This problem is not beneficial for the software evolution, but causes maintenance of the system more difficult. Therefore, researching solutions to the structural conflict in AOP application has important theoretical significance and application value, while the research results will provide theoretical support and tools support for the construction of adaptive Aspect-Oriented software.Structural conflict is also known as "fragile pointcut problem". It mainly represents that the current join point model used in Aspect is not robust enough for the evolution of the base program. Because definition of the pointcut in Aspect closely relies on the structural information of the base program, if structure of the base program changes, it may produce problems of join point mismatches, which include the unintended join point capture and the accidental join point miss. And, the unintended join point capture means that the defined pointcut captures a new join point unconsciously because of structural changes of the base program; the accidental join point miss means that after the base program's structure changes, the join point becomes unmatched which can be matched with the pointcut definition originally.The paper proposed a framework based on the metadata and reflection mechanism to resolve the structural conflict. This framework considers meta- level in the reflection architecture as the middle level (conceptual level) between pointcut and base program, in order to achieve decoupling between definition of the pointcut and structure of the base program. Conceptual model in the conceptual level is mainly used to describe the logical information, physical information as well as the mapping relationships between the two kinds of information, and so on. In the base program, we use metadata to annotate its logical information, simultaneously, using the logical information to define the pointcut. In this way, when the structure of base program evolves, it is unnecessary to modify definition of the pointcut, which not only enhances the reusability of Aspect, but solve the structural conflict in AOP application from the architecture level.
Keywords/Search Tags:Aspect-Oriented Programming, Structural Conflict, Metadata, Conceptual Model
PDF Full Text Request
Related items