Arquitetura de Software | Conceitos
- Arquitetura de Software | Conceitos
Arquitetura consiste na estrutura combinada com as características da arquitetura (atributos), as decisões da arquitetura e os princípios do desing - Livro: Fundamentos da Arquitetura de Software
Atributos

Decisões de Arquitetura (Estrutura)
O que são São decisões estruturais difíceis de mudar e que definem como o sistema é organizado em alto nível.
O que a figura mostra
-
Arquitetura em camadas (Apresentação, Comercial, Serviços, Persistência, Banco).
-
Regras de acesso entre camadas:
- Apenas as camadas Comercial e Serviços podem acessar a Persistência.
- Camadas superiores não acessam diretamente o banco.
-
Cada camada tem responsabilidade clara.
-
Algumas camadas são fechadas (não podem ser acessadas diretamente).
Por que isso importa
- Reduz acoplamento
- Facilita manutenção
- Evita “atalhos arquiteturais” que quebram o sistema com o tempo
👉 Decisão estrutural = contrato da arquitetura
Princípios de Design
O que são Diretrizes que orientam como implementar a arquitetura no dia a dia.
O que a figura mostra
-
Separação por serviços independentes (ex: Pedido, Pagamento, Inventário).
-
Cada serviço:
- Tem seu próprio banco de dados
- Contém Modelo + Regras de negócio
-
Comunicação entre serviços via mensageria assíncrona sempre que possível.
-
API como ponto de entrada único.
Por que isso importa
- Melhor desempenho
- Menor acoplamento entre serviços
- Maior escalabilidade
- Sistemas mais resilientes a falhas
👉 Princípio de design = como construir respeitando a arquitetura
Características da Arquitetura (Atributos de Qualidade)
O que são São os requisitos não funcionais que o sistema deve suportar.
O que a figura lista
- Disponibilidade
- Confiabilidade
- Testabilidade
- Escalabilidade
- Segurança
- Agilidade
- Desempenho
- Tolerância a falhas
- Elasticidade
- Recuperabilidade
- Implementabilidade
- Capacidade de aprendizagem
Por que isso importa
-
Toda decisão arquitetural prioriza alguns atributos e sacrifica outros
-
Exemplo:
- Mensageria → mais escalabilidade, menos simplicidade
- Camadas rígidas → mais manutenção, menos velocidade inicial
👉 Arquitetura é trade-off de atributos de qualidade
Resumo em uma frase por item
- Decisões de arquitetura: definem a estrutura e os limites do sistema
- Princípios de design: orientam como implementar corretamente essa estrutura
- Características da arquitetura: são os atributos de qualidade que o sistema precisa atender