- Configure workspace Git repository with comprehensive .gitignore - Add Odoo as submodule for ERP reference code - Include documentation: SETUP.md, GIT-STRUCTURE.md - Add gitignore templates for projects (backend, frontend, database) - Structure supports independent repos per project/subproject level Workspace includes: - core/ - Reusable patterns, modules, orchestration system - projects/ - Active projects (erp-suite, gamilit, trading-platform, etc.) - knowledge-base/ - Reference code and patterns (includes Odoo submodule) - devtools/ - Development tools and templates - customers/ - Client implementations template 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
246 lines
6.3 KiB
Markdown
246 lines
6.3 KiB
Markdown
# Estándar de Estructura de Documentación
|
|
|
|
## Objetivo
|
|
|
|
Definir la estructura estándar para la documentación de proyectos dentro del workspace, basada en las mejores prácticas del proyecto Gamilit.
|
|
|
|
---
|
|
|
|
## Estructura de Carpetas `docs/`
|
|
|
|
### Principio de Numeración
|
|
|
|
La numeración sigue un esquema jerárquico:
|
|
- **00-09**: Visión general y contexto
|
|
- **01-0N**: Fases del proyecto (secuenciales)
|
|
- **90-99**: Documentación transversal y referencia
|
|
|
|
```
|
|
docs/
|
|
├── 00-vision-general/ # Visión, arquitectura, contexto
|
|
├── 01-fase-{nombre}/ # Primera fase del proyecto
|
|
├── 02-fase-{nombre}/ # Segunda fase del proyecto
|
|
├── ... # Fases adicionales según necesidad
|
|
├── 0N-fase-{nombre}/ # N-ésima fase
|
|
│
|
|
├── 90-transversal/ # Documentación que cruza todas las fases
|
|
├── 95-guias-desarrollo/ # Guías técnicas de desarrollo
|
|
├── 96-quick-reference/ # Referencias rápidas (cheatsheets)
|
|
├── 97-adr/ # Architecture Decision Records
|
|
├── 98-standards/ # Estándares del proyecto
|
|
├── 99-finiquito/ # Documentación de cierre/entrega
|
|
│
|
|
├── {feature-especifica}/ # Carpetas de features sin numeración
|
|
└── README.md # Índice maestro de documentación
|
|
```
|
|
|
|
---
|
|
|
|
## Reglas de Numeración
|
|
|
|
### Fases del Proyecto (01-0N)
|
|
|
|
Las fases representan etapas cronológicas o lógicas del proyecto:
|
|
|
|
| Prefijo | Uso | Ejemplo |
|
|
|---------|-----|---------|
|
|
| `01-fase-` | Primera fase | `01-fase-alcance-inicial/` |
|
|
| `02-fase-` | Segunda fase | `02-fase-robustecimiento/` |
|
|
| `03-fase-` | Tercera fase | `03-fase-extensiones/` |
|
|
| `04-fase-` | Fase de backlog | `04-fase-backlog/` |
|
|
|
|
**Nomenclatura:** `{NN}-fase-{nombre-descriptivo}/`
|
|
|
|
### Documentación Transversal (90-99)
|
|
|
|
Reservada para documentación que no pertenece a una fase específica:
|
|
|
|
| Prefijo | Propósito |
|
|
|---------|-----------|
|
|
| `90-transversal/` | Cruza todas las fases (APIs, BD, componentes) |
|
|
| `95-guias-desarrollo/` | Guías técnicas para desarrolladores |
|
|
| `96-quick-reference/` | Cheatsheets, referencias rápidas |
|
|
| `97-adr/` | Architecture Decision Records |
|
|
| `98-standards/` | Estándares y convenciones del proyecto |
|
|
| `99-finiquito/` | Manuales de usuario, entrega final |
|
|
|
|
### Carpetas sin Numeración
|
|
|
|
Para features o módulos específicos que no son fases:
|
|
|
|
```
|
|
├── sistema-recompensas/ # Feature específica
|
|
├── student-portal/ # Portal específico
|
|
├── database/ # Documentación de BD
|
|
└── frontend/ # Documentación de frontend
|
|
```
|
|
|
|
---
|
|
|
|
## Estructura Interna de Fases
|
|
|
|
Cada fase debe contener:
|
|
|
|
```
|
|
01-fase-{nombre}/
|
|
├── README.md # Índice de la fase
|
|
├── _MAP.md # Mapa de archivos (opcional)
|
|
├── {EPICA-001}/ # Épica o feature principal
|
|
│ ├── README.md
|
|
│ ├── requerimientos/
|
|
│ │ └── US-{XXX}-{nombre}.md
|
|
│ ├── especificaciones/
|
|
│ │ └── SPEC-{nombre}.md
|
|
│ └── implementacion/
|
|
│ └── IMPL-{nombre}.md
|
|
└── {EPICA-002}/
|
|
└── ...
|
|
```
|
|
|
|
---
|
|
|
|
## Archivo README.md Principal
|
|
|
|
El README.md de docs/ debe incluir:
|
|
|
|
1. **Encabezado del Proyecto**
|
|
- Nombre, versión, período, estado
|
|
|
|
2. **Alcance** (MVP vs Backlog)
|
|
- Tabla clara de qué está incluido vs pendiente
|
|
|
|
3. **Mapa de Navegación**
|
|
- Árbol de estructura con descripción de cada carpeta
|
|
|
|
4. **Resumen por Fase**
|
|
- Objetivo, épicas, resultados, métricas
|
|
|
|
5. **Navegación por Dominio**
|
|
- Acceso rápido por área funcional
|
|
|
|
6. **Métricas y Estado**
|
|
- Completitud, coverage, KPIs
|
|
|
|
---
|
|
|
|
## Ejemplos por Tipo de Proyecto
|
|
|
|
### Proyecto con Fases Cronológicas (Gamilit)
|
|
|
|
```
|
|
docs/
|
|
├── 00-vision-general/
|
|
├── 01-fase-alcance-inicial/ # Mes 1
|
|
├── 02-fase-robustecimiento/ # Mes 2
|
|
├── 03-fase-extensiones/ # Mes 3-4
|
|
├── 04-fase-backlog/ # Futuro
|
|
├── 90-transversal/
|
|
├── 95-guias-desarrollo/
|
|
├── 96-quick-reference/
|
|
├── 97-adr/
|
|
├── 98-standards/
|
|
└── 99-finiquito/
|
|
```
|
|
|
|
### Proyecto con Módulos (ERP)
|
|
|
|
```
|
|
docs/
|
|
├── 00-vision-general/
|
|
├── 01-modulo-contabilidad/
|
|
├── 02-modulo-inventarios/
|
|
├── 03-modulo-ventas/
|
|
├── 04-modulo-compras/
|
|
├── 90-transversal/
|
|
├── 95-guias-desarrollo/
|
|
├── 97-adr/
|
|
└── 98-standards/
|
|
```
|
|
|
|
### Proyecto Nuevo (Minimal)
|
|
|
|
```
|
|
docs/
|
|
├── 00-vision-general/
|
|
│ └── README.md # Visión inicial
|
|
├── 01-fase-mvp/
|
|
│ └── README.md # Pendiente de definir
|
|
├── 95-guias-desarrollo/
|
|
│ └── README.md
|
|
└── README.md
|
|
```
|
|
|
|
---
|
|
|
|
## Anti-patrones
|
|
|
|
### NO hacer:
|
|
|
|
1. **Duplicar numeración**
|
|
```
|
|
# INCORRECTO
|
|
├── 01-requerimientos/
|
|
├── 01-fase-inicial/ # Conflicto de numeración
|
|
```
|
|
|
|
2. **Mezclar niveles**
|
|
```
|
|
# INCORRECTO
|
|
├── 01-fase-inicial/
|
|
├── componentes/ # Sin numeración junto con numerados
|
|
├── 02-fase-desarrollo/
|
|
```
|
|
|
|
3. **Numeración no secuencial**
|
|
```
|
|
# INCORRECTO
|
|
├── 01-fase-inicial/
|
|
├── 05-fase-final/ # Salto de numeración
|
|
```
|
|
|
|
### SÍ hacer:
|
|
|
|
1. **Numeración consistente**
|
|
```
|
|
# CORRECTO
|
|
├── 01-fase-mvp/
|
|
├── 02-fase-consolidacion/
|
|
├── 03-fase-expansion/
|
|
```
|
|
|
|
2. **Features sin numerar van al final**
|
|
```
|
|
# CORRECTO
|
|
├── 01-fase-mvp/
|
|
├── 02-fase-consolidacion/
|
|
├── 90-transversal/
|
|
├── sistema-pagos/ # Feature específica
|
|
└── integraciones/ # Feature específica
|
|
```
|
|
|
|
---
|
|
|
|
## Migración de Proyectos Existentes
|
|
|
|
Cuando se migra documentación existente:
|
|
|
|
1. **Identificar estructura actual**
|
|
2. **Mapear a la estructura estándar**
|
|
3. **Eliminar duplicados de numeración**
|
|
4. **Preservar contenido original**
|
|
5. **Actualizar referencias internas**
|
|
|
|
---
|
|
|
|
## Validación
|
|
|
|
El script `validate-structure.sh` verifica:
|
|
- Existencia de `docs/README.md`
|
|
- Carpeta `docs/` presente
|
|
- Sin carpetas con numeración duplicada
|
|
|
|
---
|
|
|
|
*Estándar basado en el proyecto Gamilit - Sistema NEXUS*
|
|
*Última actualización: 2025-12-05*
|