Partilhar via


Explorar padrões de integração

Com base na sua análise, planeie a integração e identifique o melhor padrão para as suas necessidades. A lista seguinte de padrões de integração não é exaustiva. Pode descobrir que uma combinação destes padrões se adequa melhor ao seu cenário.

Cada padrão aborda cenários empresariais específicos e restrições técnicas:

  • Padrão de gatilho instantâneo: Este padrão reflete a forma como os utilizadores interagem com os sistemas. Uma ação conduzida pelo utilizador desencadeia uma série pré-definida de ações.
  • Padrão orientado por eventos: Este padrão requer um gatilho automático, como uma resposta a eventos que acontecem num dado sistema.
  • Padrão de consolidação de dados: Este padrão é essencial para organizações com múltiplos sistemas de gestão que necessitam de uma visão completa dos seus dados em vários sistemas.
  • Padrão de arquitetura orientada a serviços: Este padrão envolve tipicamente múltiplos fluxos entre sistemas, permitindo integração modular e escalável em ambientes complexos.
  • Padrão de sincronização: Este padrão mantém os dados sincronizados entre diferentes bases de dados e responde aos requisitos de desempenho e regulamentares.

Padrão de disparo instantâneo

O padrão de gatilho instantâneo é orientado pelo utilizador e intuitivo. Inicia um fluxo de integração quando um utilizador executa uma ação, como pressionar um botão numa Power App. Este padrão é ideal para cenários onde os dados são necessários sob demanda e não de forma contínua.

Cenário de exemplo

Uma Power App permite aos gestores de produto rever o feedback dos clientes e criar planos de ação. Algumas especificações técnicas estão armazenadas no sistema de Gestão do Ciclo de Vida do Produto da Oracle. Em vez de copiar todo o conjunto de dados para o Dataverse, a aplicação inclui um botão para recolher dados quando necessário.

Razões para integrar, em vez de redirecionar os utilizadores, para a Oracle incluem:

  • Má experiência do utilizador
  • Preocupações de segurança
  • Custos de licenciamento

Dada a relação custo-benefício das integrações com Power Platform, qualquer uma destas razões pode justificar a implementação.

Desenho de escoamento

Use um fluxo instantâneo de nuvem ativado por um toque de botão na aplicação.

Este diagrama ilustra o padrão de disparo instantâneo, onde uma ação iniciada pelo utilizador recupera dados de um sistema externo e escreve-os no Dataverse:

Diagrama que mostra um fluxo acionado por botão com passos para recuperar dados da Oracle, devolvê-los à aplicação e escrevê-los no Dataverse.

O fluxo inclui estes passos:

  1. Solicite registos à Oracle usando parâmetros (como o ID do Produto) fornecidos pela aplicação.
  2. Devolva os registos do Oracle para a aplicação.
  3. Escreve registos no Dataverse.

Estes dados são depois refletidos na interface do Power Apps.

Considerações:

  • Os modelos de dados entre Oracle e Dataverse podem diferir, exigindo passos de transformação.
  • Os gatilhos instantâneos não são verdadeiramente instantâneos. O tempo de execução depende da disponibilidade do sistema e da complexidade da transformação.
  • Adicione indicadores visuais na aplicação para mostrar o progresso e permitir o cancelamento se a operação demorar demasiado.
  • Em grandes organizações, pedidos simultâneos de muitos utilizadores podem sobrecarregar o sistema.
  • As integrações podem falhar por várias razões. Assegure que a aplicação fornece feedback aos utilizadores durante a execução. Evite situações em que os utilizadores selecionam um botão e não recebem resposta, o que leva a uma má experiência do utilizador.

Padrão orientado por eventos

As arquiteturas orientadas por eventos (também conhecidas como disparo automático) respondem a alterações nos sistemas sem interação direta do utilizador. Por exemplo, os gatilhos podem ser configurados para responder a um registo criado no Dataverse, emails recebidos, ficheiros adicionados ao OneDrive e a qualquer número de outros eventos. Este padrão é intuitivo e escalável, tornando-o ideal para automatizar processos de negócio baseados em eventos do sistema.

Cenário de exemplo

