DESENVOLVIMENTO DE APLICAÇÕES COM JAVA 2EE E UML

Documentos relacionados
JAVA PARA WEB E EJB APLICAÇÕES WEB, SERVIDORES DE APLICAÇÃO, CONTAINERS WEB

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB

Análise e projeto de sistemas

Requisitos de Sistemas

Análise de Sistemas. Aula 5

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

INF1013 MODELAGEM DE SOFTWARE

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo

UML e seus diagramas

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

UML Unified Modeling Language Linguagem de Modelagem Unificada

Java para Web & EJB. Teoria, prática e questões Módulo Introdução e Servlets

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

Arquitetura de Aplicações J2EE. Jorge Fernandes Outubro de 2003

Processo de Desenvolvimento de Software

Introdução a UML (Unified Modeling Language)

Prof. Esp. Fabiano Taguchi

UML UNIFIED MODELING LANGUAGE LINGUAGEM DE MODELAGEM UNIFICADA

PUC-GO- ADS: Prof. Vicente P. de Camargo. Desenvolvimento de Aplicações para Cliente Servidor

Marcelo Henrique dos Santos

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

IDENTIFICAÇÃO DO ESCOPO DE SOFTWARE A PARTIR DA ANÁLISE DE REQUISITOS UTILIZANDO A UML

INTRODUÇÃO. Professora Lucélia Oliveira

Curso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

Arquitetura de Software: Introdução. Prof. Fellipe Aleixo

RUP RATIONAL UNIFIED PROCESS

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Prof. Me. Sérgio Carlos Portari Júnior

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves

UML. Trabalho Análise e Projeto de Sistemas. Aluna: Luana Alves Businaro

REVISÃO DE CONCEITOS DE ORIENTAÇÃO A OBJETOS

De Olho na Pista. Documento de Arquitetura. De Olho na Pista Documento de Arquitetura Data: 23/03/2013. AJA Software

UMA ARQUITETURA VOLTADA PARA O DESENVOLVIMENTO DE APLICAÇÕES WEB.

Engenharia de Software

Engenharia de Software

Ambiente Educacional Interativo Móvel para atividade em sala de aula 1

Objetos e Componentes Distribuídos: EJB

Introdução a UML e seus diagramas

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Padrão para Especificação de Requisitos de Produto de Multimídia

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução ao Desenvolvimento de

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )

UML: Introdução. História Visão geral Modelo conceitual da UML. Bibliografia. UML: introdução

Engenharia de Software Orientada a Objetos - OOSE. Método de Jacobson

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo

! Introdução. " Motivação para Processos de Software. ! Processo Unificado (USDP) " Definições " RUP x USDP " Características do Processo Unificado

Desenvolvimento de Software Baseado em Componentes. Paulo C. Masiero

Data Warehouse ETL. Rodrigo Leite Durães.

Introdução a Teste de Software

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

UML (Unified Modelling Language)

5 Arquitetura de implementação

Análise e Projeto de Sistemas (Cont.) Profª Rafaella Matos

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV1-01. Luiz Leão

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

UML. Adriano J. Holanda 21/3/

ALUNO: RONI FABIO BANASZEWSKI

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução a Engenharia de Software

APLICAÇÃO DA ENGENHARIA DE REQUISITOS E ESPECIFICAÇÃO DE REQUISITOS NA IDENTIFICAÇÃO DE ESCOPO DE SISTEMA

Especificação de Sistemas de Software e a UML

Processamento distribuído em ambiente peer-to-peer

1.2- Ambientes de Middleware

Model Driven Development (MDD)

3 Tecnologias Relacionadas

MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE)

INE 5612 Professor: Frank Siqueira. Leonardo Silva Jean Ercilio Thiago

O Fluxo de Requisitos

Desenvolvimento de um sistema de leilão utilizando JavaServer Pages

