Вы находитесь на странице: 1из 58

Integrantes:

Marco Florin
Luis Fung
Carlos Guizado
Erik Medina

Profesor:

Luis Crdenas Rengifo

Curso:

Ingeniera de Software

2016

ndice

1. Introduccin 3
2. Metodologa de desarrollo de software... 4
3. Modelado de software con XP.5
3.1 Grafo5
3.2 Descripcin de los requerimientos...6
3.3 Historias de usuario..8
3.4 Prototipos.16
3.5 Tarjetas CRC22
3.6 CRC por HU.25
3.7 Diagrama de clases...34
3.8 Tareas de ingeniera..35
4. Gestin de implementacin con SCRUM.40
4.1 Product Backlog....40
4.2 Sprints...40
4.3 Diario de resultado de las reuniones.48
4.4 Repositorio comn52
5. Prototipo54
6. Conclusiones.57
7. Bibliografa....57

1. Introduccin
2

La Ingeniera de software tiene diferentes definiciones, pero la idea general est en el


desarrollo y el mantenimiento del software por medio de un conjunto pasos. Es por esto que se
han creado diferentes modelos de proceso para desarrollar un software que garantice un
producto bien hecho como el modelo de cascada o el incremental. Estos ltimos, as como
otros ofrecen un procedimiento diferente de acuerdo a las caractersticas de la aplicacin.
Dentro del desarrollo del software existen diferentes metodologas para lograrlo y estn
separadas en dos grandes grupos: las tradicionales y las giles. Las primeras son difciles de
implementar, existe dificultad en aceptar el cambio y no parecen una solucin viable para una
gran cantidad de proyectos de desarrollo. Mientras que las segundas buscan entregas de
prototipos, hacer modificaciones constantemente del cdigo fuente e incluso est orientado a
la simplicidad.
Para la implementacin del proyecto del curso de Ingeniera de Software se utiliz una
metodologa de desarrollo de software con XP (Extreme Programming) para la parte de
modelado y SCRUM para la gestin de implementacin de la aplicacin. A continuacin se
detallar lo mencionado anteriormente sumado a la muestra del prototipo terminado por medio
de pantallas.

2. Metodologa de desarrollo de software utilizado


3

Nuestro equipo CEL, en el curso de Ingeniera de Software utiliz dos metodologas giles para
elaborar el proyecto de Tunea mi Look: XP y SCRUM. La primera se us en el modelado del
software que correspondi a elaborar historias de usuario por medio de los requerimientos,
disear los prototipos, tarjetas CRC, el diagrama de clases y las tareas de ingeniera. La
segunda, se emple en la gestin de implementacin que condujo a obtener un Product
Backlog, los sprints en Excel, el diario del resultado de las reuniones, la creacin de un
repositorio comn (GitHub) y el prototipo implementado.
XP (Extreme Programming)

SCRUM

3. Modelado de software con XP


4

Utilizada en la primera parte del curso. Hicimos lo siguiente:

3.1 Grafo: En ella se mencionan las caractersticas generales del software a implementar.

Luego propusimos una descripcin de requerimientos funcionales y no funcionales:

3.2 Descripcin de los requerimientos


Tienda de aplicaciones
El usuario usar la tienda de aplicaciones de su celular, el Play Store, para buscar la aplicacin
con el nombre "Tunea mi look". En la pgina de la tienda de aplicacin podr ver, adems del
nombre, unas capturas de cmo se ve la aplicacin al momento de usarla, habr una foto de
cmo se van recolectando las prendas del armario, una foto ms de cmo se seleccionan los
colores de las prendas, una adicional de cmo pedirle a la aplicacin que te genere un conjunto
de prendas y otra captura del resultado de las prendas a usar.

Primera vez dentro de la aplicacin


Cuando el usuario ingresa por primera vez a la aplicacin, sta no requerir ningn inicio de
sesin, ya que los datos del usuario no se almacenarn en la nube ms solo en la memoria del
celular. Lo que el usuario ver al ingresar por primera vez es un mensaje de bienvenida: "Hola!
Bienvenido a Tunea mi look. An no tienen registrada ninguna prenda. Dale un toque al botn
Comenzar para registrar tus prendas". Una vez el usuario de un toque sobre el botn
comenzar, la aplicacin mostrar pasos para que el usuario pueda registrar sus primeras
prendas usando los procesos de registro de prenda y luego pueda seleccionar los colores de
cada una de ellas. Una vez el usuario tenga sus prendas registradas, el siguiente paso es que
pida armar un conjunto de sus prendas haciendo una combinacin adecuada de sus colores.

