Byte-Boost / Nebulon

Projeto de alunos do 3º Semestre de Análise e Desenvolvimento da FATEC

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🌀Nebulon Dashboard

header-nebulon-main


Objetivo | Visão do produto | Cronograma | Backlog/Entregas | Requisitos | Tecnologias | Como usar | Equipe

🎯 Objetivo

O projeto Nebulon tem um duplo objetivo: além de criar uma plataforma inovadora e intuitiva para os usuários explorarem e interpretarem dados complexos de forma eficiente, busca-se também fortalecer as habilidades e conhecimentos técnicos dos membros da equipe. Através do desenvolvimento deste sistema, os integrantes terão a oportunidade de aprimorar suas competências em tecnologias e metodologias específicas, como a programação orientada a objetos e a metodologia Ágil Scrum.
Esse enfoque não apenas visa garantir a entrega bem-sucedida do produto, mas também promover o crescimento profissional contínuo de todos os envolvidos. O projeto se destaca por proporcionar um ambiente de aprendizado colaborativo e desafiador, onde os membros da equipe podem desenvolver expertise técnica e destacar-se em suas respectivas áreas de atuação.

👁️‍🗨️ Visão do Produto

A visão do produto Nebulon é oferecer uma plataforma web inovadora e altamente funcional, permitindo aos usuários explorar e interpretar dados complexos de forma intuitiva e eficiente. Através de uma interface amigável e personalizável, os usuários terão acesso a uma ampla variedade de ferramentas de visualização e análise, adaptadas às suas necessidades específicas. O objetivo é fornecer insights acionáveis para apoiar a tomada de decisões informadas, enquanto garante alta performance, segurança e escalabilidade para lidar com grandes volumes de dados em tempo real. O projeto busca criar uma experiência de usuário excepcional, impulsionada pela inovação tecnológica e pelo compromisso com a excelência em design e funcionalidade.

🗓️ Cronograma

FASE INÍCIO FIM
Kick-off 11/03/2024 15/03/2024
Sprint 1 25/03/2024 14/04/2024
Sprint 2 15/04/2024 05/05/2024
Sprint 3 06/05/2024 26/05/2024
Sprint 4 27/05/2024 16/06/2024

📌 Product Backlog

