Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Reengenharia de Software: Evolução, Ferramentas e Benefícios, Notas de estudo de Evolução

Uma agenda de uma palestra sobre reengenharia de software, abordando temas como evolução de software, processo de reengenharia, ferramentas utilizadas e benefícios obtidos. O documento inclui exemplos práticos e referências a literatura.

O que você vai aprender

  • Quais são as principais ferramentas utilizadas na reengenharia de software?
  • Qual é a diferença entre engenharia reversa e reengenharia?
  • Quais são os benefícios obtidos através da reengenharia de software?
  • Quais são as principais etapas do processo de reengenharia de software?

Tipologia: Notas de estudo

2022

Compartilhado em 07/11/2022

Kaka88
Kaka88 🇧🇷

4.5

(262)

397 documentos

1 / 38

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Prof. André Hora
DCC/UFMG
2019.1
Reengenharia de Software
Engenharia de Software II
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26

Pré-visualização parcial do texto

Baixe Reengenharia de Software: Evolução, Ferramentas e Benefícios e outras Notas de estudo em PDF para Evolução, somente na Docsity!

Prof. André Hora DCC/UFMG

Reengenharia de Software

Engenharia de Software II

Agenda

1. Evolução de software

  1. Reengenharia de software
  2. Processo de reengenharia
  3. Ferramentas

Exemplo: Realidade População: 10K População: 2.5M (5.8M) 1900 2017

Evolução de Software No Eclipse , 58% dos métodos da versão 2.0 não existiam na versão 1. [Mens et al., 2008] LOC

Manutenção de Software

  • (^) Processo de alterar o sistema após sua entrega
    • (^) Correção de defeitos
    • (^) Refatoração
    • (^) Adição de funcionalidades
    • (^) Mudanças no ambiente externo

Refatoração

  • (^) Refatoração: mudança realizada nas estruturas internas do programa para facilitar seu entendimento e baratear suas alterações sem modificar seu comportamento
  • (^) Refatoração vs otimização?

Tipos de Manutenção

  • (^) Manutenção Corretiva
  • (^) Manutenção Preventiva
  • (^) Manutenção Evolutiva
  • (^) Manutenção Adaptativa

Tipos de Manutenção

  • (^) Manutenção Corretiva
  • (^) Manutenção Preventiva
  • (^) Manutenção Evolutiva
  • (^) Manutenção Adaptativa

Algumas vezes

manutenção se

torna difícil ,

arriscada e

custosa

Agenda

  1. Evolução de software 2. Reengenharia de software
  2. Processo de reengenharia
  3. Ferramentas

Reengenharia de Software

  • (^) Reconstruir sistema
  • (^) Melhorar desempenho, manutenabilidade, segurança, documentação, entre outros
  • (^) Melhorar estruturas e entendimento
  • (^) Sistemas legados

Benefícios da Reengenharia

Benefícios da Reengenharia

  • (^) Reduzir a complexidade de sistemas legados
  • (^) Exemplos:
    • (^) Portar para nova plataforma
    • (^) Melhorar performance
    • (^) Extrair modelos
    • (^) Explorar novas tecnologias
    • (^) Reduzir dependência humana

Quando aplicar reengenharia?

  • (^) Documentação obsoleta ou não documentação
  • (^) Desenvolvedores deixaram empresa
  • (^) Conhecimento limitado do sistema
  • (^) Muito tempo gasto para realizar pequenas mudanças
  • (^) Correção de defeitos frequente
  • (^) Problemas de manutenção (efeito cascata)

Engenharia x Reengenharia