A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Carlos Eugênio P. da Purificação UFBA Framework Arquitetura do Sistema e definição do escopo.

Apresentações semelhantes


Apresentação em tema: "Carlos Eugênio P. da Purificação UFBA Framework Arquitetura do Sistema e definição do escopo."— Transcrição da apresentação:

1 Carlos Eugênio P. da Purificação UFBA Framework Arquitetura do Sistema e definição do escopo

2 Carlos Eugênio P. da Purificação Tópicos Soluções Arquitetura –Framework Struts –Visão Modelos –Visão Refactoring –Visão Nodes UFBA Framework Patterns Estratégia de Persistência Application Nodes Designer Conclusão

3 Carlos Eugênio P. da Purificação Soluções Modelagem –Ferramentas OpenSource ou Free como o ArgoUML e Poseidon Community Edition; –Pode ser utilizada qualquer ferramenta que utilize o padrão XMI. (Rational Rose) –Varredura de classes e refactoring com Design Patterns; Desenvolvimento –Ferramenta: NetBeans;

4 Carlos Eugênio P. da Purificação Soluções Desenvolvimento (cont.) –Utilização da arquitetura MVC Model 2; –Utilização de Frameworks Web OpenSource –Padrões de mercado como o Struts da Apache; –Deployment automático e configurável; –Desenvolvimento gráfico do workflow e nodes; –Deployment automatizado;

5 Carlos Eugênio P. da Purificação Soluções Padrões de Projeto –Model View Controler Model 2 para Struts; –Data Access Objects, Bussiness Delegate, Adapter e Bridge Patterns para separação do Framework de Persistência (J2EE Beans ou um Oject-to-Relational Framework); –Session Façade para acesso aos Sessions Beans; –Data Transfer Object Pattern para transferência de informações entre as camadas;

6 Carlos Eugênio P. da Purificação Soluções Containers –OpenSource JBoss; –OpenSource TomCat; –Qualquer implementação padrão J2EE; Apresentação –JSP Custom Tags; –Struts Tags;

7 Carlos Eugênio P. da Purificação Soluções Apresentação (cont): –Validator Framework para validações padrões: Campos requeridos; Tipos de dados (byte, int, float,...); Tamanho mínimo ou máximo; Range; Regular Expressions; Datas; Cartões de Crédito;

8 Carlos Eugênio P. da Purificação Soluções Apresentação (cont.): –Suporte a internacionalização; –ResourceBundles para campos, links, imagens e mensagens;

9 Carlos Eugênio P. da Purificação Arquitetura JSP/Servlet Web Container Tomcat UFBA Framework Classes básicas do Engeny Business Framework Enterprise JavaBean Container: JBoss DesignUML Tool ArgoUML/Poseidon Java IDE NetBeans

10 Carlos Eugênio P. da Purificação Arquitetura JSP/ServletContainer UFBA Framework Classes básicas do Engeny Framework EnterpriseJavaBeanContainer UFBA FRAMEWORK Structs Templates StructsVelocityJAXP/JXPath/JAXB IDE Engeny Templates Cactus

11 Carlos Eugênio P. da Purificação Arquitetura Configuration Files (structs-config.xml) StructsControllerServlet Browser ActionMappingsBean ActionBean JSP Pages Requisição HTTP JavaBean Resposta (Página HTML) ActionFormBean

12 Carlos Eugênio P. da Purificação Arquitetura – Visão Modelos UFBA Framework Modelos UML ClassesBásicas UseCases Modelo de Classes Diagrama de Colaboração Engeny UML Handler Velocity Engeny Class Templates Templates

13 Carlos Eugênio P. da Purificação Arquitetura – Visão Nodes UFBA Framework UFBA Nodes Project Use Cases relacionados tornam-se ActionsNodes Application Nodes Designer Use Cases

14 Carlos Eugênio P. da Purificação Arquitetura – Visão Nodes UFBA Framework ActionNode Nodes que representam uma página JSP Application Nodes Designer JSPNodes Nodes que representam um UseCase ModelClassNodes Nodes que representam uma classe do modelo de classes da aplicação OutrosNodes