Um departamento de atendimento ao cliente utiliza uma aplicação ligada ao Dataverse para trabalhar nos casos e fornecer atualizações automáticas aos clientes, sem necessidade de escrever emails manualmente. Só alterações específicas — como adicionar uma nota ou alterar o estado — devem ativar notificações.

Use um gatilho automático no Power Automate para responder a estes eventos. O fluxo escuta alterações nos registos do Dataverse e envia notificações quando as condições definidas são cumpridas.

Este diagrama mostra o padrão de disparo automático, onde as alterações no Dataverse iniciam automaticamente ações a jusante que atualizam os clientes com a informação relevante do caso:

Captura de ecrã da configuração do fluxo do Power Automate a mostrar as definições de gatilho para monitorizar alterações de registos do Dataverse.

Configuração do acionador

Configure o fluxo da seguinte forma:

  • Indique o Tipo de Alteração a monitorizar.
  • Defina as colunas a responder usando o parâmetro Select Columns .
  • Use o parâmetro Filter Rows para garantir que apenas as alterações de estado voltadas para o cliente ativem o fluxo, além de quaisquer outros requisitos de filtragem.

Evite implementar esta lógica no próprio fluxo usando uma ação If. Use parâmetros de gatilho para reduzir execuções desnecessárias e melhorar o desempenho.

Evite conflitos lógicos

Avalie a lógica do evento para evitar comportamentos não intencionais:

  • Evite ciclos em que um evento desencadeia uma ação que reativa o mesmo evento.
  • Evite que múltiplas atualizações causem notificações rápidas e repetidas.
  • Projete fluxos para lidar com casos de exceção e evitar execuções excessivas.

Considerações de volume e frequência

Compreenda o volume esperado de eventos desencadeados. Os serviços de notificação (email, SMS e outros) limitam o número de mensagens que pode enviar num determinado período de tempo.

  • Estima o número de eventos por dia ou mês.
  • Implemente mecanismos de limitação ou limitação de fluxo.
  • Prepare um plano de mitigação para picos inesperados na frequência de eventos.

Padrão de consolidação de dados

A consolidação de dados (também conhecida como gatilho programado) ajuda as organizações a unificar informações em múltiplos sistemas para apoiar processos de relatórios e operacionais. Embora a análise de dados frequentemente exija conjuntos de dados completos, os casos de uso operacionais focam-se apenas na recuperação dos dados necessários para completar tarefas empresariais.

Cenário de exemplo

Uma empresa utiliza três sistemas legados para gerir as funções principais do negócio: SAP para encomendas e contas a receber, Oracle para inventário de produtos e IBM para gestão de conteúdos relacionados com clientes. A organização encomendou uma nova aplicação Power Platform para usar IA e prever a próxima melhor ação para cada cliente com base em dados históricos. A aplicação precisa de recolher informações relevantes dos três sistemas e gerar um plano de ação de vendas para os gestores de vendas orientar o envolvimento.

Abordagem de integração

A integração não requer atualizações em tempo real nem gatilhos orientados a eventos. Em vez disso, utilize um processo agendado com base na frequência com que a equipa de vendas interage com os clientes.

Neste caso de uso, um gatilho agendado consolida os dados da seguinte forma:

  • Solicita apenas os dados necessários a cada sistema
  • Devolve os dados para um formato compatível com o Dataverse
  • Carrega os dados para o modelo de IA para análise

Este diagrama ilustra o padrão de consolidação de dados agendada, onde um processo recorrente recolhe informações de múltiplos sistemas e carrega o conjunto de dados combinado para o Dataverse:

Diagrama da integração de dados usando um processo programado para unificar informações de três sistemas legados para recomendações de vendas baseadas em IA.

Configuração do gatilho programado

Os gatilhos programados oferecem opções flexíveis de recorrência, desde uma vez por segundo até uma vez por ano. São previsíveis no tempo, mas podem tornar-se imprevisíveis em volume se o âmbito dos dados se expandir ou o crescimento exceder as expectativas.

  • Monitorize o tempo de execução do fluxo para evitar sobreposições ou atrasos
  • Implementar salvaguardas para evitar a degradação do desempenho
  • Use o Application Insights ou ferramentas semelhantes para garantir que o fluxo corre de forma consistente

