ScholarGate
Assistente

Manutenção de Software

Manutenção de software é a modificação de um produto de software após a entrega para corrigir falhas, adaptá-lo a um ambiente em mudança e melhorar sua função, desempenho ou manutenibilidade.

Encontrar tema com PaperMindEm breveFind papers & topics
Tools & resources
Baixar slides
Learn & explore
VídeoEm breve

Definition

Manutenção de software é a totalidade das atividades necessárias para fornecer suporte econômico ao software após a entrega, incluindo a correção de defeitos, a adaptação a novos ambientes e o aprimoramento de capacidades, preservando a integridade.

Scope

Este tópico abrange as quatro categorias de manutenção (corretiva, adaptativa, perfectiva, preventiva); o processo de manutenção desde a solicitação de mudança até a análise de impacto, modificação, teste e lançamento; a compreensão do programa e os desafios de modificar código desconhecido; a manutenibilidade como um atributo de qualidade; e os padrões e métricas que regem o trabalho de manutenção.

Core questions

  • Como as mudanças de manutenção são classificadas e priorizadas?
  • Quais etapas do processo levam uma solicitação de mudança a uma modificação lançada?
  • Como o impacto de uma mudança proposta é analisado antes de ser feita?
  • O que torna o software manutenível e como a manutenibilidade é medida?

Key theories

Categorias de manutenção
A manutenção corretiva corrige falhas, a manutenção adaptativa acomoda mudanças ambientais, a manutenção perfectiva melhora ou estende a função e o desempenho, e a manutenção preventiva melhora a manutenibilidade futura; as categorias não corretivas dominam o esforço.
Análise de impacto
Antes que uma mudança seja implementada, a análise de impacto identifica os componentes, interfaces e testes afetados, usando informações de dependência e rastreabilidade para estimar o esforço e os efeitos em cascata e para limitar o risco.

Clinical relevance

Como a manutenção domina o custo total do software e a maior parte dela é adaptativa e perfectiva, em vez de corretiva, projetar para a manutenibilidade e seguir um processo de manutenção disciplinado governa diretamente a economia de longo prazo de um sistema.

Evidence & guidelines

A ISO/IEC 14764 define o processo de manutenção e suas atividades, e a ISO/IEC 25010 especifica subcaracterísticas de manutenibilidade, como modularidade, modificabilidade e testabilidade.

History

Pesquisas nas décadas de 1970 e 1980 revelaram que a manutenção consome a maior parte dos orçamentos de software e que o trabalho adaptativo e perfectivo supera a correção corretiva; isso reformulou a manutenção de uma reflexão tardia para uma fase central e governada por processos, posteriormente padronizada na ISO/IEC 14764.

Key figures

  • Meir M. Lehman
  • Bennet Lientz
  • Ian Sommerville

Related topics

Seminal works

  • iso14764
  • swebok2014
  • sommerville2015

Frequently asked questions

Que tipo de manutenção consome mais esforço?
Estudos consistentemente mostram que a manutenção adaptativa e perfectiva — adaptar o software a novos ambientes e aprimorá-lo — juntas respondem pela maior parte do esforço de manutenção, bem acima da correção de bugs.
Por que é tão difícil mudar código antigo?
Os mantenedores devem primeiro compreender o código que muitas vezes não escreveram, onde a lógica original e a documentação podem estar ausentes; entender o sistema existente e os efeitos em cascata de uma mudança frequentemente custa mais do que fazer a própria mudança.

Methods for this concept

Related concepts