2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 13:46:29 -06:00
2026-05-22 20:30:42 +00:00

AppRecoleccion

Es una aplicación diseñada para el monitoreo y control de los camiones de basura permitiéndole al usuario saber cuando el camión de basura se encuentre cerca de su domicilio

Problemática de Aplicación Móvil

Sistema de Notificación Inteligente y Privada de Recolección de Residuos

En la actualidad, la ciudadanía no cuenta con certeza sobre el momento exacto en que el camión recolector de basura pasará por su domicilio. Esto provoca un efecto dominó negativo: la basura se saca a la calle demasiado temprano, demasiado tarde o cuando la unidad ya pasó.

La falta de información oportuna genera problemas de salud pública, fauna nociva, molestias vecinales y una disposición ineficiente de los residuos. Sin embargo, la solución no es simplemente ponerle un GPS al camión y mostrarlo en un mapa público. Mostrar el recorrido completo o las rutas de otros sectores incrementa el riesgo de uso inadecuado del servicio (como personas intentando alcanzar el camión en movimiento) y expone información operativa sensible de la flotilla municipal.

Adicionalmente, existe una fuerte necesidad de educación ciudadana: la gente quiere separar su basura, pero muchas veces no sabe cómo hacerlo correctamente.

El Reto Desarrollar el prototipo de una aplicación móvil orientada a la ciudadanía que indique una hora aproximada de llegada del camión recolector al domicilio registrado, que notifique sobre cambios operativos y que eduque sobre la separación de residuos.

Todo esto bajo un principio innegociable de Privacidad por Diseño: el usuario debe obtener la información que necesita sin acceder al mapa completo de la ruta ni rastrear el vehículo en tiempo real.

Requisitos Funcionales (MVP)

Gestión de Identidad y Domicilios: Registro de usuario seguro (email o teléfono) y capacidad de dar de alta y validar uno o más domicilios (ejemplo: casa y trabajo).

Ventana de Llegada (ETA): La interfaz debe traducir los datos operativos en un mensaje claro y orientado a la acción: "El camión llegará a tu zona entre las 7:20 y 7:35 p.m." o "Llega en aproximadamente 15 minutos".

Alertas y Notificaciones Push: Avisos configurables cuando la ruta esté por iniciar, cuando el camión se aproxime o si hay retrasos por tráfico o fallas mecánicas.

Visión de "Túnel" (Ruta Exclusiva): El ciudadano solo puede ver la información de la ruta asignada a su dirección validada. Cero visibilidad de colonias vecinas.

Guía de Separación Integrada: Una sección visual, rápida y que funcione sin conexión con categorías claras (orgánicos, reciclables, sanitarios, especiales) para educar al ciudadano.

Buzón de Retroalimentación: Módulo básico para reportar incidencias (ejemplo: "El camión no pasó") o calificar el servicio.

Restricciones de Diseño (Reglas del Juego)

PROHIBIDO el Seguidor de Ruta Activo: La app no debe mostrar un mapa con el camión moviéndose en tiempo real.

PROHIBIDO el Snooping: No se debe poder explorar las rutas de otros domicilios o usuarios.

Mensajería Preventiva: La interfaz debe desalentar explícitamente a los usuarios de sacar la basura fuera del horario establecido o de perseguir a la unidad.

Requisitos Técnicos y Arquitectura

Se requiere demostrar una arquitectura de software sólida, escalable y pensada para un despliegue real.

Arquitectura de Software (Backend): Se espera la implementación de una API RESTful limpia (preferentemente en frameworks modernos como Go, Python/FastAPI, Node.js o C#/.NET) que separe la lógica de negocio de la capa de datos.

Simulación de Eventos (Mocking): Dado que no tendrán acceso a la telemetría real de los camiones, deberán simular el avance de la ruta en el backend mediante un trabajo programado (Cron Job), WebSockets o un script de simulación que actualice el estado y dispare las notificaciones push en tiempo real.

Frontend Móvil: Desarrollo compatible con iOS y Android. Se recomienda encarecidamente el uso de tecnologías multiplataforma (Flutter, React Native) o Aplicaciones Web Progresivas (PWA) de alto rendimiento.

Gestión del Estado: Manejo eficiente del estado en la aplicación para no saturar el servidor con peticiones (evitar peticiones continuas o polling excesivo).

Base de Datos y Modelado: Modelado relacional o NoSQL que maneje correctamente la jerarquía: Usuario -> Domicilio -> Zona de Cobertura -> Ruta. Se valora indexación geoespacial básica para validar si el domicilio ingresado entra en los polígonos permitidos.

Seguridad y Privacidad: Autenticación basada en JSON Web Tokens (JWT) o implementaciones seguras mediante OAuth. El control de acceso basado en roles (RBAC) es obligatorio: la API debe validar en cada petición que el usuario solo consulta la información del domicilio que le pertenece.

Sugerencias de Optimización: Integración y Despliegue Eficiente (Opcional) Para robustecer la propuesta técnica con miras a un entorno de producción real, se sugiere considerar las siguientes estrategias de integración y manejo de costos:

Consumo Inteligente de APIs Geográficas: Se recomienda explorar cómo reducir costos al interactuar con mapas. Por ejemplo, utilizar servicios de geocodificación (como Google Maps o la alternativa libre OpenStreetMap/Nominatim) únicamente en el registro del domicilio, almacenando la coordenada para no repetir peticiones innecesarias. El cálculo de distancias y ETAs puede resolverse de forma interna en el backend con herramientas de análisis espacial (como extensiones PostGIS o librerías nativas del lenguaje) para evitar tarifas por llamadas constantes a APIs de pago.

Estrategia en la Nube y Control de Costos: Dado que el servicio de recolección opera en horarios específicos y tiene valles de inactividad, se sugiere el diseño sobre arquitecturas elásticas o Serverless (como AWS Lambda / Cloud Run para cómputo, o Redis para caché en memoria). Esto permitiría simular o implementar un sistema que escale a cero cuando no hay camiones en ruta, minimizando el gasto de infraestructura.

Notificaciones Asíncronas: Considerar el uso de pasarelas de mensajería eficientes (como Firebase Cloud Messaging o servicios similares de bajo costo) para enviar las alertas push, garantizando que el flujo de comunicación sea ligero y no dependa de conexiones persistentes de alto impacto para el servidor.

Description
Es una aplicación diseñada para el monitoreo y control de los camiones de basura permitiéndole al usuario saber cuando el camión de basura se encuentre cerca de su domicilio
Readme 7.7 MiB
Languages
Dart 92.7%
C++ 3.3%
CMake 2.6%
Swift 0.5%
HTML 0.2%
Other 0.4%