Checking Protocol-Conformance in Component Models using Aspect Oriented Programming

T.-B. Trinh, A.-H. Truong, and V.-H. Nguyen (Vietnam)


Protocol State Machine, AspectJ, Runtime Verification


Protocol state machines (PSM) in UML 2.0 allows us to specify communication protocols or expected method call sequences among a number of objects or software components. As the implementation of objects or components can go wrong with respect to the specification, one needs a method to check for the correctness of the implementation. We propose an approach based on aspect oriented programming (AOP) to check for the conformance between the implementation and the PSM specification. Taking a PSM specification as input we convert it into a specification in our language and then we generate aspect code in AspectJ that can report any wrong call sequences in the implementation of the Java components at runtime. Based on AOP our approach has several advantages such as it is easy to combine with static approach, it does not require source code of the objects or components and it can check multithreaded components.

Important Links:

Go Back