Engenharia de Requisitos

De Aulas

Afluentes: Modelos, métodos e técnicas da engenharia de software

Dicas

Quando estamos começando a trabalhar com requisitos, é comum confundir alguns conceitos, então vamos ver algumas considerações sobre Requisitos Funcionais (RF), Requisitos Não-Funcionais (RNF) e Regras de Negócios (RN).

Requisitos Funcionais

Descrevem o que o sistema deve fazer, ou seja, as funcionalidades e comportamentos que o sistema deve oferecer para atender às necessidades dos usuários ou negócios.

Exemplos:

  • O sistema deve permitir que o usuário crie uma conta.
  • O sistema deve enviar uma notificação por e-mail quando uma nova compra for realizada.
  • O sistema deve calcular o valor total de um pedido com base nos itens adicionados.

Propósito: Definir as funcionalidades específicas e interações que o sistema precisa fornecer. São as ações, processos e interações que o sistema deve realizar.

Requisitos Não-Funcionais

Descrevem atributos de qualidade e restrições do sistema, ou seja, como o sistema deve funcionar em termos de desempenho, segurança, usabilidade, disponibilidade, escalabilidade, etc.

Exemplos:

  • O sistema deve ser capaz de processar 1000 transações por minuto.
  • O tempo de resposta de uma página não pode exceder 2 segundos.
  • O sistema deve estar disponível 99,99% do tempo.
  • Dados confidenciais devem ser criptografados em trânsito.

Propósito: Garantir que o sistema atenda às expectativas de qualidade e operação, mas sem definir o que o sistema faz.

Regras de Negócios

São diretrizes, políticas ou lógicas específicas que o sistema deve seguir, normalmente relacionadas ao processo ou à operação da empresa. Elas definem o que o sistema deve fazer dentro de um contexto específico de negócios.

Exemplos:

  • Um cliente só pode obter um desconto de 10% se fizer uma compra acima de R$ 500.
  • O cálculo de impostos segue a legislação vigente para cada estado.
  • Um cliente VIP tem prioridade no atendimento.

Propósito: Definir o comportamento do sistema em conformidade com as políticas e regras da empresa ou do mercado em que a organização atua.

Comparação

Tabela Comparativa (Natureza e Escopo)
Natureza Escopo
Requisitos Funcionais descrevem o que o sistema deve fazer, ou seja, as funcionalidades e serviços que ele oferece aos usuários. focam em ações e comportamentos específicos que o sistema deve executar. Esses requisitos se aplicam a módulos ou funcionalidades específicas.
Requisitos Não Funcionais são qualitativos e afetam atributos do sistema (performance, segurança, etc.). afetam todo o sistema ou uma grande parte dele (e.g., disponibilidade)
Regras de Negócios são determinantes para o comportamento do sistema e como ele implementa a lógica empresarial. geralmente afetam áreas específicas do sistema (e.g., cálculo de desconto para clientes).

Agora vamos ver outra tabela

Outra Tabela Comparativa
Requisitos Funcionais Requisitos Não Funcionais Regras de Negócios
O que define? As funcionalidades e comportamentos do sistema. Os atributos de qualidade e restrições do sistema. As políticas e lógicas que o sistema deve seguir.
Exemplos de perguntas O que o sistema faz? Como o sistema deve funcionar? Quais regras a empresa deve seguir no sistema?
Foco Funcionalidade e comportamento. Qualidade do serviço (desempenho, segurança, usabilidade). Lógica de negócios e conformidade com políticas.
Escopo Funcionalidades específicas. Atributos globais ou gerais do sistema. Políticas e lógicas específicas de um domínio de negócio.
Impacto Define a estrutura e interação do sistema com o usuário. Define como o sistema deve ser eficaz e confiável. Impacta a lógica de como certas funcionalidades são aplicadas.
Exemplo prático O sistema permite login e logout de usuários. O sistema deve responder a requisições em até 2 segundos. Para processar uma compra, o sistema deve aplicar impostos locais.

Resumo

  • Requisitos Funcionais definem o que o sistema faz.
  • Requisitos Não Funcionais definem como o sistema deve fazer, garantindo qualidade e desempenho.
  • Regras de Negócios definem as condições específicas e políticas empresariais que o sistema deve seguir para estar alinhado com os objetivos do negócio.