INF-0318 – Análise Orientada a Objetos e Projeto Arquitetural

Apresentação da Disciplina:

Tópicos Abordados:

  • Construção de modelos de casos de uso.
  • Modelagem estática e dinâmica de software.
  • Padrões de Projeto.
  • Projeto Arquitetural, Estilos e Padrões de Projeto Arquiteturais.
  • Arquitetura de Software e Atributos de Qualidade.


INF-0319 – Projeto e Implementação Orientados a Objetos

Apresentação da Disciplina

Tópicos abordados:

  • Princípios de Projeto Orientado a Objetos (POO).
  • Projeto de Classes e Hierarquias de Classes (Herança).
  • Projeto de Relacionamentos.
  • Uso de polimorfismo em POO.
  • Progressões Matemáticas.
  • Projeto de Máquinas de Estado.

INF-0320 – Interfaces Homem Computador

Tópicos Abordados:

  • Técnicas e metodologias para projeto e avaliação de interfaces de usuário em sistemas de software.
  • Princípios do Design Centrado no Usuário e do Design Universal.
  • Estudo de fatores humanos, aspectos sociais e tecnológicos. Avaliação e entendimento da experiência do usuário.

INF-0321 – Verificação e Validação de Software

Apresentação da Disciplina

Tópicos abordados:

  • Técnicas estáticas: revisões, análise estática de código.
  • Técnicas de teste: caixa preta e caixa branca.
  • Escopo de testes.
  • Testes de requisitos de qualidade.
  • Testes em ambiente ágil.
  • Práticas com automatização detestes.


INF-0323 – Linguagens e Ambientes para Programação de Software

Apresentação da Disciplina:

Tópicos abordados:

Disciplina prática que irá exercitar os seguintes conceitos:

  • Ambiente de Programação e Ferramentas.
  • Objetos e Classes.
  • Herança e Agregação.
  • Polimorfismo e Acoplamento Dinâmico.
  • Classes Abstratas e Interfaces.
  • Exceções e Pacotes.

INF-0325 – Modelagem e Projeto de Banco de Dados

Apresentação da Disciplina:

Tópicos abordados:

  • Modelo Relacional e consultas SQL.
  • Consultas SQL avançadas.
  • Introdução a Banco de dados não relacionais.
  • Banco de dados orientado a documentos e Banco de dados orientado a grafos.
  • Semântica de dados.

INF-0329 – Prática em Engenharia de Software

Tópicos abordados:
Disciplina prática que irá exercitar os seguintes conceitos:

  • Ambiente de Programação: Java, SDK (eclipse), git, jenkins, junit, mockups, etc..
  • Processo Ágil: Especificação a ser utilizada na disciplina.
  • Projeto Prático: Especificação (Funcionalidade, Arquitetura de Software).
  • Planejamento dos Sprints.
  • Execução do Projeto Orientado a Objetos.

INF-0330 – Requisitos de Software e Modelos de Especificação

Apresentação da Disciplina:

Tópicos abordados:

  • Introdução a engenharia de software (visão sociotécnica).
  • Engenharia de Requisitos.
  • Técnicas de levantamento de requisitos: entrevistas, brainstorming, grupo focal, workshop, entre outras.
  • Introdução a métodos ágeis (valores e princípios).
  • Escrevendo histórias de usuários de forma eficaz.
  • Design Thinking: Princípios e Ferramentas.


INF-0331 – Componentização e Reuso de Software: Conceitos e Práticas

Apresentação da Disciplina

Tópicos abordados:

  • Fundamentos de componentes de software: principais características, propriedades e categorias.
  • Engenharia de Software Baseada em Componentes: Projeto de software baseado em composição de componentes; Componentes e UML
  • Tecnologias para componentes: Componentes distribuídos; Web Components.
  • Componentes e a Arquitetura orientada a serviços (SOA): Padrão Service Component Architecture (SCA); Componentes e microsserviços.
  • Arquitetura baseada em containers e componentização de subsistemas.
  • Reúso de Software: Reúso oportunístico x sistematizado; Aspectos do reúso e estratégias.
  • Sistemas de transformação e reuso.
  • Arquiteturas, modelos e reúso.

INF-0332 – Arquitetura Orientada a Serviços – SOA & WebServices: Conceitos e Práticas

Apresentação da Disciplina

Tópicos abordados

  • Arquitetura de Software: Monolítico, SOA, Web Services e Micro Serviços.
  • Construção de APIs: WS Tradicional (SOAP), REST, GraphQL.
  • Migração de sistemas monolítico para micro serviço.
  • Boas Práticas na construção de uma API.
  • Documentação de APIs.
  • Segurança de APIs.
  • API Management.
  • Chatbots.
  • Containers (Kubernetes, Istio, Patterns).
  • Prática de construção e uso de APIs.


INF-0333 – Gerenciamento de Projetos de Software: Aspectos Econômicos e Planejamento

Apresentação da Disciplina:

Tópicos abordados:

  • Técnicas de gerenciamento de projetos tradicionais e ágeis (Scrum e Kanban);
  • Áreas de conhecimento do PMI e seus processos com ênfase no processo de planejamento: Gerenciamento da Integração: Gerenciamento do escopo do projeto; Gerenciamento do cronograma do projeto; Gerenciamento dos custos do projeto; Gerenciamento da Qualidade; Gerenciar recursos do Projeto; Gerenciamento de Comunicações; Gerenciamento de Riscos; Gerenciamento de Aquisições; Partes Interessadas (Stakeholders)
  • Técnicas de planejamento e controle do projeto tais como: Work Breakdown Structure (WBS); Técnicas para estimativa de tempo e custo; PERT e Gant; Gestão de risco.

INF-0334 – Tópicos em Engenharia de Software – I

Apresentação da Disciplina:

Tópicos abordados:
Esta disciplina é composta por um conjunto de palestras de profissionais do mercado de trabalho.

  • Internet of Things: Contextualização sobre a Internet das Coisas; Cases de dispositivos de IoT; IoT no negócio das empresas; Aceleradores; Como emplacar um projeto IoT.
  • Machine Learning: Teoria sobre Redes Neurais Artificiais; Prática sobre Redes Neurais Artificiais.
  • Big Data: O que é Big Data; Casos de Uso; O lado negativo do Big Data; Papéis e profissões em Big Data; Engenharia de soluções Big Data. Como lidar com Big Data?
  • Cloud Computing: Visão Geral da Nuvem; Arquitetura e Segurança na Nuvem; Players, vantagens e desvantagens; DevOps e integração contínua.
  • Mobile: Por que mobile? A relevância para marcas e empresas; Desafios na adoção de Mobile pelas empresas; Abordagens para desenvolvimento Mobile.

INF-0335 – Ambientes para Concepção de Software

Apresentação da Disciplina:

Tópicos abordados

  • Introdução ao conjunto de ferramentas usadas no processo de concepção, desenvolvimento e entrega de software.
  • Aspectos de versionamento de software, como resolução de conflitos, mesclagem, ramificações, entre outros.
  • Introdução a integração contínua.