Draco-PUC, Experiências e Resultados de Re-Engenharia de Software

  • Julio Cesar Sampaio do Prado Leite PUC-Rio
  • Antonio F. Prado PUC-Rio
  • Marcelo Sant’Anna PUC-Rio

Resumo


A re-engenharia de software é um processo distinto da engenharia tradicional porque parte de um desenho já existente. Tendo como ponto de partida um desenho, a re-engenharia pode explorar oportunidades de reutilização. Como normalmente não se dispõe de um desenho que reflita o artefato que se quer refazer, a recuperação de desenho ou engenharia de reversa passa a ser peça fundamental na re-engenharia. Este artigo relata nossa experiência na re-engenharia da máquina Draco, e concentra sua atenção na re-engenharia do componente analisador sintático da máquina Draco. A máquina Draco é uma instanciação da paradigma Draco, um dos novos paradigmas para desenvolvimento de software. O paradigma Draco distingue-se pelo uso de técnicas de transformação aliadas a tecnologias de compilação, procurando focar o desenvolvimento de software na reutilização de componentes.

Referências

Arango, G., Baxter I., Freeman P., Pidgeon C., A Transformation-Based Paradigm of Software Maintenance, IEEE Software, Vol. 3, pp. 27-39, May 1986.

Arango, G., Domain Engineering for Software Reuse, PhD. Dissertation, Dept. Of Information and Computer Science, University of California, Irvine, 1988.

Baxter, I. Transformational Maintenance by Reuse of Design Histories, Tese de Doutorado, University of California, Irvine, USA; Nov., 1990.

Biggerstaff, T. Design Recovery for Maintenance and Reuse, IEEE Computer, 22(7); Jul., 1989; pags. 36-49.

Bison, Users Guide, Free Software Foundation, Boston, Mass, 1990.

Chikofsky, E. e Cross II, J. Reverse Engineering and Design Recovery: A Taxonomy, IEEE Software; Jan., 1990; pags. 222-240.

Freeman, P. Software Reusability, IEEE Computer Society, March 1987.

Jackson, M. System Development, Prentice Hall International; 1983.

Leite, J.C.S.P. e Prado, A.F. Design Recovery - A Multi-Paradigm Approach, First International Workshop on Software Reusability, Dormund, Germany; Jul., 1991.

Parikh, G. Technics of Program and Systems Maintenance (2a edição), QED Information Sciences, Inc., 1988.

Neighhors, J., The Draco Approach to Constructing Software from Reusable Components, IEEE Trans. on Software Engineering, SE 10:561-573, September 1984.

Normark, K. Transformations And Abstract Presentations In A Language Development Environment User Manual, Aarhus University, Denmark, 1987.

Prado, A.F., Um Estudo de Analisadores Sintáticos, Monografias em Ciência da Computação, Departamento de Informática, PUC/RIO, 1990.

Prado, A.F., Estratégia de Re-Engenharia de Software Orientada a Domínios, Tese de Doutorado, Departamento de Informática, PUC/RIO, 1192.

Ross, D. Structured Analysis (SA): A Language for Communicating Ideas. In Tutorial on Design Techniques, Freeman and Wasserman (ed.) IEEE Catalog No EHQ 161 0(1980), 107-125.

Rugaber, S., Ornburn, S. e Le Blanc Jr., R. Recognizing Design Decisions in Programs. In IEEE Software, 7(1), Jan. 1990.

Souza, A., Manutenção de Software sob Enfoque de Re-Engenharia. Dissertação de Mestrado, Departamento de Informática Pontifícia Universidade Católica, Rio de Janeiro; Março, 1991.

Vallabhanen, S. Auditing the Maintenance of Software, Prentice Hall Inc., 1987.
Publicado
04/11/1992
LEITE, Julio Cesar Sampaio do Prado; PRADO, Antonio F.; SANT’ANNA, Marcelo. Draco-PUC, Experiências e Resultados de Re-Engenharia de Software. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 6. , 1992, Gramado/RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 1992 . p. 115-128. DOI: https://doi.org/10.5753/sbes.1992.25178.