Pilares de uma excelente arquitetura

Concluído

A nuvem mudou a forma como os aplicativos de negócios para organizações são projetados e implementados. Como resultado, as arquiteturas de soluções podem ser extraídas de um ou mais serviços SaaS que funcionam em conjunto para formar uma solução completa. Para resolver problemas comerciais do cliente, os arquitetos de soluções devem estar familiarizados com os seguintes serviços para criar sua solução geral:

  • Dynamics 365

  • Microsoft 365

  • AppSource

  • Estender soluções com o Microsoft Power Platform

  • Microsoft Azure (usado para preencher as lacunas restantes)

Desenvolver uma ótima solução de aplicativo de negócios

Embora não haja um blueprint universal para ilustrar a aparência de uma ótima arquitetura de solução de aplicativo de negócios, certos conceitos se aplicam, independentemente dos desafios exclusivos do cliente que você está solucionando. Embora as seções a seguir não forneçam uma lista completa, concentrar-se nesses conceitos ajudará você a criar soluções gerais melhores.

Segurança

Os dados são um dos ativos mais valiosos de uma organização, e garantir uso e acesso adequados a esses dados é essencial. No pilar segurança, você se concentrará em proteger o acesso à sua arquitetura por meio de autenticação e em proteger os aplicativos e os dados contra vulnerabilidades da rede. Esse processo inclui garantir que você está trabalhando com as equipes apropriadas para habilitar recursos como as políticas de Acesso Condicional e Prevenção Contra Perda de Dados do Azure. Além disso, você confirmará o uso apropriado da sua solução de segredos, certificados e outras técnicas para garantir que o acesso aos dados e serviços não caia em mãos erradas.

Você precisa pensar na segurança em todo o ciclo de vida do aplicativo, do design e implementação até a implantação e as operações.

Os clientes confiam seus dados à sua organização. Você deve garantir que somente os usuários certos tenham acesso a eles. Além do controle de perímetro por meio da autenticação, é preciso implementar um modelo de segurança que imponha o acesso aos dados que os usuários têm permissão para usar. Você deve garantir que as medidas de segurança estabelecidas não sobrecarreguem indevidamente os seus arquitetos e evitem que a equipe faça seu trabalho, tornando o sistema insustentável.

Capacitar os usuários finais

É fundamental para qualquer arquitetura de solução centrada no Microsoft Power Platform considerar como capacitar toda a organização a inovar e criar as extensões necessárias para garantir a produtividade. Em vez de pensar em como bloquear uma arquitetura de solução para evitar que usuários talentosos criarem suas próprias ferramentas, pense em como você pode incentivar a prática e estabelecer limites como parte da sua arquitetura para evitar que as ferramentas causem problemas. Em geral, essa abordagem pode incluir fornecer conectores voltados para o usuário ou componentes reutilizáveis do Power Apps que as pessoas podem usar para criar rapidamente suas próprias ferramentas para ajudá-los em sua produtividade diária. Modelos, aplicativos iniciais e até mesmo ajudar a estabelecer um centro de excelência usando o kit de início fornecido pela Microsoft podem ser muito úteis para ajudar a promover a capacitação dos usuários.

Confiança e privacidade

Os requisitos de conformidade podem variar muito de setor para o setor e entre localizações geográficas. As arquiteturas excepcionais de solução garantem que as soluções atendam às suas necessidades. A Microsoft fornece ferramentas e recursos para ajudar os clientes a implementar soluções em conformidade com as normas, mas os arquitetos de soluções devem adotar medidas para garantir que as arquiteturas estabelecidas implementem os aspectos necessários. Essa verificação inclui garantir que as solicitações da regulamentação de privacidade possam ser administradas pelas organizações. A Microsoft publica uma central de confiabilidade com a qual os arquitetos de soluções devem estar familiarizados. A central de confiabilidade ajudará os arquitetos de soluções a localizarem os certificados e os recursos de cada produto da Microsoft que eles usam.

Capacidade de manutenção da solução geral

