Captor-AO: Gerador de Aplicações apoiado pela Programação Orientada a Aspectos

  • Carlos Alberto de Freitas Pereira Júnior USP
  • Paulo Cesar Masiero USP
  • Rosana Teresinha Vaccare Braga USP

Resumo


Geradores de aplicações são ferramentas que promovem o reúso de software por gerar aplicações de forma automática, partindo de uma especificação em alto nível. São especialmente importantes em abordagens de desenvolvimento de linhas de produtos de software, em que artefatos podem ser combinados para obter uma grande variedade de diferentes produtos. Este artigo apresenta o Captor-AO, que é uma extensão do gerador de aplicações Captor, também desenvolvido pelo grupo de pesquisa dos autores. O Captor-AO utiliza conceitos da programação orientada a aspectos para auxiliar o desenvolvimento de linhas de produtos, compondo diversos domínios-base e transversais que atualmente precisam ser compostos de forma manual.

Referências

Apel, S., Leich, T., Rosenmuller, M., and Saake, G. (2005). Combining feature-oriented and aspect-oriented programming to support software evolution. In 2nd ECOOP Workshop on Reflection, AOP and Meta-Data for Software Evolution (RAM-SE'05).

Batory, D., Cardone, R., and Smaragdakis, Y. (2000). Object-oriented framework and product lines. In Proc. of the 1st conference on Software product lines: experience and research directions, pages 227-247, MA, USA. Kluwer Academic Publishers.

Camargo, V. V. (2006). Frameworks transversais: definições, classificações, arquitetura e utilização em um processo de desenvolvimento de software. Tese de doutorado, ICMC-USP, São Carlos, SP.

Cirilo, E., Kulesza, U., and Lucena, C. (2007). Genarch: a model-based product derivation tool. In Proceedings of Simpósio Brasileiro de Componentes, Arquitetura e Reutilização de Software (SBCARS'2007), pages 31-46.

Cleaveland, J. C. (1988). Building application generators. IEEE Software, 9(4):25-33.

Czarnecki, K. and Eisenercker, U. W. (2002). Generative programming. Addison-Wesley.

Gomaa, H. (2004). Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison-Wesley.

Griswold, W. G., Sullivan, K., et al. (2006). Modular software design with crosscutting interfaces. IEEE Software, 23(1):51-60.

Kiczales, G., Lamping, J., Menhdhekar, A., Maeda, C., Lopes, C., Loingtier, J. M., and Irwin, J. (1997). Aspect-oriented programming. In European Conference on Object-Oriented Programming, pages 220-242. Springer-Verlag.

Kulesza, U., Alves, V., Garcia, A., Neto, A., Cirillo, E., Lucena, C., and Borba, P. (2007). Mapping features to aspects: A model-based generative approach. 10th International Workshop on Early Aspects, AOSD'07.

Kulesza, U., Coelho, R., Alves, V., Garcia, A., von Staa, A., Lucena, C., and Borba, P. (2006). Implementing framework crosscutting extensions with ejps and aspectj. In Proceedings of ACM SIGSoft XX Brazilian Symposium on Software Engineering.

Lee, K., Kang, K. C., Kim, M., and Park, S. (2006). Combining feature-oriented analysis and aspect-oriented programming for product line asset development. In SPLC '06: Proceedings of the 10th International on Software Product Line Conference, pages 103-112, Washington, DC, USA. IEEE Computer Society.

Lesaint, D. and Papamargaritis, G. (2004). Aspects and constraints for implementing configurable product-line architectures. In Fourth Working IEEE/IFIP Conference on Software Architecture (WICSA 2004), pages 135-144, USA. IEEE Computer Society.

Mezini, M. and Ostermann, K. (2004). Variability management with feature-oriented programming and aspects. SIGSOFT Softw. Eng. Notes, 29(6):127-136.

Pacios, S. F. (2006). Uma abordagem orientada a aspectos para desenvolvimento de linhas de produtos de software. Master's thesis, ICMC/USP, São Carlos, SP.

Shimabukuro, E. K., Masiero, P. C., and Braga, R. T. V. (2006). Captor: Um gerador de aplicações configurável. Sessão de ferramentas do 20º Simpósio Brasileiro de Engenharia de Software (XX SBES).

Smaragdakis, Y. and Batory, D. (2000). Application generators. Encyclopedia of Electrical and Electronics Engineering. John Wiley and Sons.

Weiss, D. M. and Lai, C. T. R. (1999). Software product-line engineering: a family-based software development process. Addison-Wesley.
Publicado
22/08/2008
PEREIRA JÚNIOR, Carlos Alberto de Freitas; MASIERO, Paulo Cesar; BRAGA, Rosana Teresinha Vaccare. Captor-AO: Gerador de Aplicações apoiado pela Programação Orientada a Aspectos. In: SALÃO DE FERRAMENTAS - SIMPÓSIO BRASILEIRO DE COMPONENTES, ARQUITETURAS E REUTILIZAÇÃO DE SOFTWARE (SBCARS), 2. , 2008, Porto Alegre/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2008 . p. 01-08. DOI: https://doi.org/10.5753/sbcars_estendido.2008.24359.