Advertisement

Software & Systems Modeling

, Volume 6, Issue 4, pp 453–471 | Cite as

Performance analysis of aspect-oriented UML models

  • Dorina C. PetriuEmail author
  • Hui Shen
  • Antonino Sabetta
Regular Paper

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.

Keywords

Primary Model Activity Diagram Performance Annotation Aspect Model Graph Transformation Rule 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

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)Google Scholar
  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–310Google 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)Google Scholar
  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)Google Scholar
  5. 5.
    Clarke S. (2002). Extending Standard UML with Model Composition Semantics. Science of Computer Programming 44(1): 71–100 zbMATHCrossRefGoogle 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)Google Scholar
  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 zbMATHCrossRefGoogle 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)Google Scholar
  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)Google Scholar
  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)Google Scholar
  14. 14.
    Ehrig, H., Prange, U., Taentzer, G.: Fundamental Theory for Typed Attributed Graph Transformation. LNCS Volume 3256, pp. 161–177, Springer (2004)Google Scholar
  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)Google Scholar
  16. 16.
    Kande, M.: A Concern-Oriented Approach to Software Architecture”, PhD thesis, EPFL, Lausanne, Switzerland (2003)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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)Google Scholar
  21. 21.
    Padberg, J., Ehrig, H.: Petri Net Modules in the Transformation-Based Component Framework. In Journal of Logic and Algebraic Programming, (accepted) (2005)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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 CrossRefGoogle 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)Google Scholar
  29. 29.
    Object Management Group, UML Profile for Schedulability, Performance, and Time Specification, OMG Adopted Specification ptc/02-03-02, July 1, (2002)Google Scholar
  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, SpringerGoogle Scholar
  31. 31.
    Schmidt, D.C., Huston, S.D.: C++ Network Programming Vol 2: Systematic Reuse with ACE and Frameworks, Addison-Wesley (2002)Google Scholar
  32. 32.
    Smith, C.U.: Performance Engineering of Software Systems, Addison Wesley (1990)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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, BostonGoogle Scholar
  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)Google Scholar
  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)Google Scholar
  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)Google Scholar
  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.pdfGoogle Scholar

Copyright information

© Springer-Verlag 2007

Authors and Affiliations

  1. 1.Department of Systems and Computer EngineeringCarleton UniversityOttawaCanada
  2. 2.Department of Informatics, Systems and ProductionUniversity of “Tor Vergata”RomeItaly

Personalised recommendations