Aspect-oriented modeling and verification with finite state machines

  • Authors:
  • Dian-Xiang Xu;Omar El-Ariss;Wei-Feng Xu;Lin-Zhang Wang

  • Affiliations:
  • National Center for the Protection of the Financial Infrastructure, Dakota State University, Madison, SD and State Key Laboratory of Novel Software Technology, Department of Computer Science and T ...;Department of Computer Science, North Dakota State University, Fargo, ND;Computer and Information Science Department, Gannon University, University Square, Erie, PA;State Key Laboratory of Novel Software Technology, Department of Computer Science and Technology, Nanjing University, Nanjing, China

  • Venue:
  • Journal of Computer Science and Technology - Special section on trust and reputation management in future computing systmes and applications
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Aspect-oriented programming modularizes crosscutting concerns into aspects with the advice invoked at the specified points of program execution. Aspects can be used in a harmful way that invalidates desired properties and even destroys the conceptual integrity of programs. To assure the quality of an aspect-oriented system, rigorous analysis and design of aspects are highly desirable. In this paper, we present an approach to aspect-oriented modeling and verification with finite state machines. Our approach provides explicit notations (e.g., pointcut, advice and aspect) for capturing crosscutting concerns and incremental modification requirements with respect to class state models. For verification purposes, we compose the aspect models and class models in an aspect-oriented model through a weaving mechanism. Then we transform the woven models and the class models not affected by the aspects into FSP (Finite State Processes), which are to be checked by the LTSA (Labeled Transition System Analyzer) model checker against the desired system properties. We have applied our approach to the modeling and verification of three aspect-oriented systems. To further evaluate the effectiveness of verification, we created a large number of flawed aspect models and verified them against the system requirements. The results how that the verification has revealed all flawed models. This indicates that our approach is effective in quality assurance of aspect-oriented state models. As such, our approach can be used for model-checking state-based specification of aspect-oriented design and can uncover some system design problems before the system is implemented.