💻 Desenvolvimento
🗓 Informações Gerais
- Nome do Projeto:
- Scrum Master Responsável:
- Equipe de Desenvolvimento:
- Data de Entrada na Área:
- Data Estimada de Conclusão da Área:
✅ Checklist de Entrada
- Documento de Visão de Produto revisado e compreendido
- Tecnologias e requisitos funcionais claramente definidos
- Wireframes ou protótipos recebidos e validados
- Modelo de dados alinhado entre frontend e backend
- User Stories priorizadas e estimadas
- Capacidade técnica e de tempo confirmada
- Entendimento dos custos de manutenção
📤 Checklist de Saída
- Funcionalidades desenvolvidas conforme requisitos
- Deploy realizado (ou instruções de deploy definidas)
- Documentação técnica entregue (API, banco, estrutura de dados, etc.)
- Entrega validada com PO
🛠 Tecnologias Utilizadas
Frontend:
Backend:
Banco de Dados:
Hospedagem:
Outros Serviços:
💸 Custos de Manutenção
Serviço | Valor Mensal Estimado | Observações |
---|---|---|
Hospedagem do Frontend | R$ 10,00 | Plano gratuito da Vercel é suficiente |
API / Backend | R$ 25,00 | Uso do Railway com plano básico |
Banco de Dados | R$ 20,00 | Supabase com 1GB de dados |
Domínio | R$ 40,00 | Registro anual dividido mensalmente |
Outros | R$ 15,00 | Envio de e-mails via SendGrid |
Total: R$ 110,00 / mês
🧱 Infraestrutura de Dados
🔗 Modelo Lógico do Banco de Dados
Link para o modelo:
Perfeito! Aqui vai uma versão melhorada e mais didática da seção "Estrutura de Dados (Frontend < > Backend)", com uma explicação clara sobre a importância dos contratos, exemplos de interfaces que funcionam como contratos e também um exemplo de como esses contratos se transformam em dados reais durante o desenvolvimento e testes.
🔄 Estrutura de Dados (Frontend ↔ Backend)
🛠 Exemplo de Interface (Contrato de Dados)
Arquivo: src/interfaces/IReserva.ts
// Interface que define o formato dos dados que o backend deve retornar para o frontend
export interface IReserva {
id: number;
active: boolean;
sala?: string; // opcional
inicio: Date; // ISO string
fim: Date; // ISO string
usuario: {
nome: string;
email: string;
}
}