mirror of
https://github.com/cursos-uai/sap_tfi_2026.git
synced 2026-07-31 20:48:30 -03:00
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.
2.4 KiB
2.4 KiB
Arquitectura General del Proyecto SAP-TFI-2026
Nivel C4: Contexto
[Usuario] ───usa───> [Sistema Odoo 19]
│
│──consulta──> [PostgreSQL]
│
│──envía──> [Servicio de Email]
│
│──integra──> [Servicio de Pago]
Actores externos
- Usuario: persona que opera Odoo (vendedor, operador de almacén, facturador).
- Servicio de Email: SMTP relay para envío de correos de presupuestos y confirmaciones.
- Servicio de Pago: pasarela de pago externa (integrable vía módulos).
- PostgreSQL: base de datos relacional que persiste todos los datos.
Nivel C4: Contenedores
[Cliente Web (navegador)]
│
│ HTTPS
↓
[Servidor Odoo]
├── [Módulo sale] (Python)
├── [Módulo account] (Python)
├── [Módulo stock] (Python)
├── [Módulo product] (Python)
├── [Módulo mail] (Python)
├── [Módulo delivery] (Python)
└── [ORM Odoo]
│
│ conexión nativa
↓
[PostgreSQL]
Componentes principales
| Componente | Descripción | Tecnología |
|---|---|---|
| Cliente Web | Interfaz de usuario | HTML/CSS/JS (servido por Odoo) |
| Servidor Odoo | Aplicación principal | Python + Odoo Framework |
| Módulo sale | Lógica de ventas | Python |
| Módulo account | Lógica contable | Python |
| Módulo stock | Lógica de inventario | Python |
| Módulo product | Lógica de productos | Python |
| Módulo mail | Comunicación (correos) | Python |
| Módulo delivery | Logística de entrega | Python |
| ORM Odoo | Capa de abstracción de datos | Python |
| PostgreSQL | Almacenamiento persistente | C |
Diagrama PlantUML
Ver diagrams/plantuml/d_arq_gen_001_arquitectura_general.puml.
Reglas arquitectónicas
- RN-ARQ-001: El servidor Odoo es el único punto de entrada al sistema.
- RN-ARQ-002: Toda la persistencia se realiza vía ORM Odoo (no acceso directo a DB).
- RN-ARQ-003: Los módulos extienden funcionalidad vía
_inherit(veraddons/sale/models/sale_order.py:36).
Pendientes de validación
- EV-INF-019: La arquitectura refleja la versión Community. Enterprise tendría módulos adicionales (
sale_subscription,sale_timesheet, etc.). - EV-INF-020: La integración con pasarela de pago no fue verificada en detalle.