78
Integração de Sistemas da Informação Abordagens de Integração João Johanes

Integração de sistemas da informação - Abordagens de integração

Embed Size (px)

Citation preview

Page 1: Integração de sistemas da informação - Abordagens de integração

Integração de Sistemas da Informação

Abordagens de Integração

João Johanes

Page 2: Integração de sistemas da informação - Abordagens de integração

Objetivo do Trabalho

Identificar as caracteristicas das Abordagens de Integração para implantar em determinado contexto

Page 3: Integração de sistemas da informação - Abordagens de integração

Introdução

Mudanças na área da Tecnologia da Informação

Page 4: Integração de sistemas da informação - Abordagens de integração

Introdução

Ambiente Heterogêneo com sistemas que trabalham de forma isolada

Page 5: Integração de sistemas da informação - Abordagens de integração

Introdução

EAI

Enterprise Application Integration

Componente de tipo middleware com a função de integrar sistemas heterogêneos.

Page 6: Integração de sistemas da informação - Abordagens de integração

Introdução

EAI

SAC

Databases

EAP

CRM

Financeiro

Sistemas Legados

EAI

Page 7: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de Integração

Page 8: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de IntegraçãoFile transfer

Page 9: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de IntegraçãoFile transfer

Shared Database

Page 10: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de IntegraçãoFile transfer

Shared DatabaseRPC

Page 11: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de IntegraçãoFile transfer

Shared DatabaseRPC

Messaging

Page 12: Integração de sistemas da informação - Abordagens de integração

Introdução

Abordagens de IntegraçãoFile transfer

Shared DatabaseRPC

MessagingWeb Services

Page 13: Integração de sistemas da informação - Abordagens de integração

Enterprise Application Integration

EAI é pedir que os aplicativos diferentes trabalhem juntos para produzir um conjunto unificado de funcionalidade...

Eles provavelmente executam em vários computadores, o que pode representar múltiplas plataformas, e pode ser geograficamente dispersos.

Page 14: Integração de sistemas da informação - Abordagens de integração

Enterprise Application Integration

Principais Desvantagens : • Sistemas trabalhando de forma isolada;• Cada um possuía sua própria base de dados tornando

compartilhamento das informações algo muito complexo; • Inserir uma informação só era possível de forma manual e

correndo risco da informação ter sido inserida diversas vezes; • Redundância de dados não desejada; • Múltiplas vezes a parte gerencial não conseguia compilar as

informações para obter respostas e tomadas de decisões;

Page 15: Integração de sistemas da informação - Abordagens de integração

Enterprise Application Integration

Principais Vantagens:• Diminui retrabalho e redundância de informações.• Aumento da qualidade das informações, garantindo a

consistência.• Crescer as opções de funcionalidades no sistema e

tornando mais fácil gerenciamento dos processos.• Gerando respostas e tomada de decisões.• Gestores recuperam controle da empresa em sua

totalidade.• Flexibilidade, possível manipular as informações criar,

atualizar e apagar informações em qualquer sistema que participe da integração.

Page 16: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Será que realmente necessario um Integração?

O que os profissionais devem olhar antes de adotar uma abordagem de integração?

Page 17: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Acoplamento entre os aplicativos – Minimizar as dependências entre os aplicativos garante que dessa forma os aplicativos podem crescer sem causar impactos nos demais aplicativos;

Page 18: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Nível de intrusão – Ao se desenvolver uma integração os desenvolvedores devem tentar evitar o máximo de mudanças possíveis tanto na aplicação e principalmente inserção de novas linhas de códigos novos nos aplicativos;

Page 19: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Selecionar tecnologias – Diferentes abordagens de integração podem levar a quantidade de licenças de software e hardware, aumentarem custo, dependência de fornecedores específicos, carga de trabalho e aumento na curva de aprendizado dos desenvolvedores;

Page 20: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Formato de dado – Formato de dado deve ser reconhecido pelos aplicativos, sabendo que pode ser inviável manter um único tipo de formato;

Page 21: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Tempo de atualização dos dados – A integração deve garantir o menor tempo comunicação entre as aplicações no momento que uma aplicação decide compartilhar um dado;

Page 22: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

Comunicação assíncrona remota –A maioria das chamadas de funcionalidades remotas que trabalham com processos de comunicações síncronos é algo muito custoso e complexo para esse tipo de situação;

Page 23: Integração de sistemas da informação - Abordagens de integração

Critérios da Enterprise Application Integration

