Engenharia de Requisitos
5. Engenharia de Requisitos
5.1 Atividades e Técnicas de ER
Elicitação e descoberta
-
Entrevistas semiestruturadas: encontros periódicos com a cliente para compreender o jogo físico, seus princípios pedagógicos, o corpus de morfemas e as expectativas em relação à versão digital, identificando tanto requisitos declarados quanto requisitos latentes.
-
Análise documental: estudo do relatório final do projeto original, do material didático e das peças físicas do jogo, para reconstruir o vocabulário pedagógico e a identidade visual do MorfoBlocos.
-
Observação do contexto real de uso: acompanhamento da aplicação do jogo físico em sala de aula, quando possível, para capturar requisitos latentes que emergem do uso real e dificilmente apareceriam em entrevistas.
-
Triangulação de fontes de informação: cruzamento sistemático entre entrevistas, análise documental e observação, de modo a confrontar percepções e consolidar um entendimento compartilhado sobre o problema e suas causas.
Análise e Consenso
-
Workshops de Requisitos: encontros colaborativos com a cliente para discutir escopo, resolver divergências de interpretação e construir entendimento compartilhado sobre aspectos pedagógicos e de conteúdo.
-
Priorização MoSCoW: classificação das funcionalidades em Must have, Should have, Could have e Won't have for now, junto à cliente, para definir o escopo do MVP e registrar desejáveis para evolução futura.
-
Matriz Avaliação Técnica × Valor de Negócio: posicionamento das características de produto em uma matriz que cruza valor percebido pela cliente com esforço técnico estimado, orientando a sequência de entregas.
-
Negociação e resolução de conflitos: mediação estruturada de divergências entre requisitos — por exemplo, entre fidelidade ao jogo físico e viabilidade no prazo do semestre — com registro das decisões e suas justificativas. Declaração de Requisitos
Declaração de Requisitos
-
Narrativas descritivas: usadas para declarar requisitos de negócio em linguagem natural, articulando o problema identificado na seção 1.4, o valor esperado para a cliente e as restrições do contexto do projeto.
-
Histórias de usuário: declaração dos requisitos de usuário no formato "Como
, quero , para ", organizadas em backlog de produto e utilizadas no planejamento das sprints. -
Critérios de aceitação Given/When/Then: cada história de usuário será acompanhada por critérios de aceitação em formato estruturado, explicitando condição inicial, ação e resultado esperado de forma verificável.
-
Catálogos de RFs e RNFs: os requisitos funcionais serão declarados no padrão "verbo no infinitivo + objeto" (por exemplo, "Combinar morfemas para formar palavras"); os requisitos não funcionais serão organizados segundo o modelo URPS+, conforme orientação do template da disciplina.
-
Catálogo de regras de negócio: as regras morfológicas do português — quais combinações de morfemas são válidas e a qual processo de formação cada resultado corresponde — serão declaradas em catálogo próprio, distinto dos requisitos funcionais, conforme a definição de regra de negócio adotada pelo livro-texto.
Representação de Requisitos
-
Rich Picture no formato AS-IS / TO-BE: representação sistêmica (contextual) utilizada na seção 1.3 para contrastar o cenário atual do jogo físico com o cenário proposto para a solução digital, capturando atores, fluxos e limitações do contexto.
-
Diagrama de Ishikawa (6M's): utilizado na seção 1.4 para organizar a análise das causas do problema identificado, distribuindo os fatores contribuintes pelos eixos Método, Máquina, Mão de Obra, Material, Medida e Meio Ambiente.
-
Mapa de Stakeholders e Matriz Poder × Interesse: representações sistêmicas (contextuais) utilizadas na seção 1.6 para classificar os stakeholders conforme sua influência e interesse, orientando a estratégia de comunicação da equipe ao longo do projeto.
-
Protótipos de baixa fidelidade e storyboards: produzidos durante as sprints para apoiar a validação de fluxos de uso com a cliente antes da implementação, mantendo-se no escopo da ER conforme a delimitação do SWEBOK v4.0.
-
Fluxos de navegação e de estados conceituais: usados em nível conceitual para representar caminhos de uso do estudante (por exemplo, da seleção de morfemas ao recebimento de feedback), sem detalhar elementos de interface ou lógica interna.
Verificação e Validação de Requisitos
-
Revisão interna pela equipe: antes de cada sprint, os requisitos refinados serão revisados pelos membros da equipe para verificar clareza, consistência, completude e testabilidade.
-
Validação com a cliente ao final de cada sprint: nas reuniões de revisão de sprint, a cliente avaliará o incremento entregue, confirmando que os requisitos implementados atendem a suas expectativas pedagógicas e ao problema declarado na seção 1.4.
-
Definition of Ready (DoR) e Definition of Done (DoD): o DoR define as condições mínimas para um item entrar em sprint; o DoD define as condições para considerá-lo concluído. Atuam como filtros de qualidade antes e depois do desenvolvimento.
-
Testes de aceitação baseados em critérios declarados: cada história de usuário será testada contra seus critérios de aceitação no formato Given/When/Then, tornando a validação objetiva e rastreável.
Organização e Atualização de Requisitos
-
Product Backlog único: histórias de usuário, RFs, RNFs e regras de negócio serão mantidos em um backlog único, priorizado pela Product Owner (a cliente) e continuamente refinado.
-
Refinamento contínuo do backlog: ao longo de cada sprint, equipe e cliente revisarão o backlog, atualizando prioridades, detalhando itens para as próximas sprints e ajustando o escopo conforme o aprendizado adquirido.
-
Aplicação do princípio DEEP: o backlog será mantido Detalhado adequadamente, Estimado, Emergente e Priorizado, conforme prática consolidada no desenvolvimento ágil.
-
Controle de versões dos artefatos de requisitos: a visão do produto, o backlog e os demais artefatos serão mantidos em repositório versionado, preservando histórico de decisões e rastreabilidade de mudanças.
-
Matriz de rastreabilidade: matriz que conecta objetivos específicos, características de produto, requisitos funcionais e não funcionais, regras de negócio e critérios de aceitação, assegurando que cada decisão técnica permaneça ligada ao problema declarado na seção 1.4.
5.2 Engenharia de Requisitos e o XP
As atividades da Engenharia de Requisitos, suas práticas e técnicas são mapeadas, a seguir, às cerimônias do Scrum adotadas pela equipe para a condução do projeto MorfoBlocos Digital. Embora o processo escolhido seja o ScrumXP — combinando o framework Scrum para gerenciamento com as práticas técnicas do XP para engenharia —, optou-se por organizar a tabela em torno das cerimônias do Scrum por serem os momentos formais de tomada de decisão e validação no ciclo iterativo, conforme descrito na seção 4.10 do livro-texto.
Importante: as atividades da ER não ocorrem de forma estritamente sequencial dentro de cada cerimônia. Conforme apresentado no capítulo 5 do livro-texto, elas são entrelaçadas e se retroalimentam ao longo do projeto, de modo que a ordem das linhas da tabela é apenas de apresentação — não de execução obrigatória.
| Cerimônia do Scrum | Atividade ER | Prática | Técnica | Resultado esperado |
|---|---|---|---|---|
| Refinamento do Product Backlog | Elicitação e Descoberta | Levantamento contínuo de requisitos e compreensão do domínio. | Entrevistas semiestruturadas com a cliente, análise documental do jogo físico, triangulação de fontes. | Itens do backlog detalhados e compreensão compartilhada do problema com a cliente. |
| Análise e Consenso | Priorização contínua e definição de escopo dos próximos itens. | Priorização MoSCoW, Matriz Avaliação Técnica x Valor de Negócio, workshops com a cliente. | Backlog priorizado, com trade-offs explicitados e funcionalidades críticas no topo. | |
| Declaração | Detalhamento dos itens do backlog em diferentes níveis de abstração. | Histórias de usuário, critérios de aceitação Given/When/Then, catálogos de RFs, RNFs e regras de negócio. | Itens do backlog declarados em linguagem compreensível, rastreáveis ao problema da seção 1.4. | |
| Representação | Representação sistêmica do contexto e do problema. | Rich Picture AS-IS/TO-BE, Mapa de Stakeholders, Matriz Poder x Interesse, Diagrama de Ishikawa. | Entendimento compartilhado sobre o contexto, os atores e o escopo do sistema. | |
| Planejamento da Sprint | Análise e Consenso | Análise de viabilidade e seleção dos itens da sprint. | Discussão em equipe, análise de dependências, programação em pares (XP). | Consenso sobre a meta da sprint e os itens selecionados para o Sprint Backlog. |
| Declaração | Refinamento final dos critérios de aceitação dos itens selecionados. | Definition of Ready (DoR), critérios Given/When/Then. | Histórias de usuário com critérios verificáveis e prontas para desenvolvimento (Ready). | |
| Representação | Evolução de protótipos para apoiar a implementação. | Protótipos de baixa e média fidelidade, fluxos de navegação conceituais. | Representações que orientam a implementação e antecipam validações com a cliente. | |
| Daily Scrum | Elicitação e Descoberta | Esclarecimento pontual de dúvidas sobre requisitos em desenvolvimento. | Conversas curtas com a cliente quando necessário, registro de impedimentos relacionados a requisitos. | Impedimentos de ER identificados e tratados com agilidade durante a sprint. |
| Organização e Atualização | Atualização incremental do estado dos itens em desenvolvimento. | Sincronização sobre progresso, registro de descobertas que impactam o backlog. | Visibilidade contínua do estado dos itens da sprint frente aos requisitos declarados. | |
| Revisão da Sprint | Verificação e Validação | Validação do incremento entregue com a cliente. | Demonstração do incremento funcional, revisão contra critérios de aceitação, Definition of Done (DoD). | Incremento validado pela cliente, com feedback registrado para ajuste de itens futuros. |
| Organização e Atualização | Repriorização do backlog com base no aprendizado da sprint. | Refinamento do backlog, negociação colaborativa, princípio DEEP. | Product Backlog repriorizado e atualizado com itens de maior valor para a próxima sprint. | |
| Retrospectiva da Sprint | Organização e Atualização | Reflexão sobre o processo de ER e ajuste de práticas. | Discussão estruturada da equipe sobre como os requisitos foram tratados, identificação de melhorias. | Ajustes nas práticas e técnicas de ER para a próxima sprint, artefatos consistentes e rastreáveis. |
| Verificação e Validação | Verificação da qualidade dos artefatos de requisitos produzidos. | Revisão interna pela equipe dos artefatos da sprint, controle de versões. | Artefatos de requisitos verificados e versionados ao final de cada sprint. |
O mapeamento apresentado evidencia onde cada atividade da ER tem maior ênfase em cada cerimônia do Scrum, sem sugerir uma ordem rígida de execução. As práticas técnicas do XP — como programação em pares, TDD, integração contínua e refatoração — permeiam a execução da sprint e dão suporte à qualidade dos requisitos implementados, em coerência com os valores de comunicação, feedback, simplicidade e confiança que sustentam a prática da Engenharia de Requisitos descrita no capítulo 5 do livro-texto.