IFSP Campus Itapetininga
SIGHA.IF
Acessar o sistema →
🎓 IFSP Campus Itapetininga

Geração de horários acadêmicos
sem complicação.

O SIGHA.IF automatiza todo o ciclo de pré-alocação semestral — da coleta de disponibilidades dos professores até a publicação da grade final — com algoritmo inteligente, interface simples e gestão colaborativa.

66
Professores cadastrados no campus
222
Disciplinas mapeadas
15
Cursos configurados
4
Perfis de acesso com permissões distintas

Um sistema completo para a gestão acadêmica semestral

Do primeiro rascunho até a grade publicada, o SIGHA.IF apoia cada etapa do processo com ferramentas específicas para cada responsável.

📋

Coleta digital de disponibilidades

Professores preenchem a FPA (Ficha de Preferência de Alocação) diretamente no sistema, indicando os horários disponíveis e as disciplinas de interesse.

🔗

Atribuição colaborativa

Coordenadores vinculam professores e salas às disciplinas do seu curso com visibilidade completa das disponibilidades e cargas horárias.

⚙️

Algoritmo de geração automática

Motor inteligente em Python gera a grade respeitando restrições de sala, professor e turno, com otimização por hill climbing para minimizar conflitos.

🗓️

Grade publicada e editável

A direção revisa, edita manualmente e resolve conflitos antes de publicar a grade final visível a todos os usuários do campus.

📊

Painéis e relatórios por perfil

Cada usuário acessa apenas as informações relevantes ao seu papel: dashboard completo para gestores, meu horário personalizado para professores.

🔒

Segurança com autenticação JWT

Login seguro com tokens de acesso e refresh, controle de acesso por categoria e proteção de dados em todas as operações.

Para quem é o SIGHA.IF?

Quatro perfis com permissões específicas garantem que cada responsável acesse exatamente o que precisa.

🛡️
Administrador
TI / Gestão técnica do sistema
  • Gerenciar contas de usuários, categorias e senhas
  • Cadastrar professores, cursos, disciplinas e espaços físicos
  • Configurar slots de horário e semestres letivos
  • Acesso completo a todos os recursos do sistema
  • Executar o algoritmo de geração de horários
🏛️
Direção
Gestão pedagógica e institucional
  • Criar e controlar os períodos de oferta semestrais
  • Avançar o status do ciclo (Rascunho → FPA → Coord → Publicado)
  • Executar o algoritmo e revisar a grade gerada
  • Editar manualmente a grade e resolver conflitos
  • Aprovar ou rejeitar sugestões dos coordenadores
📌
Coordenador
Coordenação de curso
  • Atribuir professores e salas às disciplinas do curso
  • Analisar a FPA dos docentes vinculados ao curso
  • Visualizar a grade completa do seu curso
  • Propor sugestões de alteração de horário à direção
  • Preencher a própria FPA (se for também professor)
👨‍🏫
Professor
Docentes do campus
  • Preencher a FPA: marcar disponibilidade por dia e horário
  • Indicar interesse em disciplinas para o próximo semestre
  • Visualizar o próprio horário após publicação da grade
  • Consultar a grade completa do campus e por docente

Como a grade é gerada?

Cinco etapas bem definidas levam do início do semestre até a grade publicada para todo o campus.

🏛️ ETAPA 1 Direção cria período Define semestre, disciplinas ofertadas e abre o ciclo RASCUNHO 👨‍🏫 ETAPA 2 Professores preenchem FPA Disponibilidade por dia/horário e interesse em disciplinas ABERTO FPA 📌 ETAPA 3 Coordenadores atribuem aulas Vinculam professor e sala a cada disciplina do curso ABERTO COORD ⚙️ ETAPA 4 Algoritmo gera a grade Greedy + hill climbing resolve conflitos e otimiza alocação PROCESSANDO ETAPA 5 Grade publicada Visível a todos os usuários do campus PUBLICADO ↩ A direção pode retornar ao Rascunho a partir de qualquer etapa para correções.

Tudo o que você precisa, sem complicação

26 telas especializadas projetadas para que cada usuário realize sua tarefa de forma rápida e intuitiva.

📅

Grade visual de horários

Visualize toda a grade do semestre em formato de tabela por dia e turno, com filtros por curso, turma e professor.

🖊️

Editor de grade interativo

Arraste e reposicione aulas na grade manualmente após a geração automática, com validação de conflitos em tempo real.

📋

Ficha de Preferência de Alocação

Interface em grade semanal onde o professor marca sua disponibilidade por slot — com três níveis: disponível, preferido e indisponível.

⚠️

Painel de conflitos

Lista todos os conflitos detectados na grade (professor duplo, sala dupla, carga excedida) com resolução guiada.

💡

Sugestões de coordenadores

Coordenadores propõem trocas de horário que ficam pendentes até aprovação ou rejeição da direção.

👤

Meu horário

Professores visualizam a própria grade semanal, com nome do curso, disciplina, sala e horário de cada aula atribuída.

🏫

Grade curricular dos cursos

Visualize a estrutura curricular de cada curso com cargas horárias e disciplinas por período.

📬

Convites por e-mail

Novos usuários recebem convite por e-mail para definir a própria senha no primeiro acesso.

📖

Documentação da API integrada

Interface Swagger disponível em /swagger-ui.html com todos os endpoints documentados e testáveis.

Tecnologias utilizadas

Ferramentas robustas, open source e prontas para produção.

Java 17
LTS — backend principal
🌱
Spring Boot
3.2.5 — framework web
🔐
Spring Security
6 + JWT stateless
🗄️
MariaDB
11 — banco relacional
🔄
Flyway
10.15 — migrations
🗺️
Hibernate / JPA
6.4 — ORM
🐍
Python 3
Motor de escalonamento
📜
OpenAPI / Swagger
2.5 — docs interativa
🏗️
Apache Maven
3.9 — build tool
🌐
HTML / CSS / JS
SPA sem framework
🐳
Docker
Containerização
🧪
JUnit 5 + Testcontainers
Testes integrados

O que você precisa para rodar o sistema

Para uso institucional, a recomendação é usar Docker com o Coolify ou servidor Linux dedicado.

🖥️ Servidor / Produção

CPU2 vCPUs (mín.) · 4 vCPUs (rec.)
RAM2 GB (mín.) · 4 GB (rec.)
Disco10 GB (mín.) · 20 GB SSD (rec.)
SistemaDebian 12+ / Ubuntu 22.04+
RuntimeDocker 24+ recomendado

💻 Desenvolvimento local

Java JDK17+ (OpenJDK ou Temurin)
Maven3.9+
MariaDB10.6+ (testado com 11.8)
Python3.10+ + mysql-connector-python
NavegadorChrome 100+ / Firefox 100+