Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • W wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Pró-Mata
  • wiki
  • Wiki
  • Escopo

Last edited by Saccilotto Oct 19, 2025
Page history

Escopo

Escopo

Home Escopo Processo Sprints Design Arquitetura Repositorios Gerencia Banco de Dados

Escopo do Projeto

Última atualização: 19 de Outubro 2025

Visão Geral

O projeto Pró-Mata consiste no desenvolvimento de uma plataforma digital de hotelaria para o Centro de Pesquisas e Proteção da Natureza (CPPN) Pró-Mata, visando oferecer um sistema eficiente, acessível e integrado para a gestão das reservas e serviços do centro.

Objetivo do Projeto

Desenvolver uma plataforma Web que:

  • Facilite o processo de reservas, agendamento e planejamento
  • Amplie o público alcançado pelo centro
  • Promova maior transparência e comodidade para os usuários
  • Otimize a organização interna do CPPN Pró-Mata
  • Aprimore a experiência do visitante

Escopo do Produto

No Escopo

1. Identificação de Usuários

  • Alunos e professores da PUCRS: Acesso com identificação institucional
  • Alunos e professores de outras universidades: Cadastro com validação acadêmica
  • Público geral: Cadastro aberto para visitantes

2. Módulo Administrativo

  • Atualização de informações da plataforma
  • Elaboração de relatórios de múltiplas reservas
  • Emissão de confirmações de reserva
  • Gestão de usuários (criação, edição, inativação)
  • Gestão de experiências (quartos, espaços, atividades)
  • Verificação de solicitações de professores

3. Módulo de Reservas

Hospedagem:

  • Consulta de disponibilidade de quartos individuais e coletivos
  • Reserva de quartos com datas de check-in/check-out
  • Visualização de capacidade e características dos quartos

Espaços:

  • Laboratórios
  • Salas multiuso
  • Auditório

Atividades:

  • Trilhas interpretativas
  • Visitas turísticas
  • Retiros espirituais
  • Cursos e eventos acadêmicos

4. Sistema de Pagamento

  • Acesso a diversas formas de pagamento
  • Anexação de comprovantes de pagamento na submissão das reservas
  • Armazenamento seguro de comprovantes

5. Funcionalidades Técnicas

  • Autenticação JWT com controle de papéis (usuário, admin)
  • Validação de dados com Zod
  • Documentação API com Swagger
  • Testes automatizados (≥70% cobertura)
  • Analytics com Umami (privacy-respecting)
  • Deploy automatizado (CI/CD GitHub Actions)

Fora do Escopo

  • ❌ Integração com portais de pagamento (gateways como PagSeguro, MercadoPago)
  • ❌ Aplicativo mobile nativo (apenas Web responsivo)
  • ❌ Sistema de fidelidade ou pontos
  • ❌ Chat em tempo real com administradores
  • ❌ Integração com redes sociais
  • ❌ Sistema de avaliações/reviews de experiências

Público-Alvo

Perfis de Usuário

Perfil Descrição Necessidades Principais
Aluno PUCRS Estudante da PUCRS interessado em atividades acadêmicas/recreativas Acesso rápido, reservas para grupos, preços institucionais
Professor PUCRS Docente organizando atividades de ensino/pesquisa Reservas de laboratórios, espaços para eventos, gestão de grupos
Aluno/Professor Externo Acadêmicos de outras universidades Validação institucional, informações sobre o centro
Público Geral Visitantes interessados em ecoturismo/retiros Informações sobre atividades, processo de reserva simples
Administrador Funcionários do CPPN Pró-Mata Gestão completa de reservas, relatórios, confirmações

Requisitos Funcionais (Resumo)

RF01 - Autenticação e Cadastro

  • Sistema de login com email e senha
  • Cadastro de novos usuários (PUCRS e externos)
  • Recuperação de senha via email (TODO: integração SES)
  • Perfil de usuário editável

RF02 - Gestão de Experiências (Admin)

  • CRUD completo de experiências (quartos, espaços, atividades)
  • Definição de capacidade, preços, horários disponíveis
  • Categorização de experiências

RF03 - Sistema de Reservas

  • Busca de experiências por categoria, data, capacidade
  • Carrinho de reservas
  • Submissão de reserva com upload de comprovante
  • Visualização de reservas do usuário

