Ingeniería, desarrollo y diseño de www.aguamty.com

15 de julio de 2024

El desarrollo de aguamty.com implicó un enfoque integral que abarcó desde la comprensión profunda del problema hasta la implementación de un sistema robusto y confiable. A continuación, se detallan las fases clave del proyecto:

Entendimiento del Problema

El objetivo principal era crear una plataforma que facilitara la gestión y distribución de agua tratada para pipas, optimizando procesos y garantizando transparencia en las operaciones. Se realizaron reuniones con stakeholders y análisis de procesos existentes para identificar ineficiencias y oportunidades de mejora.

Diseño del Sistema

Se diseñó una arquitectura modular utilizando Next.js 14 y React para el frontend, y una API RESTful con Django Rest Framework con python para el backend. La base de datos se implementó en PostgreSQL, aprovechando su robustez y escalabilidad. La infraestructura se desplegó en AWS, utilizando servicios como EC2 y RDS para garantizar alta disponibilidad y rendimiento.

Iteraciones de Desarrollo

Adoptamos una metodología ágil, realizando sprints de dos semanas que permitieron iterar rápidamente sobre el producto. Cada sprint incluía planificación, desarrollo, pruebas y retrospectivas, lo que facilitó la adaptación a cambios y la mejora continua del sistema.

Pruebas de Usabilidad

Se llevaron a cabo pruebas de usabilidad moderadas, donde usuarios representativos completaron tareas específicas mientras se observaba su interacción con el sistema. Esto permitió identificar problemas de navegación y comprensión, los cuales fueron abordados en iteraciones posteriores para mejorar la experiencia del usuario.

Pruebas de Confiabilidad

Para asegurar la confiabilidad del sistema, se implementaron pruebas automatizadas de integración y unitarias. Además, se realizaron pruebas de carga utilizando herramientas como Playwright para evaluar el rendimiento bajo condiciones de alta demanda. Se estableció un monitoreo continuo con PostHog para detectar y resolver problemas proactivamente. Se identicaron analíticas con cloudflare.

Seguridad

Se implementaron medidas de seguridad como autenticación basada en tokens JWT, encriptación de datos sensibles y protección contra ataques comunes como CSRF y XSS. Se realizaron auditorías de seguridad periódicas para identificar y mitigar vulnerabilidades. Se utilizo como partner a cloudflare para agregar protección contra los ataques mas comunes.

Despliegue y Mantenimiento

El despliegue se automatizó utilizando CI/CD pipelines con Github CI, y Vercel permitiendo integraciones y despliegues continuos. Se estableció un plan de mantenimiento que incluye actualizaciones regulares, monitoreo de logs y soporte al usuario.

El proyecto de aguam.com es un ejemplo de cómo una ingeniería de software bien planificada y ejecutada puede resolver problemas complejos, ofreciendo una solución eficiente y confiable que satisface las necesidades del cliente y de los usuarios finales.