Conceitos e Fundamentos básicos de arquitetura de software. Documentação de arquitetura de software. Conceitos de componentes e frameworks. Programação orientada a aspecto. Padrões de projeto: classificação e utilização. Padrão Modelo-Visão-Controle (MVC). Model Driven Architecture (MDA). Service Oriented Architecture (SOA).