Proceso de Registrar prendas:

1. El usuario selecciona el tipo de prenda a agregar. Entre ellas est: Arriba, Abajo, Enterizo, etc.
Luego, se activar la cmara y le pedir al usuario que le tome una foto a la prenda.
2. Al tomar la foto, el programa registrar los grupos de colores existentes, sin embargo, para
continuar se le pedir al usuario seleccionar las partes de la prenda (con un tap) que se desea
analizar.
3. Una vez hecho esto, se preguntar si desea registrar otro color (secundario) en la misma foto.
Es decir, si existe un segundo color en la prenda. Si el color es muy parecido al primario no se
tomar en cuenta.
Qu ponerme?
Para que el usuario use la funcionalidad de generar un conjunto de prendas debe usar el botn
Qu ponerme? de la aplicacin. Una vez de un toque sobre este botn la aplicacin lo guiar
por una serie de pasos rpidos que el usuario debe seleccionar.

Primero, el usuario debe escoger entre dos tipos de conjuntos bsicos, si es la primera vez que
usa esta aplicacin, o entre los conjuntos personalizados si ya ha usado esta opcin en
ocasiones anteriores. En este primer apartado debe escoger entre un enterizo y uno casual,
donde para el enterizo se sugieren prendas como vestidos y esas prendas unidas de shorts y
tops, mientras que en el casual se sugerir prendas separadas para la parte inferior y superior
del cuerpo.

Segundo, una vez el usuario seleccione el tipo de conjunto, este puede ir agregando qu ms
desea utilizar, como por ejemplo, si desea usar unas sandalias o unos zapatos, o si desea usar
algo corto o largo para la parte inferior del cuerpo, un sombrero entre otras cosas. Si se
seleccionan ms prendas adicionales, esto se guardar como un conjunto personalizado para
que la prxima vez no se vayan seleccionando una por una nuevamente.

Tercero, el programa mostrar 3 combinaciones posibles de las prendas que el usuario puede
usar a partir de la adecuada combinacin de los colores. El usuario tendr la opcin de generar
an ms combinaciones de ser posible usando un botn "Generar ms combinaciones".

Cuarto, si el usuario decide usar alguna de las combinaciones, esta se guardar como favorito
y quedar registrada al inicio de la aplicacin para que pueda ser seleccionada de forma
rpida. Adems, esta seleccin se guardar en un historial que el usuario podr consultar en el
futuro.

Adems, las recomendaciones del programa variarn de acuerdo al clima actual del lugar,
como tambin estar relacionado con el estilo de la zona en que se encuentra el usuario. Es
importante resaltar que si la aplicacin no puede conectarse a Internet, no podr utilizar esta
funcionalidad.

Cabe aadir que en el men se podr apreciar en una esquina el top de prendas ms usada
por el usuario.

Asimismo, el programa tambin tendr una opcin llamada closet virtual. En donde se podr
interactuar con las prendas registradas por el usuario. El usuario podr ver, aadir, eliminar,
comparar y organizar todas las prendas registradas. Es en esta opcin en donde el usuario
podr hacer sus combinaciones personalizadas, como tambin etiquetar las prendas a su
gusto. Incluso, le dar la facilidad al usuario para poder organizar su ropa de acuerdo a la
situacin como por ejemplo la seleccin de atuendos para ir a trabajar, o para salir a la calle, ir
a una fiesta, etc.

Basado en los requerimientos, elaboramos las historias de usuario (HU).

3.3 Historias de usuario


HU-01: Registrar prenda
Historia de Usuario
Nmero:
HU-01

Nombre Historia de Usuario:

Registrar prenda
Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante universitario
Prioridad en Negocio: Alta

Puntos Estimados: 1

(Alta / Media / Baja)


Riesgo en Desarrollo: Alta

Puntos Reales: 1

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero registrar las distintas prendas que tengo en el armario para que
queden guardadas todas las prendas que quisiera usar.

Descripcin detallada:

