Plano de Aula - Engenharia de Software II
06/02/2026
- Instituição: Faculdade Serra do Carmo (FASEC)
- Professor: Carlos Alberto de Sousa Parente Rodrigues
- Semestre: 2026/01
Ementa
Arquitetura de software. Estimativas de custo de software. Padrões de projeto (design patterns). SOLID. Padrões e Frameworks de Software. Desenvolvimento ágil: XP e SCRUM. RUP. Controle de qualidade de software. Mecanismos e modelos de melhoria contínua de qualidade. Disponibilização de software. Manutenção e controle de versões.
Objetivo geral
Capacitar o acadêmico a projetar e manter sistemas de software complexos, integrando princípios de arquitetura e padrões de projeto, proporcionando uma visão sistêmica que abrange desde a estimativa de custos e gestão ágil, até processos de garantia de qualidade e melhoria contínua.
Objetivos específicos
- Apresentar os conceitos de engenharia e arquitetura de software;
- Permitir o aluno a estimar custos e prazos de projetos de software;
- Capacitar o aluno a avaliar e aplicar diferentes padrões de arquitetura de software;
- Entender os conceitos de padrão SOLID;
- Entender os principais padrões de projeto (Design Patterns);
- Apresentar arquiteturas de soluções presentes no mercado.
Metodologia
Aulas expositivas e dialogadas e apresentação e debate a respeito de modelos de arquiteturas reais de mercado.
Sistema de avaliação
A nota final (NF) será a média aritmética de duas notas, N1 e N2. A N1 será composta da soma das notas individuais da lista de exercícios 1 (L1), com valor de 3,0 pontos, e da prova teórica 1, com valor de 7,0 pontos, totalizando um máximo de 10,0 pontos na N1. De forma similar, a nota N2 corresponde à soma da nota da lista de exercícios 2 (N2) e da prova teórica 2 (P2). Será aprovado na disciplina o discente que obtiver a nota final (NF) igual ou superior a 7,0 pontos. Caso o aluno possua uma nota final entre 5,0 e 6,9, é possível realizar o exame final (EF). A nota do EF então substituirá a nota final do aluno, mantendo a nota necessária para aprovação em 7,0 pontos.
Bibliografia básica
- MARTINS, José Carlos Cordeiro. Gerenciando projetos de desenvolvimento de software com PMI, RUP e UML. 5. ed. Rio de Janeiro, RJ: Brasport, 2011.
- GUERRA, Eduardo. Design patterns com java: projeto orientado a objetos guiado por padrões. São Paulo, SP: Casa do Código, 2014.
- SILVA, Luiz Ricardo Mantovani da. Desenvolvimento de software e metodologias ágeis. 1. ed. Rio de Janeiro: Freitas Bastos, 2024.
Bibliografia complementar
- GALLOTTI, Giocondo Marino Antonio (org.). Arquitetura de software. São Paulo: Pearson, 2016.
- SOMMERVILLE, Ian. Engenharia de software. 10. ed. São Paulo, SP: Pearson, 2018.
- BRIZENO, Marcos. Refatorando com padrões de projeto: um guia em java. São Paulo, SP: Casa do Código, 2017.
- POLO, Rodrigo Cantú. Validação e teste de software. 1. ed. São Paulo: Contentus, 2020.
- KERZNER, Harold. Gerenciamento de projetos: uma abordagem sistêmica para planejamento, programação e controle. 2. ed. São Paulo: Blucher, 2015.
Conteúdo programático
- Aula 1 (09/02/2026) - Apresentação da disciplina; apresentação da ementa e bibliografia; conceitos básicos e acrônimos de engenharia de software;
- Aula 2 (23/02/2026) - Padrões de arquitetura de software: camadas, pipes-and-filters, publisher-subscriber
- Aula 3 (02/03/2026) - Noções de Domain Drive Design (DDD).
- Aula 4 (09/03/2026) - Estimativas de custo de software.
- Aula 5 (16/03/2026) - Desenvolvimento ágil: XP.
- Aula 6 (23/03/2026) - Desenvolvimento ágil: Scrum.
- Aula 7 (30/03/2026) - RUP (Rational Unified Process)
- Aula 8 (06/04/2026) - Apresentação do trabalho prático 1 (T1); revisão para a prova 1 (P1).
- Aula 9 (13/04/2026) - Prova teórica 1 (P1).
- Aula 10 (20/04/2026) - SOLID: Princípio de responsabilidade única; Princípio Aberto fechado.
- Aula 11 (27/04/2026) - SOLID: Princípio da Substituição de Liskov; Princípio de Segregação de Interface; Princípio da Inversão de Dependência.
- Aula 12 (04/05/2026) - Padrões de projeto criacionais.
- Aula 13 (11/05/2026) - Padrões de projeto estruturais.
- Aula 14 (18/05/2026) - Padrões de projeto comportamentais.
- Aula 15 (25/05/2026) - Controle de qualidade de software; melhoria contínua de qualidade.
- Aula 16 (01/06/2026) - Controle de versão e disponibilização de software.
- Aula 17 (08/06/2026) - Metodologias de atualização de sistemas legados.
- Aula 18 (15/06/2026) - Estudos de caso de arquiteturas de soluções do mercado; apresentação do trabalho prático 2 (T2); revisão para a prova 2 (P2).
- Aula 19 (22/06/2026) - Prova teórica 2 (P2).
- Aula 20 (29/06/2026) - Segunda chamada de provas anteriores.