Abstract
Interference problems in aspect-oriented designs refer to the undesired interference between aspects and base programs that can lead to the emergence of unexpected behaviors, which do harm to the correctness of the entire system. We present a rigorous approach to analyzing the interference problems in aspect-oriented designs. Formal representations of classes and aspects are defined in terms of designs in UTP, while the weaving techniques in AOP are interpreted as the compositions of corresponding formal models. Conflicts between an aspect and base programs as well as between two aspects can be detected by calculating the weakest preconditions. Furthermore, the calculation also provides informative guidelines on how to solve the conflicts it found. Early detecting and removing conflicts in aspect-oriented design models can improve their qualities and save plenty of costs.
This work is supported by the National Natural Science Foundation of China (No.90818022, No.60721002), the National Grand Fundamental Research 973 Program of China (No.2009CB320702), and by the National S&T Major Project (2009z01036-001-001-3).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Aksit, M., Rensink, A., Staijen, T.: A graph-transformation-based simulation approach for analysing aspect interference on shared join points. In: Proceedings of the 8th International Conference on Aspect-Oriented Software Development, AOSD 2009, pp. 39–50. ACM, New York (2009)
Corbett, J.C., Dwyer, M.B., Hatcliff, J., Robby: Bandera: a source-level interface for model checking java programs. In: Proceedings of the 22nd International Conference on Software Engineering, ICSE 2000, pp. 762–765. ACM, New York (2000)
Goldman, M., Katz, S.: Maven: Modular aspect verification. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 308–322. Springer, Heidelberg (2007)
He, J., Li, X., Liu, Z.: rcos: A refinement calculus of object systems. Theor. Comput. Sci. 365(1-2), 109–142 (2006)
Hoare, C.A.R., He, J.: Unifying Theories of Programming. Prentice-Hall, Englewood Cliffs (1998)
Katz, E., Katz, S.: Incremental analysis of interference among aspects. In: Proceedings of the 7th workshop on Foundations of Aspect-Oriented Languages, FOAL 2008, pp. 29–38. ACM, New York (2008)
Katz, S., Sihman, M.: Aspect validation using model checking. In: Dershowitz, N. (ed.) Verification: Theory and Practice. LNCS, vol. 2772, pp. 373–394. Springer, Heidelberg (2003)
Khatchadourian, R., Soundarajan, N.: Rely-guarantee approach to reasoning about aspect-oriented programs. In: Proceedings of the 5th Workshop on Software Engineering Properties of Languages and Aspect Technologies, SPLAT 2007, p. 5. ACM Press, New York (2007)
Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of aspectj. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Krishnamurthi, S., Fisler, K., Greenberg, M.: Verifying aspect advice modularly. In: Proceedings of the 12th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 137–146. ACM, New York (2004)
Mostefaoui, F., Vachon, J.: Design-level detection of interactions in aspect-uml models using alloy. Journal of Object Technology 6(7), 137–165 (2007)
Xu, D., Alsmadi, I., Xu, W.: Model checking aspect-oriented design specification. In: Proc. of the 31st Annual International Computer Software and Applications Conference, COMPSAC 2007, pp. 491–500. IEEE Computer Society, Los Alamitos (2007)
Xu, Q., de Roever, W.P., He, J.: The rely-guarantee method for verifying shared variable concurrent programs. Formal Asp. Comput. 9(2), 149–174 (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chen, X., Ye, N., Ding, W. (2010). A Formal Approach to Analyzing Interference Problems in Aspect-Oriented Designs. In: Qin, S. (eds) Unifying Theories of Programming. UTP 2010. Lecture Notes in Computer Science, vol 6445. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-16690-7_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-16690-7_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-16689-1
Online ISBN: 978-3-642-16690-7
eBook Packages: Computer ScienceComputer Science (R0)