Processo de Redocumentação: Uma Necessidade

  • Nicolas Anquetil UCB
  • Káthia Marçal de Oliveira UCB

Resumo


A maioria dos engenheiros de software conhece e entende a importância da documentação de um software. Infelizmente, pressões de tempo e custos muitas vezes levam esses engenheiros à não realizar a atividade fundamental de documentação. Somente, quando realizando manutenções posteriores a necessidade de melhor documentação surge como fator essencial. Para manter ativos sistemas antigos sem documentação ou mal documentados, as empresas precisam cada vez mais recursos na manutenção de software. É necessário, portanto, redocumentar esses software para possibilitar uma melhor manutenção atual e futura. Este artigo apresenta um processo de redocumentação de software projetado levando em consideração dois aspectos: a escassez de recursos para realizar essa atividade e o uso de uma abordagem baseada em engenharia reversa, ou seja, a partir do código fonte para níveis mais abstratos de documentação. Este artigo apresenta ainda lições aprendidas obtidas do acompanhamento de uso desse processo em empresas.

Palavras-chave: Processo de Software, Qualidade de Processo de Software

Referências

NBR ISO/IEC 12207, 1998, Tecnologia de Informação – Processos de Ciclo de Vida de Software, Associação Brasileira de Normas Técnicas, Rio De Janeiro, Brasil.

EMAM, K. E., DROUIN, J. N., MELO, W., 1998, SPICE – The Theory and Practice of Software Process Improvement and Capability Determination, California, IEEE Computer Society.

PAULK, M. C., WEBER, C. V., CURTIS, B., CHRISSIS, M. B. (eds), 1995, The Capability Maturity Model: Guidelines for Improving the Software Process, Addison- Wesley.

LEHMAN, M,M., 1980, On Understanding Laws, Evolution and Conversation in the Large-Program Life Cycle, The Journal of System and Software. 1:213-21.

PRESSMAN, R. S., 2001, Software Engineering: A Practitioner’s Approach, 5th edition, McGraw-Hill.

PFLEEGER, S., 2001, Software Engineering – Theory and Practice, New- Jersey, Prentice-Hall Inc., 2a Edição.

von MAYRHAUSER, A., e VANS, A.M., 1994, Dynamic Code Cognition Behaviors For Large Scale Code, Proceedings of 3rd Workshop on Program Comprehension, pp. 74-81.

PENTEADO, R.A.D., 1996,Um método para Engenharia Reversa Orientada a Objetos, Tese de Doutorado, USP, São Carlos.

MULLER, H, JAHNKE, J.H., SMITH, D. et al, 2000, Reverse Engineering: A roadmap, In Antony Finkelstein (ed) – The future of Software Engineering – 22nd International Conference on Software Engineering, pp 47-60.

JACOBSON, I, BOOCH, G e RUMBAUGH, J, 1998, The Unified Software Process, Addison-Wesley.

MIRA KAJKO-MATTSSON, 2001, Motivating the Corrective Maintenance Maturity Model, Proceeding of The International Confernce on Engineering Complex Computer Systems.

ISO/IEC 9126/NBR 13596, 1996, Tecnologia de Informação – Avaliação de Produto de Software – Características de Qualidade e Diretrizes para o seu uso, ABNT – Associação Brasileira de Normas Técnicas.

GIRARD, J-F. KOSCHKE, R., 1997, Finding Components in a Hierarchy of Modules: a Step towards Architectural Understanding, International Conference on Software Maintenance, ICSM'97, pp. 58-65.

ANQUETIL, N., LETHBRIDGE, T.C. 1999, Recovering Software Architecture from the Names of Source Files, Journal of Software Maintenance: Research and Practice, v. 11, pp. 1-21.
Publicado
14/10/2002
ANQUETIL, Nicolas; OLIVEIRA, Káthia Marçal de. Processo de Redocumentação: Uma Necessidade. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 1. , 2002, Gramado-RS. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2002 . p. 30-42. DOI: https://doi.org/10.5753/sbqs.2002.16214.