6 Commits
Author SHA1 Message Date
saptfi2026-bot 6c8f468b71 feat(arquitectura): estilos arquitectonicos + referencia al apunte
Incorpora los conceptos de estilos arquitectonicos al diseno de Odoo,
basado en el apunte de la materia provisto por el usuario.

Cambios:

1. Nuevo diagrama D-ARQ-TECH-002 - Arquitectura con Estilos Arquitectonicos:
   - Identifica 8 estilos arquitectonicos aplicados a Odoo 19.0
   - Cliente-Servidor (browser <-> Odoo)
   - 3-Tier (Cliente | Aplicacion | Datos)
   - MVC (Vista/Controlador/Modelo)
   - Capas (Presentacion | Web | Logic | Addons)
   - Pipe-and-Filter (HTTP request pipeline)
   - Microkernel (addons via _inherit)
   - Repository (ORM Odoo encapsula BD)
   - Event-Driven (mail.thread, onchange, cron)

2. Nuevo documento docs/04_arquitectura/estilos_arquitectonicos.md:
   - Explicacion detallada de cada estilo
   - Aplicacion concreta a Odoo con evidencia EV-ARQ-001..006
   - Tabla de combinacion de estilos
   - Beneficios y trade-offs
   - Referencia al apunte de la materia

3. README actualizado:
   - Ejemplo 5 ahora menciona D-ARQ-TECH-001 y D-ARQ-TECH-002
   - Nueva seccion "Estilos arquitectonicos" en Recursos adicionales
   - Nueva entrada "Apunte de estilos arquitectonicos" en Referencia
     bibliografica con link al Google Drive

Archivos:
- diagrams/plantuml/d_arq_tech_002_estilos_arquitectonicos.puml
- diagrams/png/D-ARQ-TECH-002 ... .png
- diagrams/svg/D-ARQ-TECH-002 ... .svg
- diagrams/pdf/D-ARQ-TECH-002 ... .pdf
- docs/04_arquitectura/estilos_arquitectonicos.md
- README.md (actualizado)
2026-06-24 14:35:40 -03:00
saptfi2026-bot 92954037d6 feat(patrones): patron Composite aplicado a Lista de Materiales (BoM)
Nuevo diagrama D-PAT-COMPOSITE-001 + documento siguiendo el estandar
FCEIA-UNR (Cristia, 2015) para documentar patrones de diseno.

Contenido:

1. Diagrama de clases Composite (PlantUML):
   - Patron Composite puro (Component, Leaf, Composite)
   - Aplicacion concreta a Odoo 19.0:
     * Component = BomComponent (interfaz abstracta Python)
     * Leaf = product.product
     * Composite = mrp.bom
     * children = bom_line_ids (One2many)
     * Operation = explode(product, quantity)
     * add = _onchange_product_id()
     * remove = unlink() (CRUD Odoo)
     * getChild = _compute_child_bom_id()

2. Documento docs/12_patrones_diseno/composite_bom.md con:
   - Documentacion Pattern ... based on Composite because ...
   - Seccion where mapeando cada elemento patron a elemento diseno
   - Seccion comments explicando las decisiones
   - Tabla completa de mapeo Pattern Element -> Diseno Element
   - Analisis de cambios admitidos y anticipados
   - Variantes del patron en la implementacion
   - Justificacion detallada
   - EV-COD-031..038 verificando contra codigo real

Archivos:
- diagrams/plantuml/d_pat_composite_001_bom.puml
- diagrams/png/D-PAT-COMPOSITE-001 ... .png
- diagrams/svg/D-PAT-COMPOSITE-001 ... .svg
- diagrams/pdf/D-PAT-COMPOSITE-001 ... .pdf
- docs/12_patrones_diseno/composite_bom.md
2026-06-24 11:18:50 -03:00
saptfi2026-bot eb0f1c2eb6 feat(cu-extend-include): CU diagram con 5+5 relaciones, specs en voz activa
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)
2026-06-23 22:56:28 -03:00
saptfi2026-bot cb83bc3442 feat(arquitectura): diagrama de arquitectura estratificada de Odoo
Nuevo diagrama D-ARQ-TECH-001 que muestra las 4 capas del stack de Odoo:
- Capa 1: Cliente (navegador, JS runtime)
- Capa 2: Servidor de aplicacion
  - Subcapa 2.1: Presentacion (OWL, Views XML, Static)
  - Subcapa 2.2: Web Layer (Router, Controllers, JSON-RPC, XML-RPC)
  - Subcapa 2.3: Business Logic (Models, ORM, Computed)
  - Subcapa 2.4: Addons (sale, account, stock, product, etc.)
- Capa 3: Persistencia (PostgreSQL, Filestore)
- Capa 4: Integracion (REST API, SMTP, Payment, Webhooks)

Componentes incluidos segun pedido:
a) views ✓
b) models ✓
c) controller ✓
d) Integraciones por API REST desde los controller ✓
e) Interacciones desde XMLRPC ✓
f) Enrutador ✓
g) Static (javascript, css) ✓
h) OWL ✓
i) addons ✓
j) etc (filestore, SMTP, payment gateway, webhooks) ✓

Archivos:
- diagrams/plantuml/d_arq_tech_001_capas_odoo.puml
- diagrams/png/d_arq_tech_001_capas_odoo.png
- diagrams/svg/d_arq_tech_001_capas_odoo.svg
- diagrams/pdf/d_arq_tech_001_capas_odoo.pdf
- docs/04_arquitectura/arquitectura_estratificada_odoo.md
2026-06-23 22:01:18 -03:00
saptfi2026-bot dd3a98b8d5 feat(iter-1-completa): PDFs, diagramas extra, EV-COD validadas, material educativo
Cambios desde el commit anterior:

PDFs y formatos visuales (Paso 1):
- 11 PNGs + 11 SVGs + 11 PDFs generados con PlantUML 1.2021.16
- Conversión PNG→PDF con fpdf2 (workaround para Java 8)

Diagramas adicionales (Paso 2):
- d_rob_ven_001_crear_presupuesto.puml + .pdf
- d_sec_ven_001_crear_presupuesto.puml + .pdf
- d_rob_ent_002_reservar_productos.puml + .pdf
- d_sec_ent_002_reservar_productos.puml + .pdf
- d_rob_fac_001_crear_factura.puml + .pdf
- d_sec_fac_001_crear_factura.puml + .pdf

EV-COD adicionales (Paso 3):
- EV-COD-021 a EV-COD-030 (10 nuevas evidencias)
- EV-INF reducidas de 22 a 8 (14 promovidas a EV-COD)
- evidence/index.md con catálogo completo de evidencias

Material educativo (Paso 4):
- docs/10_material_estudio/README.md
- docs/10_material_estudio/01_que_es_iconix.md
- docs/10_material_estudio/02_aplicacion_a_odoo.md
- docs/10_material_estudio/03_como_leer_los_cu.md
- docs/10_material_estudio/04_ejercicios_practicos.md

Matriz de trazabilidad actualizada con las nuevas EV-COD.
2026-06-23 20:41:21 -03:00
saptfi2026-bot 73e344edc8 feat(initial-iteration): primera iteración ICONIX del flujo venta→factura→pago
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.
2026-06-23 20:18:36 -03:00