Ir para o conteúdo

NFR Framework

Introdução

  Proposto por Chung, University of Toronto, o NFR Framework é uma maneira de representar de forma sistemática e global os Requisitos Não-Funcionais, com uma abordagem qualitativa e orientada a processo.

  Além disso, essa implementação representa o NFR como um softgoal, os quais são unidades básicas para representar requisitos não-funcionais. Ele possui uma relação de interdependência entre seus softgoals, oferece técnicas de operacionalização e fornece catálogos para inferir possíveis interações.

Objetivo

  Seu objetivo é ajudar os desenvolvedores a implementar soluções customizadas, levando em consideração as características dos campos e sistemas relacionados. Essas características incluem requisitos não funcionais, requisitos funcionais, prioridades e cargas de trabalho. Essas condições determinam a escolha de alternativas de desenvolvimento para um determinado sistema.

Metodologia

  Após levantar os Requisitos Não-Funcionais e entender o NFR Framework, o grupo decidiu utilizar Softgoal Interdependency Graph (SIG) para a implementação do NFR Framework.

Softgoal Interdependency Graph

  O Softgoal Interdependency Graph (SIG) é uma forma de visualização do funcionamento do NFR Framework. Dessa forma, trata-se de um gráfico que registra os posicionamentos da equipe de desenvolvimento acerca dos softgoals e explicita suas interdependências de forma gráfica e concisa1.

Imagem 1: Legenda do NFR.

NFR

Fonte: NFR4ES: Um Catálogo de Requisitos Não-Funcionais para Sistemas Embarcados por Reinaldo Antônio da Silva.

Imagem 2: Tipos de rótulos utilizados pelos Softgoals.

Rot

Fonte: NFR4ES: Um Catálogo de Requisitos Não-Funcionais para Sistemas Embarcados por Reinaldo Antônio da Silva.

Requisitos Não Funcionais

  A tabela 1 apresenta os Requisitos Não Funcionais que foram utilizados para a criação do artefato.

Identificador Requisito Categoria Implementado
ENT08, OB17, BR17 Deve permitir que o usuário consiga realizar qualquer atividade com menos de 5 cliques RNF01 Sim
IN05 Ser compatível com sistemas operacionais Android (7.0 ou mais recente) e IOS (12.4 ou mais recente) RNF02 Sim
IN06 Deve ter acesso facilitado para instalação, sem levar mais de 30 segundos de pesquisa direta para encontrar a aplicação nas lojas de aplicativos RNF03 Sim
IN07 Deve ser de código aberto e gratuito RNF04 Sim
IN11, OB12 Deve garantir a segurança dos dados confidenciais compartilhados durante as reuniões por vídeoconferência RNF05 Sim
IN12 Deve ser estável, tendo no máximo 1 queda de funcionamento por dia RNF06 Sim
IN13 Deve oferecer um desempenho responsivo, se adaptando mediante o tamanho da tela RNF07 Sim
OB16 Deve ser um aplicativo que ocupe menos de 100mb de memória RNF08 Sim
BR12 Deve ser possível ingressar em uma reunião sem a necessidade de um login RNF09 Sim
BR18 Deve possuir um bom contraste entre as cores a fim de aprimorar a legibilidade RNF10 Sim
Tabela 1: Requisitos Não Funcionais Elicitados.
Autor(a): Bruno Henrique

NFR 01 - Desempenho

Figura 1 - SIG Desempenho

SIG Desempenho

Fonte: Bruno Henrique

NFR 02 - Usabilidade

  Os Requisitos utilizados para a confecção da Figura 2 estão presentes na Tabela 1:

  • IN05: Ser compatível com sistemas operacionais Android e IOS
  • IN13: Deve oferecer um desempenho responsivo, se adaptando mediante o tamanho da tela
  • BR18: Deve possuir um bom contraste entre as cores a fim de aprimorar a legibilidade

Figura 2 - SIG Usabilidade

SIG Desempenho

Fonte: Bruno Henrique

NFR 03 - Disponibilidade

  Os Requisitos utilizados para a confecção da Figura 3 estão presentes na Tabela 1:

  • IN06: Deve ter acesso facilitado para instalação, sem levar mais de 30 segundos de pesquisa direta para encontrar a aplicação nas lojas de aplicativos
  • IN12: Deve ser estável, tendo no máximo 1 queda de funcionamento por dia
  • OB16: Deve ser um aplicativo que ocupe menos de 100mb de memória

Figura 3 - SIG Disponibilidadde

SIG Disponibilidade

Fonte: Bruno Henrique

Histórico de Versão

  A tabela 2 representa o histórico de versão do documento.

Versão Data Descrição Autor(es) Revisor(es)
1.0 06/11/2023 Introdução, SIG, Tipos de Softgoal e Interdependências. Bruno Henrique Pedro Siqueira
1.1 07/11/2023 Formatação e finalização do artefato Pedro Siqueira Bruno Henrique
1.2 06/12/2023 Correção do artefato Pedro Siqueira Bruno Henrique
Tabela 6: Histórico de Versão.
Autor(es):Pedro Siqueira

Bibliografia

[1] PAIM, F. R. S., CASTRO, J. F. B. Enhancing Data Warehouse Design with the NFR Framework. Centro de Informática UFPE, Recife, 2019. Disponível em: http://wer.inf.puc-rio.br/WERpapers/artigos/artigos_WER02/paim.pdf. Acesso em: 05/11/2023.

[2] SILVA, Reinaldo Antônio. NFR4ES: Um Catálogo de Requisitos Não-Funcionais para Sistemas Embarcados. Centro de Informática UFPE, Recife, 2019. Disponível em: https://repositorio.ufpe.br/handle/123456789/34150. Acesso em: 05/11/2023.

[3] CHUNG, L., NIXON, B. A., YU, E., MYLOPOULOS, J. Non-functional requirementsin software engineering. Springer Science & Business Media: [S.l.], 2000. v. 5.