Performance analysis of aspect-oriented UML models

Abstract

Aspect-Oriented Modeling (AOM) techniques allow software designers to isolate and address separately solutions for crosscutting concerns (such as security, reliability, new functional features, etc.). Current AOM research is concerned not only with the separate expression of concerns and their composition into a complete system model, but also with the analysis of different properties of such models. This paper proposes an approach for analyzing the performance effects of a given aspect on the overall system performance, after the composition of the aspect model with the system’s primary model. Performance analysis of UML models is enabled by the “UML Performance Profile for Schedulability, Performance and Time” (SPT) standardized by OMG, which defines a set of quantitative performance annotations to be added to a UML model. The first step of the proposed approach is to add performance annotations to both the primary and the aspect models. An aspect model is generic at first, and therefore its performance annotations must be parameterized. A generic model is converted into a context-specific aspect model with concrete values assigned to its performance annotations. The latter is composed with the primary model, generating a complete annotated UML model. The composition is performed in both structural and behavioural views. A novel approach for composing activity diagrams based on graph-rewriting concepts is proposed in the paper. The next step is to transform automatically the composed model into a Layered Queueing Network (LQN) performance model, by using techniques developed in previous work. The proposed approach is illustrated with a case study system, whose primary model is enhanced with some security features by using AOM. The performance effects of the security aspect under consideration are analyzed in two design alternatives, by solving and analyzing the LQN model of the composed system.

This is a preview of subscription content, log in to check access.

