8. Requisitos de Software¶
Esta seção descreve os requisitos necessários para o desenvolvimento do software, divididos em requisitos funcionais e não funcionais, conforme a Atividade 1 (prazo 22/09, 12h) proposta pelo professor George Marsicano Correa.
8.1 Lista de Requisitos Funcionais (RFs)¶
CP1 – Portal institucional e agenda de atividades
-
RF01 – Publicar conteúdo institucional: Permitir a publicação das informações da associação, como histórico, missão, endereço e formas de contato, na área pública.
-
RF02 – Atualizar conteúdo institucional: Permitir a alteração das informações institucionais já publicadas.
-
RF03 – Cadastrar atividade na agenda: Permitir o cadastro de uma atividade com data, horário, local e público a que se destina.
-
RF04 – Atualizar atividade na agenda: Permitir a alteração dos dados de uma atividade já divulgada, incluindo seu cancelamento.
-
RF05 – Consultar agenda de atividades: Permitir a consulta pública às atividades divulgadas, com filtro por período e por tipo de atividade.
-
RF06 – Registrar solicitação de contato: Permitir que um visitante envie uma solicitação de contato à associação, registrando-a para atendimento posterior.
CP2 – Registro de doações de itens
-
RF07 – Cadastrar doador: Permitir o cadastro de pessoas e organizações que doam itens à associação.
-
RF08 – Registrar doação recebida: Permitir o registro da entrada de itens doados, com tipo de item, quantidade, data e doador de origem.
-
RF09 – Registrar destinação de doação: Permitir o registro da saída de itens doados, indicando quantidade, data e a família ou atividade que os recebeu.
-
RF10 – Cadastrar categoria de item: Permitir o cadastro de categorias para classificar os itens doados, como alimentos, roupas, produtos de higiene e material escolar, informando o nome da categoria e a unidade de medida usada na contagem dos itens (unidade, quilo ou pacote).
-
RF11 – Consultar saldo de itens: Permitir a consulta à quantidade atual de cada item doado, por categoria.
-
RF12 – Publicar lista de itens necessários: Permitir a divulgação dos itens de que a associação precisa no momento, na área pública.
CP3 – Cadastro de famílias e participantes
-
RF13 – Cadastrar família: Permitir o cadastro de uma família atendida, com dados de identificação, endereço e contato.
-
RF14 – Atualizar cadastro de família: Permitir a alteração dos dados de uma família já cadastrada.
-
RF15 – Cadastrar participante: Permitir o cadastro de uma pessoa atendida, com dados de identificação e data de nascimento.
-
RF16 – Atualizar cadastro de participante: Permitir a alteração dos dados de um participante já cadastrado.
-
RF17 – Vincular participante a família: Permitir a associação de um participante à família a que pertence, registrando o responsável legal quando houver.
-
RF18 – Consultar cadastro de participantes: Permitir a busca de participantes cadastrados por nome, família e atividade em que estão inscritos.
CP4 – Inscrição em atividades e organização do atendimento
-
RF19 – Cadastrar turma de atividade: Permitir o cadastro de uma turma, com atividade, período de realização, dias de encontro e quantidade de vagas.
-
RF20 – Atualizar turma de atividade: Permitir a alteração dos dados de uma turma em andamento, como período de realização, dias de encontro e quantidade de vagas.
-
RF21 – Encerrar turma de atividade: Permitir o encerramento de uma turma, ao fim de seu período ou por decisão da coordenação, registrando a data de encerramento.
-
RF22 – Inscrever participante em turma: Permitir a inscrição de um participante cadastrado em uma turma.
-
RF23 – Cancelar inscrição de participante: Permitir o cancelamento de uma inscrição, registrando o motivo informado.
-
RF24 – Registrar participante em lista de espera: Permitir o registro de um participante em lista de espera quando a turma não tiver vaga disponível.
-
RF25 – Consultar inscritos da turma: Permitir a consulta à relação de participantes inscritos e em espera em cada turma.
CP5 – Chamada digital e controle de frequência
-
RF26 – Abrir chamada de atividade: Permitir a abertura da chamada de um encontro de turma, listando os participantes inscritos. (Esses termos devem estar no glossário)
-
RF27 – Registrar presença do participante: Permitir o registro da presença de cada participante no encontro em chamada.
-
RF28 – Registrar falta justificada: Permitir o registro de falta com justificativa, informando o motivo apresentado.
-
RF29 – Corrigir registro de frequência: Permitir a correção de um registro de presença ou falta já efetuado, preservando o registro anterior.
-
RF30 – Consultar frequência do participante: Permitir a consulta ao histórico de presenças e faltas de um participante por turma e por período.
-
RF31 – Sinalizar participante: O sistema deve sinalizar automaticamente, a partir dos registros de frequência, o participante que atingir o limite de faltas não justificadas definido pela associação, tornando-o visível à coordenação para contato.
CP6 – Relatórios e indicadores de impacto
-
RF32 – Gerar relatório de doações recebidas: Permitir a geração de relatório dos itens recebidos por período, categoria e doador.
-
RF33 – Gerar relatório de doações distribuídas: Permitir a geração de relatório dos itens destinados por período, categoria e família atendida.
-
RF34 – Gerar relatório de frequência por turma: Permitir a geração de relatório com presenças e faltas registradas em cada turma por período.
-
RF35 – Gerar relatório de famílias atendidas: Permitir a geração de relatório das famílias com atendimento registrado no período consultado.
-
RF36 – Consultar painel de indicadores: Permitir a consulta aos indicadores de atendimento da associação, como famílias atendidas, participantes ativos, itens recebidos e itens distribuídos no período.
-
RF37 – Exportar relatório gerado: Permitir a exportação de um relatório gerado em formato adequado ao envio a apoiadores e a órgãos de prestação de contas.
CP7 – Perfis de acesso e proteção de dados
-
RF38 – Cadastrar usuário do sistema: Permitir o cadastro das pessoas da associação que operarão a solução.
-
RF39 – Atribuir perfil de acesso ao usuário: Permitir a atribuição de perfil a um usuário, delimitando as funcionalidades e os dados a que ele tem acesso.
-
RF40 – Autenticar usuário: Permitir o acesso à área restrita mediante autenticação do usuário cadastrado.
-
RF41 – Registrar consentimento de tratamento de dados pessoais: Permitir o registro do consentimento do titular, ou de seu responsável legal quando o titular for criança ou adolescente, para a coleta e o uso de seus dados pessoais nas finalidades informadas pela associação, com a data do registro.
-
RF42 – Registrar autorização de uso de imagem: Permitir o registro da autorização ou da recusa do titular, ou de seu responsável legal, para o uso de sua imagem em materiais de divulgação da associação, indicando os meios autorizados (site, redes sociais, materiais impressos) e a eventual revogação.
-
RF43 – Registrar solicitação de exclusão de dados: Permitir o registro e o acompanhamento das solicitações de exclusão de dados feitas pelos titulares.
-
RF44 – Consultar histórico de alterações de cadastro: Permitir a consulta ao registro de quem alterou dados pessoais, o que foi alterado e quando.
8.2 Lista de Requisitos Não Funcionais (RNFs)¶
-
RNF01 - Usabilidade (Usability): A solução deve ser operável por voluntárias e voluntários sem formação técnica. O registro de uma doação recebida e a conclusão de uma chamada devem ser alcançáveis em até três passos a partir da tela inicial da área restrita, sem apoio de terceiros.
-
RNF02 - Usabilidade (Usability): A solução deve ser acompanhada de guia de uso em linguagem simples, cobrindo as rotinas de doação, cadastro, inscrição e chamada, validado pela coordenação da associação antes da entrega final.
-
RNF03 - Desempenho (Performance): As telas de consulta devem apresentar resultados em até 3 segundos para 95% das requisições, com até 30 acessos simultâneos em conexão móvel 3G/4G. RNF04 - Desempenho (Performance): O sistema deve suportar 30 acessos simultâneos nos dias de maior movimento, como distribuição de itens e início de turmas, mantendo o tempo de resposta definido no RNF03.
-
RNF05 - Confiabilidade (Reliability): O sistema deve realizar cópia de segurança diária dos dados, com restauração concluída em até 4 horas após uma falha, sem perda dos registros de doações, cadastros e frequência.
-
RNF06 - Confiabilidade (Reliability): O sistema deve apresentar disponibilidade mensal de 99% no intervalo de 8h às 18h, período em que a associação recebe e atende o público.
-
RNF07 - Segurança (Security): Os dados pessoais das famílias e dos participantes devem trafegar sob conexão cifrada e ser acessíveis apenas conforme o perfil do usuário. As credenciais devem ser armazenadas de forma irreversível, e o sistema deve manter trilha de auditoria dos acessos a dados pessoais. Classificação: Sommerville – requisito de produto (segurança).
-
RNF08 - Suportabilidade (Supportability): O sistema deve funcionar corretamente em Google Chrome (versão 90 ou superior), Mozilla Firefox (versão 88 ou superior) e Safari (versão 14 ou superior), além de ser compatível com Android (versão 10 ou superior) e iOS (versão 13 ou superior). RNF09 - Suportabilidade (Supportability): Todas as funcionalidades devem ser operadas em telas a partir de 360 px de largura, sem rolagem horizontal, uma vez que o uso principal ocorre em celular durante o atendimento.
-
RNF10 - Requisitos Físicos: O sistema deve executar as rotinas de chamada e cadastro sem travamentos ou encerramento inesperado em aparelhos com 2 GB de memória.
-
RNF11 - Requisitos de Interface: A comunicação entre a interface e o serviço de dados deve ocorrer por meio de contrato documentado, com trocas realizadas em formato JSON sobre HTTPS.
-
RNF12 - Restrições de Design: O projeto é conduzido sem orçamento e a associação não pode assumir custo de operação. A hospedagem e os serviços de apoio devem implicar custo mensal igual a zero para a associação.
-
RNF13 - Requisito Externo Legislativo (LGPD): O tratamento de dados pessoais deve estar em conformidade com a Lei nº 13.709/2018, com registro de consentimento por titular, finalidade declarada para cada dado coletado e atendimento às solicitações de exclusão no prazo definido pela associação.
-
RNF14 - Requisito Externo Legislativo (Direito de Imagem): A solução deve estar em conformidade com a legislação de proteção ao direito de imagem: Constituição Federal (art. 5º, X), Código Civil (art. 20) e, para crianças e adolescentes, Estatuto da Criança e do Adolescente (arts. 17 e 18). A conformidade é verificada pela existência de autorização registrada (RF41) para cada pessoa identificável nas imagens publicadas pela associação.