Fundamentos do arquiteto de soluções
Cada carga de trabalho passa por um processo de design de componente e topologia. Esse processo é mais intenso no início da carga de trabalho, que inclui o design para os requisitos iniciais e o sucesso a longo prazo da carga de trabalho. A arquitetura também é projetada quando a carga de trabalho muda ao longo do tempo e a organização adiciona, altera ou remove funcionalidades.
O design de componentes e topologias é a principal função de um arquiteto. Os arquitetos que se concentram em soluções híbridas e baseadas em nuvem geralmente são chamados de arquitetos de soluções em nuvem. Em algumas organizações, os arquitetos de soluções em nuvem existem em uma capacidade centralizada dentro de um grupo de arquitetura corporativa. Eles também podem se concentrar em uma carga de trabalho específica.
Uma função dedicada pode desempenhar a função de um arquiteto. Em alguns casos, especialistas técnicos confiáveis (como um líder de engenharia de carga de trabalho) podem desempenhar a função de um arquiteto. Ou uma organização pode distribuir a função entre um pequeno grupo de engenheiros seniores associados à carga de trabalho.
Os arquitetos geralmente têm experiência em funções além do design do sistema. Eles podem ter:
- Foram desenvolvedores e membros da equipe de operações.
- Trabalhou com equipes de suporte ao cliente.
- Desenvolveu uma compreensão de como um sistema é testado para garantia de qualidade e aceitação do usuário.
- Passou por simulações de recuperação de desastres ou respostas a incidentes.
- Foi exposto a mudanças incrementais e funcionais grandes nas cargas de trabalho.
- Interpretou especificações e critérios de aceitação do usuário.
Embora a lista anterior não seja exaustiva, essas perspectivas são um aspecto importante do que um arquiteto traz para as tarefas de projeto. O Azure Well-Architected Framework pressupõe que essas práticas estejam em vigor para o uso mais eficaz das diretrizes.
As seções a seguir destacam os princípios orientadores que os arquitetos devem seguir para serem eficazes em sua função.
Tenha uma estrutura de tomada de decisão
Um aspecto fundamental do design é usar um processo consistente para tomar decisões. Um arquiteto deve abordar o projeto inicial e incremental com rigor.
Identifique as decisões esperadas. Use experiências aprendidas para ajudar na identificação de decisões. Registre todas as decisões que você planeja tomar.
Tome decisões informadas. Considere limitações, restrições, compensações, esforço, reversibilidade e risco. Inclua evidências de suporte de provas de conceito, juntamente com documentação e orientação de tecnologia.
Documente as decisões em um registro de decisão de arquitetura (ADR). Documente a justificativa junto com cada decisão.
Acompanhamento da implementação. Comunique e implemente todas as decisões. Aprenda com a implementação para ajudar a orientar decisões futuras. Procure áreas em que a falha em identificar decisões introduziu riscos.
Conheça os padrões de design de nuvem
Os padrões de design de nuvem são um bloco de construção fundamental da arquitetura. A arquitetura baseada em nuvem e o design de aplicativos geralmente são um exercício de reconhecimento de padrões.
Avalie os requisitos funcionais e não funcionais de uma carga de trabalho para reconhecer padrões. Procure oportunidades para mapear seu design para casos de uso por meio de padrões padronizados.
Tenha visão de futuro
Projetar para atender aos requisitos atuais é uma obrigação, mas é importante que um arquiteto preveja a evolução da carga de trabalho. Incorporar mudanças em um sistema implementado é mais caro do que alterar o design antes da implementação.
Para projetar um sistema que durará até o fim da vida útil planejada, você deve projetar a carga de trabalho com a flexibilidade arquitetônica em mente. Evite penhascos de design quando puder identificá-los.
Modelo de crescimento. Preveja como o uso da carga de trabalho aumentará ou diminuirá ao longo do tempo.
Alterações de conformidade. Tome medidas proativas se você espera que a carga de trabalho esteja sob requisitos de conformidade no futuro. Essa abordagem pode reduzir o retrabalho quando seguir a conformidade se torna um requisito.
Expansão regional. Considere a expansão futura da carga de trabalho em várias regiões. Um design limitado a uma única região precisará ser fortemente refatorado para implantação em várias regiões, e isso pode ser uma alteração cara. Há ainda mais complexidade se o design da carga de trabalho precisar acomodar várias regiões geográficas com diferentes requisitos de conformidade. Certifique-se de que seu design leve em consideração qualquer previsão razoável sobre a expansão regional.
Roteiros de produtos. Em seu design, não inclua componentes que estão no caminho para a substituição. Da mesma forma, tenha cuidado ao incluir recursos em seu design que estão atualmente em um estado de visualização. Eles podem ser lançados, mas também podem ser cancelados. Estar à frente da curva usando recursos de visualização pode ser altamente vantajoso. Logo após o lançamento do recurso, a carga de trabalho é preparada para ir para a produção. Mas inclua recursos de visualização em seu design somente depois de fazer uma análise de risco cuidadosa. Envie apenas recursos que tenham um perfil de risco tolerado.
Para obter mais informações sobre padrões de design de nuvem, consulte:
- Padrões de design de nuvem que favorecem a Confiabilidade
- Padrões de design de nuvem que dão suporte à segurança
- Padrões de design de nuvem que dão suporte à otimização de custos
- Padrões de projeto de nuvem com suporte ao cliente à Excelência Operacional
- Padrões de design de nuvem que oferecem suporte à eficiência do desempenho
Design para capacidade de suporte
Projete cargas de trabalho com três perspectivas principais de suporte:
Suporte ao provedor de nuvem. A carga de trabalho deve operar dentro da configuração com suporte do seu provedor de nuvem para evitar interrupções quando você estiver engajando os canais de suporte da plataforma.
Visibilidade operacional. O design deve fornecer visibilidade de execução para a equipe de operações de carga de trabalho para evitar confusão durante a resposta a incidentes.
Recursos de suporte ao cliente. O design deve atender às necessidades do usuário, mas também facilitar as funções de suporte ao cliente. Um design que dificulta a capacidade da equipe de suporte de investigar ou ajudar os clientes é inadequado.
Mantenha e aprimore suas habilidades
A experiência de um arquiteto geralmente está enraizada na experiência prática. É importante investir na expansão de seu conjunto de habilidades para acompanhar o ecossistema de nuvem em evolução.
Formação educacional. Busque oportunidades de treinamento e certificação que os provedores de tecnologia oferecem para arquitetos.
Participação da comunidade. Interaja com colegas por meio de comunidades de arquitetura online e locais.
Exercícios exploratórios. Participe de hackathons patrocinados pela organização ou eventos semelhantes para desenvolver habilidades em áreas desconhecidas.
Colabore para o sucesso
Um arquiteto deve aproveitar a experiência do provedor de nuvem ou parceiro de implementação. A maioria dos provedores deseja que sua carga de trabalho seja bem-sucedida em sua plataforma e geralmente fornece serviços como sessões de revisão de design de arquitetura ou sessões de consultoria com seus arquitetos de soluções em nuvem. Busque oportunidades de revisão e assistência em seus relacionamentos com fornecedores.
Seja metódico em sua abordagem de design
As estruturas de arquitetura dão suporte a um arquiteto oferecendo perspectivas de carga de trabalho e abordagens metodológicas. O Well-Architected Framework fornece um ponto de vista abrangente da carga de trabalho. Os arquitetos podem combinar o Well-Architected Framework com outras estruturas de arquitetura, como o TOGAF (Open Group Architecture Framework).
Use os princípios, listas de verificação, avaliações e materiais de referência em estruturas de arquitetura para estabelecer um processo que se adapte à carga de trabalho. Combine estruturas com técnicas pessoais, como mapas mentais.
Arquitetura é sobre comunicação tanto quanto sobre o produto final. Certifique-se de otimizar a tomada de decisão intencional, o reconhecimento da compensação e a comunicação clara em seus processos estabelecidos.