Sistema NEXUS v3.4 migrado con: Estructura principal: - core/orchestration: Sistema SIMCO + CAPVED (27 directivas, 28 perfiles) - core/catalog: Catalogo de funcionalidades reutilizables - shared/knowledge-base: Base de conocimiento compartida - devtools/scripts: Herramientas de desarrollo - control-plane/registries: Control de servicios y CI/CD - orchestration/: Configuracion de orquestacion de agentes Proyectos incluidos (11): - gamilit (submodule -> GitHub) - trading-platform (OrbiquanTIA) - erp-suite con 5 verticales: - erp-core, construccion, vidrio-templado - mecanicas-diesel, retail, clinicas - betting-analytics - inmobiliaria-analytics - platform_marketing_content - pos-micro, erp-basico Configuracion: - .gitignore completo para Node.js/Python/Docker - gamilit como submodule (git@github.com:rckrdmrd/gamilit-workspace.git) - Sistema de puertos estandarizado (3005-3199) Generated with NEXUS v3.4 Migration System EPIC-010: Configuracion Git y Repositorios
13 KiB
_MAP: MAI-018 - Preconstrucción y Licitaciones
Épica: MAI-018 Nombre: Preconstrucción y Licitaciones Fase: 1 - Alcance Inicial Presupuesto: $25,000 MXN Story Points: 45 SP Estado: 📝 A crear Sprint: Sprint 1-2 (Semanas 1-4) Última actualización: 2025-11-17 Prioridad: P0
📋 Propósito
Gestión completa del ciclo de oportunidades, licitaciones y conversión a proyectos adjudicados:
- Pipeline de oportunidades de licitaciones públicas y privadas
- Gestión de propuestas técnicas y económicas
- Conversión de licitaciones ganadas a proyectos en ejecución
- Análisis de tasa de éxito y competidores
- Transición suave de preventa a ejecución
Integración clave: Base del flujo de negocio. Se vincula con Proyectos (MAI-002), Presupuestos (MAI-003) y Contratos (MAI-012).
📁 Contenido
Requerimientos Funcionales (Estimados: 5)
| ID | Título | Estado |
|---|---|---|
| RF-LIC-001 | Pipeline de oportunidades y licitaciones | 📝 A crear |
| RF-LIC-002 | Gestión de propuestas técnicas y económicas | 📝 A crear |
| RF-LIC-003 | Conversión de licitación ganada a proyecto | 📝 A crear |
| RF-LIC-004 | Calendario de fechas clave y alertas | 📝 A crear |
| RF-LIC-005 | Analytics de licitaciones (win rate, competidores) | 📝 A crear |
Especificaciones Técnicas (Estimadas: 5)
| ID | Título | RF | Estado |
|---|---|---|---|
| ET-LIC-001 | Modelo de datos de licitaciones y oportunidades | RF-LIC-001 | 📝 A crear |
| ET-LIC-002 | Sistema de versionado de propuestas | RF-LIC-002 | 📝 A crear |
| ET-LIC-003 | Flujo de conversión licitación → proyecto | RF-LIC-003 | 📝 A crear |
| ET-LIC-004 | Sistema de notificaciones y alertas | RF-LIC-004 | 📝 A crear |
| ET-LIC-005 | Motor de analytics y reportes | RF-LIC-005 | 📝 A crear |
Historias de Usuario (Estimadas: 9)
| ID | Título | SP | Estado |
|---|---|---|---|
| US-LIC-001 | Registrar oportunidad de licitación | 5 | 📝 A crear |
| US-LIC-002 | Evaluar viabilidad (go/no-go) de licitación | 5 | 📝 A crear |
| US-LIC-003 | Crear propuesta técnica y económica | 5 | 📝 A crear |
| US-LIC-004 | Gestionar calendario de fechas clave | 3 | 📝 A crear |
| US-LIC-005 | Convertir licitación ganada a proyecto | 7 | 📝 A crear |
| US-LIC-006 | Ajustar presupuesto ofertado vs contratado | 5 | 📝 A crear |
| US-LIC-007 | Analizar tasa de éxito y competidores | 5 | 📝 A crear |
| US-LIC-008 | Dashboard de pipeline y valor potencial | 5 | 📝 A crear |
| US-LIC-009 | Exportar documentos licitatorios | 5 | 📝 A crear |
Total Story Points: 45 SP
Implementación
📊 Inventarios de trazabilidad:
- TRACEABILITY.yml - Matriz completa de trazabilidad
- DATABASE.yml - Objetos de base de datos
- BACKEND.yml - Módulos backend
- FRONTEND.yml - Componentes frontend
Pruebas
📋 Documentación de testing:
- TEST-PLAN.md - Plan de pruebas
- TEST-CASES.md - Casos de prueba
🔗 Referencias
- README: README.md - Descripción detallada de la épica
- Fase 1: ../README.md - Información de la fase completa
- Módulo relacionado MVP: Módulo 18 - Preconstrucción y Licitaciones (MVP-APP.md)
📊 Métricas
| Métrica | Valor |
|---|---|
| Presupuesto estimado | $25,000 MXN |
| Story Points estimados | 45 SP |
| Duración estimada | 9 días |
| Reutilización GAMILIT | 15% (funcionalidad nueva específica de construcción) |
| RF a implementar | 5/5 |
| ET a implementar | 5/5 |
| US a completar | 9/9 |
🎯 Módulos Afectados
Base de Datos
- Schema:
bidding - Tablas principales:
opportunities- Oportunidades de licitacionesbids- Licitaciones/propuestasbid_documents- Documentos de licitaciónbid_calendar- Fechas clavebid_budget- Presupuesto ofertadobid_competitors- Competidores identificadosbid_team- Equipo asignado a propuesta
- ENUMs:
opportunity_source(government_portal, private_client, referral, other)bid_status(evaluating, go_decision, no_go, preparing, submitted, awarded, lost, withdrawn)bid_type(public, private, invitation_only)calendar_event_type(site_visit, clarification_meeting, submission_deadline, award_date)
Backend
- Módulo:
bidding,opportunities - Path:
apps/backend/src/modules/bidding/ - Services: OpportunityService, BidService, BidBudgetService, BidAnalyticsService
- Controllers: OpportunityController, BidController, BidConversionController
- Middlewares: BidAccessGuard, DocumentUploadGuard
Frontend
- Features:
bidding,opportunities,bid-management - Path:
apps/frontend/src/features/bidding/ - Componentes:
- OpportunityPipeline
- OpportunityForm (create/edit)
- BidEvaluationForm (go/no-go)
- BidProposalBuilder
- BidCalendar
- BidConversionWizard
- BidAnalyticsDashboard
- CompetitorTracker
- BidDocumentManager
- Stores: opportunityStore, bidStore, bidAnalyticsStore
🔄 Flujo de Trabajo de Licitaciones
1. Identificación de Oportunidad
Fuentes:
- Portales gubernamentales (CompraNet, estatales, municipales)
- Clientes privados (INFONAVIT, desarrolladores)
- Referencias y contactos directos
- Suscripciones a alertas
Información capturada:
- Nombre de la licitación
- Cliente/convocante
- Tipo de proyecto (vivienda vertical/horizontal, urbanización)
- Ubicación (estado, municipio)
- Número estimado de viviendas
- Monto estimado
- Fechas clave iniciales
Clasificación:
- Tipo: Pública/Privada/Invitación
- Región: Norte, Centro, Sur, etc.
- Línea de negocio: Vivienda social, media, residencial
- Prioridad: Alta, Media, Baja
2. Evaluación Go/No-Go
Criterios de evaluación:
| Criterio | Peso | Evaluación |
|---|---|---|
| Alineación estratégica | 20% | ¿Está en nuestra zona geográfica? ¿Línea de negocio? |
| Capacidad técnica | 25% | ¿Tenemos experiencia en este tipo de proyecto? |
| Capacidad financiera | 20% | ¿Podemos financiar el anticipo y capital de trabajo? |
| Relación con cliente | 15% | ¿Conocemos al cliente? ¿Relación previa? |
| Competencia esperada | 10% | ¿Cuántos competidores? ¿Quiénes? |
| Margen potencial | 10% | ¿El margen esperado justifica el esfuerzo? |
Decisión:
- GO: Se procede a preparar propuesta
- NO-GO: Se archiva con razón documentada
- EN EVALUACIÓN: Se requiere más información
3. Preparación de Propuesta
Actividades:
-
Revisión de bases:
- Carga de bases de licitación
- Identificación de requisitos técnicos
- Identificación de requisitos legales/administrativos
- Checklist de cumplimiento
-
Análisis técnico:
- Visita al sitio (si aplica)
- Análisis de planos y especificaciones
- Definición de prototipos de vivienda
- Identificación de alcances especiales
-
Presupuesto ofertado:
- Creación de presupuesto base
- Cotización con proveedores clave
- Cálculo de indirectos y margen
- Análisis de sensibilidad
- Versión "ofertada" del presupuesto
-
Propuesta técnica:
- Metodología constructiva
- Programa de obra
- Personal clave
- Experiencia y referencias
- Cumplimiento de especificaciones
-
Colaboración en equipo:
- Asignación de responsables
- Tablero de tareas
- Versionado de documentos
- Checklist de entregables
4. Calendario de Fechas Clave
Eventos típicos:
| Evento | Descripción | Alerta |
|---|---|---|
| Visita a sitio | Recorrido por terreno/proyecto | 3 días antes |
| Junta de aclaraciones | Preguntas y respuestas | 2 días antes |
| Entrega de propuesta | Fecha límite de presentación | 5 días antes + 1 día antes |
| Apertura técnica | Revisión de propuestas técnicas | 1 día antes |
| Apertura económica | Revisión de propuestas económicas | 1 día antes |
| Fallo | Adjudicación del contrato | - |
Sistema de alertas:
- Email automático a equipo asignado
- Notificaciones push en app móvil
- Dashboard con semáforo de fechas
5. Conversión a Proyecto
Proceso al ganar licitación:
-
Cambio de estatus:
awarded→converting -
Ajuste de presupuesto:
- Comparación ofertado vs contratado
- Identificación de diferencias
- Ajuste de cantidades/precios
- Creación de presupuesto "contratado"
-
Creación automática de proyecto:
- Generación de estructura de proyecto
- Creación de etapas (según alcances)
- Creación de manzanas y lotes (si aplica)
- Asignación de prototipos de vivienda
-
Transferencia de información:
- Documentos licitatorios → Módulo Documental
- Presupuesto ofertado → Módulo Presupuestos
- Fechas clave → Calendario de obra
- Equipo propuesto → Asignación de personal
-
Activación de módulos operativos:
- Habilitación de compras
- Habilitación de control de obra
- Habilitación de RRHH
- Configuración de centros de costo
Estado final: converted → Proyecto activo en ejecución
📈 Analytics de Licitaciones
KPIs Principales
| Métrica | Descripción | Cálculo |
|---|---|---|
| Win Rate | Tasa de éxito | Ganadas / (Ganadas + Perdidas) |
| Pipeline Value | Valor total en pipeline | Σ (Monto × Probabilidad) |
| Avg. Bid Size | Tamaño promedio de licitación | Σ Monto / # Licitaciones |
| Time to Award | Tiempo promedio hasta fallo | Avg(Fecha fallo - Fecha registro) |
| Conversion Rate | Tasa de conversión a proyecto | Convertidas / Ganadas |
| Competitor Frequency | Competidores más frecuentes | Top 10 competidores |
Dashboards
-
Pipeline Overview:
- Total de oportunidades activas
- Valor potencial total
- Desglose por estatus
- Desglose por región
- Probabilidad ponderada
-
Performance Histórico:
- Win rate por año/trimestre
- Licitaciones ganadas vs perdidas
- Análisis de márgenes (ofertado vs real)
- Razones de pérdida más comunes
-
Competencia:
- Competidores recurrentes
- Win rate vs cada competidor
- Proyectos donde coincidimos
- Estrategias detectadas
💡 Casos de Uso Clave
Licitación Pública INFONAVIT
Contexto:
- Cliente: INFONAVIT
- Tipo: Licitación pública nacional
- Proyecto: 200 viviendas verticales
- Ubicación: Querétaro
- Monto estimado: $80M MXN
Flujo:
-
Día 0: Se detecta licitación en CompraNet
- Registro de oportunidad
- Asignación a Director de Zona Centro
-
Día 3: Evaluación Go/No-Go
- Revisión de requisitos
- Análisis de capacidad
- Decisión: GO
-
Día 5: Inicio de preparación
- Descarga de bases
- Asignación de equipo (ingeniero, compras, finanzas)
- Creación de presupuesto base
-
Día 10: Visita al sitio
- Registro fotográfico
- Análisis de accesos y servicios
- Validación de cantidades
-
Día 20: Junta de aclaraciones
- Registro de preguntas/respuestas
- Ajuste de presupuesto
-
Día 28: Entrega de propuesta
- Generación de documentos
- Verificación de checklist
- Presentación física/digital
-
Día 40: Fallo
- Resultado: GANADO
- Registro de competidores (5 empresas)
-
Día 42: Conversión a proyecto
- Ajuste de presupuesto (ofertado: $78M, contratado: $80M)
- Creación de estructura de proyecto
- Activación de módulos operativos
Licitación Privada Desarrollador
Contexto:
- Cliente: Desarrollador privado
- Tipo: Invitación directa
- Proyecto: 50 viviendas horizontales
- Ubicación: Mérida
- Monto estimado: $25M MXN
Diferencias vs licitación pública:
- Proceso más ágil (menos formalidades)
- Relación directa con cliente
- Negociación de alcances y precio
- Menos competidores (2-3 invitados)
- Mayor flexibilidad en propuesta
🚨 Puntos Críticos
- Alertas oportunas: No perder fechas límite de entrega
- Versionado de presupuestos: Diferenciar claramente ofertado vs contratado
- Trazabilidad: Documentar razones de go/no-go y pérdidas
- Conversión limpia: Evitar pérdida de información al convertir a proyecto
- Integración con módulos: Activación automática de funcionalidades operativas
- Análisis competitivo: Aprender de licitaciones perdidas
🎯 Siguiente Paso
Crear documentación de requerimientos y especificaciones técnicas del módulo.
Generado: 2025-11-17 Mantenedores: @tech-lead @backend-team @frontend-team @business-dev Estado: 📝 A crear