control_de_calidad_G2.md - UCM-FDI-DISIA/proyectois1-algoritmos GitHub Wiki
Revisión Técnica Formal — Historias de Usuario del Grupo Veneris
Revisores: Andrés García-Redondo Gallego y Claudia Villodre Pérez
Veneris: https://github.com/UCM-FDI-DISIA/proyectois1-fiesta-cumple
Aviso inicial:
Esta revisión técnica formal se realiza sobre las Historias de Usuario del grupo Veneris, basándome en nuestros propios estándares de control de calidad, ya que el grupo no dispone de uno definido. El estándar seguido es el descrito en la wiki del proyecto.
Dicho estándar define cómo deben redactarse, estructurarse y verificarse las Historias de Usuario dentro del proyecto. Entre sus puntos clave destacan:
Estándares para Historias de Usuario
- Las historias deben expresarse desde el punto de vista del jugador/usuario final
- Formato uniforme y verificable
- En un archivo independiente por historia
- Estructura recomendada:
- Como [tipo de usuario], quiero [acción], para [objetivo/beneficio].
- Incluir criterios de aceptación claros, medibles y comprobables
- Mantener un único objetivo por historia
- Evitar lenguaje técnico o de implementación
Además, todas las historias deberían indicar claramente qué usuario las pide, y sería recomendable que el equipo definiera una lista coherente de perfiles de usuario en un documento propio (por ejemplo, "Usuario extrovertido", "Usuario casual", etc.), lo que facilitaría consistencia y función claras para cada historia.
También es recomendable reunir todas las historias en un documento conjunto o en una carpeta dedicada, ya que actualmente sólo existen como tareas del backlog en el Kanban.
Evaluación de las Historias de Usuario
| ID | Título | Evaluación general | Criterios de aceptación |
|---|---|---|---|
| 1 | Como usuario 1, quiero jugar en línea con el usuario 2 para ver lo compatibles que somos. #13 | Cumple los requisitos | Cumple los criterios |
| 2 | Como usuario nuevo, quiero crear un perfil para controlar todos mis datos tales como foto, nombre, hábitos o intereses. #3 | Cumple los requisitos | Cumple los criterios |
| 3 | Como usuario, quiero ver perfiles de otros usuarios. #8 | La opción de invitar no pertenece a esta historia | La opción de invitar no pertenece a esta historia |
| 4 | Como usuario, quiero que la web tenga servicios online para poder acceder desde cualquier ubicación y comunicarme con otros usuarios #52 | No tiene descripción, no cumple con el formato de historia de usuario | No aplica |
| 5 | Como usuario 1, quiero chatear con otros usuarios para poder conocernos mejor. #18 | Cumple los criterios | Cumple los criterios |
| 6 | Como usuario, quiero invitar a la gente para jugar juntos. #21 | La invitación ya está incluida en la historia de jugar en línea, se recomienda consolidar | La invitación ya está incluida en la historia de jugar en línea, se recomienda consolidar |
| 7 | Como usuario, quiero que mi perfil tenga una contraseña para usarlo en distintos aparatos. #5 | Lo de inicio de sesión múltiple corresponde a la historia 4, no a esta | Lo de inicio de sesión múltiple corresponde a la historia 4, no a esta |
| 8 | Como usuario 1, quiero avanzar suficiente con usuario 2 para poder hablar. #17 | Los puntos para hablar ya están definidos en otras historias, consolidar criterios | Los puntos para hablar ya están definidos en otras historias, consolidar criterios |
| 9 | Como usuario, quiero variedad de juegos. #19 | Cumple los requisitos | Cumple los criterios |
| 10 | Como usuario 1, quiero ganar puntos jugando. #14 | Cumple los requisitos | Cumple los criterios |
| 11 | Como usuario general, quiero definir mis intereses amorosos. #4 | La estética de la app corresponde a tareas de implementación, no a criterios de usuario | La estética de la app corresponde a tareas de implementación, no a criterios de usuario |
| 12 | Como usuario frecuente, quiero tener chats y juegos al inicio. #7 | Cumple los requisitos | Cumple los criterios |
| 13 | Como usuario, quiero buscar perfiles según filtros. #9 | Cumple los requisitos | Cumple los criterios |
| 14 | Como usuario 1, quiero emitir solicitud de cambio de juego. #22 | Cumple los requisitos | Cumple los criterios |
| 15 | Como usuario, quiero buscar entre mis chats. #12 | Lo mencionado en la evaluación general indica que se trata de subtareas y no de requerimiento de usuario real | Lo mencionado en la evaluación general indica que se trata de subtareas y no de requerimiento de usuario real |
| 16 | Como usuario, quiero salir de los juegos. #20 | Cumple los requisitos | Cumple los criterios |
| 17 | Como usuario 1, quiero aceptar/rechazar solicitudes de cambio de juego. #23 | Cumple los requisitos | Cumple los criterios |
| 18 | Como usuario, quiero un nombre llamativo para la app. #24 | No verificable | No verificable |
| 19 | Como usuario 1, quiero enviar emoticonos. #16 | Cumple los requisitos | Cumple los criterios |
| 20 | Como usuario precavido, quiero salir de mi perfil. #6 | Cumple los requisitos | Cumple los criterios |
| 21 | Como usuario precavido, quiero reportar usuarios. #10 | Cumple los requisitos | Cumple los criterios |
| 22 | Como usuario, quiero eliminar chats pasados. #11 | Cumple los requisitos | Cumple los criterios |
| 23 | Tener usuarios identificados con número. #35 | Vacío | Vacío |
| 24 | Mostrar mensaje al no haber más usuarios. #36 | Vacío | Vacío |
Recomendaciones Generales
1. Crear un documento unificado con todas las Historias de Usuario
Por ejemplo, en /docs/historias_usuario/ con un archivo por historia y un índice, o un documento extenso con secciones por cada usuario y sus historias.
2. Mantener todas las historias desde el enfoque del usuario
Asegurarse de que cada historia esté escrita desde el punto de vista del jugador o usuario final, como indica el estándar de control de calidad.
3. Definir previamente los tipos de usuario
Crear en la Wiki perfiles coherentes, como:
- Usuario social
- Usuario competitivo
- Usuario novato
- Usuario experto
Cada historia debería asignar uno explícitamente.
4. Añadir criterios de aceptación claros y verificables a todas las historias
Evitar usar lenguaje técnico en la descripción, y si se usa, solo lo mínimo necesario en cada criterio de aceptación.
5. Mantener separado en el backlog o de alguna manera
- Historias de usuario
- Tareas técnicas
- Subtareas
- Bugs
6. Enlazar cada historia desde el Kanban a su documento correspondiente
Para facilitar su lectura y análisis a futuro.
7. Evitar subjetividades y requisitos no verificables
Ejemplo: la historia 18 no se puede medir ni evaluar.