UNIVERSIDADE FEDERAL DA PARAÍBA - UFPB
CENTRO DE CIÊNCIAS APLICADAS E EDUCAÇÃO
DEPARTAMENTO DE CIÊNCIAS EXATAS - DCX
CAMPUS IV - RIO TINTO


PLANO DE CURSO - PERÍODO <XXXX.X>

CategoriaInformação
Turma:8103180 - ANÁLISE E PROJETOS DE SISTEMAS - Turma 01
Docente:Matheus Barbosa de Oliveira
Carga horária:60h
Horário:
Horários de Atendimento:Servidor do Discord
Link para Canal Discord:Discord
Link para materiais da disciplina:SIGAA
Link dos horários dos monitores:Horários dos Monitores

Programa do Componente Curricular

Ementa

Técnicas avançadas de Análise e Projeto de Software empregadas no desenvolvimento de software. Técnicas utilizadas para melhorar o reuso de software usando o paradigma de Orientação a Objeto. Projeto de arquitetura de software. Padrões para atribuição de responsabilidades. Padrões de projeto.

Objetivos

Capacitar os alunos a utilizar técnicas avançadas de análise e projeto de software no desenvolvimento de sistemas robustos, reutilizáveis e de fácil manutenção. Aplicação prática de princípios SOLID, padrões GRASP, padrões de projeto e modelagem de arquiteturas de software.

Conteúdo

  1. Unidade 1: Revisão de Java, introdução ao desenvolvimento de projetos, tratamento de exceções e testes
  2. Unidade 2: Code smells e refatoração, padrões GRASP, princípios SOLID e fundamentos de arquitetura de software
  3. Unidade 3: Padrões de projeto, com foco em aplicação prática em problemas específicos

Habilidades e Competências

  • Analisar requisitos de sistemas
  • Projetar soluções orientadas a objetos utilizando padrões de responsabilidade e projeto
  • Desenvolver software com foco em reutilização, coesão e baixo acoplamento
  • Projetar arquiteturas em camadas e compreender princípios de microsserviços e APIs RESTful
  • Aplicar padrões de projeto e princípios SOLID em implementações práticas

Metodologia de Ensino e Avaliação

Metodologia

Atividades de laboratório em todas as aulas, com conteúdo teórico aplicado imediatamente em projetos individuais incrementais.

Procedimentos de avaliação

Avaliação contínua e prática, considerando:

  • Aplicação correta de padrões
  • Coesão do código
  • Reuso
  • Boas práticas de desenvolvimento
  • Clareza na apresentação das soluções

Distribuição do Conteúdo

Unidade 1

  • Revisão de Orientação a Objetos
  • Composição x Herança
  • Tratamento de exceções
  • Documentação de Código
  • Teste Automático com JUnit
  • Uso de IDEs, Git e Maven

Unidade 2

  • Arquitetura de Software
  • Code smells e refatoração
  • Padrões GRASP
  • Princípios SOLID

Unidade 3

  • Padrões de Projeto

Cronograma de Aulas

Cronograma de Aulas

DataConteúdo
Apresentação do curso, revisão de OO. Classes x objetos.
Revisão de Java básico, Git e atividade inicial. Modelagem OO de sistemas. Visibilidade e Encapsulamento.
Herança x Composição, Interfaces, Diagramas UML, Collections, Enums, Annotations, Classes e métodos abstratos, Javadoc, Override, equals e compareTo
Tratamento de exceções, Eventos, Classes internas, Listeners, Teste Automático
1ª Avaliação
Arquitetura: camadas, microsserviços e RESTful APIs; Apresentação do projeto
Code smells e refatoração
Padrões GRASP; Separação de interesses, atribuição de responsabilidades e modularização
Princípios SOLID: LSP e ISP; DIP e injeção de dependências
2ª Avaliação
Padrões criacionais: Singleton, Abstract Factory
Padrões estruturais: Facade, Composite, Decorator
Padrões comportamentais: Strategy, Template Method, Observer
3ª Avaliação
Reposição
Prova Final

Avaliações Programadas

AvaliaçãoData
1ª Avaliação
2ª Avaliação
3ª Avaliação (projeto)
Reposição (1ª)
Exame Final

Recursos e Ferramentas Digitais Utilizados

  • Recursos: Computador pessoal/universitário por pelo menos 6h/semana; Google Meet para atendimentos síncronos
  • Ferramentas: IDE para Java (IntelliJ recomendado, VSCode ou Eclipse), JDK instalado, grupo de WhatsApp para avisos rápidos, avisos oficiais via SIGAA

Bibliografia

Básica

Complementar

Planos de Curso de Períodos Anteriores

2025.1 Análise e Projetos de Sistemas

Last updated 15 set. 2025, 11:58 -0300 . history