Plantillas¶
Esta página reúne una plantilla por cada formato abierto de los
requisitos, más una declaración de
entornos y otra de modelo de ramas. Cada una está rellenada con un ejemplo ficticio: la tienda en
línea de Ana y su elemento TIE-12, «exportar pedidos a CSV».
Cómo usarlas¶
- Ninguna serialización es obligatoria. Los bloques usan una notación de claves y valores (YAML genérico) sólo para ser legibles; un gestor de tareas, un archivo del repositorio o una hoja de cálculo pueden contener los mismos campos.
- Los campos son los mínimos de los requisitos. Un proyecto puede añadir otros; no puede omitir los requeridos cuando el requisito aplica.
- Los datos son ficticios. No se copian correos, nombres ni secretos reales; los valores de
huella, fechas y personas son inventados. Las direcciones usan el dominio reservado
.invalid. - Publicar una plantilla no crea obligaciones ni aprueba ningún perfil. Una plantilla rellenada documenta una declaración; no demuestra que sea cierta ni que el trabajo sea bueno.
- Lo que no se sabe se escribe como
desconocidoohipótesis, no como dato.
Para el ciclo completo, véanse el ciclo de vida, la planificación, las ramas, entornos y versiones y las cuadrillas.
Carta de proyecto¶
Formato de R-019. La completa el responsable de producto antes del primer lote de tipo función.
carta_de_proyecto:
version: 1.0
fecha: 2026-10-01
objetivo: Vender artesanías en línea con envío nacional.
problema: Hoy los pedidos se llevan en una hoja de cálculo y se pierden pedidos.
alcance: Catálogo, carrito, pago, pedidos y exportación de pedidos.
exclusiones: Envíos internacionales; aplicación móvil.
responsables:
producto: Ana
coordinación: Ana
técnica: Ana
entrega: Ana
catalogo_de_efectos_criticos:
- desplegar en producción
- pagos o transferencias
- borrado de datos (por ejemplo, borrar pedidos)
- cambios de permisos
- publicación o envío a terceros (por ejemplo, correos a clientes reales)
- decisiones que afecten a personas
restricciones_de_datos:
- Los datos de clientes reales sólo existen en producción.
- Los demás entornos usan datos sintéticos.
criterio_de_exito: Todo pedido recibido aparece en la lista de pedidos en menos de un minuto.
historial_de_cambios:
- {version: 1.0, fecha: 2026-10-01, decidió: Ana, motivo: versión inicial}
Levantamiento¶
Formato de R-020, para adoptar SCAFFOLD sobre trabajo existente. Cada dato es un hecho con fuente o una hipótesis.
levantamiento:
fecha: 2026-10-02
repositorios:
- {nombre: tienda, dato: hecho, fuente: lista de repositorios del servicio}
entornos:
- {nombre: producción, dato: hecho, fuente: panel del proveedor de alojamiento}
- {nombre: pruebas, dato: hipótesis, nota: Ana cree que existe; no se ha verificado}
comprobaciones:
- {nombre: pruebas automáticas, ultimo_resultado: fallan 3 de 40, dato: hecho, fuente: ejecución del 2026-10-02}
versiones_en_uso:
- {componente: tienda, version: desconocida}
duenos: [{area: pagos, dueno: Ana, dato: hecho, fuente: Ana}]
deuda_y_riesgos:
- {descripcion: sin copia de seguridad probada, dato: hipótesis}
trabajo_en_curso:
- {descripcion: exportar pedidos, destino: elemento TIE-12}
- {descripcion: rediseño de portada, destino: descartado, motivo: fuera de alcance de la carta}
Elemento de trabajo¶
Formato de R-021 con el estado de R-023. Los estados son
propuesto, listo, en_curso, en_revisión, terminado o descartado; es un esquema propio,
distinto del de un lote o una nota.
elemento_de_trabajo:
identificador: TIE-12
tipo: función # iniciativa, función, corrección, reestructuración, investigación u otro declarado
objetivo: Exportar pedidos a CSV.
criterios_de_aceptacion:
- El archivo incluye número de pedido, fecha, total y estado.
- Con 1000 pedidos de prueba el archivo se genera sin error.
responsable: Ana
estado: en_curso
padre: TIE-3 # o ninguno
dependencias: []
lotes: [L-2026-014]
ramas: [función/TIE-12-exportar-csv]
cambios: [referencias en los mensajes con el trailer Refs: TIE-12]
version: pendiente
Solicitud de integración¶
Formato de R-025 y R-026.
solicitud_de_integracion:
elemento_o_lote: TIE-12 / L-2026-014
rama: función/TIE-12-exportar-csv
responsable: Ana
asistentes_que_intervinieron: [asistente-de-codigo, asistente-de-pruebas]
comprobaciones:
- {nombre: pruebas automáticas, resultado: pasan}
- {nombre: versión de contrato y código coinciden, resultado: pasan}
- {nombre: exclusión de la capa de ingeniería, resultado: pasa}
revisor_humano: Beto
efectos_criticos_que_toca: ninguno
Registro de despliegue¶
Formato de R-027 y R-028.
registro_de_despliegue:
version: 1.4.0
huella_del_artefacto: sha256:ejemplo-ficticio-0f3a # la huella real la calcula la herramienta de construcción
entorno: producción
persona_que_autorizo: Ana
comprobaciones: [pruebas automáticas, exclusión de la capa de ingeniería]
plan_de_reversion: Volver al artefacto de la versión 1.3.2; la exportación no cambia datos.
resultado: exitoso
hora: 2030-03-04T16:20:00-06:00 # fecha ficticia de ejemplo
Nota de versión¶
Formato de R-029. La lista de elementos se obtiene de los elementos de trabajo, no se escribe de memoria.
nota_de_version:
version: 1.4.0
etiqueta: v1.4.0 # inmutable una vez publicada
elementos_incluidos:
- {id: TIE-12, titulo: Exportar pedidos a CSV}
- {id: TIE-31, titulo: Corregir redondeo de totales}
cambios_incompatibles: ninguno
persona_que_autorizo: Ana
fecha: 2030-03-04 # fecha ficticia de ejemplo
Ficha de cuadrilla¶
Formato de R-030.
ficha_de_cuadrilla:
nombre: Exportaciones
responsable: Ana
integrantes:
personas: [Beto]
agentes:
- nombre: asistente-de-codigo
perfil: escribe código en las zonas de la cuadrilla
alcance: [src/export/]
presupuesto: desconocido # se registra el dato cuando se mida
supervisor: Beto
- nombre: asistente-de-pruebas
perfil: escribe pruebas
alcance: [tests/]
presupuesto: desconocido
supervisor: Beto
zonas: {src/export/: asistente-de-codigo, tests/: asistente-de-pruebas}
tipos_de_trabajo_que_acepta: [función, corrección]
Declaración de entornos¶
Campos de R-027. La escala de clasificación del ejemplo es ficticia (pública, interna, confidencial, crítica; de menor a mayor) y el proyecto declara la suya (MILPA-R-003). Los datos sintéticos o anonimizados son una práctica, no niveles de la escala.
entornos:
- nombre: local
proposito: desarrollar y probar
valor_maximo_admitido: pública # datos sintéticos
origen_de_secretos: propios, sin valor real
quien_despliega: quien trabaja
comprobaciones_de_entrada: ninguna
- nombre: integración
proposito: comprobaciones automáticas de cada rama
valor_maximo_admitido: pública # datos sintéticos
origen_de_secretos: almacén de secretos del proyecto, propios
quien_despliega: proceso de integración continua
comprobaciones_de_entrada: pruebas automáticas
- nombre: preproducción
proposito: probar la versión candidata
valor_maximo_admitido: interna # datos anonimizados
origen_de_secretos: propios, distintos de producción
quien_despliega: responsable de entrega
comprobaciones_de_entrada: pruebas de integración
- nombre: producción
proposito: servir a las personas usuarias
valor_maximo_admitido: crítica
origen_de_secretos: propios, sólo accesibles al proceso de despliegue
quien_despliega: responsable de entrega, con confirmación informada
comprobaciones_de_entrada: artefacto con la huella comprobada; plan de reversión
Declaración del modelo de ramas¶
Campos de R-026 y convención de R-025.
modelo_de_ramas:
rama_principal: principal
proteccion: sólo se cambia por solicitud de integración revisada por una persona
tipos_de_rama:
- {prefijo: función/, patron: "función/<id>-<resumen>", ejemplo: función/TIE-12-exportar-csv}
- {prefijo: corrección/, patron: "corrección/<id>-<resumen>", ejemplo: corrección/TIE-31-redondeo-de-totales}
vida_maxima: 3 días hábiles
una_rama_por_lote: sí
quien_integra: Ana o la persona que ella designe; un asistente no escribe en la rama principal salvo mediante una solicitud de integración revisada por una persona; integrar lo catalogado como crítico lo decide una persona
comprobaciones_antes_de_integrar: [pruebas automáticas, sincronía de versiones, exclusión de la capa de ingeniería]
turno_en_rama_compartida: ninguna rama compartida declarada
atribucion_en_cambios:
mecanismo: trailers al final del mensaje (clave: valor)
claves: [Refs, Lote, Co-authored-by, Responsable]
Límites¶
Las plantillas no sustituyen los requisitos: si una plantilla y un requisito difieren, rige el requisito. Que un archivo tenga todos sus campos no demuestra calidad ni veracidad (riesgos residuales de las fichas citadas). La verificación que promovería estas plantillas de ejemplo a guía comprobada sería rellenarlas en un proyecto real y registrar qué campos faltaron o sobraron (Hypothesis hasta entonces).
Volver a SCAFFOLD.