Trabalho de reengenharia de software
MARLUAN E. BRUNIERA
1
2
3
4
5 RIBEIRÃO PRETO
6 06 - 2011
7
8 MARLUAN E. BRUNIERA
1 REENGENHARIA DE SOFTWARE
Trabalho apresentado ao Professor Fernando Perez da disciplina de Engenharia de Software da turma CC6P18/7P18 , turno noturno do curso de Ciência da Computação.
UNIP - Ribeirão
Ribeirão Preto - 06/06/2011
2
4 1-INTRODUÇÃO
Segundo Osborne e Chikofsky (1990), a variedade de problemas que envolve manutenção de software cresce constantemente, sendo que as soluções não acompanham essa evolução. Esses problemas são resultantes de código fonte e documentação mal elaborados, além da falta de compreensão do sistema.
A partir do momento em que um sistema começa a ser utilizado, ele entra em um estado contínuo de mudança. Mesmo que tenha sido construído aplicando as melhores técnicas de projeto e codificação existentes, os sistemas vão se tornando obsoletos em vista das novas tecnologias que são disponibilizadas.
Além das correções de erros, as mudanças mais comuns que os sistemas sofrem são migrações para novas plataformas, ajustes para mudanças de tecnologia de hardware ou sistema operacional e extensões em sua funcionalidade para atender os usuários.
Em geral, essas mudanças são realizadas sem que haja preocupação com a arquitetura geral do sistema, produzindo estruturas mal projetadas, documentação desatualizada, lógica e codificação ruins, sendo esses os focos que dificultam a manutenção em um sistema (OSBORNE e CHIKOFSKY, 1990).
Quando o sistema não é fácil de ser mantido sendo, porém, de grande utilidade, ele deve ser reconstruído. Partindo-se do sistema existente (via código-fonte, interface ou ambiente), são abstraídas as suas funcionalidades e são construídos o modelo de análise e o projeto do