Escolar Documentos
Profissional Documentos
Cultura Documentos
Manuteno de Software
Prof. Ricardo A. Ramos
Manuteno de Software
Alteraes efetuadas no software depois de sua liberao. As alteraes ocorrem por diversas razes. As razes para as alteraes determinam a categoria de manuteno.
Categorias de Manuteno
1) Identificar e Corrigir Erros
Manuteno Corretiva
Categorias de Manuteno
2) Adaptar o Software ao Ambiente
Manuteno Adaptativa
Categorias de Manuteno
3) Atender Pedidos do Usurio para Modificar Funes Existentes, Incluir Novas Funes e Efetuar Melhoramentos Gerais
Categorias de Manuteno
4) Melhorar a manutenibilidade ou confiabilidade futuras e fornecer uma base melhor para futuros melhoramentos
Manuteno Preventiva
10
Custo de Manuteno
Custo da manuteno como uma porcentagem do oramento do software
11
Custo de Manuteno
Outros Custos no Monetrios
Adiamento de oportunidades de desenvolvimento Reduo da qualidade global do software Insatisfao do cliente Insatisfao do pessoal de manuteno
12
Custo de Manuteno
Custo Final da Manuteno
Diminuio dramtica na produtividade
(Boehm )
Custo do desenvolvimento $250.00 por linha de cdigo Custo da manuteno $1000.00 por linha de cdigo
13
Custo de Manuteno
O Custo de manuteno pode ser dividido em:
tentar entender o que o software faz interpretar as estruturas de dados, as caractersticas de interface e limites de desempenho analisar, avaliar, projetar, codificar e testar as modificaes (Atividades Produtivas)
14
Problemas da Manuteno
A maioria dos problemas com a manuteno do software causada por deficincias na maneira como o software foi planejado e desenvolvido
15
Problemas da Manuteno
PROBLEMAS CLSSICOS
difcil ou impossvel traar a evoluo do software atravs das vrias verses. As alteraes no so adequadamente documentadas difcil ou impossvel traar o processo atravs do qual o software foi criado.
16
Problemas da Manuteno
PROBLEMAS CLSSICOS (cont.)
muito difcil entender programas "de outras pessoas". A dificuldade aumenta conforme o nmero de elementos na configurao de software diminui. "As outras pessoas" freqente-mente no esto presentes para explicar.
17
Problemas da Manuteno
PROBLEMAS CLSSICOS (cont.)
A documentao no existe, incompreensvel ou est desatualizada. A maioria dos softwares no foi projetado para suportar alteraes. A manuteno no vista como um trabalho glamouroso.
18
Manutenibilidade
A Manutenibilidade pode ser definida qualitativamente como a facilidade com que o software pode ser entendido, corrigido, adaptado e ou melhorado
19
Manutenibilidade
A manutenibilidade afetada por muitos fatores:
cuidado inadequado com o projeto, codificao e teste configurao de software ruim disponibilidade de pessoal qualificado de software
20
Manutenibilidade
A manutenibilidade afetada por muitos fatores: (cont)
facilidade de manusear o sistema uso de linguagens de programao padronizadas uso de sistemas operacionais padronizados estruturas padronizadas de documentao
21
Manutenibilidade
A manutenibilidade afetada por muitos fatores: (cont)
disponibilidade de um computador prprio para a manuteno disponibilidade da pessoa ou grupo que desenvolveu o software o planejamento para manutenibilidade (fator mais importante que afeta a manutenibilidade)
22
23
25
Revises de Manutenibilidade
A manutenibilidade deve ser considerada em cada nvel do processo de reviso da engenharia de software.
26
Revises de Manutenibilidade
ETAPA DE REVISO DE REQUISITOS
observar: reas de melhoramentos futuros aspectos de portabilidade do software interfaces que poderiam causar impacto manuteno
27
Revises de Manutenibilidade
ETAPA DE REVISO DE PROJETO
avaliar:
projeto arquitetural projeto procedimental projeto de interfaces e projeto de dados
Revises de Manutenibilidade
ETAPA DE REVISO DE CDIGO
dar nfase:
ao estilo documentao interna
29
Revises de Manutenibilidade
ETAPA DE REVISO DE TESTE
Cada passo do teste pode fornecer indcios sobre partes do software que poderiam exigir manuteno preventiva
30
Tarefas de Manuteno
1) Estabelecer uma organizao para a manuteno (de fato" ou formal)
32
Tarefas de Manuteno
2) Descrever procedimentos de avaliao e de comunicao 3) Definir seqncias padronizadas de eventos (para os pedidos de manuteno)
33
Seqncia de Eventos
34
Tarefas de Manuteno
4) Estabelecer procedimentos para registrar a histria das atividades de manuteno
35
Tarefas de Manuteno
5) Definir critrios de reviso e avaliao
37
MEDIDAS de DESEMPENHO e MANUTENO (Swanson) nmero mdio de falhas de processamento por execuo do programa pessoas-horas despendido em cada categoria de manuteno nmero mdio de pessoas-horas despendido por comando fonte adicionado ou retirado devido a manuteno tempo mdio de processamento para um pedido de manuteno porcentagem de pedidos de manuteno por tipo
38
Engenharia Reversa
ENGENHARIA REVERSA
processo de anlise de um software, partindo-se inicialmente da implementao para um nvel mais alto de abstrao
43
Reengenharia
REENGENHARIA
44
45
46
47
48