File Transfer

Shared Database

RPC Messaging

Acoplamento entre os aplicativos

++ --- - +++

Nível de intrusão ++ --- + +++Selecionar tecnologias ++ ++ ++ -Formato de dado + ++ ++ +++Tempo de atualização dos dados

-- +++ ++ ++

Funcionalidades abertas --- --- +++ +++Comunicação assíncrona remota

+++ ++ ++ +++

Page 24: Integração de sistemas da informação - Abordagens de integração

Comunicações síncrona e assíncrona

Comunicação

Assíncrona Síncrona

File Transfer Sim

Shared Database Sim

RPC Sim

Messaging Sim

Web Services Sim

Page 25: Integração de sistemas da informação - Abordagens de integração

Abordagens da EAI

“Há mais de uma abordagem para a integração de aplicações. Cada abordagem aborda alguns dos critérios de integração melhores do que outros. As diferentes abordagens pode ser resumido em quatro estilos de integração principais” Martin Fowler

Page 26: Integração de sistemas da informação - Abordagens de integração

Abordagens da EAI

File Transfer (em português Transferência de arquivos)

Page 27: Integração de sistemas da informação - Abordagens de integração

File Transfer

Cenário muito simples e por isso que funciona bem;

Flexibilidade é em grande parte devido á arquitetura cliente-servidor;

Page 28: Integração de sistemas da informação - Abordagens de integração

File Transfer

Page 29: Integração de sistemas da informação - Abordagens de integração

File Transfer

Comando de parâmetros de transferência

Comando Significado

PORT Cliente escolhe uma porta, contem 6 dígitos

PASV Servidor escolhe uma porta

TYPE Define tipo de arquivo e, se necessário o formato da impressão

STRU Define organização dos dados (F para File, R para Record, P para Page)

MODE Define o modo de transferência dos dados (S para Stream, B para Block, C para Compressed)

Page 30: Integração de sistemas da informação - Abordagens de integração

File Transfer

Características do File Transfer:• Modelo que integração rápida e simples;• Rápido e interoperável;• Diversas linguagens de programação

possui APIs para auxiliar comunicação entre dois sistemas;• Não é desenvolvido para trabalhar com

transferência de dados em tempo real

Page 31: Integração de sistemas da informação - Abordagens de integração

File Transfer

Page 32: Integração de sistemas da informação - Abordagens de integração

File Transfer

Gerando arquivo de escrituração fiscal

Integração de Sistemas com a abordagem File Transfer

Page 33: Integração de sistemas da informação - Abordagens de integração

Shared Database

Shared Database (em português Banco de dados compartilhado)

Page 34: Integração de sistemas da informação - Abordagens de integração

Shared Database

Definição:Shared Database consiste basicamente em várias aplicações consumindo a mesma base de dados, esses aplicativos podem ser heterogêneos e também de estar geograficamente dispersos.

Page 35: Integração de sistemas da informação - Abordagens de integração

Shared Database

Page 36: Integração de sistemas da informação - Abordagens de integração

Shared Database

Motivação para implantação de Shared Database:

Page 37: Integração de sistemas da informação - Abordagens de integração

Shared Database

Principais problemas encontrados quando não se usa Integração Shared Database:

• Informação repetida• Inconsistência de dados

Page 38: Integração de sistemas da informação - Abordagens de integração

Shared Database

Page 39: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:

• Integração com Federação de dados• Integração com replicação de dados

Page 40: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:• Integração com Federação de dados

Page 41: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:• Integração com Federação de dados

Vantagens:• Transparência passa uma visão para usuários de sistema

único.• Desenvolvedores podem manipular objetos de banco de

dados sem nenhum impacto sobre os usuários ou aplicativos de banco de dados existentes.

Page 42: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:• Integração com Federação de dados

Desvantagens:• Complexidade, é um ambiente muito complexo, é preciso

coordenar o commit ou undo.• Esse aspecto seria uma vantagem da integração com banco de

dados centralizado, mas na integração de banco de dados federados se torna algo muito complexo.

• Custo, para torna uma integração confiável terá que adquirir para infraestrutura mais capacidade processamento, memória disponível.

Page 43: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:• Integração com replicação de dados

Page 44: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:

• Integração com replicação de dados

Vantagens:• Melhor desempenho• Melhor disponibilidade• Escalabilidade, capacidade atendar uma alta demanda de

acessos.

Page 45: Integração de sistemas da informação - Abordagens de integração

