Abstract
In this work, data and control flow analysis is used to detect aspects that are guaranteed to maintain some classes of linear temporal logic properties. This is, when the aspects are added to a system that satisfied the desired properties, these properties will remain true. Categories of advices (code segments) and introduced methods of aspects are defined. These categories are shown to be effective, in that they both provide real aid in verification of properties, and are automatically detectable using data and control flow. An implemented automatic data and control flow tool is described to detect the category of each advice and introduced method of an aspect. The results of applying the tool to aspect systems are summarized.
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
abc compiler home page, http://abc.comlab.ox.ac.uk
Allan, C., Avgustinov, P., Christensen, A.S., Dufour, B., Goard, C., Hendren, L., Kuzins, S., Lhoták, J., Lhoták, O., de Moor, O., Sereni, D., Sittampalam, G., Tibble, J., Verbrugge, C.: abc the aspectbench compiler for aspectj a workbench for aspect-oriented programming language and compilers research. In: Companion to the 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, OOPSLA 2005, pp. 88–89. ACM, New York (2005)
Djoko, S.D., Douence, R., Fradet, P.: Aspects preserving properties. In: Proceedings of the 2008 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation, PEPM 2008, pp. 135–145. ACM, New York (2008)
Einarsson, A., Nielsen, J.D.: A survivors guide to java program analysis with soot (2008)
Filho, F., Cacho, N., Figueiredo, E., Garcia, A., Rubira, C.: Exceptions and aspects: the devil is in the details. In: Proceedings of the 14th Intl. Conf. on Foundations of Software Engineering, FSE 2006, pp. 152–162. ACM, New York (2006)
Jagadeesan, R., Jeffrey, A., Riely, J.: A calculus of untyped aspect-oriented programs. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol. 2743, pp. 54–73. Springer, Heidelberg (2003)
Katz, S.: Aspect categories and classes of temporal properties. Transactions on Aspect Oriented Software Development (TAOSD) 1, 106–134 (2006)
Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of AspectJ. In: Lee, S.H. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001), http://aspectj.org
Lamport, L.: What good is temporal logic? In: IFIP Congress, pp. 657–668 (1983)
Nystrom, N., Clarkson, M.R., Myers, A.C.: Polyglot: An extensible compiler framework for java. In: Hedin, G. (ed.) CC 2003. LNCS, vol. 2622, pp. 138–152. Springer, Heidelberg (2003)
Ranganath, V.P., Hatcliff, J.: Slicing concurrent java programs using indus and kaveri. Int. J. Softw. Tools Technol. Transf. 9(5), 489–504 (2007)
Rinard, M., Salcianu, A., Bugrara, S.: A classification system and analysis for aspect-oriented programs. SIGSOFT Softw. Eng. Notes 29(6), 147–158 (2004)
Sereni, D., de Moor, O.: Static analysis of aspects. In: Proceedings of the 2nd International Conference on Aspect-oriented Software Development, AOSD 2003, pp. 30–39. ACM, New York (2003)
van Deursen, A., Marin, M., Moonen, L.: AJHotDraw: A showcase for refactoring to aspects. In: Proceedings AOSD Workshop on Linking Aspect Technology and Evolution, CWI (2005)
Wand, M., Kiczales, G., Dutchyn, C.: A semantics for advice and dynamic join points in aspect-oriented programming. ACM Trans. Program. Lang. Syst. 26(5), 890–910 (2004)
Weston, N., Taiani, F., Rashid, A.: Interaction analysis for fault-tolerance in aspect-oriented programming. In: Proc. Workshop on Methods, Models, and Tools for Fault Tolerance, MeMoT 2007, pp. 95–102 (2007)
Xu, G., Rountev, A.: Ajana: a general framework for source-code-level interprocedural dataflow analysis of aspectj software. In: Proceedings of the 7th International Conference on Aspect-Oriented Software Development, AOSD 2008, pp. 36–47. ACM, New York (2008)
Zhang, D.: Aspect impact analysis, Master’s thesis, McGill University (August 2008)
Zhao, J.: Slicing aspect-oriented software. In: Proceedings of the 10th International Workshop on Program Comprehension, IWPC 2002, Washington, DC, USA, p. 251. IEEE Computer Society, Los Alamitos (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Alperin-Tsimerman, Y., Katz, S. (2011). Dataflow Analysis for Properties of Aspect Systems. In: Namjoshi, K., Zeller, A., Ziv, A. (eds) Hardware and Software: Verification and Testing. HVC 2009. Lecture Notes in Computer Science, vol 6405. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19237-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-19237-1_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-19236-4
Online ISBN: 978-3-642-19237-1
eBook Packages: Computer ScienceComputer Science (R0)