
Pampazon
Sistema de gestión de depósitos construido en la UBA
Contexto de la Materia
Proceso de Desarrollo
Requerimientos y Diagrama de Contexto
Se definieron los límites del sistema mediante el Diagrama de Contexto (DC), identificando 7 entidades externas: Cliente, Junta Directiva e Inversores, Personal, Transportista, Entidad Bancaria, Proveedor y AFIP. Se documentaron los flujos de información entre cada entidad y el sistema.
DFD Nivel 1 — Visión General del Sistema
El sistema se descompuso en 6 subsistemas de alto nivel: Gestión Operativa, Ventas, Compras e Infraestructura, Finanzas, Recursos Humanos y Planificación. Se identificaron los almacenes de datos compartidos y los flujos entre procesos.
DFD Niveles 2 y 3 — Descomposición del Almacén
Se profundizó en Gestión Operativa: el Nivel 2 la dividió en 'AA Gestión de Almacén' y 'AB Administración y Control'. El Nivel 3 descompuso el proceso de almacén en 4 subprocesos: AAA Despacho, AAB Preparación, AAC Almacenaje y AAD Recepción.
DFD Nivel 4 — Detalle del Despacho
Se descompuso el subproceso de Despacho en operaciones atómicas: AAA.1 Validar identidad del transportista, AAA.2 Confirmar despacho, y AAA.3 Generar y entregar Remito. Se identificaron todos los almacenes de datos accedidos en cada paso.
Casos de Uso y Prototipos WinForms
Se documentaron 5 casos de uso con actores, pre/post-condiciones y flujos normal y alternativo. Se diseñaron los prototipos de pantallas WinForms para cada flujo: Orden de Preparación, Orden de Selección, Baja de Stock, Orden de Entrega y Despacho con generación de Remito.
Diagrama de Clases y Secuencias
Se construyó el diagrama de clases completo con más de 10 entidades de dominio y sus relaciones. Se documentaron 4 diagramas de secuencia rastreando los flujos de mensajes entre UI, Controladores, Servicios y Repositorios para los casos de uso principales. Se formalizó la máquina de estados OPEstado.
Implementación y Casos de Prueba
Se implementó la aplicación WinForms completa en C# siguiendo el diseño MVC de las fases anteriores. Se elaboraron matrices de casos de prueba para los 5 flujos, cubriendo caminos felices, insumos inválidos y condiciones de borde. La entrega final incluyó código fuente, ejecutable y documentación completa.
Aspectos Destacados del Diseño
- El Diagrama de Contexto conecta 7 entidades externas mediante flujos de información bien definidos
- La jerarquía DFD abarca 4 niveles — desde la visión general hasta las operaciones atómicas de despacho
- El ciclo de vida de las órdenes se impone como máquina de estados: Pendiente → EnSeleccion → EnPreparacion → Preparada → Despachada
- El patrón Repository abstrae el almacenamiento en archivos, manteniendo la lógica de dominio independiente de la persistencia
- La arquitectura MVC separa las vistas WinForms de las reglas de negocio — los Controladores median todas las interacciones
- El diagrama Llamado-Retorno documenta las dependencias inter-módulo de la aplicación completa
Casos de Uso Implementados
Orden de Preparación
Registrar una nueva orden de preparación, seleccionar la mercadería requerida del stock y asignar un transportista para el envío.
Orden de Selección
Filtrar las órdenes de preparación pendientes, validar su disponibilidad y generar una orden de selección que agrupa los ítems por ubicación en el depósito.
Baja de Stock
Confirmar que los ítems seleccionados fueron físicamente retirados de las estanterías, reducir las cantidades en stock y avanzar la orden de preparación al estado 'En Preparación'.
Orden de Entrega
Confirmar que la orden fue completamente empaquetada y está lista para despacho, transitando al estado 'Preparada'.
Despacho y Generación de Remito
Validar la identidad del transportista, confirmar la entrega física del envío, marcar la orden como 'Despachada' y generar e imprimir automáticamente el Remito.