O Sistema de Gestão de Eventos é uma plataforma completa desenvolvida para facilitar a organização, divulgação e o controle de inscrições em eventos acadêmicos, corporativos ou comunitários.
O principal objetivo da aplicação é digitalizar e automatizar o processo de cadastro de participantes, permitindo que organizadores estruturem seus eventos e que os usuários consigam garantir suas vagas nas atividades e palestras de forma simples e direta.
- Cadastro Integrado: O usuário cria sua conta fornecendo dados de contato e endereço detalhado (integrado com tabelas de UF, Cidade, Bairro e Logradouro).
- Autenticação Segura: Acesso ao portal protegido por login (e-mail) e senha com sistema de tokens de segurança.
- Inscrição em Eventos: O participante pode se inscrever de forma geral no evento desejado.
- Reserva em Palestras: Dentro de um evento, o participante pode escolher palestras ou atividades específicas para participar, garantindo seu lugar.
- Criação de Eventos: Permite cadastrar um evento informando seu nome, datas de início e término, descrição, site oficial e a localização exata de onde ele ocorrerá.
- Controle de Palestras/Grade: O organizador pode adicionar várias palestras a um único evento. Para cada palestra, o sistema gerencia:
- Horário de início e término.
- Local ou sala específica.
- Controle de Vagas: É possível estipular uma quantidade máxima de vagas por palestra, evitando superlotação.
- Gestão de Inscrições: O sistema mantém o vínculo exato de qual participante está inscrito em qual evento (e sob qual tipo de inscrição), bem como em quais palestras específicas ele garantiu presença.
Para que todas essas regras de negócio funcionem de forma fluida, o projeto arquitetural foi dividido em:
- Portal Web (Frontend): A interface visual desenvolvida para que o participante faça seu cadastro e interaja com os eventos de forma intuitiva.
- Motor de Regras (Backend API): O "cérebro" do sistema. É ele quem valida se ainda existem vagas na palestra, quem processa o login seguro, verifica se as datas dos eventos são válidas e guarda tudo com segurança.
- Armazenamento (Banco de Dados): Uma estrutura relacional robusta que garante que nenhum dado de inscrição ou detalhe de evento se perca.
Projeto desenvolvido pela Equipe 3 para a disciplina de Engenharia de Software 2 (ES2).