A disciplina aborda fundamentalmente o estudo dos princípios, processos e técnicas da Engenharia de Requisitos aplicados ao desenvolvimento de sistemas de informação. Tópicos a serem abordados na disciplina:
- Elicitação, análise, especificação, validação e gestão de requisitos considerando o contexto organizacional, os processos de negócio e a interação com diferentes stakeholders.
- Técnicas de modelagem e análise de requisitos, incluindo abordagens baseadas em objetivos (Goal-Oriented Requirements Engineering:GORE).
- Qualidade, priorização e rastreabilidade de requisitos ao longo do ciclo de vida do sistema.
- Gerenciamento de mudanças e apoio à tomada de decisão em projetos de software.
- Introdução a tópicos emergentes, como requisitos éticos em sistemas baseados em inteligência artificial e desafios da engenharia de requisitos em sistemas críticos e autônomos.
Esta disciplina foi subdividida em módulos para cobrir diversos aspectos relacionados à área de Engenharia de Software (ES), conforme bibliografia recomendada. O conteúdo abordado inclui desde uma visão geral de ES, requisitos, projeto, verificação e validação, gerenciamento de projetos de software, chegando até a aspectos de evolução da área.
Programa do Curso:
-
Apresentação do curso e introdução a Engenharia de Software e Sistemas
-
Gerência de projetos
-
Definição, manutenção e gerenciamento de requisitos
-
Gerência de configuração e mudanças
-
Tecnologias de Software as a Service (SaaS)
-
Introdução a arquitetura e linguagens de aplicações de SaaS
-
Introdução a Ruby/Rails
-
Implementação, manutenção e execução de testes
-
Projeto, implementação e manutenção de features
-
Introdução a refatoração de código
Gerenciamento dinâmico da memória. Listas. Pilhas. Filas. Árvores. Ordenação e Pesquisa.Pesquisa em Árvores. Grafos. Análise e aplicação de estruturas avançadas em problemas de programação. Resolução de problemas. Aplicações em problemas ambientais.