El usuario selecciona el tipo de prenda a agregar. El usuario debe de elegir las opciones
generales (Arriba, Abajo, Enterizo, Otros). Luego, deber elegir la opcin especfica del
tipo de prenda (p.e.: Si elegimos Arriba: se debe elegir Polo, Blusa, Top, BVD, Casaca).
Debajo se activar un botn para tomar foto. Al hacer tap, se activar la cmara. Se le
pedir al usuario que le tome una foto a la prenda. Al tomar la foto, el programa
registrar los grupos de colores existentes, sin embargo, para continuar se le pedir al
usuario seleccionar las partes de la prenda (con un tap) los colores que se desea tomar
en cuenta. Una vez hecho esto, se preguntar si desea registrar otro color (secundario)
en la misma foto. Es decir, si existe un segundo color en la prenda. Si el color es muy
parecido al primario no se tomar en cuenta. Para finalizar, opcionalmente, se le pedir al
usuario que agregue etiquetas que puedan identificar a la prenda de manera
personalizada.
Observaciones:

Ninguna.

HU-02: Buscar Prenda


Historia de Usuario
Nmero:
HU-02

Nombre Historia de Usuario:


Buscar prenda

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante universitario
Prioridad en Negocio: Alta

Puntos Estimados: 1

(Alta / Media / Baja)


Riesgo en Desarrollo: Media

Puntos Reales: 1

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero buscar la prenda que necesito encontrar en el armario.

Descripcin detallada:

El usuario selecciona en la parte inferior del men armario en la barra de bsqueda, para
luego escribir el nombre de la prenda que desea encontrar. El sistema nos mostrar la
prenda que buscamos; si no existe la prenda, se mostrar un aviso; y si hay varias con un
nombre parecido se mostrar una lista.
Observaciones:

Ninguna.

HU-03: Generar combinacin


Historia de Usuario
Nmero:

Nombre Historia de Usuario:

HU-03

Generar combinacin

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante
Prioridad en Negocio: Alta

Puntos Estimados: 2

(Alta / Media / Baja)


Riesgo en Desarrollo: Alta

Puntos Reales: 4

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero generar varias combinaciones de ropa para poder escoger el ms
indicado segn mis gustos o preferencias.

Descripcin detallada:

Primero, el usuario deber seleccionar el tipo de conjunto entre un enterizo o uno que
incluya prendas de arriba y abajo.

Segundo, una vez el usuario seleccione el tipo de conjunto, este puede ir agregando
qu prendas adicionales desea utilizar, como por ejemplo, si desea usar unas sandalias
o unos zapatos, o si desea usar algo corto o largo para la parte inferior del cuerpo, un
sombrero entre otras cosas.

Tercero, el programa mostrar 3 combinaciones posibles de las prendas que el usuario


10

puede usar a partir de la adecuada combinacin de los colores. El usuario tendr la


opcin de generar an ms combinaciones de ser posible usando un botn "Generar
ms combinaciones".

Cuarto, si el usuario decide usar alguna de las combinaciones, esta se guardar como
favorita y quedar registrada al inicio de la aplicacin para que pueda ser seleccionada
de forma rpida.
Observaciones:

Ninguna.

11

HU-04: Elegir combinacin a partir de un color


Historia de Usuario
Nmero:
HU-04

Nombre Historia de Usuario:


Elegir combinacin a partir de un color.

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:
Estudiante

Iteracin Asignada: 1

Prioridad en Negocio: Media


(Alta / Media / Baja)

Puntos Estimados: 4

Riesgo en Desarrollo: Medio


(Alto / Medio / Bajo)

Puntos Reales: 4

Descripcin:
Como estudiante quiero escoger diferentes combinaciones a partir de un color para poder
tener ms alternativas a la hora de vestirme para salir.
Descripcin detallada:
El usuario tendr la posibilidad de elegir tres combinaciones posibles de las prendas a
partir de un color usando adecuadamente las combinaciones de los colores. Adems, esta
seleccin se guardar en el historial que el usuario podr consultar en el futuro. Asimismo,
se guardar como favorito y quedar registrada al inicio de la aplicacin para su uso
rpido.

Observaciones:
Ninguna.

12

HU-05: Eliminar prenda


Historia de Usuario
Nmero:
HU-05

Nombre Historia de Usuario:


Eliminar prenda

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante universitario
Prioridad en Negocio: Baja

Puntos Estimados: 1

(Alta / Media / Baja)


Riesgo en Desarrollo: Baja