ENGENHARIA DE SOFTWARE. Aula 07 UML - Diagrama de Casos de Uso

DESENVOLVIMENTO DE SISTEMA DE CLASSIFICADOS PARA A CIDADE DE PAU DOS FERROS/RN

UML. Rodrigo Leite Durães.

2

Introdução a Web Services

Rational Unified Process (RUP)

Engenharia de Software I: Introdução. Graduação em Informática 2009 Profa. Itana Gimenes

CELINE LIP: UM FRAMEWORK QUE UTILIZA O MODELO IMS LIP EM APLICAÇÕES WEB JEE. Marcelo Gonzaga. Orientador: Prof. Adilson Vahldick

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

RUP Unified Process. Profª Jocelma Rios

Engenharia de Software. Projeto de Arquitetura

PROVA DE CONHECIMENTOS ESPECÍFICOS

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

Introdução ao RUP. Livar Correia de O. C. Cunha Effektiv Solutions

Diagrama de Casos de Uso

UTILIZAÇÃO DO FRAMEWORK HIBERNATE NA CONSTRUÇÃO DE UM SISTEMA DE INFORMAÇÃO

Estágio Supervisionado

Engenharia de Software Processo de Desenvolvimento. Ciclo de Vida - Modelo Cascata

Transcrição:

DESENVOLVIMENTO DE APLICAÇÕES COM JAVA 2EE E UML Jhonattan Vieira do Carmo, Ricardo Ribeiro Rufino Universidade Paranaense (Unipar) Paranavaí PR Brasil jhonattan_si@hotmail.com ricardo@unipar.br Resumo. Este artigo tem por objetivo apresentar a plataforma Java 2EE e UML, e a utilização de ambas tecnologias no desenvolvimento de aplicações Java. Contudo, propomos um estudo acerca de ambas plataformas, evidenciando a importância de cada uma delas no desenvolvimento de aplicações computacionais. 1. Introdução Atualmente vivemos em uma sociedade, em que os produtos computacionais se tornaram necessários em nossas atividades cotidianas, diante deste fato, fez-se necessário aprimorar o desenvolvimento de aplicações corporativas, com conceitos e métricas que assegurem a qualidade, segurança e principalmente a integridade das informações geridas pelas aplicações de software. De acordo com Júnior [2002], a plataforma J2EE determina um padrão para o desenvolvimento de aplicações corporativas multicamadas, simplificando o desenvolvimento, através de padrões baseados em componentes, proporcionando um conjunto completo de serviços para esses componentes, e da automação de vários detalhes inerentes ao ambiente corporativo, tais como: Controle Transacional, Ajuste de Performance, Segurança, Escalabilidade e Gerencia de Recursos. Nota-se ainda, que para o desenvolvimento de aplicações corporativas é aconselhável a utilização de um Modelo de Linguagem Unificada (UML), Ahmed et al [2002], ressalta que o emprego da UML proporciona um suporte de modelagem e visualização para todas as fases de desenvolvimento da aplicação, desde a análise das exigências até a especificação, construção e distribuição. Todavia, este artigo propõe um estudo analítico acerca da plataforma J2EE bem como a utilização da UML, para o desenvolvimento de aplicações Web. 2. Metodologia A realização deste artigo foi alcançada através de pesquisa científica, em materiais de consulta como livros e artigos científicos, e que se correlacionam com o tema proposto neste estudo. 3. J2EE O Java 2EE (J2EE) são especificações para acesso a vários serviços de infraestrutura, como distribuição de processamento, controle de transações, comunicação entre camadas, segurança e outros. Essas funcionalidades são implementadas por diversos fornecedores, que buscam ofertar serviços de melhor qualidade e preço competitivos. A Figura 1 apresenta os componentes de aplicação e a relação entre eles. Observe que os

