Desenvolvimento de
Aplicações para WEB
Histórico
Aplicações isoladas (batch)
Tecnologia de Redes e de SGBD
Arquitetura Cliente x Servidor
Internet
Vantagens Estratégicas para as
Empresas
O Que é uma Aplicação WEB?
Aplicação desenvolvida para ser
executada na Internet.
Não é apenas uma substituição da
plataforma cliente/servidor e sim um
novo conceito de comunicação entre a
empresa, seus clientes e seus
membros.
Fases de Implementação dos
Web Sites
1) Provê informações de marketing e
sobre produtos, mas de uma forma
estática, pela utilização pura e
simples de páginas HTML.
2) Provê informações dinâmicas sobre
serviços, por exemplo, possibilitando
acesso a um catálogo ou uma
procura sobre conexões de vôos.
Fases de Implementação dos
Web Sites
3) Provê serviços transacionais,
associados a sistemas corporativos,
muitas vezes isolados nos chamados
“Sistemas Legados” .
Desafio: Integração de Sistemas
Metodologia
Metodologias de Análise Orientada a Objeto
UML – (Unified Modeling Language)
• Gerenciamento de aplicações com
objetos distribuídos.
• Cliente Universal x Cliente/Servidor de
três camadas
Tecnologias
ASP (Active Server Pages)
PHP (Hypertext Preprocessor)
Tendências Atuais
 Integração de Sistemas
 Desenvolvimento rápido de aplicações
(RAD), para distribuição, manutenção
e integração dos sistemas
corporativos
 Objetos distribuídos + Web =
ObjectWeb
 SO Linux
Computação com
Objetos Distribuídos
INTERNET
COMPUTAÇÃO C/
OBJETOS
DISTRIBUÍDOS
INTERESSES CONVERGENTES
Computação com
Objetos Distribuídos
INTERNET : Provê plataforma ideal para
aplicações com objetos distribuídos.
IMPULSIONA CRESCIMENTO DE
APLICAÇÕES WEB
Computação com
Objetos Distribuídos
DISTRIBUIÇÃO DE OBJETOS
AUMENTA A QUALIDADE DAS APLICAÇÕES
WEB, AGREGANDO VALORES À INTERNET E
INTRANETS CORPORATIVAS.
Arquitetura em Camadas
CAMADA 1
CAMADA 2
CAMADA 3
Chamada de Consulta
URL + Entradas
Formulário HTML
Formulário HTML
NAVEGADOR DA WEB
SERVIDOR DE BANCO DE DADOS
SERVIDOR DA WEB
HTTP
CGI
Principais Padrões para
Computação Distribuída
 DCE (Distributed Computing Environment)
 CORBA (Common Object Request Broker
Architecture)
 COM (Component Object Model) / DCOM
 RMI (Remote Method Invocation)
 TCP/IP Sockets programming
 EJB (Enterprise Java Beans)
CORBA
CORBA é um conjunto de padrões,
incluindo:
 Linguagem para definição de
interfaces (IDL)
 Mapeamentos IDL para diferentes
linguagens de programação
 Protocolo para comunicação entre
objetos em diferentes ORBs (IIOP)
CORBA
 Referências a objetos, IOR
(Interoperable Object Reference)
 Métodos para se descobrir objetos a
nível de rede
 Interoperabilidade, portabilidade,
independência (plataformas,
linguagens e fornecedores)
CORBA
 Modelo para desenvolvimento de
aplicações com objetos distribuídos
 Que objetos podem atuar como
clientes ou servidores ou ambos.
 Suporte para desenvolvimento e
administração de serviços de rede,
tais como, naming, events, trading,
security, transactions, entre outros
JAVA: Uma extensão natural às
especificações CORBA
 Linguagem poderosa e fácil de
usar , para construir aplicações
distribuídas do lado cliente.
 Linguagem e um ambiente para
desenvolver aplicações que
rodem em Web servers.
INDEPENDÊNCIA DE PLATAFORMA
JAVA x Aplicações
Corporativas x Padrão CORBA
JAVA: Estado da Arte em LOO
 Portabilidade entre plataformas;
 Programação Internet;
 Linguagem totalmente OO;
 Modelo de componentes
JAVA x Aplicações
Corporativas x Padrão CORBA
CORBA : Complementa
especificações JAVA
 Interfaces definidas de forma
independente de suas
implementações;
 Acesso a objetos implementados em
outras linguagens de programação;
JAVA x Aplicações
Corporativas x Padrão CORBA
Acesso a objetos, independentemente
de sua localização;
Geração automática de código para
lidar com chamadas remotas;
Acesso a todos os serviços e
facilidades CORBA (naming, trading,
event, transaction service, security
service, etc…)
Ferramentas/Tecnologias para
Sistemas Corporativos
1) APIs para acesso a dados JDBC
 Mapeamento Objeto-Relacional
 Extensible Markup Language (XML)
Ferramentas/Tecnologias para
Sistemas Corporativos
2) APIs para comunicação entre
objetos
 Remote Method Invocation (RMI)
 Common Object Request Broker
Architecture (CORBA / JavaIDL)
 Remote Method Invocation - Internet
InterORB Protocol (RMI – IIOP)
 Enterprise JavaBeans (EJB)
Ferramentas/Tecnologias para
Sistemas Corporativos
3) APIs Enterprise
 Java Naming and Directory
Interface (JNDI)
 Java Message Service (JMS)
 JavaMail (Jmail)
 Java Transaction Service (JTS)
 Java Cryptography Extensions (JCE)
 Servlets / JSP
Sistema de Custos na
WEB
Benefícios Obtidos com o
Uso de Aplicações WEB
 Redução Drástica do TCO (Custo Total de
Propriedade)
 Arquitetura Aberta
 Uso Eficaz de Recursos
 Onipresença
 Nova Interface
Conclusão
O desenvolvimento de aplicações WEB, em
ambiente corporativo, envolve projetos de
grande complexidade, com necessidade de
integração entre ambientes heterogêneos,
utilização de metodologia e grande
capacitação tecnológica.
Conclusão
Entretanto, os resultados e benefícios
obtidos são fatores preponderantes para o
sucesso das grandes corporações.
Equipe
Cristiana Neves Moreno
Juliana Medeiros
Regina M. Gomes Ferreira
Rivaldo Cassimiro Júnior
Download

Como a Informação Lhe Proporciona Vantagem Competitiva