Partilhar via


Definir o espaço do problema

À medida que avança para a definição da sua plataforma de programador interna, é fundamental definir primeiro a plataforma mais fina e viável (TVP ). Esta é uma variação da ideia de um produto mínimo viável (MVP) na gestão de produtos clássicos.

Em Planear e priorizar, pode saber mais sobre como definir (ou melhorar) a TVP. Mas antes de chegarmos lá, este diagrama pode ajudá-lo a orientar o seu pensamento sobre como pode evoluir ao longo do tempo. Tenha em atenção que o principal problema da sua organização pode fazer com que se desvie do que é descrito aqui devido aos seus investimentos ou necessidades organizacionais existentes. De forma crítica, não precisa de avançar para a fase seguinte, a menos que a sua organização precise dela.

Diagrama para mostrar como a engenharia da plataforma pode evoluir ao longo do tempo.

Se estiver a começar do zero, isto representa uma progressão comum. Nas fases iniciais, concentre-se na deteção das capacidades necessárias, na análise do fit-gap dos produtos encapsulados em redução e na criação de ferramentas de número mínimo ou capacidades de plataforma. Em seguida, à medida que dimensiona, provavelmente começará a concentrar-se na reutilização e a orientar as pessoas por caminhos abertos predefinidos com recursos reutilizáveis. Por fim, avança para um modelo de "loja digital" semelhante ao consumidor para facilitar a criação e manutenção de aplicações. Deve seguir uma mentalidade de produto ao longo de todo, pelo que não recomendamos que avance para o fim e o seu percurso específico varie. Estas fases finais assemelham-se mais a "produto" embrulhado em encolhimento no sentido tradicional, mas este é um destino, não um ponto de partida.

Dada a dimensão deste tópico, recomendamos que desagregar a forma como fala sobre engenharia de plataformas em quatro áreas de tópicos. Categorizar o seu pensamento desta forma pode simplificar a forma como estabelece e comunica um plano para os seus investimentos ao longo do tempo. Estas áreas são:

  • Sistemas de engenharia: uma combinação organizada de conjuntos de aplicações de DevOps, como o GitHub e o Azure DevOps e outras ferramentas e serviços de programação. Além de ferramentas e serviços críticos do DevOps, como CI/CD ou gestão de pacotes, esta área também inclui capacidades utilizadas diretamente durante o processo de codificação, como ambientes de codificação baseados na cloud, scanners de código e litros, e assistentes de IA como GitHub Copilot.
  • Plataforma de aplicações: uma seleção organizada de serviços (como IaaS, PaaS e observabilidade) que visam cada "pilha de aplicações" (classe de aplicação, modelo de aplicação, idiomas) que uma organização quer utilizar para fornecer valor comercial. Isto inclui uma combinação de serviços específicos da pilha de aplicações, juntamente com serviços comuns utilizados em todo o processo. Um exemplo de uma plataforma de aplicações pode incluir o Azure Container Apps, o Cosmos DB para armazenamento, o Azure Key Vault para segredos, para controlo de acesso baseado em identidades e funções, Azure Policy para conformidade e auditoria, observabilidade através do Grafana e uma topologia de rede relacionada.
  • Modelos de aplicação: um conjunto de modelos de início rápido bem definidos, criados pela organização que encapsulam o início direito e mantêm a orientação certa para uma determinada plataforma de aplicações, linguagem e conjunto de sistemas de engenharia. Podem referenciar outros modelos centralizados e fornecer código inicial, referências de API e SDK, pipelines ci/CD, configuração de ferramentas e muito mais.
  • Capacidades self-service do programador: esta é a cola para o seu esforço de engenharia de plataforma. É uma combinação de APIs, orquestradores, um catálogo, modelos e experiências de utilizador concebidas para reduzir as tarefas dos programadores e permitir que as equipas de desenvolvimento se auto-sirvam e sejam mais autónomas, ao mesmo tempo que cumprem as seleções e orientações/governação das três áreas anteriores.

Gráfico das principais áreas da engenharia da plataforma.