Skip to content

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SIGEE — Sistema Integrado de Gestão de Equipamentos Escolares

Status

Tecnologias atuais

Python Django Django Templates HTML5 CSS3 Bootstrap JavaScript SQLite PostgreSQL Supabase Vercel Git GitHub Figma

Tecnologias previstas / integrações futuras

BrasilAPI

O SIGEE é uma aplicação web desenvolvida como Projeto Final de Curso (PFC) do Bacharelado em Engenharia de Software da Universidade de Mogi das Cruzes (UMC).

Identificação acadêmica

  • Instituição: Universidade de Mogi das Cruzes — UMC
  • Curso: Bacharelado em Engenharia de Software
  • Turma: 8ºA ES — Matutino
  • Projeto: Projeto Final de Curso — PFC
  • Local e ano: Mogi das Cruzes — SP, 2026
  • Autores: Diego Alves da Silva Fagundes e Pietro Lopes Nozella Sousa
  • Orientador: Pedro Henrique Miho de Souza
  • Coorientador: Alessandro Aparecido da Silva Horas

Problema e contexto

Em instituições de ensino, o registro descentralizado de reservas, localização, manutenção e utilização de equipamentos pode dificultar a consulta da disponibilidade, a rastreabilidade dos itens e a identificação de como esses recursos tecnológicos são empregados nas atividades de ensino. Esse cenário pode gerar conflitos de uso, atrasos nas atividades e dificuldade no acompanhamento da utilização pedagógica.

O SIGEE propõe centralizar o controle dos equipamentos, reservas, movimentações e manutenções, permitindo também relacionar sua utilização a turmas, disciplinas e atividades pedagógicas.

Objetivos

Objetivo geral

Desenvolver uma plataforma web para auxiliar instituições de ensino no gerenciamento de equipamentos tecnológicos, centralizando informações e processos de controle, disponibilidade, reserva, retirada, devolução e manutenção, além de permitir o acompanhamento de sua utilização no contexto educacional.

Objetivos específicos

  1. Organizar as informações dos equipamentos tecnológicos.
  2. Permitir a consulta da situação e da disponibilidade dos equipamentos.
  3. Implementar reserva, retirada e devolução com controle das movimentações.
  4. Registrar e acompanhar manutenções.
  5. Centralizar a gestão e a consulta em uma aplicação web.
  6. Vincular a utilização dos equipamentos a turmas, disciplinas e atividades pedagógicas.

Público e perfis de acesso

  • Administrador: gerencia o sistema, o inventário, os usuários e o painel resumido com indicadores.
  • Operador: registra retiradas, devoluções e demais movimentações autorizadas.
  • Professor: consulta a disponibilidade, realiza reservas e associa a utilização dos equipamentos ao contexto pedagógico.

Não haverá cadastro público. A primeira conta administrativa funcional será configurada por meio de uma conta técnica de Django Superuser; depois disso, usuários autorizados com perfil Administrador poderão cadastrar as demais contas.

Escopo planejado

O escopo final do PFC contempla:

  • autenticação e autorização por perfil;
  • gestão e consulta do inventário;
  • categorias, locais, patrimônio único e situação dos equipamentos;
  • reservas por período com bloqueio de conflitos e indisponibilidade;
  • consulta informativa de feriados nacionais pela BrasilAPI durante a reserva;
  • retirada, devolução e histórico de movimentações;
  • manutenção e histórico de intervenções;
  • vinculação da utilização a turma, disciplina e atividade pedagógica;
  • painel resumido do inventário;
  • indicadores de utilização pedagógica;
  • auditoria básica de acessos e ações relevantes.

Fora do escopo

  • identificação por código de barras ou QR Code;
  • integrações externas além da BrasilAPI e dos serviços de infraestrutura previstos;
  • gerenciamento simultâneo de múltiplas unidades escolares;
  • relatórios avançados;
  • notificações automáticas.

Funcionalidades planejadas