Product Backlog
Rank Prioridade US Requisito Funcional Estimativa (horas) Sprint Critério de aceitação
1 Alta Eu, enquanto usuário administrador desejo efetuar os inputs dos dados sobre vendas, comissões, clientes e produtos. RF#01 8 1 Como usuário administrador, devo ser capaz de inserir dados de vendas, comissões, clientes e produtos no sistema.
2 Alta Eu, enquanto usuário administrador, preciso armazenar logins e cadastros no sistema RF#02 8 1 Como usuário administrador, devo ser capaz de armazenar informações de login e cadastros no sistema.
3 Alta Eu, enquanto usuário administrador desejo poder editar ou cadastrar faixas de comissão. RF#03 10 1 Como usuário administrador, devo ter a capacidade de editar ou cadastrar faixas de comissão.
4 Média Eu, enquanto usuário desejo poder acessar a plataforma através de login e senha RF#04 8 1 Como usuário, devo poder acessar a plataforma usando login e senha.
5 Alta Eu, enquanto usuário padrão desejo visualizar em um painel informações sobre comissões em diversas categorias existentes. RF#05 6 1 Como usuário padrão, devo poder visualizar informações sobre comissões em várias categorias em um painel.
6 Média Eu, enquanto usuário administrador/padrão desejo poder editar ou cadastrar clientes. RF#06 8 2 Como usuário administrador ou padrão, devo poder editar ou cadastrar clientes.
7 Média Eu, enquanto usuário administrador/padrão desejo poder editar ou cadastrar produtos. RF#07 8 2 Como usuário administrador ou padrão, devo poder editar ou cadastrar produtos.
8 Alta Eu, enquanto usuário desejo que haja diferenças entre permissões de acesso entre usuário padrão e administrador RF#01 5 2 Como usuário, deve haver diferenças de permissões de acesso entre os tipos de usuário padrão e administrador.
9 Média Eu, enquanto usuário administrador desejo ter uma visão ampla sobre os dados de vendas e comissões RF#02 8 2 Como usuário administrador, devo ter uma visão abrangente dos dados de vendas e comissões.
10 Baixa Eu, enquanto usuário administrador desejo cadastrar novos usuários padrão. RF#03 8 2 Como usuário administrador, devo ser capaz de cadastrar novos usuários padrão.
11 Alta Eu, enquanto usuário administrador/vendedor desejo poder ter como página principal o dashboard com a visualização dos gráficos e números importantes relacionados a vendas. RF#01 7 3 A página principal deverá ser o dashboard com informações gráficas sobre vendas e comissões, botões de filtros sobre período e categorias.
12 Alta Eu, enquanto usuário administrador/vendedor desejo poder adicionar novos produtos através de uma interface formulário. RF#02 6 3 A interface de cadastro de novos produtos deverá receber todas as informações pertinentes e necessárias sobre o produto, exibir informações de sucesso ou falha de envio, os dados enviados deverão ser registrados no banco de dados da aplicação.
13 Alta Eu, enquanto usuário administrador/padrão desejo que os dados como CNPJ, CPF e telefone apareçam já formatados nos campos de input conforme for digitado no campo. RF#03 2 3 Todo campo pertinente deverá autocompletar com pontos e traços os dados inseridos pelo usuário quando houver a necessidade, telefone, cnpj e cpf por exemplo.
14 Alta Eu, enquanto usuário administrador desejo que apenas usuários identificados e logados acessem as funcionalidades das páginas. RF#04 3 3 Apenas usuários devidamente logados devem conseguir acessar as funcionalidades de adicionar informações seja por arquivo ou formulário e visualizar as tabelas.
15 Alta Eu, enquanto usuário administrador/vendedor desejo visualizar a somatória das comissões e vendas na base da tabela RF#05 4 3 Deverá ser exibido de maneira alinhada aos números de vendas e comissões das tabelas o valor da somatórias correspondentes
16 Média Eu, enquanto usuário administrador/padrão desejo filtrar as exibições de dados sobre vendas e comissões entre as categorias disponíveis. RF#06 3 3 Os filtros deverão ser funcionais exibindo as informações sobre as categorias e períodos selecionados pelo usuário.
17 Média Eu, enquanto usuário administrador/vendedor desejo poder selecionar entre diferentes modos de visualização e ordem nas tabelas de comissão RF#07 5 3 Na interface de exibição das tabelas o usuário além dos filtros deve ter a opção de ordenar de maneira crescente/decrescente os dados exibidos.
18 Média Eu, enquanto usuário administrador/vendedor desejo que a opção de inserir arquvios esteja integrada aos formulários de cadastro de produtos, clientes, comissões e vendedores. RF#08 3 3 O acesso ao upload de arquivos deve estar integrado ao formulário de cadastro de produtos, clientes, vendedores e comissões.
19 Baixa Eu, enquanto usuário administrador/padrão desejo poder exportar relatórios em formatos variados(XLXS e CSV) RF#09 5 3 Na interface de exibição das tabelas o usuário deverá ter um botão que abra a função de exportar em arquivo (CSV e Excel) a tabela que está sendo exibida.
20 Baixa Eu, enquanto usuário administrador/padrão desejo receber um alerta em tela da confirmação ou não confirmação do que foi executado, envio de arquivo ou cadastro efetuado. RF#10 2 3 Sempre que o usuário submeter um cadastro ou a seleção e envio de um arquivo à plataforma, deverá receber uma notificação na tela do sucesso ou falha da operação.
21 Baixa Eu, enquanto usuário administrador/vendedor desejo poder classificar em ordem crescente ou decrescente os valor exibido das tabelas RF#11 5 3 Nas tabelas os valores devem poder ser classificados em ordem crescente ou decrescente pelo usuário de maneira rápida.
22 Alta Eu, enquanto usuário administrador, desejo poder editar ou deletar cadastros de produtos, clientes, usuários e vendas #RF01 5 4 As funções de editar e excluir os cadastros devem estar funcionando perfeitamente dentro da permissão do usuário administrador.
23 Alta Eu, enquanto usuário administrador/padrão desejo que o sistema seja mais flúido e rápido ao exibir o conteúdo das tabelas. #RF02 5 4 Todas as tabelas devem conter o sistema de paginação diminuindo assim a requisição de informações ao banco de dados, tornando a exibição mais rápida.
24 Alta Eu, enquanto usuário administrador, desejo poder criar novos usuários com as permissões de administrador. #RF03 5 4 No formulário de cadastro de um novo usuário, deverá existir a opção atribuir permissão de administrador ao usuário, através de um checkbox.
25 Alta Eu, enquanto usuário administrador, desejo poder visualizar em uma tabela todos os usuários, administradores e vendedores. #RF04 5 4 Uma interface onde o usuário possa visualizar uma tabela com os vendedores.
26 Média Eu, enquanto usuário administrador/padrão desejo ao escolher o produto e cliente no momento do cadastro da venda, haja uma lista com as opções dos mesmos. #RF05 6 4 Os selects de clientes e produtos devem estar funcionando corretamente para facilitar o momento do cadastro da venda.
27 Média Eu, enquanto usuário, desejo identificar visualmente ao observar a tabela se o cliente se enquadra no quesito primeira compra. #RF06 3 4 Deverá conter uma sinalização visual a respeito do cliente se é a primeira vez que ele aparece no BD.
28 Média Eu, enquanto usuário padrão desejo que ao cadastrar uma venda o meu CPF seja inserido automaticamente. #RF07 5 4 Sempre que o usuário padrão(vendedor) estiver logado e realizar o cadastro de uma venda, seu CPF deverá ser inserido automaticamente no formulário de venda não permitindo que a venda seja direcionada a outra pessoa.
29 Baixa Eu, enquanto usuário padrão, desejo que haja um sistema de incentivo para melhor desempenho nas vendas. #RF08 7 4 O scoreboard deverá exibir quantas pessoas e a pontuação, dos três primeiros colocados, e a sua posição no rank. O sistema de pontuação deve abrir possibilidades para que a empresa possa administrar da melhor forma como utilizará o rank para beneficiar seus melhores vendedores.
Sprint-1 Backlog
Rank Prioridade Requisito Tarefa
1 Alta RF#01 Desenvolvimento de interface gráfica para input de arquivos xlsx.
1 Alta RF#01 Desenvolvimento do backend para input de arquivos xlsx.
1 Alta RF#01 Desenvolvimento do banco de dados para armazenamento dos dados recebidos por xlsx.
1 Alta RF#01 Integração entre interface gráfica, backend e banco de dados.
2 Alta RF#02 Criação de pré cadastros de usuário, clientes e vendedores.
2 Alta RF#02 Integração dos dados com banco de dados.
3 Alta RF#03 Desenvolvimento da interface gráfica para edição das faixas de comissão
3 Alta RF#03 Desenvolvimento da lógica para edição das faixas de comissão
3 Alta RF#03 Integração da lógica com interface gráfica.
4 Média RF#04 Desenvolvimento de interface gráfica para acesso à plataforma.
4 Média RF#04 Desenvolvimento da lógica para acessar a plataforma através de login e senha.
4 Média RF#04 Integração da interface gráfica com o backend para acesso à plataforma.
5 Alta RF#05 Desenvolvimento da interface gráfica para visualização e navegação.
5 Alta RF#05 Desenvolvimento do backend para visualização e navegação no painel.
5 Alta RF#05 Integração da lógica com interface gráfica.
Sprint-2 Backlog
Rank Prioridade Requisito Tarefa
1 Alta RF#01 Desenvolvimento do sistema de acesso do vendedor e suas permissões.
2 Alta RF#02 Desenvolvimento do sistema de acesso do admin e suas permissões.
3 Média RNF#01 Planejamento do layout dos gráficos.
4 Alta RF#03 Implementação dos gráficos.
5 Alta RF#04 Filtros de visualização das tabelas.
6 Alta RF#05 Interface para cadastro de novos clientes.
7 Média RF#06 Interface para cadastro de novas vendas.
8 Baixa RNF#02 Alteração da nomenclatura lógica referente a produtos/clientes novos e existentes.
Sprint-3 Backlog
Rank Prioridade Requisito Tarefa
1 Alta RF#01 Redesenhar a atual página home transformando-a numa página inicial chamada dashboard com os gráficos e outras informações pertinentes.
2 Alta RF#02 Criar de um formulário para inserção de novos produtos através de um formulário integrado com o mecanismo de upload de arquivo em excel.
3 Alta RF#03 Implementar mecanismo de mascaramento automático dos dados inseridos pelo usuário, já sendo exibidos em tela formatados nos padrões pertinentes e limitando os campos a quantidade de caracteres.
4 Alta RF#04 Implementar o sistema de validação de usuário
5 Alta RF#05 Implementar a somatória das colunas de comissões e vendas totais, alinhar os valores de acordo com as respectivas colunas.
6 Média RF#06 Aplicar os filtros de exibição em todas as tabelas.
7 Média RF#08 Integração entre os componentes de upload e os formulários de cadastro de clientes, produtos, usuários e comissões.
8 Média RNF#01 Alinhar os gráficos de maneira ordenada e organizada no dashboard.
9 Média RNF#02 Aplicar títulos às páginas para facilitar a localização do usuário dentro das diversas páginas existentes na plataforma.
10 Média RNF#03 Alinhar todos os dados de valores e pontuar os dados de acordo com o padrão de valor monetário Unidade Real de Valor. (R$)
11 Média RNF#04 Alinhar todos os ícones e textos da sidebar à esquerda.
12 Baixa RF#09 Implementar mecanismo de export de planilhas para CSV e XLXS.
13 Baixa RF#10 Implementar modais de alerta de sucesso, falha e seleção de arquivo em todos os ambientes que se fazem necessário, visando a experiência do usuário.
14 Baixa RF#11 Implementar sistema de exibição por classificação crescente/decrescente nas tabelas.
15 Baixa RF#12 Implementar o sistema de arrastar arquivo para área de upload.
16 Baixa RNF#05 Remover o fundo escuro de todas as tabelas.
Sprint-4 Backlog
Rank Prioridade Requisito Tarefa
1 Alta #RF01 Implementar CRUD completo nas tabelas de produto, cliente, vendas e vendedores.
2 Alta #RF02 Implementar sistema de paginação nas tabelas
3 Alta #RF03 Implementar sistema de atribuíção da função administrador para um novo cadastro de usuário.
4 Alta #RF04 Desenvolver uma interface com a tabela dos vendedores e usuários administradores.
5 Média #RF05 Implementar selects no cadastro de venda.
6 Média #RF06 Implementar uma flag na tabela de vendas e de clientes
7 Média #RF07 Implementar sistema de inserção automática do CPF do vendedor que está logado, no formulário de cadastro de venda.
8 Baixa #RF08 Implementar um sistema de pontuação baseado na relevância das categorias de vendas pré-definidas e exibí-lo num scoreboard.
9 Alta #RNF01 Verificar e alterar os DATE types no backend
10 Alta #RNF02 Registrar pontuação dos vendedores
11 Alta #RNF03 Melhorias e correções nos filtros do dashboard
12 Alta #RNF04 Melhorias e correções no PieChart
13 Média #RNF05 Alteração de nomenclaturas do sistema
14 Baixa #RNF06 Remake no frontend
15 Baixa #RNF07 Refatoração do código na sua totalidade

🎥 Video Apresentação

Sprints

Sprint 1

sprint1gif

Sprint 2

sprint2gif

Sprint 3

Sprint 4

🔎 Requisitos

Funcionais:
  • Desenvolver uma interface para upload de vendas.
  • Calcular as comissões dos vendedores com base nos diferentes tipos de venda e nos planos de remuneração associados.
  • Desenvolver um dashboard de comissões de vendas que apresente as informações de forma clara e intuitiva.
  • Desenvolvimento de funcionalidades de filtragem e segmentação para os gráficos, permitindo aos usuários explorar os dados de comissões de vendas com mais detalhes.
  • Implementação de gráficos e visualizações de dados para análise de desempenho de vendas.
Não funcionais:
  • Documentação API – Application Programming Interface.
  • Modelagem de Banco de Dados ou Arquivo de dados.
  • Garantia de desempenho e escalabilidade do sistema, mesmo com grandes volumes de dados de vendas e usuários simultâneos.
  • Interface responsiva e amigável para facilitar o acesso e a utilização do dashboard em diferentes dispositivos e tamanhos de tela.

🖥️Tecnologias:


javascript chartjs axios
typescript

🛠️ Ferramentas:

Como utilizar

Requisitos :

  • Node.js v20.6.0 ou superior
  • MySQL 8.0
  • Git

Preparando o projeto

  1. Abra o cmd na pasta aonde deseja instalar o projeto
  2. Execute o comando
git clone https://github.com/Byte-Boost/Nebulon
  1. Entre no diretório Nebulon\Backend_Nebulon
  2. Crie um arquivo chamado ".env"
  3. Abra este arquivo com seu editor de texto de preferência, e preencha o mesmo seguindo o modelo ".env.example", presente no mesmo diretório.
  4. Repita os passos 4 e 5 no diretório Nebulon\Frontend_Nebulon

Executando o projeto

Backend

  1. Certifique-se que seu serviço MySQL esteja rodando
  2. Abra o cmd na pasta Nebulon\Backend_nebulon
  3. Rode os comandos:
npm install
npm run start

Frontend

  1. Abra o cmd na pasta Nebulon\Frontend_Nebulon
  2. Rode os comandos:
npm install
npm run dev

👥 Equipe:

Static Badge - Diego Vitvicki :

Static Badge - Jaqueline Silva :

Static Badge - Jhuan Araújo :

Static Badge - Marcos Antonio :

Static Badge - Markos Nunes :

Static Badge - Vinícius Forcato :

Static Badge - Arthur Silva:

About

Projeto de alunos do 3º Semestre de Análise e Desenvolvimento da FATEC


Languages

Language:PowerShell 55.5%Language:Shell 44.5%