Membros:
🛠 Tecnologias Utilizadas:
- Linguagens:
- Frontend:
- Backend:
- Ferramentas:
Projeto Integrador - Modelo
GoRoutes
Um modelo para o desenvolvimento do Projeto Integrador do Curso de Técnico em Desenvolvimento de Sistemas para a Internet Integrado ao Ensino Médio do IFC - Campus Araquari.
Após dialogarmos com administradores de diversas empresas de transporte escolar, identificamos que o gerenciamento manual das rotas frequentemente se revela um processo moroso e ineficiente, especialmente quando há um grande número de alunos a serem atendidos. Diante desse cenário, nosso sistema foi concebido com o propósito de otimizar essa gestão, oferecendo um serviço automatizado de planejamento de rotas. A solução permite que a empresa insira os endereços dos alunos, bem como os pontos de partida e destino, para então calcular a rota mais eficiente. Além disso, o sistema realiza a distribuição estratégica dos alunos entre diferentes veículos, agrupando aqueles cujos trajetos apresentam maior similaridade.
Professor: Marco André Mendes
🛠 Links:
- 🚀 BackEnd: GoRoutes_BackEnd
- 🎨 FrontEnd: GoRoutes_FrontEnd
- 📄 Docs: Docs_GoRoutes
- 🎨 ✏️ Figma: GoRoutes Design
1. Desenvolvimento:
Serviço de Rotas
Gerenciamento de Rotas Sobre Transporte de Passageiros
A empresa escolhida foi a Sul Turismo, uma empresa de tranporte de passageiros tanto para turismo quanto transporte escolar; O aplicativo em si foca em algumas coisa, como pontos podemos citar, o rastreamento por parte da empresa e clientes de seu tranporte, ou o transporte de algum familiar, uma boa comunicação, avisar aos motoristas para onde quer ir, avisar os horarios que ele quer retornar ou ir, e um gerenciamento das rotas por parte dos motoristas;
2. Situação Problema:
- A empresa escolhida foi a Sul Turismo, uma empresa de transportes escolares e para turismo também, o dono é o
Seu Antonio, e de funcinários temos vários, como motoristas podemos citar [Edimar, Alexander, Borba, Marcos, Edivaldo] entre outros; - A empresa em si nao tem casos e situações complexas. Um cliente, contacta a empresa com o fim de saber valores, planos, portabilidade, e tudo relacionado a isso. A empresa responde e caso seja favorável à ambos, um contrato é fechado, seja por um número
Xde memes por um valorN. Durante o fechamento do contrato é acertado lugar onde o cliente mora, onde deseja ser levado, hórarios, e possiveis eventos que mudem isto, e possiveis outros locais para ser pego ou deixado; - A principal funcao é trazer acessiblidade e facilidade para ambas as partes, tanto para empresa quanto para o cliente, onde a empresa terá uma interface facil para gerenciar, criar, ver rotas e clientes, e para o cliente poder dizer à empresa quando voltará, onde desce, e etc, dados relacionados as rotas diarias.
3. Descrição da proposta:
Alguns pontos importantes a se destacar são:
- Os dois principais focos são 3 funcionalidades,
- Permitir os motoristas selecionar os alunos que irão fazer parte da rota e com base nisso, o sistema traça o melhor caminho baseado na distância entre os pontos de entrega.
- Permitir os clientes ver onde seu transporte está e quanto tempo demora à chegar.
- Permitir com que os clientes facilmente informem se voltarão na remessa de meio dia ou da cinco horas.
- Haverá 3 tipos de usuarios, os motoristas, os clientes, e caso o cliente em si for de menor, haverá um cadastro a mais de seu responsavel como um login;
| Tipo de Usuário | Função |
|---|---|
| Motorista | Gerenciar veículos, criar e visualizar rotas, além de monitorar o transporte em tempo real. |
| Cliente | Informar horários de retorno, visualizar localização do transporte e comunicar-se com a empresa. |
| Responsável | Cadastrar informações do cliente menor de idade e acompanhar o transporte em tempo real. |
4. Modelagem de Dados

