Vous êtes sur la page 1sur 25

Jean Marcelo da Costa Sales

CELEPAR - DIFAS
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/ MVC
APRESENTAÇÃO NEGÓCIO OU LÓGICA PERSISTÊNCIA
(INTEGRAÇÃO)

Helper
classes C

NAVEGADOR WEB V M SGDB

SERVIDOR
CLIENTE CLIENTE - SERVIDOR

SERVIDOR WEB
Modelo 4 Camadas
Modelo 4 Camadas
CLIENTE GERENCIA DE NEGÓCIO PERSISTÊNCIA
(APRESENTAÇÃO) APRESENTAÇÃO

SERVIDOR
APLICAÇÃO
NAVEGADOR WEB SERVIDOR WEB EJB in SGDB
MVC

C
V M

CLIENTE CLIENTE - SERVIDOR CLIENTE - SERVIDOR SERVIDOR


J2EE - 4 TIER
MVC - FLUXOS
MVC
STRUTS Fluxo de Navegação de seus componentes
STRUTS SERVIDOR WEB

CAMADA DE NEGÓCIO OU LÓGICA OU REGRAS

C
Controle

Actions, Servlet Controller

V M

Visão Modelo

JSP, Servlets, Classes de Negócios, DAO,


formBeans Beans em Geral

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 – J2EE
Padrõ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 - DAO
Service 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
“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
UC 1: Processo de Vistoria Processo de Vistoria
<<estende>> através de pesquisa

<<ator>>
UC x

UC y
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.

Vous aimerez peut-être aussi