Patterns Arquitetônicos para E-Business
Acervo de patterns
arquitetônicos
nivelados
Favorecem aos arquitetos de
sistemas implementar soluções
de e-business de sucesso,
através do reuso de
componentes e soluções
arquitetônicos, obtidos a partir
de experiências comprovadas
http://www-106.ibm.com/developerworks/patterns/
Patterns de Negócios
Identificam interações mais comuns que ocorrem
entre usuários, negócios e dados.
Tipos de Patterns de Negócios
SELF – SERVICE
(usuário para negócios)
COLABORAÇÃO
(usuário a usuário)
AGREGAÇÃO DE INFORMAÇÃO
(usuário a dados)
CORPORAÇÃO ESTENDIDA
(negócios a negócios)
SELF – SERVICE
(usuário para negócios)
Aplicações
simples de
Web site
Usuários acessando
transações na base 24x7 pela
Interner / Intranet
Usuário acessando seu saldo
bancário
COLABORAÇÃO
(usuário a usuário)
Aplicações onde a
Internet suporta
trabalho colaborativo
entre usuários
Usuário trabalhando
com outro usuário
para compartilhar
dados: email, grupos,
chat, vídeoconferência
AGREGAÇÃO DE INFORMAÇÃO
(usuário a dados)
Aplicações onde o
usuário extrai
informações úteis a
partir de grandes
volumes de dados,
textos, imagens, ..
Dados de fontes múltiplas,
agregadas e apresentadas
através de canais múltiplos:
Business Intelligence,
Gestão do Conhecimento, ..
CORPORAÇÃO ESTENDIDA
(negócios a negócios)
Aplicações que ligam um
ou mais negócios, através
de empresas separadas
Integração de dados e
processos através das
fronteiras da empresa:
SCM, CRM
Patterns de Integração
“Cola” entre os Patterns de
Negócios: aplicações complexas
podem ser construídas
combinando múltiplos patterns de
negócios
Integração de diversos
serviços através de um
ponto de entrada
comum: Portais
Integração por Acesso
Integração
Integração por Aplicação
Patterns de
Integração de múltiplas
aplicações e fontes de dados,
sem os usuários diretamente
envolvidos: EAI :Brokers de
Mensagem, Gerenciadores de
Workflow
Patterns Compostos
Casos Comuns
•Comércio Eletrônico
•Portal
•Acesso a Contas
•Troca
•Hub voltado a Vendas (
Fornecedor )
•Hub voltado a Compras (
Comprador )
Customização do Projeto
Incluir somente os patterns que são usados num caso específico
Usado
Não Usado
Pattern Composto
Comércio Eletrônico
Compras do usuário On-line: www.amazon.com
Pattern Composto
Portal
Agrega fontes de informação e aplicações
através de acesso uniforme e personalizado:
Portal Intranet duma empresa
Os patterns de Negócios / Integração podem ser
implementados usando um ou mais
Patterns de Aplicação
Descreve a estrutura, colocação
e integração entre as camadas
lógicas da Aplicação
SELF – SERVICE
(usuário para negócios)
Patterns de Aplicação
•Canal Stand Alone Simples
•Canal Diretamente Integrado Simples
•Roteador
•Decomposição
•Agente
Pattern de Aplicação
Self Service :: Canal Stand-Alone Simples
Estrutura para aplicações que não tem necessidade de integração
com outros sistemas e cujo foco principal é o canal Web
Usa duas camadas lógicas: de Apresentação e da Aplicação ( lógica
dos negócios )
Exemplo: Aplicação que permite localizar a filial mais próxima do
endereço do cliente
Pattern de Aplicação
Self Service :: Roteador
Pattern de Aplicação
Self Service :: Roteador
Provê estrutura para aplicações que necessitam roteamento
inteligente de requisições feitas a partir múltiplos canais de
transferência para múltiplas aplicações back-end
Usa três camadas
De Apresentação : com estilos diferentes: Internet, call centers, kiosks
De Roteamento: rotear de forma inteligente para as transações de backend apropriadas: implementa um mínimo de regras de negócios. É
responsável por transformação de mensagens, conversão de protocolos,
gerência de níveis diferentes de segurança e concentração de sessões.
Aplicação de Negócios: maioria das regras de negócios
Exemplo: Financeira: permite serviços de crédito pessoal,
investimentos, cartão de crédito, suportados por aplicações back-end
diferentes e acessados por diferentes canais
Escolha do Pattern de Aplicação
Feita baseada em fatores de
Negócios
Tecnologia
Pattern de Aplicação Self Service :: Roteador
Fatores de Negócios:
Melhora a eficiência organizacional
Reduz a latência dos eventos de negócios
Fácil de adaptar quando houver fusões e novas aquisições
Integração através de múltiplos canais de transmissão
Fatores de Tecnologia
Minimiza o custo total de compra
Aproveita as funcionalidades já existentes
Aproveita o investimento já feito com sistemas legados
Faz integração de aplicações back-end
Minimiza a complexidade da empresa
Fácil manutenção
Solução escalável
Patterns de Aplicação para Integração
De Acesso
De Aplicação
Foco no Processo
Foco no Dado
Patterns de Aplicação para Integração por Acesso
Pervasive Device Access
Web Single Sign-On application
Extended Single Sign-On application
Personalized Delivery
Patterns Runtime
Captura a topologia lógica da arquitetura que
é necessária para suportar um pattern de
aplicação
Identifica nós de:
Software
Middleware
Hardware
necessários e baseados num
conjunto de características de
nível de serviço:
Disponibilidade
Segurança, ...
Pattern de Aplicação::Self Service :: Roteador
Self-Service:: Pattern Runtime Roteador
public key infrastructure (PKI)
PKI is a system for verifying the authenticity of each party involved in
an Internet transaction, protecting against fraud or sabotage, and for
nonrepudiation purposes to help consumers and retailers protect
themselves against denial of transactions. Trusted third-party
organizations called certificate authorities issue digital certificates -attachments to electronic messages -- that specify key components
of the user's identity. During an Internet transaction, signed,
encrypted messages are automatically routed to the certificate
authority, where the certificates are verified before the transaction
can proceed. PKI can be embedded in software applications, or
offered as a service or a product. e-business leaders agree that PKIs
are critical for transaction security and integrity, and the software
industry is moving to adopt open standards for their use.
user node
The user node is most frequently a personal
computing device (PC) supporting a commercial
browser, for example, Netscape Navigator and
Internet Explorer. The browser is expected to
support SSL and some level of DHTML.
Increasingly, designers need to also consider that
this node might be a pervasive computing device,
such as a Personal Digital Assistant (PDA).
Domain Name Server (DNS) Node
The DNS Node assists in determining the physical
network address associated with the symbolic
address (URL) of the requested information. The
Domain Name Server Node provides the technology
platform to provide host to IP address mapping, that
is, to allow for the translation of names (referred to
as URLs) into IP addresses and vice versa.
Additional Resources
•(in English) ESS
Web Server Redirector Node
In order to separate the Web server from the
application server, a so-called Web Server
Redirector Node (or just redirector for short) is
introduced. The Web server redirector is used in
conjunction with a Web server. The Web server
serves HTTP pages and the redirector forwards
servlet and JSP requests to the application servers.
The advantage of using a redirector is that you can
move the application server behind the domain
firewall into the secure network, where it is more
protected than within the DMZ.
application server node
The application server node provides the
infrastructure for application logic and can be part
of a Web application server. It is capable of
running both presentation and business logic but
generally does not serve HTTP requests. When
used with a Web server redirector, the application
server node can run both presentation and
business logic. In other situations, it can be used
for business logic only.
Integration Server Node
The purpose of this node is to interface between any front
end access channel, such as the web, a call center, or a
client/server ("fat client") PC, and whatever back-end
application system is needed (including applications from
other companies). It will perform the following kinds of
services
•convert protocols from the front end to match
whatever the back-end systems understand
•decompose a single message from the front end
(such as a web server) into several back-end
messages (or transactions), and then re-compose the
replies
•navigate from the front end to whatever back-end
system needs to be accessed
•in more complex cases, control the process or unit of
work for a number of back-end interactions based on a
request from the front end
directory and security services node
The directory and security services node supplies
information on the location, capabilities, and
attributes (including user ID/password pairs and
certificates) of resources and users known to this
Web application system. This node can supply
information for various security services
(authentication and authorization) and can also
perform the actual security processing, for
example, to verify certificates. The authentication
in most current designs validates the access to
the Web application server part of the Web
server, but this node also authenticates for
access to the database server.
LDAP
Lightweight Directory Access Protocol (LDAP)
refers to the protocol that is used to communicate
from a calling program (running on a node such as
a Commerce Server) and a Directory Node.
Information is kept on the LDAP-based directory
node about such topics as people and/or services.
For example, the directory could be used to store
information needed to identify registered shoppers
(referred to as authentication). It could also be
used to store information about what functions
those shoppers are allowed to perform after being
identified (referred to as authorization).
Mapeamento para Produto
Self-Service::pattern de aplicação Roteador: Mapeamento para
Produto - Windows NT, message broker-based
Caso : Geospacial Information On-Stop
Descrição geral dos negócios
Identificação dos Patterns de Negócio
Identificação dos Patterns de Integração
Identificação dos Patterns de Aplicação
Identificação dos Patterns de RunTime
Combiná-los numa arquitetura integrada
Download

Patterns de Negócios