Puntos Reales: 1

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero eliminar la prenda que desee en el armario virtual.

Descripcin detallada:

El usuario selecciona una prenda en el men de armario, para simplemente darle a la X


en la parte superior derecha del cuadro que encierra la prenda, luego le saldr un aviso si
est seguro de su decisin. Al darle si, la prenda se eliminar de todo el armario virtual,
de lo contrario no se har alguna ejecucin.
Observaciones:

Ninguna.

13

HU-06: Ordenar Prenda


Historia de Usuario
Nmero:
HU-06

Nombre Historia de Usuario:


Ordenar prenda

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante universitario
Prioridad en Negocio: Media

Puntos Estimados: 1

(Alta / Media / Baja)


Riesgo en Desarrollo: Baja

Puntos Reales: 1

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero ordenar mis prendas a mi gusto en el armario virtual.

Descripcin detallada:

El usuario selecciona la opcin ordenar en la esquina superior derecha del men armario.
Al hacerlo, el usuario podr mover (arrastrando) los cuadros de las prendas a su gusto.
Observaciones:

Ninguna.

HU-07: Etiquetar prenda


Historia de Usuario
14

Nmero:
HU-07

Nombre Historia de Usuario:


Etiquetar prenda.

Modificacin (o extensin) de Historia de Usuario (Nro. y Nombre):

Usuario:

Iteracin Asignada: 1

Estudiante universitario
Prioridad en Negocio: Media

Puntos Estimados: 1

(Alta / Media / Baja)


Riesgo en Desarrollo: Media

Puntos Reales: 1

(Alto / Medio / Bajo)


Descripcin:

Como usuario quiero etiquetar personalizadamente mis prendas a mi gusto en el armario


virtual.

Descripcin detallada:

El usuario selecciona una prenda en el men de armario, saldr una ventana de opciones
en donde tendr que pulsar la opcin etiquetar. En la nueva ventana emergente, el
usuario podr aadir una etiqueta nueva para la prenda seleccionada, o ponerle una
etiqueta ya existente, y ver las etiquetas que ya le ha aadido.

Tambin hay un buscador de etiquetas en el men principal del Armario en la parte inferior
derecha de la pantalla.
Observaciones:

Ninguna.

15

Despus se disearon los prototipos. Cabe destacar que el prototipo de editar caractersticas
de las prendas se tuvo que dividir en cuatro historias de usuario: buscar prenda, eliminar
prenda, ordenar prenda y etiquetar prenda.

3.4 Prototipos
1. Registrar prendas

16

2. Editar caractersticas de las prendas

3. Generar combinacin
17

18

4. Elegir combinacin a partir de un color

19

20

Posteriormente se elaboraron

las tarjetas CRC identificadas

en todas las historias de

usuario:

3.5 Tarjetas CRC

USUARIO
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Tomar foto

Combinacin

Uno a muchos

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Color Principal

Generar combinacin Color


a partir de esta
Tipo de prenda
prenda
Etiqueta
Buscar prenda

Colores Secundarios
Tipo de Prenda

Clases:

Multiplicidad:
Uno a muchos
Uno a uno
Uno a muchos

21

Etiquetas

Foto

Uno a uno

Foto

Combinacin

Muchos a uno

FOTO
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Ubicacin

Obtener colores
principales

Prenda

Uno a uno

COLOR
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Hexadecimal

Obtener colores
complementarios

Prenda

Muchos a uno

Alias

ETIQUETA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Agregar etiqueta

Prenda

Muchos a uno

Editar etiqueta

COMBINACIN

22

Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Generar ms
combinaciones

Prenda

Uno a muchos

Guardar como
favorito
Generar combinacin

TIPO DE PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Listar tipos de
prenda

Prenda

Uno a muchos

23

3.6 CRC por HU