Os arquitetos de soluções devem se concentrar em resolver desafios usando os recursos de personalização da plataforma e dos aplicativos com código personalizado que é mais difícil e caro de manter. O Microsoft Power Platform é atualizado regularmente, e os arquitetos devem confirmar que apenas as personalizações com suporte são usadas para garantir que as atualizações não corrompam suas soluções. Além disso, o arquiteto de soluções deve garantir que a arquitetura e as implementações técnicas sejam documentadas e comentadas para que a manutenção futura seja mais fácil. Os arquitetos de soluções devem se esforçar para minimizar a dívida técnica que pode exigir uma limpeza futura.

Disponibilidade e capacidade de recuperação

O pior medo de um arquiteto é a solução falhar sem nenhuma maneira de recuperá-la. Um ambiente de nuvem bem-sucedido é desenvolvido de maneira que preveja a falha em todos os níveis. Parte da prevenção dessas falhas é desenvolver um sistema que possa se recuperar da falha dentro do tempo exigido pelos participantes e clientes. Os arquitetos de soluções devem estar familiarizados com cada um dos aplicativos incluídos em suas soluções e seus recursos de recuperação. As integrações além dos limites do sistema devem receber atenção extra para garantir que um componente não cause uma falha desnecessariamente. Os arquitetos de soluções devem recomendar soluções de monitoramento e fornecer ferramentas proativas para permitir a medição e a resolução de problemas.

Desempenho e escalabilidade

Para que uma arquitetura tenha um bom desempenho e seja escalonável, ela deve correlacionar adequadamente a capacidade dos recursos com a demanda. Normalmente, as arquiteturas de nuvem fazem isso dimensionando aplicativos de maneira dinâmica com base na atividade do aplicativo. O arquiteto de soluções deve ajudar a equipe de operações a identificar a capacidade necessária dos componentes que compõem a arquitetura da solução. O arquiteto é responsável por incluir os componentes que atendem aos requisitos do usuário para o tempo de resposta das partes críticas do sistema.

Diagrama do desempenho e da escalabilidade com capacidade, demanda, uso eficiente e uso ineficiente provisionados.

Eficiência e operações

Você vai querer desenvolver o ambiente de nuvem, de modo que ele seja econômico em operação e desenvolvimento. A ineficiência e o desperdício nos gastos com a nuvem devem ser identificados a fim de garantir que o dinheiro esteja sendo investido nas áreas em que possamos tirar o máximo proveito. Você precisa ter uma boa arquitetura de monitoramento em vigor, de modo que possa detectar falhas e problemas antes que eles ocorram ou, no mínimo, antes que os clientes percebam. Esse processo pode ser um desafio para o arquiteto de soluções quando os dados brutos podem existir em um ou mais serviços individuais. Para ter certa visibilidade de como o aplicativo está usando os recursos disponíveis, você precisa ter uma estrutura robusta de monitoramento.

Diagrama de eficiência e operações com qualidade, velocidade, eficiência e custo.

Responsabilidade compartilhada

A migração para a nuvem introduz um modelo de responsabilidade compartilhada. Nesse modelo, o provedor de nuvem gerenciará determinados aspectos do aplicativo, deixando você com a responsabilidade restante. Em um ambiente local, você é responsável por tudo. Essa responsabilidade compartilhada desempenhará uma função importante em suas decisões referentes à arquitetura, pois elas podem ter implicações de custo, funcionalidades operacionais, segurança e funcionalidades técnicas do aplicativo. Ao transferir essas responsabilidades para o provedor, você pode se concentrar em agregar valor aos negócios e se afastar de atividades que não são uma função empresarial básica.

Escolhas de design

Em uma arquitetura ideal, você criaria o ambiente mais seguro, de mais alto desempenho, mais altamente disponível e o mais eficiente possível. No entanto, assim como tudo na vida, há desvantagens. Criar um ambiente com o maior nível de todos esses pilares envolve custo. Esse custo pode incidir no dinheiro em si, no tempo de entrega ou na agilidade operacional. Cada organização terá diferentes prioridades que afetarão as escolhas de design que são feitas em cada pilar. Ao projetar sua arquitetura, você precisará determinar quais desvantagens são aceitáveis e quais não são.

Ao criar uma arquitetura de solução de aplicativo de negócios, você deve considerar vários fatores. Você quer que sua arquitetura seja segura, escalonável, disponível e possa ser recuperada. Para alcançar essa meta, você precisa tomar decisões com base no custo, nas prioridades da organização e no risco.