Software · Soluções na Prática

Engenharia de Requisitos: Funcionais, Não Funcionais e Atributos de Qualidade

Como transformar desejos vagos de negócio em especificações arquiteturais rigorosas: requisitos funcionais, não funcionais mensuráveis e especificação de cenários de qualidade pelo modelo do SEI.

Diagrama conceitual ilustrando engenharia de requisitos: funcionais, não funcionais e atributos de qualidade
Neste artigo

A causa raiz da maioria dos projetos de software fracassados raramente é uma falha na sintaxe da linguagem ou a escolha da biblioteca errada. Projetos colapsam principalmente devido a requisitos mal concebidos, ambíguos ou mutuamente contraditórios. Especificações genéricas como "o sistema deve ser rápido" ou "a aplicação deve ser totalmente segura" são inúteis para a tomada de decisões técnicas.

flowchart TD
  subgraph Elicitacao["Elicitação Estruturada de Requisitos"]
    RF["Requisitos Funcionais (O que o sistema faz)<br/>Ex: Cadastrar usuário, fechar pedido"]
    RNF["Requisitos Não Funcionais (Como o sistema opera)<br/>Atributos de Qualidade e Restrições"]
  end

  subgraph SEIScenario["Estrutura de Cenário de Atributo de Qualidade (SEI)"]
    Fonte["Fonte do Estímulo"]
    Estimulo["Estímulo (Evento)"]
    Ambiente["Ambiente de Execução"]
    Artefato["Artefato Impactado"]
    Resposta["Resposta Esperada"]
    Medida["Medida de Resposta (Métrica Mensurável)"]
  end

  RNF --> SEIScenario
  SEIScenario --> ADR["Registro Formal em ADR (Architecture Decision Record)"]

Desmistificando Requisitos Funcionais e Não Funcionais

  • Requisitos Funcionais (RF): Descrevem o comportamento observável do software em resposta a entradas de dados e interações humanas. São tipicamente mapeados como histórias de usuário ou casos de uso ("O sistema deve calcular o imposto ICMS sobre o valor da nota fiscal").
  • Requisitos Não Funcionais (RNF / Atributos de Qualidade): Definem características operacionais do sistema: latência, disponibilidade, facilidade de manutenção, conformidade regulatória e resiliência sob estresse.

Especificação de Cenários de Qualidade Mensuráveis

Para evitar debates subjetivos, o Software Engineering Institute (SEI) propõe estruturar os atributos de qualidade através de cenários de 6 partes:

Elemento do Cenário Exemplo Prático de Engenharia
Fonte do Estímulo Clientes autenticados no aplicativo móvel
Estímulo Disparo de 5.000 requisições simultâneas de checkout no primeiro minuto da Black Friday
Ambiente Operação normal de produção com tráfego sob carga de pico
Artefato Microsserviço de Autorização e Gateway de Pagamento
Resposta O sistema enfileira as ordens e autoriza cobranças sem perder dados
Medida de Resposta Latência p99 inferior a 800 ms e taxa de erro 5xx menor que 0,01%

Transformar exigências abstratas em métricas quantificáveis permite que times de engenharia desenhem testes de carga assertivos e dimensionem recursos de infraestrutura com embasamento matemático real.

Explorar este tema no Grafo de Conhecimento