Definindo e documentando uma arquitetura de software distribuída

Como definir, avaliar requisitos, decompor e documentar uma arquitetura de software com base em um problema?

Antes de começar, vale explicar que definição de framework ou definição de tecnologia não significa definição de arquitetura. Muito que se vê no mercado profissionais escolhendo de forma arbitrária frameworks ou linguagens enquanto dizem estar "definindo a arquitetura". Bom, na prática a arquitetura, mesmo que de forma arbitrária, está sendo definida, mas não significa que está correto.





Diagrama de implantação: