Análisis de contrato · Bloque 1
EX-B1-03
Contrato REST de una biblioteca de investigación
Una biblioteca interna necesita que otros sistemas consulten documentos y autores, y registren préstamos. El encargo describe capacidades, pero no rutas ni operaciones.
Cómo abordarla
Decide sin fingir que el análisis es implementación
Responde primero con la evidencia disponible. Consulta la teoría solo para comprobar el supuesto que no puedas justificar.
Abrir análisis técnico
1. Abre la evidencia
- Requisitos del contratoEncargo completo, restricciones de identidad y preguntas abiertas.
- Plantilla de operacionesPlantilla compacta de operaciones, supuestos, reintentos y devolución.
2. Analiza y decide
- Lee el diccionario técnico y propón únicamente las operaciones necesarias para listar y consultar documentos, abrir un préstamo y registrar su devolución.
- Para cada operación indica método, ruta, entrada principal y resultado observable.
- Explica en dos o tres frases cómo manejas un reintento de creación y la devolución del préstamo.
- Declara los supuestos que el brief no resuelve; no diseñes autenticación, persistencia ni endpoints adicionales.
3. Entrega una decisión revisable
- Propuesta compacta de operaciones y hasta tres supuestos de diseño.
- Una nota breve sobre reintentos y devolución del préstamo.
Registra tu decisión antes de contrastarla con el material.
Pregunta central
¿Cómo representarías documentos, autores y préstamos como recursos sin convertir cada acción del enunciado en una ruta con un verbo?
Para ordenar tu razonamiento
- Propón una ruta de colección y una ruta individual para cada recurso imprescindible.
- Elige método y resultado esperado para abrir y finalizar un préstamo.
- Explica qué ocurriría si el cliente repite la petición después de perder la respuesta.
Escribe lo que piensas. Se guarda automáticamente en este navegador.
Sin respuesta guardada.
Pistas opcionales
Pista 1 · Sustantivos antes que rutas
- Empieza por qué entidades reconoce el negocio y cuáles poseen identidad.
- No conviertas cada frase de los requisitos en un endpoint.
Pista 2 · Piensa en la repetición
- Para cada operación de escritura, imagina que la respuesta se pierde y el cliente repite exactamente la petición.
Profundización opcional
Diseñar un contrato HTTP coherente mediante recursos, rutas, métodos y estados, separando sustantivos de acciones.
Contexto adicional
- Existen documentos, autores y préstamos con identificadores estables.
- Un documento puede tener varios autores y puede estar disponible o prestado.
- Los consumidores deben listar y filtrar documentos, consultar un documento, abrir un préstamo y registrar su finalización.
- La referencia del préstamo la asigna el servidor.
- Un cliente puede repetir una petición después de perder la respuesta por un timeout.
Decisiones abiertas
- Cómo expresar la devolución o cierre del préstamo.
- Si la relación documento-autor necesita operaciones propias en el alcance mínimo.
- Qué filtros pertenecen a la colección de documentos.
Cómo revisar tu respuesta
- Las rutas expresan recursos y no una colección arbitraria de verbos remotos.
- Colección y elemento individual se distinguen de forma consistente.
- La apertura de un préstamo no se presenta como idempotente sin una condición adicional explícita.
- El contrato contempla recurso inexistente y conflicto de disponibilidad.
- La decisión abierta se documenta sin fingir que existe una única respuesta universal.
Evidencia, revisión y reinicio
- Respuesta de diseño guardada localmente en el navegador.
- Contrato de operaciones y decisiones justificadas en la plantilla opcional.
Revisión: con Codex, utilizando la evidencia y los criterios anteriores; no se publica una solución oficial.
Reinicio: Borrar la respuesta desde la tarjeta y volver a descargar las plantillas originales antes de un nuevo intento.