aspect oriented software development - aosd 1 elaborado por: bruno nunes nº 3202 pedro casqueiro...
TRANSCRIPT
![Page 1: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/1.jpg)
1
Aspect Oriented Software Development - AOSD
Elaborado por:Bruno Nunes nº 3202Pedro Casqueiro nº 2163
![Page 2: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/2.jpg)
2
Aspect Oriented Software Development - AOSD
Sistemasde
Informação
Maiores
Capacidade de
processamento
Complexidade das
funcionalidades
Fiabilidade
Rapidez
Facilidadede
utilização
PREview
VIM
AOSD
Cosmos
…
Engenharia de
Software
Evolução da Engenharia de Software
![Page 3: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/3.jpg)
3
Aspect Oriented Software Development - AOSD
Evolução da Engenharia de Software
Código complexo
Difícil de ler e escrever
Difícil evolução
Difícil manutenção
Reutilização difícil
Programação de nível máquina
![Page 4: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/4.jpg)
4
Aspect Oriented Software Development - AOSD
Mais fácil de ler e escrever
Difícil evolução
Difícil manutenção
Reutilização difícil
Programação estruturada
Evolução da Engenharia de Software
![Page 5: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/5.jpg)
5
Aspect Oriented Software Development - AOSD
Mais fácil de ler e escrever
Evolução melhorada
Manutenção melhorada
Reutilização melhorada
Programação procedimental
Evolução da Engenharia de Software
![Page 6: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/6.jpg)
6
Aspect Oriented Software Development - AOSD
Mais fácil de ler e escrever
Evolução melhorada
Manutenção melhorada
Reutilização melhorada
Programação modular
Evolução da Engenharia de Software
![Page 7: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/7.jpg)
7
Aspect Oriented Software Development - AOSD
Mais fácil de ler e escrever
Evolução melhorada
Manutenção melhorada
Reutilização melhorada
Programação OO
Evolução da Engenharia de Software
![Page 8: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/8.jpg)
8
Aspect Oriented Software Development - AOSD
Finalmente ..................... AOSD!
Evolução da Engenharia de Software
![Page 9: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/9.jpg)
9
Aspect Oriented Software Development - AOSD
Separação de concerns
Concern: “Algo com que a equipa de desenvolvimento tem de se preocupar” (por exemplo: funcionalidade, requisito, ...)
Separação de concerns: Tratar cada concern separadamente
Programação Modular
Organizar codigo por grupos de funcionalidades
Necessidade de mecanismos da linguagem
Leva à evolução das linguagens e paradigmas
![Page 10: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/10.jpg)
10
Aspect Oriented Software Development - AOSD
Separação de concerns
![Page 11: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/11.jpg)
11
Aspect Oriented Software Development - AOSD
Exemplo de Crosscutting Concern
Implementação do Apache Tomcat webserver
Análise de implementação de 3 concerns:
XML parsing
URL pattern matching
Logging
![Page 12: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/12.jpg)
12
Aspect Oriented Software Development - AOSD
XML parsing concern
![Page 13: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/13.jpg)
13
Aspect Oriented Software Development - AOSD
URL pattern matching concern
![Page 14: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/14.jpg)
14
Aspect Oriented Software Development - AOSD
Logging concern
![Page 15: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/15.jpg)
15
Aspect Oriented Software Development - AOSD
Concerns Transversais (Crosscutting Concerns)
Evolução ?
Reutilização ?
Manutenção ?
É necessária uma nova linguagem/Paradigma
![Page 16: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/16.jpg)
16
Aspect Oriented Software Development - AOSD
Decomposição de Aspectos
Modularizar os crosscutting concerns
– Code scattering (um concern em muitos modulos)
Code Tangling (um modulo com diversos concerns)
![Page 17: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/17.jpg)
17
Aspect Oriented Software Development - AOSD
Decomposição de AspectosInvocação Implicita
![Page 18: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/18.jpg)
18
Aspect Oriented Software Development - AOSD
Decomposição de Aspectos
![Page 19: Aspect Oriented Software Development - AOSD 1 Elaborado por: Bruno Nunes nº 3202 Pedro Casqueiro nº 2163](https://reader036.vdocuments.mx/reader036/viewer/2022062623/552fc0fc497959413d8ba258/html5/thumbnails/19.jpg)
19
Aspect Oriented Software Development - AOSD
Bibliografia:
•Survey of Aspect - Oriented Analysis and Design Approaches
•Wikipedia
•Introduction to Aspect - Oriented Software Development (AOSD Europe)