| Model Driven Architecture is a software method which is defined by Object Management Group. MDA is one approach to bridge the models of applications to their realizations and models are the important role in MDA. The core idea of MA is separating business analysis and business implementation and transferring the attention of software engineers to business domain and business modeling.This thesis regards the software modeling technique based on MDA as the main topic and deeply research on the basic principle, architecture, software development circle, core techniques, and model transform implement of MDA. This thesis imports the requirement model and Aspect Oriented Programming techniques into the MDA software develop framework to improve the MDA architecture.Capturing software requirements is very important in software engineering.The incompleteness, inconsistence and ambiguity exist in the software requirement and the ability to describe software requirement of MDA framework is weakness. To solve these problems, this thesis put forward a method use the formal B method to describe software requirement and construct software requirement model in MDA framework. This thesis also studies the transformations between requirement model and PIM, gives the meta-model descriptions of B method and Class diagram using ecore model, defines and implements the transformations definitions using JJTree and ATL, and an experiment is conducted in order to explain the process of transformation.Crosscutting concerns are functionalities that distribute in many modular units and this problem also exists in models which are built by traditional MDA methods. Aspect Oriented Programming (AOP) is one of the most effective methods to solve this problem. Model is the core of MDA, so common requirement model and PIM with AOP need further definition to support MDA with AOP. This thesis gives extension of formal B method for AOP and describes the core concepts of AOP in the environment of B method to definition the specification of requirement model with AOP. Based on the specification of UML 2.0, the UML extension mechanisms are utilized to construct the specification of PIM with AOP. An important question in MDA with AOP is how to identify crosscutting concerns from object oriented legacy system. In this thesis a method based on runtime method-call relation and fuzzy pattern recognition for aspect mining is presented. The method use Aspect to capture the runtime method-call information and provide the ability of auto-collecting dynamic information. And the method use fuzzy pattern recognition to identify the crosscutting concerns. |