O que é Arquitetura de Software?

Arquitetura de Software, uma possível definição
Assim como outros contextos fundamentados na tecnologia, a Arquitetura de Software está em constante evolução. As práticas e metodologias que regem o desenvolvimento de software mudam rapidamente – em dias, semanas e meses. Com o advento das IAs, estamos vivenciando um novo ciclo de abordagens e soluções para desafios antigos e emergentes.
Mas afinal, o que é a Arquitetura de Software? No livro Fundamentos da Arquitetura de Software: Uma abordagem de engenharia, de Mark Richards – obra que serviu de base para este breve post – encontramos uma definição que a descreve por meio de, pelo menos, quatro características:
Estrutura do Sistema
Refere-se aos estilos arquiteturais utilizados na construção do sistema, como microservices, arquiteturas em camadas, entre outros.
Características da Arquitetura
Diz respeito aos atributos que o sistema deve suportar, como disponibilidade, confiabilidade, escalabilidade, dentre outros.
Decisões da Arquitetura
Envolve as escolhas que determinam como um sistema deve ser construído. Por exemplo, pode-se definir que a camada A se comunique apenas com a camada B, enquanto a camada C interage exclusivamente com a camada B.
Princípios do Design
Embora semelhantes às decisões de arquitetura, os princípios do design funcionam como diretrizes flexíveis e não como regras rígidas. Por exemplo, ao definir o protocolo para a comunicação entre as camadas A e B, os desenvolvedores podem optar entre REST ou gRPC, conforme as necessidades específicas do projeto.
Essas quatro colunas, quando consideradas em conjunto, compõem uma forma eficaz de definir e analisar a Arquitetura de Software – seja na avaliação de sistemas já existentes ou no planejamento de novas soluções. Em futuros posts, exploraremos com mais profundidade esse universo, trazendo exemplos práticos, diagramas e estudos de caso para ilustrar cada um desses aspectos.
Muito obrigado por acompanhar o texto até aqui. Se você gostou ou tem alguma experiência para compartilhar, deixe seu comentário. Até a próxima!
Muito bom!
ResponderExcluir