HU-01: Registrar prenda
El usuario selecciona el tipo de prenda a agregar. El usuario debe de elegir las opciones
generales (Arriba, Abajo, Enterizo, Otros). Luego, deber elegir la opcin especfica del tipo
de prenda (p.e.: Si elegimos Arriba: se debe elegir Polo, Blusa, Top, BVD, Casaca). Debajo se
activar un botn para tomar foto. Al hacer tap, se activar la cmara. Se le pedir al usuario
que le tome una foto a la prenda. Al tomar la foto, el programa registrar los grupos de
colores existentes, sin embargo, para continuar se le pedir al usuario seleccionar las partes
de la prenda (con un tap) los colores que se desea tomar en cuenta. Una vez hecho esto, se
preguntar si desea registrar otro color (secundario) en la misma foto. Es decir, si existe un
segundo color en la prenda. Si el color es muy parecido al primario no se tomar en cuenta.
Para finalizar, opcionalmente, se le pedir al usuario que agregue etiquetas que puedan
identificar a la prenda de manera personalizada.
Clases identificadas en la historia
USUARIO
Responsabilidades

Colaboraciones

Datos:

Acciones:

Nombre

Seleccionar tipo de
Prenda

Clases:

Multiplicidad:

Tomar foto
Seleccionar colores

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Color principal

Generar combinacin Color


a partir de esta
Tipo de prenda
prenda
Etiqueta

Colores secundarios
Tipo de prenda
Etiquetas

Clases:

Foto

Multiplicidad:
Uno a muchos
Uno a uno
Uno a muchos
Uno a uno

24

Foto

FOTO
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Ubicacin

Obtener colores
principales

Prenda

Uno a uno

COLOR
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Cod. Hexadecimal

Obtener colores
complementarios

Prenda

Muchos a uno

Alias (opcional)

ETIQUETA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Agregar etiqueta

Prenda

Muchos a uno

Editar etiqueta

25

HU-02: Buscar prenda


El usuario selecciona en la parte inferior del men armario en la barra de bsqueda, para
luego escribir el nombre de la prenda que desea encontrar. El sistema nos mostrar la
prenda que buscamos; si no existe la prenda, se mostrar un aviso; y si hay varias con un
nombre parecido se mostrar una lista.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Nombre

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Color principal

Buscar prenda

Color

Uno a muchos

Colores secundarios

Tipo de prenda

Uno a uno

Etiquetas

Etiqueta

Uno a muchos

26

HU-03: Generar combinacin


Primero, el usuario deber seleccionar el tipo de conjunto entre un enterizo o uno que
incluya prendas de arriba y abajo.

Segundo, una vez el usuario seleccione el tipo de conjunto, este puede ir agregando qu
prendas adicionales desea utilizar, como por ejemplo, si desea usar unas sandalias o unos
zapatos, o si desea usar algo corto o largo para la parte inferior del cuerpo, un sombrero entre
otras cosas.

Tercero, el programa mostrar 3 combinaciones posibles de las prendas que el usuario


puede usar a partir de la adecuada combinacin de los colores. El usuario tendr la opcin
de generar an ms combinaciones de ser posible usando un botn "Generar ms
combinaciones".

Cuarto, si el usuario decide usar alguna de las combinaciones, esta se guardar como
favorita y quedar registrada al inicio de la aplicacin para que pueda ser seleccionada de
forma rpida.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Nombre

Clases:

Multiplicidad:

Combinacin

Uno a muchos

PRENDA
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Color principal

Combinacin

Muchos a uno

Colores secundarios

Tipo de conjunto

Muchos a uno

27

COMBINACIN
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Generar ms
combinaciones

Prenda

Uno a muchos

Conjunto de prenda Muchos a uno

Guardar combinacin
como favorita
Generar combinacin

HU-04: Elegir combinacin a partir de un color


El usuario tendr la posibilidad de elegir tres combinaciones posibles de las prendas a partir
de un color usando adecuadamente las combinaciones de los colores. Adems, esta
seleccin se guardar en el historial que el usuario podr consultar en el futuro. Asimismo, se
guardar como favorito y quedar registrada al inicio de la aplicacin para su uso rpido.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Nombre

Clases:

Multiplicidad:

Combinacin

Uno a muchos

PRENDA
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Color principal

Combinacin

Muchos a uno

Colores secundarios

Tipo de conjunto

Muchos a uno

28

COMBINACIN
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Nombre

Generar combinacin Prenda


a partir de un color

Multiplicidad:
Uno a muchos

COLOR
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Hexadecimal

Obtener colores
complementarios

Prenda

Muchos a uno

Alias

29

HU-05: Eliminar Prenda


El usuario selecciona una prenda en el men de armario, para simplemente darle en la "X" en
la parte superior derecha del cuadro que encierra la prenda, luego le saldr un aviso si est
seguro de su decisin. Al darle si, la prenda se eliminar de todo el armario virtual, de lo
contrario no se har alguna ejecucin.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Nombre

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Color principal

