Arquitetura de Sofware

4,663 views
4,551 views

Published on

Published in: Technology
1 Comment
8 Likes
Statistics
Notes
No Downloads
Views
Total views
4,663
On SlideShare
0
From Embeds
0
Number of Embeds
47
Actions
Shares
0
Downloads
0
Comments
1
Likes
8
Embeds 0
No embeds

No notes for slide

Arquitetura de Sofware

  1. 1. Arquitetura de Software Jefferson Moreira
  2. 2. Objetivos Arquitetura? MVC e Camadas. Arquitetura de Família.
  3. 3. Agenda Quem sou eu? O que é Arquitetura de Software? E por que usar? Modelo de Referência Estilos de Arquitetura Arquitetura de Referência Arquitetura de Família Linguagem de Descrição
  4. 4. Quem sou eu? Jefferson Moreira – JEFFMOR Arquiteto de Sistemas e Desenvolvedor. Desenvolvedor desde 2002 (php, delphi e c++) Com java desde 2003. Membro do JUG-MS.
  5. 5. Afinal, o que é AS? Conceito mais aceito! (é muito confundido com documentação e modelagem) AS define o que é o sistema em termos de componentes e os relacionamentos entre estes. A arquitetura seria o que liga (interface) as duas partes distintas de um software: o problema de negócio e a solução técnica É a utilização de modelos pré-definidos, com a finalidade de modelar e especificar projetos. 25.06.07 Arquitetura de Software 7
  6. 6. Divisão Componentes Conectores Configuração 25.06.07 Arquitetura de Software 8
  7. 7. Por que usar, quando e quem define 25.06.07 Arquitetura de Software 9
  8. 8. Por que usar? Entender o sistema Organizar o desenvolvimento Incentivar o reuso. Evoluir o sistema 25.06.07 Arquitetura de Software 10
  9. 9. Quando e quem define a AS? 25.06.07 Arquitetura de Software 11
  10. 10. Estilo e Referência de Arquitetura 25.06.07 Arquitetura de Software 12
  11. 11. Modelos de referência Funcionam como uma espécie de agregador de soluções aos problemas do ponto de vista de negócio. 25.06.07 Arquitetura de Software 13
  12. 12. Arquitetura de Referência Arquiteturas de referência apresentam a solução do ponto de vista técnico, mas baseando-se no modelo de referência e no estilo de arquitetura. 25.06.07 Arquitetura de Software 14
  13. 13. Estilos Arquiteturais • Ligado com requisitos não funcionais. • Podem ser combinados. São divididos em: 1. Interativos 2. Distribuídos 3. Adaptáveis 4. From mud to Structure 25.06.07 Arquitetura de Software 15
  14. 14. 25.06.07 Arquitetura de Software 16
  15. 15. 25.06.07 Arquitetura de Software 17
  16. 16. 25.06.07 Arquitetura de Software 18
  17. 17. Confusão • Camadas para tudo que é lado. • MVC não é camadas! • Utilização de padrões espeçíficos erroneamente. 25.06.07 Arquitetura de Software 19
  18. 18. MVC e Layer(Camadas) 25.06.07 Arquitetura de Software 20
  19. 19. Exemplo MVC 25.06.07 Arquitetura de Software 21
  20. 20. Camadas 25.06.07 Arquitetura de Software 22
  21. 21. VO, BO, DTO e TO • Usar onde deve ser usado, apenas isso! 25.06.07 Arquitetura de Software 23
  22. 22. Exemplo Camadas 25.06.07 Arquitetura de Software 24
  23. 23. Arquitetura de Família 25.06.07 Arquitetura de Software 25
  24. 24. Arquitetura de Família Passos para definir: Um amplo trabalho de levantamento de requisitos para identificar variações. Codificar as variações com uma Linguagem de Descrição da Arquitetura (ADL) Implementar as partes fixas como gabaritos (templates) de programas, usando o(s) estilo(s) de arquitetura(s) mais apropriado(s). Implementar o gerador de aplicações para completar o gabarito a partir da ADL. 25.06.07 Arquitetura de Software 26
  25. 25. 25.06.07 Arquitetura de Software 27
  26. 26. LDA Quem criou? [3] Empresas - Wrigth, ACME, xADL, Darwin Universidades – DAOP-ADL e Darwin Sistema de Representação não foi definido. [3] Será que a UML vai definir? Ou é melhor do jeito que está hoje? Poucos “Arquitetos” descrevem! Exemplo. 25.06.07 Arquitetura de Software 28
  27. 27. Resumo Importância da Arquitetura. Não existe arquitetura p/ todos os tipos de projeto. Identificação do refresco do “chaves”. Camadas != MVC 25.06.07 Arquitetura de Software 29
  28. 28. Referências [1]Martin Fowler: Patterns of Enterprise Application Architecture. [2]Eric Evans: Domain-Driven Design [3] http://pt.wikipedia.org/wiki/Arquitetura_de_software [4] A. M. Silva Filho, Arquitetura de Software, Editora Campus, 2002 Phillip Calçado: www.fragmental.com.br GUJ: www.guj.com.br JUG-MS: groups.google.com/group/jug-ms 25.06.07 Arquitetura de Software 30
  29. 29. Obrigado! 25.06.07 Arquitetura de Software 31

×