Shared Database

Tipos de Integração com Banco de dados:

• Integração com replicação de dados

Desvantagens:• Necessita de maior controle para que não haja inconsistência

de dados• Custo, hardware com grande capacidade de armazenamento.

Page 46: Integração de sistemas da informação - Abordagens de integração

Shared Database

Comparação das Integrações baseado no compartilhamento de dados:

Shared Replication Federated

Disponibilidade - + +

Escalabilidade - + -

Desempenho + - +

Segurança + + -

Page 47: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

RPC (Remote Procedure Call, em português Chamada de Procedimento

Remoto)

Page 48: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

RPC permite que o cliente consiga realizar uma comunicação acessando um

procedimento definido (serviço) existente em outra aplicação remota (servidor).

Page 49: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Page 50: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Modelo de comunicação da abordagem RPC:

Page 51: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Modelo de comunicação da abordagem RPC:

• Modelo Cliente /Servidor ;

• Protocolos de requisição-resposta (UDP, TCP ou HTTP) ;

• . O cliente possui uma agente que empacota um identificador e depois envia ao servidor, que possuem um agente com papel desempacotar e executar o procedimento referente ao identificar do cliente.

Page 52: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call• Características da comunicação dos Componentes RPC:

• Agentes:StubModulo de comunicação ServidorCliente

Page 53: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Mensagem de requisição

Page 54: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Tecnologias de integração com base na abordagem RPC:

XML-RPC:RPC tem papel transportar usando protocolo HTTP e o XML que faz papel da codificação.

GWT-RPC:Framework GWT-RPC tem função de facilitar a troca de objetos Java entre os componentes cliente e servidor através do protocolo HTTP. São apenas métodos para transferir dados entre um servidor e uma aplicação cliente GWT

Page 55: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Desafios:

Acoplamento - Um serviço bem construido expõe uma interface abstrata que pode separar cliente da implementação. Quaisquer alteração no sistema pode trazer problemas de insdisponibilidade afetando comunicação entre os componentes.

Page 56: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Desafios:

• Serviços heterogêneos - RPC possui muito tipos de serviços heterogêneos que torna complexo a construção e manutenibilidade.

Page 57: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Desafios:

• Síncrona - Quando cliente é executa uma requisição para servidor, o cliente irá ficar com estado bloqueado até que servidor emita uma resposta ao cliente.

Page 58: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Desafios:

• Transações de dados - É preciso decidir se os dados serão persistidos diretamente no banco de dados;

Page 59: Integração de sistemas da informação - Abordagens de integração

Remote Procedure CallVantagens, Desvantagens e Classificações RPC:

Vantagens:

• RPC oferece uma abordagem mais simples;

• RPC garante processamento sequencial, o modelo RPC síncrono, existe a capacidade de controlar a ordem em que o processamento ocorre no sistema;

• RPC garantir os dados persistidos em ordem e dados consistentes, se problema; é garantir a integridade dos dados abordagem correta é RPC;

• Modelo RPC é ideal para uma comunicação fortemente “tipado” e acoplado;

Page 60: Integração de sistemas da informação - Abordagens de integração

Remote Procedure Call

Vantagens, Desvantagens e Classificações RPC:

Desvantagens:

• Problemático para dimensionar as partes do sistemas e lidar com interrupções;

• Grande sobrecarga e exigem mais largura de banda.

• Velocidade muito baixa ;

Page 61: Integração de sistemas da informação - Abordagens de integração

Messaging

Messaging (em português Mensagens)

Page 62: Integração de sistemas da informação - Abordagens de integração

Messaging

é uma abordagem onde temos dois sistemas que se conecta a um sistema de mensagens com a função de trocar dados e invocar comportamento através de message.

Page 63: Integração de sistemas da informação - Abordagens de integração

Messaging

Page 64: Integração de sistemas da informação - Abordagens de integração

Messaging

Esta abordagem se torna tão especial por não exigir que ambos sistemas esteja em funcionamento no momento de uma operação de comunicação;

Abordagem usa um processo de comunicação assíncrona forçando os desenvolvedores a pensar em uma integração com sistemas remotos;

Page 65: Integração de sistemas da informação - Abordagens de integração

MessagingConceitos básicos da Abordagem Messaging:Abordagem Messaging possui diversos conceitos que é preciso conhece-los antes de fazê-lo uso, seu conceitos são:

• MessageMessage é conteúdo da comunicação na Abordagem Messaging;

