Along with the increase in complexity, software failures and malfunctions grow. People pay more and more attention to the question of software credibility. Monitoring software at runtime is an effective way to enhance software credibility. However, there is a mismatch from one-dimensional implementation to multi-dimensional requirement in traditional techniques for software monitoring, which resulting in code tangling and scattering. The development of AOP technology gives a support to separating crosscutting concerns from the business logic. In the field of monitoring, the using of AOP technology is more and more popular.This dissertation presents the application of AOP technology in the field of monitoring, and takes an analysis to the shortcomings of the existing monitoring technology. A monitoring framework for software properties based on AOP also be designed and implemented. This framework describes the constraints of properties using OCL firstly. Through a series of process, monitor aspect codes will be generated automatically. By weaving these aspect codes with software monitored, the ability of monitoring will be embedded. The framework could modularize"monitor"through AOP technology. On the other hand, the framework provides a mechanism for generating monitor codes automatically, eliminating the burden of programming to monitor logic.In order to solve the problem of monitoring efficiency in the monitoring framework for software properties based on AOP, the dissertation proposes a monitoring technique for software properties based on the transformational mechanism from OCL to Java. This technique has combined the transformational mechanism from OCL to Java and can reduce the dependence on OCL validation tools in the course of monitoring, and improve monitoring efficiency at the same time.Finally, this dissertation also takes research in improving monitoring efficiency in multi-core system, and proposes a feasible way. |