Mitigação de riscos

Se um fluxo programado demorar mais do que o esperado, pode perturbar os processos de negócio. Por exemplo, um fluxo desenhado para correr a cada 10 minutos pode falhar se começar a demorar mais de 10 minutos a completar.

  • Monitorizar o tempo de execução e definir alertas para anomalias
  • Planeie escalabilidade à medida que o volume de dados aumenta
  • Garantir visibilidade da saúde do fluxo para evitar falhas despercebidas

Padrão de integração orientado a serviços

Grandes organizações frequentemente operam múltiplos sistemas entre departamentos. Estes sistemas evoluem para dependerem uns dos outros para completar processos empresariais. A camada de integração faz a ponte entre estes sistemas, permitindo que cada um desempenhe a sua função principal enquanto possibilita a comunicação entre sistemas.

Exemplo de cenário revisitado

Vamos continuar com o nosso cenário de exemplo em que a organização utiliza múltiplos sistemas para gerir diferentes partes do negócio. A SAP gere encomendas e contas a receber, a Oracle gere o inventário de produtos e a IBM armazena documentação financeira interna. A Dataverse gere aplicações para vendas, atendimento ao cliente e gestão de produto. O SharePoint suporta a colaboração interna e a gestão da base de conhecimento, enquanto as APIs Maersk automatizam processos logísticos.

Este diagrama ilustra o padrão orientado por eventos num panorama multi-sistema, onde atualizações em vários sistemas empresariais desencadeiam fluxos automáticos que coordenam dados e ações entre eles:

Diagrama que mostra a arquitetura de integração com múltiplos sistemas ligados através de gatilhos específicos para processos de negócio.

Cada sistema interage com os outros através de eventos agendados ou ações manuais do utilizador. Nenhum fluxo único serve todos os casos de uso. Em vez disso, a solução requer múltiplos fluxos adaptados a gatilhos e processos de negócio específicos.

Evitar fluxos monolíticos

Criar um fluxo grande para gerir todas as integrações não é prático. Apresenta desafios de desempenho, segurança e manutenção. Em vez disso:

  • Construir fluxos modulares para cada gatilho e processo
  • Otimizar fluxos para casos de uso específicos
  • Escale o ambiente de integração com componentes gerenciáveis

Otimizar processos entre sistemas

Procure oportunidades para consolidar a lógica quando apropriado. Por exemplo, se um documento no SharePoint tiver de ser enviado tanto para a SAP como para a Oracle durante o mesmo evento, pode sentir-se tentado a criar um único fluxo que leia o ficheiro uma vez e o escreva em ambos os sistemas. Primeiro, no entanto, considere se a lógica que está a criar é demasiado rígida. Num panorama vasto, as mudanças na forma como os processos de negócio funcionam entre sistemas acontecem tão frequentemente quanto as alterações nesses sistemas.

Evite a consolidação excessiva. Os processos empresariais e as configurações dos sistemas mudam frequentemente. Uma lógica rígida e centralizada reduz a flexibilidade e aumenta a sobrecarga de manutenção.

Fluxos de design que são:

  • Modular e sustentável
  • Escalável entre departamentos e sistemas
  • Resiliente a alterações na lógica de negócio e no comportamento do sistema

Este padrão resulta numa arquitetura orientada a serviços — por vezes chamada de forma humorística de "arquitetura spaghetti" — onde os sistemas estão interligados através de fluxos bem definidos e construídos para o propósito.

Padrão de sincronização de dados

Use a sincronização de dados quando sistemas idênticos armazenam dados em bases de dados separadas. Embora armazenar os mesmos dados duas vezes possa parecer ineficiente, este padrão suporta necessidades específicas do negócio, como desempenho e conformidade regulatória.

  • Desempenho: O acesso local a dados melhora a capacidade de resposta, especialmente em indústrias sensíveis à latência.
  • Conformidade: Os regulamentos legais podem exigir que os dados sejam armazenados dentro das fronteiras nacionais. As organizações frequentemente implementam instâncias locais com processos de sincronização para cumprir estes requisitos.

