O que é requisito não funcional em engenharia de software?

O que é requisito não funcional?

Requisito não funcional (NFR) especifica o atributo de qualidade de um sistema de software. Eles julgam o sistema de software com base na capacidade de resposta, usabilidade, segurança, portabilidade e outros padrões não funcionais que são críticos para o sucesso do sistema de software. Exemplo de requisito não funcional, “Quão rápido o site carrega?” O não cumprimento dos requisitos não funcionais pode resultar em sistemas que não satisfazem as necessidades do usuário.

Requisitos não funcionais em Engenharia de Software permitem que você imponha restrições ou restrições no design do sistema em vários backlogs ágeis. Por exemplo, o site deve carregar em 3 segundos quando o número de usuários simultâneos for > 10000. DescriptA seleção de requisitos não funcionais é tão crítica quanto a de um requisito funcional.

Tipos de requisitos não funcionais

Abaixo estão os principais tipos de requisitos não funcionais:

Tipos de requisitos não funcionais
Tipos de requisitos não funcionais
  • Requisito de usabilidade
  • Requisito de manutenção
  • Requisito de capacidade de gerenciamento
  • Requisito de recuperabilidade
  • Requisito de segurança
  • Data Integrity requerimento
  • Requisito de capacidade
  • Requisito de disponibilidade
  • Requisito de escalabilidade
  • Requisito de interoperabilidade
  • Requisito de confiabilidade
  • Requisito de manutenção
  • Requisito regulatório
  • Requisito ambiental

Exemplos de requisitos não funcionais

Aqui estão alguns exemplos de requisitos não funcionais:

  1. Os usuários devem alterar a senha de login atribuída inicialmente imediatamente após o primeiro login bem-sucedido. Além disso, a inicial nunca deve ser reutilizada.
  2. Os funcionários nunca tiveram permissão para atualizar suas informações salariais. Tal tentativa deverá ser reportada ao administrador de segurança.
  3. Cada tentativa malsucedida de um usuário de acessar um item de dados será registrada em uma trilha de auditoria.
  4. Um site deve ser capaz de lidar com 20 milhões de usuários, afetando seu desempenho
  5. O software deve ser portátil. Portanto, mudar de um sistema operacional para outro não cria nenhum problema.
  6. A privacidade da informação, a exportação de tecnologias restritas, os direitos de propriedade intelectual, etc. devem ser auditados.

Requisitos funcionais versus não funcionais

A seguir está a principal diferença entre requisitos funcionais e não funcionais:

parâmetros Requisito funcional Requisito não funcional
O que é ? Verbo Atributos
Exigência É obrigatório Não é obrigatório
Tipo de captura Ele é capturado no caso de uso. É capturado como um atributo de qualidade.
Resultado final característica do produto Propriedades do produto
Capturar Fácil de capturar Difícil de capturar
Objetivo Ajuda a verificar a funcionalidade do software. Ajuda você a verificar o desempenho do software.
Área de foco Concentre-se nos requisitos do usuário Concentra-se na expectativa do usuário.
Documentação Descreva o que o produto faz Descreve como o produto funciona
Tipo de Teste Teste funcional como sistema, integração, ponta a ponta, teste de API, etc. Testes não funcionais como desempenho, estresse, usabilidade, testes de segurança, etc.
Execução de Teste A execução do teste é feita antes do teste não funcional. Após o teste funcional
Informação do produto características do produto Propriedades do produto

Vantagens do requisito não funcional

Benefícios/prós de Teste não funcional como:

  • Os requisitos não funcionais garantem que o sistema de software siga as regras legais e de conformidade.
  • Eles garantem a confiabilidade, disponibilidade e desempenho do sistema de software
  • Eles garantem uma boa experiência do usuário e facilidade de operação do software.
  • Eles ajudam na formulação da política de segurança do sistema de software.

Desvantagens do requisito não funcional

Contras/desvantagens do requisito não funcional são:

  • Nenhum requisito funcional pode afetar os vários subsistemas de software de alto nível
  • Eles exigem consideração especial durante a fase de arquitetura de software/projeto de alto nível, o que aumenta os custos.
  • Sua implementação geralmente não é mapeada para o subsistema de software específico,
  • É difícil modificar itens não funcionais depois de passar pela fase de arquitetura.

APRENDIZAGEM CHAVE

  • NFR significa: Um requisito não funcional define o atributo de desempenho de um sistema de software.
  • Quais são os tipos de comportamento não funcional: Escalabilidade Capacidade, Disponibilidade, Confiabilidade, Recuperabilidade, Dados Integrity, etc.
  • Um dos exemplos de NFR é que os funcionários nunca têm permissão para atualizar suas informações salariais. Tal tentativa deverá ser reportada ao administrador de segurança.
  • O Requisito Funcional é um verbo, enquanto o Requisito Não Funcional é um atributo
  • A vantagem do requisito não funcional é que ele ajuda a garantir uma boa experiência do usuário e facilidade de operação do software
  • A maior desvantagem dos requisitos não funcionais é que eles podem afetar os vários subsistemas de software de alto nível.