Cómo controlar la usabilidad con tácticas
Clase 38 de 43 • Curso Profesional de Arquitectura de Software
Contenido del curso
Atributos de calidad
- 2

Qué son los atributos de calidad en software
01:49 min - 3

Cómo medir idoneidad funcional en software
02:52 min - 4

Qué es eficiencia de ejecución en software
04:14 min - 5

Cómo medir interoperabilidad y coexistencia
03:49 min - 6

Qué es la usabilidad y sus 6 dimensiones
08:14 min - 7

Cómo medir confiabilidad en software
05:38 min - 8

Los 5 pilares de seguridad en software
04:01 min - 9

Cómo garantizar mantenibilidad con tests
06:27 min - 10

Adaptabilidad vs capacidad de instalación vs reemplazo
02:48 min - 11

Tensiones entre atributos de calidad de software
04:04 min - 12

Atributos de calidad según fase de empresa
07:00 min
Patrones de arquitectura
- 13

Qué es un patrón de arquitectura
02:50 min - 14

Modelo vista controlador: cómo separar responsabilidades
05:37 min - 15

Arquitectura en capas: controller, servicio y repositorio
03:14 min - 16

Event sourcing vs bases relacionales
06:17 min - 17

Qué es la arquitectura microkernel
01:52 min - 18

Arquitectura Comparte Nada con Map Reduce
02:29 min - 19

Patrón de microservicios: cuándo y cómo
03:57 min - 20

Qué es CQRS y cómo separa lectura de escritura
03:24 min - 21

Arquitectura hexagonal: puertos y adaptadores
04:10 min - 22

Qué son los contextos delimitados en DDD
05:34 min - 23

Cómo combinar patrones de arquitectura
09:22 min - 24

Evolución de patrones desde monolito a microservicios
07:58 min
Diseño de una arquitectura
- 25

Cómo traducir requerimientos en decisiones arquitectónicas
02:18 min - 26

Conectores en arquitectura: tipos y cuándo usarlos
06:18 min - 27

Llamadas asíncronas vs síncronas vs cliente-servidor
03:05 min - 28

Conector enrutador vs difusión: Twitter
01:55 min - 29

Conectores cola, repositorio y pub/sub
03:52 min - 30

Framework de diseño orientado a atributos
01:55 min - 31

Cómo detectar fallas y reparar sistemas
05:59 min - 32

Cómo recuperar y prevenir fallas en sistemas
04:09 min - 33

Tácticas para confinar modificaciones
06:15 min - 34

Cómo prevenir efectos dominó en software
12:17 min - 35

Tácticas para controlar eficiencia de ejecución
09:14 min - 36

Cómo detectar, resistir y recuperarse de ataques
09:02 min - 37

Cómo probar que el software funciona correctamente
05:14 min - 38

Cómo controlar la usabilidad con tácticas
Viendo ahora - 39

Cómo validar arquitectura con ATAM y métricas
06:34 min - 40

Evolución de arquitectura: startup a gran escala
10:30 min
Modelado y documentación de arquitectura
Un diseño centrado en el usuario exige tácticas claras para informar, asistir y dar control. Aquí encontrarás cómo aplicar escenario de usabilidad, separación de interfaz de usuario, tácticas de iniciativa del usuario como cancelar, deshacer, agregación y múltiples vistas, y modelado del estado desde el sistema: modelo del usuario, modelo del sistema y modelo de la tarea.
¿Cómo se estructura el escenario de usabilidad?
El punto de partida es el estímulo: el pedido del usuario. A partir de ahí, se eligen tácticas que controlen la usabilidad y ofrezcan información y asistencia adecuada. Se distinguen tres líneas: separar la interfaz de usuario, iniciativas del usuario e iniciativas del sistema.
Separar la interfaz de usuario reduce acoplamiento y habilita iteración continua. Esta táctica se relaciona con la coherencia semántica de la mantenibilidad: la UI se independiza de la lógica de negocio y de la estructura de datos. Así, se puede mejorar la experiencia sin tocar módulos internos.
¿Qué tácticas de iniciativa del usuario mejoran eficiencia y control?
El objetivo es que la persona tenga comando sobre lo que ocurre y pueda operar con menos fricción. Cuatro tácticas clave: cancelar, deshacer, agregación y múltiples vistas.
¿Cuándo usar cancelar y deshacer?
- Cancelar: permite detener una acción en ejecución de duración perceptible. Requiere soporte explícito en la interfaz.
- Procesos muy rápidos no se cancelan de forma natural: no hay ventana temporal para intervenir.
- Deshacer: vuelve al estado anterior cuando un paso no da el resultado esperado.
- Funciona bien en entornos con estado controlado, como aplicaciones de escritorio o móviles.
- En la web tradicional stateless, deshacer es más difícil: cada pedido es independiente.
- Con renderizado client side y lógica del lado del cliente, como en React o View, hay mayor control del estado y se habilitan estas operaciones.
¿Cómo potencia la agregación la repetitividad?
- Agrupa acciones para ejecutarlas juntas y ganar eficiencia.
- Permite repetir lotes ya usados en el pasado.
- En Excel o Google Spreadsheets: aplicar un cambio a múltiples celdas al mismo tiempo.
- Acciones con contexto: arrastrar un valor numérico puede generar una secuencia automática.
- Reduce pasos y errores al evitar operaciones uno a uno.
¿Por qué múltiples vistas optimizan la acción?
- Muestra solo la información necesaria para cada momento.
- La misma entidad puede verse en lista o en detalle, según la tarea.
- En un e-commerce: listado de productos para elegir rápido; vista de detalle con peso, tamaño y relacionados para decidir.
- Evita saturar al usuario y facilita la acción objetivo.
¿Qué iniciativas del sistema requieren modelar el estado?
Para dar feedback pertinente, el sistema debe conocer el estado actual. Tres modelos lo permiten: modelo del usuario, modelo del sistema y modelo de la tarea. Con ellos, los mensajes son oportunos, contextuales y accionables.
¿Qué aporta el modelo del usuario?
- Saber si la persona ya interactuó con un formulario antes de validar.
- Evitar alertas prematuras cuando no ingresó datos aún.
- Detectar si sigue mirando esa pantalla para notificar a tiempo.
- Ajustar el tono y el momento del feedback al contexto real.
¿Para qué sirve el modelo del sistema?
- Conocer procesos en ejecución y su avance.
- Notificar detenciones, errores y causas de falla.
- En cargas de datos masivas: informar líneas procesadas y líneas con error.
- Si el sistema no es consciente del proceso, no puede comunicar el progreso.
¿Cómo guía el modelo de la tarea la asistencia?
- Entender la tarea específica, por ejemplo: realizar una compra.
- Asistir con problemas concretos: tarjeta de crédito, dirección de facturación, etcétera.
- Tomar decisiones orientadas al éxito de esa tarea, no a una comunicación genérica cliente-servidor.
- Habilitar mensajes y ayudas alineadas con el objetivo del usuario.
¿Dónde te gustaría aplicar estas tácticas de usabilidad? Comparte dudas o ejemplos en los comentarios.