15 Carlos Eugênio P. da Purificação UFBA Framework Patterns Patterns –Os Design Patterns são bons para evitar erros clássicos de design de aplicações. –A seguir são apresentados os principais patterns utilizados pelo Framework.

16 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Data Access Object –Separa a aplicação da implementação utilizada para acessar dados persistentes, podendo a implementação variar (RDBMS, OODBMS, XML, etc); –Um objeto do tipo ValueObject é usado para transferir dados do(s) objeto(s) de regras de negócio – BusinessObject para o DataAccessObject (DAO);

17 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Data Access Object

18 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Data Access Object –No UFBA Framework é utilizado uma interface IApplicationService (onde Application é o nome da aplicação ou de um Action específico).

19 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Session Façade –Provê uma interface simples para os clientes acessarem os serviços da aplicação; –Menos objetos são vistos pelo cliente reduzindo a complexidade da aplicação; –Não expõe os objetos de negócio diretamente para o cliente permitido uma melhor separação de camadas;

20 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Session Façade –O UFBA Framework irá definir automaticamente uma interface e uma implementação básica para um Sessio Façade; –Os Use Cases com serviços relacionados no Application Nodes Designer irão gerar somente um Session Façade. (ex.: Depositar-Em-Conta, Sacar-Da-Conta, Ver-Saldo-Conta,etc.)

21 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Session Façade

22 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Transfer Object –Clientes de Entity Beans geralmente necessitam com uma chamada de informação mais de um atributo; –Cada chamada feita a um Entity Bean ou Session Bean geralmente é remota implicando em tráfego de rede e degradação de performance; –Os Data Transfer Objects encapsulam os dados que devem ser levados de uma camada a outra, fazendo com que o número de chamadas remota, de uma maneira geral, diminuam;

23 Carlos Eugênio P. da Purificação UFBA Framework Patterns Pattern: Transfer Object

24 Carlos Eugênio P. da Purificação Estratégia de Persistência Persistência –Pré-definidas: Enterprise Java Beans – CMP ou BMP –Customizadas: Pode-se escolher qualquer outro tipo de persistência, pois devido à utilização do Data Access Object Pattern, o detalhe do tipo escolhido não afeta a aplicação.

25 Carlos Eugênio P. da Purificação Estratégia de Persistência Persistência com Enterprise Java Beans –Interface exposta para a aplicação é limitada a Session Beans (Session Façade). –A implementação dos Session Beans acessa Entity Beans que utilizam persistência gerenciada pelo J2EE Container. –Como toda a aplicação só tem acesso aos Session Beans utilizando um Session Façade, a implementação de persistência pode mudar.

26 Carlos Eugênio P. da Purificação Estratégia de Persistência UFBA Framework EngenyBusinessFrameworkApplicationBusinessClasses(Actions) SessionFaçade ApplicationEntityBean ApplicationPersistenceBean (JDO, DAO,...) DBMS

27 Carlos Eugênio P. da Purificação Application Nodes Designer Permite a configuração de todos os detalhes da aplicação: –JSPNodes –ActionNodes –ValidationFormNodes –ValidatorNodes –ValidationRulesNodes –FieldNodes –ModelClassNodes –ModelAttributeNodes

28 Carlos Eugênio P. da Purificação Application Nodes Designer Não é necessário conhecer nenhum detalhe dos arquivos de configuração do struts, cactus, tomcat, jboss, etc. Reconhecimento das classes e use cases do modelo UML. Templates.

29 Carlos Eugênio P. da Purificação Application Nodes Designer

30 Carlos Eugênio P. da Purificação Conclusão Framework que leva em consideração as melhores práticas do mercado; Inclui ferramentas de produtividade e configuração; Mantém o desenvolvimento direcionado; Solução para o desenvolvimento Web com Java;


Carregar ppt "Carlos Eugênio P. da Purificação UFBA Framework Arquitetura do Sistema e definição do escopo."

Apresentações semelhantes


Anúncios Google