downloading - Universidad Andres Bello

Anuncio
UNIVERSIDAD ANDRES BELLO
FACULTAD DE INGENIERÍA
INGENIERÍA EN COMPUTACIÓN E
INFORMÁTICA
“Faceschool”
Daniel Labra
Fernando Figueroa
PROYECTO DE TÍTULO PARA OPTAR AL
TÍTULO DE INGENIERO EN COMPUTACIÓN E
INFORMÁTICA.
Viña del Mar - Chile
Diciembre del 2014
1
Índice de Contenido
2.6
Índice de Tablas .................................................................................................................. 5
2.7
Índice de Figuras ................................................................................................................ 6
2.8
Resumen ............................................................................................................................... 8
Capítulo I........................................................................................................................................... 9
2.9
Introducción......................................................................................................................... 9
2.9.1 ¿Por qué es una necesidad? .......................................................................................... 9
2.9.2 Situación Actual ................................................................................................................ 10
Capitulo II ....................................................................................................................................... 12
2.10 Fundamentación del Tema ............................................................................................ 12
2.10.1 Problema............................................................................................................................. 12
2.10.2 Objetivos............................................................................................................................. 14
2.10.3 Objetivo General............................................................................................................... 14
2.10.4 Objetivos Específicos ..................................................................................................... 14
2.10.5 Alcance ............................................................................................................................... 14
2.10.6 Alcance del Proyecto ...................................................................................................... 14
2.10.7 Supuestos .......................................................................................................................... 15
2.10.8 Restricciones .................................................................................................................... 15
2.10.9 Modelo Canvas ................................................................................................................. 16
2.10.10 Mercado existente ......................................................................................................... 17
2.10.11 Alternativas de Solución .............................................................................................. 19
2.10.12 Solución Propuesta ....................................................................................................... 19
2.10.13 Esquema de solución ................................................................................................... 20
2.10.13 Factibilidad ...................................................................................................................... 21
2.10.14 Factores de Éxito ........................................................................................................... 23
2.10.15 Situación Futura ............................................................................................................. 24
2.10.16 Faceschool: Alto Nivel.................................................................................................. 26
Capítulo III ...................................................................................................................................... 38
2.11 Materiales y Métodos.......................................................................................................... 38
2.11.1 Fundamentación de la Metodología ............................................................................ 38
2.11.2 Metodología de Desarrollo ............................................................................................ 40
2.11.4 Organigrama y Roles ...................................................................................................... 44
2.11.5 Historias de Usuario ........................................................................................................ 51
2.12.6 Plan de Proyecto .............................................................................................................. 60
2.11.7 Product Backlog ............................................................................................................... 63
2.11.8 Gestión de Requerimientos........................................................................................... 68
2.11.9 Gestión de Riesgos ......................................................................................................... 68
2.11.10 Gestión de Configuración............................................................................................ 71
2.11.11 Control de versiones..................................................................................................... 71
2
2.11.12 Control de cambios ....................................................................................................... 76
2.11.13 Ambiente de Desarrollo................................................................................................ 78
2.11.14 Ambiente de Pruebas.................................................................................................... 79
2.11.15 Ambiente de Producción ............................................................................................. 80
2.11.16 Plan de Pruebas ............................................................................................................. 80
Capítulo IV ...................................................................................................................................... 84
2.12 Resultado y Discusión ....................................................................................................... 84
2.12.1 Sprint Nº1 ........................................................................................................................... 84
2.12.2 Planning Meeting.............................................................................................................. 84
2.12.3 Sprint Backlog .................................................................................................................. 85
2.12.4 EDT....................................................................................................................................... 86
2.12.5 Criterio de Aceptación .................................................................................................... 87
2.12.6 Sprint Backlog Tareas .................................................................................................... 90
2.12.7 Diseño Sprint Nº1 ............................................................................................................. 91
2.12.8 Evidencia Interfaces ........................................................................................................ 98
2.12.9 Pruebas Unitarias........................................................................................................... 101
2.12.10 Evidencia de seguimiento y control de cambios ................................................ 105
2.12.11 Liberación del Producto ............................................................................................. 106
2.12.12 Evidencia Línea base .................................................................................................. 106
2.12.13 Burndown....................................................................................................................... 107
2.12.14 Evolución de los Riesgos .......................................................................................... 108
2.12.15 Post Mortem Sprint Nº1 .............................................................................................. 109
2.12.13 Sprint Nº2 ....................................................................................................................... 110
2.12.14 Planning Metting .......................................................................................................... 110
2.12.15 Sprint Backlog .............................................................................................................. 111
2.12.16 Criterio de Aceptación ................................................................................................ 112
2.12.17 Sprint Backlog Táreas ................................................................................................ 114
2.12.18 Diseño Sprint Nº2 ......................................................................................................... 115
2.12.19 Evidencia Interfaces .................................................................................................... 121
2.12.20 Pruebas Unitarias ........................................................................................................ 123
2.12.21 Liberación del Producto ............................................................................................. 127
2.12.22 Evidencia Línea base .................................................................................................. 127
2.12.23 Burndown....................................................................................................................... 128
2.12.24 Evolución de los Riesgos .......................................................................................... 129
2.12.25 Post Mortem .................................................................................................................. 130
2.12.26 Sprint Nº3 ....................................................................................................................... 131
2.12.27 Sprint Planning Meeting............................................................................................. 131
2.12.28 Sprint Backlog .............................................................................................................. 132
2.12.29 Criterio de Aceptación ................................................................................................ 133
2.12.30 Sprint Backlog Tareas ................................................................................................ 134
2.12.31 Diseño Sprint Nº3 ......................................................................................................... 135
2.12.32 Evidencia Interfaces .................................................................................................... 140
2.12.31 Pruebas Unitarias ........................................................................................................ 142
2.12.32 Pruebas Ejecutadas .................................................................................................... 143
3
2.12.33 Liberación del Producto ............................................................................................. 147
2.12.34 Evidencia Línea base .................................................................................................. 148
2.12.35 Burndown....................................................................................................................... 149
2.12.36 Evolución de los Riesgos ......................................................................................... 149
2.12.37 Post Mortem .................................................................................................................. 151
Capítulo V ..................................................................................................................................... 152
2.13 Conclusiones ...................................................................................................................... 152
2.13.1 Trabajo futuro ................................................................................................................. 152
5.13.2 Conclusiones .................................................................................................................. 152
Anexo Plan de Pruebas ............................................................................................................ 153
Anexo Encuesta Nº1 .................................................................................................................. 165
4
2.6
Índice de Tablas
Tabla 1:Lean Canvas ..................................................................................................................... 16
Tabla 2: Requerimientos No Funcionales .................................................................................. 25
Tabla 3: Rol/Responsable ............................................................................................................. 46
Tabla 4: Funciones PO .................................................................................................................. 47
Tabla 5: Funciones Scrum Master ............................................................................................... 47
Tabla 6: Funciones Equipo Desarrollador .................................................................................. 47
Tabla 7:Rol-Integrante ................................................................................................................... 48
Tabla 8: Funciones Desarrollador ................................................................................................ 48
Tabla 9: Funciones Tracker .......................................................................................................... 49
Tabla 10: Funciones Coach .......................................................................................................... 49
Tabla 11: Funciones Consultor .................................................................................................... 50
Tabla 12: Funciones Big Boss ...................................................................................................... 50
Tabla 13:Gestión Riesgos ............................................................................................................. 70
Tabla 14: Control de Versiones .................................................................................................... 72
Tabla 15: Plan de Pruebas ........................................................................................................... 81
Tabla 16: Pruebas de Integridad BD ........................................................................................... 82
Tabla 17: Pruebas de Sistema ..................................................................................................... 82
Tabla 18: Pruebas de Rendimiento ............................................................................................. 82
Tabla 19: Pruebas de Interfaz ...................................................................................................... 83
Tabla 20: Pruebas de Carga......................................................................................................... 83
Tabla 21: Prueba Aceptación Ruta .............................................................................................. 88
Tabla 22: Prueba Aceptación Información.................................................................................. 89
Tabla 23: CRC Ruta Sprint Nº1 .................................................................................................... 91
Tabla 24: CRC Información Sprint Nº1 ....................................................................................... 92
Tabla 25: Criterio de Aceptación Búsqueda ............................................................................. 112
Tabla 26: Criterio de Aceptación Login ..................................................................................... 113
Tabla 27: CRC Login ................................................................................................................... 115
Tabla 28: CRC Búsqueda ........................................................................................................... 115
Tabla 29: Diseño de Prueba Búsqueda .................................................................................... 124
Tabla 30: Diseño de Prueba Login ............................................................................................ 125
Tabla 31: Sprint Backlog Sprint Nº3 .......................................................................................... 132
Tabla 32: Criterio Aceptación Sprint Nº3 .................................................................................. 133
Tabla 33: CRC Recomendador .................................................................................................. 135
Tabla 34: Pruebas Unitarias Recomendador Sprint Nº3 ........................................................ 142
Tabla 35: Evolución de los Riesgos Sprint Nº3 ....................................................................... 150
5
2.7
Índice de Figuras
Figura 1: Causa - Efecto ............................................................................................................... 13
Figura 2: Competencias ................................................................................................................ 18
Figura 3: Esquema Solución ......................................................................................................... 20
Figura 4 : Diagrama de Componentes ........................................................................................ 27
Figura 5: Diagrama de Despliegue .............................................................................................. 28
Figura 6: Diagrama de Secuencia Ruta ...................................................................................... 29
Figura 7: Diagrama de Secuencia Búsqueda por Criterio ....................................................... 30
Figura 8: Diagrama de Secuencia Información ......................................................................... 31
Figura 9: Diagrama de Secuencia Comparador ........................................................................ 32
Figura 10: Diagrama de Secuencia Administrar Colegio ......................................................... 34
Figura 11: Diagrama de Clases.................................................................................................... 37
Figura 12: Fases de Programación Extrema ............................................................................. 40
Figura 13 : Concepto Scrum ......................................................................................................... 42
Figura 14: Organigrama Scrum XP ............................................................................................. 50
Figura 15:Product Backlog ............................................................................................................ 66
Figura 16: Sprint Backlog .............................................................................................................. 85
Figura 17: EDT ................................................................................................................................ 86
Figura 18:Sprint Backlog Tareas.................................................................................................. 90
Figura 19: Diagrama Secuencia Ruta .......................................................................................... 93
Figura 20: Diagrama Secuencia Información ............................................................................. 94
Figura 21: Diagrama de Despliegue Sprint Nº1......................................................................... 95
Figura 22: Diagrama de Componentes Sprint Nº1 .................................................................... 96
Figura 23: Diseño de BD Sprint Nº1 ............................................................................................ 97
Figura 24: Prueba Unitaria Ruta ................................................................................................ 102
Figura 25: Pruebas Unitarias Información ................................................................................ 103
Figura 26: TRAC Pruebas ........................................................................................................... 104
Figura 27: TRAC ........................................................................................................................... 105
Figura 28: SVN ............................................................................................................................. 106
Figura 29: Sprint Backlog Nº2 .................................................................................................... 111
Figura 30: Sprint Backlog Tareas .............................................................................................. 114
Figura 31: Diagrama Secuencia Sprint Nº2 ............................................................................. 116
Figura 32: Diagrama Secuencia Sprint Nº2 ............................................................................. 117
Figura 33: Diagrama Despliegue Sprint Nº2 ............................................................................ 118
Figura 34: Diagrama Componentes Sprint Nº2 ....................................................................... 119
Figura 35: Diagrama de Clases Sprint Nº2 .............................................................................. 120
Figura 36: TRAC Pruebas ........................................................................................................... 126
Figura 37: SVN ............................................................................................................................. 127
Figura 38: Riesgos Sprint Nº2 .................................................................................................... 129
Figura 39: Sprint Backlog Tareas Sprint Nº3 ........................................................................... 134
Figura 40: Diagrama Secuencia Sprint Nº3 ............................................................................. 136
Figura 41: Diagrama de Despliegue Sprint Nº3....................................................................... 137
Figura 42: Diagrama de Componentes Sprint Nº3 .................................................................. 138
6
Figura 43: Diagrama de Clases Sprint Nº3 .............................................................................. 139
Figura 44: TRAC Pruebas ........................................................................................................... 146
7
2.8
Resumen
Actualmente existe un alto porcentaje de arrepentimiento de padres que
matriculan a sus hijos en un colegio inadecuado, que se ve afectado por múltiple
razones como lo son la escases de información, la preocupante cifra de colegios
que no poseen página Web etc. Sin lugar a dudas es un problema preocupante
que gracias al proyecto denominado Faceschool se pretenderá reducir,
promoviendo un sistema recomendador de colegios bajo las necesidades de cada
usuario, además se lograra concentrar una importante suma de colegios para que
así el usuario pueda tomar una decisión informado. Para desarrollar este proyecto
se ocuparan las metodologías
llamadas Scrum y Extreme Programming las
cuales nos proporcionan herramientas confiables para desarrollar un proyecto de
calidad.
Hoy en día el proyecto se ha desarrollado con buenos resultados, debido a
que se han podido implementar la mayoría de las funcionalidades que se tenía
previsto construir dentro de la planificación de la primera parte de nuestro
proyecto.
Dentro de las funcionalidades previstas en la planificación, están:
-
Geolocalización
-
Recomendador de colegios
-
La ruta más cercana hacia el colegio
-
Filtros según criterios de búsquedas, entre otras.
Podemos concluir que se ha satisfecho las los principales problemas que pudimos
indagar al principio de este proyecto, dándonos por satisfecho dentro de la
realización de este proyecto.
8
Capítulo I
2.9
Introducción
2.9.1 ¿Por qué es una necesidad?
La necesidad surge debido a que actualmente el proceso de realizar una
búsqueda por parte de los tutores resulta muy difícil ya que dicho tedioso proceso
es realizar la búsqueda página por página del establecimiento educacional, por
ende toma mucho tiempo. Además resulta muy difícil que los tutores tengan el
conocimiento total sobre los establecimientos educacionales que se encuentren
dentro de un rango de kilómetros respecto a su hogar.
En el anexo se encuentra al final de este documento se halla una encuesta
que fueron realizadas a los tutores o padres. Estas encuestas que tienen como fin
evaluar la necesidad de lanzar un nuevo producto al mercado según las
necesidades de los tutores. Las encuestas realizadas nos proporcionaron con
números que existe tal necesidad por parte de los padres o tutores. Parte de los
resultados obtenidos avalan la necesidad planteada generando un problema para
los tutores. Las encuestas son de gran utilidad para nosotros, debido a que no se
tiene un cliente especifico, es que a través de nuestro Fan Page en la red social
Facebook (www.facebook.com/Faceschool) las encuestas nos permite abarcar
mas stakeholders, lo que en definitiva nos proporciona saber de manera
fehaciente que es lo que quiere los padres. Además nuestro Fan Page nos
proporciona un feedback entre el equipo y la comunidad, ya que constantemente
se están subiendo noticias respecto a nuestro proyecto.
9
2.9.2 Situación Actual
Hoy día en los padres poseen distintas formas para buscar colegios para
sus hijos, ya sea buscando por internet, yendo personalmente a cada colegios que
desea ver o por su propio conocimiento.
Los tutores o padres son los encargados de revisar colegio por colegio en
internet la información relevante por ellos y si es que cumplen dicho requisito el
padre puede tomar la decisión de ir a visitar el colegio o reunirse con el encargado
para que finalmente le entregue la información pertinente. Dicho esto el tutor está
capacitado para tomar la decisión de matricular o no a su hijo.
El ir en búsqueda de nuevos proyectos sin lugar a duda genera
conocimientos a través de la innovación y creatividad, ya sea entregando un
nuevo servicio o mejorando uno existente con un único fin: tener éxito en el
mercado.
La tecnología en conjunto con internet resulta esencial para realizar una
búsqueda. Una búsqueda no resulta tan fácil si no se tienen las herramientas
adecuadas para realizarla y obviamente se dificulta mucho más si se tiene
desconocimiento de lo que se está buscando. Es por esto que resulta un proceso
engorroso y tedioso el buscar un establecimiento educacional a nuestros hijos.
Hay muchas preguntas que uno debe contestar antes como por ejemplo:
¿Qué tipo de colegio busco? ¿Privado? ¿Municipal?, o ¿qué tan cerca estará el
colegio de mi casa? Son preguntas básicas que a la hora de buscar un colegio
resulta muy importante responderlas. Es importante saber que mientras mayor
información se tenga respecto al colegio, la decisión de los padres o tutores será
la mejor, ya que tomaran esa decisión informados y teniendo un claro
conocimiento sobre el colegio en donde matricularían a sus hijos/as.
Este trabajo se divide en 5 capítulos en los cuales podemos nombrar una
breve descripción de los puntos más relevantes de cada uno.
Capítulo I: En este se capítulo se realiza una presentación clara, breve y
10
precisa del contenido que se desarrolla en este documento, y se indican las
razones por las cuales se decidió abordar el problema. Se indica cuál es el
problema abordado, qué objetivos se persiguen, cual es el alcance, limitaciones
y supuestos.
Capítulo II: Este capítulo tiene por finalidad determinar la situación actual,
un análisis de la situación y la dirección de cambio.
Capítulo III: En
base a la propuesta en el
capítulo anterior. Se
pretenderá justificar la metodología a aplicar. A partir de ese punto, aplicando la
metodología definir cómo se ejecutarán las disciplinas de apoyo al desarrollo y
gestión de este proyecto: control de configuración,
control
de
cambios y
proceso de control de riesgos.
Capítulo IV: Este capítulo se muestra las tareas realizadas según el
plan de proyecto.
Capítulo V: Las preguntas guías de este capítulo son: ¿Qué se hizo?,
¿Se logró resolver el problema? Y un análisis de los futuros desarrollos y
crecimientos del proyecto.
11
Capitulo II
2.10
Fundamentación del Tema
2.10.1 Problema
Como se puede apreciar en nuestro diagrama causa-efecto (Figura Nº1), el
problema nace a partir de la desinformación por parte de los padres a la hora de
buscar colegios a sus hijos. Lo cual es producido por las fuentes de comunicación
que existen ya que no se establece una comunicación directa con el colegio al
momento de contactarse con uno, y no existe un sitio donde se encuentren todos
los colegios. Por otro lado tenemos nos encontramos con que el personal del
colegio no se encuentre disponible al momento de que uno quiera contactarse con
ellos. Luego tenemos al colegio el cual no siempre entrega toda la información o
colegios de escasos recursos no posean alguna página web donde puedan
publicar su información. Y podemos encontrarnos con que el tutor del alumno
tenga un desconocimiento de los colegios de su región.
Cinco Por que
Existe una desorganización de la información sobre los colegios en la web
1 ¿Porque existe una desorganización de la información?
Porque no se encuentra toda la información en un solo sitio web
2 ¿Porque no se encuentra la información en un solo sitio web?
Debido a que no existe una agrupación de todos los colegios
3 ¿Porque deberia existir una agrupación de todos los colegios?
Para asi poder informar a los padres sobre los colegios.
4 ¿Porque se debe informar a los padres sobre los colegios?
Para que puedan tomar una decisión informada acerca del colegio donde
12
matriculara a su hijo
5 ¿Porque los padres deben tomar una decisión informada?
Para no seleccionar un colegio erróneo para su hijo.
Diagrama Causa – Efecto
Figura 1: Causa - Efecto
13
2.10.2 Objetivos
2.10.3 Objetivo General
•
Reducir en un 15% las decisiones erróneas de los padres al momento de
seleccionar el colegio.(OG)
2.10.4 Objetivos Específicos
•
Concentrar como mínimo un 80%(320) de los colegios de la zona. (Total en
región de Valparaíso = 401 colegios).(OE1)
•
•
La información de los colegios estará como máximo desactualizada en un
mes.(OE2)
•
La información para tomar la decisión de selección doble de un colegio
debe estar disponible en menos de un min.(OE4)
2.10.5 Alcance
2.10.6 Alcance del Proyecto
Con el fin de cumplir el objetivo, este proyecto lograra brindar una mejor
información sobre los colegios de la zona, la cual proporcionará un recomendador
de colegios a través de filtros e información relevante a partir de la
geolocalización.Esto incluye:
•
Mostrar al usuario la mayor cantidad de colegios de la zona que este
se ubique dentro de un radio determinado.
•
En segundo lugar, proporcionara la información relevante del colegio.
•
En tercer lugar, proporcionara un comparador de colegios.
•
En cuarto lugar, tendrá un tiempo de respuesta inferior a 1 min
(*condiciones ideales).
14
2.10.7 Supuestos
•
Se pretende contar con la información proporcionada por la página web
del Ministerio de Educación (www.mineduc.cl), la cual nos permitirá obtener
información verídica correspondiente a cada colegio.
2.10.8 Restricciones
1. No funcionará los días que se realice mantención.
2. No funcionará la geolocalización si no se pudo determinar su
localización.
3. No funcionará sin conexión a internet.
4. La búsqueda no se realizará a través de voz, sólo según criterios
definidos.
15
2.10.9 Modelo Canvas
A continuación se presentará el modelo
Lean Canvas (Tabla Nº3) un
modelo de negocios que ayuda a diseñar e innovar sobre nuestro modelo de
negocios. Esta herramienta nos ayuda a asegurar el desarrollo de un modelo de
negocio claro y consistente, capaz de ofrecer las respuestas indicadas a las
necesidades comerciales, lo que permite eliminar el desperdicio que se produce
desarrollando un producto que finalmente no es requerido o no era lo que
solucionaba el problema, lo que se genera por el desconocimiento de las
verdaderas necesidades del cliente. Este modelo que trata de mezclar el modelo
Canvas tradicional y el método Lean Startup, resulta vital a la hora de abordar un
lanzamiento de un negocio y producto. El modelo Lean Canvas resulta tener un
enfoque hacia entender el problema para luego realizar el producto.
Tabla 1:Lean Canvas
16
La finalidad de mostrar nuestro Lean Canvas es poder definir claramente
nuestra área de negocio que a partir de los 9 ítems se puede apreciar hacia donde
apuntamos mostrando como lo haremos. Por ejemplo nuestro segmento de
clientes está definido para tutores o padres que vivan en la V regiones de nuestro
país que tengan hijos entre 5 y 17 años.
2.10.10 Mercado existente
Nuestra
competencia
directa
son
páginas
web
que
proporcionan
información sobre colegios, los cuales los explicaremos a continuación:
http://www.colegiosymatriculas.cl/
Es una página en la cual asesoran para encontrar la mejor alternativa de
colegio para matricular al hijo, no muestran ningún colegio, si no que uno les envía
la información del colegio que uno desea averiguar y ellos averiguan lo que uno
desea saber y se vuelven a contactar con uno.
http://www.educarchile.cl/
Es una página que está dirigida a todos los miembros de la comunidad
educativa nacional, que tiene como misión contribuir en el mejoramiento de la
calidad de la educación en todos sus niveles, ámbitos y modalidades, ampliando
las oportunidades de formación y aprendizaje a lo largo de la vida.
Si bien estas páginas son útiles a la hora de querer saber información sobre
colegios, estas no resultan ser eficientes. La finalidad de describir nuestra
competencia, es debido a que cada una de ellas presenta defectos y grandes
debilidades a la hora de poder compararla con nuestra página Faceschool. El
objetivo es demostrar que no hay nada realmente en el mercado que cumpla con
las cualidades que se presentan a continuación por ende resulta un proyecto
innovador.
17
Figura 2: Competencias
En la figura Nº2 se pueden apreciar las competencias existentes, en donde
el fin de esta matriz es analizar a través de ciertas características esenciales que
fueron determinadas a partir de la encuesta que se le realizaron a los padres. Las
características que se encuentran en la primera fila y las aplicaciones que se
encuentran en la primera columna, van descritas por un ticket y una cruz. El primer
símbolo corresponde a que cumple satisfactoriamente dicha característica, en
cambio el segundo símbolo describe que no cumple dicha característica. En
primer lugar se tiene la información de los colegios en donde obviamente debe
aparecer una información respecto al colegio buscado, además siendo una
información verídica y útil para el buscador. El segundo criterio se tiene un
comparador, en donde a partir de la información de los colegios seleccionados,
permite entregar un comparador mostrando información de colegios. El sistema de
ubicación y ruta permite que nos ubique en el mapa y nos muestre la ruta más
cercana hacia el establecimiento que nosotros seleccionamos. El cuarto indicador
llamado contacto directo es la posibilidad de mandar un mensaje directamente
desde la aplicación hacia el encargado de matrículas del establecimiento. Y
finalmente el buscador bajo criterio en donde el realizar la búsqueda se dará bajo
ciertos criterios seleccionados. Sin lugar a duda Faceschool cumple con dichas
características esenciales que fueron obtenidas como importantes dentro de la
18
encuesta realizada por lo que nos garantiza que nuestro producto será una buena
herramienta.
2.10.11 Alternativas de Solución
1. Realizar una oficina de consultas donde se maneja la información de todos
los colegios.Esta alternativa surge como opcion debido a que se puede
habilitar una oficina en donde se mantenga conocimiento de la informacion
relevante de los colegios.La informacion podra ser adquerida por cada tutor,
para que éste finalmente se encuentre informado respecto a cada
establecimiento educacional.
2. Reunir todos los colegios en un solo lugar. Anexar todas las páginas web
de los colegios.Esta idea surge como necesidad a concentrar la mayor
cantidad de colegios en un solo lugar,es por eso que a través de una
página web en donde se enlisten la mayor cantidad de colegios con sus
respectivas páginas Web,pudiendo así el usuario ir ingresando a cual le
parezca pertinente.
3. Reunir todo los colegios en un solo lugar, agregando geolocalización,
comparador
y
buscador
además
de
información
sobre
los
colegios.Logrando concentrar gran cantidad de colegios con la información
que la gente necesita para tomar una decisión.Sin lugar a dudas agregar un
recomendador para dicha solución resulta vital,mostrando a partir de
conexiones con su círculo de personas
los colegios que éstos hayan
recomendado.
2.10.12
Solución Propuesta
Como propuesta y teniendo conocimiento del problema se propone la
creación de una página web que proporcione información de los colegios donde el
usuario decida buscar,comparar y recomendar para que así los padres puedan ver
las mejores alternativas.Existen grandes ventajas al seleccionar esta solución, una
de ellas resulta ser la geolocalización en donde a partir de la ubicación del usuario
19
lo ubicará y mostrará la mayor cantidad de colegios disponibles a su alrededor con
sus respectivas distancias y ruta más cercana para llegar a él. Además al realizar
una búsqueda se podrá realizar a través de filtros, para que finalmente a partir de
un recomendador el sistema muestre los colegios con mayor calificación que otros
usuarios podrán realizar.
2.10.13 Esquema de solución
En el siguiente esquema (Figura N°3) se puede apreciar el esquema de
solución en el que se aprecia al cliente ligero el cual usando algún navegador, que
puede ser Chrome, Mozilla o Internet Explorer, se conecta a través de http en
donde este se conecta a la api de google, el cual a partir de la IP del usuario
puede determinar su ubicación, y a su vez este se conecta a Faceschool en donde
el servidor procesa las consultas masivas, que se le realizan por medio de SQL a
la base de datos. Otro caso, sería si el cliente ligero se conectará a través de
algún navegador ya mencionado pero utilizando la conexión a internet por medio
de su smartphone en donde la ubicación se obtendrá a partir del GPS que este
posee.
Figura 3: Esquema Solución
20
2.10.13 Factibilidad
Factibilidad Técnica
La factibilidad técnica consistió en realizar una evaluación de la tecnología
existente y de los conocimientos del equipo de desarrollo, este estudio estuvo
destinado a recolectar la información sobre los componentes técnicos que se
poseen y la posibilidad de hacer uso de los mismos en el desarrollo e
implementación del sistema y de ser necesario, la adquisición de otros
requerimientos tecnológicos. El resultado del estudio nos indicó que la tecnología
necesitada en este proyecto se encuentra ampliamente disponible, ya sea tanto la
tecnología de servidores y computadores, los cuales hoy en día son de grandes
características.
Factibilidad Operacional
Permite a todos los usuarios conocer la posibilidad de utilizar las nuevas
tecnologías que se utilizan en páginas web, aprovechando los beneficios que
ofrece, por otra parte, el correcto funcionamiento y uso de Faceschool, estará
limitado a la capacidad de los usuarios que utilicen la página.
Factibilidad Económica
A continuación se presenta el resultado del análisis de las cotizaciones
realizadas para Faceschool, en cuanto a costos de hardware, software y recursos
humanos:
21
● Software:
Descripción
Subtotal
Sublime Text 3 para 3 programadores
con licencias compatibles para
Windows 8.1
$128.597
Sistema operativo Windows 8.1
$268.590
Microsoft Office 2013
$202.384
Subtotal
$599.571
● Recursos Humanos
Cantidad
Personal
Horas
Salario
Mensual
Totales
2
Programador
6
$600.000
$1.200.000
1
Analista
6
$800.000
$800.000
1
Encargado de
Pruebas
6
$400.000
$400.000
Subtotales
$2.400.000
* Notas:
- Son 2 programadores, lo que implica un costo total mensual por programador de
$600.000.
- El encargado de pruebas, verificará el correcto funcionamiento del programa una
vez que ha sido concluido, por lo que su salario es de 15 días.
- El salario del personal fue obtenido por medio de consulta a gente experta en el
campo.
22
● Hardware
Cantidad
Descripción
Precio Unitario
Totales
2
Notebook hp envy
dv4
$450.000
$900.000
$40.000
$40.000
1
Multifuncional Hp
C4780
Subtotales
$940.000
A partir del estudio de la factibilidad económica Faceschool se financiara
cobrando una membresía anual de un pago mensual de $10.000 por colegio para
aparecer en nuestro sitio.
2.10.14 Factores de Éxito
Dentro de los factores de éxito del proyecto Faceschool destacan:
·
Que el tiempo se cumpla según la planificación influirá en las probabilidades de
éxito del proyecto.
·
Que los costos asociados al proyecto estén dentro del presupuesto.
·
La fuente Mineduc se encuentre siempre disponible.
·
Que el sistema tenga como mínimo 30 usuarios.
23
2.10.15
Situación Futura
En el momento de implementar Faceschool, utilizando este servicio,
pudimos reducir en un 20% el total de decisiones erróneas de los padres al
momento de matricular a sus hijos. Es por eso que nuestro servicio Faceschool se
podría considerar una herramienta útil para aquellos padres que buscan una
educación de calidad para sus hijos, puedan tomar una decisión en base a la
información. Entregando a los padres información oportuna y que este proceso
sea lo menos tedioso posible para ellos.
24
Requerimientos No Funcionales
Definición: son las especificaciones puntuales sobre el sistema o SW que
vienen a ser las necesidades del negocio, describe los servicios que deben ofrecer
el sistema y sus restricciones.
A continuación se detallan los requisitos no funcionales identificados para el
presente proyecto:
Identificación
Título
Alta.
Media.
RNF-1
El sistema debe compatible con
cualquier Sistema Operativo
(SO), inclusive accediendo
desde un SO movil.
El sistema debe ser compatible
con Firefox* , Chrome* y
Internet Explorer*.(* Según
versión)
Media.
Alta.
Alta.
Alta.
RNF-2
RNF-3
El sistema deberá poder funcionar con
a lo menos 49 usuarios conectados en
forma simultánea.
importancia Complejidad
RNF-4
El sistema deberá tener una
disponibilidad del 98%*(*a excepción
cuando se haga mantenimiento)
Media.
Alta.
RNF-5
El sistema debe ser usable según
ISO
Media.
Alta.
9126 y 9241.
Tabla 2: Requerimientos No Funcionales
25
2.10.16
Faceschool: Alto Nivel
La vista 4+ 1 de Krutchen permite ayudar a los desarrolladores del software a
mantener un esquema estructurado del software facilitando a la creación del
mismo. Lo importante de estas vistas es enfocar el mismo software de diferentes
aspectos, las cuales representan diferentes aspectos y características del
software.
A partir de las siguientes imágenes queremos dar a conocer la solución
propuesta. Dichas imágenes permiten aclarar o describir cómo será la página web.
En la figura Nº4 se puede apreciar nuestro diagrama de componentes el
cual consta de seis componentes principales que son el landing, administración,
mapa, colegio, config y el recomendador. Cada componente posee un sub
componente como lo es por ejemplo en el caso de la administracion se conforma
de tres subcomponentes, Login.php, inicio.php y modificar.show.
26
Figura 4 : Diagrama de Componentes
27
A continuación se detalle el diagrama de despliegue de nuestro proyecto.
Básicamente está compuesto por un navegador web un servidor que consta del
servidor apache/php y una base de datos MySQL, en donde el servidor se conecta
a través de HTTP con el api de google maps.
Figura 5: Diagrama de Despliegue
A continuación se mostrará los diagramas de secuencia esta vista tiene
como función describir la secuencia lógica de las funcionalidades.
28
En esta figura se puede apreciar la funcionalidad de ver ruta. El usuario
ingresa a nuestra página web en donde de manera automática se cargan los
colegios. El usuario deberá seleccionar un colegio para que finalmente el servidor
devuelva la información a la interfaz, en donde aparecerá en un mapa la ruta más
cercana hacia el colegio seleccionado desde su ubicación.
Figura 6: Diagrama de Secuencia Ruta
29
En la figura Nº7 se puede apreciar la funcionalidad de búsqueda por
criterio. Esta funcionalidad se inicia con el usuario en donde deberá seleccionar
los criterios bajo los cuales se desea realizar la búsqueda para que finalmente el
servidor devuelva los resultados obtenidos a partir de los filtros seleccionados.
Figura 7: Diagrama de Secuencia Búsqueda por Criterio
30
En la figura Nº8 se puede apreciar la funcionalidad ver información del
colegio. Esta funcionalidad se inicia con el usuario en donde deberá seleccionar el
colegio para que finalmente el servidor devuelva la información que se tenga
respecto a este colegio, a la interfaz.
Figura 8: Diagrama de Secuencia Información
31
En la figura Nº9 se puede apreciar la funcionalidad de comparador. Esta
funcionalidad se inicia con el usuario en donde deberá seleccionar dos colegio e
para que finalmente el servidor devuelva los resultados obtenidos a partir de la
información de los colegios.
Figura 9: Diagrama de Secuencia Comparador
32
En la figura Nº10 se puede apreciar la funcionalidad de ingresar colegios.
Esta funcionalidad se inicia con el usuario en donde deberá ingresar un usuario y
contraseña, si estos resultan ser correctos el administrador podrá ingresar un
colegio llenando los campos. Finalmente se devuelve un mensaje que despliega si
la operación se realizó con éxito o no.
Por otra parte, se puede apreciar la funcionalidad de modificar colegios
(Figura Nº10). Esta funcionalidad se inicia con el usuario en donde deberá
ingresar un usuario y contraseña, si estos resultan ser correctos el administrador
podrá modificar algún campo del colegio. Finalmente se devuelve un mensaje que
despliega si la operación se realizó con éxito o no.
Y finalmente, se puede apreciar la funcionalidad de eliminar colegios. Esta
funcionalidad se inicia con el usuario en donde deberá ingresar un usuario y
contraseña, si estos resultan ser correctos el administrador podrá eliminar un
colegio. Finalmente se devuelve un mensaje que despliega si la operación se
realizó con éxito o no.
33
Figura 10: Diagrama de Secuencia Administrar Colegio
34
Vista de Escenario (Historias de Usuario)
Identificación
Nombre
HU1
Ruta
HU2
Login
HU3
HU4
HU5
Visitas
Reclamo
Gestionar Info.Sitio
Descripción
E1: Como Usuario quiero
ver la ruta para llegar al
colegio, en donde la ruta
sea la más cercana.
E2:Como Usuario quiero
ver la ruta para llegar al
colegio, mostrándome la
distancia en KM.
E1: Como Administrador
quiero poder ingresar a
través de un usuario y
contraseña para poder
realizar actualizaciones a
la información de los
colegios.
E1: Como Administrador
quiero poder gestionar la
visitas a los colegios
realizada por los usuarios
para poder vender la
información obtenida,
generando un informe
con la información de:
cantidad de visitas,
tiempo de visitas,
mensajes enviados a
través del sitio Web.
E1: Como usuario quiero
poder ingresar un
reclamo para poder tener
conocimiento de los
problemas de la página.
E1: como Administrador
quiero poder gestionar la
información del sitio para
así poder ingresar,
modificar o borrar un
establecimiento
educacional de la base
35
de datos.
HU6
HU7
Mensaje
Mapa
HU8
Información
E1: Como usuario quiero
poder enviar un mensaje
para mantener un
contacto o poder
realizarle consultas al
encargado del colegio
visitado.
E1: Como usuario quiero
poder ver un mapa
donde se encuentran la
mayor cantidad de
colegios cercanos a mi
ubicación para así poder
ver la distancia que hay.
E1: Como usuario quiero
poder ver la información
relevante de los colegios
para así poder tomar una
correcta decisión.
36
Para finalizar se muestra el diseño de la Base de Datos en donde se puede
apreciar un total de 16 tablas. Cada una de ellas con sus respectivas claves
primarias y claves foráneas.
Figura 11: Diagrama de Clases
37
Capítulo III
2.11 Materiales y Métodos
2.11.1 Fundamentación de la Metodología
Dirigir un proyecto no es fácil, y es por ello que existen distintas
metodologías para realizar este procedimiento.
La dirección de proyecto se define como la aplicación de conocimiento,
habilidades, herramientas y técnicas a las actividades del proyecto para cumplir
con los requisitos del mismo. Todo proyecto cuenta con las siguientes fases
Iniciación, Planificación, Ejecución, Seguimiento y Control y Cierre. Para dirigir un
proyecto se emplean diferentes metodologías para abordar la Gestión del
Proyecto y el Desarrollo del Proyecto.
Para cualquier proyecto es necesario disponer de una gestión eficiente para
así garantizar que el proyecto cumpla con los objetivos y que se desarrolle dentro
de lo planificado. Es entonces que la gestión tiene como fin planificar y controlar el
desarrollo de un sistema con un costo mínimo dentro de un periodo definido
cumpliendo finalmente con el alcance del proyecto. Para definir la metodología
que se necesita emplear para la gestión del proyecto, dependerá de ciertos
factores del proyecto y del cliente. En donde cada metodología que se empleara
tiene características especiales y fundamentales para ocuparlos.
Nuestro proyecto se gestionará bajo la metodología Scrum. Scrum es un
marco de trabajo para la gestión y desarrollo de software basada en un proceso
iterativo e incremental utilizado comúnmente en entornos basados en el desarrollo
ágil de software. Dentro de las características de Scrum destaca la estructura de
organización del equipo donde todos poseen sus cargos claramente definidos. A
partir de las características principales que posee Scrum es que decidimos
utilizarlo. Una de esas razones es debido a que el mercado actual es altamente
competitivo y la tecnología es muy cambiante, lo que hace que para el desarrollo
de un software se pida básicamente rapidez, calidad y reducción de costes, y es
38
entonces que para asumir dichos retos es necesario ocupar una metodología que
nos entregue agilidad y flexibilidad a nuestro proyecto, pues claramente nuestro
proyecto al ser tan tecnológico resulta vital ocupar una gestión ágil y flexible. El
hecho de ir trabajando por Sprints nos permite ir entregando pequeñas porciones
del software a partir de aquellas funcionalidades que entreguen más valor al
negocio, lo cual nos permite ir entregando semana a semana un avance
completamente funcional de nuestro proyecto. Dichos avances que son
planificados a través de un Sprint Backlog. Además su flexibilidad y adaptación
antes las nuevas prioridades que pueda surgir al negocio es algo que nos llamó la
atención debido a que en todo proyecto pueden haber cambios y sobre todo en las
prioridades.
Por otro lado la metodología de desarrollo será Extreme Programing
(Programación Extrema o XP), en donde nos sentimos completamente seguros
que va a ser la metodología adecuada para nuestro proyecto en base a una
investigación que nosotros realizamos a partir de las características de nuestro
proyecto.
Las características principales de XP se adecuan perfectamente a nuestro
proyecto porque: una planificación incremental nos permite al equipo ir
desarrollando pequeños incrementos a partir de las historias de usuario que más
valor entreguen al negocio, lo que nos permite ir mejorando en cada iteración
minimizando el riesgo de errores en el código, además de ir permitiéndonos
acomodarnos de manera muy fácil a la cronología impuesta por la Universidad
respecto a los hitos, ya que para cada hito proporcionaremos un incremento de
nuestra aplicación logrando así, que a final de año se acerque al resultado ideal
esperado. Además el ir por incrementos nos facilita ir mostrándole pequeñas
partes o porciones de la aplicación a nuestro Product Owner (PO).
De igual manera características como programación en parejas se adecua a
nuestro proyecto claramente ya que somos solo dos personas las que nos
encontramos desarrollando este producto. Esto nos permite que el código cuando
se está escribiendo es revisado y discutido a pesar de la posible pérdida de
productividad inmediata. Además esto fomenta a la comunicación del equipo de
39
trabajo promoviendo la relación entre los miembros del equipo, en donde el estar
acompañado en alguna situación crítica podrá favorecer a no quedar estancados
complementando los conocimientos y posiblemente acelerar el proceso de
codificación.
2.11.2
Metodología de Desarrollo
Según Kent Beck:” un proceso ligero, de bajo riesgo, flexible, predecible,
científico y divertido de desarrollar software”.
Figura 12: Fases de Programación Extrema
A partir de la figura Nº12 explicaremos y describiremos como vamos a
utilizar en nuestro proyecto esta metodología de desarrollo.
La fase de Pre Juego, se compone principalmente de dos actividades en las
cuales se encuentran las historias de usuario y el release planning.
40
Las historias de usuario que en definitiva es una representación de las
necesidades del negocio, son escritas por los clientes. Si bien en la metodología
de gestión nuestro Product Owner es quien representa este cliente, y es por ello
que con los profesores a cargo del ramo Proyecto de Título, se describieron tales
historias de usuarios. Dichas historias de usuario se describieron en una plantilla
Excel, con sus respectivas pruebas de aceptación.
El release planning resulta luego de haber realizado las historias de usuario,
y básicamente se realiza y se organiza que historias de usuario se realizaran para
cada incremento. Dicha tarea nosotros la establecimos en el Product Backlog en
donde se encuentran todas las HU (historias de usuario), describiendo en que
iteración se realizaran dichas HU. Dichas historias de usuario tienen que ser
medibles e incluso si estas son muy extensas es necesario dividir dicha HU,
desglosándola en pequeñas actividades, de esta forma es esencial para que se
tenga una noción del sprint entregar una estructura de desglose de trabajo.
El diseño es otro punto importante en la metodología XP, si bien al ser una
metodología ágil, el objetivo no es obtener un diseño muy detallista, sino más que
nada lo esencial para cumplir con el funcionamiento de la historia de usuario que
se realizara. Dichos diseños bosquejos simples se están realizando en Mockups,
un programa fácil de utilizar que nos da la posibilidad de hacer diseños
rápidamente. Otro punto son los diseños de las pruebas que se realizaran para
cada Sprint (revisar Plan de Pruebas), pero para esto se realizaran plantillas de
Excel, en donde se podrán diseñar rápidamente como se realizaran y cuáles serán
los criterios de aprobación de dichas pruebas. Además los riesgos se llevaran en
una plantilla Excel que será revisada día a día, entregando un detalle claro en
gráficos sobre qué riesgo incremento, apareció o disminuyo.
La codificación es algo esencial como bien lo dice XP, la codificación se
está realizando en parejas. Si bien puede perder cierta productividad, el fin de
programar en parejas trata de solventar dudas de programación que uno u otro de
los desarrolladores presente. Dicha codificación se realiza en un solo computador
con las herramientas de desarrollo que se especificaran más adelante.
41
2.11.3
Metodología Gestión del Proyecto
En nuestro proyecto utilizamos la metodología Scrum, modelo de referencia
que define un conjunto de prácticas y roles que puede tomarse como punto de
partida para definir el proceso de desarrollo que se ejecutara durante un proyecto.
Figura 13 : Concepto Scrum
En la figura Nº13 se puede apreciar claramente los artefactos que se
realizan en Scrum. Scrum está formado por Sprints que son cada una de las
partes del ciclo de vida de la metodología, en donde cada sprint dura entre 2 a 4
semanas. Para nuestro proyecto los Sprints dependen de las historias de usuarios
que queramos abarcar, es decir, la HU Nº1 que se abarca en el primer Sprint 1
que tiene una duración de 3 semanas, en cambio en el Sprint 2 que se abarca la
HU Nº2 y Nº3 dura 4 semanas. Si bien no es aconsejable cambiar la duración de
los Sprints esto se realiza debido a una expresa petición de nuestro Big Boss,
42
concluyendo que a partir del Sprint Nº3 la duración de los Sprints será de dos
semanas. El Product Backlog es una lista con las necesidades del cliente sobre el
producto. Para producir dicho Product Backlog se ocupa la herramienta de Excel,
en donde a partir de las historias de usuario se ordena y prioriza según el PO.
Dicho Product Backlog es esencial para producir el Sprint Backlog ya que del
Product Backlog nacen las actividades que se documentan en el Sprint Backlog. El
Sprint Backlog es un documento detallado donde se asignan las tareas al equipo,
destinando una cierta cantidad de duración en horas. Dicho documento cumple
con una identificación del sprint, identificación de la tarea, descripción básica de la
tarea, persona responsable, tiempo y estado de la tarea.
Sprint Planning Meeting son reuniones que se realizan antes de cada sprint
en donde tiene como objetivo seleccionar y planificar el trabajo que se desarrollara
en ese Sprint. Dichas reuniones que se realizan, antes de cada sprint se realizan
en la Universidad, en donde la duración no son más de 2 horas. Si bien son
reuniones cortas, lo que trata de abarcar es que se hará para dicho Sprint.
Además existen las reuniones llamadas Scrum daily meeting. Estas reuniones
diarias que se realizan cuando ya se está en un Sprint, se realiza para facilitar la
transferencia de información y la colaboración entre los miembros del equipo.
Dichas reuniones que se tienen durante el desarrollo de los sprint se realiza
presencialmente además apoyándonos de la conocida Scrum Task Board, la cual
trabaja bajo conceptos claves sobre las tareas, asignándolas estados; To Do, In
Process, To Verify, Done. Estas reuniones se realizaran en nuestro proyecto antes
de cada Sprint definiendo las tareas a realizar en dicho sprint, aparte de las que se
realizan diariamente. Las reuniones diarias se realizara aproximadamente en 10
min, preguntando que tereas se realizaron, que falta por hacer y que tareas se
están realizando, entregando un feedback entre el equipo.
El Sprint Review que se realiza al final de cada Sprint se podría enfocar en
nuestro Proyecto, como el feedback que obtenemos de los profesores guías
respecto a nuestro incremento del producto funcional mostrado. En nuestro caso
dicho Review toma un tiempo aproximadamente de 35 minutos. La finalidad es
43
poder contestar preguntas y describir como fue el proceso de realizar el
incremento del producto.
Para culminar se realiza el Sprint Retrospective una reunión entre el PO y el
equipo de trabajo, en donde como principal función es ver si el PO aprueba o no el
Sprint mostrado, si efectivamente el sistema era lo que él esperaba. Además se
analiza que cosas hay que mejorar o cuales fueron los errores cometidos durante
este sprint. El principal beneficio de esta reunión es aumentar la motivación del
equipo además de dejar al cliente realmente seguro sobre el sistema que se está
desarrollando.
2.11.4
Organigrama y Roles
A continuación se mostraran los organigramas y las responsabilidades de
cada uno los distintos roles que se cumplen tanto en Scrum como XP.
Figura Nº19 Organigrama Scrum
A partir de la figura Nº19 se pueden apreciar que existen tres grandes
divisiones al momento de responsabilizar a alguien. Estos son: el Product Owner,
44
Scrum Master, y Scrum Team. A continuación se detalla cada uno de ellos y sus
responsabilidades.
El Dueño de Producto (Product Owner)
El Dueño de Producto es la única persona autorizada para decidir sobre
cuáles funcionalidades y características funcionales tendrá el producto. Es quien
representa al cliente, usuarios del software y todas aquellas partes interesadas en
el producto.
Scrum Master
Es el que debe velar por los participantes del proyecto, debe encargarse de
formar y garantizar el correcto funcionamiento de la metodología.
Scrum Team
Es el
equipo de entre 4 a 9 personas encargados de desarrollar el
producto. En este proyecto son solo 2 personas que desarrollaran el proyecto.
En la tabla Nº3 se mostraran los responsables de nuestro proyecto
asociados a la metodología Scrum, en donde cada integrante asume las
responsabilidades previamente descritas según su rol.
45
Rol
Responsable
Product Owner
Gianina Acosta
Scrum Master
Fernando Figueroa
Scrum Team
Daniel Labra/Fernando
Figueroa
Tabla 3: Rol/Responsable
Gianina Acosta que tiene como cargo ser el Product Owner debe ejercer las
funciones descritas en la tabla Nº4, dichas funciones son esenciales para poder
dirigir un proyecto de la mejor manera posible, por ende el no cumplir dichas
funciones puede significar el fracaso del proyecto. El realizar esta tabla permite a
cada integrante responsabilizar a la persona a cargo y no a cualquier persona.
Responsable:
Responsabilidad que asume:
1. Debe definir las características
del producto.
2. Responsable del Product
Gianina Acosta
Backlog.
3. Estimar
el
financiamiento
necesario para el proyecto.
4. Ajustar
las
características
y
prioridades por Sprint.
46
5. Aceptar o rechazar los resultados
del
trabajo
provenientes
del
Scrum Team.
Tabla 4: Funciones PO
Las funciones que debe ejercer Fernando Figueroa como Scrum Master
están determinadas a partir de la tabla Nº5
Responsable:
Funciones que asume:
1. Garantizar la correcta aplicación
de Scrum.
2. Guiar al equipo a lo largo del
Fernando Figueroa
desarrollo.
3. Organizar las reuniones.
4. Resolver
los
entorpezcan
conflictos
el
progreso
que
del
proyecto.
Tabla 5: Funciones Scrum Master
Finalmente el equipo a cargo de desarrollar el proyecto debe ejercer las
tareas o funciones descritas en la tabla Nº6.
Responsable:
Funciones que asume:
1. Crear/desarrollar el producto.
2. Auto-asignación de tareas para
Daniel Labra y Fernando Figueroa
realizar el producto.
3. Estimar la complejidad de los
requerimientos del producto.
Tabla 6: Funciones Equipo Desarrollador
47
El organigrama asociado a la metodología de desarrollo XP (Programación
Extrema) está dividido en seis roles establecidos y claros, los que se basan en un
equipo pequeño de personas con habilidades complementarias que tienen el
mismo objetivo. A continuación se detallan los roles y responsabilidades que tiene
cada uno de ellos.
Rol
Programador
Responsable
Daniel
Labra/Fernando
Figueroa
Tracker
Fernando Figueroa
Coach
Daniel Labra
Consultor
Fernando Figueroa
Gestor
Daniel Labra
Tabla 7:Rol-Integrante
Desarrollador: Encargado de producir el código del sistema de la forma más
simple y definida que sea posible.
Responsable
Funcionalidad que asume
1. Escribir
las
pruebas
unitarias.
2. Estimar
Daniel Labra y Fernando Figueroa
las
historias
de
usuarios.
3. Desarrollar la aplicación.
Tabla 8: Funciones Desarrollador
48
Encargado de seguimiento (Tracker): Es el que proporciona la realimentación al
equipo.
Responsable
Funcionalidad que asume
1. Realiza
seguimiento
de
cada iteración.
2. Proporcionar
retroalimentación al equipo.
Fernando Figueroa
3. Supervisar el cumplimiento
de la estimaciones en cada
iteración
Tabla 9: Funciones Tracker
Entrenador (Coach): Es el responsable del proceso global.
Responsable
Funcionalidad que asume
1. Responsable del proceso
en conjunto.
2.
Daniel Labra
3. Intervenir directamente si es
necesario.
Tabla 10: Funciones Coach
Consultor: Si bien no es un miembro del equipo, es aquel que posee un
conocimiento puntual o específico dentro de un área concreta.
Responsable
Funcionalidad que asume
1. Apoyar al equipo XP en
situaciones puntuales.
49
Fernando Figueroa
Tabla 11: Funciones Consultor
Gestor (Big Boss): Es el vínculo entre clientes y programadores.
Responsable
Funcionalidad que asume
1.
Favorecer la relación entre
usuarios y desarrolladores
2. Cubrir las necesidades del
Oscar Pinto
equipo.
Tabla 12: Funciones Big Boss
A continuación se podría bosquejar un organigrama en donde demuestre
que ambas metodologías pueden y trabajan similarmente, en donde ciertos roles
son asumidos por uno u otro individuo.
En la figura Nº19 se puede apreciar como claramente ciertos roles se
asemejan debido a las responsabilidades y características que tienen cada uno,
como
por
ejemplo
el
Scrum
Master
tiene
las
mismas
cualidades
y
responsabilidades que un Coach en XP. Dicho organigrama es solo referencial y
nos permite identificar que los roles son prácticamente iguales.
Figura 14: Organigrama Scrum XP
50
2.11.5 Historias de Usuario
Identificación
HU1
Nombre
Ruta
Como
Quiero
Para
Usuario Ver la ruta Saber
para llegar distancia y el
al colegio. tiempo que
tomara.
Criterios de
aceptación
Resultado
Esperado
1.-Que sea la 1.-Poder apreciar
ruta más
en pantalla la ruta
cercana para el hacia el colegio
colegio
2.-Poder apreciar
2.-Distancia en la distancia.
KM
3.-Rango no
3.-mostrar
debiese ser mayor
colegios dentro a la 5ta región.
de un radio
seleccionado
por el cliente.
Prioridad Estimación(Puntos
Historia)
M
1
51
HU2
Login
Poder realizar 1.-Usuarios
Admin. Poder
ingresar a mantenciones. inválidos
través de un
2.-Contraseña
usuario y
Invalida
contraseña.
HU3
Visitas
Admin. Gestionar Poder vender
visitas a los la información
colegios
obtenida
realizada
por los
usuarios.
1.-Mensaje de
alerta respecto al
error
2.-Mensaje de
alerta respecto al
error
1.-Obtener la 1.-Se deberá poder
siguiente
generar un informe
información
con la información
sobre cada
de lo anteriormente
colegio:
detallado para
Cantidad de
cada colegio.
visitas,
cantidad de
veces
contactados,
cantidad de
matriculados a
través de la
página web,
tiempo de visita
por colegio en
la página web,
mensajes de
M
2
C
4
52
mejora sobre la
información del
colegio.
HU4
Reclamo
Usuario
Poder tener
conocimiento
de los
Ingresar un problemas de
la pagina
reclamo.
1.-Poder
ingresar un
reclamo sobre
la página web.
2.-los datos a
ingresar por
usuario son:
Nombre, Mail,
descripción.
1.-Poder obtener la
información del
reclamo, nombre,
mail, descripción
reclamo).
2.Validar el ingreso
de los datos
alertando con un
mensaje en el caso
de no haber
rellenado algún
campo.
C
1
53
HU5
Gestionar
Info.Sitio
Admin. Gestionar Ingresar,
información borrar y
del sitio.
modificar
colegios del
sitio
1.-Campos
1.- Mensaje de
vacíos al
alerta
ingresar, borrar correspondiente
y modificar
2.-Mensaje de
2.-Mostrar
alerta
mensaje
correspondiente
cuando se
3.-Mensaje de
agrega,
advertencia.
modifica o
elimina.
3.-Mostrar
mensaje de
advertencia al
eliminar
colegio.
M
4
HU6
Mensaje
Usuario Enviar un Mantener
mensaje al contacto con
contacto del la persona a
colegio
cargo del
seleccionad colegio y
o.
generar una
posible
reunión.
1.-Ingresar
datos del
usuario:
Nombre, mail,
telefono, curso
que se desea
ingresar y
descripción.
2.-Validar que
el mail haya
sido enviado
enviando copia
al mail del
tutor.
3.-Validar que
M
3
1.-Mensaje de
alerta al no llenar
algún campo.
2.-Mensaje de mail
enviado.
3.-Mensaje al
usuario de que el
mail fue recibido
por el personal
encargado del
colegio.(*por
validar)
54
el mail haya
llegado al
destino
(persona
colegio).
HU7
Mapa
Poder apreciar 1.-Obtener mi
Usuario Ver un
mapa
la distancia
ubicación.
donde
que hay desde 2.-Apreciar los
aparezca mi mi ubicación colegios que
ubicación y hacia los
hay en la V
la de los
colegios
región
colegios.
1.-Mostrar con
icono mi ubicación.
2.-Destacar los
colegios que se
encuentren en la V
región con un icono
y su nombre en él.
M
2
55
HU8
Poder tomar 1.-Informacion
Informació Usuario Que
aparezca una mejor
relevante.
n
información decisión
2.-Informacion
relevante de respecto a la actualizada.
los colegios. información de 3.-Informacion
otros colegios. verídica.
HU9
Búsqueda
Para realizar
Usuario Ingresar
criterios
búsqueda
para
acuerdo a mis
realizar una necesidades.
búsqueda
de colegios.
1.-Poder apreciar
la información del
colegio.
2.-Informacion
según la página del
Mineduc.
3.-La información
desplegada será
información
proporcionada por
el Mineduc.
M
2
1.-Poder
1.-Se deberá poder
seleccionar
seleccionar más de
más de un filtro un filtro para
2.-Actualizar
realizar la
mapa según
búsqueda.
filtro
2.-El mapa será
3.-Filtros
actualizado cada
relevantes
vez que se
busquen colegios a
través del filtro
3.-Propuestos por
el PO
M
3
56
HU10
Recomend Usuario Que el
sistema me
ador
recomiende
el mejor
colegio.
Para poder
tomar la
decisión en
base a la
recomendació
n
1.-Poder
1.-Se deberá poder
seleccionar uno seleccionar uno o
o más filtros. más filtros
2.-Actualizar
mostrando los
Recomendador colegios con mayor
según filtros. “me gusta” según
3.-Recomendar filtros.
según cantidad 2.-El
de "me gusta". Recomendador
Agregar
será actualizado
criterios de
cada vez que se
calidad.
busquen colegios a
través del filtro.
3.-Se mostraran los
colegios con mayor
cantidad de me
gusta de forma
descendente.
M
4
57
HU11
Circulo
Usuario
Para poder
1.-Poder
1.-Se deberá poder
Usuario Que el
sistema
saber los
seleccionar los ajustar los metros a
muestre un colegios que metros a la
la redonda, en
círculo
hay a la
redonda.
donde el círculo
ajustable en redonda de mí 2.-Cambiar
máximo no deberá
metros en ubicación
color del icono exceder el porte de
mi
forma de filtrar del colegio al la V región.
ubicación. colegios.
estar dentro del 2.-Se deberá
círculo.
cambiar el color del
3.-No
icono (de color
mostrar/ocultar negro a verde)
los colegios
cuando el colegio
que están fuera se encuentre
del circulo
dentro del círculo.
establecido.
3.-Se deberá
ocultar los colegios
que no se
encuentren dentro
del círculo,
aparecerán solo los
colegios dentro del
círculo.
M
2
58
HU12
Ocultar
Colegios
Usuario Que el
sistema
oculte el
resto de
colegios
cuando se
selecciona
la ruta de
cómo llegar
a un
colegio.
Para poder
visualizar
claramente la
ruta hacia el
colegio
seleccionado.
1.-Cambiar
color del icono
del colegio que
fue
seleccionado.
2.-No
mostrar/ocultar
los colegios
que no fueron
seleccionados
1.-Se deberá
cambiar el color del
icono del colegio
que fue
seleccionado (color
negro a color
amarillo).
2.-Se deberá
ocultar los colegios
que no fueron
seleccionados.
S
3
59
2.12.6 Plan de Proyecto
A partir de nuestra metodología de gestión del proyecto seleccionada se
realizara un plan de proyecto, el cual tendrá como objetivo poder entregar al big
boss tiempos estimados sobre la duración de cada fase del proyecto. Como toda
planificación esta se encuentra sujeta a modificaciones.
Según las distintas fases de un proyecto (Inicio, Planificación, Diseño,
Ejecución y Cierre y Control) nuestro proyecto se realizara de la siguiente manera
cada fase.
En primera instancia se deberá determinar las necesidades a satisfacer, es decir
con el cliente anotar las Historias de Usuario que el cliente desee acorde al
proyecto, para luego convertir esas HU en tareas y estimar un tiempo de
duración.(Etapa de Inicio).Luego para la etapa de Planificación se acordara
establecer un Product Backlog(en donde a cada HU se logra estimar y definir en
qué Sprint se realizara de acuerdo a las necesidades del cliente) y un Sprint
Backlog en donde en éste último se pondrán todas las tareas que se deberán
cumplir para la realización del Sprint, asignando dichas tareas a un responsable
del equipo de desarrollo. Dentro del proyecto cabe destacar que se realizaran
reuniones diarias que son aproximadamente de 10 minutos en donde el equipo
desarrollador comunicara al resto que es lo que falta, que se está haciendo y que
se hizo. En la etapa de diseño se logra realizar el diseño de las pruebas que se
van a realizar, ya sea de integración, unitarias, aceptación, carga, estrés etc.
además de diseñar todo lo a que a interfaz se refiere. En la etapa de ejecución se
realizaran todas las tareas que resultaron en el Sprint Backlog teniendo como
plazo máximo 2 a 3 semanas (dependiendo de la estimación realizada).En esta
etapa se deben ejecutar las pruebas unitarias o de integración. Finalmente se
logra realizar en la etapa de cierre o en Scrum llamado Sprint Review la liberación
de preproducción de la aplicación web, para que luego se realicen las pruebas de
aceptación. Una vez aprobadas dichas pruebas el equipo debe liberar la versión.
60
Para poder apreciar aproximadamente fechas sobre nuestro proyecto es que se
realizó esta Carta Gannt la que proporciona fechas estimativas durante cada fase
que se llevara a cabo en nuestro proyecto.
Nombre
Proyecto
Proyecto
Realizar Product Backlog
Sprint N°1
Sprint Backlog
Sprint Planning
Diseño Simple
Codificación
Pruebas
Validación Sprint N°1
Sprint Review
Sprint N°2
Sprint Backlog
Sprint Planning
Diseño Simple
Codificación
Pruebas
Validación Sprint N°2
Sprint Review
Sprint N°3
Sprint Backlog
Sprint Planning
Diseño Simple
Codificación
Pruebas
Validación Sprint N°3
Sprint Review
Sprint N°4
Sprint Backlog
Sprint Planning
Diseño Simple
Codificación
Pruebas
Validación Sprint N°4
Sprint Review
Liberación Producto
Sprint N°5
Sprint Backlog
Sprint Planning
Diseño Simple
Fecha Inicio Duración (Días) Fecha Termino
01/08/2014
136
31/05/2014
15/03/2015
77
31/05/2015
03/09/2014
1
04/09/2014
05/09/2014
25
30/09/2014
01/10/2014
2
03/10/2014
03/10/2014
5
08/10/2014
08/10/2014
3
11/10/2014
11/10/2014
10
21/10/2014
21/10/2014
5
26/10/2014
26/10/2014
3
29/10/2014
29/10/2014
2
31/10/2014
31/10/2014
25
25/11/2014
31/10/2014
2
02/11/2014
02/11/2014
5
07/11/2014
07/11/2014
3
10/11/2014
10/11/2014
10
20/11/2014
20/11/2014
5
25/11/2014
25/11/2014
3
28/11/2014
28/11/2014
2
30/11/2014
30/11/2014
25
25/12/2014
30/11/2014
2
02/12/2014
02/12/2014
5
07/12/2014
07/12/2014
3
10/12/2014
10/12/2014
10
20/12/2014
15/03/2015
5
20/03/2015
20/03/2015
3
23/03/2015
23/03/2015
2
25/03/2015
25/03/2015
25
19/04/2015
25/03/2015
2
27/03/2015
27/03/2015
5
01/04/2015
01/04/2015
3
04/04/2015
04/04/2015
10
14/04/2015
14/04/2015
5
19/04/2015
19/04/2015
3
22/04/2015
22/04/2015
2
24/04/2015
24/04/2015
1
25/04/2015
24/04/2015
25
19/05/2015
24/04/2015
2
26/04/2015
26/04/2015
5
01/05/2015
01/05/2015
3
04/05/2015
61
Codificación
Pruebas
Validación Sprint N°5
Sprint Review
Liberación Producto
Cierre Proyecto
04/05/2015
14/05/2015
19/05/2015
22/05/2015
24/05/2015
24/05/2015
10
5
3
2
1
7
14/05/2015
19/05/2015
22/05/2015
24/05/2015
25/05/2015
31/05/2015
62
2.11.7 Product Backlog
63
64
65
Figura 15:Product Backlog
66
El Product Backlog mostrado en la figura Nº15 es una lista de Historias de
Usuario, ordenadas según el valor de negocio que establece el Dueño del
Producto, y que trata de cubrir todas las necesidades necesarias a desarrollar. De
este documento se extraen las historias de usuarios que mayor beneficio entregue
al negocio, documentando luego las historias de usuario a realizar en el Sprint
Backlog. Las historias de usuario que entregan más valor a nuestro proyecto se
pueden apreciar debido al orden que se disponen. Este Product Backlog nos
entrega a nosotros una perspectiva clara de que es lo que se tiene que hacer,
teniendo claras las prioridades establecidas por el cliente, las estimaciones, en
que Sprint se realizara, de cierta forma es un documento que nos permite ser un
equipo auto disciplinado. Dicho Product Backlog representa la visión y las
expectativas que tiene el cliente respecto a los objetivos y entregas del producto,
además nos permite al equipo respetar las prioridades del cliente. Como se sabe
Scrum es una metodología ágil en donde las historias de usuario pueden ir
introduciendo cambios en el proyecto lo que permite que el usuario este siempre
en contacto con este documento que no resulta ser tan complejo respecto a otras
metodologías tradicionales.
De la figura Nº15 se puede apreciar en la primera columna un identificador
de la historia de usuario, único, que caracteriza a esa historia de usuario. En la
columna Nº2 aparece el nombre de historias de usuario, describiéndolas. En la
columna Nº6 se encuentra la importancia la cual se basó básicamente en la
técnica Mascow, la cual nos indica con una M si la HU debe incluirse, con una S si
se debería incluir, con una C si podría incluirse y con una W si no se incluye. En la
columna Nº 7 se realizó una estimación ocupando la técnica planning póker, en
donde a cada historia de usuario le asignamos un valor.
67
2.11.8
Gestión de Requerimientos
Para poder realizar una correcta gestión de requerimientos se hace a través
de encuestas, las cuales se realizan cada vez que se realiza el proceso de lean
startup, en donde lean startup aborda los lanzamientos de negocios y productos,
el que se basa en aprendizaje valido e iteraciones del lanzamiento del producto,
de tal manera de ganar una retroalimentación de los clientes. Debido a esto se
logran sacar métricas a través de las encuestas. Otra forma que nosotros hemos
estado realizando como se señaló anteriormente es a partir de la red social
Facebook donde tenemos nuestro Fan Page. En el vamos prácticamente
preguntando a la gente si es que tales avances han sido de su agrado.
Al realizar las encuestas y obtener las métricas correspondientes nos permite ver
de manera estadística los requerimientos que se deben abarcar o ir mejorando.
2.11.9
Gestión de Riesgos
En la Tabla N°19 se muestra el plan de mitigación y contingencia ante cada
riesgo existente, es importante destacar que no todos los riesgos pueden ser
eliminados no obstante, pueden desarrollarse planes de mitigación y contingencia
para reducir su impacto en el caso de que surjan. Cada riesgo tiene un
responsable el cual se hará cargo de cumplir dichos planes (Ver Tabla 19). El
análisis de los riesgos debe también identificar oportunidades no previsibles con el
fin de proporcionar beneficios adicionales. Nuestro proyecto posee los siguientes
riesgos, indicar además que los riesgos pueden ir apareciendo semana tras
semana, está sujeto a modificaciones. Además es se incluyen las tablas
valorización por impacto y probabilidad en donde cada una de ellas posee un
rango de números entre uno y cuatro con su respectiva descripción, lo que nos
permitirá entender de mejor manera las probabilidades e impacto que hay en cada
riesgo.
68
A medida que el proyecto avanza se van gatillando nuevos riesgos que se
verán reflejados en los riesgos de cada Sprint permitiendo tener un control sobre
los riesgos disparados o disminuidos por el Sprint. La forma de controlar los
riesgos es aplicar el plan de contingencia o mitigación en el caso de que el riesgo
sea mayor a 3 y 5 (nivel de riesgo). A medida que el proyecto avanza se van
gatillando nuevos riesgos que se verán reflejados en los riesgos de cada Sprint
permitiendo tener un control sobre los riesgos disparados o disminuidos por el
Sprint. La forma de controlar los riesgos es aplicar el plan de contingencia o
mitigación en el caso de que el riesgo sea mayor a 3 y 5 (nivel de riesgo)
respectivamente.
69
Tabla 13:Gestión Riesgos
70
2.11.10
Gestión de Configuración
Para la metodología XP y Scrum se utilizaran las herramientas
proporcionadas
por
la
Universidad
Andrés
Bello
Tortoise
SVN
(http://ing.escueladeinformatica.cl:8080/svn/PT_Labra_Figueroa). En donde dicha
herramienta nos facilita para tener una documentación con controles de versiones,
teniendo como línea base las primeras funcionalidades de la aplicación. Esta
herramienta entregada por la universidad es muy fácil de utilizar, además es una
herramienta en donde los profesores guías tienen acceso fácilmente. Esta
herramienta será utilizada específicamente por el equipo de desarrollo el cual
estará comprometido a subir sus distintas versiones del producto.
2.11.11
Control de versiones
A continuación se muestra en la tabla historial de versiones (figura Nº123)
todas las versiones que actualmente han sido realizadas y subidas al SVN
(herramienta de control de versiones), en la tabla se puede apreciar la fecha, la
versión una breve descripción y el autor. Cabe destacar que las versiones que se
encuentran en la siguiente tabla a su debido tiempo pasaron para un ambiente de
testing, pero sin embargo la última liberación fue liberada a cliente.
Fecha
Versión o
LineaBase
Descripción
Autor
26/09/2014
0.1
Creación del template.
Daniel Labra
30/09/2014
0.1.1
Implementación del mapa.
Daniel Labra
5/10/2014
0.1.2
Agregar colegios.
Fernando
Figueroa
71
10/10/2014
0.1.3
Implementar la ruta hacia los colegios.
Daniel Labra
10/10/2014
0.1.4
Base de datos conectada a la página.
Fernando
Figueroa
14/10/2014
0.1.5
Mostrar información de los colegios.
Daniel Labra
20/10/2014
0.2
Implementación Login Administración
Fernando
Figueroa
05/11/2014
0.2.2
Implementación búsqueda por criterio
25/11/2014
0.3
Implementación
5/12/2014
1.0
recomendador
Daniel Labra
“Me Fernando
Gusta”
Figueroa
Versión Final – Lista para revisión final.
Daniel Labra
Tabla 14: Control de Versiones
Un sistema de control de versiones provee un repositorio para el
almacenamiento de cambios en el código fuente. Es una locación para realizar
seguimiento de como el software cambia, cuando cambia, y quien lo cambia.
El éxito de un proyecto es altamente dependiente de cuan efectivo es el
sistema de control de versiones. El control de versiones se vuelve esencial para
las organizaciones de software de cualquier tamaño, debido a que un proyecto de
software produce un número de elementos durante su ejecución, incluyendo
documentos varios, programas, datos, y manuales. Todos estos elementos
pueden cambiarse fácilmente en cualquier momento durante el curso del proyecto.
Generalmente estos son los beneficios del control de versiones:
● El control de versiones mantiene un historial de cambios. Un historial se
mantiene por cada artefacto lo cual permite a los miembros del equipo
ayudar a determinar el porqué de las decisiones tomadas, qué ha sido
intentado en el pasado y quién hizo los cambios. También es importante
asegurar que todos los miembros del equipo pueden acceder siempre a la
72
versión actual, y también encontrar fácilmente o revisar versiones antiguas.
● El control de versiones es fundamental para equipos en coordinación y
mejora la comunicación entre miembros del equipo, el control de versiones
permite a cualquiera a leer y copiar los recursos del proyecto, pero solo
miembros del equipo autenticados o autorizados tienen permiso de
actualizarlos.
● Dado que se permite a más de un miembro del equipo a colaborar en un
solo artefacto al mismo tiempo, o de manera secuencial, el control de
versiones ayuda a asegurar que otro miembro del equipo no reemplace el
trabajo de un miembro del equipo, y ayuda a asegurar que el trabajo de
todos los miembros del equipo es consistente y compatible.
● Mejora la productividad del equipo de desarrollo y la calidad del trabajo
debido a que todos tienen visibilidad de todos los aspectos del proyecto.
● Con el control de versiones, es sencillo el manejo de la gestión de un
release del software y se incrementa la satisfacción del cliente.
Para nuestro proyecto utilizaremos la herramienta de SVN como nuestro
repositorio, el cual cuenta con:
● trunk, quiere decir el directorio debajo del cual se está desarrollando el
proyecto principal;
● branches, el cual es un directorio en donde se crean varias ramas de la
línea principal de desarrollo; y
● tags, en cual es un grupo de tomas en el tiempo del árbol que han sido
creadas, y quizá destruidas, pero nunca cambiadas.
La versión más reciente está ubicada debajo de /trunk/ la versión liberada está
ubicada debajo de /tags/.
Identificación de Versiones
● Cada elemento tiene un nombre de archivo, único en ese proyecto.
● Cada elemento tiene un identificador de versión asociado, el cual toma una
73
de dos formas:
- Un número entero, con la versión de línea base inicial comenzando en “1”,
e incrementando
- Un indicador decimal por ejemplo para el uso en documentación asociada
con un producto liberado.
● Cada elemento opcionalmente puede tener asociados a él: una descripción
del elemento, fecha de creación, razón por la cual se creó.
Herramienta Utilizada
● TortoiseSVN: Un cliente subversión gratis para el sistema operativo
Windows.
En la siguiente imagen se puede apreciar como nosotros subimos cada
parte y liberación de nuestro código a esta herramienta.
74
75
2.11.12
Control de cambios
Los cambios se realizaran si un requerimiento o funcionalidad produce un
impacto muy fuerte en el proyecto lo cual podría afectar su éxito, a lo cual se debe
estudiar el tipo de cambio, en un plazo máximo de 48hrs.
Para poder dejar una documentación más detallada del cambio solicitado
se pide llenar la siguiente plantilla:
1. Número se Solicitud de Cambio
2. Propósito del cambio
3. Estado de la Solicitud de Cambio
4. Información del Solicitante
5. Sistema(s) impactado(s)
6. Impacto a operaciones de sistema(s) existente(s)
7. Impacto a documentación asociada
8. Criticidad de la solicitud
9. Fecha de Necesidad
Nosotros utilizamos la herramienta Trac para poder llenar un control de lo
que se está realizando y de todo lo que se tiene que realizar. En caso, de que se
realice un cambio este estará registrado en los tickets lo cual permite una mejor
organización para realizar las tareas.
76
Este es el proceso formal al momento de realizar un cambio:
Para ver nuestros tickets pueden ingresar a:
-
http://han.ing.unab.cl:8080/trac/pt_labra_figueroa
77
2.11.13
Ambiente de Desarrollo
Para el desarrollo del sistema se utilizarán las siguientes herramientas:
Sublime text 2 es una herramienta que nos permitirá ir editando el código
establecido en html5.
Se utilizaran los siguientes dos notebooks y Servidor:
1. Notebook HP, procesador Intel Core i5 con 6GB de RAM con sistema
operativo Windows 7.
2. Notebook Samsung, procesador Intel Core i7 con 8 GB de RAM y Sistema
operativo Windows 7.
3. Servidor de base de datos MySQL
Además como software se utilizara:
1. Text Sublime 3 v2.2
2. Microsoft Excel 2013
Dentro del lenguaje de programación que se utilizara:
1. Php
2. Sql
Control de versiones
1. Svn
2. Trac
78
2.11.14
Ambiente de Pruebas
Para el ambiente de pruebas del sistema implica probar el sistema global
en donde nos permita establecer si se cumplen los requisitos impuestos con
anterioridad. Antes de realizar dichas pruebas se deben cumplir a cabalidad las
pruebas unitarias y las pruebas de integración. El ambiente para la realización de
dichas pruebas es el siguiente:
Servidor
•
Apache + PHP + Base de datos MySQL
•
Sistema Operativo Windows
Servidor de pruebas externo
•
Sistema operativo: Windows
•
Dominio servidor de pruebas externo: http://han.ing.unab.cl/faceschool/
•
Servidor de base de datos MySQL: http://han.ing.unab.cl/phpmyadmin
Sesiones simultáneas de pruebas
•
Pruebas de carga: 50 peticiones
simultáneas.
Aplicacion
a
utilizar
JMeter.
79
Software para pruebas
•
Apache JMETER
PC
•
Equipo cliente.
2.11.15
Ambiente de Producción
Nuestro ambiente de producción es el mismo ambiente de desarrollo por lo
cual se ocuparan los mismos equipos y tecnología.
2.11.16
Plan de Pruebas
El propósito de la realización del plan de pruebas, es la especificación del
enfoque, alcance y recursos requeridos para la realización de las pruebas. En el
siguiente plan de pruebas se describirán las dos actividades fundamentales para
la realización de las pruebas correspondientes a la prueba de componentes y la
realización de las pruebas de sistema.
Los objetivos de la etapa de pruebas son los
siguientes:
● La demostración al Product Owner que el software satisface las HU, lo
que significa la realización de las pruebas en relación a los
requerimientos definidos por el cliente en conformidad a la versión
definida para ser liberada.
● Descubrir defectos en el software en que el comportamiento de éste es
incorrecto, no deseable o no cumple con su especificación.
80
Pruebas Desarrollador
Estrategias de pruebas
PRUEBA
RESPONSABLE
Pruebas de integridad de datos y BD
F.Figueroa
Pruebas Unitarias
D.Labra
Pruebas de la interfaz de usuario (IU)
F.Figueroa
D.Labra
Pruebas de Desempeño
F.Figueroa
Pruebas de Cargas
D.Labra
Pruebas de Volumen
F.Figueroa
Pruebas de Integración
Tabla 15: Plan de Pruebas
A continuación se detalla cada tipo de pruebas con su respectivo objetivo,
técnica a utilizar y el criterio a cumplir para que dicha prueba sea aprobada sin
ningún inconveniente.
81
Pruebas de integridad de datos y BD
Objetivos
Técnica a utilizar
Asegurar que los métodos
de acceso y los procesos
funcionen de manera
correcta.
Invocar los métodos de
acceso a la BD,
intentando ingresar con
datos validos e inválidos.
Criterio a cumplir
Todos los métodos
funcionan de manera
correcta. Mensaje de
alerta correspondiente.
Tabla 16: Pruebas de Integridad BD
Pruebas de Sistema
Objetivos
Asegurar el correcto
funcionamiento del
sistema.
Técnica a utilizar
Criterio a cumplir
Invocar cada
funcionalidad ingresando
datos validos e inválidos.
Mensaje de alerta
correspondiente al error o
alerta producido.
Tabla 17: Pruebas de Sistema
Pruebas de Rendimiento
Objetivos
Asegurar el correcto
funcionamiento del
sistema.
Técnica a utilizar
Invocar cada
funcionalidad ingresando
datos validos e inválidos.
Criterio a cumplir
El rendimiento del
sistema deberá ser
medible y apropiado a la
funcionalidad probada.
Tabla 18: Pruebas de Rendimiento
82
Pruebas de la interfaz de usuario (IU)
Objetivos
Asegurar el correcto
funcionamiento de la
funcionalidad según la
interfaz.
Técnica a utilizar
Probar cada funcionalidad
acorde a lo que aparezca
como funcionalidad.
Criterio a cumplir
Que la funcionalidad
cumpla y realice la
función acordada.
Tabla 19: Pruebas de Interfaz
Pruebas de carga
Objetivos
Verificar el tiempo de
respuesta del sistema al
realizar alguna
funcionalidad.
Técnica a utilizar
La herramienta a utilizar
será Jmeter.
Criterio a cumplir
Cumplir dentro de un
tiempo aceptable la
funcionalidad solicitada.
Tabla 20: Pruebas de Carga
83
Capítulo IV
2.12 Resultado y Discusión
2.12.1 Sprint Nº1
2.12.2 Planning Meeting
Nuestro Planning Meeting esta dado como una reunión que se realiza entre
el equipo de desarrollo y nuestro Product Owner (PO) teniendo una duración de
máximo 3 horas. El objetivo es que el Equipo seleccione aquellos elementos del
Product Backlog que cree que puede comprometerse a transformar en un
incremento de funcionalidad potencialmente entregable que finalmente se
demostrará esta funcionalidad al PO en el Sprint review meeting al final del Sprint.
Luego nuestro PO está atento a nuestras preguntas que podamos realizar sobre el
Sprint Backlog que se acordó. Finalmente el resultado de esta reunión es realizar
el Sprint Backlog tareas que tiene como finalidad estimar las tareas a realizar
durante el sprint y asignaciones a éstas para así dar comienzo al trabajo del
Equipo para desarrollar la funcionalidad. En nuestro caso se presenta a
continuación el Sprint Backlog (2.12.3) acordado con las historias de usuario
correspondientes que se realizaran, para finalmente tener como resultado nuestro
Sprint Backlog Tareas (2.12.6).
84
2.12.3 Sprint Backlog
Figura 16: Sprint Backlog
En la figura Nº16 se puede apreciar nuestro sprint backlog. Éste tiene como propósito establecer que HU se
atacaran en el sprint. En nuestro caso en el sprint Nº1 se atacaran las HU Nº7 y Nº8.Estas HU se les realizo un análisis
en el Product Backlog por lo que ahora se necesita crear un EDT o estructura de desglose de tareas, en donde se define
a grandes rasgos que se hará en dicho sprint. Se seleccionaron estas dos HU debido a que según el PO estas, resultan
tener mayor valor hacia el negocio del cliente, además se quiere minimizar los riesgos que conlleva a implementar dichas
HU.
85
2.12.4 EDT
El EDT es un gráfico en el que los elementos de trabajo críticos, actividades
y tareas de un proyecto, se representan para retratar sus relaciones entre sí y con
el proyecto en su conjunto. La finalidad de construir un EDT resulta ser que éste
puede ayudar a un gerente de proyecto a predecir los resultados basados en
diversos escenarios, lo que contribuye a optimizar la toma de decisiones en todo lo
relativo a procedimientos y cambios.
En la figura Nº17 se puede apreciar nuestro EDT, en donde se define los
objetivos clave y se identifica a grandes rasgos las tareas necesarias para
alcanzar esas metas. La finalidad de cumplir con este EDT que si bien no es un
plan a seguir nos entrega al equipo una ayuda para ganar precisión a la hora de
definir y organizar el alcance del proyecto. Según las faces previamente descritas
que tenía la metodología de desarrollo es que se realizó el EDT.
Figura Nº22 EDT
Figura 17: EDT
El Sprint Backlog tareas es un listado de todas las tareas que se van a
realizar para cumplir con la historias de usuario seleccionada. La figura N°28 tiene
dicho objetivo, cada tarea tiene un responsable que está asociada a una actividad
86
específica, además de indicarnos los días que se trabajan en el proyecto, se
identifican las horas que faltan para terminar dicha tarea. Para cada iteración se
debe realizar un Sprint Backlog, los cuales tendrán diferentes tareas.
La figura Nº16 representa nuestro sprint backlog con tareas. Esta plantilla
nos fue de gran utilidad ya que nos va entregando información necesaria tanto
para el equipo desarrollador y a nuestro big boss, lo que nos permitió a nosotros
como equipo de desarrollo planificarnos día a día sobre nuestro proyecto. En la
imagen se puede apreciar que se hicieron un total de 128 horas repartidas en las
22 tareas para ambas HU. Como se puede apreciar cada tarea tenía un
responsable que se fue asignado el cual era el encargado de realizar dicha tarea.
Si bien estas tareas se iniciaban en una determinada estimación de horas, era
posible que con el pesar del tiempo las horas trabajadas o resultantes no
reflejaban las horas trabajadas, ya que se dio el caso en donde para terminar una
tarea quedaban 4 hrs, pero finalmente quedaban 5 hrs debido a que no se avanzó
y además se presentaron problemas.
2.12.5 Criterio de Aceptación
Las pruebas de aceptación son básicamente pruebas funcionales, sobre el
sistema completo, y buscan una cobertura de la especificación de requisitos y
del manual del usuario. Estas pruebas no se realizan durante el desarrollo, pues
sería impresentable al cliente; sino que se realizan sobre el producto terminado e
integrado o pudiera ser una versión del producto o una iteración funcionando.
Cada prueba de aceptación consta de una sucesión de pasos y decisiones que se
siguen para realizar una determinada actividad o tarea. Estas pruebas que se
realizan con el cliente tienen como función probar con el cliente en un escenario
del sistema normal el comportamiento de lo que él se espera, demostrando al
cliente el cumplimiento de un requisito o en nuestro caso de una HU.
A continuación en las tablas Nº 21 y Nº22 se pueden apreciar los criterios
de aceptación que el Product Owner realizo para nuestro proyecto. Como bien se
87
señaló antes están compuestas de un ID único, Nombre, una pre condición que se
debe efectuar antes, una condición para que se realice la acción, los pasos que se
deben realizar y los resultados esperados.
Tabla 21: Prueba Aceptación Ruta
88
Tabla 22:
Prueba Aceptación Información
89
2.12.6 Sprint Backlog Tareas
Figura 18:Sprint Backlog Tareas
90
2.12.7 Diseño Sprint Nº1
A continuación se muestran las tarjetas CRC que se implementaron en este
Sprint Nº1.Estas tarjetas se componen del nombre de la clase, responsabilidades
y colaboradores. La finalidad de estas es mostrar igual que en un diagrama de
clases ver sus atributos y métodos que actúan en cada clase. Estas tarjetas que
son utilizadas en la metodología desarrollo XP, representa de distinta manera lo
que es el Diagrama de Clases.
La tabla Nº23 corresponde a la clase Ruta, la que tiene como
colaboradores Interfaz, Colegio, Mapa y Servidor.
Tarjeta CRC
Faceschool
Datos de la clase
Nombre de la clase: Ruta
Responsabilidades
Colaboradores
traveltoAddress()
Mapa: index.php
directionsService.route(request.getRuta)
Tabla 23:
CRC Ruta Sprint Nº1
91
La tabla Nº24 corresponde a la clase información, la que tiene como
colaboradores Interfaz, Colegio y Servidor.
Tarjeta CRC
Faceschool
Datos de la clase
Nombre de la clase: Información
Responsabilidades
Colaboradores
Base_url(colegio/show)
Mapa: index.php
Public function Show()
Colegio: show.php
Get_colegio(colegios_id)
Controllers: colegio
Return $query->Row()
Models: colegio_model.php
View(colegio/show, $dato)
Tabla 24: CRC Información Sprint Nº1
A continuación se pueden apreciar el diseño implementado en nuestro Sprint
Nº1.Los diagramas de secuencias presentados a continuación (Figura Nº 25 y
Figura Nº26) representan la secuencia sobre la funcionalidad realizadas “Ruta” e
“información” respectivamente.
92
En esta figura (figura Nº19) se puede apreciar la funcionalidad de ver ruta.
El usuario ingresa a nuestra página web en donde de manera automática se
cargan los colegios. El usuario deberá seleccionar un colegio para que finalmente
el servidor devuelva la información a la interfaz, en donde aparecerá en un mapa
la ruta más cercana hacia el colegio seleccionado desde su ubicación.
Figura 19:
Diagrama Secuencia Ruta
93
En la figura Nº20 se puede apreciar la funcionalidad ver información del
colegio. Esta funcionalidad se inicia con el usuario en donde deberá seleccionar el
colegio para que finalmente el servidor devuelva la información que se tenga
respecto a este colegio, a la interfaz.
Figura 20: Diagrama Secuencia Información
94
A continuación se puede apreciar nuestro diagrama de despliegue
correspondiente al Sprint Nº1.
Figura 21: Diagrama de Despliegue Sprint Nº1
95
En la figura a continuación se puede apreciar nuestro diagrama de
componentes. El cual se conforma principalmente por el Landing, el Mapa y el
Colegio.
Figura 22: Diagrama de Componentes Sprint Nº1
96
La siguiente figura muestra el diseño de nuestra base de datos conformado
para el sprint Nº1, con sus respectivas clases, claves primarias, claves foráneas y
conexiones.
Figura 23: Diseño de BD Sprint Nº1
97
2.12.8 Evidencia Interfaces
Las siguientes imágenes hacen relación a la evidencia de las interfaces
creadas para este Sprint Nº1.La siguiente interfaz (Imagen Nº1 y Nº2)
corresponden a la ruta desde mi ubicación hacia el colegio seleccionado, al
apretar el botón “como llegar” se traza la ruta más cercana desde mi ubicación
hacia el colegio.
Imagen Nº1
Imagen Nº2
98
Las siguientes imágenes (Imagen Nº3) corresponden a luego de seleccionar el
botón “ver información” respecto al colegio seleccionado.
Imagen Nº3
99
Imagen Nº3
100
2.12.9 Pruebas Unitarias
Las pruebas unitarias se conforman principalmente de un identificador de la
prueba, identificador de la HU que se probó, una descripción de la prueba a
realizar, y los distintos escenarios en los que será probada, además tendrá un
resultado esperado en donde si cumple dicho resultado la prueba fue realizada
con éxito.
Las figuras Nº24 y Nº25 son el diseño de pruebas unitarias con sus
respectivos resultados que se realizó para este sprint. Dichas pruebas se
realizaron bajo la herramienta PHP Unit, la cual nos facilitó el trabajo para realizar
las pruebas diseñadas. La finalidad de realizar estas pruebas unitarias es
comprobar el correcto funcionamiento de un módulo de código, comprobando
finalmente si el modulo probado presenta errores. Estas pruebas aisladas
proporcionan ciertas ventajas como lo son la simplificación de las pruebas de
integración, dado que permite realizar estas pruebas con un grado alto de
seguridad de que el código ya aisladamente está funcionando de manera correcta.
De igual forma al detectar un error, resultaría más fácil encontrarlo en este tipo de
pruebas que en las pruebas de integración.
101
Figura 24:
Prueba Unitaria Ruta
102
La prueba realizada al módulo Mapa (figura Nº24) fue realizada con un
éxito total, ya que de las 2 pruebas realizadas al módulo tuvieron un resultado
acorde a lo esperado. De igual manera las pruebas realizadas al módulo
Información fueron un éxito debido a que se obtuvo el resultado esperado.
Figura 25:
Pruebas Unitarias Información
103
A continuación se muestra evidencia creada en el trac a partir de la realización de las pruebas unitarias correspondiente
al Sprint Nº1.
Figura 26:
TRAC Pruebas
104
2.12.10
Evidencia de seguimiento y control de cambios
En la figura a continuación se puede apreciar el uso del Trac. La finalidad de mostrar esto es que nos permite
ingresar tickets y hacerle un seguimiento a cada uno de ellos. La idea es ir ingresando tickets a medidas que vaya siendo
necesario ,permitiendo poner una breve descripción del ticket, el tipo, la fecha creada y la fecha en que fue realizado,
además de establecer un responsable y si finalmente el ticket fue resuelto o se encuentra con alguna observación.
Figura 27:
TRAC
105
2.12.11Liberación del Producto
Para este Sprint Nº1 no existe liberación del Producto.
2.12.12Evidencia Línea base
A continuación se puede apreciar que la línea base correspondiente a la versión
0.1 se encuentra en SVN.
Figura 28:
SVN
106
2.12.13
Burndown
A continuación se puede apreciar el grafico Burn Down (Gráfico Nº2).En
este grafico se puede apreciar como el equipo de desarrollo se comportó respecto
a la estimación realizada previamente. A partir de la estimación (línea azul) y el
trabajo restante (línea roja) se puede ver como el trabajo realizado se fue
adecuando cada vez más hacia la línea azul lo que nos indica que se fue
trabajando acordado al plan o a la estimación de las tareas. Este grafico nos
permite analizar por ejemplo si al momento de activarse un riesgo si se actuó
inmediatamente o no. En nuestro caso se puede apreciar que se demoró un día en
actuar respecto a un riesgo disparado como se puede ver en el gráfico, pero
finalmente no influyo en los tiempos de nuestro proyecto.
Gráfico Nº2 BurnDown
107
2.12.14 Evolución de los Riesgos
Es de suma importancia a medida que se va realizando el sprint, hacerle un
seguimiento a los respectivos riesgos que hay en el proyecto ya sea antes,
durante y después del sprint. La finalidad de hacerles un seguimiento a los riegos
identificados es saber cuándo éstos se están disparando para actuar rápidamente
con un plan de mitigación o contingencia cuando sea necesario .Además es
necesario saber cuáles ya dejan de ser riesgos potentes para el sprint. Es por
eso que como se muestra en el gráfico Nº3 se muestran los riegos que fueron
identificados principalmente dentro del sprint o bien que fueron identificados antes
del sprint.
Gráfico Nº3 Riesgos
108
Como se puede apreciar en el gráfico Nº3 se muestra el nombre del riesgo,
el id del riesgo y la probabilidad de los riesgo semana a semana, en donde el valor
1 se expresa como una baja probabilidad y el valor 5 se expresa como una alta
probabilidad. De igual manera se puede expresar en forma de grafico dichos
riesgos presentados en la tabla en donde se pueden apreciar cómo van
evolucionando semana a semana. Esto nos permite a nosotros como equipo tener
primero conocimiento de los riegos pero sobre todo un seguimiento claro para
saber en qué momento actuar respecto a un riesgo.
2.12.15 Post Mortem Sprint Nº1
Dentro del post mortem podemos señalar que para nosotros fue un gran
desafío empezar a trabajar en herramientas que no teníamos muchos
conocimientos pero sin lugar a dudas es un desafío que estamos dispuestos a
seguir construyendo esta página web. El haber finalizado nuestro primer sprint
dentro de los plazos establecidos nos deja sin lugar a dudas una vara muy alta
para el segundo sprint. Debemos mencionar que siempre hay cosas por mejorar y
en este caso creemos que no realizamos una buena estimación acorde a las
tareas asociadas a las HU, ya que muchas veces debimos trabajar más de lo que
habíamos estimado para realizar y cumplir dicha tarea. Además debemos mejorar
lo que son en la realización de pruebas ya que si bien realizamos pruebas de
aceptación y unitarias, no quedamos conforme con la realización de estas, debido
a que se pudieron realizar más y por ende probar más casos extremos. De igual
forma nos sentimos capaces de llevar este proyecto a cabo ya que poco a poco
vamos conociendo las herramientas necesarias para sacar el proyecto adelante lo
que nos tiene muy satisfecho.
109
2.12.13 Sprint Nº2
2.12.14 Planning Metting
Nuestro Planning Meeting esta dado como una reunión que se realiza entre
el equipo de desarrollo y nuestro Product Owner (PO) teniendo una duración de
máximo 3 horas. Está reunión se realiza en la Universidad Andrés Bello a un
horario acordado. El objetivo es que el Equipo seleccione aquellos elementos del
Product Backlog que cree que puede comprometerse a transformar en un
incremento de funcionalidad potencialmente entregable que finalmente se
demostrará esta funcionalidad al PO en el Sprint review meeting al final del Sprint.
Luego nuestro PO está atento a nuestras preguntas que podamos realizar sobre el
Sprint Backlog que se acordó. Finalmente el resultado de esta reunión es realizar
el Sprint Backlog tareas que tiene como finalidad estimar las tareas a realizar
durante el sprint y asignaciones a éstas para así dar comienzo al trabajo del
Equipo para desarrollar la funcionalidad. En nuestro caso se presenta a
continuación el Sprint Backlog (2.12.15) acordado con las historias de usuario
correspondientes que se realizaran, para finalmente tener como resultado nuestro
Sprint Backlog Tareas (2.12.17).
110
2.12.15 Sprint Backlog
En la figura Nº29 se puede apreciar nuestro sprint backlog. Éste tiene como propósito establecer que HU se
atacaran en el sprint. En nuestro caso en el Sprint Nº2 se atacaran las HU Nº2 y Nº9. Se seleccionaron estas dos HU
debido a que según el PO estas, resultan tener mayor valor hacia el negocio del cliente, además se quiere minimizar los
riesgos que conlleva a implementar dichas HU.Todo Sprint debe tener una meta y un objetivo el cual se puede apreciar
detalladamente en la columna Nº10 y Nº11 respectivamente.
Figura 29: Sprint Backlog Nº2
111
2.12.16 Criterio de Aceptación
A continuación se muestran las pruebas de aceptación (tabla Nº37 y Nº38)
con las que se atacó cada HU. Están compuestas básicamente con un Nombre,
una Pre condición, una condición los pasos a realizar y los resultados esperados.
Tabla 25: Criterio de Aceptación Búsqueda
112
Tabla 26: Criterio de Aceptación Login
113
2.12.17 Sprint Backlog Táreas
En la siguiente imagen se detallan las tareas que se debieron realizar para cumplir con el Sprint Nº2, se
completaron un total de 23 tareas con un total de 123 horas. Recordar que este Sprint se inició el día 20 de Octubre del
2014 finalizando el día 4 de Noviembre del 2014.A partir de la imagen se visualiza como el equipo fue trabajando día a
día sobre las tareas a realizar en las cuales se nota una hora estimada por cada tarea y luego las horas restantes que le
queda a esa tarea.
Figura 30: Sprint Backlog Tareas
114
2.12.18 Diseño Sprint Nº2
A continuación se detallan las tarjetas CRC comprendidas en este Sprint.
Se podrá apreciar el nombre de la clase, las responsabilidades y colaboradores.
Faceschool
Datos de la clase
Nombre de la clase: Login Administrador
Responsabilidades
Colaboradores
public function login()
Administracion: Login
public function login_action()
Controllers: Administracion
public function logout()
Models: colegio_model.php
private function autorizar()
function get_administracion_login()
Tabla 27:CRC Login
Tarjeta CRC
Faceschool
Datos de la clase
Nombre de la clase: Filtro
Responsabilidades
Colaboradores
Base_url(mapa/filtro)
Mapa:index.php
public function filtro()
Controllers: mapa
function filtro($comuna, $dependencia,
$religion, $idioma)
Mapa:filtro
Rerturn ($query)
Models: colegios_models
Tabla 28:CRC Búsqueda
115
En la figura a continuación se presenta el diagrama de secuencia
correspondiente a la HU Nº2, con sus respectiva secuencia que tanto como el
usuario y el sistema debe realizar.
Figura 31:
Diagrama Secuencia Sprint Nº2
116
El diagrama de secuencia a continuación corresponde a la HUº9 llamada
Búsqueda. Esta HU tiene como fin poder realizar una búsqueda de colegios a
partir de los filtros que el usuario debe seleccionar.
Figura 32:
Diagrama Secuencia Sprint Nº2
117
Otro de los diagramas a mostrar es el llamado diagrama de despliegue en
donde no tiene mayores cambios respecto al Sprint Nº1.
Figura 33:
Diagrama Despliegue Sprint Nº2
118
El diagrama que se muestra a continuación representa el diagrama de
componentes de nuestro Sprint Nº2, al cual se le agrego el componente
Administración con sus respectivos sub componentes Login.php, Inicio.php y
modificar_show.php.
Figura 34:
Diagrama Componentes Sprint Nº2
119
A continuación se nuestra nuestro diagrama de la base de datos
implementado, si bien no cambio mucho respecto al Sprint Nº1 la tabla que fue
incluida es la tabla de Admin, la cual nos permitirá almacenar el usuario y
contraseña de cada administrador.
Figura 35:
Diagrama de Clases Sprint Nº2
120
2.12.19
Las
Evidencia Interfaces
siguientes
imágenes
correspondiente
corresponden
a
al
las
interfaces
Sprint
implementadas
Nº2.
En la Imagen Nº4 se puede apreciar que se puede realizar una búsqueda según
los filtros y automáticamente en el mapa se actualizarán los colegios
correspondientes a los filtros seleccionados. Para este caso se seleccionó una
comuna Viña del Mar con un tipo de dependencia Particular Pagado, religión
católica e idioma Ingles, lo cual el sistema arrojo cuatro colegios que cumplían con
las características buscadas.
Imagen Nº4
121
En la imagen Nº5 se logra ver el login que se realizó para poder acceder a realizar
mantenciones ya sea agregar, modificar o eliminar colegios. Cada administrador
posee un usuario y contraseña el cual ingresándolo de manera correcta podrá
acceder a la siguiente ventana, en cambio sí se ingresó algún dato incorrecto el
sistema arroja un mensaje con el siguiente error: “Usuario y/o contraseña invalida”.
Imagen Nº5
122
En la imagen a continuación se puede apreciar el “menú” para agregar,
modificar o eliminar un colegio. Estas acciones las puede realizar solamente un
administrador.
Imagen Nº6
2.12.20
Pruebas Unitarias
Las tablas Nº29 y Nº30 son el diseño de pruebas unitarias con sus
respectivos resultados que se realizó para este sprint. Dichas pruebas se
realizaron bajo la herramienta PHP Unit, la cual nos facilitó el trabajo para realizar
las pruebas diseñadas. La finalidad de realizar estas pruebas unitarias es
comprobar el correcto funcionamiento de un módulo de código, comprobando
finalmente si el modulo probado presenta errores. Estas pruebas aisladas
proporcionan ciertas ventajas como lo son la simplificación de las pruebas de
integración, dado que permite realizar estas pruebas con un grado alto de
123
seguridad de que el código ya aisladamente está funcionando de manera correcta.
De igual forma al detectar un error, resultaría más fácil encontrarlo en este tipo de
pruebas que en las pruebas de integración.
Tabla 29: Diseño de Prueba Búsqueda
124
Tabla 30: Diseño de Prueba Login
125
Como se puede ver en la siguiente figura Nº36 se puede apreciar que se creó un “ticket” sobre la realización de las
pruebas unitarias para el Sprint Nº2.
Figura 36:
TRAC Pruebas
126
2.12.21
Liberación del Producto
En este Sprint Nº2 no hubo liberación del producto.
2.12.22
Evidencia Línea base
Como se puede apreciar en la siguiente figura la línea base correspondiente a la
versión 0.2 se encuentra en SVN.
Figura 37: SVN
127
2.12.23
Burndown
Como se puede apreciar en el grafico Burndown del Sprint Nº2, se puede
notar claramente como fue desarrollando el equipo de trabajo este Sprint Nº2
respecto a la estimación realizada en un principio. Además se visualiza que
hubieron lapsos en donde el equipo se encontró trabajando bajo la estimación
realizada, lo que habla de un equipo comprometido y capaz de realizar las tareas
propuestas de forma eficaz.
Gráfico Nº5 Burndown Sprint Nº2
128
2.12.24
Evolución de los Riesgos
Es de suma importancia realizar un exhaustivo seguimiento a los riesgos de
este Sprint Nº2, es que por eso se realiza un seguimiento en donde se pueden
apreciar los riesgos que han incrementado dentro de éste Sprint. Es por eso que
se puede apreciar como por ejemplo el riesgo numero 13 fue disminuyendo acorde
se realizaba este Sprint.
Figura 38:
Riesgos Sprint Nº2
129
2.12.25 Post Mortem
Luego de realizar este segundo Sprint y con ya claro conocimiento del
proyecto el haber manejado gran parte del Sprint Nº1 con gran eficacia es que
este Sprint Nº2 fue una gran instancia para seguir aprendiendo sobre las
herramientas que estamos utilizando. Sin lugar a dudas la velocidad del equipo fue
mejor pero lo que no nos dejó conforme nuevamente fue las pruebas que
ejecutamos a éste Sprint. Sin embargo tenemos muy en claro que en el Sprint Nº3
mejoraremos realizando las pruebas acordadas anteriormente.
130
2.12.26
Sprint Nº3
2.12.27
Sprint Planning Meeting
Nuestro Planning Meeting esta dado como una reunión que se realiza entre
el equipo de desarrollo y nuestro Product Owner (PO) teniendo una duración de
máximo 3 horas. Está reunión se realiza en la Universidad Andrés Bello a un
horario acordado. El objetivo es que el Equipo seleccione aquellos elementos del
Product Backlog que cree que puede comprometerse a transformar en un
incremento de funcionalidad potencialmente entregable que finalmente se
demostrará esta funcionalidad al PO en el Sprint review meeting al final del Sprint.
Luego nuestro PO está atento a nuestras preguntas que podamos realizar sobre el
Sprint Backlog que se acordó. Finalmente el resultado de esta reunión es realizar
el Sprint Backlog tareas que tiene como finalidad estimar las tareas a realizar
durante el sprint y asignaciones a éstas para así dar comienzo al trabajo del
Equipo para desarrollar la funcionalidad. En nuestro caso se presenta a
continuación el Sprint Backlog (2.12.28) acordado con las historias de usuario
correspondientes que se realizaran, para finalmente tener como resultado nuestro
Sprint Backlog Tareas (2.12.30).
131
2.12.28 Sprint Backlog
En la figura a continuación se puede apreciar nuestro Sprint Backlog. Éste tiene como propósito establecer que HU
se atacaran en el sprint. En nuestro caso en el Sprint Nº3 se atacaran las HU Nº10. Se seleccionaron esta HU debido a
que según el PO estas, resultan tener mayor valor hacia el negocio del cliente, además se quiere minimizar los riesgos
que conlleva a implementar dichas HU. Todo Sprint debe tener una meta y un objetivo el cual se puede apreciar
detalladamente en la columna Nº10 y Nº11 respectivamente.
Tabla 31:Sprint Backlog Sprint Nº3
132
2.12.29
Criterio de Aceptación
Tabla 32: Criterio Aceptación Sprint Nº3
133
2.12.30 Sprint Backlog Tareas
En la siguiente imagen se detallan las tareas que se debieron realizar para cumplir con el Sprint Nº3, se
completaron un total de 19 tareas con un total de 72 horas. Recordar que este Sprint se inició el día 7 de Noviembre del
2014 finalizando el día 24 de Noviembre del 2014.A partir de la imagen se visualiza como el equipo fue trabajando día a
día sobre las tareas a realizar en las cuales se nota una hora estimada por cada tarea y luego las horas restantes que le
queda a esa tarea. Además mencionar que se debió realizar una tarea extra como observación del PO respecto a la HU
Nº1 la cual no presentaba mayor complejidad.
Figura 39:
Sprint Backlog Tareas Sprint Nº3
134
2.12.31 Diseño Sprint Nº3
A continuación se detalla la tarjeta CRC sobre la historia de usuario Nº10
Recomendador.
Las
tarjetas
Clase
Responsabilidades
Colaboradores
se
componen justamente de estos 3 datos. En donde para la clase se detallan las
responsabilidades y colaboradores.
Faceschool
Datos de la clase
Nombre de la clase: me_gusta
Responsabilidades
Colaboradores
SeleccionarFiltros
Mapa: Recomendador
Get_megusta
Models: colegio_model
$query->get_megusta
Config: database
$recomendador
Tabla 33:CRC Recomendador
135
En la figura Nº40 se puede apreciar el diagrama de secuencia
correspondiente a la HU Nº10.
Figura 40:
Diagrama Secuencia Sprint Nº3
136
Figura 41:
Diagrama de Despliegue Sprint Nº3
137
Figura 42:Diagrama de Componentes Sprint Nº3
138
La figura que se muestra a continuación se puede apreciar el diagrama de
de la base de datos correspondiente al Sprint Nº3, la tabla que se agrego es Me
Gusta la cual básicamente almacena el ip del usuario que puso me gusta en un
colegio y el id de aquel colegio. Con esos datos podemos evitar que la misma
persona ponga más de una vez en el mismo colegio.
Figura 43:
Diagrama de Clases Sprint Nº3
139
2.12.32
Evidencia Interfaces
Como se puede apreciar a continuación se muestran las interfaces
implementadas para el Sprint Nº3 (Imagen Nº6 y Nº7).En éste Sprint estaba
complementado realizar el recomendador de colegios el cual a partir de la ventana
de la información del colegio el usuario tiene la opción de realizar un “Me Gusta”,
además puede comentar a través de Facebook o recomendar este colegio. Dicha
información se muestra en la Imagen Nº7 la cual como se puede visualizar
muestra según la selección de filtros los colegios que tengan mayor cantidad de
“Me Gusta”. Luego en la parte inferior se puede apreciar que personas han
recomendado los colegios además de saber cuál.
140
Imagen Nº6
Imagen Nº7
141
2.12.31
Pruebas Unitarias
Tabla 34:Pruebas Unitarias Recomendador Sprint Nº3
142
2.12.32
Pruebas Ejecutadas
A continuación se realizaran las
pruebas de carga las cuales fueron
realizadas con la herramienta Jmeter. Se realizaran distintas pruebas para ver la
carga que soporta el sistema.
Tipo de Prueba
Carga
Herramienta utilizada
Jmeter
Nº de usuarios:
10
Tiempo en hacer las peticiones:
1
Resultado obtenido:
El servidor es capaz de aguantar 10
usuarios realizando peticiones cada 1
seg.
Evidencia:
143
Tipo de Prueba
Carga
Herramienta utilizada
Jmeter
Nº de usuarios:
25
Tiempo en hacer las peticiones:
1
Resultado obtenido:
El servidor no es capaz de soportar a
25 usuarios realizando peticiones
cada 1 seg.
Evidencia:
144
145
En la siguiente figura Nº44 se puede ver como se realizaron los “tickets” para lo que es la realización de pruebas tanto
unitarias como de carga.
Figura 44:
TRAC Pruebas
146
2.12.33 Liberación del Producto
Fase: Inicio
Iteración: Sprint Nº1, Sprint Nº2 y Sprint Nº3
Fecha: 5-12-2014
Versión: 1.0
Responsables: Daniel Labra, Fernando Figueroa
En esta primera iteración se tiene como propósito liberar el primer sprint de
Faceschool, el cual, ataca las siguientes historias de usuario:
-
Ver la ruta hacia el colegio
Que aparezca información sobre los colegios
Que se visualicen los colegios en el mapa
Realizar una búsqueda según criterios establecidos.
Que el sistema recomiende basado en la cantidad de Me Gusta de los
colegios según los criterios.
Objetivos
El propósito de realizar esta liberación es que se pueda poner a disposición de
los usuarios nuestro sitio web para que así puedan probar nuestro producto, a su
vez poder obtener una versión más estable y así eliminar ciertos riesgos de
nuestro proyecto.
Criterios a cumplir
Para la liberación se deberá pasar el 80% de los casos de prueba, con el fin
de lograr una liberación exitosa.
Los casos de pruebas que se deben cumplir son:
-
El usuario debe poder ver la ruta para llegar al colegio con el fin de poder
apreciar la ruta más cercana.
Por otra parte, el usuario deberá poder ver ubicación de los colegios en el
mapa
El usuario debe ser capaz de visualizar la información del colegio que el
desee.
El administrador podrá ingresar modificar y borrar un colegio.
147
-
El usuario podrá realizar una búsqueda acuerdo a los criterios
seleccionados desplegándose los colegios según criterios.
El usuario podrá a partir de los criterios apreciar la cantidad de me gusta
que posee cada colegio.
El administrador deberá ingresar por un login.
En caso de que el usuario no pueda realizar al menos uno de los casos
mencionados, se considerara una liberación no exitosa.
2.12.34
Evidencia Línea base
La siguiente Imagen Nº9 corresponde a la línea base que se encuentra disponible
en SVN.
Imagen Nº9
148
2.12.35
Burndown
Este grafico Burndown que corresponde al Sprint Nº3 es una herramienta
que nos muestra como el equipo de trabajo fue trabajando bajo la estimación
realizado en el Sprint Backlog Tareas .Se puede apreciar que el equipo de trabajo
se mantuvo sobre el la estimación lo que no es un buen índice, ya que se podría
apreciar que el equipo no cumplió con el total de horas de trabajo por día.
Gráfico Nº3BurnDown Sprint Nº3
2.12.36
Evolución de los Riesgos
Como es de costumbre los riesgos son una amenaza muy importante si no
se les realiza el debido seguimiento y es por eso que semana a semana nosotros
vamos realizando un seguimiento a los riesgos, para así poder ver que riesgos
han disminuidos o que riesgos han aumentado lo que nos permitiría en éste último
caso activar nuestros planes de contingencia o mitigación. Como se Puede
apreciar en la figura a continuación se les realiza semana a semana un exhaustivo
149
seguimiento en donde se indica la probabilidad de que vaya ocurrir dicho riesgo.
Como se puede ver hay ciertos riesgos que disminuyeron su probabilidad como lo
es el caso del Riesgo Nº16 y otros que aumentaron como es el caso del Riesgo
Nº18.
Tabla 35:
Evolución de los Riesgos Sprint Nº3
150
2.12.37
Post Mortem
Luego de realizar este Sprint Nº3 y con ya claro conocimiento del proyecto
el haber manejado gran parte del Sprint Nº1 con gran eficacia al igual que el Sprint
Nº2.Creemos que mejoramos mucho en lo que es tema de pruebas. Anteriormente
no se definía ninguna prueba y claramente en el Sprint Nº3 no podía volver a
pasar y es por eso que ocupamos la herramienta JMeter para realizar pruebas que
fueran de calidad. Sin lugar a dudas la velocidad del equipo fue mejor pero lo que
no nos dejó conforme nuevamente fue las pruebas que ejecutamos a éste Sprint
debido a que podría haberse simulado mejor y mayor calidad en las pruebas.
151
Capítulo V
2.13 Conclusiones
2.13.1 Trabajo futuro
Dentro de nuestro trabajo futuro comprenderá de realizar el cuarto Sprint
para nuestro proyecto, el cual comprenderá de realizar las historias de usuario
especificadas en el Product Backlog.
5.13.2 Conclusiones
Sin lugar a dudas estos tres primeros Sprint nos dan la pauta de los errores
y las mejoras que hemos cometido en cada uno de ellos. Sin embargo hemos
analizado al final de cada Sprint dichos errores y mejoras que podemos realizar
tanto en la gestión del proyecto como en el desarrollo de éste. Es por eso que
como conclusión obtenemos que no es un proyecto fácil, sin embargo poco a
poco nos seguimos motivando y trabajando arduamente para poder lograr
tener un producto en donde la gente pueda utilizar de gran manera. Como
cualquier proyecto se presentan complicaciones para la realización de éste y
sin lugar a dudas en nuestro caso el Sprint Nº3 nos fue extremadamente difícil
ya que se presentó un nuevo riesgo, sin embargo fuimos capaces de sacar
adelante este Sprint Nº3.
Conversando con distinto tipo de gente y nuestro PO se han dado ideas de
agrandar este gran proyecto, es por eso que estamos pensando la posibilidad
de recopilar todos los datos generados y empezar a distribuir esos datos a los
colegios, siendo para ellos un gran material.
152
Anexo Plan de Pruebas
Faceschool
Plan de Pruebas
Versión 1.0
153
Historial de Revisión
Fecha
Versión
Descripción
03/10/2014
1.0
Creación del
documento
Autor
●
●
Daniel Labra
Fernando Figueroa
154
Plan de Pruebas
1.
Introducción
1.1
Propósito
El propósito del plan de pruebas planteado en este documento, es permitir
definir los lineamientos a seguir para realizar la planeación de la etapa de
pruebas sobre el proyecto “FaceSchool”, planteando una estrategia que
conduzca al objetivo enfocado en el aseguramiento de calidad del software.
1.2
Alcance
El plan maestro de pruebas describe el detalle de las diferentes pruebas a ser
aplicadas, así como también las herramientas y metodologías a utilizar en cada
una de estas. Las pruebas que serán realizadas son:
●
Revisión de la documentación: Consiste en revisar la calidad y completitud de
los documentos insumo y casos de uso para la ejecución de las pruebas.
●
Pruebas Unitarias: Se validaran las piezas individuales del software como una
unidad independiente.
●
Pruebas de integración: Se validara la integración entre los diferentes módulos
que componen la solución con el fin de garantizar que su operación integrada
es correcta.
●
Pruebas Funcionales o de Procedimientos: Se validaran los procesos, reglas
de negocio establecidas y los requerimientos funcionales.
●
Pruebas de sistema: Las pruebas de sistema se determinarán en el momento
que el Outsourcing de Desarrollo entregue el documento de Requerimientos no
funcionales, y así determinar qué tipos de prueba se realizarán y a qué casos
de uso se aplicarán.
●
Pruebas de Carga: Se validara que el sistema mantenga su correcta
funcionalidad cuando se someta a pruebas de carga.
●
Pruebas de Aceptación: Se validara que el sistema sea aceptado por el cliente
según las pruebas de aceptación.
155
1.3
Audiencia
Este plan maestro de pruebas está dirigido a todas aquellas personas
involucradas en la planeación, aprobación y ejecución del mismo.
2.
Misión de las Pruebas
2.1
Contexto del Proyecto y Antecedentes
Se pretende realizar un levantamiento y análisis de información de los
procesos de gestión de solicitudes del Banco de los Alpes con el fin de plantear
una arquitectura de solución tecnológica con el fin de optimizar la gobernabilidad,
monitoreo y eficiencia, tanto a nivel técnico como funcional de estos procesos de
negocio que constituyen y representan valor en las objetivos estratégicos de la
organización.
2.2
Misión de las Pruebas aplicable a este proyecto
La misión de la evaluación para el presente proyecto se define enfocada al
aseguramiento de la calidad de los componentes y artefactos tecnológicos
desarrollados, de manera que estos cumplan con la especificación de los
requerimientos del cliente. Para esto se definen los siguientes lineamientos que
constituyen la misión y objetivos dentro este esfuerzo de pruebas:
● Descubrir tantos errores como sea posible
● Notificar acerca de los riesgos percibidos del proyecto
● Examinar la aplicación para comprobar si hace o no lo que se supone, debe
hacer. De igual forma verificar si ésta hace o no lo que se supone, no debe
hacer.
● Validar y Verificar a través de la comparación del resultado de las pruebas del
aplicativo con el resultado que el mismo tendría que producir de acuerdo a su
especificación.
● Evaluar la calidad del producto y satisfacción de los interesados
● Cumplir con los requerimientos del cliente
156
El proceso de evaluación y pruebas debe permitir detectar problemas desde el
inicio de la especificación de requerimientos, antes de que sean de gran impacto
en fases más adelantadas del proyecto, esto con el fin de disminuir los riesgos y
de obtener un producto con calidad logrando mayor satisfacción del cliente.
Elementos Objetivo de Pruebas
A continuación se listan los elementos (artefactos, entregables, documentos etc.)
que seran objeto de prueba dentro del esfuerzo de pruebas:
Fase Inicial
● Documentación
● Especificación de Requerimientos
● Estimaciones
● Modelos - Diagramas
3.
Enfoque de las Pruebas
El plan de pruebas se basará en su totalidad en pruebas funcionales,
instalación, regresión y otras teniendo en cuenta los requerimientos no
funcionales.
Revisión de la documentación: La estrategia para realizar estas pruebas,
consiste en la revisión de la documentación y casos de uso verificando su
completitud y concordancia en la información que se encuentra en ellos.
●
Pruebas unitarias: Las estrategias para realizar estas pruebas consiste en
generar casos de prueba necesarios:
●
Para que cada sentencia o instrucción del programa se ejecute al menos
una vez correctamente.
●
Para que cada condición tenga por lo menos una vez un resultado
verdadero y al menos una vez uno falso.
●
Para probar varias veces el mismo bucle (en donde aplique)
157
considerando los siguientes casos: Ignorar el bucle, pasar una vez,
pasar dos veces, pasar n veces, pasar n-1 veces y n+1 veces.
●
Pruebas funcionales o de procedimientos: La estrategia para realizar estas
pruebas consiste en la elaboración y ejecución de Set de Pruebas, teniendo en
cuenta flujo normal y flujos alternativos, usando datos validos e inválidos que
permitan verificar lo siguiente:
●
●
Los resultados esperados ocurren cuando se usan datos válidos.
●
Se despliegan mensajes de error cuando se usan datos inválidos.
●
Cada regla de negocio es propiamente aplicada.
Pruebas de Regresión: La estrategia para realizar estas pruebas consiste en
repetir las pruebas (funcionales y de carga) ejecutadas antes de corregir
defectos o de añadir nuevas funcionalidades, para comprobar que las
modificaciones no provocan errores donde antes no los había.
3.1
Pruebas de Aceptación
Las pruebas de aceptación se basarán en su totalidad en pruebas funcionales,
instalación, y otras teniendo en cuenta los requerimientos funcionales las pruebas.
Adicionalmente estas pruebas serán de caja negra.
●
Pruebas funcionales o de procedimientos: La estrategia para realizar estas
pruebas consiste en la elaboración y ejecución de Set de Pruebas, teniendo en
cuenta flujo normal y flujos alternativos, usando datos validos e inválidos que
permitan verificar los casos de prueba.
3.3 Técnicas y Herramientas de Prueba
A continuación se exponen las herramientas y técnicas que se usaran para
llevar a cabo las pruebas enfocadas a la mitigación de los riesgos anteriormente
158
planteados:
Factor
de Conformidad
Técnica:
Prueba:
Pruebas
de
operación
Descripción:
Con las pruebas de operación se garantiza que el usuario está bien capacitado
en el manejo del software y además se lleva un registro para guardar los
caminos no contemplados dentro de las pruebas previas del software, y con ello
se tomarán las medidas adecuadas.
Factor
de Facilidad de Uso
Técnica:
Walkthroughs
Prueba:
Descripción:
Se debe incluir al cliente y/o usuario final con un role de evaluador durante
sesiones de walkthroughs en las cuales se discutirán los escenarios de calidad
referentes a la usabilidad del software.
Factor
Prueba:
de Facilidad
Operación
de
Técnica:
Pruebas
de
Requerimientos
Descripción:
Validar los requerimientos no funcionales de ambiente recolectados con el
cliente versus las características requeridas por el ambiente de producción.
3.4 Pruebas de Integración
Las pruebas de integración que se realizaran durante el proceso de desarrollo
de los componentes de software, deben seguir las siguientes políticas y
lineamientos de ejecución:
159
●
Se tiene una fase de pruebas unitarias completa y aprobada para el inicio de
las pruebas de integración.
●
Se seguirá el enfoque “Bottom-UP” para la ejecución de estas pruebas, es
decir, se probaran en primer lugar los componentes o módulos individuales del
software y posteriormente y de manera progresiva se irán agrupando hacia
arriba y de manera funcional estos componentes para probar escenarios que
impliquen varias funcionalidades de interacción entre los componentes, y se
continuará así hasta llegar al nivel más alto de funcionalidad e integración.
●
Dichas pruebas se realizaran únicamente cuando hayan dos o más
componentes a integrar.
●
Para la ejecución de estas pruebas se utilizarán las siguientes técnicas:
Objetivo
de
técnica:
la Verificar el funcionamiento interno de los componentes
desarrollados por medio de la comprobación del los
procedimientos llevados a cabo por el software en cada
invocación/llamado/respuesta, asi como el procesamiento
de datos que tiene lugar en cada uno de esta acciones.
Técnica
Pruebas de Caja negra
Herramientas
●
Debuggers
requeridas:
●
Robot de Pruebas
●
Bug Tracker
●
Tracing y Seguimiento a variables
●
Concordancia de los procedimientos del sistema con los
Criterio de éxito
requerimientos de usuario
●
Optimo manejo de excepciones y errores
●
Fácil seguimiento de la ejecución por medio de los
160
traces.
Objetivo
de
técnica:
la Verificar que los componentes funcionen adecuadamente
de manera individual cuando se encuentran integrados con
otros módulos y componentes
Técnica
Pruebas de Regresión
Herramientas
●
Casos de Prueba
requeridas:
●
Robot de Pruebas con scripts ya ejecutados
●
Bug Tracker
●
Tracing
●
No se detectan errores inyectados durante la integración
Criterio de éxito
del sistema
Objetivo
técnica:
de
la Verificar que la parametrización de componentes y todos los
aspectos referentes a la integración de partes del software
(consideraciones, configuraciones,ajustes) cumplan con lo
preestablecido pro el equipo desarrollo en la fase de diseño.
Técnica
Listas de Chequeo
161
Herramientas
Listas de chequeo con los items a comprobar para la
requeridas:
integración
Criterio de éxito
●
El 100% de los ítems han sido chequeados y cumplen
con la condición para ser aprobados.
Finalmente y como criterio de aceptación para esta fase de las pruebas se
realizará un piloto funcional de la solución construida, para el cual se debe generar
un Set de casos de prueba que abarquen la mayor cantidad de interacciones que
impliquen comunicación e integración entre los diferentes componentes del
software, y en el deben participar tanto los usuarios finales como los
desarrolladores.
4 Necesidades de Ambiente
4.1 Hardware Base para ambiente de pruebas
La siguiente tabla relaciona los recursos de hardware que son necesarios
para crear un ambiente inicial de pruebas en este proyecto.
Equipo
Procesador
DD
PC
superior)
Aplicación
a
Instalar
Navegador
Windows
(XP
RAM
o
Intel
10GB
2 GB Chrome,Mozila
o explorer.
162
4.2 Software Base para ambiente de pruebas
El software a instalar en el equipo de pruebas es:
● Windows 7 o superior
● Explorador a elección(Explorer,Chrome o Mozila)
4.3 Herramientas de soporte a las pruebas
Las siguientes son herramientas a utilizar para la ejecución de las pruebas
y la administración de sus resultados
Categoría o Tipo
Nombre
Pruebas Unitarias
PHP Unit
4.4 Configuraciones de Ambientes de Pruebas
El ambiente de pruebas será en una oficina equipada con las siguientes
herramientas y tecnología:
4
Tablet Samsung Galaxy Tab 3 10’ pulgadas con sistema operativo Android
4.1, con procesador Dual Core.
5
Notebook HP, procesador Intel Core i5 con 6GB de RAM con sistema
operativo Windows 7.
6
Notebook Samsung, procesador Intel Core i7 con 8 GB de RAM y Sistema
operativo Windows 7.
7
Servidor(distinto al de desarrollo)
La oficina se encuentra con acceso a internet para que todos los dispositivos se
puedan conectar a la red. Además contara con dos escritorios y una pequeña
mesa para realizar las distintas reuniones programadas.
163
5. Datos de Prueba
Con el objetivo de realizar unas pruebas acertadas y lo más cercanas a la
realidad que sea posible, es necesario contar datos que alimenten la ejecución de
los casos de prueba, los cuales, en la medida de lo posible, deben ser reales,
cubrir un rango considerable y representar una profundidad significativa dentro del
dominio de los datos que maneja la organización en los procesos de negocio
involucrados.
164
Anexo Encuesta Nº1
A continuación como anexo se mostrara la encuesta Nº1 que se realizó a
30 padres o tutores escogidos aleatoriamente. Esta encuesta nos permitió obtener
un feedback respecto a lo que los futuros usuarios quieren o esperan como
Faceschool.
Resumen
¿Qué colegio prefiere?
Publico
5
Subvencionado
9
Privado
15
¿Qué formación religiosa desearía que tenga el colegio?
Católica
11
Luterana
1
No es relevante
Otro
15
2
165
Para usted, ¿Que idiomas debe tener el colegio?
Ingles
11
Alemán
0
Francos
0
Italiano
0
Otro
1
¿Es relevante la infraestructura a la hora de matricular a su alumno en
algún colegio?
Si
24
No
5
Nombre 3 características esenciales en las cuales usted se fija al
buscar un colegio.
Bilingüe Acceso universidad Permanencia universidad
infraestructura, Precio e Historia
Acceso relacionado con la ubicación Infraestructura Tecnológica Preparación de los profesores
Buena educación Buena infraestructura Buenos profesores
Buenos profes, mucho deporte y talleres
Valores que pretenden inculcar Ubicación En el caso de ser religioso, qué tan extremista es.
Deportes Intercambios Idiomas
Buenos profesores
Cercanía a mi hogar, buen ambiente, infraestructura
166
Buenos profesores, Buen ambiente
Idiomas, calidad de los profesores y alumnos
Docentes con experiencia y buen ambiente.
Puntajes PSU Ambiente Escolar Trato Docente
Infraestructura Lugar Arancel
Localidad Profesorado Infraestructura Medios
Buena infraestructura, buenos docentes y bueno resultados en simces.
Calidad en los contenidos educacionales actividades extra programáticas reputación
buen ambiente, status social
Buenos profesores, entreguen almuerzo.
Calidad de los profesores, buen ambiente y simpatía de los profesores
¿Qué le interesa saber sobre un colegio?(seleccione por nivel de
importancia)
Puntaje Simce
Religión
18
6
Infraestructura
16
Cantidad de alumnos por clase
11
Otro
7
¿Es relevante la cercanía del establecimiento a la hora de matricular a
su hijo/a?
Si
21
No
8
¿Resulta esencial tener un gabinete psicopedagógico ayuda en el caso
de que el alumno presente alguna dificultad de aprendizaje?
167
Si
17
No
12
¿Desearía encontrar gran parte de los colegios ubicados en un
determinado sector en base a ciertas características?
Si
25
No
4
Si pudiera ver todos los colegios de la zona en una sola pagina web
¿Qué características le gustaría ver para poder tomar una decisión al
momento de matricular a su hijo/a en ese colegio?
Resultados psu. Ranking de colegios regional y nacional. Fotos. Aranceles. Vacantes
Contacto directo hacia el colegio.
NEM Puntaje PSU
Tiempo y distancia de recorrido y transportes escolares que hay y el recorrido de ellos.
Fotos de la infraestructura, aranceles, puntajes simces.
Religión sobre todo, infraestructura
1 - Precio de matrículas y aranceles. 2 - Una que otra entrevista sobre el colegio hacia algún
profesor o cargo importante de la institución. 3 - Pequeña reseña con historia del establecimiento.
Trayectoria del colegio
Infraestructura cantidad alumnos por clases mision y vision
Precio, matricula, arancel vacantes disponibles Prerequisitos de ingreso
Arancel Número de niños por cursos Número de cursos por nivel Enfoque pedagógico
Puntaje Simce Fotos del establecimiento Vacantes
Infraestructura Metros cuadrados construidos, y de patio. Profesores
168
A su juicio le gustaría ver dicha información en una página web o una
aplicación para Smartphone
En una página web
En una aplicación para Smartphone
21
2
¿Tiene alguna herramienta para la búsqueda de colegios?
Si
1
No
11
Encuentra difícil las herramientas que utiliza hoy en día para buscar
colegios?
169
Si
No
11
5
170
Descargar