Temos uma solução moderadamente complexa para a qual precisamos construir um ambiente de produção.
Existem cerca de uma dúzia de componentes (e aqui estou usando uma definição de "componente" que significa "pode falhar independentemente de outros componentes" - por exemplo, um servidor Apache, um aplicativo da Web Weblogic, um servidor ftp, um servidor ejabberd , etc). Há uma série de aplicativos web de weblogic - e uma coisa que precisamos decidir é quantos contêineres de weblogic executam esses aplicativos da web.
O sistema precisa estar altamente disponível e as comunicações dentro e fora do sistema são normalmente protegidas por SSL
Nossa equipe do datacenter lidará com coisas como design de VLAN, racking, especificação de servidor e criação.
Portanto, os tipos de decisões que ainda precisamos tomar são:
Como mapear componentes para servidores físicos (e contêineres weblogic)
Identifique todos os caminhos de comunicação, assegure-se de que todos sejam resilientes ou que exista um caminho de comunicação "upstream" resiliente, e o failover depende de todos os pontos únicos de falha "downstream".
Decida onde encerrar o SSL (em balanceadores de carga ou em servidores Apache, por exemplo).
Minha pergunta não é realmente sobre como tomar as decisões, mas se há algum padrão para documentar (especialmente em diagramas) as questões de design e as decisões de design. Parece estranho, por exemplo, que o Visio não tenha um modelo para algo como isso - ele possui modelos para mais layout físico e para diagramas de arquitetura mais lógicos / de software.
Então, agora eu estou usando um diagrama básico do Visio para representar cada componente, os comícios entre eles com planos para aumentar isso com nomes de host, portas, se cada link de comunicação é resiliente, etc.
Tudo isso parece algo que deve ter sido feito muitas vezes antes. Existem padrões para documentar isso?