Arquitetura de sistemas web
-
Upload
opakus-solucoes-inteligentes -
Category
Technology
-
view
2.525 -
download
1
Transcript of Arquitetura de sistemas web
OPAKUS
SOLUCÕES INTELIGENTES
www.opakus.com.br
ENGENHARIA DE SISTEMAS WEB
MVC e Struts
Camadas de Aplicação, níveis 3 e 4 Padrão MVC Outros Padrões e J2EE Struts Estudo de Caso
Jean Marcelo da Costa Sales CELEPAR - DIFAS
Modelo 2 Camadas
Modelo 2 Camadas
•Camada de Apresentação com Regras de Negócio Juntas.
•Camada de Persistência.Problemas para o usuário, que não tem os programas funcionando como deveriam; Problemas para a equipe de desenvolvimento que não tem o seu trabalho reconhecido e, normalmente, tem que trabalhar apenas "apagando incêndios"; e Problemas para a Administração/Gerência da rede que não consegue gerar os resultados esperados pela Administração da empresa, apesar dos elevados valores já investidos.
Maior TCO – Custo Total de Propriedade
Modelo 3 Camadas
Modelo 3 Camadas
Modelo e códigos construídos para representar as camadas.
Os servidores não precisam estar necessariamente em máquinas diferentes, podem estar na mesma máquina. Porem questões de performance são relevantes.
• Camada de Apresentação
• Camada de Negócios
• Camada de Persistência
Modelo 3 Camadas c/ MVCAPRESENTAÇÃO NEGÓCIO OU LÓGICA PERSISTÊNCIA
(INTEGRAÇÃO)
NAVEGADOR WEB SGDBV
C
M
SERVIDORCLIENTE - SERVIDORCLIENTE
SERVIDOR WEB
Helper classes
Modelo 4 Camadas
Modelo 4 CamadasCLIENTE
(APRESENTAÇÃO)
NAVEGADOR WEB
CLIENTE
PERSISTÊNCIA
SGDB
SERVIDOR
GERENCIA DE APRESENTAÇÃO
NEGÓCIO
SERVIDOR WEB
CLIENTE - SERVIDOR CLIENTE - SERVIDOR
SERVIDOR APLICAÇÃO
EJB in MVC
VC
M
J2EE - 4 TIER
MVC - FLUXOS
MVC
STRUTS Fluxo de Navegação de seus componentes
STRUTSCAMADA DE NEGÓCIO OU LÓGICA OU REGRAS
V
C
M
SERVIDOR WEB
Visão Modelo
Controle
JSP, Servlets, formBeans
Classes de Negócios, DAO, Beans em Geral
Actions, Servlet Controller
Existe um forte acoplamento entre JSPs e formBeans.
STRUTS
No Struts temos classes Dispatcher, Request Processor, Controller e Helper (ActionsBeans e FormsBeans).
Custom Tags (Pattern View Helper).
Atualmente existem diversas ferramentas para configuração da Struts de forma visual com diversas opções entre produtos pagos e open source (EasyStruts, Struts Console).
Modelagem
• CASOS DE USO MODELAGEM DAS OPERAÇÕES, FLUXOS, INTEFACES , DEFINIÇÕES, NEGÓCIOS.
• DIAGRAMA DE CLASSES Estrutura física do objetos em carregados em memória e seus relacionamentos.
• DIAGRAMAS DE INTERAÇÃO
SEQUENCIA DAS OPERAÇÕES E TROCA DE MENSAGENS ENTRE OBJETOS.
( TEMPO DE PROCESSAMENTO X INTERAÇÃO DOS OBJETOS )
• DIAGRAMAS DE COMPORTAMENTO DIGRAMAS DE ESTADOS, COMPORTAMENTO DOS OBJETOS E DO PROCESSAMENTO LÓGICO.
Patterns
Patterns descrevem maneiras comuns de se fazerem as coisas, tornando-os modelos-exemplo. Conjuntos de estratégias.
Estes são identificados ao longo do desenvolvimento de projetos, onde surgem problemas repetitivos e obviamente com soluções semelhantes.
Todo Pattern apresenta algumas características comuns: são baseados em experiências anteriores; são reutilizáveis; combinam estratégia de design e melhores práticas; podem ser usados juntos a fim de resolver
uma gama maior de problemas.
Patterns Acoplamento entre as Camadas
Design Patterns – J2EEPadrões da camada de apresentação (Web)
Front Controller View Helper Composite View Service to Worker Dispatcher View Intercepting Filter
Padrões da camada de negócios (EJB) Business Delegate Value Object (ou Transfer Object) Session Facade Composite Entity Value Object Assembler (ou Transfer Object Assembler) Value List Handler Service Locator
Padrões da Camada de Integração Data Access Object - DAOService Activator
RELAÇÃO ENTRE PATTERNS & FRAMEWORKS
A utilização de Patterns passa a ser mais interessante quando feita de forma conjunta, surgindo assim uma outra necessidade; o desenvolvimento de frameworks.
Exemplos Mais Conhecidos:
• FrameWork para Pattern MVC : STRUTS
• FrameWork para Pattern DAO : HIBERNATE ( PERSISTÊNCIA DE DADOS )
FUTURO CERTIFICAÇÃO CMM
MENSAGEM MENSAGEM
“Existem duas formas de construir um modelo de software. Uma é fazer o desenho tão simples que é óbvio não ter deficiências. Uma outra forma é fazer o modelo tão complicado que não tem deficiências óbvias.”
C. A. R. Hoare
Estudo de Caso : Acompanhamento de Vistorias
Processo de Vistoria compreende :
Solicitação de Vistoria Pagamento da GR-PR Agendamento da Vistoria Cadastro de Resultado da Vistoria Analise do Resultado Possibilidade de Reentrada de Processo Conclusão e Emissão de Certificados Manutenção do Sistema e demais funcionalidades.
Use Case
Fluxo alternativo do Processo de Vistoria através de pesquisa.
UC 1.1 :
Fluxo alternativo do
Processo de Vistoria
através de pesquisa
UC x
UC 1: Processo de Vistoria
UC y
<<estende>>
<<ator>>
Descrição Sucinta do UC 1.1
Construir uma interface de entrada dos dados : logradouro, razão social, CPF, CNPJ e NIB.
Nesta tela deve existir a opção para cada um destes dados, afim de possibilitar a pesquisa destes processos.
Este dado deve trazer em uma próxima tela um relatório com a pesquisa dos NIBs e ter um link para abrir o documento, este por sua vez possibilitará o usuário a dar continuidade no processo de vistoria.