Visualizing Early Aspects with Use Case Maps

  • Gunter Mussbacher
  • Daniel Amyot
  • Michael Weiss

Abstract

Once aspects have been identified during requirements engineering activities, the behavior, structure, and pointcut expressions of aspects need to be modeled unobtrusively at the requirements level, allowing the engineer to seamlessly focus either on the behavior and structure of the system without aspects or the combined behavior and structure. Furthermore, the modeling techniques for aspects should be the same as for the base system, ensuring that the engineer continues to work with familiar models. This paper describes how, with the help of Use Case Maps (UCMs), scenario-based aspects can be modeled at the requirements level unobtrusively and with the same techniques as for non-aspectual systems. Use Case Maps are a visual scenario notation under standardization by the International Telecommunication Union. With Use Case Maps, aspects as well as pointcut expressions are modeled in a visual way which is generally considered the preferred choice for models of a high level of abstraction.

Keywords

aspect-oriented requirements engineering Use Case Maps scenario notations User Requirements Notation 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abdelaziz, T., Elammari, M., Unland, R.: Visualizing a Multiagent-Based Medical Diagnosis System Using a Methodology Based on Use Case Maps. In: Lindemann-v, G., Denzinger, J., Timm, I.J., Unland, R. (eds.) MATES 2004. LNCS (LNAI), vol. 3187, pp. 198–212. Springer, Heidelberg (2004)Google Scholar
  2. 2.
    Alencar, F., Moreira, A., Araújo, J., Castro, J., Silva, C., Mylopoulos J.: Using Aspects to Simplify i* Models. In: 14th IEEE International Requirements Engineering Conference (RE 2006), Minneapolis, USA (September 2006)Google Scholar
  3. 3.
    Amyot, D., Logrippo, L.: Use Case Maps and LOTOS for the Prototyping and Validation of a Mobile Group Call System. Computer Communication 23(12), 1135–1157 (2000)CrossRefGoogle Scholar
  4. 4.
    Amyot, D., Charfi, L., Gorse, N., Gray, T., Logrippo, L., Sincennes, J., Stepien, B., Ware, T.: Feature Description and Feature Interaction Analysis with Use Case Maps and LOTOS. In: Feature Interactions in Telecommunications and Software Systems VI, Glasgow, Scotland, UK, pp. 274–289. IOS Press, Amsterdam (2000)Google Scholar
  5. 5.
    Amyot, D., Roy, J.-F., Weiss, M.: UCM-Driven Testing of Web Applications. In: Prinz, A., Reed, R., Reed, J. (eds.) SDL 2005. LNCS, vol. 3530, pp. 247–264. Springer, Heidelberg (2005)Google Scholar
  6. 6.
    Amyot, D., Weiss, M., Logrippo, L.: UCM-Based Generation of Test Purposes. Computer Networks 49(5), 643–660 (2005)CrossRefGoogle Scholar
  7. 7.
    Amyot, D.: Introduction to the User Requirements Notation: Learning by Example. Computer Networks 42(3), 285–301 (2003)CrossRefGoogle Scholar
  8. 8.
    Andrade, R.: Applying Use Case Maps and Formal Methods to the Development of Wireless Mobile ATM Networks. In: Lfm 2000: Fifth NASA Langley Formal Methods Workshop, Williamsburg, Virginia, USA, pp. 151–162 (June 2000)Google Scholar
  9. 9.
    AOSD Community Wiki Research Projects: (accessed February 2007), http://aosd.net/wiki/index.php?title=Research_Projects
  10. 10.
    AOSD Community Wiki Tools for Developers: (accessed February 2007), http://aosd.net/wiki/index.php?title=Tools_for_Developers
  11. 11.
    Araújo, J., Coutinho, P.: Identifying Aspectual Use Cases Using a Viewpoint-Oriented Requirements Method. Early Aspects 2003: Aspect-Oriented Requirements Engineering and Architecture Design. In: Workshop of the 2nd International Conference on Aspect-Oriented Software Development (AOSD), Boston, USA (March 2003)Google Scholar
  12. 12.
    Araújo, J., Moreira, A.: An Aspectual Use Case Driven Approach. VIII Jornadas de Ingeniería de Software y Bases de Datos (JISBD 2003), Alicante, Spain (November 2003)Google Scholar
  13. 13.
    Araújo, J., Whittle, J., Kim, D.: Modeling and Composing Scenario-Based Requirements with Aspects. In: Proceedings of the 12th IEEE International Requirements Engineering Conference (RE 2004), Kyoto, Japan, pp. 58–67. IEEE Computer Society Press, Los Alamitos (September 2004)Google Scholar
  14. 14.
    AspectJ web site (cited February 2007), http://www.eclipse.org/aspectj/
  15. 15.
    Barros, J.-P., Gomes, L.: Toward the Support for Crosscutting Concerns in Activity Diagrams: a Graphical Approach. In: Stevens, P., Whittle, J., Booch, G. (eds.) «UML» 2003 - The Unified Modeling Language. Modeling Languages and Applications. LNCS, vol. 2863, Springer, Heidelberg (2003)Google Scholar
  16. 16.
    Billard, E.A.: Operating system scenarios as Use Case Maps. In: 4th International Workshop on Software and Performance (WOSP 2004), Redwood Shores, California, USA, pp. 266–277 (January 2004)Google Scholar
  17. 17.
    Buhr, R.J.A., Casselman, R.S.: Use Case Maps for Object-Oriented Systems. Prentice-Hall, Englewood Cliffs (1995)Google Scholar
  18. 18.
    Buhr, R.J.A.: A Possible Design Notation for Aspect Oriented Programming. In: Jul, E. (ed.) ECOOP 1998. LNCS, vol. 1445, Springer, Heidelberg (1998)Google Scholar
  19. 19.
    Buhr, R.J.A.: Use Case Maps as Architectural Entities for Complex Systems. IEEE Transactions on Software Engineering 24(12), 1131–1155 (1998)CrossRefGoogle Scholar
  20. 20.
    Chitchyan, R., et al.: Survey of Analysis and Design Approaches. AOSD-Europe Report ULANC-9 (accessed February 2007) (May 2005), http://www.aosd-europe.net/deliverables/d11.pdf
  21. 21.
    Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, Reading (2005)Google Scholar
  22. 22.
    de Bruin, H., van Vliet, H.: Quality-Driven Software Architecture Composition. Journal of Systems and Software 66(3), 269–284 (2003)CrossRefGoogle Scholar
  23. 23.
    Elammari, M., Lalonde, W.: An Agent-Oriented Methodology: High-Level View and Intermediate Models. In: 1st International Workshop on Agent-Oriented Information Systems (AOIS), Heidelberg, Germany (June 1999)Google Scholar
  24. 24.
    Gross, D., Yu, E.: Dealing with System Qualities During Design and Composition of Aspects and Modules: An Agent and Goal-Oriented Approach. In: Proceedings of the 1st International Workshop on Traceability in Emerging Forms of Software Engineering, Automated Software Engineering Conference, Edinburgh, U.K, pp. 1–8 (October 2002)Google Scholar
  25. 25.
    Jacobson, I., Ng, P.-W.: Aspect-Oriented Software Development with Use Cases. Addison-Wesley, Reading (2005)Google Scholar
  26. 26.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., 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)CrossRefGoogle Scholar
  27. 27.
    Miga, A.: Application of Use Case Maps to System Design with Tool Support. MEng thesis, Department of Systems and Computer Engineering, Carleton University, Ottawa, Canada (cited February 2007) (October 1998), http://www.UseCaseMaps.org/tools/ucmnav
  28. 28.
    Moreira, A., Araújo, J.: Handling Unanticipated Requirements Change with Aspects. In: Proceedings of the 16th International Conference on Software Engineering and Knowledge Engineering (SEKE), Banff, Canada (June 2004)Google Scholar
  29. 29.
    Moreira, A., Araújo, J., Brito, I.: Crosscutting Quality Attributes for Requirements Engineering. In: Proceedings of the 14th Internatinal Conference on Software Engineering and Knowledge Engineering (SEKE), Ischia, Italy, pp. 167–174. ACM Press, New York (2002)CrossRefGoogle Scholar
  30. 30.
    Mussbacher, G., Amyot, D., Weiss M.: Visualizing Aspect-Oriented Requirements Scenarios with Use Case Maps. In: International Workshop on Requirements Engineering Visualization (REV 2006), Minneapolis, USA (September 11, 2006)Google Scholar
  31. 31.
    Mussbacher, G., Amyot, D., Whittle, J., Weiss M.: Flexible and Expressive Composition Rules with Aspect-oriented Use Case Maps (AoUCM). In: 10th International Workshop on Early Aspects (EA 2007), Vancouver, Canada (March 13, 2007)Google Scholar
  32. 32.
    Rashid, A., Moreira, A., Araújo, J.: Modularisation and Composition of Aspectual Requirements. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, Boston, USA, pp. 11–20. ACM Press, New York (2003)CrossRefGoogle Scholar
  33. 33.
    Roy, J.-F., Kealey, J., Amyot, D.: Towards Integrated Tool Support for the User Requirements Notation. In: Gotzhein, R., Reed, R. (eds.) SAM 2006. LNCS, vol. 4320, pp. 183–197. Springer, Heidelberg (2006) (accessed Feb. 2007), http://www.softwareengineering.ca/jucmnav
  34. 34.
    Scratchley, W.C., Woodside, C.M.: Evaluating Concurrency Options in Software Specifications. In: 7th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS), College Park, MD, USA, pp. 330–338 (October 1999)Google Scholar
  35. 35.
    Siddiqui, K.H., Woodside, C.M.: Performance aware software development (PASD) using resource demand budgets. In: Workshop on Software and Performance (WOSP), Rome, Italy, pp. 275–285 (July 2002)Google Scholar
  36. 36.
    Tarr, P., Ossher, H., Harrison, W., Sutton, S.M.: N degrees of separation: Multidimensional separation of concerns. In: Proceedings of the 21st International Conference on Software Engineering (ICSE 1999), pp. 107–119. IEEE, Los Angeles, ACM press, NewYork (1999)Google Scholar
  37. 37.
    URN - Goal-oriented Requirement Language (GRL), ITU-T Draft Recommendation Z.151. Geneva, Switzerland (September 2003), (accessed February 2007), http://www.UseCaseMaps.org/urn
  38. 38.
    URN – Use Case Map Notation (UCM), ITU-T Draft Recommendation Z.152. Geneva, Switzerland (September 2003) (accessed February 2007), http://www.UseCaseMaps.org/urn
  39. 39.
    User Requirements Notation (URN) Language Requirements and Framework, ITU-T Recommendation Z.150. Geneva, Switzerland (February 2003) (accessed February 2007), http://www.itu.int/ITU-T/publications/recs.html
  40. 40.
    Weiss, M., Amyot, D.: Business Process Modeling with URN. International Journal of E-Business Research 1(3), 63–90 (2005)Google Scholar
  41. 41.
    Whittle, J., Araújo, J.: Scenario Modelling with Aspects. IEEE Proceedings Software 151(4), 157–172 (2004)CrossRefGoogle Scholar
  42. 42.
    Zdun, U., Strembeck, M.: Modeling the Evolution of Aspect Configurations using Model Transformations. In: Proceedings of the Linking Aspect Technology and Evolution Workshop (LATE), Bonn, Germany (March 2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Gunter Mussbacher
    • 1
  • Daniel Amyot
    • 1
  • Michael Weiss
    • 2
  1. 1.SITE, University of Ottawa, 800 King Edward, Ottawa, ON, K1N 6N5Canada
  2. 2.School of Computer Science, Carleton University, 1125 Colonel By Drive, Ottawa, ON, K1S 5B6Canada

Personalised recommendations