Skip to content

Commit fddf573

Browse files
committed
Clarifica y arregla 🐛 en ejemplo closes #614
1 parent edf9c94 commit fddf573

File tree

1 file changed

+40
-12
lines changed

1 file changed

+40
-12
lines changed

temas/diseño.md

Lines changed: 40 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -61,24 +61,52 @@ forma individual. En este proceso es cuando se empiezan a elaborar las
6161
En nuestro programa que tratará con un proyecto y sus diferentes
6262
partes, hitos, issues y demás, por ejemplo para examinar el estado de
6363
un proyecto externo en una clase, las acciones comenzarán
64-
siempre con una petición que llegue desde GitHub. Por lo tanto,
65-
podremos tener las siguientes historias de usuario.
66-
67-
* **HU0**: (Configuración) Como usuario, necesito que cada proyecto deberá tener una cadena única
68-
que lo identifique.
69-
* **HU1**: Como usuario, necesito que cuando se cree un hito en un proyecto, ese hito se incluirá en
70-
la estructura de datos del proyecto correspondiente.
71-
* **HU2**: Como usuario, necesito que cuando se cree un issue, se añadirá al hito
64+
siempre con una petición que llegue desde GitHub.
65+
66+
Hay varias condiciones principales para que algo se considere una historia de
67+
usuario:
68+
69+
1. Tiene que identificarse claramente qué usuario/tipo es protagonista de esa
70+
historia.
71+
2. La historia siempre está en el dominio del problema, siempre narrada desde el
72+
punto de vista del usuario, y siempre tiene que expresar qué *beneficio* va a
73+
obtener el usuario una vez que se haya implementado.
74+
3. En la mayoría de los casos, estas historias de usuario tendrán relación con
75+
la lógica de negocio, o tendrán que provocar eventualmente la codificación
76+
de la lógica de negocio.
77+
78+
Volvamos al proyecto del *dashboard* para controlar proyectos entregados por
79+
estudiantes, que es con el que estamos trabajando. El único usuario va a ser
80+
un profesor, que además es informático y conoce un poco el percal. El
81+
beneficio que piensa obtener es poder controlar mejor y de forma individual
82+
el progreso de los estudiantes. Con ello, se podría hacer la siguiente
83+
historia de usuario:
84+
85+
* **HU0**: Como profesor, quiero poder mejorar el seguimiento individual de cada
86+
uno de los proyectos hechos por estudiantes o diferentes unidades.
87+
88+
De esta historia de usuario se pueden deducir una serie de issues, que serán
89+
siempre *problemas* a resolver. Una vez más, la implementación o las decisiones
90+
técnicas necesarias para la misma se harán directamente en el código o con
91+
comentarios al issue. De la HU, y enlazándolos al mismo (con el mecanismo que
92+
permita el sistema que se use, por ejemplo simplemente poniendo el número del
93+
issue en GitHub), se sacarán una serie de issues
94+
95+
* **HU0-0**: (Configuración) Cada proyecto se tiene que identificar de forma única.
96+
* **HU0-1**: Como usuario, necesito que cuando se cree un hito en un proyecto,
97+
ese hito se incluirá en la estructura de datos del proyecto correspondiente.
98+
* **HU0-2**: Como usuario, necesito que cuando se cree un issue, se añadirá al hito
7299
correspondiente con estado "abierto". Si no está asignado a ningún hito, se emitirá un
73100
mensaje de error.
74-
* **HU3**: Como usuario, necesito que cuando se cierre un issue, se cambie el estado del
101+
* **HU0-3**: Como usuario, necesito que cuando se cierre un issue, se cambie el estado del
75102
mismo.
76-
* **HU4**: Como usuario, necesito que si se borra un issue, dejará de
103+
* **HU0-4**: Como usuario, necesito que si se borra un issue, dejará de
77104
estar accesible.
78-
* **HU5**: Si se solicita el porcentaje de terminación del hito, se
105+
* **HU0-5**: Si se solicita el porcentaje de terminación del hito, se
79106
responderá con una cantidad entre 0 y 100.
80107

81-
Estas historias de usuario se crearán como issues, y agruparse, a su
108+
Estas issues siempre plantean un problema y estarán linkados a las historias de
109+
usuarios correspondientes de forma clara. Todos los *issues* se agruparán, a su
82110
vez, en un hito, siempre que se identifique cuál es el producto
83111
mínimamente viable. Por ejemplo, en este caso
84112
todas las relativas a issues se pueden incluir en el mismo hito (salvo

0 commit comments

Comments
 (0)