Projeto Baseado em Aspectos do Padrão Camada de Persistência

  • Valter Vieira de Camargo USP
  • Ricardo Argenton Ramos UFSCar / FGP
  • Rosângela Penteado UFSCar
  • Paulo Cesar Masiero USP

Abstract


Design Patterns are considered well established mechanisms for software reuse and evolution. However, more recent researches show that although the design of these patterns is reusable, their implementation is not. Some authors have showed that object oriented implementation techniques are not suitable to implement design patterns because they do not have mechanisms to handle orthogonal concerns to the pattern´s main interest. Aspect oriented programming techniques provide language constructors more suitable to encapsulate this type of behavior, thus supporting reusability of the pattern’s code. This paper presents a proposal of aspect-based design for the Persistence Layer design pattern and some guidelines that help creating an aspect-based design from an object-oriented system developed reusing a specific design pattern.
Keywords: Design Patterns, Aspects, Persistence Layer, Persistence, Modularity

References

Camargo, V.V. Reengenharia Orientada a Objetos de Sistemas COBOL com a utilização de Padrões de Projeto e Servlets. Dissertação de Mestrado, Departamento de Computação da Universidade Federal de São Carlos, 2001.

Camargo, V.V.; Prieto, A.G.; Penteado, R.A.D. Uma Experiência na Integração de UML, Padrão de Projeto e Servlet. In: Proceedings do CLEI 2000.

Cagnin, M.I. Avaliação das Vantagens quanto à Facilidade de Manutenção e Expansão de Sistemas Legados Sujeitos à Engenharia Reversa e Segmentação. Dissertação de Mestrado, DC-UFSCar, 1999.

Czarnecki, K., Eisenecker, U. W. Generative Programming. Addison Wesley, 2000.

Elrad, T, et al. Discussing Aspects of AOP. Communications of the ACM, vol. 44, No. 19, pp. 33-38, outubro de 2001.

Elrad, T, Filman R., Bader A. Aspect-Oriented Programming. Communications of the ACM, vol 44, No 10, pp. 29-32, 2001.

Elrad, T., Aksit, M., Kiczales, G., Lieberherr, K., Ossher, H. Discussing Aspects of AOP. Communications of the ACM, october 2001/Vol. 44 No.10.

Gama, E., Helm, R., Johnson, R., Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995.

Hannemann and Kiczales. Design Pattern Implementation in Java and AspectJ, Proceedings of the 17th Annual ACM conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), pages 161-173, November 2002.

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

Noda, N. and Kishi, T. "Implementing Design Patterns Using Advanced Separation of Concerns", in Proceedings of OOPSLA 2001, Workshop on Advanced Separation of Concerns in Object-Oriented Systems, Tampa Bay, FL, October 2001.

Soares, S., Laureano, E., Borba, P. Implementing Distribution and Persistence Aspects with AspectJ. In Proceedings of OOSPLA 2002, November 4-8, Seattle, Washington, USA.

Soares, S., Borba, P. AspectJ - Programação orientada a aspectos em Java. Tutorial no SBLP 2002, 6º Simpósio Brasileiro de Linguagens de Programação. páginas 39-55. 5 a 7 de Junho 2002, PUC-Rio, Rio de Janeiro, Brasil.

Yoder, J. W.; Johnson, R. E.; Wilson, Q. D. Connecting Business Objects to Relational Databases. Conference on the Pattern Languages of Programs, 1998.

Rashid, A.; Chitchyan, R. Persistence as an Aspect. In Proceedins of 2nd International Conference on Aspect Oriented Software Development - AOSD 17 to 21 march of 2003. Boston - USA.
Published
2003-10-08
CAMARGO, Valter Vieira de; RAMOS, Ricardo Argenton; PENTEADO, Rosângela; MASIERO, Paulo Cesar. Projeto Baseado em Aspectos do Padrão Camada de Persistência. In: BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING (SBES), 17. , 2003, Manaus/AM. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2003 . p. 110-125. ISSN 2833-0633. DOI: https://doi.org/10.5753/sbes.2003.23856.