Cenário de exemplo

Uma empresa de dispositivos médicos opera em várias regiões da Europa, em cooperação com instituições médicas locais. As leis de cada região são claras quanto aos dados médicos — devem ser armazenados dentro das fronteiras dessa região. A informação sobre encomendas, produtos e envios pode ser armazenada transfronteiriça. Para responder aos requisitos regulatórios, a empresa criou uma instância da sua aplicação de gestão de clientes Power Platform e do Dataverse em cada região.

Para apoiar as operações de vendas, a empresa pretende sincronizar dados não sensíveis, como dados de contacto, encomendas e envios, em todas as instâncias. Os dados médicos estão excluídos da sincronização.

Abordagem de integração

Utilize um fluxo automático na cloud ativado por atualizações ao registo da conta. Configurar filtros para:

  • Monitorize apenas os campos permitidos
  • Impedir a sincronização de dados restritos

Esta abordagem resulta numa integração direcionada e orientada por eventos, que apoia a conformidade e a eficiência operacional.

Este diagrama ilustra o padrão de sincronização orientado por eventos, onde atualizações num ambiente Dataverse ativam automaticamente as atualizações correspondentes noutro:

Diagrama de uma integração orientada a eventos mostrando variações de volume e frequência com base em atualizações de conta com filtros aplicados.

Expectativas de tempo de resposta

Defina expectativas realistas para a velocidade de sincronização. O Power Automate é assíncrono e não garante desempenho em tempo real. Se os utilizadores empresariais esperarem disponibilidade imediata de dados, esclareça as limitações logo no início do processo de design.

  • Avaliar se o Power Automate satisfaz as necessidades de desempenho
  • Evite sobreengenharia para acesso em tempo real, a menos que seja justificado por requisitos empresariais

Muitos pedidos de acesso em tempo real carecem de um caso de negócio sólido. Dê prioridade à clareza, escalabilidade e manutenibilidade no design da integração.

Para além dos fluxos de nuvens

Ao selecionar uma ferramenta de integração, comece com o Power Automate como opção predefinida. Oferece uma relação custo-benefício incomparável tanto no desenvolvimento como na manutenção.

O Power Automate é a ferramenta de integração preferida para muitos cenários porque:

  • Proporciona desenvolvimento ágil com conectores low-code
  • Minimiza os custos de manutenção a longo prazo
  • Suporta uma vasta gama de gatilhos e sistemas
  • É facilmente dimensionável para a maioria dos cenários de negócios

Código personalizado, Azure Functions, Data Factory ou Service Bus podem dar-te mais controlo ou melhor desempenho, mas acrescentam complexidade e custo. Use estas opções apenas quando o Power Automate não satisfaça as suas necessidades empresariais ou técnicas.

Diagrama de um fluxo de trabalho de integração mostrando conectores Power Automate a recolher dados e Azure Functions a realizar cálculos.

Cenário de exemplo

Um serviço de banca online pretende qualificar clientes para empréstimos mais rapidamente. O processo de qualificação envolve cálculos complexos e recuperação de dados de múltiplos sistemas para chegar a uma pontuação final de risco. Após uma avaliação inicial, o serviço bancário considerou o fluxo na nuvem inadequado dada a complexidade dos cálculos.

No entanto, neste caso, uma abordagem híbrida é a resposta:

  • Power Automate para processar a recolha de dados com conectores incorporados
  • Cálculos complexos encapsulados em código personalizado a correr como uma Função Azure, que pode ser escalada independentemente ou num conector personalizado

Esta abordagem híbrida equilibra desempenho, escalabilidade e custo.

Estratégia de integração

Não escolhas as ferramentas isoladamente. Em vez disso, combine as suas forças. Por exemplo:

  • Use o Power Automate para orquestração e conectividade
  • Use o Azure Functions para tarefas intensivas em computação
  • Use conectores personalizados para estender a funcionalidade quando necessário

Cada decisão de integração deve considerar o custo total de propriedade. Soluções personalizadas podem parecer poderosas, mas muitas vezes exigem um orçamento maior para desenvolvimento, licenciamento e suporte. Justificar custos mais elevados com um valor claro para o negócio.