volver a los casos

Caso de estudio · fecha del proyecto

Drone Delivery

backenddjango

Este proyecto consiste en una API REST desarrollada con Django para gestionar una flota de drones encargados de entregar medicamentos en áreas de difícil acceso. El sistema permite administrar drones, medicamentos y entregas, asegurando el cumplimiento de restricciones físicas y operativas.

Funcionalidades Principales

  • Gestión de Flota: Registro de drones con control de número de serie, modelo, límite de peso y capacidad de batería.
  • Control de Estado: Monitoreo del estado del dron (IDLE, LOADING, DELIVERING, DELIVERED, RETURNING) y nivel de batería.
  • Logística de Entrega:
    • Gestión de medicamentos (nombre, peso, código).
    • Creación de paquetes y asignación a drones disponibles.
    • Validación estricta de peso para no exceder la capacidad del dron.
    • Verificación de nivel de batería antes de asignar cargas (mínimo 25%).
  • Auditoría: Registro de cambios en los modelos mediante django-simple-history.
  • Tareas en Segundo Plano: Uso de Celery y Redis para procesos asíncronos, como la verificación periódica de baterías.

Stack Tecnológico

El proyecto utiliza un stack robusto para asegurar escalabilidad y confiabilidad:

  • Python & Django: Núcleo del backend.
  • Django REST Framework: Construcción de la API.
  • Celery & Redis: Manejo de colas de tareas y caché.
  • Docker: (Implícito/Recomendado) para orquestación de servicios.

Instalación y Pruebas

El repositorio incluye instrucciones detalladas para levantar el entorno de desarrollo, incluyendo la configuración de Redis y Celery. También proporciona comandos personalizados (manage.py create_data) para poblar la base de datos con datos de prueba y facilitar la validación del sistema.