• Message ChannelsO Channel administra os detalhes de como e onde uma message será entregue;

• Message endpointsMessage endpoints são componentes que irão trabalhar em cima da message;

Page 66: Integração de sistemas da informação - Abordagens de integração

Messaging

Conceitos básicos da Abordagem Messaging:

Page 67: Integração de sistemas da informação - Abordagens de integração

Messaging

Conceitos básicos da Abordagem Messaging:

• Message TranslatorMessage Translator tem responsabilidade de transforma a interface da message para atender um contexto especifico.

• Message RouterMessage Router está preocupado com destino da message ao invés do causar alguma transformação como acontece com Channel.

Page 68: Integração de sistemas da informação - Abordagens de integração

Messaging

Messaging ou RPC:RPC como Messaging possui suas particularidades, vantagens e desvantagens;

RPC MESSAGING

Flexibilidade - +

Interrupções - +

Disponibilidade - +

Ordenação + -

Atualização + -

Integridade + -

Performance - +

Page 69: Integração de sistemas da informação - Abordagens de integração

Web Services

Web Services traz uma proposta de facilitar a comunicação entre sistemas aproveitando a eficácia dos protocolos da internet, HTTP e SOAP.

Page 70: Integração de sistemas da informação - Abordagens de integração

Web ServicesComponentes Web Services:

Protocolos:

HTTP – Protocolo HTTP responsável de receber e executar solicitações de serviço web em servidor web.

SOAP – Protocolo SOAP de encapsular a mensagem que será transmitida através de protocolo HTTP, protocolo que irá executar troca de mensagens.

Page 71: Integração de sistemas da informação - Abordagens de integração

Web ServicesComponentes Web Services:

Descrição do serviço:

WSDL – WSDL (Web Service Description Language) é um documento escrito em XML tem a função de definir o formato, os valores que trafega pelo web services.

Page 72: Integração de sistemas da informação - Abordagens de integração

Web ServicesComponentes Web Services:

Descrição publicação, procura de Web Services:

UDDI – UDDI tem a função de publicar WSDL para os potencias clientes possa encontra-los e consumir os serviços descritos pelo WSDL.

Page 73: Integração de sistemas da informação - Abordagens de integração

Web ServicesComponentes Web Services:

Comunicação Web Services em uma Arquitetura SOA:

Web Services funciona com uma interface que trabalha independe da plataforma, seu fluxo ocorre através da troca de mensagens entre o fornecedor e consumidor utilizando um protocolo SOAP estruturado em uma linguagem de marcação XML usando canal de comunicação de requisição e resposta HTTP.

Page 74: Integração de sistemas da informação - Abordagens de integração

Web ServicesComunicação Web Services:

Modelo de comunicação Web Service em SOA.

Page 75: Integração de sistemas da informação - Abordagens de integração

Web ServicesVantagens e Desvantagens de Integração com Web Services :

Vantagens:

• Usa XML para transferência de dados e para especificação.

• Usando XML permite compreender dos dados transferidos para depurar aplicativos.

• Uso de protocolo da internet permite o uso de serviço por trás de firewall.

• Facilitando a integração entre as diferentes tecnologias e aplicações, utilizando um protocolo de comunicação de alto nível

Page 76: Integração de sistemas da informação - Abordagens de integração

Web ServicesVantagens e Desvantagens de Integração com Web Services :

Desvantagens :

• Web Services possui diversos padrões e qualquer mudança em desses padrões pode fazer com que aplicação pare de funcionar.

• Quando cliente executa uma solicitação não há uma garantia que requisição seja finalizada, pode ocorrer uma falha na rede ou na internet

Page 77: Integração de sistemas da informação - Abordagens de integração

Considerações Finais• Não existe a melhor ou pior Integração, na verdade o que

existe são contextos diferentes;

• Preciso saber tipo de comunicação para integração;

• E conhecer as principais caracteristicas da Abordagem de Integração, seus componentes, se esta a alcançe da empresa, suas vantagens e desvantagens;

• E quais os criterios que são atendidos pela Abordagem

Page 78: Integração de sistemas da informação - Abordagens de integração

Considerações Finais• Não existe a melhor ou pior Integração, na verdade o que

existe são contextos diferentes;

• Preciso saber tipo de comunicação para integração;

• E conhecer as principais caracteristicas da Abordagem de Integração, seus componentes, se esta a alcançe da empresa, suas vantagens e desvantagens;

• E quais os criterios que são atendidos pela Abordagem