Eliminar prenda

Color

Uno a muchos

Colores secundarios

Tipo de prenda

Uno a uno

Etiquetas

Etiqueta

Uno a muchos

30

HU-06: Ordenar Prenda


El usuario selecciona la opcin ordenar en la esquina superior derecha del men armario. Al
hacerlo, el usuario podr mover (arrastrando) los cuadros de las prendas a su gusto.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Nombre

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Color principal

Ordenar lista de
prendas

Color

Uno a muchos

Tipo de prenda

Uno a uno

Etiqueta

Uno a muchos

Colores secundarios
Etiquetas

31

HU-07: Etiquetar Prenda


El usuario selecciona una prenda en el men de armario, saldr una ventana de opciones en
donde tendr que pulsar la opcin etiquetar. En la nueva ventana emergente, el usuario podr
aadir una etiqueta nueva para la prenda seleccionada, o ponerle una etiqueta ya existente, y
ver las etiquetas que ya le ha aadido.
Clases identificadas en la historia
USUARIO
Responsabilidades
Datos:

Colaboraciones
Acciones:

Clases:

Multiplicidad:

Nombre

PRENDA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Color principal

Etiquetar prenda

Color

Uno a muchos

Colores secundarios

Tipo de prenda

Uno a uno

Etiquetas

Etiqueta

Uno a muchos

ETIQUETA
Responsabilidades

Colaboraciones

Datos:

Acciones:

Clases:

Multiplicidad:

Nombre

Agregar etiqueta

Prenda

Muchos a uno

Editar etiqueta

32

33

Aqu se muestra el diagrama de clases:

3.7 Diagrama de Clases

34

Lo ltimo que se hizo para la primera parte del curso fueron las tareas de ingeniera
presentadas a continuacin:

3.8 Tareas de Ingeniera


HU-01: Registrar prenda
Nmero tarea: 1

Nmero historia: HU-01

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda seleccionar el tipo de prenda.
Desarrollar la accin para que un usuario pueda tomar una foto
Desarrollar la accin para que un usuario pueda seleccionar los colores de la foto.
Desarrollar la accin para que un usuario pueda generar una combinacin a partir de
esta prenda.
Desarrollar la accin para que un usuario pueda obtener los colores principales de una
foto.
Desarrollar la accin para que un usuario pueda obtener los colores complementarios de
una foto.
Desarrollar la accin para que un usuario pueda agregar una etiqueta.
Desarrollar la accin para que un usuario pueda editar una etiqueta.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda seleccionar el tipo de prenda.
Implementar el diseo para que un usuario pueda tomar una foto.
Implementar el diseo para que un usuario pueda seleccionar los colores de la foto.
Implementar el diseo para que un usuario pueda generar una combinacin a partir de
esta prenda.
Implementar el diseo para que un usuario pueda obtener los colores principales de una
foto.
Implementar el diseo para que un usuario pueda obtener los colores complementarios
de una foto.
Implementar el diseo para que un usuario pueda agregar una etiqueta.
Implementar el diseo para que un usuario pueda editar una etiqueta.

35

HU-02: Buscar prenda


Nmero tarea: 1

Nmero historia: HU-02

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda buscar una prenda.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda buscar una prenda.

HU-03: Generar combinacin


Nmero tarea: 1

Nmero historia: HU-03

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16


36

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda generar ms combinaciones.
Desarrollar la accin para que un usuario pueda guardar una combinacin como
favorita.
Desarrollar la accin para que un usuario pueda generar una combinacin.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda generar ms combinaciones.
Implementar el diseo para que un usuario pueda guardar una combinacin como
favorita.
Implementar el diseo para que un usuario pueda generar una combinacin.

HU-04: Elegir combinacin a partir de un color


Nmero tarea: 1

Nmero historia: HU-04

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda generar una combinacin a partir de un
color.
Desarrollar la accin para que un usuario pueda capturar los colores complementarios.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda generar una combinacin a partir de
un color.
Implementar el diseo para que un usuario pueda capturar los colores.

37

HU-05: Eliminar Prenda


Nmero tarea: 1

Nmero historia: HU-05

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda eliminar una prenda.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda eliminar una prenda.

HU-06: Ordenar Prenda


Nmero tarea: 1

