Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Arquitetura de Software


     Jefferson Moreira
Objetivos


Arquitetura?
MVC e Camadas.

Arquitetura de Família.
Agenda


Quem sou eu?
O que é Arquitetura de Software? E por que usar?
Modelo de Referência
Estilos de Arquitetura
Arquite...
Quem sou eu?


Jefferson Moreira – JEFFMOR
Arquiteto de Sistemas e Desenvolvedor.
Desenvolvedor desde 2002 (php, delphi e ...
Afinal, o que é AS?

Conceito mais aceito!
(é muito confundido com documentação e modelagem)

  AS define o que é o sistem...
Divisão




     Componentes

     Conectores

     Configuração


25.06.07            Arquitetura de Software         8
Por que usar, quando e quem define




25.06.07         Arquitetura de Software   9
Por que usar?


     Entender o sistema
     Organizar o desenvolvimento
     Incentivar o reuso.
     Evoluir o sistema

...
Quando e quem define a AS?




25.06.07     Arquitetura de Software   11
Estilo e Referência de Arquitetura




25.06.07    Arquitetura de Software      12
Modelos de referência


    Funcionam como uma espécie de agregador
    de soluções aos problemas do ponto de vista
    de...
Arquitetura de Referência


    Arquiteturas de referência apresentam a
    solução do ponto de vista técnico, mas
    bas...
Estilos Arquiteturais

•     Ligado com requisitos não funcionais.
•     Podem ser combinados.

São divididos em:
1.    In...
25.06.07   Arquitetura de Software   16
25.06.07   Arquitetura de Software   17
25.06.07   Arquitetura de Software   18
Confusão

•     Camadas para tudo que é lado.
•     MVC não é camadas!
•     Utilização  de     padrões              espeç...
MVC e Layer(Camadas)




25.06.07     Arquitetura de Software   20
Exemplo MVC



25.06.07      Arquitetura de Software   21
Camadas




25.06.07   Arquitetura de Software         22
VO, BO, DTO e TO



•     Usar onde deve ser usado, apenas isso!




25.06.07             Arquitetura de Software   23
Exemplo Camadas



25.06.07       Arquitetura de Software   24
Arquitetura
                                     de Família



25.06.07   Arquitetura de Software            25
Arquitetura de Família

Passos para definir:
           Um amplo trabalho de levantamento de requisitos para
           id...
25.06.07   Arquitetura de Software   27
LDA

           Quem criou? [3]
             Empresas - Wrigth, ACME, xADL, Darwin
             Universidades – DAOP-ADL e...
Resumo


    Importância da Arquitetura.
    Não existe arquitetura p/ todos os tipos de
    projeto.
    Identificação do...
Referências

    [1]Martin Fowler: Patterns of Enterprise Application Architecture.
    [2]Eric Evans: Domain-Driven Desig...
Obrigado!

25.06.07     Arquitetura de Software   31
Arquitetura de Sofware
Arquitetura de Sofware
Upcoming SlideShare
Loading in …5
×

Arquitetura de Sofware

4,822 views

Published on

Published in: Technology

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

×