O desenvolvimento de software no nível arquitetural compreende questões estruturais, como:
- Seleção de alternativas de projeto;
- Escalabilidade e desempenho;
- Organização e estrutura geral de controle;
- Protocolos de comunicação, sincronização;
- Atribuição de funcionalidade a componentes de projeto.
- Notar que estruturas usadas em outros sistemas podem ser reutilizadas.
- Arquitetura de software server para que os engenheiros possam tomar decisões sobre alternativas do projeto.
- Uma descrição arquitetural do sistema é essencial a fim de analisar e descrever propriedades de um sistema complexo.
- Padronização de notações e esquemas.
Arquitetura de software é o estudo da organização global dos sistemas de software bem como do relacionamento entre subsistemas e componentes. Ela vem evoluido ao longo do tempo, buscando novas técnicas, ferramentas e notações.