Nmero historia: HU-06

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


38

Desarrollar el algoritmo para cada una de las acciones de la HU.


Desarrollar la accin para que un usuario pueda ordenar la lista de prendas.
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda ordenar la lista de prenda.

HU-07: Etiquetar Prenda


Nmero tarea: 1

Nmero historia: HU-07

Tipo de tarea:

Puntos estimados:

Fecha inicio: 10/05/16

Fecha fin: 26/06/16

Programador responsable: Todos


Descripcin:

Modelar la base de datos de todos con las tablas propuestas en la HU.


Desarrollar el algoritmo para cada una de las acciones de la HU.
Desarrollar la accin para que un usuario pueda etiquetar una prenda.
Desarrollar la accin para que un usuario pueda agregar una nueva etiqueta.
Desarrollar la accin para que un usuario pueda editar una etiqueta
Implementar la interfaz para cada una de las acciones desarrolladas.
Implementar el diseo para que un usuario pueda etiquetar una prenda.
Implementar el diseo para que un usuario pueda agregar una nueva etiqueta.
Implementar el diseo para que un usuario pueda editar una etiqueta.

4. Gestin de la implementacin con SCRUM


Utilizada en la segunda parte del curso. Se implement el proyecto usando Android Studio y
utilizando Java como lenguaje de programacin. Se hizo lo siguiente:

4.1 Product Backlog

39

En donde se logr terminar con Registrar prenda. Mientras que Generar


combinacin y Elegir combinacin a partir de un color se trataron de desarrollar,
pero no se terminaron.

Para elaborar las funcionalidades antes mencionadas, se trabaj por medio de


sprints de la siguiente manera:

4.2 Sprints
Sprint 1

40

Estimate

Burnout

30
25
20

Hours left

15
10
5
0
Mie

Jue

Vie

Sab

Dom

Lun

Mar

Days in Calendar

Se puede ver que en el sprint 1 se trabaj a medias la historia de usuario Registrar prenda.
No se concluy el modelado de la base de datos, el algoritmo de la captura de colores ni el
registrar una prenda. Por ello, en el grfico no se llega al estimado propuesto.

Sprint 2

41

Estimate

Burnout

35
30
25
20
Hours left

15
10
5
0
Mie

Jue

Vie

Sab

Dom

Lun

Mar

Days in Calendar

En el sprint 2 se trabaj los algoritmos y la base de datos de Registrar prenda y se comenz


con la interfaz de Generar combinacin. No se pudo concluir con ninguna de las tareas
programadas. Por ende, en el grfico hay una gran diferencia entre lo que se estim y lo que se
hizo.

Sprint 3

42

Estimate

Burnout

Vie

Dom

70
60
50
40
Hours left 30
20
10
0
Jue

Sab

Lun

Mar

Mie

Days in Calendar

43

En este sprint 3 se trat de trabajar la base de datos y el algoritmo de Registrar prenda pero
no se pudieron terminar. De igual forma en el grfico difiere mucho el trabajo estimado con el
desempeado.
Sprint 4

44

45

Estimate

Burnout

70
60
50
40
Hours left

30
20
10
0
Jue

vie

Sab

Dom

Lun

Mar

Mie

Days in Calendar

Para el sprint 4, en vez de quedarse haciendo solo Registrar prenda, se trabajaron las
historias de usuario Generar combinacin y Elegir combinacin a partir de un color. Por
consiguiente, en el grfico se visualizan que las horas trabajadas desde un inicio se asemejan
bastante a lo estimado. Sin embargo, en los ltimos das no se cumpli segn lo acordado.

Sprint 5

46

Estimate

Burnout

60
50
40
Hours left

30
20
10
0
Jue

vie

Sab

Dom

Lun

Mar

Mie

Days in Calendar

47

Con el sprint 5 se siguieron trabajando con las tres historias de usuario sin poder terminar
ninguna. No obstante, en el grfico se puede apreciar el trabajo tomado para realizarlas. Por lo
tanto, el trabajo desempeado es parecido al estimado e incluso se puede notar en un principio
que las horas cumplidas superaron a las estimadas.
Sprint 6

Estimate

Burnout

50
40
30
Hours left 20
10
0
Jue

vie

Sab

Dom

Lun

Mar

Mie

Days in Calendar

48

Finalmente en el sprint 6 se concluye con Registrar prenda y se trata de avanzar con


