Resumo de Engenharia de Software - Engenharia de Requisitos

Engenharia de Requisitos

Engenharia de Requisitos em Concursos Públicos

A Engenharia de Requisitos é uma fase crítica da Engenharia de Software, responsável por identificar, analisar, documentar e gerenciar as necessidades do sistema. Em concursos, costuma ser cobrada com ênfase nos seguintes tópicos:

1. Conceitos Fundamentais

  • Requisito: Condição ou capacidade necessária para resolver um problema ou atingir um objetivo.
  • Classificação: Requisitos funcionais (o que o sistema deve fazer) e não-funcionais (restrições e qualidades).

2. Processo de Engenharia de Requisitos

  • Elicitação: Técnicas como entrevistas, brainstorming e prototipagem para coletar requisitos.
  • Análise: Validação e priorização dos requisitos.
  • Documentação: Uso de artefatos como Casos de Uso ou Histórias de Usuário.
  • Validação: Verificação se os requisitos atendem às necessidades.

3. Técnicas de Elicitação

  • Entrevistas, questionários, observação, workshops (JAD), prototipagem.
  • Priorização: Método MoSCoW (Must, Should, Could, Won't have).

4. Modelagem de Requisitos

  • Diagramas UML: Casos de uso, diagramas de classe e de sequência.
  • Especificação: Linguagem natural, tabelas de decisão ou notações formais.

5. Gerenciamento de Requisitos

  • Rastreabilidade (forward e backward traceability).
  • Controle de mudanças e versionamento.

6. Questões Comuns em Concursos

  • Diferença entre requisitos funcionais e não-funcionais.
  • Etapas do processo de Engenharia de Requisitos.
  • Técnicas de elicitação e priorização.
  • Interpretação de diagramas UML (casos de uso).

7. Bibliografia Recomendada

  • Pressman, Engenharia de Software.
  • Sommerville, Engenharia de Requisitos.
  • Normas ISO/IEC/IEEE 29148 (padrões para especificação de requisitos).