componentes Web solicitam aos Enterprise Java Beans a execução da lógica de negócio, como recuperação ou atualização dos dados. As páginas JSP ou Servlets exibem esses dados para o usuário [JÚNIOR, 2003]. Figura 1: Componentes de aplicação J2EE 3.1. Desenvolvimento Web com J2EE O J2EE possibilita aos desenvolvedores se concentrarem no desenvolvimento da lógica corporativa, sem a necessidade de existir um conhecimento detalhado do ambiente de execução e na criação de aplicações, que podem ser portadas com maior facilidade entre as plataformas de hardware e sistemas operacionais, sendo assim, sistemas que seguem a especificação arquitetural do J2EE podem ser portados com facilidade entre diferentes sistemas de hardware e diferentes sistemas operacionais [AHMED et al, 2002]. 3.2. Tecnologias O J2EE oferece suporte total para componentes EJB (Enterprise JavaBeans), JSP (JavaServer Pages), Java Servlet, Conectores, Corba e JDBC. A edição J2EE aborda inúmeras tecnologias, dentre as quais destacam-se: EJB Arquitetura modelo de componentes para o desenvolvimento de aplicações corporativas orientadas a objeto em Java. Composto de API que permite a criação, uso e gerencia de componentes da aplicação, reusáveis em diferentes plataformas. JSP Possibilita a criação de conteúdo dinâmico na web. Uma página JSP é um documento que descreve como processar uma solicitação para criar uma resposta, por meio da combinação de formatos padrões de marcação com ações dinâmicas. Java Servlet API com a função de estender um servidor Web, a partir de módulos de aplicações implementados em Java. Conectores Possibilita a plataforma J2EE seja conectada a sistemas de informação heterogêneos.

Corba Suporta a comunicação entre sistemas de forma transparente, através de uma linguagem de definição. JDBC (Java Database Connectivity) Possibilita a integração com bancos de dados relacionais, além de proporcionar uma base comum sobre a qual ferramentas de alto nível e interfaces possam ser construídas [ARAUJO, 2011]. 4. UML O UML é uma linguagem gráfica para visualizar, especificar, construir e documentar os artefatos de uma aplicação computacional. Surgiu na metade da década de 1990, com a unificação dos métodos já existentes, cujo mentores foram Grady Booch, Ivar Jocobson, James Rumbaugh. Considerada líder para a modelagem de sistemas orientados a objetos é amplamente utilizada, apresentando várias ferramentas que a implementam [FRANCE et al, 2001 apud VIEIRA, 2003]. Viera [2003] afirma que a UML não oferece uma receita de bolo e também não mostra quando devem ser criados os diagramas que compõe o modelo, sendo assim, é importante que quando especificados eles sejam consistentes e bem construídos. 4.1. Principais diagramas da UML Existem vários diagramas da UML conforme ilustra a figura 2. DIAGRAMAS UML ESTRUTURAS COMPORTAMENTO PERFIL CLASSES ATIVIDADES CASO DE USO ESTRUTURAS COMPOSTAS COMPONENTES INTERAÇÃO MÁQUINAS DE ESTADOS IMPLANTAÇÃO OBJETOS SEQUÊNCIA COMUNICAÇÃO PACOTES VISÃO GERAL DE INTERAÇÃO TEMPO Figura 2: Diagramas da UML

