Prototipo de Aplicación para La Gestión de Tareas en La Planeación Y Desarrollo de Proyectos
Prototipo de Aplicación para La Gestión de Tareas en La Planeación Y Desarrollo de Proyectos
Prototipo de Aplicación para La Gestión de Tareas en La Planeación Y Desarrollo de Proyectos
Trabajo de grado
Director
MSc. JOHN ALEXANDER VELANDIA VEGA
_______________________________
MSc. John Alexander Vega Velandia
Director
______________________________
Ph.D Carlos Orlando Diaz Benito
Coordinador de Trabajo de Grado
TABLA DE CONTENIDO
INTRODUCCIÓN ..................................................................................................... 9
1. PLANTEAMIENTO DEL PROBLEMA ............................................................. 10
2. OBJETIVOS .................................................................................................... 12
2.1 OBJETIVO GENERAL .............................................................................. 12
2.2 OBJETIVOS ESPECÍFICOS ..................................................................... 12
3. MARCO REFERENCIAL ................................................................................. 13
3.1 MARCO CONCEPTUAL ........................................................................... 13
3.1.1 Proyecto. ................................................................................................ 13
3.1.2 Gestión de proyectos.............................................................................. 14
3.1.4 Tarea. ..................................................................................................... 14
3.1.5 Gestión de tareas. .................................................................................. 15
3.1.6 WIP (Work in progress). ......................................................................... 15
3.1.7 App. ........................................................................................................ 15
3.2 MARCO TEÓRICO ................................................................................... 16
3.2.1 Contextualización histórica de la gestión de tareas ................................ 16
3.2.2 Justificación. ........................................................................................... 16
4. EVALUACIÓN DE MÉTODOS DE GESTIÓN DE TAREAS ............................ 18
5. REQUERIMIENTOS DEL SOFTWARE........................................................... 26
6. ARQUITECTURA DEL SISTEMA ................................................................... 34
6.1 DIAGRAMA DE COMPONENTES ............................................................ 34
6.2 DIAGRAMA ENTIDAD RELACIÓN ........................................................... 35
6.3 DIAGRAMA DE CLASES.......................................................................... 36
7. CONCLUSIONES ............................................................................................ 37
BIBLIOGRAFÍA ...................................................................................................... 38
5
LISTA DE TABLAS
6
LISTA DE FIGURAS
7
ANEXOS
8
INTRODUCCIÓN
Según PH.D Young Hoon Kwak1 la gestión de proyectos ha sido practicada desde
los inicios de la civilización debido a la necesidad de planear y proyectar las
actividades a realizar, sin embargo, no existió el término “gestión de tareas”, según
la reconocida compañía Silversoft2, hasta que el tiempo limitado en los proyectos
obligó a ejecutar las actividades para el desarrollo de una manera paralela.
También, según dicha compañía, esto dio lugar a que organizaciones de todo el
mundo dieran soluciones a este tipo de inconvenientes, creando y poniendo en
práctica diferentes métodos, técnicas y metodologías para gestionar tareas, como
el tablero Kanban o GTD (Get Things Done), que son utilizadas en las empresas
con el fin de cumplir con los objetivos de un proyecto o satisfacer la cadena de
valor de dichas organizaciones.
1
Oza, Nilay, Fagerholm, Fabian y Münch, Jürgen. ¿How does Kanban impact communication and
collaboration in software engineering teams?. Helsinki : University of Helsinki, 2013.
2
Silversoft. Task management and the small bussiness. Londres : Silversoft Solutions, 2010.
9
1. PLANTEAMIENTO DEL PROBLEMA
3
Link, Stefan, Hoyer, Philip, Schuster, Thomas y Abeck, Sebastian. Model-Driven Development of
Human Tasks for Workflows. Karlsruhe : Universität Karlsruhe, 2010.
4
PC Magazine. Top Free Picks: Task Lists and To-Do Managers. New York : PC Magazine, 2013.
5
Ibíd.
6
Social Compare. Task Management Web Apps Social Compare. [En línea].
<http://socialcompare.com/es/comparison/tasks-management-todo-lists-web-apps> [Citado el: 23
de 02 de 2015.]
10
Ninguna de las cuatro aplicaciones soporta la gestión de tareas en
ambiente multi-team, lo cual impide la comunicación entre diferentes áreas,
en organizaciones donde la terminación y ejecución de las tareas depende
de cada una de ellas.
Ninguna de las cuatro aplicaciones cuentan con un módulo que soporte las
actividades que desempeñan aquellas personas que son responsables de
gestionar y delegar las tareas en un equipo de trabajo.
11
2. OBJETIVOS
12
3. MARCO REFERENCIAL
7
Project Management Institute. Project Management Body of Knowledge. Newtown Township :
Project Management Institute, 2013.
8
Ibíd.
13
Fase de ejecución: En esta fase se realizan procesos para completar el
trabajo que se define en fases anteriores del proyecto para cumplir con las
especificaciones del mismo, además de coordinar personas y recursos que
se responsabilicen de integrar y realizar actividades.
Las tareas cuentan con un ciclo de vida y los estados que se muestra en la Figura
2: Transiciones de estado en el ciclo de vida de una tarea
9
Mcllre, Robert. How „Percent-Complete‟ Is That Task Again?. Montereal : PM Hut, 2007.
14
Figura 2: Transiciones de estado en el ciclo de vida de una tarea
Fuente: IBM. Life cycle of human tasks. IBM WebSphere Process Server documentation. Retrieved
: s.n., 2009.
10
Silversoft. Task management and the small bussiness. Londres : Silversoft Solutions, 2010.
11
Federal Trade Commission. Understanding mobile apps : Questions & Answers. Washintong
D.C. : OnGuard, 2011.
15
3.2 MARCO TEÓRICO
Para dar solución a esta serie de problemas, según Young Hoon Kwak, a partir de
los años 5013 surgieron diferentes métodos, metodologías y prácticas para
gestionar estos trabajos con las mejores garantías de previsibilidad y calidad de
los resultados, entre las cuales se creó la gestión de tareas con el fin de tener una
planificación y un seguimiento más exhaustivo a las actividades que se fueran a
ejecutar dentro de las organizaciones y los proyectos.
16
¿Cómo puede ser apoyada la ejecución de tareas?
¿A quién se debe asignar determinada tarea?
¿Cómo se debe informar a alguien de una tarea?
16
Oza, Nilay, Fagerholm, Fabian y Münch, Jürgen. ¿How does Kanban impact communication and
collaboration in software engineering teams?. Helsinki : University of Helsinki, 2013.
17
4. EVALUACIÓN DE MÉTODOS DE GESTIÓN DE TAREAS
Fuente: El autor
17
Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks. Schaumburg :
Zapier, 2015.
18
Hiranabe, Kenji. Visualizing Agile Projects with Kanban Boards. Tokio : Change Vision, 2007.
18
11.1 Tablero Kanban. Según lo descrito por Nilay Oza, Fabian Fagerholm y
Jürgen Münch19, el tablero Kanban es un método de gestión de tareas donde
““kan” significa visual, y “ban” significa tarjeta". Fue inventada por Toyota para
organizar mejor su producción de vehículos dividiendo el proceso en
fases que se tenían que cubrir correctamente para pasar a la siguiente
fase, garantizando así un producto de calidad.
Figura 3: Tablero Kanban
Fuente: El autor
19
Oza, Nilay, Fagerholm, Fabian y Münch, Jürgen. ¿How does Kanban impact communication and
collaboration in software engineering teams?. Helsinki : University of Helsinki, 2013.
20
Berriprocess. Lean Kanban, ¿por qué me importa?. Sofia : s.n., 2012.
19
Limita el trabajo en curso: Es importante tener en cuenta, que no trae
beneficios el estar haciendo muchas cosas al tiempo, y no hacerlas de una
manera correcta por falta de tiempo o recursos.
Gestiona el flujo : Se debe controlar el funcionamiento del trabajo y
observar si todo está funcionando o si alguien tiene problemas para
poder brindar una ayuda y solucionarlos.
Resultados de la evaluación:
Característica Calificación
Trabajo en equipo 9
Calificación promedio 7
Fuente: El autor
20
11.2 GTD (Get Things Done). Es un método de gestión de tareas inventado por
David Allen en el año 1983, es definido por él21 como un método que permite
gestionar actividades laborales o de la vida cotidiana basada en la liberación del
estrés, cargas emocionales y sobrecargas personales para aumentar la
productividad y la eficiencia a la hora de ejecutar actividades.
Este reconocido método, según el libro David Allen 22, cuenta con los siguientes
principios:
21
Allen, David. Getting thigs done: the art of stress-free productivity. Nueva York : Penguin books,
2003.
22
Ibíd.
23
Ibíd.
21
Gracias a la lista de tareas en espera, se facilita el monitoreo y control de
trabajo delegado a diferentes personas.
Resultados de la evaluación:
Característica Calificación
Trabajo en equipo 3
Calificación promedio 6
Fuente: El autor
11.3 The “Grocery List”. Según Kunesh24, es el método más sencillo para la
gestión de tareas pero a su vez, es el más concurrido en todo el mundo, no solo
para la gestión de proyectos sino para la vida cotidiana de cualquier persona.
24
Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks. Schaumburg :
Zapier, 2015.
22
Figura 4: Captura de pantalla Apple Reminders
Fuente: Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks. Schaumburg :
Zapier, 2015.
Característica Calificación
Trabajo en equipo 2
Fuente: El autor
25
Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks. Schaumburg :
Zapier, 2015.
23
Según lo ilustrado la Tabla 4: Resultado de evaluación, método Grocery List, este
método se calificó de la siguiente manera:
Trabajo en equipo 9
Trabajo en equipo 3
Trabajo en equipo 2
Fuente: El autor.
24
De acuerdo a los resultados mostrados en la Tabla 5, y las ventajas analizadas
por Kunesh26, entre los tres métodos Tablero Kanban, GTD y Grosery List, se
tomará el método tablero Kanban por tener la más calificación promedio más alta
en la evaluación realizada, lo cual lo identifica como el método más apropiado
para trabajar en equipo, gestionar el tiempo y realizar monitoreo y control sobre la
trazabilidad de estados de las tareas.
26
Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks. Schaumburg :
Zapier, 2015.
25
5. REQUERIMIENTOS DEL SOFTWARE
Como base del diseño y desarrollo del prototipo, a continuación se presentan los
requerimientos funcionales y no funcionales que se establecieron para el
desarrollo del software, definiendo sus identificadores, tipos de requerimientos,
métricas para los requerimientos no funcionales y sus restricciones técnicas.
Especificación de requerimientos:
R4 Crear usuarios A
R5 Consultar usuarios A
Modificar atributos de
R6 A
usuarios
26
R9 Modificar grupos de usuarios A
Generar reportes de
R13 A
resultados
Consultar información de
R14 M
tareas
Recibir notificaciones y
R16 M
alertas
Fuente: El autor.
27
1.Precondición: El usuario debe
autenticarse con nombre de
usuario y contraseña.
2.Descripción: El usuario ingresa la
información de las entradas en los
campos del formulario. Luego el
usuario da clic en el botón “Crear”.
R1 Crear tarea Alta
3.Pos -condición: El sistema
guarda en la base de datos la
información que se ingresó en el
formulario y muestra un mensaje
de éxito. Luego se visualiza en la
pantalla los datos que se
ingresaron.
1. Pre-Condición: El administrador
debe crear y asignar una tarea a
los usuarios de un grupo de
trabajo.
2. Descripción: El usuario
Consultar selecciona una tarea de las que se
R14 información de muestren en pantalla para ver la Alta
tareas (Móvil) información asociada.
3. Pos -Condición: El usuario
observa en pantalla el nombre, la
descripción, fecha de entrega,
estado y prioridad de la tarea que
se haya seleccionado
1. Pre-Condición: El administrador
debe crear y asignar una tarea a
los usuarios de un grupo de
trabajo.
2. Descripción: Por medio de la
Modificar acción Drag & Drop el usuario
R15 información de tomará la tarea deseada y Alta
tareas (Móvil) gráficamente la cambiará al estado
que corresponda.
3. Pos -Condición: El usuario
recibe un mensaje de éxito y la
información se actualiza en la base
de datos.
28
1.Precondición: El usuario
selecciona un nivel de
desagregación: Por usuario, por
grupo de usuarios, por proyecto,
por rango de fechas de entrega o
por prioridad.
Consultar 2.Descripción: El usuario
R2 información de selecciona una tarea dentro de una Alta
tareas (Web) lista generada.
3.Pos -condición: El sistema
muestra en pantalla nombre y
descripción , prioridad, fecha de
entrega, estado, responsable y
comentarios del responsable de la
tarea seleccionada.
1.Precondición: El usuario debe
seleccionar un usuario, proyecto o
un grupo de usuarios
Generar 2.Descripción: El usuario da clic en
R13 reportes de el botón "Generar" y el reporte se Alta
resultados visualiza en pantalla.
3.Pos -condición: Se visualiza
gráfica de líneas estadísticas y el
cuadro de salida.
1. Pre-Condición: El usuario o el
administrador deber hacer
modificaciones sobre las tareas
que pertenezcan al grupo de
trabajo o el administrador debe
Recibir
crear o modificar usuarios o grupos
R16 notificaciones y Alta
de usuarios.
alertas
2. Descripción: El usuario visualiza
en pantalla alertas y novedades
que se presentan en el desarrollo
de determinado proyecto.
3. Pos -Condición: No aplica.
1.Precondición: No aplica
2.Descripción: El usuario ingresa la
información de las entradas en los
campos del formulario. Luego el
usuario da clic en el botón “Crear”.
Crear grupos de 3.Pos -condición: El sistema
R8 Media
usuario guarda en la base de datos la
información que se ingresó en el
formulario y muestra un mensaje
de éxito. Luego se visualiza en la
pantalla los datos que se
ingresaron.
29
1.Precondición: El usuario
selecciona un nivel de
desagregación: Por grupo de
usuarios o por coincidencias de
búsqueda.
2.Descripción: El usuario
selecciona una opción dentro de
Consultar
R5 una lista que se genera a partir de Media
usuarios
la búsqueda.
3.Pos -condición: El sistema
muestra en pantalla el nombre ,
nickname , correo electrónico y dos
campos para contraseña y
confirmación de contraseña
(Cambio) .
1.Precondición: El usuario debe
realizar una consulta y seleccionar
una tarea.
2.Descripción: El usuario ingresa
Modificar los cambios deseados sobre la
R3 atributos de información actual de determinada Media
tareas tarea
3.Pos -condición: El sistema
guarda los cambios en la base de
datos y muestra un mensaje de
éxito.
1.Precondición: El usuario debe
realizar una consulta y seleccionar
un usuario.
2.Descripción: El usuario ingresa
Modificar los cambios deseados sobre la
R6 atributos de información actual de determinado Media
usuarios usuario.
3.Pos -condición: El sistema
guarda los cambios en la base de
datos y muestra un mensaje de
éxito.
1.Precondición: El usuario digita en
un campo de texto para encontrar
coincidencias en la base de datos
según lo ingresado.
Consultar 2.Descripción: El usuario seleciona
R7 grupos de una opción dentro de una lista que Media
usuarios se genera a partir de la búsqueda.
3.Pos -condición: El sistema
muestra en pantalla la información
del grupo seleccionado, así como
un listado de todos los usuarios
30
asociados a el.
1.Precondición: No aplica
2.Descripción: El usuario ingresa la
información de las entradas en los
campos del formulario. Luego el
usuario da clic en el botón “Crear”.
3.Pos -condición: El sistema
R10 Crear proyectos Media
guarda en la base de datos la
información que se ingresó en el
formulario y muestra un mensaje
de éxito. Luego se visualiza en la
pantalla los datos que se
ingresaron.
1.Precondición: El usuario debe
realizar una consulta y seleccionar
un grupo de usuarios.
2.Descripción: El usuario ingresa
Modificar los cambios deseados sobre la
R9 grupos de información actual de determinado Baja
usuario grupo de usuarios.
3.Pos -condición: El sistema
guarda los cambios en la base de
datos y muestra un mensaje de
éxito.
1.Precondición: El usuario digita en
un campo de texto para encontrar
coincidencias en la base de datos
según lo ingresado.
2.Descripción: El usuario
Consultar
R11 selecciona una opción dentro de Baja
proyectos
una lista que se genera a partir de
la búsqueda.
3.Pos -condición: El sistema
muestra en pantalla la información
del proyecto seleccionado.
31
1.Precondición: El usuario debe
realizar una consulta y seleccionar
un proyecto.
2.Descripción: El usuario ingresa
Modificar los cambios deseados sobre la
R12 atributos de información actual de determinado Baja
proyectos proyecto.
3.Pos -condición: El sistema
guarda los cambios en la base de
datos y muestra un mensaje de
éxito.
Fuente: El autor.
ID Requerimiento funcional
RNF1 Extensibilidad
RNF2 Seguridad
RNF3 Usabilidad
RNF4 Confiabilidad
Fuente: El autor.
32
Seguridad: Según Mario Barbacci, Mark H. Klein, Thomas A. Longstaff y
Charles B. Weinstock28, es un atributo de calidad de software el cual garantiza,
en este caso, que el código fuente del sistema y la información que se
almacene en la base de datos sea integra y segura, así como que el acceso al
sistema deba ser confidencial. Para esto se debe contar con:
28
Ibíd.
29
Ibíd.
30
Ibíd.
33
6. ARQUITECTURA DEL SISTEMA
Fuente: El autor.
31
Grady Booch, Jim Rumbaugh e Ibar Jacobson. El lenguaje unificado de modelado. s.l. :
Fernando Berzal, 2004.
34
6.2 DIAGRAMA ENTIDAD RELACIÓN
Fuente: El autor.
32
Storti, Guillermo, Campodónico, Gabriel y Rios, Gladys. Bases de datos: Modelo entidad
relación. 2007.
35
6.3 DIAGRAMA DE CLASES
Según Grady Booch33, un diagrama de clases sirve para visualizar las relaciones
entre las clases que involucran el sistema, las cuales pueden ser asociativas, de
herencia o de uso. A continuación se presenta el diagrama de clases del sistema,
para consultar la especificación de las clases, dirigirse a Anexo C. Especificación
de diagrama de clases.
Figura 7: Diagrama de clases
Fuente: El autor
33
Grady Booch, Jim Rumbaugh e Ibar Jacobson. El lenguaje unificado de modelado. s.l. :
Fernando Berzal, 2004.
36
7. CONCLUSIONES
37
BIBLIOGRAFÍA
Allen, David. Getting thigs done: the art of stress-free productivity. Nueva York :
Penguin books, 2003.
Hiranabe, Kenji. Visualizing Agile Projects with Kanban Boards. Tokio : Change
Vision, 2007.
IBM. Life cycle of human tasks. IBM WebSphere Process Server documentation.
Retrieved : s.n., 2009.
Kunesh, Andrew. Beyond the List: 8 Powerful Ways to Manage Your Tasks.
Schaumburg : Zapier, 2015.
Oza, Nilay, Fagerholm, Fabian y Münch, Jürgen. ¿How does Kanban impact
communication and collaboration in software engineering teams?. Helsinki :
University of Helsinki, 2013.
38
PC Magazine. Top Free Picks: Task Lists and To-Do Managers. New York : PC
Magazine, 2013.
Schiffer, Bernd. How to Track the Team‟s Mood with a Niko-niko Calendar.
Franconia : s.n., 2011.
Social Compare. Task Management Web Apps Social Compare. [En línea].
<http://socialcompare.com/es/comparison/tasks-management-todo-lists-web-
apps> [Citado el: 23 de 02 de 2015.]
The Standish Group. Chaos Manifesto. West Yarmouth : The Standish Group,
2013.
39
ANEXOS
Descripción
1.Precondición: El usuario debe autenticarse con nombre de usuario y contraseña.
2.Descripción: El usuario ingresa la información de las entradas en los campos del formulario.
Luego el usuario da clic en el botón “Crear”.
3.Pos -condición: El sistema guarda en la base de datos la información que se ingresó en el
formulario y muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
Manejo de situaciones anormales
1.Un campo del formulario que es obligatorio y está sin diligenciar, al momento de intentar
almacenar la información en la BD genera un mensaje de error.
2.Un dato ingresado en el formulario tiene errores de formato. (es incompatible con el tipo de
dato o excede el tamaño establecido). Por lo tanto, se visualizará un mensaje de error en
pantalla.
Criterios de aceptación
1.Si hay algún campo del formulario que es obligatorio y está sin diligenciar, al momento de
intentar almacenar la información en la base de datos, se visualizará en pantalla un mensaje de
error.
2.Si se ingresa un dato en el formulario que es incompatible con el tipo de dato asignado al
campo, se visualizará en pantalla un mensaje de error.
3.Si se ingresa un dato en el formulario que excede la longitud establecida para el campo, se
visualizará en pantalla un mensaje de error.
4.Si todos los campos del formulario están debidamente diligenciados, al momento de guardar
la información en la base de datos, se visualizará en pantalla un mensaje de éxito.
40
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R2 Consultar información de tareas
Tipo Requerimiento que lo Crítico?
utiliza
Necesario R3 Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
1.Nivel de desagregación Se visualiza nombre y descripción de la tarea, prioridad,
2. Tarea a consultar fecha de entrega, estado, responsable y comentarios del
responsable de una tarea
Descripción
1.Precondición: El usuario selecciona un nivel de desagregación: Por usuario, por grupo de
usuarios, por proyecto, por rango de fechas de entrega o por prioridad.
2.Descripción: El usuario seleciona una tarea dentro de una lista generada.
3.Pos -condición: El sistema muestra en pantalla nombre y descripción , prioridad, fecha de
entrega, estado, responsable y comentarios del responsable de la tarea seleccionada.
Criterios de aceptación
1.Si existen tareas que cumplan con los filtros que el usuario indique, se deben listar unica y
exclusivamente las tareas que cumplan con estas condiciones.
2. Si no se hace uso de ningun filtro y se da clic en el botón buscar, el sistema debe arrojar un
mensaje de error.
41
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R3 Modificar atributos de tareas
Tipo Requerimiento que lo Crítico?
utiliza
Necesario No
Prioridad de desarrollo Documentos de visualización asociados
Media
Entrada Salida
Nuevos valores de los atributos Se actualiza la información en la base de datos y se visualiza
a cambiar en pantalla la información actualizada y un mensaje de éxito.
Descripción
1.Precondición: El usuario debe realizar una consulta y seleccionar una tarea.
2.Descripción: El usuario ingresa los cambios deseados sobre la información actual de
determinada tarea
3.Pos -condición: El sistema guarda los cambios en la base de datos y muestra un mensaje de
éxito.
Criterios de aceptación
1.Si los cambios cumplen con las características de los atributos a cambiar, el sistema modifica
exitosamente el registro en la base de datos y muestra un mensaje de éxito.
2. Si no se hace ningun cambio, la actualización se ejecuta normalmente y el registro permanece
idéntico en la base de datos.
3. Si los cambios no cumplen con las características de los atributos a cambiar, el sistema no
realiza la actualización y muestra un mensaje de error.
42
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R4 Crear usuarios
Tipo Requerimiento que lo Crítico?
utiliza
Necesario R5, R6 Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
1. Nombre Se visualiza un mensaje de éxito y la información que se
2. Nickname almacena en la base de datos.
3. Grupo de usuarios asociado
4. Correo electrónico
5. Contraseña
6. Confirmación de contraseña
Descripción
1.Precondición: No aplica
2.Descripción: El usuario ingresa la información de las entradas en los campos del formulario.
Luego el usuario da clic en el botón “Crear”.
3.Pos -condición: El sistema guarda en la base de datos la información que se ingresó en el
formulario y muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
Criterios de aceptación
1.Si hay algún campo del formulario que es obligatorio y está sin diligenciar, al momento de
intentar almacenar la información en la base de datos, se visualizará en pantalla un mensaje de
error.
2.Si se ingresa un dato en el formulario que es incompatible con el tipo de dato asignado al
campo, se visualizará en pantalla un mensaje de error.
3.Si se ingresa un dato en el formulario que excede la longitud establecida para el campo, se
visualizará en pantalla un mensaje de error.
4.Si todos los campos del formulario están debidamente diligenciados, al momento de guardar la
información en la base de datos, se visualizará en pantalla un mensaje de éxito.
43
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R5 Consultar usuarios
Tipo Requerimiento que lo Crítico?
utiliza
Necesario R6 Si
Prioridad de desarrollo Documentos de visualización asociados
Media
Entrada Salida
1. Nivel de desagregación Se visualiza la información asociada al usuario que se haya
2. Usuario a consultar seleccionado en la lista.
Descripción
1.Precondición: El usuario selecciona un nivel de desagregación: Por grupo de usuarios o por
coincidencias de búsqueda.
2.Descripción: El usuario seleciona una opción dentro de una lista que se genera a partir de la
búsqueda.
3.Pos -condición: El sistema muestra en pantalla el nombre , nickname , correo electrónico y dos
campos para contraseña y confirmación de contraseña (Cambio) .
Criterios de aceptación
1.Si existen usuarios que cumplan con las condiciones que se indiquen, se deben listar unica y
exclusivamente los que cumplan con estas condiciones.
2. Si no se hace uso de ningun filtro o no se ingresa texto en el campo de búsqueda y se da clic
en "Buscar" el sistema debe arrojar un mensaje de error
44
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R6 Modificar atributos de usuarios
Descripción
1.Precondición: El usuario debe realizar una consulta y seleccionar un usuario.
2.Descripción: El usuario ingresa los cambios deseados sobre la información actual de
determinado usuario.
3.Pos -condición: El sistema guarda los cambios en la base de datos y muestra un mensaje de
éxito.
Criterios de aceptación
1.Si los cambios cumplen con las características de los atributos a cambiar , el sistema modifica
exitosamente el registro en la base de datos y muestra un mensaje de éxito.
2. Si no se hace ningun cambio, la actualización se ejecuta normalmente y el registro permanece
idéntico en la base de datos.
3. Si los cambios no cumplen con las características de los atributos a cambiar, el sistema no
realiza la actualización y muestra un mensaje de error.
4. Si existe cambio de contraseña, el sistema solo actualizará la contraseña si y solo si lo digitado
en el campo de contraseña y cambio de contraseña es totalmente idéntico.
45
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R7 Consultar grupos de usuarios
Descripción
1.Precondición: El usuario digita en un campo de texto para encontrar coincidencias en la base
de datos según lo ingresado.
2.Descripción: El usuario seleciona una opción dentro de una lista que se genera a partir de la
búsqueda.
3.Pos -condición: El sistema muestra en pantalla la información del grupo seleccionado, así
como un listado de todos los usuarios asociados a el.
Criterios de aceptación
1.Si existen grupos de usuarios que cumplan con las condiciones que se indiquen, se deben
listar unica y exclusivamente los que cumplan con estas condiciones.
2. Si no se ingresa texto en el campo de búsqueda y se da clic en "Buscar" el sistema debe
arrojar un mensaje de error.
46
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R8 Crear grupos de usuarios
Media
Entrada Salida
1. Nombre del grupo Se visualiza un mensaje de éxito y la información que se
2. Descripción almacena en la base de datos.
3. Usuarios asociados (Opcional)
Descripción
1.Precondición: No aplica
2.Descripción: El usuario ingresa la información de las entradas en los campos del formulario.
Luego el usuario da clic en el botón “Crear”.
3.Pos -condición: El sistema guarda en la base de datos la información que se ingresó en el
formulario y muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
Criterios de aceptación
1.Si hay algún campo del formulario que es obligatorio y está sin diligenciar, al momento de
intentar almacenar la información en la base de datos, se visualizará en pantalla un mensaje de
error.
2.Si se ingresa un dato en el formulario que es incompatible con el tipo de dato asignado al
campo, se visualizará en pantalla un mensaje de error.
3.Si se ingresa un dato en el formulario que excede la longitud establecida para el campo, se
visualizará en pantalla un mensaje de error.
4.Si todos los campos del formulario están debidamente diligenciados, al momento de guardar la
información en la base de datos, se visualizará en pantalla un mensaje de éxito.
47
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R9 Modificar grupos de usuarios
Baja
Entrada Salida
1. Información de campos a Se actualiza la información en la base de datos y se visualiza
modificar en pantalla la información actualizada y un mensaje de éxito.
Descripción
1.Precondición: El usuario debe realizar una consulta y seleccionar un grupo de usuarios.
2.Descripción: El usuario ingresa los cambios deseados sobre la información actual de
determinado grupo de usuarios.
3.Pos -condición: El sistema guarda los cambios en la base de datos y muestra un mensaje de
éxito.
1. Si los cambios ingresados no cumplen con los requisitos del campo (longitud, tipo, sin
caracteres especiales) se debe informar al usuario sobre el posible error cometido.
Criterios de aceptación
1.Si los cambios cumplen con las características de los atributos a cambiar , el sistema modifica
exitosamente el registro en la base de datos y muestra un mensaje de éxito.
2. Si no se hace ningun cambio, la actualización se ejecuta normalmente y el registro permanece
idéntico en la base de datos.
3. Si los cambios no cumplen con las características de los atributos a cambiar, el sistema no
realiza la actualización y muestra un mensaje de error.
48
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R10 Crear proyectos
Tipo Requerimiento que lo Crítico?
utiliza
Necesario Si
Prioridad de desarrollo Documentos de visualización asociados
Media
Entrada Salida
1. Nombre del proyecto Se visualiza un mensaje de éxito y la información que se
2. Descripción almacena en la base de datos.
3. Fecha de inicio
4. Fecha de fin
Descripción
1.Precondición: No aplica
2.Descripción: El usuario ingresa la información de las entradas en los campos del formulario.
Luego el usuario da clic en el botón “Crear”.
3.Pos -condición: El sistema guarda en la base de datos la información que se ingresó en el
formulario y muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
Criterios de aceptación
1.Un campo del formulario que es obligatorio y está sin diligenciar, al momento de intentar
almacenar la información en la BD genera un mensaje de error.
2.Un dato ingresado en el formulario tiene errores de formato. (es incompatible con el tipo de
dato o excede el tamaño establecido). Por lo tanto, se visualizará un mensaje de error en
pantalla.
49
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R11 Consultar proyectos
Tipo Requerimiento que lo Crítico?
utiliza
Necesario R12 Si
Prioridad de desarrollo Documentos de visualización asociados
Baja
Entrada Salida
1. Texto para coincidencias de El sistema muestra en pantalla la información del proyecto
búsqueda seleccionado.
Descripción
1.Precondición: El usuario digita en un campo de texto para encontrar coincidencias en la base
de datos según lo ingresado.
2.Descripción: El usuario seleciona una opción dentro de una lista que se genera a partir de la
búsqueda.
3.Pos -condición: El sistema muestra en pantalla la información del proyecto seleccionado.
1. Si el usuario ingresa credenciales que no existen en la base de datos o no tiene los permisos
suficientes, el sistema arroja un mensaje de alerta y no permite el acceso al sistema
2. Si el usuario ingresa credenciales con espacios, vacíos o caracteres especiales, el sistema
denegará el acceso.
Criterios de aceptación
1.Si existen proyectos que cumplan con las condiciones que se indiquen, se deben listar unica y
exclusivamente los que cumplan con estas condiciones.
2. Si no se ingresa texto en el campo de búsqueda y se da clic en "Buscar" el sistema debe
arrojar un mensaje de error.
50
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R12 Modificar atributos de proyectos
Tipo Requerimiento que lo Crítico?
utiliza
Deseable No
Prioridad de desarrollo Documentos de visualización asociados
Bajo
Entrada Salida
1. Información de campos a Se actualiza la información en la base de datos y se
modificar visualiza en pantalla la información actualizada y un mensaje
de éxito.
Descripción
1.Precondición: El usuario debe realizar una consulta y seleccionar un proyecto.
2.Descripción: El usuario ingresa los cambios deseados sobre la información actual de
determinado proyecto.
3.Pos -condición: El sistema guarda los cambios en la base de datos y muestra un mensaje de
éxito.
Criterios de aceptación
1.Si los cambios cumplen con las características de los atributos a cambiar , el sistema modifica
exitosamente el registro en la base de datos y muestra un mensaje de éxito.
2. Si no se hace ningun cambio, la actualización se ejecuta normalmente y el registro permanece
idéntico en la base de datos.
3. Si los cambios no cumplen con las características de los atributos a cambiar, el sistema no
realiza la actualización y muestra un mensaje de error.
51
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R13 Generar reportes de resultados
Tipo Requerimiento que lo Crítico?
utiliza
Necesario Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
1. Usuario o proyecto o grupo de Se visualiza una gráfica de lineas estadística en donde se
usuarios compara las tareas realizadas VS. Las tareas que se
realizaron semanalmente, además de un cuadro de salida
donde se muestra:
Cantidad de tareas asignadas
Cantidad de tareas realizadas.
Cantidad de tareas realizandose.
Cantidad de tareas por realizar
Lista de tareas asignadas
Criterios de aceptación
1. Se selecciona un usuario, proyecto o grupos de usuarios y el sistema debe generar la gráfica
estadística y el cuadro de salida exclusivamente con los datos que pertenezcan a la opción que
el usuario elija.
2. Si el usuario, proyecto o grupos de usuarios no tienen tareas asignadas aún, a la hora de
generar el reporte el sistema debe arrojar un mensaje de alerta
52
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R14 Consultar información de tareas
Tipo Requerimiento que lo utiliza Crítico?
Necesario R15 Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
1. Tarea a consultar Según la tarea que se seleccione, se observará el nombre de la
tarea, la descripción, fecha de entrega, estado y prioridad
Descripción
1. Pre-Condición: El administrador debe crear y asignar una tarea a los usuarios de un grupo de
trabajo.
2. Descripción: El usuario selecciona una tarea de las que se muestren en pantalla para ver la
información asociada.
3. Pos -Condición: El usuario observa en pantalla el nombre, la descripción, fecha de entrega,
estado y prioridad de la tarea que se haya seleccionado
Manejo de situaciones anormales
1. Si el usuario no tiene tareas asignadas, podrá consultar unica y exclusivamente las tareas de
su grupo de usuarios.
2. Si ningun miembro del equipo de trabajo tiene tareas, el módulo de consultas no se habilitará
para el usuario y se mostrará un mensaje que informe al respecto.
Criterios de aceptación
1.El sistema mostrará única y exclusivamente la información asociada correcta de la tarea
seleccionada, según lo almacenado en la base de datos.
2. A la hora de consultar solo se muestran las tareas que esten asignadas al grupo de trabajo o al
usuario.
53
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R15 Modificar estados de tareas
Tipo Requerimiento que lo utiliza Crítico?
Necesario Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
1. Tarea a modificar Según la tarea que se elija, el estado de la tarea a cambia
(Posibles estados: Realizada, por realizar, realizandose,
suspendida)
Descripción
1. Pre-Condición: El administrador debe crear y asignar una tarea a los usuarios de un grupo de
trabajo.
2. Descripción: Por medio de la acción Drag & Drop el usuario tomará la tarea deseada y
graficamente la camibiara al estado que corresponda.
3. Pos -Condición: El usuario recibe un mensaje de éxito y la información se actualiza en la base
de datos.
Manejo de situaciones anormales
1. Si el usuario no tiene tareas asignadas la visualización de las tareas para cambio de estado
no estará habilitada.
Criterios de aceptación
1.El sistema cambiará el atributo de la tarea en la base de datos cada vez que el usuario haga
un cambio de estado (Drag & Drop).
2. El usuario no podrá cambiar de estado tareas que no esten asociadas directamente a el, es
decir, así pueda visualizar las tareas del grupo de usuarios, este no podrá modificarlas.
54
ESPECIFICACIÓN DE REQUERIMIENTOS
Identificador: Nombre:
R16 Recibir notificaciones y alertas
Tipo Requerimiento que lo utiliza Crítico?
Necesario Si
Prioridad de desarrollo Documentos de visualización asociados
Alta
Entrada Salida
No aplica En la pantalla principal de la aplicación, se informará al usuario
sobre:
Cambios de estado realizados por todo aquel que pertenezca al
usuario y a su grupo de usuarios.
Tareas nuevas asignadas o reasingadas al usuario o a grupos de
usuarios por el administrador.
Tareas que tengan fecha de entrega próxima y no se hayan
realizado aún.
Descripción
1. Pre-Condición: El usuario o el administrador deber hacer modificaciones sobre las tareas que
pertenezcan al grupo de trabajo o el administrador debe crear o modificar usuarios o grupos de
usuarios.
2. Descripción: El usuario visualiza en pantalla alertas y novedades que se presentan en el
desarrollo de determinado proyecto.
3. Pos -Condición: No aplica.
Criterios de aceptación
1.El sistema mostrará única y exclusivamente las novedades y alertas que existan en la base de
datos y que esten entre un rango de fechas del día actual y dos días atrás.
55
Anexo B: Diagramación y especificación de casos de uso
Caso de uso UC-001: Crear tareas:
Sistema
7 Guarda la información en la base de datos
Manejo de excepciones 1.Un campo del formulario que es obligatorio y está sin diligenciar, al momento de
intentar almacenar la información en la BD genera un mensaje de error.
2.Un dato ingresado en el formulario tiene errores de formato. (es incompatible con el
tipo de dato o excede el tamaño establecido). Por lo tanto, se visualizará un mensaje de
error en pantalla.
Postcondición El sistema guarda en la base de datos la información que se ingresó en el formulario y
muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
Fuente: El autor
56
Caso de uso UC-002: Consultar tareas
Manejo de excepciones 1. Si no existen tareas con las condiciones que solicita el usuario en la base de datos , al
dar clic en el botón “Buscar” se mostrará una pantalla sin información y un mensaje que
informe al respecto.
57
Caso de uso UC-003: Modificar tareas
4 Sistema
Manejo de excepciones 1. Si los cambios ingresados no cumplen con los requisitos del campo (longitud, tipo, sin
caracteres especiales) se debe informar al usuario sobre el posible error cometido.
58
Caso de uso UC-004: Crear usuarios.
59
Caso de uso UC-005: Consultar usuarios.
Manejo de excepciones 1. Si no existen tareas con las condiciones que solicita el usuario en la base de datos , al
dar clic en el botón “Buscar” se mostrará una pantalla sin información y un mensaje que
informe al respecto.
Postcondición El sistema muestra en pantalla el nombre , nickname , correo electrónico y dos campos
para contraseña y confirmación de contraseña (Cambio) .
60
Caso de uso UC-006: Modificar usuarios
Manejo de excepciones 1. En caso de desear un cambio de contraseña, se deberán llenar dos campos de
contraseña y confirmación de contraseña con el fin de evitar inconsistencias.
2. Si los cambios ingresados no cumplen con los requisitos del campo (longitud, tipo, sin
caracteres especiales) se debe informar al usuario sobre el posible error cometido.
Postcondición La información modificada del usuario seleccionado se guarda con éxito en la base de
datos.
61
Caso de uso UC-007: Consultar grupos de usuarios
62
Caso de uso UC-008: Crear grupos de usuarios
Manejo de excepciones 1. Si los cambios ingresados no cumplen con los requisitos del campo (longitud, tipo, sin
caracteres especiales) se debe informar al usuario sobre el posible error cometido.
Postcondición El sistema guarda los cambios en la base de datos y muestra un mensaje de éxito.
63
Caso de uso UC-009: Modificar grupos de usuarios
Manejo de excepciones 1. Si los cambios ingresados no cumplen con los requisitos del campo (longitud, tipo, sin
caracteres especiales) se debe informar al usuario sobre el posible error cometido.
Postcondición La información modificada del grupo de usuarios seleccionado se guarda con éxito en la
base de datos.
64
Caso de uso UC-010: Crear proyectos
Precondición
Flujo de eventos Paso Ejecutor Acción
Hace clic en la pestaña "Proyectos"
1 Administrador
6 Administrador
7 Sistema Guarda la información en la base de datos
Manejo de excepciones 1.Un campo del formulario que es obligatorio y está sin diligenciar, al momento de
intentar almacenar la información en la BD genera un mensaje de error.
2.Un dato ingresado en el formulario tiene errores de formato. (es incompatible con el
tipo de dato o excede el tamaño establecido). Por lo tanto, se visualizará un mensaje de
error en pantalla.
Postcondición El sistema guarda en la base de datos la información que se ingresó en el formulario y
muestra un mensaje de éxito. Luego se visualiza en la pantalla los datos que se
ingresaron.
65
Caso de uso UC-011: Consultar proyectos
66
Caso de uso UC-012: Modificar proyectos
Objetivo
El usuario debe estar autenticado en el sistema, realizar una consulta y seleccionar un
Precondición proyecto.
Flujo de eventos Paso Ejecutor Acción
Consulta un tarea de acuerdo al flujo de
Administrador eventos del caso de uso UC-011 (Consultar
1 proyectos)
Edita la información del usuario que el
sistema muestra en los campos que se
Administrador mencionan en el caso de uso UC-010 (Crear
2 proyectos)
67
Caso de uso UC-013: Generar reportes de resultados
Manejo de excepciones 1. Si no existen usuarios, proyectos o grupos de usuarios en la base de datos, el sistema
no permitirá el ingreso al módulo de reportes.
Postcondición Muestra en pantalla gráfica de lineas estadísticas y cuadros de salida.
68
Caso de uso UC-014: Consultar tareas (Móvil)
69
Caso de uso UC-015: Modificar tareas (Móvil)
4 Sistema
Manejo de excepciones
1. Si el usuario no tiene tareas asignadas la visualización de las tareas para cambio
de estado no estará habilitada.
70
Caso de uso UC-016: Recibir notificaciones
71
Anexo C. Especificación de diagrama de componentes.
Requerimientos Descripción
Componente Interfaz
asociados
Este componente es el
encargado de presentar
al usuario visualmente, la
Interfaz de interfaz gráfica del
- R1- R13, RNF3
administración módulo de
administración que
funciona utilizando
arquitectura web.
Este componente es el
encargado de presentar
Interfaz de R14 – R16, al usuario visualmente, la
-
responsable RNF3 interfaz gráfica del
módulo que manejará
que bajo ambiente móvil.
Es el componente
encargado de presentar
visualmente gráficas
Reportes de
I_Reportes R13, RNF3 estadísticas y cuadros de
resultados
salida, según usuarios,
proyectos o grupos de
usuarios.
Componente encargado
de gestionar la
autenticación de
Control de usuarios a la hora de
ICaccesos RNF2 acceder a la aplicación
accesos
ya sea de administrador
o de responsable.
72
Requerimientos Descripción
Componente Interfaz
asociados
Componente encargado
de procesar la
información relacionada
con los usuarios que, si
se realiza una consulta,
Gestión de se traen desde la base
IGusuarios R4 - R6, RNF2
usuarios datos para
posteriormente pasarla a
la interfaz gráfica de
usuario o viceversa si se
trata de la creación o una
modificación.
Componente encargado
de procesar la
información relacionada
con las tareas que, si se
realiza una consulta, se
Gestión de R1 – R3 , R14, traen desde la base
IGtareas
tareas R15, RNF2 datos para
posteriormente pasarla a
la interfaz gráfica de
usuario o viceversa si se
trata de la creación o una
modificación.
Componente encargado
de procesar la
información relacionada
con los proyectos y los
Gestión PGU I_GPGU R7 – R12, RNF2 grupos de usuarios que,
si se realiza una
consulta, se traen desde
la base datos para
posteriormente pasarla a
la interfaz gráfica de
73
Requerimientos Descripción
Componente Interfaz
asociados
usuario o viceversa si se
trata de la creación o una
modificación.
Componente encargado
de realizar las
operaciones de creación,
modificación y consultas
Persistencia I_Persistencia R1 – R16, RNF2
en la base de datos
según lo solicitado por el
administrador o el
responsable.
74
Anexo D. Especificación de diagrama de clases.
Nombre de la clase tareas
Atributos
Nombre Tipo
id int
nombre string
descripcion string
prioridad int
responsable int
proyecto int
fecha_entrega Date
estado int
fecha_asignacion Date
Métodos
Nombre Descripción Parametros Descripción del parametro
id Identificador único de la tarea
nombre Nombre de la tarea
descripcion Descripción de la tarea
prioridad Prioridad de la tarea
insertar_tarea(nombre, descripcion, Método encargado de recibir los
Identificador único del
prioridad, responsable, proyecto, parámetros para la creación en la
Responsable a cargo de la
fecha_entrega) base de datos de una tarea nueva
responsable tarea
Identificador único del proyecto
proyecto al que pertenece la tarea
fecha_entrega Fecha de entrega de la tarea
Método encargado de traer todas las
-- --
consultar_todas_tareas() tareas existentes en la base de datos
Método encargado de traer todas las Identificador único del usuario
tareas que tenga a cargo determinado que se quiera consultar las
consultar_tareas_usuario(id_usuario) usuario id_usuario tareas asociadas
Método encargado de traer todas las Identificador único del proyecto
tareas que esten asociadas a que se quiera consultar las
consultar_tareas_proyecto(id_proyecto) determinado proyecto. id_proyecto tareas asociadas
Método encargado de traer todas las Identificador único del grupo de
tareas que tenga a cargo determinado usuarios que se quiera consultar
consultar_tareas_gusuarios(id_gusuarios) grupo de usuarios. id_gusuarios las tareas asociadas
Método encargado de traer toda la Identificador único de la tarea a
consultar_tarea(id_tarea) información de determinada tarea id_tarea consultar
nombre Nombre de la tarea
prioridad Prioridad de la tarea
Método encargado de construir una Identificador único del
buscar_filtro_tarea(nombre, prioridad, consulta SQL de acuerdo a los filtros Responsable a cargo de la
responsable, proyecto, grupo, fecha) de búsqueda de los cuales haga uso responsable tarea
el usuario desde la interfaz gráfica Identificador único del proyecto
proyecto al que pertenece la tarea
fecha Fecha de entrega de la tarea
id Identificador único de la tarea
75
Nombre de la clase usuarios
Atributos
Nombre Tipo
id int
nombre string
apellido string
usuario string
password string
g_usuarios int
correo string
Métodos
76
Nombre de la clase proyectos
Atributos
Nombre Tipo
id int
nombre string
descripcion string
fecha_inicio Date
fecha_fin Date
Métodos
Nombre Descripción Parametros Descripción del parametro
77
Nombre de la clase proyectos
Atributos
Nombre Tipo
id int
nombre string
descripcion string
fecha_inicio Date
fecha_fin Date
Métodos
Nombre Descripción Parametros Descripción del parametro
Nombre del grupo de usuarios a
Método encargado de recibir los
nombre insertar
insertar_grupo(nombre, descripcion) parametros de un grupo de usuarios
Descripción del grupo de usuarios
nuevo y crearlo en la base de datos
descripcion a insertar
Método encargado de consultar y traer
todos los grupos de usuarios -- --
consultar_todos_grupos() existentes en la base de datos.
Método encargado de traer toda la
información de determinado grupo de Identificador único del grupo de
consultar_grupo(id_grupo) usuarios id_grupo usuarios a consultar
Identificador único del grupo de
Método encargado de recibir los id usuarios a modificar
parametros de determinado grupo de Nombre nuevo del grupo de
actualizar_grupo(id, nombre, descripcion)
usuarios y actualizar la información en la nombre usuarios
base de datos. Descripción nueva del grupo de
descripcion usuarios
Método encargado de construir una
consulta SQL de acuerdo a los filtros
de búsqueda de los cuales haga uso Texto para coincidencias de
buscar_filtro_grupo(nombre) el usuario desde la interfaz gráfica nombre búsqueda
78
Anexo E. Diccionario de datos.
Nombre de la tabla tareas
Almacena toda la información de las tareas creadas por el administrador y modificadas por los
Descripción reponsables
Columnas
Columna Tamaño Tipo de dato Descripción Valores permitidos
Almacena el identificador Cualquier número entero positivo,
id 11 Int
único de cada tarea no mayor de 11 cifras
Cualquier combinación de
Almacena el nombre de la
caracteres con una longitud menor
tarea creada
nombre 100 Varchar o igual a 100
Cualquier combinación de
Almacena una descripción
caracteres con una longitud menor
asociada a las tareas creadas
descripcion 500 Varchar o igual a 500
Guarda la prioridad de la
tarea creada (baja, media o 1 (baja), 2(media) ó 3 (alta)
prioridad 1 Int alta)
Guarda el identificador del
Cualquier número entero positivo,
usuario responsable de
no mayor de 11 cifras
responsable 11 Int realizar la tarea
Almacena el identificador
Cualquier número entero positivo,
único del proyecto al cual esta
no mayor de 11 cifras
proyecto 11 Int asociada la tarea
Almacena la fecha en la cual
la tarea debe ser terminada y
fecha_entrega -- Date entegada Cualquier fecha
Almacena el estado de la
1 (sin iniciar), 2(realizandose) ó 3
tarea (sin iniciar, realizandose
(Terminada)
estado 1 Int o terminada)
Guarda la fecha en la cual la
tarea fue asignada a un
fecha_asignacion -- Timestamp responsable Cualquier fecha y hora
Llave primaria id
Llaves foráneas
Columna Tabla de referencia Columna de referencia
responsable usuarios id
proyecto proyectos id
79
Nombre de la tabla usuarios
Descripción Almacena toda la información de los usuarios del sistema
Columnas
Columna Tamaño Tipo de dato Descripción Valores permitidos
Almacena el identificador
Cualquier número entero positivo,
id 11 Int único de cada grupo de
no mayor de 11 cifras
usuarios
Cualquier combinación de
Almacena el nombre del
caracteres con una longitud menor
usuario
nombre 50 Varchar o igual a 50
Cualquier combinación de
Almacena los apellidos del
caracteres con una longitud menor
usuario.
apellido 50 Varchar o igual a 50
Cualquier combinación de
Guarda el nickname de
caracteres con una longitud menor
acceso del usuario.
usuario 20 Varchar o igual a 20
Almacena la contraseña Cualquier combinación de
(encriptada bajo algoritmo caracteres con una longitud menor
password 20 Varchar md5) del usuario o igual a 20
Almacena el identificador
Cualquier número entero positivo,
único del grupo de usuarios al
no mayor de 11 cifras
g_usuarios 11 Int que pertenece el usuarios
Alamacena el correo Cualquier combinación de
electronico asociado al caracteres con una longitud menor
correo 20 Varchar usuario o igual a 20
Llave primaria id
Llaves foráneas
Columna Tabla de referencia Columna de referencia
g_usuarios grupos_usuarios id
80
Nombre de la tabla proyectos
Descripción Almacena toda la información de los proyectos del sistema
Columnas
Columna Tamaño Tipo de dato Descripción Valores permitidos
Almacena el identificador Cualquier número entero positivo,
id 11 Int
único de cada proyecto no mayor de 11 cifras
Cualquier combinación de
Almacena el nombre del
caracteres con una longitud menor
proyecto
nombre 50 Varchar o igual a 50
Cualquier combinación de
Almacena una descripción del
caracteres con una longitud menor
proyecto
descripcion 300 Varchar o igual a 300
Guarda la fecha de inicio del
fecha_ini -- Date proyecto. Cualquier fecha
Guarda la fecha de fin del
fecha_fin -- Date proyecto. Cualquier fecha
Llave primaria id
81
Anexo F. Plan de pruebas de software (STP).
1. Objetivos
2. Justificación
3. Estrategias de pruebas
34
Sommerville, Ian. Ingeniería del software. Madrid : Pearson Educación, 2005.
82
4. Alcance
83
Anexo G. Resultados de ejecución de plan de pruebas.
Para consultar el requerimiento funcional asociado, por favor consultar la
especificación de requerimientos según el identificador señalado en la tabla.
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
El usuario creado Si se cumplen todas las
debe almacenarse condiciones para que el usuario
Si No
en la base de sea correcto, se almacena en la
datos. base de datos correctamente.
Funciona correctamente. En el
campo de correo electrónico no
No debe permitir permite el ingreso de una
el ingreso de combinación que no tenga la
información con estructura de un correo
tipos de datos no electrónico correcto. En los otro
Si No
válidos para los campos, caracteres numéricos
campos (se debe son permitidos, pero caracteres
informar al especiales no; cuando existen no
usuario del error). se informa al usuario pero si se
eliminan de la cadena de texto
ingresada
Se debe exigir al Funciona correctamente, el
usuario todos los sistema no permite crear el
R4 Si No
campos como usuario si todos los campos no
obligatorios están diligenciados.
Si el usuario se
excede en el
Los campos no tenían límite de
número de
caracteres a digitar pero el
caracteres en
problema se solucionó. Al usuario
determinado
no se le informa cuando digita
campo el usuario Si Si
más caracteres de lo permitido,
no debe
sin embargo el campo no le
almacenarse y
permitirá escribir más de lo
debe arrojar un
permitido.
mensaje de alerta
al usuario.
El formulario se eliminaba si el
El formulario no
usuario cometía un error al enviar
debe borrarse si
Si No los datos, el problema fue
el usuario llegase
solucionado y funciona
a cometer un error
correctamente
84
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
La contraseña y la
Si las contraseña y confirmación
confirmación de
de contraseña digitadas no son
contraseña deben
exactamente iguales, el sistema
ser exactamente Si No
informa al respecto y no ingresa el
iguales para que
usuario a la base de datos.
el usuario pueda
Funciona correctamente.
ser creado
Los datos ingresados se
almacenan en la base de datos.
La tarea debe
Las tildes y acentos se estaban
almacenarse en la Si No
almacenando de manera
base de datos.
incorrecta pero el problema fue
solucionado
Todos los campos son
Se debe exigir al
obligatorios y se le informa al
usuario todos los
Si No usuario al respecto cuando algún
campos como
campo de envía vacío se envía
obligatorios
vacío.
Si el usuario se
R1 excede en el Los campos no tenían límite de
número de caracteres a digitar pero el
caracteres en problema se solucionó. Al usuario
determinado no se le informa cuando digita
Si Si
campo la tarea no más caracteres de lo permitido,
debe almacenarse sin embargo el campo no le
y debe arrojar un permitirá escribir más de lo
mensaje de alerta permitido.
al usuario.
El formulario se eliminaba si el
El formulario no usuario cometía un error al enviar
debe borrarse si Si No los datos, el problema fue
el usuario llegase solucionado y funciona
a cometer un error correctamente
85
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Desde la
aplicación móvil
se debe permitir
ver la siguiente
información de las Se visualiza la información
tareas asignadas: solicitada de las tareas asignadas
-Nombre de la Si No y la información corresponde a lo
tarea. que se almacena en la base de
-Descripción de la datos por el administrador.
tarea.
-Fecha de entrega
-Prioridad.
-Responsable.
R14 Las tareas son presentadas en
divisiones que la categorizan por
Las tareas deben estado (sin iniciar, realizando o
presentarse Si No terminadas). Deslizando la
según estado (Sin pantalla hacia los lados, se puede
iniciar, realizando, visualizar las tareas que están en
terminadas) los tres estados disponibles.
Las tareas que se
enlisten deben ser
únicamente las
del usuario
registrado y/o las
de su grupo de
usuarios asociado
Al realizar hold-on Funciona correctamente. Si se
en una tarea mantiene presionada la pantalla
enlistada, el en una tarea, este muestra los
usuario debe posibles estados a la que esta
visualizar los Si No tarea puede ser modificada y al
posibles cambios seleccionar uno de los estados el
de estado que estado de la tarea se modifica en
R15
puede realizar a la base de datos
esa tarea. automáticamente.
Cuando el usuario Funciona correctamente. Al
modifique el modificar cualquier tarea de
estado de una Si No estado, única y exclusivamente se
tarea, únicamente cambia el estado de la tarea que
el estado de la se seleccionó desde la aplicación.
86
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
tarea
seleccionada,
debe modificarse
en la base de
datos (1 para sin
iniciar, 2 para
realizando, 3 para
completas).
Todos los filtros
de búsqueda Se probaron todos los filtros de
establecidos en la búsqueda disponibles en esta
especificación de búsqueda, y arroja como
Si No
requerimientos, resultado la información que
deben ser coincide con los criterios de
totalmente búsqueda que indicó el usuario.
funcionales.
Se debe enlistar
únicamente las
Funciona correctamente,
tareas que
exclusivamente se trae la
cumplan con las
Si No información que cumpla con lo
condiciones que
que el usuario haya ingresado en
se establecieron
los filtros de búsqueda.
según los filtro de
R2
búsqueda.
Al seleccionar una
tarea, se debe Funciona correctamente, la
poder visualizar la información mostrada varía según
información Si No el usuario seleccionado y
asociada de esa corresponde a lo existente en la
tarea base de datos.
seleccionada
Se debe apreciar
Se realizan diferente cambios de
el cambio de
estado de diferentes tareas en
estado que
simultáneo con una revisión
realicen los Si No
desde la parte web, los cambios
responsables
son visualizados por ende
desde la
funciona correctamente.
aplicación móvil
87
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Según un usuario
seleccionado se
debe visualizar:
- Tabla con la
cantidad de tareas
por estado (sin
iniciar, realizando,
terminadas) para
Se visualiza lo mencionado
el usuario
correctamente: tabla con cantidad
seleccionado. Si No
de encuestas según estado y
-Gráfica de líneas
gráfica estadística
que presente la
cantidad de tareas
R13 asignadas Vs. la
cantidad de tareas
realizadas por
semana, para el
usuario
seleccionado
Se realizaron dos conteos
La información manuales con diferentes tareas y
presentada debe diferentes fechas dentro de
ser coherente en diferentes semanas del año, las
Si No
fechas y cifras concuerdan con lo arrojado
cantidades según en la gráfica estadística, por ende
lo almacenado en se deduce que funciona
la base de datos. correctamente
La aplicación
debe permitir
visualizar en la
Se realizaron pruebas en conjunto
sección de
con la aplicación web para
novedades la
realizar la asignación de tareas
siguiente
nuevas con fechas de entrega
información:
R16 Si No que estén próximas a cumplirse
-Las tareas
(24 horas). Las novedades son
asignadas (más
visualizadas en la sección
recientes) por el
correspondiente de la aplicación
administrador y su
móvil.
respectivo
responsable.
-En un rango de
88
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
24 horas, si hay
una tarea por
entregar y esta no
se ha terminado
se debe visualizar
una alerta con la
fecha de entrega
de dicha tarea
Las novedades
que se visualicen
deben ser única y
exclusivamente
del usuario
autenticado y de
su grupo de
usuarios asociado
Los datos ingresados se
El grupo de almacenan en la base de datos.
usuarios creado Las tildes y acentos se estaban
Si No
debe almacenarse almacenando de manera
en la base de incorrecta pero el problema fue
datos. solucionado
No debe permitir Los campos no tenían límite de
el ingreso de caracteres a digitar pero el
información con problema se solucionó. Al usuario
tipos de datos no no se le informa cuando digita
Si Si
válidos para los más caracteres de lo permitido,
campos (se debe sin embargo el campo no le
R8
informar al permitirá escribir más de lo
usuario del error). permitido.
Se debe exigir al
El nombre de grupo de usuario es
usuario solo el
el único campo obligatorio y se le
nombre del grupo Si No
informa al usuario al respecto
de usuarios como
cuando este se envía vacío.
obligatorio
El formulario se eliminaba si el
El formulario no usuario cometía un error al enviar
debe borrarse si Si No los datos, el problema fue
el usuario llegase solucionado y funciona
a cometer un error correctamente
89
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Los únicos filtros de búsqueda
Todos los filtros son: por grupo de usuarios y por
de búsqueda coincidencia de búsqueda por
establecidos en la texto, ambos funcionan
especificación de Si No correctamente y traen
requerimientos, exclusivamente la información
deben ser que cumpla con los requisitos de
totalmente los usuarios indicados en los
funcionales. filtros de búsqueda.
Se debe enlistar
únicamente las
Funciona correctamente,
tareas que
R5 exclusivamente se trae la
cumplan con las
Si No información que cumpla con lo
condiciones que
que el usuario haya ingresado en
se establecieron
los filtros de búsqueda.
según los filtro de
búsqueda.
Al seleccionar una
usuario, se debe Funciona correctamente, la
poder visualizar la información mostrada varía según
información Si No el usuario seleccionado y
asociada de ese corresponde a lo existente en la
usuario base de datos.
seleccionada
Para actualizar
una tarea primero
Funciona correctamente, la
se debió realizar
actualización no puede realizarse
la consulta de Si No
sin antes haber consultado un
tareas haciendo
registro en específico
uso de los filtros
de búsqueda.
R3 La información
modificada debe
Funciona correctamente,
ser actualizada en
únicamente se actualiza la
la base de datos
Si No información que fue cambiada en
según la tarea
el registro donde el usuario lo
seleccionada en
solicito.
la consulta
realizada.
90
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Al realizar la
actualización de
determinado
atributo de una
Las validaciones de datos y
tarea, este debe
longitud de los campos son las
cumplir con las
Si No mismas usadas en el código
mismas
fuente de la creación de registros,
condiciones de
por ende funciona correctamente
longitud y
caracteres que se
exigía a la hora de
crear la tarea
Para actualizar un
usuario primero
Funciona correctamente, la
se debió realizar
actualización no puede realizarse
la consulta de Si No
sin antes haber consultado un
usuarios haciendo
registro en específico
uso de los filtros
de búsqueda.
La información
modificada debe
Funciona correctamente,
ser actualizada en
únicamente se actualiza la
la base de datos
Si No información que fue cambiada en
según el usuario
el registro donde el usuario lo
seleccionado en
solicito.
R6 la consulta
realizada.
Al realizar la
actualización de
determinado
atributo de un
Las validaciones de datos y
usuario, este debe
longitud de los campos son las
cumplir con las
Si No mismas usadas en el código
mismas
fuente de la creación de registros,
condiciones de
por ende funciona correctamente
longitud y
caracteres que se
exigía a la hora de
crear el usuario
91
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Si se desea
modificar la
contraseña, se
Funciona correctamente, la
debe exigir una
actualización de contraseña se
confirmación de
Si No realiza si y solo si la contraseña y
contraseña, si no
la confirmación son totalmente
son iguales, la
iguales
actualización del
usuario no debe
ser permitida
Todos los filtros
de búsqueda
establecidos en la El único filtro de búsqueda es el
especificación de campo para búsquedas por
Si No
requerimientos, coincidencias de texto y funciona
deben ser correctamente
totalmente
funcionales.
Se debe enlistar
únicamente los
Se cambió manualmente en la
grupos de
base de datos el administrador
usuarios que
asociado a diferentes grupos de
R7 cumplan con las Si No
usuarios creados antes y después
condiciones que
de realizar una misma consulta.
se establecieron
Funciona correctamente
según los filtro de
búsqueda.
Al seleccionar un
grupo de
Funciona correctamente, la
usuarios, se debe
información mostrada varía según
poder visualizar la
Si No el grupo de usuarios seleccionado
información
y corresponde a lo existente en la
asociada de ese
base de datos.
grupo de usuarios
seleccionado
Los datos ingresados se
almacenan en la base de datos.
El proyecto Las tildes y acentos se estaban
R10 Si No
creado debe almacenando de manera
almacenarse en la incorrecta pero el problema fue
base de datos. solucionado
92
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Se debe exigir al
usuario solo el El nombre y fechas de inicio y fin
nombre y las del proyecto son los únicos
fechas de inicio y Si No campos obligatorios y se le
de fin del proyecto informa al usuario al respecto
como campos cuando este se envía vacío.
obligatorios
Si el usuario se
excede en el
Los campos no tenían límite de
número de
caracteres a digitar pero el
caracteres en
problema se solucionó. Al usuario
determinado
no se le informa cuando digita
campo, el grupo Si Si
más caracteres de lo permitido,
de usuarios no
sin embargo el campo no le
debe almacenarse
permitirá escribir más de lo
y debe arrojar un
permitido.
mensaje de alerta
al usuario.
El formulario se eliminaba si el
El formulario no usuario cometía un error al enviar
debe borrarse si Si No los datos, el problema fue
el usuario llegase solucionado y funciona
a cometer un error correctamente
La fecha de inicio
Funciona correctamente, cuando
del proyecto no
Si No existe esta inconsistencia se le
debe ser mayor a
informa al usuario
la fecha de fin.
Para actualizar un
grupo de usuarios
primero se debió Funciona correctamente, la
realizar la actualización no puede realizarse
Si No
consulta de sin antes haber consultado un
grupos, haciendo registro en específico
uso de los filtros
R9
de búsqueda.
La información
Funciona correctamente,
modificada debe
únicamente se actualiza la
ser actualizada en
Si No información que fue cambiada en
la base de datos
el registro donde el usuario lo
según el grupo de
solicito.
usuarios
93
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
seleccionado en
la consulta
realizada.
Al realizar la
actualización de
determinado
atributo de un
grupo de Las validaciones de datos y
usuarios, este longitud de los campos son las
debe cumplir con Si No mismas usadas en el código
las mismas fuente de la creación de registros,
condiciones de por ende funciona correctamente
longitud y
caracteres que se
exigía a la hora de
crear el grupo.
Todos los filtros
de búsqueda
establecidos en la El único filtro de búsqueda es el
especificación de campo para búsquedas por
Si No
requerimientos, coincidencias de texto y funciona
deben ser correctamente
totalmente
funcionales.
Se debe enlistar
únicamente los Se cambió manualmente en la
proyectos que base de datos el administrador
R11 cumplan con las asociado a diferentes proyectos
Si No
condiciones que creados antes y después de
se establecieron realizar una misma consulta.
según los filtro de Funciona correctamente
búsqueda.
Al seleccionar un
proyecto, se debe Funciona correctamente, la
poder visualizar la información mostrada varía según
información Si No el proyecto seleccionado y
asociada de ese corresponde a lo existente en la
proyecto base de datos.
seleccionado
94
Cumple
Requerimiento
¿Qué se prueba? ¿Cumple? parcialmente Resultados de la prueba
funcional
(condiciones)
Para actualizar un
proyecto primero
se debió realizar Funciona correctamente, la
la consulta de actualización no puede realizarse
Si No
proyectos, sin antes haber consultado un
haciendo uso de registro en específico
los filtros de
búsqueda.
La información
modificada debe
Funciona correctamente,
ser actualizada en
únicamente se actualiza la
la base de datos
Si No información que fue cambiada en
según el proyecto
el registro donde el usuario lo
seleccionado en
R12 solicito.
la consulta
realizada.
Al realizar la
actualización de
determinado
atributo de un
Las validaciones de datos y
proyecto, este
longitud de los campos son las
debe cumplir con
Si No mismas usadas en el código
las mismas
fuente de la creación de registros,
condiciones de
por ende funciona correctamente
longitud y
caracteres que se
exigía a la hora de
crear el proyecto.
95