Agent skill

constraints-principle

Limita acciones posibles para prevenir errores. Use cuando diseñe formularios, flujos críticos, o sistemas donde los errores son costosos.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/constraints-principle-vjrivmon-setup-software-ia

Metadata

Additional technical details for this skill

author
ux-ui-skills
version
1.0
category
design-principles

SKILL.md

Principio de Restricciones (Constraints)

Resumen

Las restricciones limitan las acciones posibles del usuario, previniendo errores al hacer imposible o difícil realizar acciones incorrectas. Guían al usuario hacia el camino correcto.

Origen

  • Autor: Don Norman
  • Año: 1988
  • Fuente: "The Design of Everyday Things"

Tipos de Restricciones

Físicas

  • Forma que solo permite un uso
  • USB-C que entra de cualquier lado
  • Tarjeta SIM que solo cabe de una forma
  • En digital: campos con máximo de caracteres

Semánticas

  • Significado que restringe opciones
  • Un semáforo solo puede estar rojo, amarillo o verde
  • En digital: dropdowns con opciones válidas

Culturales

  • Convenciones sociales
  • Rojo = peligro/stop
  • Verde = ok/continuar
  • En digital: patrones aprendidos

Lógicas

  • Relaciones naturales entre elementos
  • En formularios: campos que se habilitan condicionalmente
  • Validaciones que previenen estados imposibles

Aplicación en Diseño

Formularios

  • Input types específicos (email, tel, date)
  • Min/max en campos numéricos
  • Dropdowns en lugar de texto libre
  • Campos disabled hasta completar prerrequisitos

Flujos de Trabajo

  • Steps que no se pueden saltar
  • Validación antes de continuar
  • Confirm antes de acciones destructivas
  • Permisos basados en roles

Datos

  • Formatos predefinidos (fecha, teléfono)
  • Ranges en sliders
  • Opciones mutuamente excluyentes
  • Límites de caracteres

Navegación

  • Estados disabled para opciones no disponibles
  • Rutas bloqueadas hasta completar requisitos
  • Logout que no permite volver sin login
  • Deep links validados

Ejemplos

  • Date pickers: Solo fechas válidas seleccionables
  • Stripe: Formato de tarjeta forzado
  • Git: Branch protection rules
  • Forms: Required fields
  • USB-C: Reversible por diseño

Anti-patterns

  • ❌ Permitir datos inválidos que luego fallan
  • ❌ Campos de texto libre para datos estructurados
  • ❌ Acciones destructivas sin confirmación
  • ❌ Estados inconsistentes posibles
  • ❌ Constraints tan estrictas que frustran

Métricas

  • Error Prevention Rate: Errores evitados por constraints
  • Form Validation Failures: Fallos en validación
  • Invalid State Occurrences: Estados imposibles alcanzados
  • User Frustration Score: Balance constraints/flexibilidad

Principios Relacionados

  • [[poka-yoke]] - Diseño a prueba de errores
  • [[nielsen-error-prevention]] - Prevenir antes que curar
  • [[postels-law]] - Balance entre flexibilidad y rigor

Referencias

Didn't find tool you were looking for?

Be as detailed as possible for better results