Generar combinacin pero no se logra terminar con esta historia de usuario. En el grfico se
puede observar un trabajo semejante al estimado desde el inicio hasta el final.
Con todos los sprints realizados, si bien se deban implementar siete historias de usuario, solo
se lograron avanzar con tres de ellas. Debido al problema con el modelado de la base de datos
del sprint 1, se retras mucho el proyecto. Si bien se pudo solucionar lo anterior, no se logr
desarrollar la aplicacin como se pens desde un principio. Por tanto, la nica funcionalidad
que se logr terminar fue Registrar prenda.

4.3 Diario de resultado de las reuniones


Sprint 1

49

Para el sprint 1 el Scrum Master fue Erik Medina. Se ha creado un repositorio llamado GitHub,
se ha tratado de ver cmo hacer la base de datos e implementar el algoritmo de Registrar
prenda. Luego existen problemas para elaborar lo anterior; es decir, terminar con lo propuesto
para esa semana.
Sprint 2

En el sprint 2 el Scrum Master fue Marco Florin. No hubo ningn comentario para esa
semana.

Sprint 3

50

Para el sprint 3, el Scrum Master fue Carlos Guizado. Se puede notar avances en Registrar
prenda. Sin embargo, la base de datos todava no puede ser terminada.

51

Sprint 4

En este sprint 4, el Scrum Master fue Luis Fung. El trabajo de esa semana fue ir
implementando Generar combinacin y Elegir combinacin a partir de un color. Adems, se
avanz con Registrar prenda. No obstante, persisten los problemas con la creacin de la base
de datos para Registrar prenda.
Sprint 5

En el sprint 5, el Scrum Master fue Marco Florin. Se han hecho todas las interfaces para
Registrar prenda, Generar combinacin y Elegir combinacin a partir de un color. Adems,

52

se ha logrado implementar la base de datos. Sin embargo, no hubo el suficiente tiempo para
lograr ms avances en el proyecto.
Sprint 6

Para el sprint 6, el Scrum Master fue Carlos Guizado. Se pudieron terminar tareas retrasadas
de semanas anteriores y con ello, concluir finalmente con Registrar prenda. No obstante,
Generar combinacin no pudo ser completado en su totalidad y las dems funcionalidades
tampoco se pudieron avanzar. Todo lo anterior debido a los problemas con la creacin de la
base de datos.
En el diario de resultados de las reuniones se pudo visualizar en casi cada semana un
problema con la implementacin de la base de datos. Si bien se pudo avanzar con al menos
tres historias de usuario, solo se logr culminar con Registrar prenda en el ltimo sprint.

4.4 Repositorio Comn


Para el desarrollo del proyecto Tunea mi Look utilizamos GitHub como una herramienta
colaborativa para compartir nuestros avances.

53

Este es parte del cdigo fuente que est en GitHub.

54

5. Prototipo

En esta pantalla se carga la aplicacin.

Aqu se ven las prendas registradas.

55

Se selecciona la prenda a tomar foto.

Aqu al presionar en Tomar foto, se activa el


el uso de la cmara para capturar la imagen.

Luego se capturan los colores de la


Finalmente se le pone una etiqueta a la
prenda y se ponen en una lista horizontal

prenda tomada.

justo arriba del botn Continuar.

56

6.

Conclusiones
Durante todo el curso se vieron dos metodologas giles para el desarrollo del proyecto Tunea
mi Look: XP y SCRUM. En el primero se utiliz para el modelado de software y el segundo
para la gestin de la implementacin. En este ltimo existieron problemas para cumplir con las
tareas propuestas debido a la alta complejidad de la aplicacin a realizar. Sin embargo, se pudo
completar una de sus funcionalidades y la ms importante: Registrar prenda.

7. Bibliografa
JORGENSEN, Paul (2014) Software testing: a craftsman's approach. Boca Raton, Florida: CRC
Press, Taylor & Francis Group.
LACEY, Mitch (2012) The scrum field guide: practical advice for your first year. Upper Saddle
River, New Jersey: Addison-Wesley.
57

PRESSMAN, Roger S. (2010) Ingeniera del software: un enfoque prctico. Mxico, D.F.:
McGraw-Hill.
SOMMERVILLE, Ian (2011) Software engineering. Boston, Massachusetts: Pearson Education.

58