5. Regras de Negócio
RN01 – Acesso Centralizado
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: Nenhuma
Descrição:
O sistema deverá centralizar o atendimento e a gestão de diferentes perfis de usuários: administradores, motoristas, alunos e responsáveis. Cada tipo de usuário terá acesso somente às funcionalidades autorizadas conforme seu nível de permissão.
RN01.1 – Controle de Acesso
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: RN01
Descrição:
O sistema deverá garantir que apenas usuários autenticados e autorizados possam acessar funcionalidades específicas, respeitando os níveis de permissão definidos por perfil.
RN02 – Automatização de Rotas
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: Nenhuma
Descrição:
O sistema deverá automatizar os processos logísticos de transporte escolar, incluindo a recomendação e o ajuste inteligente de rotas.
RN02.1 – Cálculo de Rota Otimizada
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: RN02
Descrição:
O sistema deverá calcular automaticamente a melhor rota com base nos endereços dos alunos, priorizando eficiência de tempo, segurança e economia de combustível.
RN03 – Segurança e Conformidade
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: Nenhuma
Descrição:
O sistema deverá assegurar a proteção das informações dos usuários e o cumprimento das normas de segurança e integridade definidas para o transporte.
RN03.1 – Restrição de Edição
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: RN03
Descrição:
Somente usuários com perfil de administrador poderão editar dados considerados críticos, como alterações em rotas, veículos e cadastro de usuários.
RN04 – Expansão e Auditoria
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: Nenhuma
Descrição:
O sistema deverá estar preparado para expansão contínua, suportando aumento de usuários, rotas e registros. Além disso, deverá possuir mecanismos de auditoria detalhada das operações realizadas.
RN04.1 – Registro de Logs
- Data de criação: 03/04/2025
- Última alteração: 05/04/2025
- Autor(es): Pedro Henrique, Jonatas Peraza
- Versão: 1.0
- Dependências: RN04
Descrição:
O sistema deverá manter um log completo e seguro de todas as ações realizadas por qualquer usuário, incluindo edições, exclusões, autenticações e movimentações, para fins de rastreamento e auditoria.
5. Requisitos Funcionais
Entradas
R.F. 01 - Gerenciamento de Alunos
- Descrição: Permite o cadastro, edição, exclusão e visualização de alunos, incluindo dados pessoais e responsáveis.
- Dados necessários: nome, data de nascimento, CPF, foto, endereço, endereço secundário, nomes dos responsáveis, telefone, email.
- Usuários: administradores.
R.F. 02 - Gerenciamento de Rotas
- Descrição: Permite o cadastro, edição, exclusão e visualização de rotas, com origem, destino, paradas e horários.
- Dados necessários: pontos de partida e chegada, paradas intermediárias, horários previstos.
- Usuários: administradores.
R.F. 03 - Gerenciamento de Motoristas
- Descrição: Permite o cadastro, edição, exclusão e visualização de motoristas com seus dados pessoais e histórico de rotas.
- Dados necessários: nome, foto, CPF, CNH, telefone, email, rotas atribuídas.
- Usuários: administradores.
R.F. 04 - Gerenciamento de Veículos
- Descrição: Permite o cadastro, edição, exclusão e visualização de veículos.
- Dados necessários: placa, modelo, capacidade de passageiros, status.
- Usuários: administradores.
R.F. 05 - Gerenciamento de Responsáveis
- Descrição: Permite o cadastro, edição, exclusão e vinculação de responsáveis a alunos, com definição de permissões.
- Dados necessários: nome, foto, CPF, telefone, email, aluno vinculado, permissões de acesso.
- Usuários: administradores.
Processos
R.F. 06 - Registro de Logs
- Descrição: Registra logs de ações dos usuários como edições, exclusões e acessos.
- Dados necessários: usuário, data/hora, tipo de ação, dados afetados.
- Usuários: todos os níveis (apenas administradores têm acesso aos logs).
R.F. 07 - Recomendação Automática de Rota
- Descrição: Recomenda automaticamente a melhor rota ao cadastrar um novo aluno.
- Dados necessários: endereço do aluno, rotas existentes, geolocalização.
- Usuários: administradores.
R.F. 08 - Recalcular Rotas Automaticamente
- Descrição: Recalcula rotas automaticamente quando houver atualizações relevantes. (Opcional)
- Dados necessários: alterações no cadastro de alunos, veículos ou rotas.
- Usuários: administradores.
R.F. 09 - Rotas de Backup
- Descrição: Permite definir rotas de backup para uso em situações emergenciais.
- Dados necessários: rotas alternativas, condições de ativação.
- Usuários: administradores.
R.F. 10 - Rastreamento por GPS
- Descrição: Permite rastreamento em tempo real dos veículos via GPS. (Opcional)
- Dados necessários: localização atual, identificação do veículo.
- Usuários: administradores, responsáveis, alunos.
R.F. 11 - Previsão de Chegada (ETA)
- Descrição: Exibe previsão de chegada dos veículos para alunos e responsáveis.
- Dados necessários: localização atual, velocidade média, destino.
- Usuários: administradores, responsáveis, alunos.
R.F. 12 - Registro de Presença e Retorno Antecipado
- Descrição: Permite registrar presença dos alunos e solicitar retorno antecipado.
- Dados necessários: presença, hora de embarque/desembarque, motivo do retorno.
- Usuários: motoristas (registro), responsáveis e alunos (solicitação).
R.F. 13 - Desembarque Alternativo
- Descrição: Permite solicitação de desembarque em local alternativo com autorização do responsável.
- Dados necessários: localização alternativa, responsável autorizado, horário.
- Usuários: responsáveis, administradores.
Saídas
R.F. 14 - Notificações Automatizadas
- Descrição: Envia notificações automáticas para responsáveis sobre mudanças de rota, atrasos ou emergências.
- Dados necessários: tipo de evento, mensagem personalizada, horário.
- Usuários: responsáveis.
R.F. 15 - Histórico de Rotas e Eventos
- Descrição: Mantém registro completo das rotas realizadas e eventos ocorridos.
- Dados necessários: datas, horários, eventos registrados, presença.
- Usuários: administradores.
R.F. 16 - Identificação do Veículo
- Descrição: Exibe foto e número do veículo para facilitar a identificação.
- Dados necessários: foto do veículo, número identificador, placa, rota vinculada.
- Usuários: responsáveis, alunos.
R.F. 17 - Restrição de Edição por Motoristas
- Descrição: Impede motoristas de editarem informações de rotas, alunos ou veículos.
- Dados necessários: permissões de acesso.
- Usuários: motoristas.
6. Requisitos Não Funcionais
R.N.F. 01 - Armazenamento de histórico
O sistema deverá armazenar com segurança o histórico completo de rotas e eventos para fins de auditoria.
R.N.F. 02 - Redundância de dados
O sistema deverá contar com mecanismos de redundância para garantir a disponibilidade e a integridade dos dados em caso de falhas.
R.N.F. 03 - Interface do usuário
A interface deverá ser amigável, responsiva e intuitiva, para todos os perfis de usuários.
R.N.F. 04 - Mapa interativo
Deve haver um mapa interativo em tempo real com rotas, paradas e localização dos veículos.
R.N.F. 05 - Integração com geolocalização
Integração com APIs de geolocalização como Google Maps e Mapbox para rastreamento e cálculo de rotas.
R.N.F. 06 - Múltiplos canais de notificação
Notificações devem poder ser enviadas via app, e-mail e SMS, de forma automatizada.
R.N.F. 07 - Banco de dados
O banco de dados será relacional, preferencialmente PostgreSQL ou MySQL, para garantir desempenho e consistência.
R.N.F. 08 - Atualização em tempo real
As atualizações do sistema devem ocorrer em tempo real, refletindo imediatamente para os usuários.
R.N.F. 09 - Escalabilidade
O sistema deverá ser escalável para suportar crescimento de usuários e dados.
R.N.F. 10 - Aplicativo móvel
Deverá existir um app móvel nativo ou PWA compatível com Android e iOS.
