A Engenharia de Requisitos é um processo que engloba todas as atividades que contribuem para a produção de um documento de requisitos e sua manutenção ao longo do tempo. Confira abaixo as etapas de todo o processo:
Nessa etapa identifica-se os stakeholders e seus diferentes pontos de vista sobre o problema e influências. Então, desenha-se a visão geral do sistema a ser desenvolvido caracterizado por necessidades dos stakeholders.
Nessa etapa levanta-se os requisitos de usuário do sistema sob duas perspectivas:
Categoria do requisito:
Requisitos Funcionais: Descrevem as Funcionalidades do Sistema
Requisitos não Funcionais: Descrevem a Qualidade do Sistema: Desempenho / Disponibilidade / Eficiência / Interoperabilidade / Confiabilidade / Robustez
Natureza do requisito:
Requisitos subconscientes: são aqueles que normalmente as partes interessadas omitem na elicitação, não por desconhecerem, mas, por entenderem que são caraterísticas elementares do produto;
Requisitos conscientes: são aqueles que as partes interessadas têm entendimento claro e enumeram espontaneamente; e
Requisitos inconscientes: são aqueles que as partes interessadas ainda não têm entendimento, porém são identificáveis já nessa etapa.
Algumas técnicas utilizadas na elicitação dos requisitos são:
Pesquisa – Elicitar conhecimento explícito: Entrevista / Questionário
Criatividade – Estabelecer inovações: Brainstorming/ Brainstorming paradox/ Mudança de Perspectiva/ Analogia
Documentos – reutilização de soluções e experiências: Arqueologia de sistema/ Leitura baseada em perspectiva/ Reutilização
Observação – Questionar observações e otimizar processos: Observação de campo/ Apprenticing
Nessa etapa detalha-se cada requisito descrito em linguagem natural em modelos conceituais, como SysML, UML ou FAD. O principal objetivo de eliminar ambiguidades, inconsistências, omissões e erros dos requisitos. Alguns tipos de diagramas são:
Diagramas de Caso de Uso
Diagramas de bloco
Diagramas Paramétricos
Diagramas de Requisitos
Diagramas de Sequência
Diagramas de Máquina de Estados
Nessa etapa o principal objetivo é identificar os conflitos entre os requisitos para negociar as soluções com os stakeholders priorizando, eliminando, combinando ou modificando os requisitos.
Nessa etapa o sistema é especificado em termos técnicos, ou seja, desenvolve-se os requisitos de sistema que devem atender os requisitos de usuário. Na especificação passa-se da perspectiva do problema (requisitos de usuário) para a perspectiva da solução (requisitos de sistema).
Nessa etapa é validada a cobertura do sistema, ou seja, o atendimento de todos os requisitos de usuário pelo sistema proposto. E, é homologado o aceite dos stakeholders sobre os requisitos desenvolvidos.
Essa etapa permeia todo o ciclo de vida do produto e consiste em dois aspectos fundamentais:
Garantia do escopo do produto: certificar que ao longo do processo de desenvolvimento do produto seus requisitos sejam atendidos;
Gestão de mudanças: garantir a rastreabilidade das mudanças durante o processo de desenvolvimento do produto e realizar análises de impacto das mudanças propostas para evidenciar sua viabilidade técnico-financeira.
Se você procura um software para engenharia de requisitos, fale com nossa equipe.
Fernando Cerri é Engenheiro Eletricista com ênfase em Eletrônica e Pós-Graduado em Gerenciamento de Projetos com mais de 15 anos de experiência na área de tecnologia. Atuou como Gerente de Projetos na OPENCADD em conceitos de Model-Based System Engineering e Model-Based Design.