Um Estudo Comparativo do Tempo de Composição de um Framework Orientado a Aspectos de Persistência e de um Framework Orientado a Objetos de Persistência
Resumo
Este artigo apresenta um estudo quantitativo que investigou se o uso da orientação a aspectos na implementação de frameworks de persistência afeta o tempo de composição com um código-base. Para conduzir esse estudo, foram utilizadas duas versões do mesmo framework de persistência – uma implementada com orientação a aspectos, e outra implementada com orientação a objetos. Alunos de uma disciplina de pós-graduação participaram do estudo coletando os dados da composição dos dois frameworks com duas aplicações. Os resultados mostraram que o tempo de composição é menor quando se utiliza programação orientada a aspectos.
Referências
Cayenne. (2006). http://www.objectstyle.org/cayenne/ (último acesso: 04 de abril de 2006)
Constantinides, C.A., Bader, A, Fayad, M.F. (2000) "Designing an Aspect-Oriented Framework in an Object-Oriented Environment". ACM Computing Surveys, v.32.
Couto, C.F.M., Valente, M.T.O., Bigonha, R.S. (2005) "Um Arcabouço Orientado por Aspectos para Implementação Automatizada de Persistência". In: anais do 2º. Workshop Brasileiro de Desenvolvimento de Software Orientado a Aspectos (WASP'05), evento satélite do XIX SBES, Uberlândia, MG, Brasil, outubro.
Garcia, A., Santanna, C., Figueiredo E., Kulesza, U., Lucena, C., Staa, A. (2006) Modularizing Design Patterns with Aspects: A Quantitative Study. Transactions On Aspect-Oriented Software Development I, Series: Lecture Notes in Computer Science, Vol. 3880, p. 36-74.
Hanenberg, S., Hirschfeld, R., Unland, R., Kawamura, K. (2004) "Applying Aspect-Oriented Composition to Framework Development - A Case Study". In: proc of 1st International Workshop on Foundations of Unanticipated Software Evolution, Barcelona, Spain, march 28.
Hibernate. (2006) https://www.hibernate.org (último acesso em 4 de abril de 2006).
Hannemann, J., Kiczales, G. (2002) "Design Pattern Implementation in Java and AspectJ". In: proc. of OOPSLA'02 (November), 161-173.
Kersten, A., Murphy, G. (1999) Atlas: "A Case Study in Building a Web-based learning environment using aspect-oriented programming". In: proc. of OOPSLA'99, November.
Kiczales, G.; Lamping, J.; Mendhekar, A.; Maeda, C.; Lopes, C.; Loingtier, J.; Irving, J. (1997) "Aspect Oriented Programming". In: proceedings of ECOOP. pp. 220-242.
OJB. (2006) http://db.apache.org/ojb/. (último acesso em 4 de abril de 2006).
Pinto, M., Fuentes, L., Fayad, M.E, Troya, J.M. (2002) "Separation of Coordination in a Dynamic Aspect Oriented Framework". In: proc. of the 1st International Conference on Aspect-Oriented Software Development, April.
Rashid, A., Chitchyan, R. (2003) "Persistence as an Aspect". In: proc. of 2nd International C. on Aspect Oriented Software Development(AOSD) Boston-USA, March.
Soares, S., Laureano, E., Borba, P. (2002) "Implementing Distribution and Persistence Aspects with AspectJ". In: proc. of ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications.
Vanhaute, B., Win, B., Decker, B. (2001) "Building Frameworks in AspectJ". In: European Conference on Object-Oriented Programming (ECOOP), Separation of Concerns Workshop. pp. 1-6, June.
Wohlin, C.; Runeson, P.; Höst, M.; Regnell, B.; Wesslén, A. Experimentation in Software Engineering: an Introduction. Kluwer Academic Publishers, 2000.
Zhao, J., Xu, B. (2004) "Measuring Aspect Cohesion". In: Proc of the Conference on Fundamental Approaches to Software Engineering (FASE'2004), LNCS 2984, Springer, Barcelona, Spain, March 29-31, 54-68.