Engenharia de Software: conceitos de engenharia de software, conceitos de ciclo de vida de software, conceitos de processos de software, conceitos de especificação de software, conceitos de projeto e implementação de software, conceitos de validação de software, conceitos de evolução de software; modelos de processo de software, modelo em cascata, modelo incremental, modelo espiral, modelo iterativo; desenvolvimento orientado a reúso, prototipação; (Parte 1)
Engenharia de Software: conceitos de engenharia de software, conceitos de ciclo de vida de software, conceitos de processos de software, conceitos de especificação de software, conceitos de projeto e implementação de software, conceitos de validação de software, conceitos de evolução de software; modelos de processo de software, modelo em cascata, modelo incremental, modelo espiral, modelo iterativo; desenvolvimento orientado a reúso, prototipação; (Parte 2)
Rational Unified Process (RUP)
Desenvolvimento ágil de software
Test-Driven Development-TDD, Behavior Driven Development-BDD;
engenharia de requisitos, requisitos funcionais, requisitos não-funcionais, documentação de requisitos de software, elicitação e análise de requisitos, descoberta de requisitos, entrevistas, casos de uso, etnografia; especificação de requisitos, especificação de requisitos em linguagem natural, especificação de requisitos em linguagem estruturada; validação de requisitos, técnicas de validação, homologação e aceitação de requisitos; gerenciamento de requisitos; gerenciamento de mudança de requisitos;
modelagem de dados, diagrama de fluxo de dados (DFD)
projeto e implementação, projeto orientado a objetos (conceitos, coesão, acoplamento, classes, objetos, propriedades, métodos, mensagens, encapsulamento, sobrecarga, herança, polimorfismo, interfaces, pacotes, entre outros)
modelagem de sistemas, UML 2.5.1 (visão geral, notação, classificação, modelos e diagramas), generalização/especialização, associação, agregação/composição, modelagem de casos de uso, diagrama de casos de uso, diagrama de atividades, diagrama de sequência, diagrama de comunicação, diagrama de visão geral de interação, diagrama de tempo, diagrama de máquina de estados, diagrama de classes, diagrama de objetos, diagrama de componentes, diagrama de perfil, diagrama de estruturas compostas, diagrama de implantação, diagrama de pacotes, modelagem orientada a dados)
qualidade de software (conceitos, modelos de maturidade em processo de software)
testes de software, conceitos de testes de software, teste unitário, teste de integração, teste de sistema, teste de release, teste de aceitação, teste de operação, teste de regressão, teste alfa, teste beta, teste gama, teste positivo-negativo, teste caixa-branca, teste caixa-preta, teste caixa-cinza, teste funcional, teste de usabilidade, teste de desempenho, teste de carga, teste de stress, teste de volume, teste de configuração, teste de instalação, teste de segurança, teste de confiabilidade, teste de recuperação, teste de componente, ciclo de vida de testes, artefatos de teste (plano de testes, roteiro de testes, relatório de testes, entre outros).
3.2.2.2 Arquitetura de Software: sistemas centralizados, descentralizados e distribuídos, projeto de arquitetura, conceitos, arquitetura em camadas, Modelo-Visão-Controlador (MVC), arquitetura cliente-servidor;
Service-Oriented Architecture-SOA (webservices, SOAP, WSDL, UDDI, REST) (Parte 1)
Service-Oriented Architecture-SOA (webservices, SOAP, WSDL, UDDI, REST) (Parte 2)
padrões de projetos (“Gang of Four”-GoF e GRASP), componentização,
sustentação de software, manutenção adaptativa, manutenção corretiva; evolução de software, manutenção preventiva, manutenção evolutiva, reengenharia de software e refatoração;
gerenciamento de mudanças de software
prototipação de interface com o usuário; UX Design.
métricas e estimativas de software, análise por pontos de função conforme IFPUG e Nesma (conceitos básicos, contagens, entre outros);
engenharia de usabilidade, conceitos básicos e aplicações de ergonomia/usabilidade de software, critérios/recomendações e guias de estilo, análise de requisitos de usabilidade, métodos para avaliação de usabilidade;
noções sobre Enterprise Content Management (ECM);
gestão de processo de negócios (BPM); gerenciamento de processos de negócio, modelagem de processos, técnicas de análise de processos, modelos de processos de software, notação BPMN 2.0, desenho e melhoria de processos, integração de processos; (Parte 1)
gestão de processo de negócios (BPM); gerenciamento de processos de negócio, modelagem de processos, técnicas de análise de processos, modelos de processos de software, notação BPMN 2.0, desenho e melhoria de processos, integração de processos; (Parte 2)