O documento discute a manutenção de software, definindo-a como qualquer trabalho realizado no software após ele se tornar operacional. A maior parte do trabalho de manutenção é adaptativa, destinada a corrigir erros e atualizar o software de acordo com novas necessidades. A reengenharia é apresentada como um processo para melhorar a manutenção de softwares existentes, atualizando sua tecnologia e estendendo sua vida útil por meio do uso de ferramentas automatizadas.