Arquitetura de Software

João Arthur Brunet
Computação @ UFCG

Conteúdo


O conteúdo do curso foi organizado em três módulos.

Módulo 1 - Introdução à Arquitetura de Software

Nesta unidade vamos abordar os conceitos introdutórios relacionados à arquitetura de software. Em particular, vamos discutir as diferentes definições para o termo, bem como motivar o seu papel e importância durante o desenvolvimento de software. Na etapa de documentação arquitetural, vamos abordar o modelo C4 e o modelo de visões arquiteturais.

Slides

Módulo 2 - Estilos e Padrões Arquiteturais

O foco deste módulo é explorar diferentes decisões arquiteturais presentes em sistemas open source. A ideia é abordar a teoria e a prática dos estilos e padrões mais populares, como arquitetura em camadas, cliente-servidor, MVC, microsserviços, pipes and filter, REST, plugins e publish-subscribe.

Módulo 3 - Avaliação e Verificação Arquitetural

Neste módulo vamos explorar ferramentas, métricas e metodologias de avaliação arquitetural. Em um primeiro momento, aplicaremos técnicas quantitativas para medir aspectos qualitativos do software, como manutenabilidade, escalabilidade, desempenho etc. Ferramentas como SONAR, FindBugs, JProfiler e afins serão aplicadas em projetos open source para posterior análise dos relatórios. Além disso, os alunos serão estimulados a propor, projetar, implementar e medir métricas que avaliem a arquitetura dos projetos que estão analisando de acordo com um critério definido por eles.


Plano de Aulas