Aplicações corporativas multicamadas – Parte 3
Este artigo apresenta um tutorial para a construção de uma pequena aplicação corporativa em Java EE. Para isso, empregou-se o uso intensivo dos assistentes de código presentes na IDE NetBeans 7.
Aplicações corporativas multicamadas – Parte 1
Este artigo apresenta um tutorial para a construção de uma pequena aplicação corporativa em Java EE. Para isso, empregou-se o uso intensivo dos assistentes de código presentes na IDE NetBeans 7, além das facilidades de integração que a ferramenta traz com o servidor de aplicação GlassFish 3.
Em que situação o tema é
útil
Para quem programa em Java
EE, a integração entre NetBeans e GlassFish permite a criação de aplicações
corporativas com qualidade e menor tempo, fatores essenciais para a
produtividade em projetos dessa natureza. Aos desenvolvedores novatos, a
utilização dos assistentes de código reduz a curva de aprendizado das
particularidades e complexidades envolvidas na plataforma.
Este terceiro artigo encerra a série que abordou o desenvolvimento de aplicações corporativas, focando as tecnologias Java EE. Uma aplicação corporativa representa um software que normalmente lida com grandes bases de dados, está integrado a outros sistemas, e gerencia informações que agregam valor aos processos de negócio das organizações.
Tais aplicações devem estar baseadas em tecnologias que viabilizem a segurança de acesso simultâneo de muitos usuários, a possibilidade de escalabilidade para aumento de carga de processamento, tempo de resposta aceitável para múltiplas requisições, tratamento de tolerância a falhas, entre outras preocupações.
Para quem constrói, envolve lidar com sistemas de alta e média complexidade, que interagem com diversas tecnologias e se integram com outros sistemas, muitas vezes antigos e difíceis de manter e evoluir – os chamados sistemas legados.
A plataforma Java EE fornece tanto a infraestrutura de execução para as aplicações corporativas, em servidores que seguem a arquitetura de sistemas multicamadas, bem como o ambiente de desenvolvimento baseado em componentes de software, por meio da especificação Enterprise JavaBeans (EJB), permitindo a reutilização de partes que compartilham as mesmas funcionalidades em diferentes aplicações.
Neste contexto, o objetivo deste artigo é apresentar um passo a passo para a construção de uma aplicação corporativa na plataforma Java EE 6, demonstrando os principais conceitos vistos nos artigos anteriores. Elaborado na forma de tutorial, você aprenderá a criar uma pequena aplicação, chamada CotacaoAppEE, construída com um componente Enterprise JavaBeans (EJB do tipo session bean) na camada de negócio, e a camada cliente baseada na web, em JavaServer Faces (JSF).
Para acelerar o desenvolvimento do aplicativo, serão empregados alguns recursos que automatizam a geração de código por meio do NetBeans 7. O uso de ferramentas que fornecem suporte à engenharia de software, integradas em ambientes de desenvolvimento, chamados IDEs (Integrated Development Environment), como é o caso do NetBeans, melhora a produtividade e reduz o tempo de construção do software. A opção pelo NetBeans vem do fato da ferramenta apresentar facilidades de integração com serviços que estão relacionados à plataforma Java, como a implantação automática no servidor EJB (neste projeto, o GlassFish), a presença de assistentes para gerenciamento de serviços do GlassFish, a conectividade com o gerenciador de banco de dados (JavaDB), a simplificação no uso de componentes da camada web, entre outros.
O foco deste tutorial é mostrar como a tecnologia Java EE, aliada com o uso eficiente de um ambiente de desenvolvimento (IDE) e das técnicas de arquitetura de software (no caso, padrões de projeto), traz para simplificar a construção de aplicações corporativas. Portanto, o código escrito para os exemplos atende a esse propósito, de apresentar o essencial para tornar as ideias compreensíveis. Em consequência, algumas preocupações ficaram de fora, como é o caso do tratamento de erros, os aspectos da estética (layout) das páginas, o refinamento da lógica, e explicações detalhadas sobre os componentes empregados.
Para desenvolver este tutorial, é necessário realizar o download do IDE NetBeans 7.2 com os seguintes servidores: GlassFish 3.1.2 (EJB), Tomcat 7.0 (web) e Java DB (banco de dados). Tais servidores virão junto com a distribuição Java EE do NetBeans, e podem também ser adicionados como pacotes, via Gerenciador de Plug-ins, a partir da opção Ferramentas, no menu principal da IDE.
A aplicação exemplo
CotacaoAppEE é um aplicativo que apresenta a cotação diária de moedas estrangeiras em moeda corrente (Real), permitindo que o usuário receba por e-mail a cotação de uma determinada moeda. A cotação da moeda é recuperada a partir do último valor inserido no banco de dados para cada moeda cotada. Com o intuito de testar o aplicativo, disponibilizamos um arquivo de script SQL que, ao ser executado, adicionará alguns dados no banco de dados. Para esta aplicação não foi implementada a funcionalidade de atualização diária dos valores de cotação das moedas, portanto, considere como uma futura melhoria esse requisito funcional.
Do ponto de vista da arquitetura de software, a aplicação foi projetada em camadas seguindo as diretrizes da plataforma Java EE, com a presença da camada cliente (web), a camada de regras de negócio (contêiner EJB – vide Nota do DevMan 1), e a camada de armazenamento (servidor de banco de dados relacional). A localização e execução dessas camadas estarão no mesmo servidor de aplicação, fato que norteou a decisão por componentes EJB com acesso local pela camada cliente, o que aumenta a eficiência quanto ao tempo de resposta de chamadas aos serviços.
Nota do DevMan 1. Contêiner EJBO contêiner EJB (Enterprise JavaBeans) é um dos principais módulos de um servidor Java EE. É responsável pela implantação e gerência dos componentes de negócio da aplicação corporativa. Ele implementa vários recursos, como suporte às transações distribuídas, segurança de autenticação e autorização, acesso remoto aos componentes, persistência, integração entre aplicações, entre outras.
Na perspectiva do processo de desenvolvimento, o modelo de construção de uma aplicação corporativa não difere muito de um software tradicional. Das atividades previstas no processo, as de engenharia de requisitos são as mais críticas para o sucesso do projeto, o que envolve a própria concepção e entendimento dos requisitos do software. Nesse aspecto, é fundamental na modelagem da solução, levantar e identificar os “conceitos” que descrevem os objetos, as propriedades e relações do modelo do domínio (dos dados) do sistema; tarefa esta que é realizada nas etapas iniciais com o levantamento das necessidades, e aprimora-se com a análise e o projeto da aplicação.
Para o estudo de caso apresentado neste tutorial, CotacaoAppEE possui apenas três classes conceituais do modelo de domínio, que são Moeda, Cotação e o Acompanhamento da Cotação, representadas no diagrama de classes (UML) exposto na Figura 1. A partir desse modelo identificamos as entidades de negócio essenciais para o projeto arquitetural seguindo a plataforma Java EE.
Figura 1. Diagrama de classes do modelo conceitual.
É importante destacar que o processo de modelar o domínio provavelmente será mais complexo do que parece ser neste exemplo. Dependendo do tamanho da aplicação, podem ser necessárias várias iterações no refinamento do processo de construção do modelo."
[...] continue lendo...Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo