ATALAIA
  1. Inicio
  2. Servicios
  3. Requisitos de seguridad
02Estación 02 · Diseño

Requisitos de seguridad

Seguridad escrita como requisitos que tus desarrolladores pueden construir y probar: límites de frecuencia, trazas de auditoría, reglas de datos y casos de abuso, en el ticket desde el primer día.

De la historia a los criterios

Elige un paso o déjalo correr. Cada línea es lo que alguien dice de verdad en la sala.

Paso 1Empieza por la historia

La historia de usuario y el objetivo de negocio, tal como los escribió producto.

PRODUCTOComo usuario, veo ofertas de partners y canjeo una con mis puntos.

ATALAIABien. Ahora, ¿qué no debería pasar nunca con esta historia?

Sale de la salaHistoria: canjear una oferta de partner

Paso 2Haz las preguntas no funcionales

Datos, identidad, límites, logging, fallos y abuso.

ATALAIA¿Cuántos redeems por minuto son normales para un usuario?

PRODUCTODos, quizá tres. Diez sería un bot.

DEV LEADHoy registramos el código del vale. ¿Deberíamos?

ATALAIARegistra que ocurrió, nunca el código. Un código es dinero.

Sale de la sala6 preguntas, 6 respuestas

Paso 3Escríbelos como criterios

Criterios de aceptación comprobables, no recomendaciones.

DEV LEADCriterio: como máximo 5 redeems por minuto por usuario, y luego un 429.

QATesteable. Y un caso de abuso: un bot haciendo redeem desde 50 cuentas.

DESARROLLADORUn evento de auditoría por cada redeem, sin el código del vale.

Sale de la sala6 criterios en el ticket

Paso 4Conviértelo en baseline

Las más comunes pasan a ser el valor por defecto de cada servicio nuevo.

ATALAIALos rate limits, los eventos de auditoría y las reglas de secretos pasan a la baseline del servicio.

DEV LEADAsí el siguiente servicio empieza con ellas y nadie las vuelve a discutir.

Sale de la salaBaseline: 12 reglas para cada servicio

  • ATALAIA
  • PRODUCTO
  • DEV LEAD
  • QA
  • DESARROLLADOR

Una historia, antes y después

El mismo ticket. A la izquierda, como lo escribió producto. A la derecha, tras una conversación.

User story · REW-214

Como usuario, puedo canjear una oferta de un partner con mis puntos.

Criterios de aceptación
  • La oferta muestra un código de voucher
  • El saldo de puntos baja
Historia de usuario · REW-214 · después de la conversación

Como usuario, puedo canjear una oferta de un partner con mis puntos.

Criterios de aceptación
  • La oferta muestra un código de voucher
  • El saldo de puntos baja
  • LÍMITESComo máximo 5 canjes por usuario y minuto; después, 429.
  • IDENTIDADSolo el propietario de los puntos puede canjearlos, comprobado en el servidor.
  • DATOSLos códigos de cupón nunca se registran en logs y se enmascaran en las herramientas de soporte.
  • AUDITORÍACada canje escribe un evento: quién, qué, cuándo, resultado.
  • FALLOSi el partner agota el tiempo de espera, los puntos vuelven en menos de un minuto.
  • ABUSOLos canjes desde muchas cuentas nuevas se marcan. QA se encarga del test.

Por qué importa

“Registra que ocurrió, nunca el código. Un código es dinero.”

ATALAIA · paso 2, Haz las preguntas no funcionales

Si la seguridad no está en el requisito, llega como un hallazgo. Los desarrolladores lo corrigen entonces bajo presión, en código que nunca se diseñó para ello.

Qué recibes

  • Un conjunto de requisitos por funcionalidad, en el formato que tu equipo ya usa
  • Casos de abuso escritos junto a las historias de usuario
  • Un baseline reutilizable para cada servicio nuevo
  • Ideas de tests que QA puede automatizar

Formato típico: En paralelo a la planificación, unas horas por funcionalidad, y después una base que mantienes.

Habladlo

Una llamada de 30 minutos. Sin diapositivas, sin lista de precios y con un siguiente paso en cualquier caso.