Information Gathering - betoooo08/MyFinPlanner GitHub Wiki
Information Gathering for MyFinPlanner
1. User Research
- Target Personas
- Young Professionals managing salary, building savings.
- Freelancers & Contractors with irregular income streams.
- Recent Graduates learning to budget student loans and living expenses.
- Key Questions
- ¿Cuáles son tus principales retos al planear tu presupuesto mensual?
- ¿Qué alertas o notificaciones te ayudan más a mantenerte en línea con tus objetivos financieros?
- ¿Con qué frecuencia revisas tus inversiones o reportes de gastos?
2. Competitor Analysis
- Mint, YNAB, PocketSmith
- Pros: alertas visuales, etiquetado automático de transacciones, reports exportables.
- Contras: curvas de aprendizaje pronunciadas, funcionalidades de AI limitadas.
- Takeaways para MyFinPlanner
- Interfaz limpia y minimalista.
- Alertas tempranas (80 % y 100 %) con toasts y pop-ups.
- Exportar reportes a PDF/CSV integrado.
3. Analytics & Usage Metrics
- Páginas más visitadas
- Dashboard principal
- Sección de Transacciones
- Creación de presupuesto
- Puntos de abandono
- Formulario de signup: revisar tasa de error en validación de contraseña.
- Flujo de “Ver transacciones” dentro de un presupuesto: optimizar carga asíncrona.
4. Business & Technical Requirements
- Restricciones legales
- Encriptar datos sensibles en reposo y en tránsito.
- Tecnologías & APIs
- Backend: Django 4.2, PostgreSQL (Cloud SQL).
- Frontend: Tailwind CSS + Alpine/Lucide + Chart.js.
- Data Feeds: Finnhub para cotizaciones de mercado.
- AI: OpenAI private key, almacenar prompts/respuestas en modelo
AIInsight
.
5. Data Models & Flujos de Usuario
- Entidades clave
User
, Transaction
, Category
, Budget
, Goal
, Report
, AIInsight
- Flujos de ejemplo
- Crear Presupuesto → asignar categoría → establecer monto y alerta (80 %) → guardar.
- Registrar Gasto → disparar señal pre_save → actualizar
budget.spent
→ si ≥ 80 %, enviar notificación.
- Recuperar Contraseña → formulario email → envío de link → reset de contraseña → redirigir a
/login/
.
- Generar Reporte → seleccionar rango y formato → invocar view → retornar archivo descargable.
6. Next Steps
- Diseñar la encuesta y reclutar usuarios (semana 1).
- Conducir entrevistas y tabular resultados (semana 2).
- Definir prototipos de UI para alertas de presupuesto y password-recovery.
- Priorizar backlog según hallazgos.
- Validar con stakeholders antes de arrancar desarrollo del Sprint 01.