O baseline aprovado contém 11 requisitos funcionais:

  • RF-01: autenticação e autorização por perfil;
  • RF-02: cadastro e gerenciamento do inventário;
  • RF-03: consulta e filtragem de equipamentos;
  • RF-04: reserva de equipamentos;
  • RF-05: retirada e devolução;
  • RF-06: histórico de movimentações;
  • RF-07: gerenciamento de manutenção;
  • RF-08: painel resumido do inventário;
  • RF-09: consulta de feriados nacionais durante a reserva;
  • RF-10: vinculação da utilização ao contexto pedagógico;
  • RF-11: indicadores de utilização pedagógica.

Os critérios de aceite estão em Requisitos funcionais.

Arquitetura e tecnologias

O SIGEE adota uma arquitetura web monolítica com Django e renderização no servidor. As regras de negócio, autenticação, autorização, acesso aos dados e renderização das páginas permanecem integrados na mesma aplicação.

Área Tecnologias e decisões
Interface Django Templates, HTML5, CSS3, Bootstrap 5 e JavaScript pontual
Aplicação Python 3.12, Django 5.2 LTS, Django ORM, Authentication e Groups/Permissions
Banco de dados PostgreSQL por DATABASE_URL e SQLite para desenvolvimento local
Integração externa BrasilAPI para consulta não bloqueante de feriados nacionais
Implantação Vercel com deploy ativo e integração pelo GitHub
Versionamento Git e GitHub, com integração das alterações por Pull Request
Prototipação Figma

Organização do desenvolvimento

  • Método de trabalho: Kanban.
  • Gestão e acompanhamento: Notion e Microsoft Teams.
  • Requisitos: levantamento incremental, com identificação, prioridade e critério de aceite verificável.
  • Modelagem: UML para fluxos e arquitetura, DER para dados e Figma para validação da interface.
  • Validação: execução dos requisitos e fluxos críticos de ponta a ponta, com registro do resultado esperado, resultado obtido e evidências.

O protótipo do SIGEE no Figma integra os materiais de apoio do projeto.

Segurança e privacidade

O planejamento prevê autenticação por sessão, autorização aplicada no servidor, proteção CSRF, validação de entrada, segredos em variáveis de ambiente, comunicação HTTPS no ambiente publicado, minimização dos dados pessoais e auditoria das ações relevantes. Os requisitos completos e os itens ainda candidatos estão em Requisitos não funcionais e de segurança.

Estado atual do desenvolvimento

O código disponível atualmente possui:

  • estrutura inicial em Django;
  • apps inventario e movimentacoes;
  • modelos e migrations de Categoria, Local, Equipamento e Movimentação;
  • telas de listagem e cadastro de equipamentos;
  • RN-01: restrição de unicidade do número patrimonial no formulário, no model e no banco de dados;
  • RN-06: exclusão definitiva sem histórico e inativação com preservação de movimentações;
  • registros desses modelos no Django Admin;
  • configuração por variáveis de ambiente;
  • SQLite para desenvolvimento local e PostgreSQL por DATABASE_URL;
  • 18 testes automatizados para os fluxos já implementados;
  • deploy ativo na Vercel.

Reservas, manutenção, perfis funcionais, contexto pedagógico, indicadores e a integração com a BrasilAPI permanecem como escopo planejado, não como funcionalidades concluídas. As RN-01 e RN-06 ainda aguardam validação com o orientador.

Execução local

py -3.12 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
Copy-Item .env.example .env

No arquivo .env, substitua DJANGO_SECRET_KEY por uma chave local. Para utilizar SQLite, remova ou deixe vazia a variável DATABASE_URL. Para utilizar PostgreSQL, substitua o valor de exemplo por uma conexão válida.

Depois, prepare o banco, crie o usuário técnico do Django Admin e inicie a aplicação:

python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

Documentação versionada

About

Projeto PFC Engenharia de Software

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages