Elegir espacio

Dos espacios

¿Qué quieres consultar?

Elige el espacio al que quieres entrar.

Biblioteca FastAPIFundamentos HTTP

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.

  • Analizar y decidir
  • Diseño
  • Básica
  • Apoyo moderado
  • Evidencia para revisar

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

2. Analiza y decide

  1. 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.
  2. Para cada operación indica método, ruta, entrada principal y resultado observable.
  3. Explica en dos o tres frases cómo manejas un reintento de creación y la devolución del préstamo.
  4. 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

  1. Propón una ruta de colección y una ruta individual para cada recurso imprescindible.
  2. Elige método y resultado esperado para abrir y finalizar un préstamo.
  3. 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.