Skip to main content

Aurora - Requisitos

Requisitos Funcionais


  • Servidor:

    • Login com credenciais do Solar

    • Seleciona o Evento

    • Pesquisa pelo assistido(a) (Solar)

      • Caso não encontre, pode o registrar (Solar)

    • Registra o atendimento

    • Comprovantes de voluntário *


  • Admin

    • Login com credenciais prórpias do Aurora

    • Acesso ao painel de Admin

    • Criação de eventos

      • O admin cria uma “Categoria” para o evento. Ex: Dia do Cidadão, Dia da Mulher

      • A categoria vai ser cadastrada e terá “Presets”, os presets serão qualificações pré-definidas, que podem ou não ser usadas em um cadastro de novo evento, servindo como base.

      • Após a criação da categoria, o evento poderá ser criado, usando da categoria como base, evitando o recadastro de serviços.

      • O evento contém:

        • Categoria

        • Data

        • Qualificações

    • Estátisticas

      • O admin deve ser capaz de visualizar estatisticas por evento.

      • Também deverá ser possível extrair as estatisticas para um PowerBI, por isso a aplicação deverá usar SQL Server como banco, para facilitar esse processo.

      • O admin seleciona um evento já cadastrado

        • Cai no painel de admin, onde será possível visualizar as estatisticas de cada evento.

        • Deverá ser possível ver:

          • Serviços associados

          • Ver atendimentos

          • Indicadores

            • Servidores

            • Serviços

            • Atendimentos gerados no Solar

            • Data do evento

          • Estatisticas detalhadas

            • Pessoas atendidas

            • Parceiros

            • Média de Serviços por pessoa

            • Atendimentos

            • Voluntários

          • Alguns serviços podem precisar de estatísticas diferentes das comuns a outros eventos, uma solução pode ser o sistema disponibilizar alguns campos que podem ser adicionados ou removidos das estatisticas, por exempĺo:

            • Cor da Pele

            • Lanches Entregues.

          • Esses campos devem estar prontos no sistema, e devem funcionar de maneira modular, permitindo com que sejam selecionados ou não, sem prejuízos a outros eventos.

    • Logs do sistema, toda operação deverá gerar um log que seja rastreável, assim podendo ser filtrado, pesquisado e etc.

    • O log deve conter:

      • Rash (Identificador)

      • Ação

      • Usuário

      • Data e Hora



Requisitos Não Funcionais


  • Design Moderno, inspirado no Liquid Glass e Frosted Glass.

  • O Banco de Dados deverá ser SQL Server, para facilitar a integração com o PowerBI.

  • Aplicação deverá ser modular, evitando configurações hardcoded

  • A aplicação deverá conter ampla segurança, portanto:

    • Operações devem ser realizadas na API, mesmo chamadas que sejam chamadas diretas ao solar.

    • Tokens JWT com assinatura

    • Verificação de permissões

    • A comunicação deverá ser feita por HTTPS, ao menos da comunicação interna do Aurora.

    • Rate Limiting, para evitar ataques de força bruta.

    • CORS restrito e bem configurado

    • Proteção CSRF

    • Proteção XSS

    • Headers de segurança (HelmetJS)

    • Não deve ser feito o armazenamento de qualquer informação sensível em localStorage/sessionStorage

    • Cookies apenas HTTPOnly, com flag secure (PROD)

    • Em produção, não expor portas do banco ou api, tudo ser feito pelo traefik ou nginx.

    • Travas de carregamento para evitar spam de requests.

       

  • CI/CD para checagem automática de erros e segurança

  • Testes unitários, especialmente em funções críticas para o sistema.

  • Monitoramento de dependencias para garantir que não existam vulnerabilidades em bibliotecas de terceiros.

  • Eslint e Prettier para melhorar o padrão de código.

  • Tecnologias a serem usadas:

    • ReactJS com Vite e TypeScript

      • TailwindCSS

      • HeroUI

    • NodeJS com Express e TypeScript