skip to main content
10.1145/508386.508405acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

Aspect-oriented programming with model checking

Published:22 April 2002Publication History

ABSTRACT

Aspect-oriented programming (AOP) is a programming paradigm such that crosscutting concerns including synchronization policies, resource sharing and performance optimizations over objects are modularized as aspects that are separated from objects. A compiler, called a weaver, weaves aspects and objects together into a program. In AOP, however, it is not easy to verify the correctness of a woven program because crucial behaviors are strongly influenced by aspect descriptions. In order to deal with such problem, this paper proposes an automatic verification approach using model checking that verifies whether the woven program contains unexpected behaviors such as deadlocks. The objectives of this paper are as follows: 1) to verify the correctness of AOP-based programs using model checking, 2) to provide AOP-based model checking frameworks.

References

  1. Aksit, M. and Tripathi, A.: Data Abstraction Mechanisms in Sina/ST, Proc. OOPSLA'88, pp.265-275, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. AspectJ. http://aspectj.org/.Google ScholarGoogle Scholar
  3. The AspectJ Programming Guide, 2001.Google ScholarGoogle Scholar
  4. Bandera. http://www.cis.ksu.edu/ santos/bandera/.Google ScholarGoogle Scholar
  5. Beck, K.: Extreme Programming Explained: Embrace Change, Addison-Wesley, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Clarke, E., Grumberg, O., and Peled, D.: Model Checking, The MIT Press, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Corbett, J. C., Dwyer, M. B., Hatcliff, J., Laubach, S., Pasareanu, C. S., and Zheng, H.: Bandera: Extracting Finite-state Models from Java Source Code, Proc. ICSE 2000, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Czarnecki, K. and Eisenecker, U. W.: Generative Programming, Addison-Wesley, 2000.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Demeter Project. http://www.ccs.neu.edu/research/demeter/.Google ScholarGoogle Scholar
  10. Elrad, T., Filman, R. E. and Bader A.: Aspect-oriented programming, Communications of the ACM, vol.44, no.10, pp.29-32, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Harrison, W. and Ossher, H.: Subject-oriented Programming, Proc. OOPSLA'93, pp.411-428, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Havelund, K.: Java PathFinder User Guide, 1999.Google ScholarGoogle Scholar
  13. Holzmann, C. J. and Smith, M. H.: The Model Checker SPIN, IEEE trans. SE, vol.23, no.5, pp.279-295, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jackson, D.: Aloca: the alloy constraint analyzer, Proceedings of ICSE 2000, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Kendall, E. A.: Role Model Designs and Implemantations with Aspect-oriented Programming, Proc. OOPSLA'99, pp.353-369, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Kiczales, G., Lamping, J., Mendhekar A., Maeda, C., Lopes, C., Loingtier, J. and Irwin, J.: Aspect-Oriented Programming, Proc. ECOOP'97, Lecture Notes in Computer Science, Springer, vol.1241, pp.220-242, 1997.Google ScholarGoogle Scholar
  17. McMillan, K. L.: Symbolic Model Checking: An Approach to the State Explosion Problem, Kluwer Academic, 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Meyer, B.: Object-Oriented Software Construction, 2nd Edition, Prentice Hall, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Nelson, T., Cowan, D. and Alencar, P.: Supporting Formal Verification of Crosscutting Concerns, Proc. REFLECTION 2001, Lecture Notes in Computer Science, Springer, vol.2192, pp.153-169, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. K. Rustan M. Leino, Greg Nelson, and James B. Saxe: ESC/Java User's Manual, 2000.Google ScholarGoogle Scholar
  21. Tamai, T.: Objects and roles: modeling based on the dualistic view, Information and Software Technology, Vol.41, No.14, pp.1005-1010, 1999.Google ScholarGoogle ScholarCross RefCross Ref
  22. Ubayashi, N. and Tamai, T.: Separation of Concerns in Mobile Agent Applications, Proc. REFLECTION 2001, Lecture Notes in Computer Science, Springer, vol.2192, pp.89-109, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Aspect-oriented programming with model checking

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Other conferences
              AOSD '02: Proceedings of the 1st international conference on Aspect-oriented software development
              April 2002
              162 pages
              ISBN:158113469X
              DOI:10.1145/508386

              Copyright © 2002 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 22 April 2002

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              Overall Acceptance Rate41of139submissions,29%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader