Redocumentation Process: A Necessity
Abstract
Most software engineers know and understand the importance of software documentation. Unfortunately, in many cases, time and budget constraints prevent them ro perform the fundamental activity of documentation. A few maintenance operations later, the need for better documentation arises as an essential factor. To keep active old software systems with inexisting or bad documentation, companies need to spend more resources in software maintenance. It is essential, therefore, to re-document those software systems to be possible a better actual and future maintenance. Tthis paper presents a software process redocumentation designed taking into accoount two aspects: the scarcity of resources to perform such a task and the use of reverse engineering approach, that is, from source code to more abstract documentation. This paper also presents lessons learned from the use of software process in some companies.
References
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.