RF04 - Gestão Administrativa

  • Visualização de todas as reservas
  • Aprovação/rejeição de reservas
  • Verificação de solicitações de professores
  • Geração de relatórios

RF05 - Gestão de Usuários (Admin)

  • Listagem de usuários
  • Criação de usuários administrativos
  • Inativação de usuários

Requisitos Não-Funcionais

RNF01 - Desempenho

  • Tempo de resposta de API < 200ms (95th percentile)
  • Frontend com carregamento inicial < 3s
  • Suporte a 100 usuários simultâneos

RNF02 - Segurança

  • Autenticação JWT com tokens de curta duração
  • Hashing de senhas com argon2id
  • Validação de entrada em todas as rotas (Zod)
  • HTTPS obrigatório em produção

RNF03 - Usabilidade

  • Interface responsiva (mobile, tablet, desktop)
  • Acessibilidade WCAG 2.1 AA (quando aplicável)
  • Feedback visual claro para ações do usuário

RNF04 - Manutenibilidade

  • Cobertura de testes ≥70%
  • Documentação de API (Swagger)
  • Código TypeScript com strict mode
  • Linting e formatação automatizados (ESLint, Prettier)

RNF05 - Disponibilidade

  • Uptime desejado: 99% (tolerância a ~7h downtime/mês)
  • Infraestrutura de backup disponível (RTO < 4h)
  • Monitoramento com analytics (Umami)

Tecnologias

Frontend

  • React 19 + TypeScript
  • Vite 6
  • TanStack Router + TanStack Query
  • Tailwind CSS 4
  • Shadcn/UI + Radix UI
  • Vitest + Playwright

Backend

  • Node.js 22 + NestJS + TypeScript
  • Prisma ORM + PostgreSQL 15
  • JWT + argon2
  • Swagger
  • Jest

Infraestrutura

  • AWS S3 (frontend) + AWS EC2 (backend/database)
  • Docker + Docker Hub
  • GitHub Actions (CI/CD)
  • GitLab (repositórios oficiais + wiki)

Entregas

Sprint 0 (Concluída)

  • ✅ Arquitetura definida
  • ✅ Modelagem de banco de dados
  • ✅ Design das telas (Figma)
  • ✅ Infraestrutura configurada

Sprint 1 (Concluída)

  • ✅ Fluxo de Login e Cadastro
  • ✅ Home Page
  • ✅ Tela de Criação de Experiências (Admin)
  • ✅ Criação de Usuário (Admin)

Sprint 2 (Concluída)

  • ✅ Tela de Reservas
  • ✅ Tela de Solicitações (Admin)
  • ✅ Tela de Buscar Reservas
  • ✅ Melhorias na Criação de Experiências

Sprint 3 e 4 (Em Andamento/Planejado)

Ver Sprints para detalhes atualizados.

Restrições

  • Prazo: Semestre 2025/2 (até final de Novembro)
  • Equipe: 4 níveis AGES (I a IV) com responsabilidades distintas
  • Tecnologia: Web apenas (sem mobile nativo)
  • Orçamento: Infraestrutura AWS com custos controlados
  • Requisitos Institucionais: Repositórios GitLab + sincronização GitHub

Critérios de Aceitação Geral

O projeto será considerado bem-sucedido quando:

  • ✅ Usuários conseguem se cadastrar e fazer login
  • ✅ Usuários conseguem visualizar e reservar experiências
  • ✅ Administradores conseguem gerenciar reservas e usuários
  • ✅ Sistema está funcional em produção (AWS)
  • ✅ Cobertura de testes ≥70%
  • ✅ Documentação completa (Wiki + Swagger)
  • ✅ Stakeholder valida funcionalidades em Sprint Reviews

Próximos Passos

  • Implementar envio de emails (integração SES)
  • Completar funcionalidades de Sprint 3 e 4
  • Refinamento de UX/UI baseado em feedback
  • Otimizações de performance
  • Documentação de manual do usuário

Stakeholder: Prof. Augusto Mussi Alvim Orientador: Edson Moreno Gerência: Ver Gerencia para estrutura completa da equipe e processos

Clone repository
  • Arquitetura
  • Banco de Dados
  • Design
  • Escopo
  • Gerencia
  • Home
  • Processo
  • Repositórios
  • Sprints