Professional Documents
Culture Documents
MARCIO OLIVEIRA DENNY BANDEIRA IURI MACHADO FLAVIO FAVIERI RICARDO GUERRA BRUNO PIERRE
MARCIO OLIVEIRA DENNY BANDEIRA IURI MACHADO FLAVIO FAVIERI RICARDO GUERRA BRUNO PIERRE
ndice
Custo da Manuteno.....................................................8 Custo de Manuteno.....................................................6 Custo de Manuteno.....................................................7 Elementos de Eng. Reversa e Reengenharia...............16 Engenharia Reversa e Reengenharia...........................14 Engenharia Reversa e Reengenharia...........................15 Fatores Facilitadores.......................................................8 Gerenciamento da Manuteno....................................13 Manuteno de Software................................................3 Manutenibilidade.............................................................4 Organizao para a Manuteno....................................9 Organizao para a Manuteno..................................10 Problemas da Manuteno.............................................5 Processo de Manuteno..............................................11 Registros de Manuteno.............................................12
Manuteno de Software
Os Fatores de Qualidade de Software focalizam trs aspectos importantes do Software Produto: (ISO 9126)
Manutenibilidade
facilidade com que o software pode ser entendido, corrigido, adaptado e ou melhorado.
Tipos de Manuteno
o MANUTENO CORRETIVA: identificar e corrigir erros o MANUTENO ADAPTATIVA: adaptar o software ao ambiente o MANUTENO PERFECTIVA: atender pedidos do usurio para modificar funes existentes, incluir novas funes e efetuar melhoramentos gerais o MANUTENO PREVENTIVA: Melhorar a manutenibilidade ou confiabilidade futuras e fornecer uma base melhor para futuros melhoramentos
Problemas da Manuteno
A maioria dos problemas com a manuteno do software causada por deficincias na maneira como o software foi planejado e desenvolvido.
PROBLEMAS CLSSICOS
o software foi criado. A maioria dos softwares no foram projetados para suportar alteraes. o difcil ou impossvel traar a evoluo do software
atravs das vrias verses. As alteraes no so adequadamente documentadas A documentao no existe, incompreensvel ou est desatualizada. o muito difcil entender programas "de outras pessoas",
que frequentemente no esto presentes para explicar. A dificuldade aumenta conforme o nmero de elementos na configurao de software aumenta. o A manuteno no vista como um trabalho "glamoroso"
ou importante.
Custo de Manuteno
- 70 % do oramento do software (ciclo de vida) - Diminuio dramtica na produtividade 40:1 [Boehm,79] - Custo do desenvolvimento : $25,00 por linha de cdigo - Custo da manuteno : $1.000,00 por linha de cdigo
- Adiamento de oportunidades de desenvolvimento - Insatisfao do cliente - Reduo da qualidade global do software - Insatisfao do pessoal de desenvolvimento
Custo de Manuteno
o determinar
MTRICAS DE MANUTENIBILIDADE (Gilb, 1979) - tempo de reconhecimento do problema - tempo de demora administrativa - tempo de anlise do problema - tempo de especificao da alterao - tempo de correo ou modificao - tempo de teste local e global - tempo de reviso da manuteno
Custo da Manuteno
MANUTENO o Belady, 1972 M = P + Ke(c-d) Onde, M = esforo de manuteno P = esforo produtivo K = constante emprica e = nmero Euler (2,78...) c = medida de complexidade atribuida a falta de bom projeto e de boa documentao d = medida do grau de familiaridade com o software
Fatores Facilitadores
o o o o o documentado
Pessoal qualificado Processo de software estabelecido e documentado Sistemas com estruturas lgicas e compreensveis Processo de manuteno estabelecido e documentado Processo de controle de mudanas estabelecido e
10
11
mudanas favoream um solicitante e prejudiquem outros... o Controlador de manuteno: evita que modificaes sejam
implementadas sem serem devidamente aprovadas... o Supervisor de sistemas: uma vez que tem familiaridade com
12
Processo de Manuteno
13
Registros de Manuteno
o o o o o o
identificao e descrio do programa nmero de linhas de comando linguagem de programao usada data da instalao do programa nmero de execues do programa desde a instalao nmero de falhas de processamento associadas ao item
anterior o o o programa o o datas de incio e fim da manuteno nmero de pessoas-horas despendidos na manuteno identificao e descrio das alteraes no programa tipo de manuteno nmero de linhas de comandos adicionadas por alterao no
14
Gerenciamento da Manuteno
o o
por linha de comando adicionado ou deletado devido a manuteno o tempo mdio de processamento para um
pedido de manuteno o tipo o o Decises: Tecnologia de Desenvolvimento o o Estrutura de Manuteno porcentagem de pedidos de manuteno por
Alocao de Recursos
15
o o
de espaguete", mdulos muito grandes e poucas linhas de comentrios significativos. o Projeto de dados e projeto arquitetural ruins. o Nenhuma metodologia de desenvolvimento foi
16
um software, partindo-se inicialmente da implementao para um nvel mais alto de abstrao o REENGENHARIA: Implica no exame e na alterao
17
DIRECIONALIDADE: Engenharia Reversa: se a direcionalidade tem sentido nico, toda informao extrada a partir do cdigo fonte e usada durante as atividades de manuteno. Reengenharia : se a direcionalidade tem sentido duplo, a informao usada para "alimentar" uma abordagem de reengenharia, que tentar reestruturar ou regenerar o programa antigo. GRAU DE ABSTRAO Refere-se ao nvel de generalidade das descries. Conforme o nvel de abstrao aumenta, mais produtivas se tornam as informaes INTEIREZA: Refere-se ao nvel de detalhes que fornecido em cada nvel de abstrao. INTERATIVIDADE: Refere-se ao grau de participao do ser humano no processo de engenharia reversa. Conforme o nvel de abstrao aumenta, a interatividade deve aumentar ou a inteireza ser prejudicada.
18