Designing Software Architectures with an Aspect-Oriented Architecture Description Language

  • Jennifer Pérez
  • Nour Ali
  • Jose A. Carsí
  • Isidro Ramos
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4063)


A great deal of languages have emerged and have demonstrated the advantages that Aspect-Oriented Programming offers. For this reason, the aspect-oriented approach is being introduced into the early phases (analysis and design) of the software life cycle. In this work, we present an Aspect-Oriented Architecture Description Language (AOADL) to specify software architectures of complex, dynamic and distributed software systems. This AOADL follows the PRISMA approach, which integrates the advantages of Component-Based Software Development (CBSD) and Aspect-Oriented Software Development (AOSD). The PRISMA AOADL combines components and aspects in an elegant and novel way achieving a better management of crosscutting-concerns. In addition, it is independent of the technology, and it has great expressive power in order to facilitate the automatic code generation from its specifications. In this work, we demonstrate how PRISMA AOADL improves the management, maintainability and reusability of software architectures introducing the notion of aspect in its ADL.


Software Architecture Architectural Model Architectural Element Architecture Description Language Distribution Aspect 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ali, N., Ramos, I., Carsí, J.A.: A Conceptual Model for Distributed Aspect-Oriented Software Architectures. In: International Conference on Information Technology Coding and Computing (ITCC). IEEE Computer Society, Las Vegas (2005)Google Scholar
  2. 2.
    AOSD. Aspect-Oriented Software Development (2005),
  3. 3.
    Barais, O., Cariou, E., Duchien, L., Pessemier, N., Seinturier, L.: Transat: A framework for the specification of software architecture evolution. In: ECOOP First International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT 2004), Oslo (June 2004),
  4. 4.
    Constantinides, C.A., Elrad, T.: On the Requirements for Concurrent Software Architectures to Support Advanced Separation of Concerns. In: Proceedings of OOPSLA Workshop on Advanced Separation of Concerns in Object-Oriented Systems (2000), available at:
  5. 5.
    Cuesta, C.E., Romay, M.P., De la Fuente, P., Barrio-Solórzano, M.: Architectural Aspects of Architectural Aspects. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 247–262. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  6. 6.
  7. 7.
    D’Souza, D., Wills, A.: Objects, Components and Frameworks with UML: The Catalysis approach. Addison-Wesley, Reading (1999)Google Scholar
  8. 8.
    Garlan, D., Perry, D.: Introduction to the Special Issue on Software Architecture. IEEE Transactions on Software Engineering 21(4) (April 1995)Google Scholar
  9. 9.
    Katara, M., Katz, S.: Architectural Views of Aspects. In: International Conference on Aspect-Oriented Software Development (AOSD). ACM Press, New York (2003)Google Scholar
  10. 10.
    Kiczales, G., Hilsdale, E., Huguin, J., Kersten, M., Palm, J., Griswold, W.G.: An Overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  11. 11.
    Medvidovic, N., Taylor, R.N.: A classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions of SW Engineering 26(1) (January 2000)Google Scholar
  12. 12.
    Milner, R.: π- Cálculo Poliadico: A tutorial (1991)Google Scholar
  13. 13.
    Navasa, A., Pérez, M.A., Murillo, J.M.: Aspect Modelling at Architecture Design. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 41–58. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Pérez, J., Navarro, E., Letelier, P., Ramos, I.: Graphical Modelling for Aspect Oriented SA. In: Proceedings on the 21st Annual ACM Symposium on Applied Computing (SAC). ACM Press, Dijon (2006) (short paper) (accepted, to appear)Google Scholar
  15. 15.
    Pérez, J., Ali, N., Costa, C., Carsí, J. A., Ramos, I.: Executing Aspect-Oriented Component-Based Software Architectures on .NET Technology. In: 3rd International Conference on .NET Technologies, Plzen, Pilsen, Czech Republic, 30 May-1 June (2005) Google Scholar
  16. 16.
    Pérez, J., Ali, N., Carsí, J.Á., Ramos, I.: Dynamic Evolution in Aspect-Oriented Architectural Models. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 59–76. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  17. 17.
    Pérez, J., Ali, N., Ramos, I., Pastor, J.A., Sánchez, P., Álvarez, B.: Tele-operated Systems Development using the PRISMA approach. In: VIII Conference on Software Engineering and Databases, Alicante, Spain (2003) (in spanish)Google Scholar
  18. 18.
    Pinto, M., Fuentes, L., Troya, J.M.: DAOP-ADL: An Architecture Description Language for Dynamic Component and Aspect-Based Development. In: Pfenning, F., Smaragdakis, Y. (eds.) GPCE 2003. LNCS, vol. 2830, pp. 118–137. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  19. 19.
    Popovici, A., Gross, T., Alonso, G.: Dynamic Weaving for Aspect-Oriented Programming. In: Proceedings of the 1st International Conference on Aspect-Oriented Software Development, Enschede, The Netherlands (April 2002)Google Scholar
  20. 20.
    Rajan, H., Sullivan, K.: Eos: Instance-Level Aspects for Integrated System Design. In: Proceedings of the 2003 Joint European Software Engineering Conference and ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE), Helsinki, Finland (September 2003)Google Scholar
  21. 21.
    Rashid, A.: A Hybrid Approach to Separation of Concerns: The Story of SADESK. In: Yonezawa, A., Matsuoka, S. (eds.) Reflection 2001. LNCS, vol. 2192, pp. 231–249. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  22. 22.
    Sánchez, F.: Mask Model: Towards adaptability of synchronization restrictions in LCOO. PhD. dissertation, Extremadura University, Spain (1999)Google Scholar
  23. 23.
    Schult, W., Polze, A.: Aspect-Oriented Programming with C# and.NET. In: 5th IEEE International Symposium on Object-Oriented Real-time Distributed Computing, Washington, DC, pp. 241–248. IEEE Computer Society Press, Los Alamitos (2002)CrossRefGoogle Scholar
  24. 24.
    Shaw, M.: Procedure Calls Are the Assembly Language of Software Interconection: Connectors Deserve First-Class Status. In: Proceedings of Workshop on Studies of Software Design (January 1994)Google Scholar
  25. 25.
    Soares, S., Laureano, E., Borba, P.: Implementing Distribution and Persistence Aspects with AspectJ. In proceedings of the 17th ACM Conference on Object-Oriented Programming systems, languages, and applications, OOPSLA 2002, Seattle, WA, USA, pp. 174–190 (2002) Google Scholar
  26. 26.
    Suvee, D., Vanderperren, W., Jonckers, V.: JasCo: an Aspect-Oriented approach tailored for Component Based Software Development. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, Boston Massachusetts (March 2003)Google Scholar
  27. 27.
    Szyperski, C.: Component software: beyond object-oriented programming. ACM Press and Addison Wesley, New York (1998)Google Scholar
  28. 28.
    Tarr, P., Ossher, H., Harrison, W.H., Sutton, S.M.: N Degrees pf Separation: Multi-Dimensional Separation of Concerns. In: Internacional Conference on Software Engineering (ICSE), pp. 107–119. ACM, New York (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Jennifer Pérez
    • 1
  • Nour Ali
    • 1
  • Jose A. Carsí
    • 1
  • Isidro Ramos
    • 1
  1. 1.Department of Information Systems and ComputationPolytechnic University of ValenciaValenciaSpain

Personalised recommendations