Plataforma de Gestão Escolar

Protótipo Técnico e Funcional – SME

1. Visão Geral do Projeto

Sistema web para gestão integrada de escolas, alunos, processos e relatórios da Secretaria Municipal de Educação (SME).

Módulos Principais

2. Telas do Sistema

>Login

Tela de autenticação com e-mail, senha e recuperação. Protegida por JWT.

Endpoint: POST /api/auth/login

Dashboard

Painel com indicadores: número de escolas, alunos, orçamento disponível e notificações pendentes.

Endpoint: GET /api/dashboard (autenticado)

Cadastro de Aluno

Formulário com validação de CPF, data de nascimento, escola e série.

Endpoint: POST /api/alunos

Listagem de Escolas

Tabela com filtros por bairro, região e status (ativa/inativa).

Endpoint: GET /api/escolas?bairro=Centro

Abertura de Reclamação

Formulário com categoria, descrição e upload de fotos/documentos.

Endpoint: POST /api/processos/reclamacoes

3. Documentação da API (OpenAPI)

API RESTful com autenticação JWT. Estrutura compatível com Swagger.

openapi: 3.0.3
info:
  title: Plataforma de Gestão Escolar - API
  version: 1.0.0
servers:
  - url: https://api.sme-plataforma.gov.br
security:
  - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
paths:
  /api/auth/login:
    post:
      summary: Autenticar usuário
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [email, password]
              properties:
                email: { type: string, format: email }
                password: { type: string }
      responses:
        '200':
          description: Login bem-sucedido
          content:
            application/json:
              schema:
                type: object
                properties:
                  token: { type: string }
        '401':
          description: Credenciais inválidas
  /api/alunos:
    post:
      summary: Cadastrar aluno
      security:
        - bearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required: [nome, cpf, escola_id]
              properties:
                nome: { type: string }
                cpf: { type: string }
                data_nascimento: { type: string, format: date }
                escola_id: { type: integer }
      responses:
        '201':
          description: Aluno criado com sucesso

4. Cronograma do Projeto

Desenvolvimento em 6 sprints ágeis + fase de homologação.

gantt title Cronograma - Gestão Escolar dateFormat YYYY-MM-DD axisFormat %d/%m section Sprints Sprint 0 :done, s0, 2025-04-01, 5d Sprint 1 :active, s1, after s0, 10d Sprint 2 : s2, after s1, 10d Sprint 3 : s3, after s2, 10d Sprint 4 : s4, after s3, 10d Sprint 5 : s5, after s4, 10d Sprint 6 : s6, after s5, 10d Homologação : h1, after s6, 14d

5. Plano de Sprints (Scrum)

Sprint Objetivo Entrega
Sprint 0Setup inicialBacklog, protótipos, repositório
Sprint 1Login + DashboardAutenticação com JWT
Sprint 2Gestão de AlunosCRUD completo
Sprint 3Gestão de EscolasListagem com filtros
Sprint 4ProcessosReclamações com anexos
Sprint 5RelatóriosGráficos e exportação
Sprint 6DeployAmbiente de homologação

6. Arquitetura Técnica

Frontend

React.js, HTML5, CSS3, JavaScript, Axios, Chart.js

Backend

Node.js + Express, PostgreSQL, Sequelize, JWT

Infraestrutura

Deploy: AWS / Vercel / Google Cloud

7. Entregas Finais

Baixar Documentação (PDF)