Manutenção de Software: Custos, Problemas e Manutenibilidade

Tecnologia2,86 KB

Custo de Manutenção de Software

Os custos de manutenção de software têm aumentado constantemente durante os últimos 20 anos. Se nada for feito para melhorar nossa abordagem à manutenção, muitas empresas gastarão 80% de seus orçamentos em manutenção. Os custos de manutenção em dólar são a nossa maior preocupação, mas outros custos menos tangíveis podem ser uma causa de preocupação ainda maior.

Custos Intangíveis da Manutenção

  • Oportunidade de desenvolvimento de software que é postergada ou perdida, pois recursos são destinados à manutenção;
  • Insatisfação dos clientes quando solicitações não podem ser encaminhadas oportunamente;
  • Redução da qualidade global quando mudanças introduzem erros latentes;
  • Problemas causados durante os esforços de desenvolvimento.

Redução da Produtividade

O custo final da manutenção de software é uma drástica diminuição da produtividade que ocorre quando a manutenção de programas antigos é iniciada.

Problemas Clássicos na Manutenção

  • Frequentemente é difícil ou impossível rastrear a evolução do software;
  • Frequentemente é difícil ou impossível rastrear o processo através do qual o software foi criado;
  • Excepcionalmente difícil entender o programa de outra pessoa.

Manutenibilidade

A facilidade com que um software pode ser entendido, corrigido, adaptado e/ou aumentado. É a meta primordial que orienta os passos de um processo de engenharia de software.

Manutenibilidade: Fatores Controladores

  • Disponibilidade de pessoal de software qualificado;
  • Estrutura de sistema compreensível;
  • Facilidade de manuseio do sistema;
  • Uso de linguagens de programação padronizadas;
  • Uso de sistemas operacionais padronizados.

Manutenibilidade: Medidas Quantitativas

  • Tempo de reconhecimento do problema;
  • Tempo de retardo administrativo;
  • Tempo de coleta de ferramentas de manutenção;
  • Tempo de análise do problema;
  • Tempo de especificação de mudanças;
  • Tempo de correção (ou modificação) ativa;
  • Tempo de testes locais;
  • Tempo de testes globais;
  • Tempo de revisão da manutenção;
  • Tempo de recuperação total.

Manutenibilidade: Revisões no Processo

Em cada nível do processo de revisão de engenharia de software, a manutenibilidade deve ser considerada.

Durante a Revisão de Requisitos:

  • Anotar as áreas de futuros acréscimos e potencial revisão;
  • Questões de portabilidade do software são discutidas;
  • Interfaces do sistema são consideradas;
  • Projeto dos dados, projeto arquitetural, processo procedimental e projeto de interfaces são avaliados.

Baixar

PDF Word HTML