Dentre eles podemos destacar os principais: Diagrama de Caso de Uso: Possibilita a modelagem as interações entre um usuário e uma aplicação. Um caso de uso consiste em um ou mais cenários, que consiste na sequência de passos dados quando um usuário interage com o sistema. Diagrama de Classe: Apresenta diferente objetos dentro de uma aplicação e como esses objetos são associados entre si. O diagrama ilustra os atributos e operações de cada classe dentro do sistema e defini as restrições impostas a essas classes. A notação básica para mostrar uma classe é uma caixa retangular contendo o nome da classe. As notações do diagrama de classes é extensa, as cinco principais são: associações, atributos, operações, generalizações e restrições. Diagrama de Sequência: Utilizado para modelar como as classes interagem umas com as outras, porém não apresenta como as instâncias dessas classes irão interagir em um situação real. Esse diagramas mostram os objetos e as mensagens que se relacionam [BOND et al, 2003]. 4.2. Integração J2EE e UML Ahmed et al [2002], sustenta que qualquer desenvolvedor pode produzir uma parte da aplicação que fara o serviço, por enquanto, mas desenvolver um sistema comercial que seja mantido, dimensionável e pode se desenvolver é uma questão diferente. Atualmente uma aplicação tem que se desenvolver em um ritmo acelerado ou fica obsoleta. É possível sobreviver e prosperar por um tempo codificando, compilando, corrigindo e distribuindo sua aplicação, cedo ou tarde você vai perceber que seu sistema não é capaz de suprir as novas demandas de crescimento, isso ocorre devido a aplicação provavelmente não ter uma arquitetura e não ter designado de modo que pudesse desenvolver facilmente na necessidade das novas exigências. A UML fornece as ferramentas necessárias para fazer a arquitetura e construir aplicações complexas, como os requeridos para uma empresa. As ferramentas de modelagem estão se desenvolvendo em uma direção na qual poderão ser utilizadas para impor métricas de construção consistentes em um modelo de sistema baseado no J2EE e para gerar partes significativas do código fonte executável do sistema [AHMED et al, 2002]. 5. Considerações finais Fica evidente a importância da UML para o desenvolvimento de um produto computacional, pois a partir desta arquitetura, é possível fornecer ferramentas que auxiliem a equipe envolvida no projeto a planejá-lo, definindo um roteiro para estruturação da aplicação a ser desenvolvida, apresentando atributos como, qual a média de tempo gasto, prevendo erros que poderão acontecer no escopo do projeto, contudo, nota-se o aumento da produtividade de toda a equipe, diminuindo custos para manter a aplicação mais consistente e com menor possibilidade de erros em produção. A integração da plataforma J2EE na aplicação, proporciona a mesma, ser portável entre hardwares e sistemas operacionais por utilizar JAVA como base e permite que o desenvolvimento da aplicação possa ser dividida em camadas com funcionalidades especificas, assim aumentando a produtividade. Diante dos benefícios obtidos a partir da integração das arquiteturas apresentadas, torna-se possível implementá-las em um protótipo.

6. Referências Bibliográficas Júnior, J. M. R. S. (2002) Ferramenta para Aumento da Produtividade no Desenvolvimento de Aplicações Web sobre a Plataforma J2EE. Dissertação para obtenção do Grau de Mestre em Ciências da Computação. Universidade Federal de Campina Grande, Campina Grande, Paraíba, 2002. Ahmed, K. Z.; Umrysh, C. E. Desenvolvendo Aplicações Comerciais em Java com J2EE e UML. 1 a ed. Rio de Janeiro: Editora Ciência Moderna, 2002. 302 p. Júnior, V. N. P. (2003) Estratégias para a Utilização da Tecnologia J2EE com a Arquitetura de Cinco Camadas. Dissertação para obtenção do Grau de Mestre em Ciências da Computação. Universidade Federal de Minas Gerais, Belo Horizonte, Minas Gerais, 2003. Araujo, R. B. (2011) Computação Ubíqua: Princípios, Tecnologias e Desafios. Universidade Federal de S Carlos, São Carlos, São Paulo, 2011. Viera, R. (2003) Uso da UML na Especificação do Sistema de Informação da Área de Infraestrutura da UFRGS. Universidade Federal do Rio Grande do Sul, Porto Alegre, Rio Grande do Sul, 2003. Bond, M.; Haywood, D.; Law, D.; Longshaw, A.; Roxburgh, P. Aprenda J2EE com EJB, JSP, SERVLETS, JNDI, JDBC e XML. 1 a ed. São Paulo: Editora Pearson Education, 2003. 962 p.