Integração de software      soluções e estilosUniversidade Federal de GoiásProf Leonardo A Alves
Integrando para resolverproblemas• Necessidade de Integração  • Software de diferentes fabricantes;  • Software desenvolvi...
Desafios da Integração• Integração pode significar mudanças nas politicas  coorporativas. Cada aplicação é agora parte de ...
Desafios da Integração• Quantidade limitada de “controle” que os desenvolvedores de  integração normalmente têm sobre as a...
Desafios da Integração• Serviços/Soluções Web abordam apenas uma fração dos  desafios de integração.• A mistura de tecnolo...
O que integrar?• Portais de Informação• Replicação de Dados• Funções compartilhadas de Negócios• Arquiteturas Orientadas a...
Exemplo comum de Integração:Portal de aplicações empresariaisrodando na Web.
Portal de Informações
Problemas comuns•   Forte dependência entre módulos;•   Manutenabilidade comprometida;•   Mais de um elemento integrador c...
Solução: Integração comReplicação de dados
Como foi a resolução dasagendas?• Trabalho de agendas, qual solução você tomou?• Qual foi a melhor? Vamos avaliar?
Soluções Possíveis• Há muitas maneiras de implementar a replicação de dados.  Por exemplo, alguns fornecedores de banco de...
Solução: Função de negócioscompartilhada• Da mesma forma que muitas aplicações de negócio armazenar  dados redundantes, el...
Solução: Função de negócioscompartilhada
Solução: Função de negócioscompartilhada• Obs.:uma função é geralmente mais invasiva do que o  carregamento de dados na ba...
Serviços Orientados aArquitetura• Esses vocês conhecem bem...
Serviços Orientados aArquitetura
Serviços Orientados aArquitetura• Funções de negócios compartilhados são muitas vezes  referidos como serviços.• Iniciamen...
Processo Distribuído de Negócio
Processo Distribuído deNegócio• você poderia desenvolver serviços que compartilhem todas as  funções empresariais relevant...
Integração B2B• Em muitos casos, as funções de negócios podem estar  disponíveis a partir de fornecedores externos ou parc...
Integração B2B
Integração B2B• No entanto, a comunicação através da Internet ou outra rede  normalmente suscita novas questões relacionad...
Acoplamento Fraco• Um grande exemplo de acoplamento forte é uma invocação  de método local.• Muitas abordagens preferem co...
Acoplamento Fraco• "os objetos que interagem em um sistema distribuído precisa  ser tratado de maneiras que são intrinseca...
Solução de integração comAcoplamento fraco• Devemos ter a capacidade de mover dados de um sistema  para outro, sem percebe...
Solução de integração comAcoplamento fraco
Solução de integração comAcoplamento fraco• As soluções de integração pode rapidamente tornar-se  complexas, pois lidam co...
Estilos de integração (cap2)• Integração de Aplicação é a tarefa de fazer aplicações  separadas trabalhar juntos para prod...
Critérios de Integração• Acoplamento de aplicação - Mesmo aplicações integradas  devem minimizar suas dependências entre s...
Critérios de Integração• Tecnologia de integração - técnicas de integração diferentes  requerem softwares especializados e...
Critérios de Integração• Atualização dos dados - Integração deve minimizar o tempo  na atualização de dados entre as aplic...
Critérios de Integração• Assincronia - processamento no computador é geralmente  síncrono, de modo que um procedimento esp...
Opções de IntegraçãoTransferência de arquivos - Faça com que cada aplicação produzaarquivos de dados compartilhados para o...
Opções de IntegraçãoTransferência de arquivos - Faça com que cada aplicação produzaarquivos de dados compartilhados para o...
Integração por Arquivo
Banco de dados Compartilhado
Procedimento Remoto
Procedimento Remoto
Conclusão• Mensagens tem o benefício de permitir que as aplicações  sejam muito mais dissociados umas das outras do que em...
ExercícioVocê foi contratado por uma empresa desenvolvedora de softwareque comercializa um sistema de controle e armazena ...
Figura 1 – Modelo Cadastro de Clientes
MoodleImplemente sua própria solução de migração de dados, considerea necessidade de se manter funcional os dois sistemas ...
Integração de software 2
Próximos SlideShares
Carregando em…5
×

Integração de software 2

375 visualizações

Publicada em

