Publicado a

Começar sempre igual

Quando cada aplicação nasce com a mesma estrutura, qualquer pessoa da equipa sabe onde está cada coisa em qualquer repositório. O modelo de aplicação é a peça mais modesta de uma plataforma e uma das que mais tempo poupa.

Linha de serviço Engenharia de Plataforma

Dez aplicações, dez formas

Abra os repositórios de dez aplicações de uma mesma organização e é provável encontrar dez formas diferentes de fazer o mesmo: a documentação em lugares diferentes (ou em nenhum), scripts de implementação diferentes, nomes de pastas inventados por cada pessoa. Cada vez que alguém muda de projeto perde dias a aprender onde está tudo.

Um modelo, não um guia

A solução não é um guia de estilo que ninguém lê. É um modelo executável: um comando que cria a aplicação nova com tudo o que precisa desde o primeiro minuto.

Nascer com tudo no seu lugarEstrutura de uma aplicação criada a partir do modelo, anotada.PLATAFORMA · MODELONascer com tudo no seu lugara-minha-aplicacao/STATUS.yamlfase, portas, passo seguinteBITACORA.mdo que aconteceu, sessão a sessãodocs/SPEC.mdo que se constrói e o que nãodecisiones/registos de decisãoui/interfaceapi/serviço (ativa-se se for preciso)deploy/mesmo mecanismo que o restoconfig/dev · uat · promesma forma, valores diferentesN100F · n100f.com

O que traz um modelo bem pensado:

  • Estado e diário de bordo da aplicação desde o primeiro dia (em que fase está, o que foi decidido).
  • Pasta de documentação com a especificação e os registos de decisão.
  • Estrutura de código padrão para cada parte (interface, serviço, dados).
  • Implementação já preparada, com o mesmo mecanismo que as restantes aplicações.
  • Configuração por ambiente, separada do código.

Regras para que funcione

  1. O modelo também é um produto. Mantém-se, versiona-se e melhora-se com o que as equipas aprendem.
  2. Criar uma aplicação não deve pisar nada existente. Se o registo já tem dados dessa aplicação, o modelo respeita-os em vez de os sobrescrever.
  3. O opcional ativa-se, não se apaga. Se uma aplicação não precisa de base de dados, o modelo não a implementa, mas a estrutura fica pronta para o caso de amanhã precisar.
  4. As aplicações antigas incorporam-se com o mesmo esqueleto, mesmo que a pouco e pouco.

Uma aplicação que nasce do modelo já sabe onde vai a sua documentação. O seguinte é que a organização saiba onde vive a aplicação. Isso resolve-o o registo.


Como o aplicamos: Engenharia de Plataforma.

Se o seu custo cloud cresce sem que ninguém saiba porquê, ou a sua arquitetura depende de quem a montou, falemos.

Falemos