Processo de Reengenharia Prático Pós- Graduação Pós- Graduação Karolyne Almeida Siqueira Michael Caldas da Silva.

  • Published on
    17-Apr-2015

  • View
    103

  • Download
    1

DESCRIPTION

Slide 1 Processo de Reengenharia Prático Pós- Graduação Pós- Graduação Karolyne Almeida Siqueira Michael Caldas da Silva Slide 2 Uma Abordagem para Reengenharia de…

Transcript

Slide 1 Processo de Reengenharia Prático Pós- Graduação Pós- Graduação Karolyne Almeida Siqueira Michael Caldas da Silva Slide 2 Uma Abordagem para Reengenharia de Sistemas implementados em Java para AspectJ Slide 3 Para viabilizar a reengenharia dos sistemas OO e OA é necessária a existência de métodos e ferramentas que o apóiem. Temos como entrada um sistema escrito em Java, gerando outro equivalente implementado na linguagem AspectJ. Introdução Introdução Slide 4 POO (Programação Orientada a Objetos) POO (Programação Orientada a Objetos)X POA (Programação Orientada a Aspectos) POA (Programação Orientada a Aspectos) Introdução Introdução Slide 5 A Orientação a Objetos permite a separação clara de interesses primários. Entretanto, alguns problemas ainda persistem como, por exemplo, a não separação de interesses transversais que se apresentam espalhados e misturados por diversos módulos do sistema. POO POO Slide 6 Já a Orientação a Aspectos é uma forma de tratar os interesses transversais por meio da especificação de aspetos, isto é, mecanismos para localização de expressões que contêm interesses transversais e a separação desses dos interesses primários. POA POA Slide 7 Reengenharia de software pode ser aplicada para realizar manutenção preventiva de sistemas.[Pressman] Reengenharia de software pode ser aplicada para realizar manutenção preventiva de sistemas.[Pressman] Reengenharia de Software Reengenharia de Software Slide 8 A migração é feita através da Aspecting. Migração de Sistemas OO para OA Slide 9 Aspecting Aspecting A Aspecting tem 3 passos: 1) A criação de diagrama de casos de uso e de diagrama de classes de projeto, caso não exista, para representar a funcionalidade do sistema legado; 1) A criação de diagrama de casos de uso e de diagrama de classes de projeto, caso não exista, para representar a funcionalidade do sistema legado; 2) O tratamento dos interesses que pesquisa, em cada classe implementada no código legado, a existência de possíveis indícios de interesses transversais; 2) O tratamento dos interesses que pesquisa, em cada classe implementada no código legado, a existência de possíveis indícios de interesses transversais; 3) A comparação do sistema OO com o OA é realizada utilizando os casos de uso inicialmente construídos para garantir que a funcionalidade original do sistema foi preservada. 3) A comparação do sistema OO com o OA é realizada utilizando os casos de uso inicialmente construídos para garantir que a funcionalidade original do sistema foi preservada. Slide 10 É interativa e consiste na identificação de interesses transversais e posterior implementação do sistema legado para uma linguagem que permita especificar aspetos, neste caso AspectJ. Abordagem de Reengenharia de Java para AspectJ Slide 11 Na tentativa de minimizar os esforços e os erros inseridos pelo próprio engenheiro de software, um apoio computacional foi idealizado: ReJAsp(Reengenharia de sistemas Java para Aspect). Desenvolvido com o modelo de processo de prototipação, com duas interações, sendo esta segunda implementada como plug-in do ambiente Eclipse. Apoio Computacional para a Reengenharia Proposta Slide 12 Plug-in do ambiente Eclipse Plug-in do ambiente Eclipse Slide 13 http://www.univasf.edu.br/http://www.univasf.edu.br/, acessado em 11/05/2010. http://www.univasf.edu.br/ Referências Bibliográficas

Recommended

View more >