References

  1. 1.

    Aldawud, O., Elrad, T., Bader, A.: UML Profile for Aspect-Oriented Software Development. Third International Workshop on Aspect-Oriented Modeling, Boston (2003)

  2. 2.

    Balsamo S., Di Marco A., Inverardi P., Simeoni M. (2004) Model-based performance prediction in software development: a survey IEEE Transactions on Software Engineering Vol 30(5): 295–310

    Google Scholar 

  3. 3.

    Barros, J.P., Gomes, L.: Towards the Support for Crosscutting Concerns in Activity Diagrams: a Graphical Approach. Fourth Workshop on Aspect-Oriented Modeling with UML, San Francisco (2003)

  4. 4.

    Clarke, S., Walker, R.J.: Composition patterns: An approach to designing reusable aspects In Proc. of 23rd. Int. Conf. on Software Engineering (ICSE), Toronto (2001)

  5. 5.

    Clarke S. (2002). Extending Standard UML with Model Composition Semantics. Science of Computer Programming 44(1): 71–100

    MATH  Article  Google Scholar 

  6. 6.

    Elrad, T., Aldawud, O., Bader, A.: Aspect-Oriented Modeling: Bridging the Gap between Implementation and Design. In: Generative Programming and Component Engineering, Batory D, Consel C, Taha W (Eds.) GPCE 2002, Pittsburgh, LNCS Vol.2487, pp.189–2001, Springer (2002)

  7. 7.

    France R., Ray I., Georg G. and Ghosh S. (2004). An Aspect-Oriented Approach to Early Design Modeling. IEE Proceedings - Software, Special Issue on Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design 151(4): 173–185

    Google Scholar 

  8. 8.

    Franks G., Hubbard A., Majumdar S., Petriu D.C., Rolia J. and Woodside C.M. (1995). A toolset for Performance Engineering and Software Design of Client-Server Systems. Performance Evaluation 24(1–2): 117–135

    MATH  Article  Google Scholar 

  9. 9.

    Georg G., France R. and Ray I. (2003). Composing Aspect Models. Workshop on Aspect Oriented Modeling with UML, San Francisco

    Google Scholar 

  10. 10.

    Georg G., France R. and Ray I. (2002). An Aspect-Based Approach to Modeling Security Concerns. In Proceedings of the Workshop on Critical Systems Development with UML, Dresden

    Google Scholar 

  11. 11.

    Gray, J., Bapty, T., Neema, S., Schmidt, D.C., Gokhale, A., Natarajan, B.: An Approach for Supporting Aspect-Oriented Domain Modeling. In: Pfenning F, Smaragdakis Y (Eds.) GPCE 2003, LNCS 2830, pp. 151–168, Springer (2003)

  12. 12.

    Gu, G., Petriu, D.C.: From UML to LQN by XML algebra-based model transformation. In Proc. of 5th ACM Workshop on Software and Performance WOSP’2005, pp.99–110, Palma de Mallorca, Spain, July 11–14 (2005)

  13. 13.

    Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G.: editors. Handbook of Graph Grammars and Computing by Graph Transformation. Volume 2: Applications, Languages, and Tools. World Scientic (1999)

  14. 14.

    Ehrig, H., Prange, U., Taentzer, G.: Fundamental Theory for Typed Attributed Graph Transformation. LNCS Volume 3256, pp. 161–177, Springer (2004)

  15. 15.

    Ho, W.M., Jézéquel, J.-M., Pennaneac’h, F., Plouzeau, N.: A Toolkit for Weaving Aspect Oriented UML Designs. Proc. of the 1st Int. Conference on Aspect-Oriented Software Development AOSD’2002, pp.99–105, Enschede, The Netherlands (2002)

  16. 16.

    Kande, M.: A Concern-Oriented Approach to Software Architecture”, PhD thesis, EPFL, Lausanne, Switzerland (2003)

  17. 17.

    Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.: Getting Started with AspectJ. Communications of the ACM, pp. 59–65, October (2001)

  18. 18.

    Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.: An Overview of AspectJ. In Proc.15th European Conference on Object–Oriented Programming (ECOOP 2001), pp. 327–357, Budapest, Hungary (2001)

  19. 19.

    Mahoney M., Bader A., Elrad T. and Aldawud O. (2004). Using Aspects to Abstract and Modularize Statecharts. In Proc. 5th Wsh. Aspect-Oriented Modeling, Lisboa

    Google Scholar 

  20. 20.

    Mekerke, F., Georg, G., France, R., Alexander, R.: Tool Support for Aspect-Oriented Design. In Advances in Object-Oriented Information Systems: OOIS2002 Workshops. Springer-Verlag (2002)

  21. 21.

    Padberg, J., Ehrig, H.: Petri Net Modules in the Transformation-Based Component Framework. In Journal of Logic and Algebraic Programming, (accepted) (2005)

  22. 22.

    Petriu, D.B., Woodside, C.M.: A Metamodel for Generating Performance Models from UML Designs. in In Proc. <<UML>> 2004 - Modelling Languages and Applications, 7th Int. Conference, Lisbon (2004)

  23. 23.

    Petriu, D.C., Shen, H.: Applying the UML Performance Profile: Graph Grammar based derivation of LQN models from UML specifications. In: (Fields T, Harrison P, Bradley J, Harder U (Eds.)) Computer Performance Evaluation: Modelling Techniques and Tools, LNCS 2324, pp.159–177, Springer (2002)

  24. 24.

    Petriu, D.C., Woodside, C.M.: Performance Analysis with UML. in UML for Real, Selic B, Lavagno L, Martin G pp. 221–240 Kluwer (2003)

  25. 25.

    Petriu, D.C.: Performance Analysis Based on the UML SPT Profile. In: (Gerard S, Babeau JP, Champeau J (Eds.)) Model-Driven Engineering for Distributed and Embedded Systems, pp. 205–224, Hermes Science Publishing Ltd (2005)

  26. 26.

    Rashid A., Moreira A. and Araujo J. (2003). Modularization and Composition of AspectualRequirements.. 2nd International Conference on Aspect-Oriented Software Development, ACM

    Google Scholar 

  27. 27.

    Ray I., France R., Li N. and Georg G. (2004). An aspect-based approach to modeling access control concerns. Information and Software Technology 46: 575–587

    Article  Google Scholar 

  28. 28.

    Reddy, R., France, R., Georg, G.: Aspect Oriented Modeling approach to Analyzing Dependability Features. In Aspect Oriented Modeling (AOM) workshop held in conjunction with AOSD 2005 conference, Chicago, March 14–18 (2005)

  29. 29.

    Object Management Group, UML Profile for Schedulability, Performance, and Time Specification, OMG Adopted Specification ptc/02-03-02, July 1, (2002)

  30. 30.

    Shen H., Petriu D.C. (2005) Performance Analysis of UML Models using Aspect Oriented Modeling Techniques. In: Briand L, Williams C (eds). Model Driven Engineering Languages and Systems. LNCS Vol. 3713, pp.156–170, Springer

  31. 31.

    Schmidt, D.C., Huston, S.D.: C++ Network Programming Vol 2: Systematic Reuse with ACE and Frameworks, Addison-Wesley (2002)

  32. 32.

    Smith, C.U.: Performance Engineering of Software Systems, Addison Wesley (1990)

  33. 33.

    Song, E., Reddy, R., France, R., Ray, I., Georg, G., Alexander, R.: Verifiable composition of access control and application features. Proceedings of the tenth ACM symposium on Access control models and technologies, pp.120–129, Stockholm, Sweden (2005)

  34. 34.

    Stein, D., Hanenberg, S.t., Unland, R.: A UML-based Aspect-Oriented Design Notation for AspectJ. Proc. of the 1st international conference on Aspect-Oriented Software Development, pp. 106–112, Enschede, The Netherlands (2002)

  35. 35.

    Stein D., Hanenberg S. and Unland R. (2003). Position Paper on Aspect-Oriented Modeling: Issues on Representing Crosscutting Feature. Third International Workshop on Aspect-Oriented Modeling, Boston

  36. 36.

    Straw, G., Georg, G., Song, E., Ghosh, S., France, R., Bieman, J.M.: Model Composition Directives. In Proc. <<UML>> 2004 - Modelling Languages and Applications, 7th Int. Conference, Lisbon, Portugal, LNCS 3273, pp 84–97, Springer (2004)

  37. 37.

    Woodside, C.M., Neilson, J.E., Petriu, D.C., Majumdar, S.: The Stochastic Rendezvous Network Model for Performance of Synchronous Client-Server-like Distributed Software. in IEEE Trans. on Computers, Vol.44, Nb.1, pp. 20–34, (1995)

  38. 38.

    Woodside, C.M., Petriu, D.C., Petriu, D.B., Shen, H., Israr,~T., Merseguer, J.: Performance by Unified Model Analysis (PUMA). In Proc. 5th Int. Workshop on Software and Performance WOSP’2005, pp. 1–12, Palma, Spain (2005)

  39. 39.

    Woodside, C.M., Petriu, D.C., Petriu, D.B., Shen, H., Israr, T., Merseguer, J.: GreatSPN User Manual, Version 2.02, Chapter 5, Performance Evaluation Group, Dipartimento di Informatica, Università di Torino, Italy, http://www.di.unito.it/~susi/DIDATTICA/SPC04-05/manual.pdf

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Dorina C. Petriu.

Additional information

Communicated by Dr. Lionel Briand.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Petriu, D.C., Shen, H. & Sabetta, A. Performance analysis of aspect-oriented UML models. Softw Syst Model 6, 453–471 (2007). https://doi.org/10.1007/s10270-007-0053-0

Download citation

Keywords

  • Primary Model
  • Activity Diagram
  • Performance Annotation
  • Aspect Model
  • Graph Transformation Rule