O objetivo deste curso é expor você a conceitos e técnicas para modelar e evoluir, de forma ágil, a arquitetura do software sendo desenvolvido.
Os conceitos apresentados neste curso no contexto da programação Java incluem o seguinte: conceitos de arquitetura de software; conceito de dívida técnica; uso de arquiteturas de referência e padrões arquiteturais; identificação de desafios técnicos; prototipação focada na demonstração da arquitetura; arquitetura de testes; identificação e planejamento do "momento mais responsável"; planejamento de tarefas de arquitetura; "spikes" de projeto e de arquitetura; "walking skeleton"; gerência da dívida técnica; monitorando atributos de qualidade; inspec'ão contínua.
Ao final deste curso, você terá amadurecido de tal modo suas habilidades de programação que será capaz de reestruturar em termos arquiteturais e implementar partes da aplicação Web final com o componente de gamificação enriquecido constantes do Trabalho de Conclusão da Especialização, aplicando onde apropriado as técnicas e conceitos apresentados neste curso.