material de aula sobre integração de sotwares. UFG, eng de software.2/2

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
375
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
6
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Integração de software 2

  1. 1. Integração de software soluções e estilosUniversidade Federal de GoiásProf Leonardo A Alves
  2. 2. Integrando para resolverproblemas• Necessidade de Integração • Software de diferentes fabricantes; • Software desenvolvido com tecnologias diferentes; • Software desenvolvido com necessidades governamentais ou legais.
  3. 3. Desafios da Integração• Integração pode significar mudanças nas politicas coorporativas. Cada aplicação é agora parte de um fluxo global de aplicações e serviços integrados;• Os esforços de integração normalmente têm implicações de longo alcance sobre o negócio; Uma solução de integração que falha pode custar milhões de dólares em negócios perdidos, ordens de pagamentos erradas e clientes insatisfeitos.
  4. 4. Desafios da Integração• Quantidade limitada de “controle” que os desenvolvedores de integração normalmente têm sobre as aplicações a serem integradas.• O advento do XML, XSL e Web sevices certamente marcam o avanço mais significativo de padrões baseados em características de uma solução de integração. No entanto, o boom em torno de serviços da Web também tem dado motivos para nova fragmentação do mercado, resultando em um turbilhão de novas "extensões" e "Interpretações" das normas.
  5. 5. Desafios da Integração• Serviços/Soluções Web abordam apenas uma fração dos desafios de integração.• A mistura de tecnologias e a natureza distribuída de soluções exige um conjuntos de habilidades que não muitas vezes combinam gestão e tecnologia.
  6. 6. O que integrar?• Portais de Informação• Replicação de Dados• Funções compartilhadas de Negócios• Arquiteturas Orientadas a Serviços• Processos distribuídos de Negócios• Integração Business-to-Business(B2B)
  7. 7. Exemplo comum de Integração:Portal de aplicações empresariaisrodando na Web.
  8. 8. Portal de Informações
  9. 9. Problemas comuns• Forte dependência entre módulos;• Manutenabilidade comprometida;• Mais de um elemento integrador conjugado;• Incapacidade de manutenção on-line do serviço;• ...
  10. 10. Solução: Integração comReplicação de dados
  11. 11. Como foi a resolução dasagendas?• Trabalho de agendas, qual solução você tomou?• Qual foi a melhor? Vamos avaliar?
  12. 12. Soluções Possíveis• Há muitas maneiras de implementar a replicação de dados. Por exemplo, alguns fornecedores de banco de dados constroem funções de replicação no banco de dados, podemos exportar os dados em arquivos e re-importá-los para outro sistema, ou podemos usar middleware orientado a mensagem para o transporte de registros de dados dentro de mensagens.
  13. 13. Solução: Função de negócioscompartilhada• Da mesma forma que muitas aplicações de negócio armazenar dados redundantes, eles também tendem a implementar a funcionalidade redundante.• Conferência de CPF, averiquação de cheques, serviços de avaliação de informação.
  14. 14. Solução: Função de negócioscompartilhada
  15. 15. Solução: Função de negócioscompartilhada• Obs.:uma função é geralmente mais invasiva do que o carregamento de dados na base de dados, e pode requerer programação direta no código, por isso é menos usada.
  16. 16. Serviços Orientados aArquitetura• Esses vocês conhecem bem...
  17. 17. Serviços Orientados aArquitetura
  18. 18. Serviços Orientados aArquitetura• Funções de negócios compartilhados são muitas vezes referidos como serviços.• Iniciamente, as aplicações precisam de uma lista centralizada de todos os serviços disponíveis. Em segundo lugar, cada serviço necessita descrever a sua interface de tal maneira que uma aplicação possa "negociar" sua comunicações com base no serviço. Estas duas funções, a descoberta de serviços e negociação, são os principais elementos que compõem uma arquitetura orientada a serviços.
  19. 19. Processo Distribuído de Negócio
  20. 20. Processo Distribuído deNegócio• você poderia desenvolver serviços que compartilhem todas as funções empresariais relevantes e então codificar o processo de negócio dentro de um aplicativo que acessa todos os serviços através de uma SOA.
  21. 21. Integração B2B• Em muitos casos, as funções de negócios podem estar disponíveis a partir de fornecedores externos ou parceiros de negócios.
  22. 22. Integração B2B
  23. 23. Integração B2B• No entanto, a comunicação através da Internet ou outra rede normalmente suscita novas questões relacionadas protocolos de segurança. Além disso, formatos de dados padronizados são extremamente importantes.
  24. 24. Acoplamento Fraco• Um grande exemplo de acoplamento forte é uma invocação de método local.• Muitas abordagens preferem comunicações simple, com troca de mensagens, tais como o RPC e RMI, suportado por diversos frameworks.
  25. 25. Acoplamento Fraco• "os objetos que interagem em um sistema distribuído precisa ser tratado de maneiras que são intrinsecamente diferentes dos objetos que interagem em um único espaço de endereço" [Waldo]. Waldo, J., Wyant, G., Wollrath, A., and Kendall, S., A Note on Distributed Computing, Technical Report SMLI TR-94-29, Sun Microsystems Laboratories, November 1994, http://citeseer.nj.nec.com/waldo94note.html
  26. 26. Solução de integração comAcoplamento fraco• Devemos ter a capacidade de mover dados de um sistema para outro, sem perceber as diferenças no formato de dados, encaminhar os dados para os sistemas necessários e monitorizar o desempenho da solução.
  27. 27. Solução de integração comAcoplamento fraco
  28. 28. Solução de integração comAcoplamento fraco• As soluções de integração pode rapidamente tornar-se complexas, pois lidam com múltiplas aplicações, formatos de dados, canais de roteamento e de transformação. Todos esses elementos podem ser distribuídos em várias plataformas operacionais e podem estar dispersas geograficamente. Para se ter alguma idéia do que está acontecendo dentro do sistema, precisamos de uma função de gerenciamento de sistemas. Este subsistema controla o fluxo de dados, garante que todos os aplicativos e componentes disponíveis e as condições de relatórios de erros em um local centralizado.
  29. 29. Estilos de integração (cap2)• Integração de Aplicação é a tarefa de fazer aplicações separadas trabalhar juntos para produzir um conjunto unificado de funcionalidades.• Todas as empresas por menor que sejam na atualidade necessitam trabalhar com algum método que integre seus sistemas aos de outras empresas, fornecedores ou governo.
  30. 30. Critérios de Integração• Acoplamento de aplicação - Mesmo aplicações integradas devem minimizar suas dependências entre si de modo que cada uma possa evoluir sem causar problemas para a outra.• Simplicidade na Integração - Ao integrar aplicações em uma empresa, os desenvolvedores devem se esforçar para minimizar a quantidade de código de integração necessário.
  31. 31. Critérios de Integração• Tecnologia de integração - técnicas de integração diferentes requerem softwares especializados e hardware novo ou mais robusto.• Formato de dados - As aplicações integradas devem padronizar o formato dos dados para intercambio, ou deve ter uma tradutor intermediário para unificar aplicações que insistem em diferentes formatos de dados.
  32. 32. Critérios de Integração• Atualização dos dados - Integração deve minimizar o tempo na atualização de dados entre as aplicações.• Dados ou serviços - As aplicações integradas não podem simplesmente compartilhar dados, eles devem compartilhar a funcionalidade de tal forma que cada aplicativo possa chamar a funcionalidade nos outros.
  33. 33. Critérios de Integração• Assincronia - processamento no computador é geralmente síncrono, de modo que um procedimento espera enquanto a sua subprocedimento executa. Um dado deve estar disponível quando o procedimento necessitar utilizá-lo. Como ocorre na memória cache “dirt data”.
  34. 34. Opções de IntegraçãoTransferência de arquivos - Faça com que cada aplicação produzaarquivos de dados compartilhados para outras.Banco de dados Compartilhado – As aplicações armazenam osdados que deseja compartilhar em um banco de dados comum.Invocação de Procedure Remoto – Cada aplicação expõe algunsdos seus procedimentos, para que possam ser invocadosremotamente, através de trocar de mensagens.
  35. 35. Opções de IntegraçãoTransferência de arquivos - Faça com que cada aplicação produzaarquivos de dados compartilhados para outras.Banco de dados Compartilhado – As aplicações armazenam os dadosque deseja compartilhar em um banco de dados comum.Invocação de Procedure Remoto – Cada aplicação expõe alguns dosseus procedimentos, para que possam ser invocados remotamente.Mensagens – Cada aplicação se conectar a um sistema de mensagenscomum, e trocar dados e chama procedimentos usando mensagens.
  36. 36. Integração por Arquivo
  37. 37. Banco de dados Compartilhado
  38. 38. Procedimento Remoto
  39. 39. Procedimento Remoto
  40. 40. Conclusão• Mensagens tem o benefício de permitir que as aplicações sejam muito mais dissociados umas das outras do que em Invocação de procedimento remoto e transferência de arquivos.• Como podemos ver usar as mensagens para integração de sistemas, há uma série de novas questões a considerar e práticas que podemos empregar.
  41. 41. ExercícioVocê foi contratado por uma empresa desenvolvedora de softwareque comercializa um sistema de controle e armazena os dados emum banco de dados em Postgres, como o MER apresentada nafigura 1, e deverá apresentar uma solução para migrar dados de umbanco desconhecido para esse banco, sabendo-se que o bancodesconhecido consegue exportar os dados para xml ou txt (csv). Suaempresa terá de migrar os dados de um sistema antigo, como partedo contrato de adesão do sistema. Dê sua solução, imaginando essasituação, segundo as características da ISO 1471/2000, onde aarquitetura deve considerar três aspectos: descrição, objetivos efundamentação.
  42. 42. Figura 1 – Modelo Cadastro de Clientes
  43. 43. MoodleImplemente sua própria solução de migração de dados, considerea necessidade de se manter funcional os dois sistemas durante oprocesso de migração. Enviar o trabalho compactado, com umdescritivo de Arquitetura do seu sistema e esquema deintegração. Entrega 20/04/2012.

×