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

Escopo · Changes

Page history
feat: add full project documentation layout and structure for Pró-Mata Wiki until AGES' end authored Oct 19, 2025 by Saccilotto's avatar Saccilotto
Show whitespace changes
Inline Side-by-side
Escopo.md
View page @ 181e3600
| [Home](Home) | [**Escopo**](Escopo) | [Processo](Processo) | [Sprints](Sprints) | [Design](Design) | [Arquitetura](Arquitetura) | [Repositórios](Repositórios) | [Banco de Dados](Banco de Dados) |
| :----------: | :-------------------------------: | :------------------: | :--------------: | :--------------------------: | :--------------------: | :------------------------: | :--------------: |
\ No newline at end of file
# Escopo
| [Home](Home) | [**Escopo**](Escopo) | [Processo](Processo) | [Sprints](Sprints) | [Design](Design) | [Arquitetura](Arquitetura) | [Repositorios](Repositorios) | [Gerencia](Gerencia) | [Banco de Dados](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](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](Gerencia) para estrutura completa da equipe e processos
Clone repository
  • Arquitetura
  • Banco de Dados
  • Design
  • Escopo
  • Gerencia
  • Home
  • Processo
  • Repositórios
  • Sprints