Agrega una nueva seccion "Where - Relacion entre elementos del patron
y elementos del diseno" al documento del patron Composite.
Contenido nuevo:
- Bloque "Where" explicito con la sintaxis del estandar UNR:
Component is BomComponent
Leaf is ProductProduct
Leaf is MrpBomLine
Composite is MrpBom
Composite is MrpBomLine
children is bom_line_ids
Operation() is explode(product, quantity)
Operation() is get_cost()
Operation() is get_quantity()
add(Component) is _onchange_product_id()
remove(Component) is unlink()
getChild(int) is _compute_child_bom_id()
Client is view_mrp_bom_form
Client is mrp.production
- Tabla de equivalencias (14 elementos mapeados)
- Notas sobre la repeticion intencional de elementos (regla 1 del estandar)
- Verificacion de completitud (todos los elementos del patron Gamma et al.)
Siguiendo la regla del estandar FCEIA-UNR (Cristia, 2015):
"Where elemento_patron is elemento_disenio" debe ser explicito
para cada elemento estructural del patron.
Nuevo documento en docs/11_validacion/checklists_iconix.md con:
1. Checklists por tipo de diagrama:
- D-CU (Casos de Uso)
- D-ROB (Robustez)
- D-SEC (Secuencia)
- D-CLA-CON (Clases Conceptual)
- D-CLA-INT (Clases Técnico)
- D-ARQ (Arquitectura)
2. Aplicacion de los checklists a los 12 diagramas existentes:
- D-CU-GEN-002: 15/15 OK
- D-ROB-VEN-001: 10/10 OK
- D-ROB-VEN-004: 10/10 OK
- D-ROB-ENT-002: 10/10 OK
- D-ROB-FAC-001: 10/10 OK
- D-SEC-VEN-001: 12/12 OK
- D-SEC-VEN-004: 12/12 OK
- D-SEC-ENT-002: 12/12 OK
- D-SEC-FAC-001: 12/12 OK
- D-CLA-CON-GEN-001: 9/9 OK
- D-CLA-INT-001: 7/8 OK (nota: _inherit no mostrado)
- D-ARQ-TECH-001: 9/9 OK
3. Resumen global: 127/128 OK (99.2%).
4. Lista de diagramas pendientes (13 CU sin ROB/SEC).
Cambios principales:
1. Diagrama de CU mejorado (D-CU-GEN-002):
- 5 <<include>> (subflujos obligatorios):
CU-AUTH-001, CU-CALC-001, CU-GENPICK-001, CU-VALLIN-001, CU-GENJOUR-001
- 5 <<extend>> (subflujos opcionales/condicionales):
CU-VEN-001-EMAIL, CU-VEN-001-DISC, CU-ENT-002-MTO, CU-ENT-004-BACK, CU-FAC-002-VAL
2. 7 especificaciones de CU reescritas en voz activa (todos los verbos
provienen de los diagramas de robustez existentes):
- CU-VEN-001 Crear presupuesto
- CU-VEN-004 Confirmar pedido
- CU-ENT-002 Reservar productos
- CU-ENT-004 Validar entrega
- CU-FAC-001 Crear factura
- CU-FAC-002 Publicar factura
- CU-FAC-003 Registrar pago
3. Cada CU incluye las secciones pedidas:
- Nombre
- Objetivo
- Pre-condicion
- Post-condicion
- Pasos trascendentes (en voz activa)
- Caminos alternativos (en voz activa)
- Excepciones
- Reglas de negocio
- Relaciones <<include>> y <<extend>>
- Diagrama de robustez asociado
- Tabla de verbos clave (para validar la voz activa)
4. Matriz de trazabilidad actualizada con la tabla de CU includes/extends.
Archivos:
- diagrams/plantuml/d_cu_gen_002_casos_uso_extend_include.puml
- diagrams/png/D-CU-GEN-002 — Casos de Uso con extend e include.png
- diagrams/svg/D-CU-GEN-002 — Casos de Uso con extend e include.svg
- diagrams/pdf/D-CU-GEN-002 — Casos de Uso con extend e include.pdf
- docs/02_casos_uso/*.md (7 specs reescritas)
- docs/09_trazabilidad/matriz_trazabilidad.md (actualizada)
Documentación generada:
- 7 casos de uso (CU-VEN-001, CU-VEN-004, CU-ENT-002, CU-ENT-004, CU-FAC-001, CU-FAC-002, CU-FAC-003)
- Modelo de dominio inicial (12 conceptos, 9 reglas de negocio)
- Arquitectura general (C4 contexto + contenedores)
- Prototipo del formulario de presupuesto
- 5 diagramas PlantUML (.puml):
- Diagrama general de casos de uso
- Modelo de dominio conceptual
- Diagrama de robustez de CU-VEN-004
- Diagrama de secuencia de CU-VEN-004
- Diagrama de clases técnicas (integración Venta/Stock/Contabilidad)
- Matriz de trazabilidad con 20 EV-COD y 22 EV-INF
Odoo analizado: 19.0 Community (rama 19.0)
Método: ingeniería inversa con verificación de código fuente
Nota: NO pushear (gate S2). Ale debe revisar antes de merge a main.