0% encontró este documento útil (0 votos)
35 vistas286 páginas

Tomo

Cargado por

Menbreño Lopez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
35 vistas286 páginas

Tomo

Cargado por

Menbreño Lopez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD DE EL SALVADOR

FACULTAD DE INGENIERIA Y ARQUITECTURA

ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS

SISTEMA INFORMATICO PARA LA ADMINISTRACION DE


LOS PROCESOS INTERNOS DE LA UNIDAD DE
PLANIFICACION Y DESARROLLO INSTITUCIONAL Y EL
DEPARTAMENTO DE RECURSOS HUMANOS DE LA
DIRECCION GENERAL DE ESTADISTICAS Y CENSOS

PRESENTADO POR:

ROBERTO ERNESTO CASTRO DIAZ

KATHERINE STHEFANY CERNA MENDEZ

ELENA MARISOL GARCIA ABREGO

JOSSELYN PATRICIA SOLANO ZELAYA

PARA OPTAR AL TITULO DE:

INGENIERO(A) DE SISTEMAS INFORMATICOS

CIUDAD UNIVERSITARIA, FEBRERO DE 2021


UNIVERSIDAD DE EL SALVADOR

RECTOR:

MSC. ROGER ARMANDO ARIAS ALVARADO

SECRETARIO GENERAL:

ING. FRANCISCO ANTONIO ALARCON SANDOVAL

FACULTAD DE INGENIERIA Y ARQUITECTURA

DECANO:

DOCTOR EDGAR ARMANDO PEÑA FIGUEROA

SECRETARIO:

ING. JULIO ALBERTO PORTILLO

ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS

DIRECTOR:

ING. RUDY WILFREDO CHICAS VILLEGAS


UNIVERSIDAD DE EL SALVADOR
FACULTAD DE INGENIERIA Y ARQUITECTURA
ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS

Trabajo de Graduación previo a la opción al Grado de:

INGENIERO(A) DE SISTEMAS INFORMATICOS

Título :

SISTEMA INFORMATICO PARA LA ADMINISTRACION


DE LOS PROCESOS INTERNOS DE LA UNIDAD DE
PLANIFICACION Y DESARROLLO INSTITUCIONAL Y EL
DEPARTAMENTO DE RECURSOS HUMANOS DE LA
DIRECCION GENERAL DE ESTADISTICAS Y CENSOS
Presentado por:

ROBERTO ERNESTO CASTRO DIAZ

KATHERINE STHEFANY CERNA MENDEZ

ELENA MARISOL GARCIA ABREGO

JOSSELYN PATRICIA SOLANO ZELAYA

Trabajo de Graduación Aprobado por:

Docente Asesor:
ING. BLADIMIR DIAZ CAMPOS

San Salvador, febrero 2021


Trabajo de Graduación Aprobado por:

Docente Asesor:

ING. BLADIMIR DIAZ CAMPOS


AGRADECIMIENTOS

Gracias a mis padres.

Por los innumerables sacrificios que hicieron para darme esta oportunidad. Por su amor
incondicional e infinito. Por cada consejo, por cada castigo, por cada abrazo, por cada beso, por
todas sus noches de desvelo, y por cada tarde de cansancio. Por amarme incluso antes de haber
nacido. Gracias.

Gracias a mis abuelos.

Por darme los mejores padres que pude haber tenido. Por cada sorbete que me compraron, por cada
arroz en leche que me prepararon, por los “cuetes” que cada navidad reventábamos, por cada
historia que me contaron. Por amarme como a un hijo propio. Gracias.

Gracias a ambos.

Por nunca haber dudado de mí, y por darme tanto pero tanto amor. Gracias.

Roberto Ernesto Castro Díaz


Gracias a Dios y a la Virgen de Guadalupe que me dieron la sabiduría, me acompañaron, me
guiaron en cada uno de mis pasos, en los momentos difíciles me reconfortaron y me permitieron
culminar una de mis metas.

Gracias a mis padres Cesar Cerna y Martha Méndez por darme su apoyo incondicional, por
brindarme todo lo necesario, por siempre estar cuando los he necesitado, por comprenderme cuando
fallaba, animarme a nunca rendirme y especialmente por creer en mí siempre, sin ustedes no lo
habría logrado.

Gracias a mis familiares que siempre me apoyaron, que me dieron siempre sus palabras de apoyo
para no rendirme ante las adversidades, por sus consejos y por decir que soy un orgullo para ellos
y un ejemplo para los más pequeños de la familia.

Gracias a mis amigos y compañeros Roberto Castro, Fátima Guevara, Josselyn Solano, Edwin
Dimas y Kevin Chicas por siempre apoyarme, darme palabras de aliento, por compartir sus
conocimientos conmigo y tener paciencia para explicarme, por confiar en mi para trabajar los
proyectos de las diferentes materias, por siempre estar ahí en los momentos difíciles, pero también
por compartir conmigo momentos alegres porque los momentos más felices de mi tiempo en la
universidad los compartí con ustedes.

Gracias al docente asesor Ing. Bladimir Díaz por compartir sus conocimientos, por ser paciente
con nosotros, siempre tener tiempo para responder nuestras dudas y confiar en nosotros.

Gracias a los docentes que se dedicaron con mucha paciencia y dedicación a compartir sus
conocimientos y experiencias con nosotros para prepáranos para el mundo laboral y ser unos
profesionales competentes y éticos.

Katherine Sthefany Cerna Méndez


Le doy gracias a Dios por permitirme cumplir una meta más, por darme sabiduría y paciencia y
por poner en mi camino a personas que ayudaron en mi crecimiento profesional. A mi abuela Elva
García (Q.E.P.D.) mi ángel de la guarda, gracias por cuidarme y guiar mi camino, este triunfo
también te pertenece, gracias por todos tus consejos, regaños y por todo el cariño que me diste.
A mi papi Raúl García y mi mami Azucena Abrego, por todo el esfuerzo que han hecho para
apoyarme a alcanzar esta meta a pesar de todas las adversidades siempre me apoyaron y confiaron
en mí, gracias por su paciencia, por su amor incondicional y por siempre estar para mi cuando más
los necesite.
A mi hermana Ivonne por enseñarme a soñar en alto, por ser mi compañera de aventuras y por
compartir su sabiduría conmigo, por estar en los momentos de felicidad y también de tristeza y por
siempre animarme a seguir adelante.
A mis familiares en especial a mi prima (hermana) Liz gracias por estar para mi cuando necesitaba
una palabra de aliento, por creer en mí y por apoyarme en todo y mi tía Gloria (mi segunda mamá)
gracias por toda la ayuda que me brindo durante la carrera, por su cariño y todo su amor.
Al Ing. Dannier Galicia (amor mío) gracias por compartir tu conocimiento conmigo, por ayudarme
a resolver mis dudas, por apoyarme en los momentos difíciles, gracias por todo tu amor, por confiar
en mí y por siempre animarme a seguir adelante, por los cafés que compartimos en las tardes antes
de clases y por todos los lindos momentos que compartimos.
A mis amigos y compañeros que conocí durante la carrera gracias por todo su apoyo, por las
desveladas que pasamos juntos estudiando para un examen o terminando una tarea, gracias por
todas las experiencias que compartimos.
A nuestro Asesor Ing. Bladimir Diaz por apoyarnos en cada etapa del desarrollo de nuestro
proyecto, por sus recomendaciones, por la confianza y por el tiempo que nos brindó en cada
asesoría.
A mis compañeros del trabajo de graduación por todo el esfuerzo realizado para completar nuestro
proyecto con éxito, por la confianza y paciencia que me brindaron y los conocimientos y
experiencias compartidas.

Elena Marisol García Abrego


Gracias a mis padres Arturo Solano y Valentina Zelaya por creer en mí, por apoyarme
incondicionalmente, por motivarme a seguir a pesar de las dificultades y por todo el esfuerzo que
hicieron para que logrará esta meta. Dedico este logro a mi madre, a quien tengo presente cada
instante de mi vida, aunque no está conmigo físicamente, fuiste y serás siempre un ejemplo para
mí.

Gracias a mis familiares que me apoyaron y me dieron palabras de aliento para motivarme,
especialmente a mi hermano Brian Josué y mi abuela Lidia Zelaya por toda la paciencia y los
consejos que me han dado.

Gracias a mis amigos y compañeros por hacer más agradable el camino recorrido a lo largo de la
carrera, les agradezco por compartir su tiempo y su conocimiento conmigo, por apoyarme en los
momentos difíciles y por confiar en mí siempre.

Gracias a nuestro docente asesor Ing. Bladimir Díaz por su orientación y guía durante el proceso
del trabajo de graduación.

Finalmente, gracias a mi equipo de trabajo de graduación por su esfuerzo y dedicación en este


proyecto, por compartir sus conocimientos conmigo y tenerme paciencia, fue un placer trabajar
con ustedes.

Josselyn Patricia Solano Zelaya


CONTENIDO
INTRODUCCIÓN .................................................................................................................................................... III
OBJETIVOS ............................................................................................................................................................ IV
OBJETIVO GENERAL ....................................................................................................................................................... IV
OBJETIVOS ESPECÍFICOS.................................................................................................................................................. IV
1. CAPÍTULO I: ESTUDIO PRELIMINAR ................................................................................................................ 1
1.1. ALCANCES........................................................................................................................................................2
1.2. LIMITACIONES ..................................................................................................................................................2
1.3. IMPORTANCIA...................................................................................................................................................3
1.4. JUSTIFICACIÓN ..................................................................................................................................................3
1.5. RESULTADOS ESPERADOS ....................................................................................................................................4
1.6. DESCRIPCIÓN DEL SISTEMA ..................................................................................................................................4
1.7. ANTECEDENTES.................................................................................................................................................6
1.8. FORMULACIÓN DEL PROBLEMA ............................................................................................................................7
1.9. METODOLOGÍA PARA RESOLVER EL PROBLEMA ......................................................................................................12
1.10. CRONOGRAMA DE ACTIVIDADES .........................................................................................................................16
1.11. PLANIFICACIÓN DE LOS RECURSOS .......................................................................................................................17
2. CAPÍTULO II: ANÁLISIS ................................................................................................................................. 20
2.1. ANÁLISIS DE LA SITUACIÓN ACTUAL .....................................................................................................................21
2.1.1. Descripción de funciones ...................................................................................................................21
2.1.2. Enfoque de sistemas de la situación actual .......................................................................................22
2.2. DETERMINACIÓN DE REQUERIMIENTOS ................................................................................................................23
2.2.1. Determinación de requerimientos informáticos ................................................................................24
2.2.2. Determinación de requerimientos de desarrollo ...............................................................................32
2.2.3. Determinación de requerimientos de producción .............................................................................33
2.3. ENFOQUE DE SISTEMAS PROPUESTO ....................................................................................................................34
2.3.1. Descripción de Elementos ..................................................................................................................35
2.4. DIAGRAMA DE CASOS DE USO ...........................................................................................................................37
2.5. DIAGRAMAS DE ACTIVIDADES ............................................................................................................................66
3. CAPÍTULO III: DISEÑO .................................................................................................................................. 96
3.1. DEFINICIÓN DE ESTÁNDARES DE DESARROLLO ........................................................................................................97
3.1.1. Interfaces de usuario .........................................................................................................................97
3.1.2. Base de datos ..................................................................................................................................101
3.1.3. Programación ..................................................................................................................................103
3.1.4. Documentación................................................................................................................................104
3.2. DISEÑO ARQUITECTÓNICO DE LA SOLUCIÓN ........................................................................................................106
3.2.1. Implementación ...............................................................................................................................106
3.2.2. Despliegue .......................................................................................................................................109
3.3. DISEÑO DE INTERFACES DE USUARIO..................................................................................................................111
3.4. MODELO DE DOMINIO....................................................................................................................................143
3.4.1. Seguridad.........................................................................................................................................143
3.4.2. Organización....................................................................................................................................144
3.4.3. Catálogos .........................................................................................................................................145
3.4.4. Planificación Estratégica .................................................................................................................146

i
3.4.5. Planificación Operativa ...................................................................................................................147
3.4.6. Permiso ............................................................................................................................................148
3.5. MODELO CONCEPTUAL ...................................................................................................................................149
3.5.1. Seguridad.........................................................................................................................................149
3.5.2. Organización....................................................................................................................................149
3.5.3. Catálogos .........................................................................................................................................150
3.5.4. Planificación Estratégica .................................................................................................................151
3.5.5. Planificación Operativa ...................................................................................................................152
3.5.6. Permiso ............................................................................................................................................153
3.6. DICCIONARIO DE DATOS..................................................................................................................................154
4. CAPÍTULO IV: PRUEBAS ............................................................................................................................. 174
4.1. METODOLOGÍA PARA EL DESARROLLO DE PRUEBAS...............................................................................................175
4.2. REALIZACIÓN DE LAS PRUEBAS..........................................................................................................................178
4.2.1. Plan de pruebas ...............................................................................................................................178
4.2.2. Diseño de los casos de prueba .........................................................................................................180
4.2.3. Ejecución de los casos de prueba .....................................................................................................181
4.2.4. Errores encontrados ........................................................................................................................249
4.2.5. Resultados de pruebas realizadas ...................................................................................................250
5. CAPÍTULO V: PLAN DE IMPLEMENTACIÓN ................................................................................................. 253
5.1. OBJETIVOS ...................................................................................................................................................254
5.1.1. Objetivo General ..............................................................................................................................254
5.1.2. Objetivos Específicos .......................................................................................................................254
5.2. PLANEACIÓN ................................................................................................................................................254
5.2.1. Plan de trabajo ................................................................................................................................254
CONCLUSIONES .................................................................................................................................................. 258
RECOMENDACIONES .......................................................................................................................................... 259
REFERENCIAS ..................................................................................................................................................... 260
GLOSARIO .......................................................................................................................................................... 262
ANEXOS ............................................................................................................................................................. 263
ANEXO 1: TABLA DE HERRAMIENTAS UTILIZADAS PARA EL DESARROLLO.................................................................................263
ANEXO 2: PLANIFICACIÓN REALISTA ...............................................................................................................................264
ANEXO 3: PLANIFICACIÓN PESIMISTA .............................................................................................................................265
ANEXO 4: INFRAESTRUCTURA PARA LA IMPLEMENTACIÓN ..................................................................................................266
ANEXO 5: ANÁLISIS DE SELECCIÓN DE TECNOLOGÍAS DE DESARROLLO ....................................................................................266
BACKEND ...........................................................................................................................................................266
FRONTEND ........................................................................................................................................................269
BASE DE DATOS .................................................................................................................................................270
GESTOR DE CONTROL DE VERSIONES ...............................................................................................................271
ANEXO 6: CARTA DE ACEPTACIÓN DEL SISTEMA ...............................................................................................................274

ii
INTRODUCCIÓN
La Dirección General de Estadísticas y Censos (DIGESTYC) en El Salvador es la responsable de
producir información estadística a través de la recolección de datos por medio de censos y
encuestas y de la integración de registros administrativos, además de normar y coordinar
técnicamente las actividades del Servicio Estadístico Nacional (SEN).
Una de las unidades primordiales de DIGESTYC es la Unidad de Planificación y Desarrollo
Institucional, en donde se realizan el Plan Estratégico Quinquenal, el Plan Anual de Trabajo y el
seguimiento al Plan Anual de Trabajo, estos son necesarios para llevar un adecuado control de
los proyectos que se desarrollarán en el año con base en el presupuesto proporcionado, además
en el Departamento de Recursos Humanos se realiza la solicitud y seguimiento de permisos para
ausentarse.
Por lo antes expuesto, es necesario el desarrollo del Sistema Informático para la Administración
de los Procesos Internos de la Unidad de Planificación y Desarrollo Institucional y el
Departamento de Recursos Humanos de la Dirección General de Estadísticas y Censos
(DIGESTYC), como respuesta a la mejora de los procesos internos.
El presente documento consta de un estudio preliminar en el que se detalla los antecedentes
generales de DIGESTYC, el planteamiento del problema al cual se le dará solución con el
desarrollo del Sistema Informático, una descripción de los puntos importantes que compone el
Sistema Informático, la metodología que se aplicará durante el desarrollo del proyecto, la cual es
Prototipado Incremental. También, se da a conocer un cronograma con las diferentes actividades
que se desarrollaran en los tiempos estipulados y la planificación de los recursos humanos,
tecnológicos, etc., que se utilizaran para obtener un buen resultado.
En el análisis se detalla la situación actual de la DIGESTYC, los requerimientos informáticos, de
desarrollo y de producción, así como la propuesta de solución usando el enfoque de sistemas.
Incluye además los diagramas de casos de uso con su respectiva descripción y los diagramas de
actividades.
En el capítulo de diseño se definen los estándares de desarrollo, el diseño arquitectónico de la
solución propuesta, el diseño de interfaces de usuario, el modelo de dominio, modelo conceptual
y el diccionario de datos.
Posteriormente se muestran las pruebas realizadas al sistema informático, en este capítulo se
detalla la metodología utilizada y el desarrollo utilizando casos de pruebas.
Finalmente se presenta el plan de implementación en el cual se detalla el recurso humano,
tecnológico y las actividades necesarias para poner en marcha el sistema informático.

iii
OBJETIVOS
Objetivo General

Desarrollar un Sistema Informático para la administración de los procesos internos de la unidad


de Planificación y Desarrollo Institucional y el departamento de Recursos Humanos de la
Dirección General de Estadísticas y Censos (DIGESTYC).

Objetivos Específicos

1. Implementar seguimiento y control de planes estratégicos y operativos internos con


soporte para múltiples usuarios permitiendo un reparto balanceado de
responsabilidades.

2. Gestionar la solicitud y el seguimiento de permisos para ausentarse de tal forma que los
empleados de la DIGESTYC puedan realizar dichas diligencias desde su Ordenador o
Smartphone.

iv
1. CAPÍTULO I: ESTUDIO
PRELIMINAR

1
1.1. Alcances

Los procesos internos a apoyar son:

• Unidad de Planificación:
o Desarrollo del Plan Estratégico Quinquenal.
o Creación del Plan Operativo Anual.
o Asignación de actividades a los departamentos de DIGESTYC.
o Actualización de los Avances
• Unidad de RRHH:
o Solicitudes de permisos para ausentarse.
o Seguimiento de los permisos realizados.
Además, para uso de todas las unidades se agregará:

• Seguimiento de autorizaciones hechas por los usuarios.

1.2. Limitaciones

El Salvador, así como muchos países, se ha visto afectado por la Pandemia del Coronavirus
(COVID-19), se establecieron medidas sanitarias en el territorio nacional a fin de frenar el avance
del virus, entre las cuales se encuentra la cuarentena domiciliar obligatoria. 1 2
Debido a estas restricciones de movilización establecidas, se ven afectadas las reuniones
presenciales con los representantes de DIGESTYC; por lo cual se determinó mantener la
comunicación mediante el correo electrónico.
Tomando en consideración los argumentos anteriores, podrían presentarse retrasos en el
desarrollo del proyecto debido a:

• Continuidad de las restricciones y disposiciones sanitarias por parte del Gobierno Central.
• Retrasos en la información requerida para el desarrollo de parte de los representantes de
DIGESTYC.
• Fallas en el servicio de internet sin una pronta solución, debido a la alta demanda por arte
de los usuarios.

1 Fuente: (Gobierno de El Salvador, 2020)


2 Fuente: (Asamblea Legislativa, 2020)

2
1.3. Importancia

La DIGESTYC es la encargada de proporcionar la perspectiva del país de una forma técnica y


verídica, de tal forma que el gobierno siempre tenga una perspectiva correcta del estado de la
nación. Índices como el nivel de pobreza, tasas de desempleo, índice de precios al consumidor,
etc., los hace una fuente indispensable de información.
El proceso de obtención, manipulación y presentación de esta información muchas veces se ve
ralentizado por la ejecución de distintos procesos internos, los cuales podrían automatizarse.
Entre los principales beneficios tenemos:

• Permitir el seguimiento y control de autorizaciones hechas por los usuarios y actualización


de avances de actividades del plan operativo desde cualquier parte del territorio del país,
sin tener que esperar a llegar a la oficina, por medio de la aplicación web a diferencia de
la aplicación de escritorio SISPLAN que tienen actualmente.
• En la actualidad solo un empleado ingresa los avances del plan operativo anual de todas
las unidades, con el sistema desarrollado se tendrá un usuario por cada una de las 11
unidades organizativas para actualizar los avances. Teniendo así la descentralización de
las responsabilidades.3

1.4. Justificación

1. El ingreso de avances del plan operativo de la institución toma 5 días y se realiza una vez
al mes por lo que al año se necesitan 60 días, las unidades tienen 3 días al mes para enviar
la información al correo del responsable y el responsable tiene 2 días para ingresar la
información al sistema. Con la implementación del sistema desarrollado cada unidad
ingresará la información directamente por lo que se reducen 2 días al mes, necesitándose
solo 36 días en total al año para realizar dicho proceso.4
2. Con la aplicación de escritorio SISPLAN se limita el acceso a los procesos solo con un
usuario el cual es proporcionado por el Ministerio de Economía. Tampoco se tendrá que
esperar a que las autoridades reciban solicitudes en físico para que sean firmadas, las
notificaciones de solicitudes le llegarán al instante a cada usuario. Teniendo así acceso
más ágil a los procesos e información.
3. Con el SISPLAN se registran 170 actividades al año, que son las que se reportan al MINEC,
sin embargo, DIGESTYC registra 280 actividades al año que sirven para dar seguimiento al
nivel de cumplimiento de las actividades del plan anual.5
4. Al realizar las solicitudes de ausentismo en línea se evitará hacer uso de 300 hojas de
papel al año. Este estimado se obtuvo asumiendo que cada empleado hace una solicitud

3 Fuente: (Molina Argueta, 2020)


4 Fuente: (Molina Argueta, 2020)
5 Fuente: (Molina Argueta, 2020)

3
al año debido a que la unidad de recursos humanos no maneja los datos de cuantas
solicitudes reciben.6

1.5. Resultados esperados

1. Un sistema informático para la creación de planes estratégicos institucionales, planes


operativos anuales, asignación de actividades específicas a las unidades de la institución,
registro de avances y control de niveles de cumplimiento, solicitudes de permisos de
ausentismos y seguimiento del proceso de aprobación y control de días aun disponibles
para solicitar permisos.
2. Documentación técnica requerida de la aplicación en el manual técnico, manual de
usuario y manual de instalación.
3. El plan de implementación que detalla el recurso humano, recurso tecnológico,
capacitaciones y costos para la puesta en marcha del Sistema informático desarrollado.

1.6. Descripción del sistema

El sistema se encargará de apoyar dos funciones de la DIGESTYC: El desarrollo de planes


estratégicos y operativos, así como el seguimiento de los mismos; y el control de los permisos de
ausentismos de los empleados.
Planificación
La planificación sigue la metodología “Cuadro de Mando Integral” (CMI), el jefe de dicha unidad
se encarga de definir un plan estratégico quinquenal bajo cuatro perspectivas: Ciudadanía
satisfecha con sus servicios, Eficacia de los procesos Organizativos, Desarrollo y Modernización
Organizacional, y Eficiencia en la Movilización y Manejo de los Recursos.
Para cada una de las perspectivas corresponde un análisis FODA. Para cada una de las
características organizativas internas contempladas en el FODA se realiza un estudio de
Intensidad – Influencia, mientras que para las externas se hace un análisis Ocurrencia – Impacto.
A partir de los resultados obtenidos de estos análisis, el usuario se encarga de definir los
proyectos a desarrollar, macro actividades a implementar, o puntos a los cuales prestar atención
durante todo el quinquenio.
Finalmente, se definen los indicadores (KPIs) para controlar el progreso de los aspectos
desarrollados en el mapa estratégico.
Con el plan estratégico definido, se pasa a desarrollar el plan operativo anual. Aquí se definen los
encargados de implementar las iniciativas dadas por el plan estratégico creándose así las Metas
Operativas.

6 Fuente: (Lopez, 2020)

4
Las metas operativas conllevan la iniciativa estratégica, el área responsable de su
implementación, las actividades a realizar para alcanzar dicha meta, el cargo responsable de la
implementación de las actividades, el resultado esperado, los medios de verificación (entregables
como documentos, listas, informes, etc.), los recursos financieros, la unidad de medida
(porcentajes de avance, montos financieros, entre otros), el grado de avance, y la fecha de inicio
y fin para la realización de las tareas.
Cada uno de los jefes de las unidades involucradas se encargan de constatar mensualmente los
avances en las actividades designadas a su unidad, así como de proveer los medios de verificación
y el grado de avance de las tareas que componen la actividad.
Permisos
Todos los empleados de la DIGESTYC podrán solicitar permisos para un máximo de 3 días, se
llevará el control de cuantos días ha consumido cada empleado basados en los límites impuestos
por la organización. Cada usuario podrá consultar los días que tiene disponibles para solicitar
permisos por cualquiera de las razones expuestas.
La encargada de registro y control de personal que es responsable de registrar las horas de
llegada y salida de los empleados, contando con estos registros gracias al sistema de marcación.
Es importante resaltar que este sistema NO se comunicará con el de marcación directamente,
sino que, será la encargada de registro y control de personal la responsable de hacer el traspaso
de los datos de un sistema a otro. Las interfaces para esta tarea estarán incluidas en este sistema.
Lo ideal sería que ambos sistemas se comunicarán directamente, sin embargo, no poseemos
acceso a los detalles de cómo funciona el sistema por el estado actual de la pandemia del
Coronavirus (COVID-19). En el mejor de los casos, se podría consumir una API con la que cuenta
el programa, o hacer Web Scraping si cuenta con interfaz web, o contar con acceso a la base de
datos del mismo.
Si la hora registrada, ya sea de llegada o de retiro del usuario, está fuera de los rangos
establecidos, se le notificará al usuario que debe presentar un permiso a la unidad de recursos
humanos.

5
1.7. Antecedentes

La Dirección General de Estadísticas y Censos (DIGESTYC) es la entidad encargada de realizar


estudios estadísticos de aspectos demográficos y económicos del país.
Los procesos administrativos internos son realizados de forma manual o en alguno de los
sistemas informáticos con los que cuentan, pero para algunos de estos procesos se utiliza gran
cantidad de papel o el sistema informático no satisface las necesidades de los usuarios.
Entre los procesos afectados por la problemática antes mencionada están:

• Elaboración del plan estratégico quinquenal.


• Elaboración del plan operativo anual.
• Seguimiento al plan operativo anual.
• Solicitud y seguimiento de permisos para ausentarse.
Debido a esto surge la idea de desarrollar un sistema informático para la administración de los
procesos internos de la unidad de planificación y desarrollo institucional y el departamento
recursos humanos de la DIGESTYC.
La unidad de planificación y desarrollo institucional y el departamento de recursos humanos se
apoyan de los siguientes sistemas informáticos:

• SISPLAN: Apoya a la Unidad de Planificación y Desarrollo Institucional, en el desarrollo de


planes estratégicos quinquenales y planes operativos anuales. Las principales limitantes
son:
o Solo puede ser utilizado por una persona, ya que el Ministerio de Economía solo
asigna un usuario a cada dependencia, lo que genera una sobrecarga de trabajo
en la planificación de los proyectos y el registro de los avances.
o No se puede dar seguimiento detallado a los planes operativos, actualmente son
llevados a cabo en hojas de Excel.
o No permite realizar planificaciones mensuales.
• Sistema de Marcación de Entradas y Salidas: Apoya al Departamento de Recursos
Humanos en el registro de entradas y salidas del personal.

6
1.8. Formulación del problema

La Dirección General de Estadística y Censos (DIGESTYC) es una institución estatal de El Salvador,


encargada de la elaboración de estudios estadísticos sobre aspectos demográficos y económicos
del país.
Una de las bases fundamentales de la institución es la Unidad de Planificación y Desarrollo
Institucional; en el cual se lleva a cabo la realización del plan estratégico quinquenal y los planes
anuales de trabajo, seguimiento de los planes de trabajo de las diferentes áreas entre otros
procesos.
Además del departamento de Recursos Humanos que entre los principales procesos que se
tomaron en cuenta está el de solicitud y el seguimiento de permisos para ausentarse.
Tomando en cuenta los procesos anteriores de base para el análisis; se infiere que es necesario
contar con un sistema informático que integre los planes estratégicos quinquenales, los planes
anuales de trabajo y el seguimiento de los planes anuales de trabajo, este último es registrado y
analizado por una sola persona; además que para realizarlos se toma mucho tiempo, las
solicitudes de permisos son almacenadas en físico, los empleados desconocen las horas que
tienen disponibles en los diferentes tipos de permisos para ausentarse, que ofrece la institución.
Para analizar esta problemática se hizo uso de dos técnicas:

• Lluvia de Ideas: Herramienta de trabajo en grupo que favorece la aparición de nuevas


ideas sobre un problema concreto o un tema. Lo que se pretende con esta técnica es
generar nuevas ideas originales en un ambiente relajado.
• Diagrama Causa – Efecto: Con esta técnica se pretende mostrar de manera gráfica las
causas y efectos que estas generan a la problemática.
Lluvia de Ideas
A través de esta técnica se establece inicialmente un tema o problemática con la participación
de los miembros del equipo técnico. Gracias a la información obtenida en las diferentes
reuniones con los interesados se identificaron algunas causas que inciden directamente en la
problemática.
Tema: Cuales son las principales causas para que el registro y seguimiento del plan quinquenal,
el plan anual de trabajo y las solicitudes de permisos no se realicen de forma colaborativa en el
ámbito laboral de DIGESTYC.
Al finalizar la lluvia de ideas, podemos recoger como puntos centrales los siguientes:

• El Sistema de Planificación (SISPLAN) no permite un entorno colaborativo de trabajo.

7
• El control de las actividades asignadas a cada unidad de la DIGESTYC se maneja de forma
manual a través de una hoja electrónica de procesamiento de texto.
• Se realiza trabajo extra en el registro del seguimiento al plan anual de trabajo.
• Recursos financieros insuficientes para el desarrollo de una solución tecnológica.
• El personal asignado para el desarrollo de soluciones tecnológicas no es suficiente.
• Se almacenan grandes cantidades de solicitudes de permisos al año.
• Los empleados desconocen las horas de cada tipo de permiso que pueden utilizar.
Diagrama Causa – Efecto
Nos ayuda como una forma de organizar y representar las diferentes teorías propuestas sobre
las causas de un problema, se utiliza la lluvia de ideas como insumo para la creación del diagrama.
A partir de la lluvia de ideas, se realizó el diagrama causa – efecto donde se identificaron como
principales causas de la problemática presentada, las siguientes:

PROCESOS

• El control de las actividades asignada a cada unidad de la DIGESTYC se maneja de forma


manual: se lleva a cabo mediante el uso de un documento Excel.7
• Se realiza trabajo extra en el registro del seguimiento al plan anual de trabajo: el
documento electrónico es enviado al jefe de la Unidad de Planificación y Desarrollo
Institucional para que pueda ingresar el registro en el sistema SISPLAN en los primeros 5
días hábiles del cada mes, si las unidades no mandan los resultados en el tiempo
estipulado se deben realizar horas extras aproximadamente 2 horas al mes y también se
lleva trabajo a casa.8
• Los empleados desconocen las horas de cada tipo de permiso que pueden utilizar:
actualmente los empleados no cuentan con alguna aplicación para darle seguimiento al
tiempo que tienen disponible por cada tipo de permiso a medida que realizan las
solicitudes, la manera en que pueden conocer esas horas disponibles es a través de la
Licda. Delmy López, encargada del registro y control del personal.9

7 Fuente: (Molina Argueta, 2020)


8 Fuente: (Molina Argueta, 2020)
9 Fuente: (Lopez, 2020)

8
PERSONAS

• El personal asignado para el desarrollo de soluciones tecnológicas no es suficiente:


Actualmente el departamento de Análisis y Desarrollo está Conformado por 8 personas
los cuales se detallan a continuación10:

Puesto No. Empleados


Jefe de Departamento 1
Analista Programador 2
Programador 4
Colaborador Técnico 1
Tabla 1: Empleados en el Departamento de Análisis y Desarrollo

Se tienen 16 Sistemas Informáticos a los cuales se les realiza mantenimiento, los sistemas
que se priorizan son los que están relacionados con la recolección de información para la
realización de los diferentes análisis y estadísticas de la población de El Salvador. En
promedio se asignan 2,6 Sistemas Informáticos a cada programador11.
PRESUPUESTO

• Recursos financieros no definidos para el desarrollo de una solución tecnológica: El


Departamento de Análisis y Desarrollo cuenta con un presupuesto aproximado de
$125,000.00 al año para el desarrollo y mantenimiento de soluciones informáticas; estos
recursos son destinados básicamente a pago de remuneraciones, prestaciones y
beneficios del personal.12
Si se requieren recursos para el desarrollo de una solución informática, estos se solicitan
dependiendo de las necesidades y el personal disponible; existen dos tipos de desarrollo:
o Por demanda: Son sistemas que se requieren para algún proyecto o unidad a
grandes rasgos.
o Por planificación estratégica: Sistemas de mayor alcance e impacto permitiendo
derivar parte del trabajo de forma dinámica.13

10 Fuente: (Molina Argueta, 2020)


11 Fuente: (Cortez, 2020)
12 Fuente: (Molina Argueta, 2020)
13 Fuente: (Cortez, 2020)

9
TECNOLOGÍA

• El Sistema de Planificación (SISPLAN) no permite un entorno colaborativo de trabajo:


SISPLAN es el sistema utilizado para realizar el registro de los planes estratégicos
quinquenales, registro del plan anual de trabajo y del seguimiento del plan anual de
trabajo, aunque posee una limitante; debido a que es proporcionado por el Ministerio de
Economía (MINEC) solo se le ha asignado un usuario a cada dependencia para tener un
control sobre las personas que registran la información y en DIGESTYC necesitan un
usuario para cada unidad.14
• SISPLAN solo permite el control de las actividades de productos finales: Como ya se
mencionó, SISPLAN lo proporciona el MINEC, el objetivo de este es controlar las
actividades de productos terminados por lo que no se registran las actividades
intermedias obligando a DIGESTYC a buscar alternativas para su registro, optando
finalmente por utilizar una hoja de Excel para llevar el control de estas actividades. 15

INFRAESTRUCTURA

• Se almacenan grandes cantidades de solicitudes de permisos al año.

14 Fuente: (Molina Argueta, 2020)


15 Fuente: (Molina Argueta, 2020)

10
Ilustración 1: Diagrama Causa-Efecto

11
1.9. Metodología para resolver el problema

Este proyecto será desarrollado utilizando la metodología de “Prototipado Incremental”. Se


estiman dos incrementos; cada uno correspondiente a cada unidad organizativa que se trabajará.
Las etapas que comprende cada incremento son:
Requerimientos
La etapa consiste en la definición de los requerimientos funcionales del sistema, es finalizada
cuando el equipo desarrollador considera comprender los requerimientos lo suficiente como
para diseñar un pequeño prototipo. Se descompone en:
a. Entrevista: Se desarrolla una reunión presencial o virtual con los usuarios de la unidad en
cuestión, con el fin de refinar los detalles de los macro procesos mencionados en el
apartado de Alcances. Se utiliza:
• Productos:
o Entrada: Anteproyecto, Requerimientos de Iteración anterior,
Correcciones de Iteración Anterior.
o Salida: Documento de Requerimientos.
• Técnicas y Prácticas: Entrevista y Observación.
• Herramientas: Procesador de Texto
• Participantes: Usuarios de la Unidad y Equipo de Desarrollo.
b. Análisis de Requerimientos: Los requisitos obtenidos pasan a ser modelados en
Diagramas de Sistemas, Casos de Uso, y Diagramas de Actividades.
• Productos:
o Entrada: Documento de Requerimientos.
o Salida: Diagramas de Sistemas, Casos de Uso, Diagrama de Actividades.
• Técnicas y Prácticas: Análisis de Sistemas.
• Herramientas: Diagramador
• Participantes: Equipo de Desarrollo.
Diseño Rápido
Se elaboran dos diagramas: un modelo de dominio, y un diagrama entidad relación; ambos
basados en los requerimientos y diagramas de la etapa anterior. La principal diferencia entre esta
etapa y la de Diseño es que no es necesario que estos modelos respondan a todos los
requerimientos establecidos, además, la etapa de diseño incluye los diagramas arquitectónicos
del sistema.

• Productos:
o Entrada: Documento de Requerimientos, Diagramas de Sistemas, Casos de Uso,
Diagrama de Actividades.
o Salida: Modelo de Dominio, Diagrama de Entidad Relación.

12
• Técnicas y Prácticas: Diseño de Sistemas.
• Herramientas: Diagramador.
• Participantes: Equipo de Desarrollo.
Prototipado
Se crea un prototipo que, para este caso, se encontrará implementado en HTML, CSS y JavaScript.
Este prototipo deberá responder a todos los requerimientos detallados en el documento, así
como estar acorde a los diagramas establecidos.

• Productos
o Entrada: Diagrama de Sistemas, Casos de Uso, Diagrama de Actividades, Modelo
de Dominio, y Diagrama de Entidad Relación.
o Salida: Sitio web con su código fuente.
• Técnicas y Prácticas: Diseño Web.
• Herramientas: IDE, Servidor Web, JavaScript 6.0, Framework CSS, y HTML 5.
• Participantes: Equipo de Desarrollo.
Validación
Se realiza una reunión con los mismos usuarios que la etapa de requerimientos, en esta entrevista
se presenta el prototipo hecho. Si los usuarios desean cambios, se repiten las etapas anteriores
en el mismo orden, tomando como insumo los resultados de cada etapa. Se eliminan, cambian,
y/o extienden aquellos detalles que los usuarios consideren pertinentes. Se establece un máximo
de 3 iteraciones para el refinamiento de requerimientos, incluida la primera iteración.

• Productos
o Entrada: Prototipo
o Salida: Documento con Correcciones.
• Técnicas y Prácticas: Entrevista y Observación.
• Herramientas: Procesador de Texto
• Participantes: Usuarios y Equipo de Desarrollo.
Diseño
Se crea el diagrama arquitectónico del sistema, se refina el modelo de dominio y el diagrama
entidad relación para que respondan a todos los requerimientos establecidos con el usuario.

• Productos
o Entrada: Documento de Requerimientos, Modelo de Dominio, y Diagrama de
Entidad Relación.
o Salida: Vistas 4+1 de Arquitectura, Modelo de Dominio, y Diagrama Entidad
Relación.
• Técnicas y Prácticas: Ingeniería de Software, Diseño de Sistemas.

13
• Herramientas: Diagramador
• Participantes: Equipo de Desarrollo
Programación
Los diagramas anteriores serán implementados por el equipo de desarrollo en los lenguajes para
Backend y Frontend de forma que satisfagan los requerimientos funcionales y no funcionales de
los usuarios. Al final de la etapa se tendrán dos repositorios en un control de versiones con el
código fuente de la aplicación, uno para cada lenguaje de programación.

• Productos
o Entrada: Prototipo, todos los diagramas de análisis y diseño.
o Salida: Repositorios con Código Fuente.
• Técnicas y Prácticas: Programación Web, Programación Orientada a Objetos.
• Herramientas: IDE, Framework Frontend, Framework Backend, Control de Versiones.
• Participantes: Equipo de Desarrollo.
Pruebas
Las pruebas son diseñadas y ejecutadas para cada caso de uso. La persona encargada de
programar el caso de uso no será la misma que diseñe y ejecute la prueba; en caso que se
presenten errores, estos deberán ser corregidos por la persona que programó el caso de uso en
cuestión. Al final de la etapa se tendrá un documento que refleje las pruebas realizadas.

• Productos
o Entrada: Código Fuente del Sistema.
o Salida: Documento de Pruebas, Código Fuente corregido.
• Técnicas y Prácticas: Pruebas Unitarias.
• Herramientas: Procesador de Texto
• Participantes: Equipo de Desarrollo.
Documentación
El equipo de desarrollo será el encargado de realizar los manuales de usuario, de instalación,
técnico y el plan de implementación para el proyecto. El manual de usuario contiene capturas de
pantalla y la serie de pasos necesarios para cumplir los casos de uso; por otro lado, el manual de
instalación explica paso a paso como instalar el sistema, así como las librerías necesarias para su
funcionamiento. El manual técnico se compone de la descripción de las funciones más relevantes
y cómo implementar algunas funcionalidades de la aplicación para futuros cambios o
actualizaciones. En el plan de implementación se detalla el recurso humano, recurso tecnológico,
capacitaciones y costos para la puesta en marcha del Sistema informático desarrollado.

14
• Productos
o Entrada: Código fuente corregido, recurso humano y tecnológico.
o Salida: Manual de Instalación, Manual de Usuario, Manual Técnico y el Plan de
Implementación.
• Técnicas y Prácticas: Redacción.
• Herramientas: Procesador de Texto.
• Participantes: Equipo de Desarrollo.
Implementación
El sistema será implementado en la infraestructura interna de la organización. Esta etapa marca
el fin del incremento, si aún quedan unidades organizativas por trabajar, se inicia un nuevo
incremento repitiendo en este mismo orden cada una de las etapas.

• Productos
o Entrada: Código fuente corregido.
o Salida: Sitio Web Funcionando.
• Técnicas y Prácticas: Administración de Servidores.
• Herramientas: Sistema Operativo del Servidor, Servidor Web, Motor de Base de Datos,
Servidor Web
• Participantes: Equipo de Desarrollo.
Las herramientas utilizadas para el desempeño de estas tareas se listan en el Anexo 1: Tabla de
Herramientas.

15
1.10. Cronograma de actividades

La estimación de la duración del proyecto se realizó para 3 escenarios: optimista, realista y pesimista. A continuación, se muestra la
planificación optimista. La planificación realista se presenta en el Anexo 2 y la pesimista en el Anexo 3.

Ilustración 2: Cronograma de actividades

16
1.11. Planificación de los recursos

Para el desarrollo del proyecto se utiliza el recurso humano, recurso tecnológico, recurso
consumible y servicios básicos. De acuerdo al cronograma de actividades el proyecto tiene una
duración aproximada de 7 meses.
Recurso humano
Se cuenta con 4 analistas programadores quienes son los responsables de ejecutar las tareas del
cronograma de actividades. Para obtener el costo mensual del analista programador a tiempo
completo se realizó un sondeo en las plataformas web CompuTrabajo y Tecoloco, y se obtuvo
que el rango esta de $800.00 a $1,400.00, teniendo como experiencia de 1 a 3 años, considerando
la experiencia del equipo de desarrollo se toma de base el promedio del rango obtenido, es decir
$1,100.00
Tomando en cuenta que cada analista programador solo le dedica al proyecto 4 horas diarias, el
costo de este será $550.00 mensuales.
A continuación, se resume el costo total del recurso humano durante los 7 meses:

Recurso humano Cantidad Costo mensual Costo mensual Costo total


unitario ($) ($) ($)
Analista Programador 4 550.00 2,200.00 15,400.00

Tabla 2: Costo del recurso humano.

Recurso tecnológico

• Software de desarrollo
Se utiliza software libre, por lo que no se incurre en gastos de licencias. Por lo tanto, el costo de
software es $0.00

• Hardware de desarrollo
En el desarrollo del proyecto se ve afectada la vida útil del equipo informático por la depreciación,
siendo esta un factor importante en la determinación del costo del hardware.
El método a utilizar para calcular la depreciación es el de línea recta, la fórmula es la siguiente:
𝐶𝑜𝑠𝑡𝑜 𝑡𝑜𝑡𝑎𝑙
𝐷𝑒𝑝𝑟𝑒𝑐𝑖𝑎𝑐𝑖ó𝑛 = ( ) ∗ 𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑒𝑠𝑒𝑠 𝑎 𝑑𝑒𝑝𝑟𝑒𝑐𝑖𝑎𝑟
𝑁ú𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑒𝑠𝑒𝑠 𝑑𝑒 𝑣𝑖𝑑𝑎 ú𝑡𝑖𝑙
Para el cálculo de la depreciación la vida útil promedio para las laptops es de 5 años y el costo a
depreciar será el costo promedio de las 4 laptops con las que cuenta el equipo de desarrollo. El
costo promedio es $475.00
Por lo tanto, la depreciación mensual para 1 laptop es:

17
475
𝐷𝑒𝑝𝑟𝑒𝑐𝑖𝑎𝑐𝑖ó𝑛 = ( ) ∗ 1 = 7.92
60
A continuación, se resume la depreciación total del equipo informático:

Equipo Cantidad Depreciación Depreciación Depreciación


mensual mensual ($) total ($)
unitario ($)
Laptop 4 7.92 31.68 221.76
Tabla 3: Depreciación del equipo informático.

• Infraestructura para la implementación del sistema informático


La DIGESTYC ya cuenta con la infraestructura necesaria para la implementación, por lo tanto, no
se incurrirá en ningún gasto.
La infraestructura se detalla en el Anexo 4: Infraestructura para la implementación.
Recurso consumible
Para determinar la cantidad necesaria y el precio del recurso consumible se realizó una
estimación con el equipo de desarrollo basada en la experiencia de consumo en otros proyectos.
A continuación, se detalla el recurso consumible a utilizar durante el desarrollo del proyecto:

Recurso consumible Cantidad Precio Total ($)


unitario ($)
Fotocopias 800 0.02 16.00
Impresiones 1200 0.05 60.00
Anillados 10 1.50 15.00
Empastados 4 15.00 60.0
DVD’S 10 0.75 7.50
Gastos varios (Sobres 20.00
manila, fólderes, otros)
Total 178.50
Tabla 4: Costo del recurso consumible.

Servicios básicos

• Energía eléctrica
Para el cálculo de la energía eléctrica se toma en cuenta los watts por hora consumibles
por cada laptop. Las laptops consumen un promedio de 200 watts por hora 16, esto

16 Fuente: (Keep Services, 2018)

18
equivale a 0.2 kWh. Estas se usarán 4 horas diarias, con un promedio de 21 días por mes,
lo cual da un consumo mensual de 16.8 kWh por cada laptop.
A continuación, se resume el consumo mensual de energía eléctrica:

Equipo Cantidad Consumo Consumo


mensual mensual
unitario (kWh) (kWh)
Laptop 4 16.8 67.2
Tabla 5: Consumo mensual de energía eléctrica.

Cada kWh tiene un costo aproximado de $0.1417 por lo que el costo mensual de la energía
eléctrica es $9.41. Por lo tanto, el costo durante los 7 meses es $65.87

• Internet
El plan de 5 megas tiene un costo mensual de $22.0018, por lo tanto, el costo para el
desarrollo del proyecto es de $154.00
El costo total de los servicios básicos es:

Servicio Costo ($)


Energía eléctrica 65.87
Internet 154.00
Total 219.87
Tabla 6: Costo de los servicios básicos.

Costo total del proyecto


El costo total para el desarrollo del proyecto se detalla a continuación:

Descripción Costo ($)


Recurso humano 15,400.00
Recurso tecnológico 221.76
Recurso consumible 178.50
Servicios básicos 219.87
Subtotal 16,020.13
Imprevistos (5%) 801.01
Total 16,821.14
Tabla 7: Costo total del proyecto.

17 Fuente: (Superintendencia General de Electricidad y Telecomunicaciones, 2020)


18 Fuente propia. Servicio actual contratado con la compañía Claro.

19
2. CAPÍTULO II:
ANÁLISIS

20
2.1. Análisis de la situación actual
2.1.1. Descripción de funciones

En este apartado se describen las funciones del personal involucrado en los procedimientos de
desarrollo y seguimiento de planes estratégicos quinquenales, planes operativos anuales y
solicitudes de permisos de la Dirección General de Estadísticas y Censos.
Jefe de la Unidad de Planificación y Desarrollo Institucional

• Consolidar toda la información que se recolecta en los talleres de trabajo con las gerencias
y departamentos para crear los planes estratégicos y operativos.
• Definir e ingresar al SISPLAN los planes estratégicos quinquenales: Creación de
perspectivas, objetivos estratégicos, iniciativas e indicadores.
• Definir e ingresar al SISPLAN los planes operativos anuales: Selección de iniciativas,
creación de actividades y establecimiento de metas y responsables.
• Seguimiento de Indicadores del Plan Quinquenal cada trimestre.
• Ingreso de los avances de las actividades principales del Plan anual de todas las unidades
cada mes en el SISPLAN y de totas las actividades en la hoja de Excel.
• Generación de Reportes del plan estratégico, plan anual, indicadores, seguimiento de
actividades mensual y anual y seguimiento de indicadores trimestral y anual.
Jefes de Unidad

• Participación en talleres de trabajo con todas las gerencias y departamentos de agosto a


diciembre para establecer lo que se hará en el quinquenio definiendo objetivos,
indicadores, actividades, metas, periodos y responsables.
• Envíos de avances de las actividades en los meses correspondientes por medio de correo
electrónico.
• Aprueban o deniegan las solicitudes de permisos de los empleados a su cargo.
Encargado de registro y control de personal

• Registrar las horas de llegada y salida de los empleados.


• Notificar a los empleados para presentar solicitudes de permisos por faltas que no se
hayan justificado con anticipación.
• Recepción y procesamiento de solicitudes de permisos.
• Control de horas disponibles para solicitar permisos por empleado.

21
2.1.2. Enfoque de sistemas de la situación actual

Para tener una mayor comprensión de la situación actual se hace uso del enfoque de sistemas
para describir la forma en que se relacionan los procedimientos relacionados a los planes
estratégicos, operativos y los permisos dentro de DIGESTYC.

Ilustración 3: Enfoque de sistemas de la situación actual

22
2.2. Determinación de requerimientos

La definición de requerimientos es parte esencial del desarrollo de un Sistema Informático, ya


que estos definen lo que se incluye. Se atienden los requerimientos establecidos por los usuarios
en cuanto a funcionalidad, implementación y demás aspectos necesarios a cumplir.

Los requerimientos a obtener se clasifican en:

• Requerimientos Informáticos.
• Requerimientos de Desarrollo.
• Requerimientos de Producción.

En la Tabla 8: Tipos de requerimientos se define el código a utilizar para identificar cada tipo de
requerimiento definido en el sistema.

CÓDIGO REQUERIMIENTO
RIFMCA Requerimiento Informático Funcional Modulo de Catálogos.
RIFMOR Requerimiento Informático Funcional Modulo de Organización.
RIFMPL Requerimiento Informático Funcional Modulo de Planificación.
RIFMSE Requerimiento Informático Funcional Modulo de Seguridad.
RIFMPE Requerimiento Informático Funcional Modulo de Permiso.
RINF Requerimiento Informático No Funcional.
RHD Requerimiento de Hardware para Desarrollo.
RSD Requerimiento de Software para Desarrollo.
RRHD Requerimiento de Recurso Humano para Desarrollo.
RHP Requerimiento de Hardware para Producción.
RSP Requerimiento de Software para Producción.
Tabla 8: Tipos de requerimientos

23
2.2.1. Determinación de requerimientos informáticos

REQUERIMIENTOS FUNCIONALES

MÓDULO DE CATÁLOGOS
CÓDIGO REQUERIMIENTO DESCRIPCIÓN
Se requiere registrar, actualizar y eliminar las fuentes de
Gestión de
financiamiento. Tiene los siguientes datos:
RIFMCA-01 Fuentes de
• Nombre
Financiamiento
• Estado
Se requiere registrar, actualizar y eliminar los tipos de
Gestión de Tipos justificación. Tiene los siguientes datos:
RIFMCA-02
de Justificaciones • Nombre
• Estado
Se requiere registrar, actualizar y eliminar las unidades de
Gestión de
medidas. Tiene los siguientes datos:
RIFMCA-03 Unidades de
• Nombre
Medidas
• Estado
Se requiere registrar, actualizar y eliminar las ausencias.
Tiene los siguientes datos:
Gestión de Tipo • Código
RIFMCA-04
de Ausencias • Nombre
• Descripción
• Estado
Se requiere registrar, actualizar y eliminar los tipos de
permisos. Tiene los siguientes datos:
• Nombre
• Descripción
• Horas Anuales
• Estado
Gestión de Tipo • Tiempo laboral cumplido.
RIFMCA-05 • Goza de sueldo
de Permisos
• Evidencia
• Justificación
• Jefes autorizados para aprobar el permiso
El Tiempo laboral cumplido es el tiempo que debe tener el
empleado laborando en la institución para poder solicitar el
permiso.
Tabla 9: Requerimientos funcionales módulo de catálogos

24
MÓDULO DE ORGANIZACIÓN
CÓDIGO REQUERIMIENTO DESCRIPCIÓN
Se requiere registrar actualizar y deshabilitar las diferentes
unidades organizativas que conforman DIGESTYC. Tiene los
Gestión de siguientes datos:
RIFMOR-01 Unidades • Nombre
Organizativas • Estado
Además, se define si la unidad es gerencia, agregar
unidades de apoyo, subunidades y cargos.
Se requiere registrar, actualizar y deshabilitar los cargos
para una unidad organizativa. Tiene los siguientes datos:
RIFMOR-02 Gestión de Cargos • Nombre
• Estado
Se puede definir si el cargo es jefe.
Tabla 10: Requerimientos funcionales módulo de organización

MÓDULO DE PLANIFICACIÓN
CÓDIGO REQUERIMIENTO DESCRIPCIÓN
Se requiere registrar y actualizar planes quinquenales.
Tiene los siguientes datos:
• Año de inicio.
Gestión de Planes
RIFMPL-01 • Año de fin (se genera automáticamente a partir del
Quinquenales
año de inicio).
• Estado (los estados definidos son Vigente, A
programar y No Vigentes).
Se requiere registrar y actualizar las perspectivas para un
plan quinquenal. Tiene los siguientes datos:
• Código (Generado automáticamente).
Gestión de
RIFMPL-02 • Nombre.
Perspectivas
• Descripción.
Solo se permite el registro de 4 perspectivas para un plan
quinquenal.
Se requiere registrar, actualizar y eliminar los objetivos
estratégicos para una perspectiva especifica. Tiene los
siguientes datos:
Gestión de • Código (Generado automáticamente).
RIFMPL-03 Objetivos • Perspectiva.
Estratégicos • Objetivo.
• Peso.
La sumatoria de los pesos de los objetivos estratégicos
pertenecientes a una perspectiva debe ser igual al 100%.

25
Se requiere registrar, actualizar y eliminar las iniciativas
para un objetivo estratégico especifico. Tiene los siguientes
datos:
• Código (Generado automáticamente).
• Perspectiva.
Gestión de • Objetivo Estratégico.
RIFMPL-04
Iniciativas • Unidad Líder.
• Iniciativa.
• Programación en el quinquenio.
• Indicador de Impacto.
• Medio de verificación.
• Resultado.
Se requiere registrar, actualizar y eliminar los KPI para un
objetivo estratégico especifico. Tiene los siguientes datos:
• Código (Generado automáticamente).
• Perspectiva.
• Objetivo Estratégico.
• Indicador.
• Peso.
• Línea base.
• Unidad de Medida.
RIFMPL-05 Gestión de KPI • Direccionalidad.
• Periodicidad (se definen las siguientes: trimestral,
semestral y anual).
• Formula de Medición.
• Iniciativas involucradas.
• Límite de Control.
• Meta.
Para determinar el límite de control y la meta, se genera N
cantidad de periodos para un año del plan quinquenal,
dependiendo de la periodicidad seleccionada.
Se requiere generar y actualizar los cierres trimestrales para
el quinquenio con 5 días hábiles del mes posterior al
trimestre finalizado, para el registro de avances de los KPI.
Tiene los siguientes datos.
Generar Cierre • Periodo.
RIFMPL-06
Trimestral • Fecha de Inicio.
• Fecha de Fin.
• Correo de Aviso del Inicio de Periodo (Se detalla el
contenido del mensaje y cuantos días antes de la
fecha de inicio desea enviar el correo).

26
• Correo de Recordatorio del Fin de Periodo (Se
detalla el contenido del mensaje y cuantos días
antes de la fecha de fin desea enviar el correo).
Se requiere registrar y actualizar planes operativos anuales.
Tiene los siguientes datos:
Gestión de Planes
• Plan quinquenal.
RIFMPL-07 Operativos
• Año.
Anuales
• Estado (los estados definidos son Vigente, A
programar y No Vigentes).
Se requiere agregar y eliminar iniciativas que conformaran
el plan operativo anual. Se seleccionaron los siguientes
Agregar datos.
RIFMPL-08
Iniciativas • Perspectiva.
• Objetivo Estratégico.
• Iniciativa.
Se requiere registrar, actualizar y eliminar las actividades
para un plan operativo anual especifico. Tiene los siguientes
datos:
• Código (Generado automáticamente).
• Iniciativa (Se muestran solamente las iniciativas que
se han agregado al plan operativo anual).
Gestión de • Actividad.
RIFMPL-09
Actividades • Fecha de Inicio.
• Fecha de Fin.
• Resultado.
• Medio de Verificación.
• Fuente de Financiamiento.
• Monto.
• Responsable.
Se requiere generar y actualizar los cierres mensuales para
un plan operativo anual con 5 días hábiles del mes posterior
al mes finalizado, para el registro de avances de las
actividades. Tiene los siguientes datos.
Generar Cierre • Periodo.
RIFMPL-10
Mensual • Fecha de Inicio.
• Fecha de Fin.
• Correo de Aviso del Inicio de Periodo (Se detalla el
contenido del mensaje y cuantos días antes de la
fecha de inicio desea enviar el correo).

27
• Correo de Recordatorio del Fin de Periodo (Se
detalla el contenido del mensaje y cuantos días
antes de la fecha de fin desea enviar el correo).
Se requiere registrar y actualizar la ejecución de avances
para un KPI específico. Tiene los siguientes datos:
• Valor del KPI
• Logro.
• Evidencia.
• Justificación por incumplimiento (Detalla el tipo de
justificación y la justificación).
Se requiere mostrar el estado de cumplimiento con un
Semáforo de acuerdo a las siguientes condiciones:
• Verde: cuando el valor del KPI sea mayor al límite de
control y el porcentaje de ejecución sea igual al
Reportar Avance
RIFMPL-11 100% de la meta, no se registra la justificación por
de KPI
incumplimiento.
• Amarillo: cuando el valor del KPI sea mayor al límite
de control y el porcentaje de ejecución sea mayor o
igual al 50% y menor al 100% de la meta, se registra
la justificación por incumplimiento.
• Rojo: cuando el valor del KPI sea menor al límite de
control y el porcentaje de ejecución sea mayor o
igual al 0% y menor al 50% de la meta, se registra la
justificación por incumplimiento.
• Gris: cuando no se ha registrado avance para el
periodo correspondiente.
Se requiere registrar y actualizar la ejecución de avances
para una actividad específica. Tiene los siguientes datos:
• Mes (que se desea registrar el avance).
• Ejecución.
• Logro.
• Evidencia.
• Justificación por incumplimiento (Detalla el tipo de
Reportar Avance justificación y la justificación).
RIFMPL-12
de Actividad Se requiere mostrar el estado de cumplimiento con un
Semáforo de acuerdo a las siguientes condiciones:
• Verde: cuando el porcentaje de ejecución sea igual
al 100% de la meta, no se registra la justificación por
incumplimiento.
• Amarillo: cuando el porcentaje de ejecución sea
mayor o igual al 50% y menor al 100% de la meta, se
registra la justificación por incumplimiento.

28

Rojo: cuando el porcentaje de ejecución sea mayor
o igual al 0% y menor al 50% de la meta, se registrará
la justificación por incumplimiento.
• Celeste: Cuando se registre un avance de un mes
posterior al mes finalizado, no se registra la
justificación por incumplimiento.
• Gris: cuando no se ha registrado avance para el
periodo correspondiente.
Se requiere que los usuarios puedan generar los siguientes
reportes, según su rol:
• Plan Estratégico.
• Plan de Trabajo Anual.
RIFMPL-13 Generar Reportes • Reporte de KPI
• Reporte de KPI trimestral.
• Informe Mensual de Seguimiento.
• Informe Anual de Seguimiento.
• Reporte de KPI Anual
Tabla 11: Requerimientos funcionales módulo de planificación

MÓDULO DE SEGURIDAD
CÓDIGO REQUERIMIENTO DESCRIPCIÓN
Se requiere registrar, actualizar y desactivar los usuarios
por parte del administrador del sistema. Tiene los
siguientes datos:
• Nombres.
• Apellidos.
• Correo Electrónico.
Gestión de • Contraseña (generada por el sistema y enviada al
RIFMSE-01
Usuarios correo del usuario que se registra).
• Cargo.
• Estado.
• Rol (se podrá asignar uno o más roles).
• Código de marcación
• Fecha de contratación
• Tipo de contratación
Se requiere registrar, actualizar y eliminar roles por parte
del administrador del sistema. Tiene los siguientes datos:
RIFMSE-02 Gestión de Roles • Nombre.
• Descripción.
• Permisos para el acceso en el sistema.

29
Cambiar Se requiere que el usuario pueda cambiar su contraseña y
RIFMSE-03 contraseña que la pueda recuperar en caso de que se le olvide.
propia
Tabla 12: Requerimientos funcionales módulo de seguridad

MÓDULO DE PERMISO
CÓDIGO REQUERIMIENTO DESCRIPCIÓN
Consultar Tiempo Se requiere que el usuario pueda consultar los tiempos
RIFMPE-01
Disponible disponibles de cada permiso que puede solicitar.
Se requiere que el empleado pueda solicitar un
determinado permiso. Tiene los siguientes datos:
• Tipo de permiso
• Observaciones o justificaciones
RIFMPE-02 Solicitar permiso
• Ausencias futuras o Ausencias pasadas
• Evidencias
Las observaciones ausencias y evidencias son opcionales
según el tipo de permiso solicitado.
Se requiere que el usuario pueda consultar los permisos
Consultar que ha solicitado, se puede ver los permisos que se
RIFMPE-03
permisos propios aprobaron los que están en proceso para ser aprobados y
los que no se le aprobaron.
Se requiere que los jefes puedan aprobar o denegar los
RIFMPE-04 Aprobar permisos
permisos solicitados por los empleados.
Consultar mis Se requiere que el jefe pueda consultar las aprobaciones
RIFMPE-05
aprobaciones que ha realizado a los diferentes empleados.
Se requiere que la encargada del registro y control de
Consultar
RIFMPE-06 empleados, pueda consultar los permisos que han realizado
permisos de otros
los empleados.
Consultar Se requiere que la encargada del registro y control de
tiempos empleados, pueda consultar los tiempos disponibles que
RIFMPE-07
disponibles de tienen los empleados en los diferentes permisos a los que
otros pueden optar.
Se requiere que la encargada del registro y control de
empleados pueda cargar las asistencias y ausencias diarias
RIFMPE-08 Cargar asistencias
de los empleados de la institución.
Se realizará por medio de un archivo CSV.
Tabla 13: Requerimientos funcionales módulo de permiso

30
REQUERIMIENTOS NO FUNCIONALES

Los requerimientos no funcionales representan características que el sistema debe proveer, en


cuanto a usabilidad, confiabilidad, seguridad, etc. Pero que no están directamente relacionados
con el comportamiento funcional del Sistema. En la Tabla 14: Requerimientos no funcionales se
detalla el listado de los requerimientos no funcionales.

CODIGO REQUERIMIENTO DESCRIPCIÓN


RINF-01 Fiabilidad • El sistema valida los datos ingresados en los
respectivos campos por los usuarios, verificando
que sean acordes al tipo de dato que se espera sea
introducido. Ej. No introducir números donde se
esperan letras y viceversa, introducir fechas
correctamente, ingresar campos obligatorios, etc.
RINF-02 Disponibilidad • El Sistema debe estar disponible el 100% del
tiempo en que el servidor que lo contenga se
encuentre disponible.
RINF-03 Seguridad • Se debe garantizar que cada usuario tenga acceso
solamente a la información y a los procesos según
el rol que desempeña dentro del Sistema.
• Se establece el cifrado de Contraseña dentro de la
base de datos garantizando la integridad del
usuario, el algoritmo que se utilizara es Bcrypt
Encoder proporcionado por Spring Security.
• Se cuenta con una bitácora de acceso, para
controlar las operaciones realizadas en el Sistema
por todos los usuarios registrados; permite
visualizar los siguientes datos:
o Usuario que realizo la operación.
o Operación o actividad efectuada por el
usuario.
o Descripción de lo que realizo dentro del
sistema.
o Fecha y hora en que se llevó a cabo la
operación.
RINF-04 Mantenimiento • El sistema debe disponer de documentación
actualizable que permita realizar operaciones de
mantenimiento fácilmente.
• Para facilitar el entendimiento de la funcionalidad,
el mantenimiento y modificaciones futuras del
Sistema se cuenta con la siguiente documentación:
o Manual de Usuario.
o Manual de Instalación.

31
o Manual Técnico.
o Plan de Implementación.
RINF-05 Portabilidad • El sistema puede ser ejecutado en diversos tipos de
sistemas operativos y también tiene la capacidad
para ejecutarse en cualquiera de los navegadores
más utilizados (Google Chrome, Firefox).
RINF-06 Rendimiento • El sistema gestor de base de datos (DBMS= debe
tener la capacidad para procesar transacciones de
los usuarios, realizadas por el sistema de manera
simultánea desde varias estaciones de trabajo.
Tabla 14: Requerimientos no funcionales

2.2.2. Determinación de requerimientos de desarrollo

REQUERIMIENTOS DE HARDWARE

CÓDIGO REQUERIMIENTO DESCRIPCIÓN


• Procesador: 1 núcleo a 2.0 GHz
Infraestructura
• RAM: 512 MB
RHD-01 servidor de
• Almacenamiento: 5 GB
prueba
• Sistema Operativo: Ubuntu 18.04
Equipo 1:
• Procesador: Intel Pentiem N3540 2.16 GHz 4 Núcleos.
• RAM: 4 GB DDR3 1333 MT/s
• HDD: 500 GB
Equipo 2:
• Procesador: Intel Core i5-8265U 1.60 Ghz 4 Núcleos.
• RAM: 8 GB DDR4
Infraestructura • SSD: 128 GB
RHD -02 máquinas de Equipo 3:
desarrollo • Procesador: AMD Ryzen 7 3700U 2.3 GHz 4 Núcleos.
• RAM: 16 GB DDR4
• HDD: 1 TB
Equipo 4:
• Procesador: Intel® Core i5-5200U CPU @ 2.20 GHz
2.20 GHz.
• RAM: 8 GB DDR3
• SSD: 120 GB adicional HDD 1 TB.
Tabla 15: Requerimientos de hardware de desarrollo

32
REQUERIMIENTOS DE SOFTWARE

CÓDIGO REQUERIMIENTO DESCRIPCIÓN


• Lenguaje de Programación: Java
RSD-01 BackEnd
• Framework: Spring Boot 2.3.1
• Tecnología: Angular 9.1.11
RSD-02 FrontEnd
• Tecnología para la aplicación móvil: IONIC 5.0.0
RSD-03 Base de Datos • PostgreSQL 12.3.2
Control de • Git utilizando la plataforma de desarrollo
RSD-04
Versiones colaborativo GitLab.
Tabla 16: Requerimientos de software de desarrollo

Ver Anexo 5: Análisis de selección de tecnologías de desarrollo.

REQUERIMIENTOS DE RECURSO HUMANO

CÓDIGO REQUERIMIENTO DESCRIPCIÓN


Su función es dirigir al equipo sobre aspectos técnicos y la
coordinación de recursos, además de la aprobación de
RRHD-01 Líder de Proyecto
solicitudes de información, requerimientos y
funcionalidades.
Analista / Su función es analizar, diseñar, construir, probar, elaboración
RRHD -02
Programador de manuales y del plan de implementación.
Su función es brindar observaciones, sugerencias y una guía
RRHD-03 Docente Asesor
en la realización de cada etapa en el desarrollo del proyecto.
Recurso humano Su función es brindar apoyo e información de los diferentes
RRHD-04
de DIGETYC procedimientos que se llevan a cabo en la organización.
Tabla 17: Requerimientos de recurso humano de desarrollo

2.2.3. Determinación de requerimientos de producción

REQUERIMIENTOS DE HARDWARE

CÓDIGO REQUERIMIENTO DESCRIPCIÓN


Infraestructura • CPU: 2x Intel® Xeon® E5-4620 2.20GHz
RHP-01 mínima para • Memoria Principal: 4 GB
servidor • Disco Duro: 128 GB
Infraestructura • CPU: Core 2 DUO 2.13 GHz
RHP-02 mínima para • Memoria Principal: 2 GB
maquinas cliente • Disco Duro: 80 GB
Infraestructura • CPU: Quad-core 1.5 GHz
RHP-03 mínima para • Memoria Principal: 1 GB
equipos móviles
Tabla 18: Requerimientos de hardware de producción

33
REQUERIMIENTOS DE SOFTWARE

CÓDIGO REQUERIMIENTO DESCRIPCIÓN


Infraestructura • Sistema operativo: Microsoft Windows 2012 Server
RSP-01 mínima para Estándar R2 64 Bits
servidor • Gestor de base de datos: Postgresql 12.3.2
Infraestructura • Sistema operativo: Windows XP
RSP-02 mínima para • Navegador: Google Chrome: 79.0 y Firefox: 51.0
maquinas cliente
RHP-03 Infraestructura • Sistema Operativo: Android desde v.7.0
para equipos • Navegador: Por el diseño responsivo se puede
móviles acceder desde cualquier navegador del dispositivo
móvil
Tabla 19: Requerimientos de software de producción

2.3. Enfoque de sistemas propuesto

Ilustración 4: Enfoque de sistemas propuesto

34
2.3.1. Descripción de Elementos

Salidas

• Reporte de Programación del plan Estratégico: Contiene la programación de todo el plan


estratégico de 5 años, incluye las perspectivas, objetivos con sus respectivos pesos,
iniciativas, medios de verificación, resultados y la distribución Anual de la meta.
• Reporte de Programación del Plan Anual: Contiene la programación de todas las
actividades con su resultado esperado, meta, unidad de medida, medio de verificación, la
distribución mensual de la meta y responsable.
• Reporte de KPI: Contiene todos los indicadores de un quinquenio con su peso, unidad de
medida, formula de medición, periodicidad, línea base, límite de control, meta y su
distribución trimestral.
• Reporte de seguimiento de KPI trimestral y anual: Contiene la programación de KPI y la
ejecución y logro que han ido registrando en la unidad de planificación y desarrollo
institucional, se genera cada trimestre y un consolidado del año al finalizar el trimestre
cuatro.
• Reporte de seguimiento de actividades mensual y anual: contiene la programación de
las actividades y el registro de la ejecución que las unidades responsables ingresaron, se
genera cada mes y un consolidado al finalizar el año.
• Horas disponibles para pedir permisos de ausencia: Cada empleado de la institución
podrá tener acceso a la cantidad de horas que tiene disponibles por tipo de permiso para
poder realizar solicitudes de ausencia.
• Estado de una solicitud de ausencia: Desde que se hace una solicitud se podrá visualizar
quien ya la aprobó o denegó y el estado mismo de la solicitud.

Entradas

• Perspectivas: Categoría utilizada en el CMI que provee contexto para objetivos e


indicadores.
• Análisis FODA por Perspectiva: Ayuda a definir los proyectos a desarrollar, macro
actividades a implementar, o puntos a los cuales prestar atención durante todo el
quinquenio.
• Objetivos Estratégicos: Representa la descripción de cómo la perspectiva de un cuadro
de mando se alcanzará.
• Iniciativas: Son los medios que se deben desarrollar para alcanzar los objetivos.
• Indicadores: Se utilizan para medir el desempeño de un objetivo estratégico.
• Actividades: Son las acciones para hacer operativa la estrategia.
• Metas Operativas: Es lo que se espera lograr ejecutando las actividades.
• Gerencias, unidades y departamentos: Responsables de ejecutar las actividades del plan
operativo.

35
• Marcación de entradas y salidas de los empleados: Es el registro de la hora en que un
empleado se presenta y se retira del trabajo, también si no se presenta se hace un
registro.
• Solicitudes de ausencia: Son los permisos que presenta un empleado para faltar, entrar
tarde o salir temprano de un trabajo.

Procesos

• Gestión de planes estratégicos: Consiste en la creación de planes estratégicos


quinquenales, con sus perspectivas, objetivos estratégicos, iniciativas e indicadores.
• Gestión de planes operativos: Consiste en la creación de planes operativos anuales, con
sus iniciativas seleccionadas y las actividades asignadas a las unidades de la institución.
• Seguimiento de actividades del plan operativo: Permite llevar un control del grado de
cumplimiento de las actividades reportadas por las unidades de la institución cada mes.
• Seguimiento de indicadores: Permite llevar un control del grado de cumplimiento de los
indicadores reportados por la unidad de planificación cada trimestre.
• Seguimiento de solicitudes de Permisos de ausencia: Permite controlar el estado de una
solicitud, verificar quienes ya la aprobaron o denegaron.
• Seguimiento de horas disponibles para solicitar permisos de ausencia: Cada vez que se
solicita un permiso se descuenta de las horas disponibles anuales.

Control

• Unidad de Planificación y Desarrollo Institucional: tiene como objetivo planear, dirigir y


coordinar el desarrollo organizacional, proporcionando la información necesaria para
reforzar la toma de decisiones, así como la formulación de políticas, estrategias y planes
encaminados a lograr los objetivos de la institución.
• Cuadro de Mando Integral (CMI): modelo de gestión que traduce la estrategia en
objetivos relacionados entre sí, medidos a través de indicadores y ligados a unos planes
de acción que permiten alinear el comportamiento de los miembros de la organización.
• Indicadores (KPIs): Se utilizan para medir el desempeño de un objetivo estratégico.
• Unidad de Recursos Humanos: Gestionan los tipos de permisos que se pueden realizar,
cantidad de horas anuales por permiso, quienes son los encargados que lo deben
autorizar.

36
2.4. Diagrama de Casos de Uso
DESCRIPCIÓN DE ACTORES

Actor Descripción
Jefe de la unidad de planificación y desarrollo Se encarga de la planificación y seguimiento
institucional de los planes estratégicos y operativos, fechas
de ingreso de información y generación de
reportes.

Este usuario también es un encargado de


unidad.
Encargado de unidad Se encarga de ingresar el avance de las
actividades asignadas a su unidad.
Administrador Se encarga de la gestión de usuarios, roles,
estructura de la unidad organizativa y de
datos que se muestran en los formularios
como unidad de medida, tipo de justificación
y fuente de financiamiento.
Encargado de Permisos Se encarga de gestionar los tipos de permisos
que pueden solicitar los empleados y cargar la
asistencia diaria de los empleados.
Empleado Todos los usuarios pueden solicitar permisos
de ausencia siempre y cuando tengan horas
disponibles.
Jefe Se encarga de aprobar o denegar las
solicitudes de ausencia de los empleados a su
cargo.
Tabla 20: Descripción de actores

A continuación, se presentan los diagramas de caso de uso más relevantes del sistema
informático propuesto:

37
DIAGRAMA DE CASOS DE USO GENERAL

Ilustración 5: Diagrama de Caso de Uso General del SIAPI.

38
Módulo de Planificación

Ilustración 6: Diagrama de Caso de Usos Gestionar Quinquenio.

39
CASO DE USO: GESTIONAR QUINQUENIO

Caso de uso: Gestionar Quinquenio Código: CU01


Analista que escribió el CU Elena García Fecha: 23/05/2020
Caso de Uso para que le permite al jefe de la unidad de
planificación y desarrollo institucional gestionar los planes
Descripción: quinquenales, se listan los planes quinquenales que han sido
ingresados hasta el momento y las opciones para registrar, editar
y ver el detalle de un plan quinquenal.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Haber iniciado sesión con un usuario que tenga permisos para
Precondiciones:
gestionar los planes quinquenales.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita ver los
planes quinquenales.
El sistema muestra el listado de los
2 Planes Quinquenales registrados
hasta el momento.
El jefe de la unidad de planificación y
desarrollo institucional solicita realizar
3
una búsqueda de uno o varios planes
quinquenales.
El sistema muestra un formulario
4 solicitando ingresar año de inicio, año
de fin y el estado.
El jefe de la unidad de planificación y
5 desarrollo institucional ingresa los
datos solicitados
El sistema muestra los planes
quinquenales comprendidos entre el El sistema no encontró el registro y
6 6a.
intervalo de tiempo especificado y el muestra el listado vacío.
estado
El jefe de la unidad de planificación y
7 desarrollo solicita ver el detalle de un
plan quinquenal.
Inicia el caso de usos Editar
8
Perspectivas
Tabla 21: Descripción de caso de uso Gestionar Quinquenio

40
CASO DE USO: CREAR PLAN QUINQUENAL

Caso de uso: Crear Plan Quinquenal Código: CU02


Analista que escribió el CU Elena García Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo registrar un nuevo plan quinquenal.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Haber iniciado sesión con un usuario que tenga permisos para
Precondiciones:
gestionar los planes quinquenales.
Mostrar en el listado de planes quinquenales el nuevo plan
Postcondiciones:
quinquenal.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita crear
plan quinquenal.
El sistema muestra una ventana
2 emergente para ingresar el año de inicio
del plan quinquenal.
El jefe de la unidad de planificación y
3 desarrollo institucional ingresa los
datos solicitados.
El sistema captura los datos, los 1-Si hubo error al guardar el registro se
4 almacena y muestra un mensaje de 4a. mostrará mensaje de error.
éxito. 2-Retornara al paso 3.
Tabla 22: Descripción de caso de uso Crear Plan Quinquenal

CASO DE USO: EDITAR PLAN QUINQUENAL

Caso de uso: Editar Plan Quinquenal Código: CU03


Analista que escribió el CU Elena García Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo editar un plan quinquenal existente.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: Haber creado al menos un plan quinquenal
Mostrar en el listado de planes quinquenales el plan quinquenal
Postcondiciones:
editado.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita editar
un plan quinquenal.

41
El sistema muestra una ventana
2 emergente con los datos del plan
quinquenal seleccionado.
El jefe de la unidad de planificación y
3 desarrollo institucional ingresa los
nuevos datos y solicita guardar.
El sistema captura los datos, los 1-Si hubo error al guardar el registro se
4 almacena y muestra un mensaje de 4ª mostrará mensaje de error.
éxito. 2-Retornara al paso 3.
Tabla 23: Descripción de caso de uso Editar Plan Quinquenal

CASO DE USO: EDITAR FECHAS DE CIERRE

Caso de uso: Editar Fechas de cierre Código: CU19


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo editar una o varias fechas de ingreso de indicadores.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: N/A
Postcondiciones: Mostrar en las fechas modificadas.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita ver las
fechas cierre trimestral.
El sistema muestra una tabla con los
2
periodos y las fechas.
El jefe de la unidad de planificación y
3 desarrollo institucional solicita
modificar las fechas de un periodo.
El sistema muestra en una ventana
4 emergente el periodo y las fechas a
modificar.
El jefe de la unidad de planificación y
5 desarrollo institucional modifica una o
ambas fechas y solicita guardar.
El sistema captura los datos ingresados, 1- Si hubo un error al momento de
guardar el registro se mostrará un
5 los almacena y devuelve un mensaje de 5a
mensaje de error.
éxito.
2- El sistema retornara al paso 2.
Tabla 24: Descripción de caso de uso Editar fechas de cierre

42
CAMBIAR ESTADO

Caso de uso: Cambiar estado Código: CU20


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo cambiar el estado de un plan quinquenal.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: Estar en estado vigente o a programar.
Postcondiciones: Mostrar el nuevo estado vigente.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita cambiar
el estado del plan quinquenal.
El sistema muestra un formulario con el
2
estado actual y una descripción.
El jefe de la unidad de planificación y
3 desarrollo institucional selecciona otro
estado y solicita guardar.
El sistema captura los datos ingresados, 1- Si hubo un error al momento de
guardar el registro se mostrará un
4 los almacena y devuelve un mensaje de 4a
mensaje de error.
éxito.
2- El sistema retornara al paso 3.
Tabla 25: Descripción de caso de uso Cambiar Estado

43
Ilustración 7: Diagrama de Caso de Usos Gestionar Plan Operativo Anual.

CASO DE USO: GESTIONAR PLAN OPERATIVO ANUAL

Caso de uso: Gestionar plan operativo anual Código: CU21


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción: desarrollo institucional ver los planes operativos anuales
creados.
Actores: Jefe de la unidad de planificación y desarrollo institucional.

44
Estar logueado con un usuario de tipo jefe de la unidad de
Precondiciones:
planificación y desarrollo institucional.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de
1 planificación solicita ver los planes
operativos anuales.
El sistema muestra el listado de los
2
planes operativos existentes.
El jefe de la unidad de
3 planificación solicita buscar uno o varios
planes operativos.
El sistema muestra un formulario con
4
los campos año inicio, año fin y estado.
El jefe de la unidad de
5 planificación ingresa los datos
solicitados.
El sistema muestra los planes
6 operativos que coinciden con los datos
ingresados en el formulario.
Tabla 26: Descripción de caso de uso Gestionar Plan Operativo Anual

CASO DE USO: CREAR PLAN OPERATIVO ANUAL

Caso de uso: Crear plan operativo anual Código: CU22


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo institucional crear nuevos planes operativos anuales.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Que se haya creado un plan quinquenal que abarque el año del
Precondiciones:
nuevo plan operativo.
Que se muestre el nuevo plan operativo en la pantalla de planes
Postcondiciones:
operativos.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de
1 planificación solicita ingresar un nuevo
plan operativo.
El sistema muestra un formulario con
2
los campos: plan estratégico y año.
El jefe de la unidad de
3
planificación ingresa los campos

45
solicitados por el sistema y solicita
guardar.
El sistema muestra un mensaje que no se
El sistema captura los datos ingresados, puede almacenar ese plan operativo
4 los almacena y devuelve un mensaje de 4.1 porque coincide con otro o no existe un
éxito. plan quinquenal que lo cubra, retorna al
paso 3.
Tabla 27: Descripción de caso de uso Crear Plan Operativo Anual

CASO DE USO: EDITAR PLAN OPERATIVO ANUAL

Caso de uso: Editar plan operativo anual Código: CU23


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo institucional editar un plan operativo anual.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: Que existan registros de por lo menos un plan operativo anual.
Postcondiciones: Que se muestre el cambio del año del plan operativo.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de
1 planificación selecciona editar un plan
operativo.
El sistema muestra un formulario con
2 los campos: plan estratégico y año con
sus valores actuales.
El jefe de la unidad de
3 planificación ingresa los valores que
desea cambiar y solicita guardar.
El sistema muestra un mensaje que no se
El sistema captura los datos ingresados, puede editar ese plan operativo porque
4 los almacena y devuelve un mensaje de 4.1 coincide con otro o no existe un plan
éxito. quinquenal que lo cubra, retorna al paso
3.
Tabla 28: Descripción de caso de uso Editar Plan Operativo Anual

CASO DE USO: ELIMINAR PLAN OPERATIVO ANUAL

Caso de uso: Eliminar plan operativo anual Código: CU24


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo institucional eliminar un plan operativo anual.

46
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: Que existan registros de por lo menos un plan operativo anual.
Postcondiciones: Que ya no se muestre el plan operativo anual eliminado.
Curso normal de eventos Flujo Alternativo
El sistema muestra el listado de planes
1
operativos existentes.
El jefe de la unidad de
2 planificación selecciona eliminar un
plan operativo del listado.
El sistema muestra un mensaje de
3 confirmación para eliminar el plan
anual.
El jefe de la unidad de
4 planificación confirma la eliminación
del plan operativo anual.
El sistema muestra un mensaje que no se
El sistema muestra un mensaje de éxito
puede eliminar ese plan operativo
5 y muestra el listado de los planes 5.1
porque ya hay registros en él, retorna al
operativos existentes.
paso 1.
Tabla 29: Descripción de caso de uso Eliminar Plan Operativo Anual

CASO DE USO: CERRAR MES

Caso de uso: Cerrar mes Código: CU32


Analista que escribió el CU Patricia Solano Fecha: 19/06/2020
Caso de uso que le permite al jefe de la unidad de planificación y
desarrollo institucional modificar las fechas de cierre de mes y la
Descripción:
configuración para el envió de correos electrónicos como
recordatorios de inicio y fin de periodo.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: N/A
Postcondiciones: Mostrar los datos actualizados.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
desarrollo institucional solicita ver la
1
programación del cierre de mes para el
plan operativo anual.
El sistema muestra una tabla con las
fechas de cierre para el plan operativo
2 anual y los campos para configurar el
envío de correos electrónicos como
recordatorios de inicio y fin de periodo.

47
El jefe de la unidad de planificación y El jefe de la unidad de planificación y
3 desarrollo institucional solicita editar 3a desarrollo institucional no edita las
las fechas de cierre de un mes. fechas de cierre y salta al paso 8.
El sistema muestra ventana emergente
4
para editar la fecha de inicio y fin.
El jefe de la unidad de planificación y
5 desarrollo institucional modifica las
fechas y solicita guardar.
6 El sistema actualiza los datos de la tabla.
Se repiten los pasos 3, 4,5 y 6 si se desea
7
editar otras fechas de cierre.
El jefe de la unidad de planificación y
El jefe de la unidad de planificación y
desarrollo institucional modifica los
8 8a desarrollo institucional solicita guardar
datos para el envío de correos
los cambios.
electrónicos y solicita guardar.
El sistema captura los datos, los El sistema no almacena los datos,
9 almacena y muestra un mensaje de 9a muestra mensaje de error y retorna al
éxito. paso 3.
Tabla 30: Descripción de caso de uso Cerrar Mes

CASO DE USO: CAMBIAR ESTADO

Caso de uso: Cambiar estado Código: CU33


Analista que escribió el CU Katherine Cerna Fecha: 24/05/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo cambiar el estado de un plan operativo anual.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Precondiciones: Estar en estado vigente o a programar.
Postcondiciones: Mostrar el nuevo estado vigente.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita cambiar
el estado del plan operativo anual.
El sistema muestra un formulario con el
2
estado actual y una descripción.
El jefe de la unidad de planificación y
3 desarrollo institucional selecciona otro
estado y solicita guardar.
El sistema captura los datos ingresados, 1- Si hubo un error al momento de
guardar el registro se mostrará un
4 los almacena y devuelve un mensaje de 4a
mensaje de error.
éxito.
2- El sistema retornara al paso 3.
Tabla 31: Descripción de caso de uso Cambiar Estado

48
CASO DE USO: REPORTAR AVANCE DE KPI

Caso de uso: Reportar Avance de KPI Código: CU34


Analista que escribió el CU Patricia Solano Fecha: 11/06/2020
Caso de uso que le permite al jefe de la unidad de planificación y
Descripción:
desarrollo institucional reportar el avance de un KPI.
Actores: Jefe de la unidad de planificación y desarrollo institucional.
Haber registrado el detalle de metas y límites de control según la
Precondiciones:
periodicidad del KPI.
Postcondiciones: Mostrar en el historial de ejecuciones la nueva ejecución.
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita dar
seguimiento a los KPI.
El sistema muestra el listado de los KPI
2
a reportar.
El jefe de la unidad de planificación y
3 desarrollo institucional solicita ver el
historial de ejecuciones del KPI.
El sistema muestra el historial de
4
ejecuciones del KPI seleccionado.
El jefe de la unidad de planificación y
5 desarrollo institucional solicita agregar
una nueva ejecución.
El sistema muestra el formulario con los
6
campos valor del KPI, logro y evidencia.
1- El jefe de la unidad de planificación y
desarrollo institucional ingresa el valor
del KPI menor al límite de control y
adjunta evidencia.
El jefe de la unidad de planificación y
2- El sistema muestra formulario con los
desarrollo institucional ingresa el valor
campos tipo de justificación y
del KPI mayor o igual al límite de 7a
justificación.
control, adjunta la evidencia y solicita
7 3- El jefe de la unidad de planificación y
guardar.
desarrollo institucional selecciona el tipo
de justificación, ingresa la justificación y
solicita guardar.
4- El sistema retorna al paso 8.
1- El jefe de la unidad de planificación y
desarrollo institucional ingresa el valor
7b
del KPI menor al límite de control y no
adjunta evidencia.

49
2- El sistema retorna al paso 7a.2.
El sistema captura los datos, los El sistema no almacena los datos,
8 almacena y muestra un mensaje de 8a muestra mensaje de error y retorna al
éxito. paso 7.
Tabla 32: Descripción de caso de uso Reportar Avance de KPI

CASO DE USO: REPORTAR AVANCE DE ACTIVIDAD

Caso de uso: Reportar Avance de Actividad Código: CU35


Analista que escribió el CU Katherine Cerna Fecha: 11/06/2020
Caso de uso que le permite al encargado de unidad reportar el
Descripción:
avance de una actividad del plan anual.
Actores: Encargado de unidad.
Se haya asignado por lo menos una actividad al área del
Precondiciones:
responsable.
Postcondiciones: Mostrar en el historial de ejecuciones la nueva ejecución.
Curso normal de eventos Flujo Alternativo
El encargado de unidad solicita dar
1 seguimiento a las actividades del plan
vigente.
El sistema muestra el listado de las
2
actividades.
El encargado de unidad solicita ver el
3 historial de ejecuciones de una
actividad.
El sistema muestra el historial de
4 ejecuciones de la actividad
seleccionada.
El encargado de unidad solicita agregar
5
una nueva ejecución.
El sistema muestra el formulario con los
6 campos mes, meta y acumulado por
defecto del mes vigente.
1- El encargado de ingresa el valor de la
El encargado de unidad ingresa el valor ejecución vigente y la suma de la
de la ejecución del mes vigente y la ejecución y el acumulado es menor a la
7
suma de la ejecución y el acumulado es 7a meta y adjunta evidencia.
mayor o igual a la meta, adjunta la 2- El sistema muestra formulario con los
evidencia y solicita guardar. campos tipo de justificación y
justificación.

50
3- El encargado de unidad selecciona el
tipo de justificación, ingresa la
justificación y solicita guardar.
4- El sistema retorna al paso 8.
1- El encargado de unidad ingresa el valor
de la ejecución de un mes adelantado
vigente y la suma de la ejecución y el
7b
acumulado es menor o igual a la meta,
adjunta evidencia y solicita guardar.
2- El sistema retorna al paso 8.
El sistema captura los datos, los El sistema no almacena los datos,
8 almacena y muestra un mensaje de 8a muestra mensaje de error y retorna al
éxito. paso 7.
Tabla 33: Descripción de caso de uso Reportar Avance de Actividad

CASO DE USO: VER AVANCE DE ACTIVIDAD

Caso de uso: Ver avance de actividad Código: CU36


Analista que escribió el CU Katherine Cerna Fecha: 11/06/2020
Caso de uso que le permite al jefe de unidad la unidad de
Descripción:
planificación ver el avance de las actividades de otras unidades.
Actores: Jefe de la unidad de planificación
Precondiciones: Que existan actividades asignadas a usuarios de otras unidades
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El jefe de la unidad de planificación y
1 desarrollo institucional solicita las
actividades vigentes.
El sistema muestra la lista de las
2 actividades vigentes de la unidad de
planificación.
El jefe de la unidad de planificación y
3 desarrollo institucional selecciona ver
las actividades de otra unidad.
El sistema despliega la lista de las
4 actividades vigentes de la unidad
seleccionada.
El jefe de la unidad de planificación y
5 desarrollo institucional solicita ver el
detalle de una actividad.
El sistema despliega un listado de los
6
avances ingresados de la actividad.

51
El jefe de la unidad de planificación y
7 desarrollo institucional solicita ver el
detalle de la actividad.
El sistema despliega los datos de avance
8
ingresado.
Tabla 34: ver avance de actividad

CASO DE USO: VER REPORTE

Caso de uso: Ver reporte Código: CU37


Analista que escribió el CU Patricia Solano Fecha: 19/06/2020
Caso de uso que le permite al encargado de unidad o jefe de la
Descripción:
unidad de planificación y desarrollo institucional ver un reporte.
Encargado de unidad y jefe de la unidad de planificación y
Actores:
desarrollo institucional.
Precondiciones: N/A
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El encargado de unidad o jefe de la
1 unidad de planificación y desarrollo
institucional solicita ver reportes.
El sistema muestra la lista de reportes
2
disponibles.
El encargado de unidad o jefe de la
3 unidad de planificación y desarrollo
institucional selecciona el reporte.
El sistema muestra un formulario con
4 los parámetros necesarios para generar
el reporte.
El encargado de unidad o jefe de la
unidad de planificación y desarrollo
5
institucional ingresa los parámetros y
solicita generar el reporte.
El sistema descarga el reporte con los El sistema no genera el reporte, muestra
6 6a
parámetros solicitados. mensaje de error y retorna al paso 3.
Tabla 35: Descripción de caso de uso Ver Reporte

52
Módulo de Administración

Ilustración 8: Diagrama de Caso de Usos General del Módulo de Administración.

Ilustración 9: Diagrama de Caso de Usos Gestionar Unidad Organizativa.

53
CASO DE USO: GESTIONAR UNIDAD ORGANIZATIVA

Caso de uso: Gestionar Unidad Organizativa Código: CU38


Analista que escribió el CU Elena García Fecha: 19/06/2020
Caso de uso que le permite al administrador gestionar las
Descripción: diferentes unidades de la organización, así como agregar editar y
eliminar.
Actores: Administrador.
Precondiciones: Haber iniciado sesión con el usuario correspondiente.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
1 El administrador solicita ver las
unidades organizativas.
2 El sistema muestra el listado de las 2a Si no hay unidades organizativas el
unidades organizativas mostrando la sistema mostrara mensaje “No ha
raíz y las dependencias de esta, así registrado unidades organizativas, puede
como los cargos. empezar a registrarlas haciendo clic
aquí.”
Tabla 36: Descripción de caso de uso Gestionar Unidad Organizativa

CASO DE USO: CREAR UNIDAD ORGANIZATIVA

Caso de uso: Agregar Unidad Organizativa Código: CU39


Analista que escribió el CU Elena García Fecha: 19/06/2020
Caso de uso que le permite al administrador agregar una
Descripción:
nueva unidad organizativa.
Actores: Administrador
Precondiciones: N/A
Mostrar en la lista de unidades organizativas la nueva unidad
Postcondiciones:
organizativa.
Curso normal de eventos Flujo Alternativo
El administrador solicita agregar
1
una unidad organizativa.
El sistema muestra una ventana
emergente solicitando los datos:
2
nombre de la unidad organizativa y
estado.
El administrador ingresa los datos
3
solicitados y solicita guardar.

54
Si hubo un error al momento de guardar
El sistema captura los datos, los
4 4a el registro se mostrará mensaje de error
almacena y muestra mensaje de éxito.
y Retornará al paso 1.
Tabla 37: Descripción de caso de uso Crear Unidad Organizativa

CASO DE USO: EDITAR UNIDAD ORGANIZATIVA

Caso de uso: Editar Unidad Organizativa Código: CU40


Analista que escribió el CU Elena García Fecha: 19/06/2020
Caso de uso que le permite al administrador editar una unidad
Descripción:
organizativa.
Actores: Administrador.
Precondiciones: Haber creado al menos una unidad organizativa.
Mostrar en la lista de unidades organizativas la
Postcondiciones:
unidad organizativa con los cambios realizados.
Curso normal de eventos Flujo Alternativo
El administrador solicita editar unidad
1
organizativa.
1 si no hay unidades organizativas el
El sistema muestra una ventana
sistema mostrara mensaje “No se han
2 emergente con los datos de la unidad 2a
registrado unidades organizativas, haga
organizativa seleccionada.
clic AQUÍ para registrar una”
El administrador ingresa los datos de
3 la unidad organizativa que desea
cambiar y solicita guardar.
1-Si hubo un error al momento de
El sistema captura los datos, los guardar el registro se mostrará mensaje
4 4a
almacena y muestra mensaje de éxito. de error.
2-retornara al paso 1.
Tabla 38: Descripción de caso de uso Editar Unidad Organizativa

CASO DE USO: DESACTIVAR UNIDAD ORGANIZATIVA

Caso de uso: Desactivar Unidad Organizativa Código: CU41


Analista que escribió el CU Elena García Fecha: 19/06/2020
Caso de uso que le permite al administrador desactivar una unidad
Descripción:
organizativa.
Actores: Administrador.
Precondiciones: Haber creado al menos una unidad organizativa.
Mostrar en la lista de unidades organizativas la unidad organizativa con
Postcondiciones:
estado inactivo.

55
Curso normal de eventos Flujo Alternativo
El administrador solicita editar una unidad
1
organizativa.
El sistema muestra los datos de la unidad
2
organizativa.
El administrador solicita desactivar una
3
unidad organizativa y da clic en guardar.
El sistema confirma la correcta modificación
y cambia el estado a inactivo de las unidades 1-Si hubo error al guardar el registro se
4 de apoyo, subunidades y cargos asociados. 4a mostrará mensaje de error.
Muestra la unidad organizativa con su 2-Retornara al paso 1.
estado inactivo.
Tabla 39: Descripción de caso de uso Desactivar Unidad Organizativa

56
Módulo de Seguridad

Ilustración 10: Diagrama de Caso de Usos General del Módulo de Seguridad.

Ilustración 11: Diagrama de Caso de usos Gestionar Usuario.

57
CASO DE USO: CREAR USUARIO

Caso de uso: Crear Usuario Código: CU58


Analista que escribió el CU Roberto Castro Fecha: 20/06/2020
Descripción: Caso de uso que le permite al administrador crear un Usuario.
Actores: Administrador.
Precondiciones: N/A
Postcondiciones: Mostrar en la lista de usuarios el nuevo usuario.
Curso normal de eventos Flujo Alternativo
El administrador solicita crear un nuevo
1
usuario.
El sistema muestra el formulario con los
campos de datos personales, datos de
2
puesto, y el listado de roles que tendrá
el usuario.
El administrador ingresa los datos,
3 selecciona todos los roles para el
usuario y solicita guardar.
El sistema captura los datos, los El sistema no almacena los datos,
4 almacena y muestra un mensaje de 4a muestra mensaje de error y retorna al
éxito. paso 1.
Tabla 40: Descripción de caso de uso Crear Usuario

CASO DE USO: EDITAR USUARIO

Caso de uso: Editar Usuario Código: CU59


Analista que escribió el CU Roberto Castro Fecha: 20/06/2020
Descripción: Caso de uso que le permite al administrador editar un Usuario.
Actores: Administrador.
Precondiciones: Haber creado al menos un Usuario
Postcondiciones: Mostrar en la lista de roles el usuario actualizado.
Curso normal de eventos Flujo Alternativo
El administrador solicita editar los datos
1
de un usuario.
El sistema muestra el formulario para
2
editar los datos.
El administrador modifica los datos y
3
solicita guardar.
El sistema captura los datos, los El sistema no almacena los datos,
4 almacena y muestra un mensaje de 4a muestra mensaje de error y retorna al
éxito. paso 1.
Tabla 41: Descripción de caso de uso Editar Usuario

58
CASO DE USO: DESACTIVAR USUARIO

Caso de uso: Desactivar Usuario Código: CU60


Analista que escribió el CU Roberto Castro Fecha: 20/06/2020
Caso de uso que le permite al administrador suspender el acceso
Descripción:
al sistema de un usuario.
Actores: Administrador.
Precondiciones: Haber creado al menos un rol.
Postcondiciones: Mostrar al usuario con estado inactivo en el listado de usuarios.
Curso normal de eventos Flujo Alternativo
1 El administrador selecciona el usuario.
2 El sistema muestra los datos de usuario
El administrador cambia el estado e
3
inactivo y solicita guardar.
El sistema no cambia el estado del rol,
El sistema guarda el estado y muestra
4 4a muestra un mensaje de error y retorna al
un mensaje de éxito.
paso 1.
Tabla 42: Descripción de caso de uso Desactivar Usuario

CASO DE USO: CAMBIAR CONTRASEÑA PROPIA

Caso de uso: Cambiar contraseña propia Código: CU65


Analista que escribió el CU Roberto Castro Fecha: 20/06/2020
Caso de uso que le permite a cualquier usuario cambiar su
Descripción:
contraseña.
Actores: Cualquier usuario
Precondiciones: Haber iniciado sesión.
Postcondiciones: Permitir al usuario iniciar sesión con la nueva contraseña.
Curso normal de eventos Flujo Alternativo
El usuario solicita cambiar su
1
contraseña
El sistema muestra un formulario para
2 ingresar la contraseña actual, la nueva y
repetirla.
3 El usuario solicita guardar los cambios.
El sistema no cambia la contraseña,
El sistema guarda la nueva contraseña y
4 4a muestra un mensaje de error y retorna al
muestra un mensaje de éxito.
paso 1.
Tabla 43: Descripción de caso de uso Cambiar Contraseña Propia

59
CASO DE USO: RECUPERAR CONTRASEÑA

Caso de uso: Recuperar contraseña Código: CU66


Analista que escribió el CU Roberto Castro Fecha: 20/06/2020
Caso de uso que le permite a cualquier usuario recuperar su
Descripción:
contraseña para ingresar al sistema
Actores: Cualquier usuario
Precondiciones: Tener una cuenta de usuario
Postcondiciones: Permitir al usuario iniciar sesión con la nueva contraseña.
Curso normal de eventos Flujo Alternativo
El usuario solicita recuperar su
1
contraseña
El sistema envía un correo de
2 recuperación a la cuenta de correo
ingresada.
El usuario ingresa el código y la nueva
3
contraseña y solicita guardar.
El sistema no cambia la contraseña,
El sistema guarda la nueva contraseña y
4 4a muestra un mensaje de error y retorna al
muestra un mensaje de éxito.
paso 1.
Tabla 44: Descripción de caso de uso Recuperar Contraseña

60
Módulo de Permisos

Ilustración 12: Diagrama de Caso de Usos General del Módulo de Permisos.

61
CASO DE USO: CONSULTAR TIEMPO DISPONIBLE

Caso de uso: Consultar Tiempo Disponible Código: CU67


Analista que escribió el CU Patricia Solano Fecha: 17/11/2020
Caso de uso que le permite a un empleado consultar el tiempo
Descripción:
disponible para cada tipo de permiso.
Actores: Empleado
Precondiciones: Haber iniciado sesión.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El empleado solicita ver el tiempo
1
disponible.
El sistema muestra el listado de los tipos
2 de permisos con la cantidad de horas
disponibles para cada uno.
Tabla 45: Descripción de caso de uso Consultar Tiempo Disponible

CASO DE USO: SOLICITAR PERMISO

Caso de uso: Solicitar Permiso Código: CU68


Analista que escribió el CU Patricia Solano Fecha: 17/11/2020
Caso de uso que le permite a un empleado solicitar un permiso
Descripción:
para ausentarse.
Actores: Empleado
Precondiciones: Haber iniciado sesión.
Postcondiciones: La nueva solicitud debe aparecer en el listado de permisos.
Curso normal de eventos Flujo Alternativo
El empleado solicita registrar una nueva
1
solicitud de permiso.
El sistema muestra el formulario con los
campos tipo de permiso, justificación,
2
evidencia y el apartado para detallar los
días y horas de ausencia.
El empleado ingresa los campos
3 solicitados, detalla los días y horas de
ausencia y solicita guardar.
El sistema captura los datos, los El sistema no almacena los datos,
4 almacena y devuelve un mensaje de 4a muestra mensaje de error y retorna al
éxito. paso 3.
Tabla 46: Descripción de caso de uso Solicitar Permiso

62
CASO DE USO: CONSULTAR TIEMPO DISPONIBLE DE OTROS

Consultar tiempo disponible de


Caso de uso: Código: CU78
otros
Analista que escribió el CU Katherine Cerna Fecha: 23/11/2020
Caso de uso que le permite al encargado de permisos consultar
Descripción:
el tiempo disponible por permiso de cada empleado.
Actores: Encargado de Permisos (Administrador)
Precondiciones: Tener permisos de administrador
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El encargado de permisos solicita ver los
1
tiempos disponibles de los empleados
Es sistema muestra una lista de los
2
empleados activos.
El encargado de permisos selecciona ver
3
los tiempos de un empleado.
El sistema muestra una lista de los tipos
4 de permisos activos y las horas que
tiene disponible.
Tabla 47: Descripción de caso de uso Consultar Tiempo Disponible de otros

CASO DE USO: VER PERMISOS DE OTROS

Caso de uso: Ver Permisos de otros Código: CU79


Analista que escribió el CU Katherine Cerna Fecha: 23/11/2020
Caso de uso que le permite al encargado de permisos consultar
Descripción:
los permisos que han solicitado un empleado
Actores: Encargado de Permisos (Administrador)
Precondiciones: Tener permisos de administrador
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El encargado de permisos solicita ver los
1
permisos de un empleado.
Es sistema muestra los datos personales
2
y la lista de permisos solicitados.
El encargado de permisos solicita ver el
3
detalle de uno de los permisos de la lista
El sistema despliega los datos
4
personales y los detalles del permiso
Tabla 48: Descripción de caso de uso Ver Permisos de Otros

63
CASO DE USO: CARGAR ASISTENCIAS

Caso de uso: Cargar asistencias Código: CU80


Analista que escribió el CU Katherine Cerna Fecha: 23/11/2020
Le permite al encargado de permisos almacenar los datos de
Descripción:
asistencia diarios.
Actores: Encargado de Permisos (Administrador)
Tener el registro de empleados con sus respectivos códigos de
Precondiciones:
marcación
Postcondiciones: Generación de ausencias del día
Curso normal de eventos Flujo Alternativo
El encargado de permisos solicita cargar
1
la asistencia de uno o varios días
El sistema despliega una lista con los
2
datos de carga de días anteriores
El encargado de permisos selecciona el
3
botón de agregar
4 El sistema despliega un formulario
El encargado de permisos ingresa el
rango de fechas de las asistencias que
5
va a cargar, el archivo xlsx y selecciona
guardar
El sistema despliega un mensaje de El sistema despliega un mensaje de error
6 6a
confirmación de la carga de la asistencia de carga de asistencia
Tabla 49: Descripción de caso de uso Cargar Asistencias

CASO DE USO: VER MIS APROBACIONES

Caso de uso: Ver mis aprobaciones Código: CU81


Analista que escribió el CU Patricia Solano Fecha: 18/11/2020
Caso de uso que le permite al jefe consultar los permisos que ha
Descripción:
aprobado.
Actores: Jefe
Precondiciones: Haber iniciado sesión.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El jefe solicita ver los permisos que ha
1
aprobado.
El sistema muestra el listado de
2
permisos aprobados.
Tabla 50: Descripción de caso de uso Ver mis Probaciones

64
CASO DE USO: APROBAR PERMISO

Caso de uso: Aprobar Permiso Código: CU82


Analista que escribió el CU Patricia Solano Fecha: 18/11/2020
Caso de uso que le permite a un jefe aprobar una solicitud de
Descripción:
permiso.
Actores: Jefe
Haber iniciado sesión y tener al menos una solicitud pendiente
Precondiciones:
de aprobar.
Postcondiciones: N/A
Curso normal de eventos Flujo Alternativo
El jefe solicita ver las solicitudes de
1
permisos.
El sistema muestra el listado de
2
solicitudes.
3 El jefe selecciona la solicitud a aprobar.
El sistema muestra una ventana con las
4
acciones para la solicitud.
5 El jefe solicita aprobar el permiso.
El sistema muestra una ventana con el
6
campo contraseña.
El jefe ingresa su contraseña y confirma
7
la aprobación.
El sistema muestra mensaje de error y
8 El sistema muestra mensaje de éxito. 8a
retorna al paso 7.
Tabla 51: Descripción de caso de uso Aprobar Permiso

Para visualizar los Diagramas de Caso Uso y los narrados de los Casos de Uso
restante, consulte la ubicación siguiente: DOCUMENTOS/ANALISIS-
DISEÑO.PDF en el CD.

65
2.5. Diagramas de Actividades

A continuación, se presentan los diagramas de caso de uso más relevantes del sistema
informático propuesto:

Módulo de Planificación
DIAGRAMA DE ACTIVIDADES: GESTIONAR QUINQUENIO

Ilustración 13: Diagrama de actividades Gestionar Quinquenio

66
DIAGRAMA DE ACTIVIDADES: CREAR PLAN QUIENQUENAL

Ilustración 14: Diagrama de actividades Crear Plan Quinquenal

67
DIAGRAMA DE ACTIVIDADES: EDITAR PLAN QUIENQUENAL

Ilustración 15: Diagrama de actividades Editar Plan Quinquenal

68
DIAGRAMA DE ACTIVIDADES: EDITAR FECHAS DE CIERRE

Ilustración 16: Diagrama de actividades Editar Fechas de Cierre

69
DIAGRAMA DE ACTIVIDADES: CAMBIAR ESTADO

Ilustración 17: Diagrama de actividades Cambiar Estado

70
DIAGRAMA DE ACTIVIDADES: VER REPORTE

Ilustración 18: Diagrama de actividades Ver Reporte

71
DIAGRAMA DE ACTIVIDADES: REPORTAR AVANCE DE KPI

Ilustración 19: Diagrama de actividades Reportar Avance de KPI

72
DIAGRAMA DE ACTIVIDADES: GESTIONAR PLAN OPERATIVO

Ilustración 20: Diagrama de actividades Gestionar Plan Operativo

73
DIAGRAMA DE ACTIVIDADES: CREAR PLAN OPERATIVO

Ilustración 21: Diagrama de actividades Crear Plan Operativo

74
DIAGRAMA DE ACTIVIDADES: EDITAR PLAN OPERATIVO

Ilustración 22: Diagrama de actividades Editar Plan Operativo

75
DIAGRAMA DE ACTIVIDADES: ELIMINAR PLAN OPERATIVO

Ilustración 23: Diagrama de actividades Eliminar Plan Operativo

76
DIAGRAMA DE ACTIVIDADES: CERRAR MES

Ilustración 24: Diagrama de actividades Cerrar Mes

77
DIAGRAMA DE ACTIVIDADES: CAMBIAR ESTADO

Ilustración 25: Diagrama de actividades Cambiar Estado

78
DIAGRAMA DE ACTIVIDADES: REPORTAR AVANCE DE ACTIVIDAD

Ilustración 26: Diagrama de actividades Reportar Avances de Actividad

79
DIAGRAMA DE ACTIVIDADES: VER AVANCE DE ACTIVIDAD

Tabla 52: Ver avance de actividad

80
Módulo de Administración

DIAGRAMA DE ACTIVIDADES: GESTIONAR UNIDAD ORGANIZATIVA

Ilustración 27: Diagrama de actividades Gestionar Unidad Organizativa

81
DIAGRAMA DE ACTIVIDADES: CREAR UNIDAD ORGANIZATIVA

Ilustración 28: Diagrama de actividades Crear Unidad Organizativa

82
DIAGRAMA DE ACTIVIDADES: EDITAR UNIDAD ORGANIZATIVA

Ilustración 29: Diagrama de actividades Editar Unidad Organizativa

83
DIAGRAMA DE ACTIVIDADES: DESACTIVAR UNIDAD ORGANIZATIVA

Ilustración 30: Diagrama de actividades Desactivar Unidad Organizativa

84
Módulo de Seguridad

DIAGRAMA DE ACTIVIDADES: CREAR USUARIO

Ilustración 31: Diagrama de actividades Crear Usuario

85
DIAGRAMA DE ACTIVIDADES: EDITAR USUARIO

Ilustración 32: Diagrama de actividades Editar Usuario

86
DIAGRAMA DE ACTIVIDADES: DESACTIVAR USUARIO

Ilustración 33: Diagrama de actividades Desactivar Usuario

87
DIAGRAMA DE ACTIVIDADES: CAMBIAR CONTRASEÑA PROPIA

Ilustración 34: Diagrama de actividades Cambiar Contraseña Propia

88
DIAGRAMA DE ACTIVIDADES: RECUPERAR CONTRASEÑA

Ilustración 35: Diagrama de actividades Recuperar Contraseña

89
Módulo de Permisos

CASO DE USO: CONSULTAR TIEMPO DISPONIBLE

Ilustración 36: Diagrama de actividades Consultar Tiempo Disponible

90
CASO DE USO: SOLICITAR PERMISO

Ilustración 37: Diagrama de actividades Solicitar Permiso

91
CASO DE USO: CONSULTAR TIEMPO DISPONIBLE DE OTROS

Ilustración 38: Diagrama de actividades Consultar Tiempo Disponible de Otros

92
CASO DE USO: CARGAR ASISTENCIAS

Ilustración 39: Diagrama de actividades Cargar Asistencias

93
CASO DE USO: VER MIS APROBACIONES

Ilustración 40: Diagrama de actividades Ver mis Aprobaciones

94
CASO DE USO: APROBAR PERMISO

Ilustración 41: Diagrama de actividades Aprobar Permiso

Para visualizar los Diagramas de Actividad restante, consulte la ubicación


siguiente: DOCUMENTOS/ANALISIS-DISEÑO.PDF en el CD.

95
3.CAPÍTULO III: DISEÑO

96
3.1. Definición de estándares de desarrollo

3.1.1. Interfaces de usuario

Estructura general de interfaz web


A continuación, se presenta el estándar a usar para la ubicación de los elementos que contienen
las páginas.

Ilustración 42: Estructura general de interfaz web

97
Estructura general de interfaz móvil

Ilustración 43: Estructura general de interfaz móvil

Botones aplicación web

Botón Acción Descripción Color


Crear Muestra el formulario para agregar un nuevo registro. #008100

Editar Muestra el formulario con los datos del registro a #008100


editar.
Eliminar Muestra mensaje de confirmación de eliminación. #B90B00

Ver Muestra el detalle del registro. #3E59AB

Filtrar Muestra formulario para filtrar los registros. #3E59AB

Descargar Descarga el archivo. #008100

Tabla 53: Estándar de botones para aplicación web

98
Botones aplicación móvil

Botón Acción Descripción


Agregar Muestra otra pantalla para agregar datos al formulario.

Dirigir Se muestra en la pantalla para dirigir a otra pantalla.

Pendientes Muestra las solicitudes pendientes de aprobar

Todos Muestra todas las solicitudes


Aprobados Muestra las solicitudes pendientes

Tabla 54: Estándar de botones para aplicación móvil

Mensajes aplicación web

• Mensajes de confirmación: este estándar se aplica cuando se requiera la confirmación del


usuario para realizar una acción.

Ilustración 44 : Estándar de mensaje de confirmación

• Mensajes de alertas: este estándar se aplica para los mensajes de éxito, información,
error y advertencia.

Ilustración 45: Estándar de mensaje de alerta

Los mensajes de alerta se diferencian según el tipo con diferentes colores.

99
Tipo de mensaje Color de fondo
Éxito #f8b7bd
Información #7fbcec
Error #b7d8b7
Advertencia #ffe399
Tabla 55: Tipos de mensajes de alerta

Mensajes aplicación móvil

• Mensajes de confirmación: este estándar se aplica cuando se requiera la confirmación del


usuario para realizar una acción.

Ilustración 46: Estándar de mensaje de confirmación aplicación móvil

• Mensajes de alertas: este estándar se aplica para los mensajes de éxito, información,
error y advertencia.

Ilustración 47: Estándar de mensaje de alerta de aplicación móvil

100
Reportes

Los reportes deben generarse en los siguientes formatos: PDF, Word y Excel. Además, deben
llevar la siguiente estructura:

Ilustración 48: Estructura de los reportes

3.1.2. Base de datos

Nombre de tablas

Para el nombramiento de las tablas se debe tomar en cuenta lo siguiente:


• Se deben usar nombres auto-descriptivos y evitar el uso de abreviaciones.
• Los nombres deben especificarse en singular.
• Los nombres deben estar escritos en minúsculas y sin tildes.
• Únicamente se usan caracteres alfabéticos, a excepción de los nombres compuestos por
dos o más palabras, estas deben estar separadas por un guion bajo (_).
Ejemplos: iniciativa, actividad, plan_estrategico, ejecucion_gradual.

101
Nombre de atributos

Deben estar escritos en minúsculas y sin tildes, en el caso que tengan dos o más palabras estas
se separan mediante el uso de guion bajo (_).
Ejemplos: descripcion, fecha_ingreso, monto_financiamiento.
Para el caso de las llaves primarias estas deben ubicarse al inicio de la definición de la tabla y
serán nombradas “id”.
El nombre de la columna que contenga una llave foránea, debe definirse con el nombre de la
tabla a la que hace referencia seguida de la palabra “id”. Ejemplos: estado_plan_id, actividad_id.

Nombre de procedimientos

Los procedimientos pueden nombrarse de acuerdo a lo que realizan dentro de la base de datos,
deben comenzar con el prefijo “proc_”, estar escritos en minúsculas y las palabras se separan
usando guion bajo (_).
Ejemplo: proc_ingresar_avance.

Nombre de vistas

Debe usarse un nombre significativo de la información que contienen utilizando el prefijo


“view_”, las palabras se separan con guion bajo (_) y se escribe en minúsculas.
Ejemplo: view_planes_vigentes.

Nombre de Triggers

Se utilizará el prefijo “trig_” seguido del nombre referente a la acción del trigger y del nombre de
la tabla, se escribirá en minúsculas y las palabras se separan usando guion bajo (_).
Ejemplo: trig_actualizar_iniciativa.

102
3.1.3. Programación

Los estándares a cumplir para la programación del backend y frontend se presentan a


continuación:

Nombres de los métodos o funciones

Se escriben en minúsculas, si el nombre está compuesto por más de una palabra la primera
palabra se escribe toda en minúscula y las siguientes con la inicial en mayúscula.
Ejemplo: buscarPorPlan.

Nombres de variables

Se escriben en minúsculas, si el nombre está compuesto por más de una palabra la primera
palabra se escribe toda en minúscula y las siguientes con la inicial en mayúscula, sin usar
separadores.
Ejemplo: idPlan.
Los nombres de las variables serán descriptivos, de tal forma que se podrá saber el uso y finalidad
con solo ver el nombre.

Nombres de constantes

Se escriben en mayúscula, si está compuesto por más de una palabra se separan por un guion
bajo (_).
Ejemplo: DIAS_CIERRE.

Nombre de clases

Se escriben con la primera letra en mayúscula y las demás en minúscula, si está compuesto por
más de una palabra, las demás palabras se escriben de la misma forma que la primera sin
separadores entre palabras.
Ejemplo: UnidadMedida.
Si la clase tiene una funcionalidad específica se define en el nombre como sufijo.
Ejemplo: UnidadMedidaComponent, UnidadMedidaService, UnidadMedidaController.

103
Nombre de interfaces Java

Las interfaces se nombran siguiendo los mismos criterios de las clases solo se les agrega el prefijo
“I”.

Comentarios para describir el código

Se pueden utilizar bloques de comentarios o comentarios de una sola línea. Esto dependerá de
lo que se requiera describir y se apegará a los estándares de documentación interna.

3.1.4. Documentación

Interna

El estándar a aplicar para documentar el código fuente es el siguiente:

• Encabezado
Se debe agregar un comentario de bloque al inicio de cada archivo, a excepción de los
archivos HTML y CSS que tengan pocas líneas de código y no presenten ninguna
complejidad, será opcional agregarles este comentario.
En el encabezado se debe especificar la siguiente información:
➢ Descripción: se debe detallar de forma general la función o el uso que tiene el
archivo.
➢ Autores: nombre y apellido de cada integrante del equipo de trabajo, ordenados
alfabéticamente por el apellido.
➢ Fecha de creación: en el formato dd/mm/yyyy.

• Contenido
Para las funciones o métodos complejos se debe agregar un comentario de bloque con la
siguiente información:
➢ Descripción
➢ Parámetros que recibe
➢ Parámetros que envía
➢ Fecha de creación
También deben existir otros comentarios que se consideren necesarios para el debido
entendimiento del código fuente, generalmente se usa el comentario de línea, pero si se
requiere se puede usar comentario de bloque.

104
Externa

Estructura general de los manuales:

• Portada
Se debe especificar el título del manual, el nombre del sistema, nombre de la institución
y la fecha de elaboración.
• Tabla de contenido
Es el reflejo de la estructura del documento y contiene el listado de los temas que forman
el manual.
• Introducción
Contiene la descripción del documento.
• Contenido del manual
Se detalla la información propia del manual, contiene capturas de pantalla que sirven para
ilustrar el desarrollo de los procesos que describe el manual.
En el manual de usuario se debe incluir la iconografía utilizada en el sistema.
• Glosario
Catalogo alfabético de palabras que son difíciles de comprender con su significado.

105
3.2. Diseño arquitectónico de la solución

La arquitectura utilizada es REST, se presenta con la técnica vistas 4 + 1. Las vistas a tratar son:
1. Vista de Casos de Uso.
Se tiene una descripción breve sobre la característica del sistema que representa y el actor
involucrado, además del narrado del mismo. Se utiliza el diagrama de casos de uso en
notación UML. Estos son tratados en el apartado 2.4 “Diagrama de Casos de Uso”.

2. Vista Lógica
Se manejan los conceptos del problema desde la perspectiva de modelo de dominio y
diagrama Entidad Relación. El modelo de dominio es tratado en el aparatado homónimo
3.4; mientras que el diagrama ER es discutido en el 3.5 “Modelo Conceptual”.

3. Vista de Implementación
Se describen los componentes del sistema, se utiliza el diagrama de componentes. Dicho
diagrama es tratado en el apartado 3.2.1 “Implementación”.

4. Vista de Despliegue
Se muestra la relación entre los macro componentes del sistema y el hardware que los
proveerá. Se utiliza el diagrama de despliegue, el cual se discute en el apartado 3.2.2
“Despliegue”.

5. Vista de Procesos
Cuenta con la descripción de los procesos principales del sistema por medio de diagramas
de actividades, se maneja a profundidad en el aparatado 2.5 “Diagrama de Actividades”.

3.2.1. Implementación

Los componentes han sido desarrollados respetando las buenas prácticas que dicta cada
Framework.
En el caso del Backend, internamente se descompone en 2 servidores, uno dedicado puramente
a la seguridad OAuth2 teniendo su configuración en un archivo propio; y otro servidor dedicado
a presentar los recursos con que cuenta el servidor, también con su propio archivo de
configuración.
El servidor de recursos espera recibir un token JWT para cada petición de recursos, este token
deberá ser encriptado y firmado por el servidor de autenticación, misma firma que el servidor de
recursos utilizará para des encriptar dicho token. El servidor de recursos cuenta también con un
Exception Handler, el cual se encarga de cachar excepciones que reciba o emita un controlador.

106
Estas excepciones son mapeadas a un formato en específico, el cual tanto el front end como la
aplicación móvil utilizan para mostrar dicho error al usuario.
Ambos servidores tienen en común el modelo en capas Controller – Service – Repository – Entity.

• Controller: Reciben y validan peticiones HTTP a la URL de su dominio.


• Service: Sirven como capa protectora para los métodos del Repository.
• Repository: Se encarga de implementar consultas SQL hacia la base de datos.
• Entity: Denota, en términos de POO, la estructura de una tabla en específico.

Ilustración 49: Diagrama de componentes Backend

Por otro lado, en el Frontend, la aplicación se descompone en pequeñas porciones llamadas


Módulos, cada módulo se va cargando en el momento que se requiera, permitiendo que, al

107
momento de utilizar la aplicación, se cargue solamente las partes en específico que están siendo
utilizadas.
El módulo principal es “App Module”, este es cargado al iniciar la aplicación en el navegador web,
se encarga de manejar la seguridad, provee pantallas de uso común, como pantalla NOT FOUND
o pantalla FORBIDDEN, LOGIN, entre otras; se encarga también de proveer los componentes de
primefaces, los cuales son utilizados para la presentación y aspecto estético del sitio. Así mismo,
es encargado de llamar los otros módulos a medida va siendo requerido, por ejemplo, al
necesitarse el Módulo de Plan estratégico, con todas sus pantallas y sus permisos, es este módulo
el encargado de cargarlo.
Junto al App Module, se cargan también auxiliares para la aplicación, como lo es RxJS, el cual se
encarga de proveer de funciones reactivas al proyecto; interceptores para enviar el encabezado
JWT; y el cliente HTTP para comunicarse con el Backend.
Cada módulo recibido tiene sus propias pantallas y su propio archivo de enrutamiento, es decir,
conoce como navegar entre las mismas; este archivo de enrutamiento contiene también los
permisos necesarios para acceder a cada pantalla. Para validar que el usuario tenga un permiso
o permisos, se comunica con el Auth Guard, el cual se encarga de determinar si un usuario tiene
o no el permiso que el archivo de enrutamiento especifica.

Ilustración 50: Diagrama de componentes Frontend

108
Finalmente, la aplicación móvil posee una estructura idéntica al componente web, dado que Ionic
trabaja montado sobre componentes Angular. Las diferencias principales son:
1. Modulo para presentación: Se cambió el módulo de Primefaces por el módulo de Ionic,
ya que los componentes de este último son pensados con diseño móvil como prioridad.
2. Granularidad de los módulos: En el caso del componente web, cada módulo podía ser una
o más pantallas, mientras que, en el caso móvil cada pantalla consiste en su propio
modulo, de esta forma, la carga en memoria de pantallas se va dando a medida se va
necesitando.

Ilustración 51: Diagrama de componentes Frontend móvil

3.2.2. Despliegue

El despliegue se realizará utilizando la infraestructura con la que cuenta DIGESTYC.


La base de datos estará en su propio servidor SQL, el motor será PostgreSQL, el cual ya se
encuentra configurado para aceptar peticiones bajo una IP y puerto.
El Backend, al ser una aplicación hecha con Spring Boot, consiste en un archivo WAR, el cual será
desplegado en un servidor Tomcat, este servidor se encargará de descomprimir y configurar los
endpoints para el mismo.
El Frontend, al ser una aplicación hecha con Angular, consiste solamente en archivos JS, CSS y
HTML, estos recursos serán servidos por un servidor IIS de Microsoft. Hay que tener en cuenta
que, al compilar la aplicación, es necesario que los servicios de la misma apunten a los endpoints
del servidor Tomcat.

109
La aplicación móvil será entregada en dos componentes:
1. Proyecto de Ionic con NPM, el cual podrá ser modificado para hacer cambios sobre la
aplicación, a partir de este podrá generarse el siguiente componente de esta lista.
2. Proyecto Android con Gradle, la versión que entregaremos contendrá la APK del proyecto
finalizado. Será responsabilidad de DIGESTYC gestionar los recursos necesarios para
distribuir esta APK entre los usuarios y utilizando los métodos que ellos consideren
adecuados.

Ilustración 52: Diagrama de Despliegue

110
3.3. Diseño de interfaces de usuario

Diseño del Plan Quinquenal

Ilustración 53: Lista de Planes Estratégicos, crear, editar y filtrar

111
Ilustración 54: Cierre de Trimestres

112
Ilustración 55: Configuración de Estado de planes

113
Diseño del Plan Operativo

Ilustración 56: Lista de planes anuales, crear, editar y filtrar

114
Ilustración 57: Cierre Mensual

115
Ilustración 58: Cambiar estado del plan operativo

116
Seguimiento de Indicadores

Ilustración 59: Lista de indicadores a reportar

117
Ilustración 60: Historial de ejecuciones

118
Ilustración 61: Informar indicador

119
Seguimiento de Actividades

Ilustración 62: Lista de actividades a reportar- jefe de la unidad de planificación

120
Ilustración 63: Lista de actividades a reportar – jefe de unidad

121
Ilustración 64: Historial de ejecuciones

122
Ilustración 65: Ingreso de ejecuciones

123
Reportes

Ilustración 66: Generación de reporte

124
Ilustración 67: Plan Quinquenal

125
Ilustración 68: Plan Operativo

Ilustración 69: Programación anual de indicadores

126
Ilustración 70: Seguimiento de indicadores trimestral

Ilustración 71: Seguimiento mensual de actividades

127
Ilustración 72: Seguimiento anual de indicadores

128
Ilustración 73: Seguimiento anual de actividades

129
Catálogos y administración

Ilustración 74: Sin unidades organizativas creadas

130
Ilustración 75: Unidad Organizativa principal, lista de cargos y unidades de apoyo y subordinadas

131
Seguridad

Ilustración 76: Lista de usuarios

132
Ilustración 77: Crear usuario

133
Ilustración 78: Crear Rol

134
Ilustración 79: Datos del usuario

135
Ilustración 80: Cambio de contraseña

136
Permisos
WEB

Ilustración 81: Carga de asistencias

137
Ilustración 82: Tiempos disponibles.

138
Ilustración 83: Permisos realizados

139
Ilustración 84: Detalle del permiso

MOVIL

Ilustración 85: Solicitud de Permisos

140
Ilustración 86: Mis permisos solicitados

141
Ilustración 87: Solicitudes de permisos pendientes de aprobar

Para visualizar los Diseños de interfaces de usuario restante, consulte la


ubicación siguiente: DOCUMENTOS/ANALISIS-DISEÑO.PDF en el CD.

142
3.4. Modelo de dominio

El modelo de dominio ha sido dividido en 6 partes, con la finalidad de mantener una distinción
clara entre la finalidad de cada conjunto de clases. Podría haberse mantenido solamente como
5, sin embargo, dado el tamaño de la planificación, se decidió desagregarla en planificación
estratégica y planificación operativa.

3.4.1. Seguridad

Contiene todas las clases relacionadas con la seguridad de la aplicación. Se hizo pensando en
brindar la mayor flexibilidad posible para el usuario, admitiendo el mapeo de muchos a muchos
entre Usuario – Rol y entre Rol – Permisos. Cabe aclarar que, para Rol y Permiso se utiliza Role y
Privilege, los cuales son los nombres que Spring Boot designa.

Ilustración 88: Modelo de dominio de Seguridad

143
3.4.2. Organización

Agrupa las clases que se encargan de modelar como se compone la estructura organizativa de
DIGESTYC.

Ilustración 89: Modelo de dominio de Organización

144
3.4.3. Catálogos

En este se agrupan todas las tablas que contienen datos que son requeridos por tablas varias, por
ejemplo, el Tipo de Justificación, es utilizado tanto por la planificación estratégica, como en la
operativa.

Ilustración 90: Modelo de dominio de Catálogos

145
3.4.4. Planificación Estratégica

Contiene todas las clases que modelan la planificación a largo plazo de la institución. Estas clases
están fuertemente relacionadas con las de catálogo y además con la planificación Operativa.

Ilustración 91: Modelo de dominio de Planificación Estratégica

146
3.4.5. Planificación Operativa

Esta contiene las clases que modelan los planes a corto de plazo de DIGESTYC. Está muy
relacionada con la planificación estratégica, específicamente, entre Plan Operativo – Plan
Estratégico, y Plan Operativo – Iniciativas.

Ilustración 92: Modelo de dominio de Planificación Operativa

147
3.4.6. Permiso

Contiene las clases que modelan la solicitud de permisos y el seguimiento de estos.

Ilustración 93: Modelo de dominio de Permisos

148
3.5. Modelo conceptual

Para el modelo conceptual se maneja el diagrama ER de la base de datos, este ha sido


descompuesto, al igual que el modelo de dominio, en 6 partes.
La diferencia entre este y el modelo de dominio, es que el primero cuenta con la especificación
de los tipos de datos que se maneja en la aplicación.

3.5.1. Seguridad
Privilege
id_pri <pi> Serial <M>
nombre_pri Variable characters (512) <M>
Password_Reset_Token etiqueta_pri Variable characters (517) <M>
descripcion Variable characters (128)
reset_token <pi> Variable characters (128) <M>
expiration_date Timestamp <M> Identifier_1 <pi>
Identifier_1 <pi>

solicita

Permisos_De_Rol

Usuario
id_usu <pi> Serial <M>
nombre_usu Variable characters (64) <M>
apellido_usu Variable characters (64) <M>
Role
correo_usu Variable characters (128) <M>
activo_usu Boolean <M> Roles_De_Usuario id_rol <pi> Serial <M>
password_usu Variable characters (512) <M> nombre_rol Variable characters (512) <M>
codigo_marcacion_usu Variable characters (64) <M> descripcion_rol Variable characters (2048)
fecha_contratacion_usu Date <M> Identifier_1 <pi>
Identifier_1 <pi>

Ilustración 94: Modelo conceptual de seguridad

3.5.2. Organización

Unidad_Organizativa .
. Cargo
id_u_o <pi> Serial <M>
nombre_u_o Variable characters (128) <M> id_cargo <pi> Serial <M>
activo_u_o Boolean <M> nombre_cargo Variable characters (1024) <M>
es_apoyo_u_o Boolean <M> es_jefe_unidad Boolean <M>
es_gerencia_u_o Boolean <M> activo_cargo Boolean <M>
Identifier_1 <pi> Identifier_1 <pi>

Tipo_Contratacion
id <pi> Serial <M>
descripcion Variable characters (128)
nombre Variable characters (128) <M>
Identifier_1 <pi>

Ilustración 95: Modelo conceptual de Organización

149
3.5.3. Catálogos

Fuente_Financiamiento Tipo_Permiso
id_fuente_fin <pi> Serial <M> id <pi> Serial <M>
nombre_inici Variable characters (1024) <M> activo Boolean <M>
activo_fuente_fin Boolean anios Integer
Identifier_1 <pi> autoriza_director Boolean <M>
autoriza_gerente Boolean <M>
autoriza_jefe_inmediato Boolean <M>
descripcion Variable characters (128) <M>
Tipo_Justificacion
dias Integer
id_tipo_j <pi> Serial <M> goza_sueldo Boolean <M>
nombre_tipo_j Variable characters (128) <M> horas_anuales Long integer <M>
activo_tipo_j Boolean limitar_horas Boolean <M>
Identifier_1 <pi> meses Integer
nombre Variable characters (128) <M>
obligar_evidencia Boolean <M>
Unidad_Medida obligar_justificacion Boolean <M>
Identifier_1 <pi>
id_unidad <pi> Serial <M>
nombre_unidad Variable characters (128) <M>
activo_unidad Boolean
Identifier_1 <pi> Tipo_Ausencia
id <pi> Serial <M>
activo Boolean <M>
Periodicidad codigo Variable characters (64) <M>
id_periodicidad <pi> Serial <M> descripcion Variable characters (128)
nombre_periodicidad Variable characters (128) <M> nombre Variable characters (128) <M>
Identifier_1 <pi> Identifier_1 <pi>

Ilustración 96: Modelo conceptual de Catálogos

150
3.5.4. Planificación Estratégica

Ilustración 97: Modelo conceptual de Planificación Estratégica

151
3.5.5. Planificación Operativa

152
Ilustración 98: Modelo conceptual de Planificación Operativa
3.5.6. Permiso

Tipo_Contratacion Control_Subida_Ausencia

id <pi> Serial <M> id <pi> Serial <M>


descripcion Variable characters (128) cantidad_registros Integer <M>
nombre Variable characters (128) <M> fecha_contenido Date <M>
fecha_subido Date <M>
Identifier_1 <pi> .
Identifier_1 <pi>
.
Tipo_Permiso
id <pi> Serial <M>
activo Boolean <M>
Usuario anios Integer
id_usu <pi> Serial <M> autoriza_director Boolean <M>
nombre_usu Variable characters (64) <M> . Horas_Disponibles . autoriza_gerente Boolean <M>
apellido_usu Variable characters (64) <M> id <pi> Serial <M> autoriza_jefe_inmediato Boolean <M> . Cargos_Del_Permiso
correo_usu Variable characters (128) <M> anio Integer <M> descripcion Variable characters (128) <M>
tipo_permiso_id Serial <M>
activo_usu Boolean <M> horas_disponibles Long integer <M> dias Integer
cargo_id Serial <M>
password_usu Variable characters (512) <M> goza_sueldo Boolean <M>
Identifier_1 <pi> . horas_anuales Long integer <M>
codigo_marcacion_usu Variable characters (64) <M>
limitar_horas Boolean <M>
fecha_contratacion_usu Date <M>
meses Integer
Identifier_1 <pi> .
nombre Variable characters (128) <M>
obligar_evidencia Boolean <M>
obligar_justificacion Boolean <M>
Identifier_1 <pi>

Ausencia . Solicitud_Ausencia
. Cargo
id <pi> Serial <M> id <pi> Serial <M>
fecha_ausencia Date <M> aprobada Boolean Resuelven id_cargo <pi> Serial <M>
horas Long integer <M> fecha_realizo Date <M> id <pi> Serial <M> nombre_cargo Variable characters (1024) <M>
fecha_resolucion Date aprobada Boolean es_jefe_unidad Boolean <M>
Identifier_1 <pi> .
justificacion Variable characters (1024) fecha_resolucion Date activo_cargo Boolean <M>
Identifier_1 <pi> . Identifier_1 <pi> Identifier_1 <pi>
.
.

Tipo_Ausencia Dias_Ausencia
Evidencia_Ausencia
id <pi> Serial <M> id <pi> Serial <M>
id <pi> Serial <M>
activo Boolean <M> fecha_ausencia Date <M>
url_evidencia Variable characters (128) <M>
codigo Variable characters (64) <M> hora_fin Time <M>
descripcion Variable characters (128) Identifier_1 <pi> hora_inicio Time <M>
nombre Variable characters (128) <M> .
Identifier_1 <pi>
Identifier_1 <pi>

Ilustración 99: Modelo conceptual de Permiso

153
3.6. Diccionario de datos

La llave primaria para cada tabla se hizo secuencial para garantizar absolutamente la no
repetición de todos los registros en la base de datos.
En cuanto al tipo, se utilizó BIGINT ya que tiene como limite el número
9,223,372,036,854,775,807. Este número es tan grande que incluso si guarda un id nuevo cada
nano segundo, tardaría 292 años en alcanzar el límite.

actividad
Contiene las actividades de los planes operativos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
codigo INTEGER NOT NULL Código de actividad
relacionado a las
iniciativas del plan
operativo
fecha_fin DATE NOT NULL Fecha en que finaliza la
actividad
fecha_inicio DATE NOT NULL Fecha en la que inicia la
actividad
medio_verificacion VARCHAR(1024) Medio para verificar el
cumplimiento de la
actividad
monto_financiamiento DOUBLE Monto asignado para
ejecutar la actividad
nombre VARCHAR(1024) Nombre de la actividad
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
resultado VARCHAR(1024) Resultado esperado de la
actividad
cargo_id BIGINT NOT NULL Foránea que representa el
cargo responsable de
ejecutar la actividad
fuente_financiamiento_id BIGINT NOT NULL Foránea que representa la
fuente de financiamiento
para ejecutar la actividad

154
iniciativa_plan_operativo_id BIGINT NOT NULL Foránea que representa la
iniciativa a la que
contribuye la actividad
unidad_medida_id BIGINT NOT NULL Foránea que representa la
unidad usada para medir
la ejecución de la
actividad
Tabla 56: Diccionario de datos tabla actividad

ausencia
Contiene las ausencias de los empleados.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
fecha_ausencia DATE NOT NULL Fecha de la ausencia
horas BIGINT NOT NULL Tiempo que duro la
ausencia
solicitud_ausencia_id BIGINT Foránea que representa la
solicitud de ausencia que
la justifica
tipo_ausencia_id BIGINT NOT NULL Foránea que representa el
tipo de ausencia
user_id BIGINT NOT NULL Foránea que representa el
usuario al que pertenece
Tabla 57: Diccionario de datos tabla ausencia

avance_esperado
Contiene los avances esperados de los indicadores.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
anio INTEGER NOT NULL Año al que corresponde el
avance
avance_esperado NUMERIC(10,3) NOT NULL Valor del avance
limite_minimo NUMERIC(10,3) NOT NULL Valor del límite mínimo
aceptado
numero_periodo NUMERIC(10,3) NOT NULL Numero de periodo del año
al que corresponde el
avance

155
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
avance_real_id BIGINT Foránea que representa el
avance real realizado
indicador_id BIGINT NOT NULL Foránea que representa el
indicador al cual
corresponde el avance
Tabla 58: Diccionario de datos tabla avance_esperado

avance_real
Contiene los avances reales de los indicadores.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
avance NUMERIC(10,3) NOT NULL Valor del avance
fecha_ingreso DATE NOT NULL Fecha en que se ingresó el
avance
justificacion VARCHAR(1024) Justificación de
incumplimiento
logro VARCHAR(1024) Logro obtenido con el
avance
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
url_evidencia VARCHAR(1024) Evidencia de ejecución
tipo_justificacion_id BIGINT Foránea que representa el
tipo de justificación de
incumplimiento
Tabla 59: Diccionario de datos tabla avance_real

cargo
Contiene los cargos de la organización.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN Indica si el cargo se encuentra
activo
es_jefe BOOLEAN Indica si es jefe de la unidad
organizativa
nombre VARCHAR(128) Nombre del cargo

156
unidad_organizativa_id BIGINT NOT NULL Foránea que representa la
unidad organizativa a la que
pertenece el cargo
Tabla 60: Diccionario de datos tabla cargo

cargos_del_permiso
Contiene los cargos extras que deben autorizar la solicitud de ausencia.

Nombre del atributo Tipo PK Nulo Descripción


tipo_permiso_id BIGINT NOT NULL Foránea que representa el tipo
de permiso
cargo_id BIGINT NOT NULL Foránea que representa el
cargo
Tabla 61: Diccionario de datos tabla cargos_del_permiso

cierre_mes
Contiene los datos de los cierres mensuales.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
fecha_fin DATE NOT NULL Fecha en la que finaliza el
periodo de cierre
fecha_inicio DATE NOT NULL Fecha en la que inicia el
periodo de cierre
num_mes INTEGER NOT NULL Numero de mes al que
corresponde el cierre
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
plan_operativo_id BIGINT NOT NULL Foránea que representa el
plan operativo al que
pertenece el cierre
Tabla 62: Diccionario de datos tabla cierre_mes

cierre_trimestre
Contiene los datos de los cierres trimestrales.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria

157
anio INTEGER NOT NULL Numero de año del plan
quinquenal al que
corresponde el cierre
fecha_fin DATE NOT NULL Fecha en la que finaliza el
periodo de cierre
fecha_inicio DATE NOT NULL Fecha en la que inicia el
periodo de cierre
numero_trimestre INTEGER NOT NULL Numero de trimestre al
que corresponde el cierre
plan_estrategico_id BIGINT NOT NULL Foránea que representa el
plan estratégico al que
pertenece el cierre
Tabla 63: Diccionario de datos tabla cierre_trimestre

control_subida_ausencia
Contiene los datos de la subida de ausencias.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
cantidad_registros INTEGER NOT NULL Cantidad de registros
guardados
fecha_contenido DATE NOT NULL Fecha de las ausencias
fecha_subido DATE NOT NULL Fecha en la que se
cargaron las ausencias
responsable_subida_id BIGINT NOT NULL Foránea que representa el
usuario que cargo las
ausencias
Tabla 64: Diccionario de datos tabla control_subida_ausencia

dias_ausencia
Contiene los días de ausencia de una solicitud.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
fecha_ausencia DATE NOT NULL Fecha de la ausencia
hora_fin TIME NOT NULL Hora de finalización de la
ausencia
hora_inicio TIME NOT NULL Hora de inicio de la
ausencia

158
solicitud_ausencia_id BIGINT NOT NULL Foránea que representa la
solicitud de ausencia
Tabla 65: Diccionario de datos tabla dias_ausencia

ejecucion_gradual
Contiene las ejecuciones esperadas de las actividades.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
mes INTEGER NOT NULL Numero de mes al que
corresponde la ejecución
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
valor DOUBLE NOT NULL Valor esperado para la
ejecución
actividad_id BIGINT NOT NULL Foránea que representa la
actividad a la cual
pertenece la ejecución
Tabla 66: Diccionario de datos tabla ejecucion_gradual

ejecucion_real
Contiene las ejecuciones reales de las actividades.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
acumulado INTEGER NOT NULL Acumulado de lo
ejecutado para una
ejecución gradual
fecha_ingreso DATE NOT NULL Fecha en la que se
ingresó la ejecución
justificacion VARCHAR(1024) Justificación de
incumplimiento
logro VARCHAR(1024) Logro obtenido en la
ejecución
url_evidencia VARCHAR(1024) Evidencia de la
ejecución
valor DOUBLE NOT NULL Valor de la ejecución

159
ejecucion_gradual_id BIGINT NOT NULL Foránea que representa
la ejecución gradual a la
cual corresponde la
ejecución real
tipo_justificacion_id BIGINT Foránea que representa
el tipo de justificación de
incumplimiento
Tabla 67: Diccionario de datos tabla ejecucion_real

estado_plan_estrategico
Contiene los estados que pueden tener los planes.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
descripcion VARCHAR(1024) Descripción del estado
nombre VARCHAR(128) NOT NULL Nombre del estado
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
permitir_cambiar_estado BOOLEAN Indica si el estado permite
cambiar a otro
Tabla 68: Diccionario de datos tabla estado_plan_estrategico

evidencia_ausencia
Contiene las evidencias de las ausencias.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
url_evidencia VARCHAR(128) URL de la evidencia
solicitud_ausencia_id BIGINT NOT NULL Foránea que
representa la solicitud
de ausencia
Tabla 69: Diccionario de datos tabla evidencia_ausencia

160
fuente_financiamiento
Contiene las fuentes de financiamiento con las que cuenta la organización.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si la fuente de
financiamiento se
encuentra activa
nombre VARCHAR(128) Nombre de la fuente
de financiamiento
Tabla 70: Diccionario de datos tabla fuente_ financiamiento

horas_disponibles
Contiene las horas disponibles que tiene un usuario para un tipo de permiso.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
anio INTEGER Año al que
corresponden las
horas disponibles
horas_disponibles BIGINT NOT NULL Tiempo disponible
para el tipo de permiso
tipo_permiso_id BIGINT NOT NULL Llave foránea que
representa el tipo de
permiso
user_id BIGINT NOT NULL Llave foránea que
representa el usuario
Tabla 71: Diccionario de datos tabla horas_disponibles

indicador
Contiene los indicadores de los objetivos estratégicos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
codigo INTEGER NOT NULL Código del indicador
relacionado al objetivo
estratégico
direccion_positiva BOOLEAN NOT NULL Indica si la direccionalidad
es positiva
formula VARCHAR(1024) NOT NULL Formula del indicador
linea_base NUMERIC(10,3) NOT NULL Cantidad base del
indicador
161
nombre VARCHAR(256) NOT NULL Nombre del indicador
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
peso NUMERIC(10,3) NOT NULL Peso asignado al indicador
para el objetivo
estratégico
objetivo_estrategico_id BIGINT NOT NULL Foránea que representa el
objetivo estratégico al que
corresponde el indicador
periodicidad_id BIGINT NOT NULL Foránea que representa la
periodicidad del indicador
unidad_medida_id BIGINT NOT NULL Foránea que representa la
unidad usada para medir
la ejecución del indicador
Tabla 72: Diccionario de datos tabla indicador

iniciativa
Contiene las iniciativas de los objetivos estratégicos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
codigo INTEGER NOT NULL Código de la iniciativa
relacionado al objetivo
estratégico
indicador_impacto VARCHAR(1024) Indicador de impacto de la
iniciativa
medio_verificacion VARCHAR(1024) Medio para verificar el
cumplimiento de la
iniciativa
nombre VARCHAR(1024) Nombre de la iniciativa
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
resultado VARCHAR(1024) Resultado esperado de la
iniciativa

162
objetivo_estrategico_id BIGINT NOT NULL Foránea que representa el
objetivo estratégico al que
corresponde la iniciativa
unidad_organizativa_id BIGINT NOT NULL Foránea que representa la
unidad organizativa líder
de la iniciativa
Tabla 73: Diccionario de datos tabla iniciativa

iniciativas_de_indicador
Contiene la relación entre iniciativa e indicador.

Nombre del atributo Tipo PK Nulo Descripción


indicador_id BIGINT NOT NULL Foránea que representa
el indicador
iniciativa_id BIGINT NOT NULL Foránea que representa
la iniciativa
Tabla 74: Diccionario de datos tabla iniciativas_de_indicador

iniciativas_plan_operativo
Contiene la relación entre iniciativa y plan operativo.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
iniciativa_id BIGINT NOT NULL Foránea que representa la
iniciativa
plan_operativo_id BIGINT NOT NULL Foránea que representa el
plan operativo
Tabla 75: Diccionario de datos tabla iniciativas_plan_operativo

meta_limite
Contiene datos de las metas y límites de los indicadores.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria

163
anio INTEGER NOT NULL Año al que corresponde la
meta y limite
limite NUMERIC(10,3) NOT NULL Valor del limite
meta NUMERIC(10,3) NOT NULL Valor de la meta
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
indicador_id BIGINT NOT NULL Foránea que representa el
indicador al que le
corresponde la meta y
limite
Tabla 76: Diccionario de datos tabla meta_limite

objetivo_estrategico
Contiene los objetivos estratégicos de las perspectivas.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
codigo INTEGER Código del objetivo
estratégico relacionado a
las perspectivas
nombre VARCHAR(1024) Nombre del objetivo
estratégico
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
peso DOUBLE NOT NULL Peso asignado al objetivo
estratégico para la
perspectiva.
perspectiva_id BIGINT NOT NULL Foránea que representa la
perspectiva a la que
pertenece el objetivo
estratégico
Tabla 77: Diccionario de datos tabla objetivo_estrategico

periodicidad

164
Contiene las periodicidades que pueden tener los indicadores.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
nombre VARCHAR(128) NOT NULL Nombre de la
periodicidad
Tabla 78: Diccionario de datos tabla periodicidad

perspectiva
Contiene las perspectivas de los planes estratégicos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
codigo INTEGER Código de la perspectiva
relacionado al plan
estratégico
descripcion VARCHAR(1024) Descripción de la
perspectiva
nombre VARCHAR(128) Nombre de la perspectiva
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
plan_estrategico_id BIGINT NOT NULL Foránea que representa el
plan estratégico al que
pertenece la perspectiva
Tabla 79: Diccionario de datos tabla perspectiva

plan_estrategico
Contiene los planes estratégicos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
anio_fin INTEGER NOT NULL Año de finalización del
plan estratégico
anio_inicio INTEGER NOT NULL Año de inicio del plan
estratégico
dias_fin_cierre INTEGER NOT NULL Cantidad de días antes del
fin del cierre en el que se
enviara la notificación
165
dias_inicio_cierre INTEGER NOT NULL Cantidad de días antes del
inicio del cierre en el que
se enviara la notificación
mensaje_fin_cierre VARCHAR(2048) Mensaje que se enviara
para notificar el fin del
periodo de cierre
mensaje_inicio_cierre VARCHAR(2048) Mensaje que se enviara
para notificar el inicio del
periodo de cierre
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos
estado_plan_id BIGINT NOT NULL Foránea que representa el
estado del plan
estratégico
Tabla 80: Diccionario de datos tabla plan_estrategico

plan_operativo
Contiene los planes operativos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
anio INTEGER Año del plan operativo
dias_fin_cierre INTEGER Cantidad de días antes del
fin del cierre en el que se
enviara la notificación
dias_inicio_cierre INTEGER Cantidad de días antes del
inicio del cierre en el que
se enviara la notificación
mensaje_fin_cierre VARCHAR(2048) Mensaje que se enviara
para notificar el fin del
periodo de cierre
mensaje_inicio_cierre VARCHAR(2048) Mensaje que se enviara
para notificar el inicio del
periodo de cierre
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden
cambiar programaciones
futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden
cambiar los datos

166
estado_plan_id BIGINT NOT NULL Foránea que representa el
estado del plan operativo
plan_estrategico_id BIGINT NOT NULL Foránea que representa el
plan estratégico al que
pertenece el plan
operativo
Tabla 81: Diccionario de datos tabla plan_operativo

privilege
Contiene los privilegios.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
descripcion VARCHAR(1024) Descripción del
privilegio
etiqueta VARCHAR(517) Nombre del privilegio
que se muestra al
usuario
nombre VARCHAR(512) NOT NULL Nombre del privilegio
usado internamente
Tabla 82: Diccionario de datos tabla privilege

progresion_gradual
Contiene las progresiones graduales de las iniciativas.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
num_anio INTEGER NOT NULL Numero de año al que
corresponde la progresión
gradual
permitir_cambiar_a_futuro BOOLEAN Indica si se pueden cambiar
programaciones futuras
permitir_cambiar_datos BOOLEAN Indica si se pueden cambiar
los datos
valor DOUBLE NOT NULL Valor de la progresión
iniciativa_id BIGINT NOT NULL Foránea que representa la
iniciativa a la cual pertenece
la progresión
Tabla 83: Diccionario de datos tabla progresion_gradual

167
resuelven
Contiene los datos de las resoluciones de las solicitudes.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
aprobada BOOLEAN Indica si la solicitud ha sido
aprobada
fecha_resolucion DATE Fecha en el encargado le dio
resolución a la solicitud
cargo_id BIGINT NOT NULL Foránea que representa el
cargo de la persona que
debe dar resolución a la
solicitud
solicitud_ausencia_id BIGINT NOT NULL Foránea que representa la
solicitud de ausencia
Tabla 84: Diccionario de datos tabla resuelven

role
Contiene los roles.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
descripcion VARCHAR(2048) Descripción del rol
nombre VARCHAR(512) NOT NULL Nombre del rol
Tabla 85: Diccionario de datos tabla role

roles_privileges
Contiene la relación entre roles y privilegios.

Nombre del atributo Tipo PK Nulo Descripción


role_id BIGINT NOT NULL Foránea que representa
el rol
privilige_id BIGINT NOT NULL Foránea que representa
el privilegio
Tabla 86: Diccionario de datos tabla roles_privileges

168
solicitud_ausencia
Contiene las solicitudes de ausencia.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
aprobada BOOLEAN Indica si la solicitud
ha sido aprobada
fecha_realizo DATE NOT NULL Fecha en que se hizo
la solicitud
fecha_resolucion DATE Fecha en la que se le
dio resolución a la
solicitud
justificacion VARCHAR(1024) Justificación de la
ausencia
horas_disponibles_id BIGINT NOT NULL Foránea que
representa las horas
disponibles que se
usarán para la
solicitud
Tabla 87: Diccionario de datos tabla solicitud_ausencia

tipo_ausencia
Contiene los tipos de ausencia.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si el tipo de
ausencia se
encuentra activo
codigo VARCHAR(64) NOT NULL Código del tipo de
ausencia
descripcion VARCHAR(512) Descripción del tipo
de ausencia
nombre VARCHAR(128) NOT NULL Nombre del tipo de
ausencia
Tabla 88: Diccionario de datos tabla tipo_ausencia

169
tipo_contratacion
Contiene los tipos de contratación de la institución.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
descripcion VARCHAR(128) Descripción del tipo
de contratación
nombre VARCHAR(128) Nombre del tipo de
contratación
Tabla 89: Diccionario de datos tabla tipo_contratacion

tipo_justificacion
Contiene los tipos de justificaciones de incumplimiento.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si el tipo de
justificación se
encuentra activo
nombre VARCHAR(128) Nombre del tipo de
justificación
Tabla 90: Diccionario de datos tabla tipo_justificacion

tipo_permiso
Contiene los tipos de permisos.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si el tipo de
permiso se
encuentra activo
anios INTEGER Años de trabajo que
debe tener el
empleado para tener
derecho al permiso
autoriza_director BOOLEAN NOT NULL Indica si el tipo de
permiso necesita
autorización del
director

170
autoriza_gerente BOOLEAN NOT NULL Indica si el tipo de
permiso necesita
autorización del
gerente
autoriza_jefe_inmediato BOOLEAN NOT NULL Indica si el tipo de
permiso necesita
autorización del jefe
inmediato
descripcion VARCHAR(128) Descripción del tipo
de permiso
dias INTEGER Días de trabajo que
debe tener el
empleado para tener
derecho al permiso
goza_sueldo BOOLEAN NOT NULL Indica si el tipo de
permiso tiene
derecho a sueldo
horas_anuales BIGINT NOT NULL Horas anuales que
tiene el tipo de
permiso
limitar_horas BOOLEAN NOT NULL Indica si es necesario
limitar las horas del
tipo de permiso
meses INTEGER Meses de trabajo
que debe tener el
empleado para tener
derecho al permiso
nombre VARCHAR(128) NOT NULL Nombre del tipo de
permiso
obligar_evidencia BOOLEAN NOT NULL Indica si es necesaria
la evidencia para este
tipo de permiso
obligar_justificacion BOOLEAN NOT NULL Indica si es necesaria
la justificación para
este tipo de permiso
Tabla 91: Diccionario de datos tabla tipo_permiso

171
unidad_medida
Contiene las unidades de medida.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN Indica si la unidad de
medida está activa
nombre VARCHAR(128) Nombre de la unidad
de medida
Tabla 92: Diccionario de datos tabla unidad_medida

unidad_organizativa
Contiene las unidades organizativas.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si la unidad
organizativa se
encuentra activa
es_apoyo BOOLEAN NOT NULL Indica si la unidad
organizativa es unidad
de apoyo
es_gerencia BOOLEAN NOT NULL Indica si la unidad
organizativa es
Gerencia
nombre VARCHAR(128) Nombre de la unidad
organizativa
unidad_organizativa_id BIGINT Foránea de la unidad
organizativa de la cual
es subordinada
Tabla 93: Diccionario de datos tabla unidad_organizativa

172
usuario
Contiene los usuarios.

Nombre del atributo Tipo PK Nulo Descripción


id BIGINT PK NOT NULL Llave primaria
activo BOOLEAN NOT NULL Indica si el usuario
está activo
apellido VARCHAR(255) NOT NULL Apellido del usuario
codigo_marcacion VARCHAR(64) NOT NULL Código de marcación
del usuario
correo VARCHAR(255) NOT NULL Correo del usuario
fecha_contratacion DATE NOT NULL Fecha en que fue
contratado
nombre VARCHAR(255) NOT NULL Nombre del usuario
password VARCHAR(255) NOT NULL Contraseña del
usuario
cargo_id BIGINT NOT NULL Foránea que
representa el cargo
del usuario
tipo_contratacion_id BIGINT NOT NULL Foránea que
representa el tipo de
contratación que
tiene el usuario
Tabla 94: Diccionario de datos tabla usuario

usuarios_roles
Contiene la relación de usuario y rol.

Nombre del atributo Tipo PK Nulo Descripción


usuario_id BIGINT NOT NULL Foránea que representa
el usuario
role_id BIGINT NOT NULL Foránea que representa
el rol
Tabla 95: Diccionario de datos tabla usuarios_roles

173
4.CAPÍTULO IV:
PRUEBAS

174
4.1. Metodología para el desarrollo de pruebas

El desarrollo de las pruebas se realiza en 3 etapas las cuales se detallan a continuación:


Planeación de pruebas
En esta etapa se define el plan de pruebas, el cual sirve como guía para la realización de las
pruebas, ya que provee el marco adecuado para elaborar una planificación paso a paso de las
actividades de prueba.
El plan de pruebas debe contener:

• Características a ser probadas: se listan todas las características que serán probadas,
deben definirse de manera clara y concisa para no tener malas interpretaciones. Se
pueden incluir referencias a los requisitos o especificaciones de diseño.
• Características que no serán probadas: se listan todas las características que no serán
probadas, es necesario especificar los motivos por las que estas características no se
probaran.
• Enfoque: Se debe mencionar el enfoque general de las pruebas, especificando los niveles,
métodos y tipos de prueba.
• Criterios de éxito y fallo: se deben especificar los criterios que se usan para determinar
si cada elemento de prueba es exitoso o fallido.
• Planificación de las actividades: en este apartado se detallan las actividades a realizar en
el proceso de pruebas, debe contener el nombre de la actividad y un estimado de la
duración.

Diseño de pruebas
Una vez elaborado el plan de pruebas se debe empezar con el análisis de la documentación del
sistema, con el objetivo de iniciar el diseño de los casos de prueba correspondientes a las
características definidas en la etapa anterior. La documentación clave para iniciar este diseño
pueden ser: casos de uso, documento de diseño, manual de usuario y manual técnico.
En el diseño de los casos de prueba se debe considerar la elaboración de casos positivos y
negativos, los casos de prueba negativos son útiles para validar el comportamiento del sistema
ante situaciones atípicas.
El formato para el diseño de cada caso de prueba es el siguiente:

175
Código [Identificador del caso de prueba. Ejemplo CP01]
Nombre del Caso [Nombre del proceso a ser probado]
de Prueba
Responsable de [Nombre del responsable de escribir el caso de prueba]
Escribir el Caso
Descripción General
Propósito [Descripción del propósito de la prueba]
Caso de Uso [Identificador del caso de uso al que se relaciona el caso de prueba]
Ambiente de Pruebas
Pre-condiciones [Condiciones previas que se deben cumplir antes de ejecutar la prueba]
Post-condiciones [Condiciones que se deben cumplir después de ejecutar la prueba]
Desarrollo de la prueba
Acciones [Procedimiento paso a paso para ejecutar la prueba]
Datos de Entrada [Datos de prueba que se van a utilizar durante la realización de la
prueba]
Resultados
Resultado [Resultado que se espera al ejecutar la prueba]
Esperado
Tabla 96: Formato para diseño de caso de prueba

Ejecución de pruebas
En esta etapa se procede a ejecutar los casos de prueba diseñados, cuando se detecte un fallo
este debe ser documentado y corregirse. Una vez se ha corregido el fallo se ejecuta nuevamente
el caso de prueba.
El formato para la ejecución de cada caso de prueba es el siguiente:

176
Código [Identificador del caso de prueba, añadiéndole el número de ejecución.
Ejemplo CP01-01]
Nombre del Caso [Nombre del proceso a ser probado]
de Prueba
Fecha de ejecución [Fecha en que se ejecutó el caso de prueba]
Responsable de [Nombre del responsable de ejecutar el caso de prueba]
Ejecutar el Caso
Resultados
Resultado real [Resultado obtenido después de ejecutar la prueba]
Tipo de resultado Éxito ( ) Fallo ( )
Evidencia [Capturas del resultado obtenido]
Cumplió post- Sí ( ) No ( ) N/A ( )
condición
Tabla 97: Formato para ejecución de caso de prueba

Los fallos encontrados en la ejecución de los casos de prueba deben registrarse en un cuadro
resumen con el siguiente formato:

Código de Descripción del Reportado por Asignado a Estado


prueba fallo
[Código de la [Descripción [Nombre de la [Nombre de la [Estado del fallo]
ejecución en la detallada del persona que persona
que se detectó el fallo] reporto el fallo] asignada para
fallo] corregir el fallo]
Tabla 98: Formato cuadro resumen de fallos

Los estados que puede tener un fallo son:

• Abierto: cuando se identifica el fallo y se reporta.


• En proceso: cuando se encuentra en desarrollo.
• Corregido: cuando ha sido corregido y se puede proceder a la ejecución de la prueba.
• Cerrado: cuando se obtiene un resultado exitoso de la ejecución de la prueba.

177
4.2. Realización de las pruebas

4.2.1. Plan de pruebas

Características a ser probadas

• Creación, modificación y eliminación de las fuentes de financiamiento.


• Creación, modificación y eliminación de los tipos de justificaciones.
• Creación, modificación y eliminación de las unidades de medida.
• Creación, modificación y desactivación de las unidades organizativas.
• Creación, modificación y desactivación de los cargos.
• Creación, modificación, eliminación, cambio de estado y consulta de los planes
quinquenales.
• Modificación de los cierres trimestrales del plan quinquenal.
• Creación, modificación y eliminación de las perspectivas para un plan quinquenal.
• Creación, modificación, eliminación y consulta de los objetivos estratégicos para un plan
quinquenal.
• Creación, modificación, eliminación y consulta de las iniciativas para un objetivo
estratégico.
• Creación, modificación, eliminación y consulta de los KPI para un objetivo estratégico.
• Creación, modificación, eliminación, cambio de estado y consulta de los planes anuales.
• Modificación de los cierres mensuales del plan anual.
• Agregación y eliminación de iniciativas que conforman el plan anual.
• Creación, modificación, eliminación y consulta de las actividades para un plan anual.
• Creación y modificación de las ejecuciones para un KPI.
• Creación y modificación de las ejecuciones para una actividad.
• Generación de reportes.
• Creación, modificación y desactivación de usuarios.
• Creación, modificación y eliminación de roles.
• Cambio de contraseña propia.
• Creación, modificación, eliminación y consulta de los tipos de permisos.
• Creación, modificación y eliminación de los tipos de ausencia.
• Consulta de tiempo disponible propio y de otros para cada tipo de permiso.
• Solicitud y aprobación de permisos.
• Consulta de aprobaciones.
• Consulta de permisos propios y de otros.
• Carga de asistencias.

178
Características que no serán probadas

Debido a que las pruebas están orientadas a verificar los requerimientos funcionales y que aún
no se dispone del servidor en el que se instalara el sistema informático no se probara:

• Rendimiento y disponibilidad del sistema informático en el servidor.

Enfoque

• Pruebas funcionales: son un tipo de prueba de software mediante el cual el sistema se


prueba según los requisitos funcionales, por lo que se toma como objeto de prueba cada
caso de uso.
Este tipo de pruebas se realizan utilizando el método de la caja negra, es decir que solo
interesa los datos que se ingresan al sistema y la información que produce basado en los
datos de entrada.
• Pruebas unitarias: es un nivel de pruebas de software donde se prueban las unidades de
un software. El propósito es validar que cada unidad funciona según lo diseñado.

Criterios de éxito y fallo

Un caso de prueba es considerado exitoso cuando los pasos del procedimiento de prueba se
cumplen a cabalidad y al finalizar la prueba se obtiene el resultado esperado.
Un caso de prueba es considerado fallido cuando no se cumplen los pasos del procedimiento de
la prueba o al finalizar la prueba no se obtiene el resultado esperado.

Planificación de las actividades

Nombre de actividad Duración en Días


Diseño de los casos de prueba 5
Configuración del entorno de pruebas 4
Ejecución de los casos de prueba 5
Corrección de fallos 5
Tabla 99: Planificación de las actividades de prueba

179
4.2.2. Diseño de los casos de prueba

Para comprobar que el sistema responde eficazmente ante los errores, se diseñó una serie de
pruebas en donde se contemplaron los diferentes escenarios en los que los datos ingresados
pueden llegar a provocar un funcionamiento inesperado o que pudiesen poner en peligro la
integridad de los datos que ya están cargados en el sistema. A continuación, se presenta un
ejemplo de los casos de prueba que fueron diseñados:

Código CP02
Nombre del Caso Creación de plan quinquenal
de Prueba
Responsable de Katherine Cerna
Escribir el Caso
Descripción General
Propósito Ingresar satisfactoriamente un nuevo plan estratégico.
Caso de Uso CU02
Ambiente de Pruebas
Pre-condiciones Haber iniciado sesión con un usuario que tenga permisos para gestionar
los planes quinquenales.
Post-condiciones Habiendo realizado el ingreso de los datos:
● Revisar que en la lista de planes quinquenales aparezca el plan
quinquenal nuevo.
● Revisar que el plan quinquenal tenga creadas sus fechas para
ingreso de información trimestral.
Desarrollo de la prueba
Acciones 1. Ingresar a la pantalla de Plan Quinquenal en el menú lateral.
2. Hacer clic en el botón agregar
3. Ingresar el año de inicio del plan
4. Dar clic al botón Guardar
Datos de Entrada Año inicio: 2026
Resultados
Resultado ● Mensaje del servidor, confirmando el nuevo plan estratégico
Esperado guardado.
● El nuevo plan estratégico se visualiza agregado en la lista.
● Las fechas de ingreso de información ya aparecen el apartado
cierre
Tabla 100: Diseño de caso de prueba Creación de plan quinquenal

Para visualizar los Diseños de los casos de uso de prueba restante, consulte la
ubicación siguiente: DOCUMENTOS/DOCUMENTO-PRUEBAS.PDF en el CD.

180
4.2.3. Ejecución de los casos de prueba

Código CP01-01
Nombre del Consultar los planes quinquenales
Caso de
Prueba
Fecha de 18/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar
el Caso
Resultados
Resultado Se visualizan solo los planes que cumplen con el criterio del filtro.
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí ( ) No ( ) N/A (X)


post-
condición
Tabla 101: Ejecución de caso de prueba Consultar planes quinquenales

Código CP02-01
Nombre del Creación del plan quinquenal
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados

181
Resultado • Mensaje de éxito, confirmando la creación del plan estratégico.
real • El nuevo plan estratégico se visualiza en la lista.
• Las fechas de ingreso de información aparecen el apartado cierre.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 102: Ejecución de caso de prueba Creación de plan quinquenal

Código CP03-01
Nombre del Edición de un plan quinquenal
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsabl Patricia Solano
e de
182
Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la modificación del plan estratégico.
real • El plan estratégico editado se visualiza en la lista con los años
modificados.
• Las fechas de ingreso de información aparecen actualizadas en el
apartado cierre.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 103: Ejecución de caso de prueba Edición de un plan quinquenal

183
Código CP04-01
Nombre del Creación de perspectiva
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la creación de la perspectiva.
real • La nueva perspectiva se visualiza agregada en la tabla.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 104: Ejecución de caso de prueba Creación de perspectiva

Código CP05-01
Nombre del Edición de una perspectiva
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso

184
Resultados
Resultado • Mensaje de éxito, confirmando la modificación de la perspectiva.
real • La perspectiva editada se visualiza en la tabla.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 105: Ejecución de caso de prueba Edición de una perspectiva

Código CP06-01
Nombre del Eliminación de una perspectiva
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar
el Caso
Resultados
Resultado Mensaje de error, que indica que no se puede eliminar la perspectiva.
real
Tipo de Éxito ( ) Fallo (X)
resultado

185
Evidencia

Cumplió Sí ( ) No (X) N/A ( )


post-
condición
Tabla 106: Ejecución de caso de prueba Eliminación de una perspectiva

Código CP06-02
Nombre del Eliminación de una perspectiva
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la eliminación de la perspectiva.
real • La perspectiva eliminada ya no se visualiza en la tabla.
Tipo de Éxito (X) Fallo ( )
resultado

186
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 107: Ejecución de caso de prueba Eliminación de una perspectiva

Código CP07-01
Nombre del Consultar objetivos estratégicos
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado Se visualizan solo los objetivos estratégicos que cumplen con el criterio del
real filtro.
Tipo de Éxito (X) Fallo ( )
resultado

187
Evidencia

Cumplió Sí ( ) No ( ) N/A (X)


post-
condición
Tabla 108: Ejecución de caso de prueba Consultar objetivos estratégicos

Código CP08-01
Nombre del Creación de objetivo estratégico
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la creación del objetivo estratégico.
real • El nuevo objetivo estratégico se muestra en el listado.
Tipo de Éxito (X) Fallo ( )
resultado

188
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 109: Ejecución de caso de prueba Creación de objetivo estratégico

Código CP09-01
Nombre del Edición de un objetivo estratégico
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la modificación del objetivo
real estratégico.
• Se visualizan los cambios del objetivo estratégico en la lista.
Tipo de Éxito (X) Fallo ( )
resultado

189
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 110: Ejecución de caso de prueba Edición de un objetivo estratégico

Código CP10-01
Nombre del Eliminación de un objetivo estratégico
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la eliminación del objetivo estratégico.
real • El objetivo estratégico eliminado ya no se visualiza en la lista.
Tipo de Éxito (X) Fallo ( )
resultado

190
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 111: Ejecución de caso de prueba Eliminación de un objetivo estratégico

Código CP11-01
Nombre del Caso Consultar iniciativas
de Prueba
Fecha de ejecución 20/10/2020
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real Se visualizaron las iniciativas que coinciden con el criterio de búsqueda.
Tipo de resultado Éxito (x) Fallo ( )
Evidencia

191
Cumplió post- Sí ( ) No ( ) N/A (x)
condición
Tabla 112: Ejecución de caso de prueba Consultar iniciativas

Código CP12-01
Nombre del Caso Creación de iniciativa
de Prueba
Fecha de ejecución 20/10/2020
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de confirmación para el guardado de la nueva iniciativa
con éxito.
• La iniciativa aparece en el listado de iniciativas.
Tipo de resultado Éxito (x) Fallo ( )
Evidencia

192
Cumplió post- Sí (x) No ( ) N/A ( )
condición
Tabla 113: Ejecución de caso de prueba Creación de iniciativa

Código CP13-01
Nombre del Caso Edición de una iniciativa
de Prueba
Fecha de ejecución 20/10/2020
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el guardado exitoso de la
iniciativa.
• Datos verificados en el ver detalle de la iniciativa editada.
Tipo de resultado Éxito (x) Fallo ( )
Evidencia

Cumplió post- Sí (x) No ( ) N/A ( )


condición
Tabla 114: Ejecución de caso de prueba Edición de iniciativa

193
Código CP14-01
Nombre del Caso Eliminación de una iniciativa
de Prueba
Fecha de ejecución 20/10/2020
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito para la eliminación de la iniciativa.
• La iniciativa eliminada no aparece en el listado de iniciativas.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 115: Ejecución de caso de prueba Eliminación de una iniciativa

Código CP15-01
Nombre del Caso Consulta de Indicadores
de Prueba
Fecha de ejecución 20/10/2020
Responsable de Roberto Castro
Ejecutar el Caso
Resultados
Resultado real El sistema filtró exitosamente los indicadores mostrados
Tipo de resultado Éxito ( X ) Fallo ( )

194
Evidencia

Cumplió post- Sí ( ) No ( ) N/A ( X )


condición
Tabla 116: Ejecución de caso de prueba Consulta de indicadores

Código CP16-01
Nombre Creación de un Indicador
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Indicador almacenado en la base de datos.
real
Tipo de Éxito ( X ) Fallo ( )
resultado

195
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 117: Ejecución de caso de prueba Creación de un indicador

Código CP17-01
Nombre Edición de un Indicador
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Cambios en el indicador Guardados correctamente.
real
Tipo de Éxito ( ) Fallo ( X )
resultado

196
Evidencia

Cumplió Sí ( ) No ( X ) N/A ( )
post-
condición
Tabla 118: Ejecución de caso de prueba Edición de un indicador

Código CP17-02
Nombre Edición de un Indicador
del Caso de
Prueba
Fecha de 24/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Cambios en el indicador Guardados correctamente.
real
Tipo de Éxito ( ) Fallo ( X )
resultado

197
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 119: Ejecución de caso de prueba Edición de un indicador

Código CP18-01
Nombre Eliminar satisfactoriamente un indicador
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Indicador eliminado correctamente
real
Tipo de Éxito ( X ) Fallo ( )
resultado

198
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 120: Ejecución de caso de prueba Eliminar un indicador

Código CP19-01
Nombre del Edición de las fechas de cierre para el seguimiento de Indicadores.
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados
Resultado • Mensaje de éxito, confirmando la modificación del cierre.
real • Se muestran los cambios del cierre en el listado.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

199
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 121: Ejecución de caso de prueba Edición de las fechas de cierre para seguimiento de indicadores

Código CP20-01
Nombre del Cambiar estado de un plan estratégico
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado •Mensaje de éxito, confirmando la modificación del estado del plan
real estratégico.
• Visualización del cambio de estado en la vista principal de planes
estratégicos.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

200
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 122: Ejecución de caso de prueba Cambiar estado de un plan estratégico

Código CP21-01
Nombre del Consulta de Planes Operativos
Caso de
Prueba
Fecha de 18/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado
real Se visualizan solo los planes operativos que cumplieron con el criterio del filtro.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí ( ) No ( ) N/A (X)


post-
condición
Tabla 123: Ejecución de caso de prueba Consulta de planes operativos

201
Código CP22-01
Nombre del Creación de un nuevo Plan Operativo.
Caso de
Prueba
Fecha de 18/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar el
Caso
Resultados
Resultado • Mensaje de confirmación de la creación del plan operativo
real • El nuevo plan se visualiza en la lista de planes operativos
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 124: Ejecución de caso de prueba Creación de un nuevo plan operativo

Código CP23-01
Nombre del Modificación de un Plan Operativo
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados

202
Resultado • Mensaje de confirmación de la modificación del plan operativo
real • El plan modificado se visualiza en la lista de planes operativos
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 125: Ejecución de caso de prueba Modificación de un plan operativo

Código CP24-01
Nombre del Eliminación de un Plan Operativo.
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado • Mensaje de confirmación de la eliminación del plan operativo
real • El plan modificado ya no se visualiza en la lista de planes operativos
Tipo de Éxito (X) Fallo ( )
resultado

203
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 126: Ejecución de caso de prueba Eliminación de un plan operativo

Código CP25-01
Nombre del Consultar Iniciativas de Plan Operativo
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
204
Resultados
Resultado
real Se visualizan las iniciativas del plan operativo.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí ( ) No ( ) N/A (X)


post-
condición
Tabla 127: Ejecución de caso de prueba Consultar iniciativas de plan operativo

Código CP26-01
Nombre del Agregar Iniciativas
Caso de
Prueba
Fecha de 18/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar el
Caso
Resultados
Resultado Mensaje de confirmación.
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

205
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 128: Ejecución de caso de prueba Agregar iniciativas

Código CP27-01
Nombre del Eliminar iniciativa del plan anual.
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación de la eliminación de la iniciativa del plan operativo
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

206
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 129: Ejecución de caso de prueba Eliminar iniciativa del plan anual

Código CP28-01
Nombre del Filtrar Actividades
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado
real Se visualizan solo las actividades que cumplieron con el criterio del filtro.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

207
Cumplió Sí ( ) No ( ) N/A (X)
post-
condición
Tabla 130: Ejecución de caso de prueba Filtrar actividades

Código CP29-01
Nombre del Crear Actividad
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación de la creación de la actividad
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

208
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 131: Ejecución de caso de prueba Crear actividad

Código CP30-01
Nombre del Editar Actividad
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación de la modificación de la actividad
real
Tipo de Éxito (X) Fallo ( )
resultado

209
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 132: Ejecución de caso de prueba Editar actividad

Código CP31-01
Nombre del Eliminar Actividad
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación de la eliminación del plan operativo
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

210
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 133: Ejecución de caso de prueba Eliminar actividad

Código CP32-01
Nombre del Configurar cierre de mes
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación de la modificación de las fechas
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

211
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 134: Ejecución de caso de prueba Configurar cierre de mes

Código CP33-01
Nombre del Cambiar estado de plan operativo
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación del cambio de estado
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

212
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 135: Ejecución de caso de prueba Cambiar estado de plan operativo

Código CP34-01
Nombre del Reportar avance de KPI
Caso de
Prueba
Fecha de 21/10/2020
ejecución
Responsable Elena García
de Ejecutar el
Caso
Resultados
Resultado Mensaje de éxito del sistema.
real
Tipo de Éxito (X) Fallo ( )
resultado

213
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 136: Ejecución de caso de prueba Reportar avance de KPI

Código CP35-01
Nombre del Caso Reportar avance de Actividad
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Patricia Solano
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• El avance de la actividad aparece en el listado de ejecuciones.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición

214
Tabla 137: Ejecución de caso de prueba Reportar avance de actividad

Código CP36-01
Nombre del Caso Ver avance de actividad
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Katherine Cerna
Ejecutar el Caso
Resultados
Resultado real • Aparecen los datos del avance ingresado por el usuario de otra
unidad
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 138: Ejecución de caso de prueba Ver avance de actividad

Código CP37-01
Nombre del Caso Ver reporte
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Reporte generado con el formato especificado.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

215
Cumplió post- Sí (X) No ( ) N/A ( )
condición
Tabla 139: Ejecución de caso de prueba Ver reporte

Código CP38-01
Nombre del Caso Ver unidades organizativas
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Despliegue exitoso de las unidades organizativas
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

216
Cumplió post- Sí ( ) No ( ) N/A (X)
condición
Tabla 140: Ejecución de caso de prueba Ver unidades organizativas

Código CP39-01
Nombre del Caso Agregar unidad organizativa
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• La unidad aparece en el listado de unidades.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

217
Cumplió post- Sí (X) No ( ) N/A ( )
condición
Tabla 141: Ejecución de caso de prueba Agregar unidad organizativa

Código CP40-01
Nombre del Caso Editar unidad organizativa
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• La unidad editada aparece en el listado de unidades organizativas.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 142: Ejecución de caso de prueba Editar unidad organizativa

Código CP41-01
Nombre del Caso Eliminar unidad organizativa
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando la correcta eliminación.
• La unidad organizativa eliminada no aparece en el listado de
unidades organizativas.

218
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 143: Ejecución de caso de prueba Eliminar unidad organizativa

Código CP42-01
Nombre Creación de un Cargo
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Cargo almacenado en la base de datos.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

219
Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 144: Ejecución de caso de prueba Creación de un cargo

Código CP43-01
Nombre Modificación de un Cargo
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Cambios realizados en cargo almacenados correctamente.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 145: Ejecución de caso de prueba Modificación de un cargo

Código CP44-01
Nombre Desactivación de un cargo
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de

220
Ejecutar el
Caso
Resultados
Resultado Campo activo de cargo cambiado a falso.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 146: Ejecución de caso de prueba Desactivación de un cargo

Código CP45-01
Nombre Ver unidades de medida
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Listado de unidades mostrado correctamente
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

221
Cumplió Sí ( ) No ( ) N/A ( X )
post-
condición
Tabla 147: Ejecución de caso de prueba Ver unidades de medida

Código CP46-01
Nombre Agregar Unidad de Medida
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Unidad de medida almacenada en base de datos
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 148: Ejecución de caso de prueba Agregar unidad de medida

Código CP47-01
Nombre Editar Unidad de Medida
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de

222
Ejecutar el
Caso
Resultados
Resultado Cambios en unidad de medida guardados en base de datos.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 149: Ejecución de caso de prueba Editar unidad de medida

Código CP48-01
Nombre Eliminar Unidad de Medida
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Registro de la unidad eliminado de la base de datos
real
Tipo de Éxito ( X ) Fallo ( )
resultado

223
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 150: Ejecución de caso de prueba Eliminar unidad de medida

Código CP49-01
Nombre Consultar Fuentes de Financiamiento
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Fuentes de financiamiento mostradas correctamente
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( ) No ( ) N/A ( X )
post-
condición
Tabla 151: Ejecución de caso de prueba Consultar fuentes de financiamiento

Código CP50-01

224
Nombre Crear fuente de financiamiento
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Fuente de financiamiento guardada en base de datos
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 152: Ejecución de caso de prueba Crear fuente de financiamiento

Código CP51-01
Nombre Editar fuente de financiamiento
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Cambios en la fuente almacenados en la base de datos.
real
Tipo de Éxito ( X ) Fallo ( )
resultado

225
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 153: Ejecución de caso de prueba Editar fuente de financiamiento

Código CP52-01
Nombre Eliminar Fuente de Financiamiento
del Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Registro de la fuente eliminada de la base de datos.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 154: Ejecución de caso de prueba Eliminar fuente de financiamiento

Código CP53-01
Nombre Consultar tipos de justificación
del Caso de
Prueba

226
Fecha de 20/10/2020
ejecución
Responsab Roberto Castro
le de
Ejecutar el
Caso
Resultados
Resultado Tipos de justificaciones almacenadas correctamente
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( ) No ( ) N/A ( X )
post-
condición
Tabla 155: Ejecución de caso de prueba Consultar tipos de justificación

Código CP54-01
Nombre del Caso Crear tipo de justificación
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• La justificación creada aparece en el listado de justificaciones.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

227
Cumplió post- Sí (X) No ( ) N/A ( )
condición
Tabla 156: Ejecución de caso de prueba Crear tipo de justificación

Código CP55-01
Nombre del Caso Editar tipo de justificación
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• La justificación editada aparece en el listado de justificaciones.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 157: Ejecución de caso de prueba Editar tipo de justificación

Código CP56-01

228
Nombre del Caso Eliminar tipo de justificación
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando la correcta eliminación.
• La justificación eliminada no aparece en el listado de
justificaciones.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 158: Ejecución de caso de prueba Eliminar tipo de justificación

Código CP57-01
Nombre del Caso Consultar usuarios
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Se muestra exitosamente los usuarios registrados.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

229
Cumplió post- Sí ( ) No ( ) N/A (X)
condición
Tabla 159: Ejecución de caso de prueba Consultar usuarios

Código CP58-01
Nombre del Caso Crear Usuario
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• El nuevo usuario aparece en el listado de usuarios.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 160: Ejecución de caso de prueba Crear usuario

230
Código CP59-01
Nombre del Caso Editar usuario
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• El usuario editado aparece en el listado de usuarios.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 161: Ejecución de caso de prueba Editar usuario

Código CP60-01
Nombre del Caso Desactivar usuario
de Prueba
Fecha de 21/10/2020
ejecución
Responsable de Elena García
Ejecutar el Caso
Resultados
Resultado real • Mensaje de éxito confirmando el correcto almacenamiento.
• El usuario aparece con estado inactivo en el listado de usuarios.
Tipo de resultado Éxito (X) Fallo ( )
Evidencia

231
Cumplió post- Sí (X) No ( ) N/A ( )
condición
Tabla 162: Ejecución de caso de prueba Desactivar usuario

Código CP61-01
Nombre del Consultar roles
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Se visualizan la lista de roles, con las opciones para crear y un enlace para ver
real el detalle.
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

232
Cumplió Sí ( ) No ( ) N/A (X)
post-
condición
Tabla 163: Ejecución de caso de prueba Consultar roles

Código CP62-01
Nombre del Crear rol
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado Mensaje de confirmación, confirmando la creación del rol
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

233
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 164: Ejecución de caso de prueba Crear rol

Código CP63-01
Nombre del Edición de un rol
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados
Resultado • Mensaje de confirmación de la modificación de la actividad
real • Se visualiza el rol con los datos modificados en la tabla
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

234
Cumplió Sí (X) No ( ) N/A ( )
post-
condición
Tabla 165: Ejecución de caso de prueba Edición de un rol

Código CP64-01
Nombre del Eliminación de un rol
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsable Katherine Cerna
de Ejecutar
el Caso
Resultados

235
Resultado Mensaje de confirmación de la eliminación del rol
real
Tipo de Éxito (X) Fallo ( )
resultado
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 166: Ejecución de caso de prueba Eliminación de un rol

Código CP65-01
Nombre del Cambiar contraseña propia
Caso de
Prueba
Fecha de 19/10/2020
ejecución
Responsabl Patricia Solano
e de
Ejecutar el
Caso
Resultados
Resultado Mensaje de éxito, confirmando el cambio de contraseña.
real
Tipo de Éxito (X) Fallo ( )
resultado

236
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 167: Ejecución de caso de prueba Cambiar contraseña propia

Código CP66-01
Nombre del Recuperar contraseña
Caso de
Prueba
Fecha de 20/10/2020
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados
Resultado Mensaje de éxito, confirmando que la solicitud de reste ha sido enviada.
real
Tipo de Éxito (X) Fallo ( )
resultado

237
Evidencia

Cumplió Sí (X) No ( ) N/A ( )


post-
condición
Tabla 168: Ejecución de caso de prueba Recuperar contraseña

Código CP67-01
Nombre del Caso Consultar tiempo disponible
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Katherine Cerna
Ejecutar el Caso
Resultados
Resultado real Se muestran correctamente la lista de permisos y las horas disponibles
para cada uno del usuario.
Tipo de resultado Éxito ( X) Fallo ( )
Evidencia

238
Cumplió post- Sí ( ) No ( ) N/A (X)
condición
Tabla 169: Ejecución de caso de prueba Consultar tiempo disponible

Código CP68-01
Nombre del Caso Solicitar Permiso
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Katherine Cerna
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito en la creación de la solicitud, se muestra la solicitud en
el listado de mis permisos.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 170: Ejecución de caso de prueba Solicitar permiso

Código CP69-01
Nombre del Caso Consultar permisos propios
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Elena García
Ejecutar el Caso
239
Resultados
Resultado real Se muestra el detalle del permiso seleccionado.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 171: Ejecución de caso de prueba Consultar permisos propios

Código CP70-01
Nombre del Gestionar Tipo de Ausencia
Caso de
Prueba
Fecha de 20/01/2021
ejecución
Responsable Marisol García
de Ejecutar el
Caso
Resultados

240
Resultado real Se visualiza todos los tipos de ausencia que se han ingresado hasta el
momento.
Tipo de Éxito (X ) Fallo ( )
resultado
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 172: Ejecución de caso de prueba Gestionar tipo de ausencia

Código CP71-01
Nombre del Caso Crear Tipo de Ausencia
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito, confirmando que el tipo de ausencia ha sido guardado
exitosamente.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 173: Ejecución de caso de prueba Crear tipo de ausencia

241
Código CP72-01
Nombre del Caso Editar Tipo de Ausencia
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito, confirmando que el tipo de ausencia ha sido guardado
exitosamente.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 174: Ejecución de caso de prueba Editar tipo de ausencia

Código CP73-01
Nombre del Caso Eliminar Tipo de Ausencia
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito, confirmando que el tipo de ausencia ha sido eliminado
exitosamente.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí (X) No ( ) N/A ( )


condición
Tabla 175: Ejecución de caso de prueba Eliminar tipo de ausencia

242
Código CP74-01
Nombre del Gestionar Tipo de Permiso
Caso de Prueba
Fecha de 20/01/2021
ejecución
Responsable de Patricia Solano
Ejecutar el Caso
Resultados
Resultado real Tipos de permisos mostrados correctamente
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió post- Sí ( ) No ( ) N/A ( X )


condición
Tabla 176: Ejecución de caso de prueba Gestionar tipo de permiso

Código CP75-01
Nombre del Crear tipo de permiso
Caso de Prueba
Fecha de 20/01/2021
ejecución
Responsable de Patricia Solano
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito, confirmando que el tipo de permiso ha sido guardado.
Tipo de Éxito ( X ) Fallo ( )
resultado

243
Evidencia

Cumplió post- Sí ( X ) No ( ) N/A ( )


condición
Tabla 177: Ejecución de caso de prueba Crear tipo de permiso

Código CP76-01
Nombre del Editar tipo de permiso
Caso de Prueba
Fecha de 20/01/2021
ejecución
Responsable Patricia Solano
de Ejecutar el
Caso
Resultados
Resultado real Mensaje de éxito, confirmando que el tipo de permiso ha sido modificado.
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

244
Cumplió post- Sí ( X ) No ( ) N/A ( )
condición
Tabla 178: Ejecución de caso de prueba Editar tipo de permiso

Código CP77-01
Nombre del Eliminar tipo de permiso
Caso de
Prueba
Fecha de 20/01/2021
ejecución
Responsable Patricia Solano
de Ejecutar
el Caso
Resultados
Resultado Mensaje de éxito, confirmando que el tipo de permiso ha sido eliminado.
real
Tipo de Éxito ( X ) Fallo ( )
resultado
Evidencia

Cumplió Sí ( X ) No ( ) N/A ( )
post-
condición
Tabla 179: Ejecución de caso de prueba Eliminar tipo de permiso

245
Código CP78-01
Nombre del Consultar tiempos disponibles de otros
Caso de Prueba
Fecha de 20/01/2021
ejecución
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Se visualiza la lista de los tipos de permisos y las horas disponibles para cada
uno.
Tipo de Éxito (X ) Fallo ( )
resultado

Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 180: Ejecución de caso de prueba Consultar tiempos disponibles de otros

Código CP79-01
Nombre del Caso Consultar permisos de otros
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Se visualiza los datos personales del empleado y los detalles del
permiso.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia
Cumplió post- Sí ( ) No ( ) N/A (X)
condición
Tabla 181: Ejecución de caso de prueba Consultar permisos de otros

246
Código CP80-01
Nombre del Caso Cargar asistencias
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Marisol García
Ejecutar el Caso
Resultados
Resultado real Mensaje de éxito, confirmando que las asistencias han
sido guardadas. El nuevo registro aparece en el listado.
Tipo de resultado Éxito (X ) Fallo ( )
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 182: Ejecución de caso de prueba Cargar asistencias

Código CP81-01
Nombre del Caso Ver mis aprobaciones
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Katherine Cerna
Ejecutar el Caso
Resultados
Resultado real Se muestran correctamente las solicitudes aprobadas de los empleados.
Tipo de resultado Éxito (X) Fallo ( )

247
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 183: Ejecución de caso de prueba Ver mis aprobaciones

Código CP82-01
Nombre del Caso Aprobar Permiso
de Prueba
Fecha de ejecución 20/01/2021
Responsable de Katherine Cerna
Ejecutar el Caso
Resultados
Resultado real Se muestra la solicitud en la pestaña de resueltas del usuario.
Tipo de resultado Éxito (X) Fallo ( )

248
Evidencia

Cumplió post- Sí ( ) No ( ) N/A (X)


condición
Tabla 184: Ejecución de caso de prueba Aprobar permiso

4.2.4. Errores encontrados

Código de Descripción del Reportado por Asignado a Estado


prueba fallo
CP06-01 La perspectiva a Patricia Solano Elena García Cerrado
eliminar no tiene
datos asociados,
pero el mensaje
de error indica lo
contrario.
CP17-01 Fallo al editar el Roberto Castro Katherine Cerna Cerrado
cambio de
porcentaje de
indicador.
Tabla 185: Resumen de errores

249
4.2.5. Resultados de pruebas realizadas

Las pruebas se realizaron con el apoyo de 4 usuarios de la DIGESTYC, se muestra a continuación


el cuadro resumen con el resultado de las pruebas:

Caso de prueba Estado


CP01-Consultar los planes quinquenales Aprobado
CP02-Creación de plan quinquenal Aprobado
CP03-Edición de un plan quinquenal Aprobado
CP04-Creación de perspectiva Aprobado
CP05-Edición de una perspectiva Aprobado
CP06-Eliminación de una perspectiva Aprobado
CP07-Consultar objetivos estratégicos Aprobado
CP08-Creación de objetivo estratégico Aprobado
CP09-Edición de un objetivo estratégico Aprobado
CP10-Eliminación de un objetivo estratégico Aprobado
CP11-Consultar iniciativas Aprobado
CP12-Creación de iniciativa Aprobado
CP13-Edición de una iniciativa Aprobado
CP14-Eliminación de una iniciativa Aprobado
CP15-Consultar de Indicadores Aprobado
CP16-Creación de un Indicador Aprobado
CP17-Edición de un Indicador Aprobado
CP18-Eliminación de un Indicador Aprobado
CP19-Edición de las fechas de cierre para el seguimiento de Indicadores Aprobado
CP20-Cambiar estado de un Plan Estratégico Aprobado
CP21-Consulta de Planes Operativos Aprobado
CP22-Creación de un nuevo Plan Operativo. Aprobado
CP23-Modificación de un Plan Operativo Aprobado
CP24-Eliminación de un Plan Operativo. Aprobado
CP25-Consultar Iniciativas de Plan Operativo Aprobado
CP26-Agregar Iniciativas Aprobado
CP27-Eliminar iniciativa del plan anual Aprobado
CP28-Filtrar Actividades Aprobado
CP29-Crear Actividad Aprobado
CP30-Editar Actividad Aprobado
CP31-Eliminar Actividad Aprobado
CP32-Configurar cierre de mes Aprobado
CP33-Cambiar estado de plan operativo Aprobado
CP34-Reportar avance de KPI Aprobado
CP35-Reportar avance de Actividad Aprobado
CP36-Ver avance de actividad Aprobado

250
CP37-Ver Reporte Aprobado
CP38-Ver unidades organizativas Aprobado
CP39-Agregar unidad organizativa Aprobado
CP40-Editar unidad organizativa Aprobado
CP41-Eliminar unidad organizativa Aprobado
CP42-Creación de un Cargo Aprobado
CP43-Modificación de un Cargo Aprobado
CP44-Desactivación de un Cargo Aprobado
CP45-Ver Unidades de Medida Aprobado
CP46-Agregar Unidad de Medida Aprobado
CP47-Editar unidad de medida Aprobado
CP48-Eliminar unidad de medida Aprobado
CP49-Consultar fuentes de financiamiento Aprobado
CP50-Crear fuente de financiamiento Aprobado
CP51-Editar fuente de financiamiento Aprobado
CP52-Eliminar fuente de financiamiento Aprobado
CP53-Consultar tipos de justificación Aprobado
CP54-Crear tipo de justificación Aprobado
CP55-Editar tipo de justificación Aprobado
CP56-Eliminar tipo de justificación Aprobado
CP57-Consultar usuarios Aprobado
CP58-Crear usuario Aprobado
CP59-Editar usuario Aprobado
CP60-Desactivar usuario Aprobado
CP61-Consultar roles Aprobado
CP62-Crear rol Aprobado
CP63-Edición de un rol Aprobado
CP64-Eliminación de un rol Aprobado
CP65-Cambiar contraseña propia Aprobado
CP66-Recuperar contraseña Aprobado
CP67-Consultar tiempo disponible Aprobado
CP68-Solicitar Permiso Aprobado
CP69-Consultar permisos propios Aprobado
CP70-Gestionar Tipo de Ausencia Aprobado
CP71-Crear tipo de ausencia Aprobado
CP72-Editar tipo de ausencia Aprobado
CP73-Eliminar tipo de ausencia Aprobado
CP74-Gestionar Tipo de Permiso Aprobado
CP75-Crear tipo de permiso Aprobado
CP76-Editar tipo de permiso Aprobado
CP77-Eliminar tipo de permiso Aprobado
CP78-Consultar tiempos disponibles de otros Aprobado

251
CP79-Consultar permisos de otros Aprobado
CP80-Cargar asistencias Aprobado
CP81-Ver mis aprobaciones Aprobado
CP82-Aprobar Permiso Aprobado
Tabla 186: Cuadro resumen del resultado de las pruebas

252
5.CAPÍTULO V: PLAN
DE IMPLEMENTACIÓN

253
5.1. Objetivos
5.1.1. Objetivo General

Crear un plan de implementación que permita la puesta en marcha del SIAPI en la


Dirección General de Estadísticas y Censos, definiendo el recurso humano,
tecnológico y las actividades que se necesita.

5.1.2. Objetivos Específicos

• Definir las actividades necesarias para completar el plan de implementación.


• Seleccionar el personal adecuado que se encargará de la implementación del SIAPI.
• Definir un plan de trabajo que permita detallar las etapas que se deben poner en
marcha para la implementación del SIAPI
• Crear un plan de capacitación que permita el adiestramiento del personal de la
institución en el uso del SIAPI

5.2. Planeación

Se definirá el desglose analítico, el listado de actividades a realizar y la asignación de cada una de


las actividades al recurso humano seleccionado.

5.2.1. Plan de trabajo

Ilustración 100: Plan de trabajo

Preparación del proyecto

En esta etapa se realizan las siguientes actividades:


1. Asignación del director del proyecto: Se decide que empleado de DIGESTYC será el encargado
de dirigir la implementación de la aplicación, el velará por el cumplimiento del cronograma
de actividades.
2. Selección del recurso humano que va a participar en el proyecto en base a estos perfiles:

254
Puesto Misión del Puesto Requisito del puesto
Capacitador para el área de Explicar todas las Conocimientos sobre planes
planificación. funcionalidades del sistema y estratégico, planes anuales
responder a las dudas del de la institución y tener el
personal que va a capacitar. conocimiento sobre el uso del
sistema.
Capacitador para el área de Explicar todas las Conocimiento sobre el
recursos humanos. funcionalidades del sistema y manejo de permisos de
responder a las dudas del ausencia y tener el
personal que va a capacitar. conocimiento sobre el uso del
sistema.
Administrador de base de Implementar la base de datos Conocimiento sobre bases de
datos. y hacer migración de datos. datos PostgreSQL.
Desarrollador en Angular y Realizar la instalación tanto Conocimiento sobre sitios en
Spring Boot del Backend como el producción, Spring Security.
Frontend
Tabla 187: Recurso humano que va a participar en el proyecto

3. Verificar que se cuente con el recurso de hardware necesario para la implementación del
sistema, tanto como en el servidor y los equipos donde se utilizará la aplicación.

Instalación

1. Instalación de una máquina virtual en el servidor de DIGESTYC


2. Instalación de la base de datos PostgreSQL
3. Instalar Git, Java y Maven
4. Instalación del backend
5. Instalar Node, npm, y CLI
6. Instalación del frontend
7. Instalación de navegadores en las máquinas donde se usará la aplicación

Pruebas

Para la realización de pruebas del SIAPI, se desarrollarán las siguientes actividades:


1. Creación de datos de prueba
2. Diseño de pruebas que permitan detectar errores en la instalación del SIAPI
3. Realización de las pruebas, estas deben verificar que cada usuario pueda acceder a sus
respectivas pantallas según sus permisos, que se almacenen correctamente los datos.
4. Verificar los resultados de las pruebas y hacer correcciones.

255
Capacitación del personal

Usuarios de la aplicación que se van a capacitar

• Empleados de la unidad de planificación y desarrollo institucional


• Encargado de registro y control de personal
• Jefes de unidades
• Analista Programador de la unidad de informática
Para la capacitación del personal de DIGESTYC se llevarán a cabo las siguientes actividades:
1. Preparación de la capacitación
1.1. Diseñar la capacitación para los diferentes usuarios de la aplicación
1.2. Preparar todo el material que se utilizará para la capacitación
1.3. Imprimir manuales de usuario o distribuirlos con anticipación en pdf
1.4. Dividir en grupos los usuarios que serán capacitados según los niveles de acceso que van
a tener.
2. Capacitación del personal
Esta actividad permitirá el adiestramiento del personal que labora en la institución en las
opciones a las que tendrán acceso dentro del sistema.

Tema Actividades Personal Involucrado


Iniciación en el uso de la -Inicio de Sesión Todos los usuarios
aplicación. -Datos Personales
-Cambio de contraseña
-Opciones del menú
-Cerrar Sesión
Módulo de Planificación. -Creación de planes Usuarios de la unidad de
estratégicos planificación
-Creación de planes
operativos
-Generación de reportes
Módulo de Planificación -Seguimiento de actividades Usuarios de la unidad de
(Seguimiento) planificación
Usuarios jefes de unidades
Módulo de Seguridad. -Administración de usuarios, Usuarios de la unidad
roles y permisos informática
Módulo de Permiso. -Hacer solicitudes, Todos los usuarios
aprobarlas cancelarlas
Módulo de Organización -Gestionar los tipos de Usuarios de unidad de
Módulo de Permiso. permisos recursos humanos
-Gestionar unidades y cargos
Tabla 188: Temas para Capacitación del personal

256
Puesta en marcha
Después de verificar los resultados de la fase de pruebas, verificar que cada módulo está
funcionando correctamente y si no se encuentra dificultad alguna, se oficializa que el sistema
está listo para su uso.

Cronograma de actividades
No. Actividad Duración Fecha Fecha Final
(día hábil) Inicial
Preparación del proyecto
1 Asignación de director del proyecto 1 1/2/2021 1/2/2021
2 Selección del recurso humano que va a 1 1/2/2021 1/2/2021
participar en el proyecto
3 Verificar que se cuente con el recurso de 1 2/2/2021 2/2/2021
hardware necesario para la implementación
Instalación
4 Instalación de una máquina virtual en el 1 3/2/2021 3/2/2021
servidor de DIGESTYC
5 Instalación de la base de datos PostgreSQL 1 4/2/2021 4/2/2021
6 Instalar Git, Java y Maven 1 4/2/2021 4/2/2021
7 Instalación del backend 1 4/2/2021 4/2/2021
8 Instalar Node, npm, y CLI 1 5/2/2021 5/2/2021
9 Instalación del frontend 1 5/2/2021 5/2/2021
10 Instalación de navegadores en las máquinas 3 8/2/2021 11/2/2021
donde se usará la aplicación o verificar que
tengan la última versión instalada
Pruebas
11 Creación de datos de prueba 1 12/2/2021 12/2/2021
12 Diseño de pruebas que permitan detectar 2 15/2/2021 16/2/2021
errores en la instalación del SIAPI
13 Realización de las pruebas, estas deben 3 17/2/2021 19/2/2021
verificar que cada usuario pueda acceder a sus
respectivas pantallas según sus permisos, que
se almacenen correctamente los datos.
14 Verificar los resultados de las pruebas y hacer 1 22/2/2021 22/2/2021
correcciones.
Capacitación del personal
15 Preparación de la capacitación 2 23/2/2021 24/2/2021
16 Capacitación del personal 6 25/2/2021 4/3/2021
Puesta en marcha
17 Arranque del sistema 1 5/3/2021 5/3/2021
Tabla 189: Cronograma de actividades del plan de implementación

257
CONCLUSIONES

Mediante el análisis de la situación actual y utilizando las técnicas Lluvia de Ideas y Diagrama
Causa – Efecto, se logró identificar el principal problema que actualmente se tiene en la Unidad
de Planificación y Desarrollo Institucional y el Departamento de Recursos Humanos de DIGESTYC;
además de los factores que se ven involucrados los cuales son: Personas, Procedimientos,
Presupuesto, Tecnología e Infraestructura.
La administración de procesos es una herramienta fundamental en toda institución, ya sea de
forma manual o mecanizada, una mala administración hace fracasar cualquier intento por
mejorar y obtener crecimiento. Es por eso que con el desarrollo de este Sistema Informático se
benefician la unidad de Planificación y Desarrollo Institucional, también el departamento de
Recursos Humanos; así como los empleados de las diferentes unidades que conforman la
DIGESTYC.
Por medio de identificación de requerimientos pudimos determinar lo que los usuarios necesitan,
plasmando estas necesidades en la etapa de análisis y diseño, pero se requirió de una gran
participación de ellos para garantizar que el software cumpla con los objetivos de la institución.
El prototipado incremental permite validar con los clientes eficientemente el diseño de la
aplicación por cada incremento que se realiza, ayuda a evitar grandes cambios o inconformidades
del cliente durante la etapa de desarrollo porque les permite ver el alcance del software. También
se puede reutilizar parte del html y CSS del prototipo en la etapa de desarrollo y ayuda a tener
una visión clara de lo que se va a programar por lo que utilizar esta metodología es ventajosa
para los desarrolladores.

258
RECOMENDACIONES

3. Seguridad en capa de Transferencia: Si bien el sistema está dotado de seguridad mediante


protocolo OAuth2, encriptado de contraseñas y validación de permisos, es necesario
asegurar que también la red sobre la cual se sostenga comunicación cuenta con seguridad
apropiada. Recomendamos implementar una combinación o por lo menos uno de los
siguientes:
a. SSL
b. TLS
c. TTLS

4. Backups periódicos: Los datos almacenados en este sistema serán de suma importancia
para la institución, por lo cual la perdida de los mismos incurriría en graves consecuencias
en términos de eficiencia y, por lo tanto, en términos económicos. Recomendamos realizar
al menos un backup diario en las horas que haya menor uso del sistema.

5. Actualizar periódicamente las dependencias del proyecto: Dado que el sistema utiliza
dependencias, ya sean estas de Maven o NPM, es necesario mantener estas al día con su
versión más reciente, esto ayudará a minimizar el riesgo de hackeo del sistema y, además,
prolongará la vida útil del mismo.

259
REFERENCIAS
Alvarez, M. A. (9 de Mayo de 2001). Qué es PHP. Recuperado el 30 de Septiembre de 2020, de
Qué es PHP: https://desarrolloweb.com/articulos/392.php
Angeles, J. (3 de Agosto de 2020). ¿Qué es Python? El lenguaje de programación más popular de
2020 | Crehana PE. Recuperado el 12 de Septiembre de 2020, de ¿Qué es Python? El
lenguaje de programación más popular de 2020 | Crehana PE:
https://www.crehana.com/pe/blog/web/que-es-python/
Asamblea Legislativa. (16 de Abril de 2020). Asamblea Legislativa de El Salvador. Obtenido de
https://www.asamblea.gob.sv/sites/default/files/documents/decretos/B6D83DBF-
32D9-4DEF-BE6C-88D49137BC63.pdf
Blancarte, O. (17 de Julio de 2018). Que es Spring Boot y su relación con los microservicios.
Recuperado el 13 de Agosto de 2020, de Que es Spring Boot y su relación con los
microservicios: https://www.oscarblancarteblog.com/2018/07/17/spring-boot-relacion-
los-microservicios/
Borgues, S. (19 de Noviembre de 2019). ¿Qué es PostgreSQL? - Para qué sirve, Características e
Instalación. Recuperado el 30 de Septiembre de 2020, de ¿Qué es PostgreSQL? - Para qué
sirve, Características e Instalación: https://blog.infranetworking.com/servidor-
postgresql/#Que_es_PostgreSQL
Cortez, J. (16 de Abril de 2020). Jefe del Departamento de Análisis y Desarrollo.
Desarrollo de aplicaciones híbridas con entorno Ionic. (11 de Junio de 2019). Obtenido de
https://fp.uoc.fje.edu/blog/desarrollo-de-aplicaciones-hibridas-con-entorno-ionic/
DEVS, Q. (31 de Mayo de 2019). Qué es Ionic y por qué te interesa conocerlo si eres desarrollador
web. Obtenido de Qué es Ionic | Quality Devs | Somos Desarrolladores:
https://www.qualitydevs.com/2019/05/31/que-es-ionic-desarrollador-web/
Gobierno de El Salvador. (2020). Decretos y Comunicados | COVID-19. Obtenido de
https://covid19.gob.sv/category/noticias/decretos-y-comunicados/
ICTEA. (s.f.). ¿Qué es el lenguaje de programación JAVA? - Base de Conocimientos - ICTEA.
Recuperado el 30 de Septiembre de 2020, de ¿Qué es el lenguaje de programación JAVA?
- Base de Conocimientos - ICTEA:
https://www.ictea.com/cs/knowledgebase.php?action=displayarticle&id=8790
Jaime, B. (Diciembre de 2019). Características Del Lenguaje Java Ventajas Y Desventajas.
Recuperado el 30 de Septiembre de 2020, de Características Del Lenguaje Java Ventajas
Y Desventajas: https://idoc.pub/documents/idocpub-19n07gv1o5lv

260
Keep Services. (9 de Septiembre de 2018). Consumo eléctrico de las computadoras. Recuperado
el 7 de abril de 2020, de KEEP.SERVICES:
https://www.keep.services/2018/09/08/consumo-electrico-de-las-computadoras/
Lopez, D. (26 de Febrero de 2020). Encargada del área de Registro y Control de Personal.
Ministerio de Administraciones Públicas. (12 de Abril de 2020). Análisis del Sistema de
Información. Obtenido de Portal Administración Electrónica:
https://administracionelectronica.gob.es/pae_Home/dam/jcr:ad870327-56b7-4dfa-
af15-e62222f45b90/METRICA_V3_Analisis_del_Sistema_de_Informacion.pdf
Ministerio de Administraciones Públicas. (12 de Abril de 2020). Diseño del Sistema de
Información. Obtenido de Portal Administración Electrónica:
https://administracionelectronica.gob.es/pae_Home/dam/jcr:7f366cd1-6759-42d9-
9e0b-31edce0256d9/METRICA_V3_Diseno_del_Sistema_de_Informacion.pdf
Ministerio de Administraciones Públicas. (12 de Abril de 2020). Planificación de Sistemas de
Información. Obtenido de Portal de Administración Electrónica:
https://administracionelectronica.gob.es/pae_Home/dam/jcr:8d2cfee5-5617-4dea-
8cf8-7b7a0131de84/METRICA_V3_Panificacion_de_Sistemas_de_Informacion.pdf
Molina Argueta, Y. d. (14 de Abril de 2020). Jefa de la Unidad de Planificación y Desarrollo
Institucional.
Programación en Java/Características del lenguaje. (21 de Septiembre de 2020). Recuperado el
30 de Septiembre de 2020, de Programación en Java/Características del lenguaje:
https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Caracter%C3%ADsticas_d
el_lenguaje
Robles, V. (5 de Agosto de 2017). ¿Que es Angular y para que sirve? Recuperado el 13 de Agosto
de 2020, de ¿Que es Angular y para que sirve?:
https://victorroblesweb.es/2017/08/05/que-es-angular-y-para-que-sirve/
Superintendencia General de Electricidad y Telecomunicaciones. (2020). Pliego tarifario del
suministro de energía eléctrica al consumidor final, vigente del 15 de enero de 2020 al 14
de abril de 2020. Recuperado el 8 de abril de 2020, de Superintendencia General de
Electricidad y Telecomunicaciones: https://www.siget.gob.sv/tarifas-electricidad-ano-
2020/
Web, D. (2016). Git vs. SVN: una comparativa del control de versiones - 1&1. Recuperado el 13 de
Agosto de 2020, de Git vs. SVN: una comparativa del control de versiones - 1&1:
https://www.1and1.es/digitalguide/paginas-web/desarrollo-web/git-vs-svn-una-
comparativa-del-control-de-versiones/

261
GLOSARIO

A
API: abreviatura de Application Programming Interfaces que en español significa interfaz de
programación de aplicaciones, es un conjunto de definiciones y protocolos que se utiliza para
desarrollar e integrar el software de las aplicaciones.

C
Cuadro de Mando Integral (CMI): es un modelo de gestión que traduce la estrategia en objetivos
relacionados entre sí, medidos a través de indicadores y ligados a unos planes de acción que
permiten alinear el comportamiento de los miembros de la organización con la estrategia de la
empresa.

D
Descentralización: proceso de distribuir o dispersar funciones, poderes, personas o cosas fuera
de una ubicación o autoridad central.

P
Prototipado incremental: metodología en la que se tienen múltiples ciclos de desarrollo, lo que
hace que el ciclo de vida sea un ciclo de múltiples cascadas. El producto final se divide en
prototipos pequeños y se desarrolla individualmente, posteriormente los prototipos se fusionan
en un solo producto.

W
Web Scraping: es una técnica empleada para extraer grandes cantidades de datos de sitios web,
mediante la cual los datos se extraen y se guardan en un archivo local o en una base de datos en
formato de tabla.

262
ANEXOS

Anexo 1: Tabla de Herramientas utilizadas para el desarrollo

Herramientas Opciones
Procesador de Texto Writer – Libre Office (https://es.libreoffice.org/), Microsoft
Office Word (https://www.office.com/).
Diagramador Lucidchart con cuenta estudiantil
(https://www.lucidchart.com/), Power Designer
(https://www.sap.com/products/powerdesigner-data-
modeling-tools.html).
IDE o Editor de Texto Visual Studio Code (https://code.visualstudio.com/), Eclipse
(https://www.eclipse.org/ide/), Sublime Text 3
(https://www.sublimetext.com/3)
Sistema Operativo del Servidor Debian 10 (https://www.debian.org/), Microsoft Windows
Server 2012 (https://www.microsoft.com/es-
es/download/details.aspx?id=29062)
Servidor Web Apache httpd 2.4 (https://httpd.apache.org/)
Motor de Base de Datos PostgreSQL 12.0 (https://www.postgresql.org/), Microsoft SQL
Server 2008 R2 (https://www.microsoft.com/es-
es/download/details.aspx?id=30438)
Framework CSS Bootstrap 4 (https://getbootstrap.com/)
Framework Frontend Angular 9 (https://angular.io/), React (https://es.reactjs.org/)
Framework Backend Spring (https://spring.io/), Net Core
(https://dotnet.microsoft.com/download)
Control de Versiones Git (https://git-scm.com/)
Tabla 190: Alternativas para Herramientas

263
Anexo 2: Planificación Realista

Ilustración 101: Planificación realista

264
Anexo 3: Planificación Pesimista

Ilustración 102: Planificación pesimista

265
Anexo 4: Infraestructura para la implementación
Equipo Características
Servidor • Memoria RAM: 32 GB (16x2GB), 1066MHz, DDR3, Single Ranked
• Procesador: 2x Intel® Xeon® E5-4620 2.20GHz, 16M Caché, 7.20 GT/s QPI,
Turbo, 8C, 95W, Max Mem 1333MHz.
• Disco Duro: 4 HD de 300 GB 10K RPM Serial-Attach SCSI 6Gbps 2.5 pulgadas,
Configurados para RAID 5.
• Sistema operativo: Microsoft Windows 2012 Server Estándar R2 64 Bits,
español, Licencia MOLP Gobierno.
Clientes • Memoria RAM: 2 GB.
• Procesador: Core 2 DUO 2.13 GHz
• Disco Duro: 80 GB
• Sistema operativo: Windows XP
• Google Chrome: 79.0
• Firefox: 51.0
Tabla 191: Infraestructura para la implementación

Anexo 5: Análisis de selección de tecnologías de desarrollo

BACKEND

LENGUAJE DE PROGRAMACIÓN

JAVA: es un lenguaje de programación de propósito general, concurrente, orientado a objetos


que fue diseñado específicamente para tener tan pocas dependencias de implementación como
fuera posible. Su intención es permitir que los desarrolladores de aplicaciones escriban el
programa una vez y lo ejecuten en cualquier dispositivo (conocido en inglés como WORA, o
"write once, run anywhere"), lo que quiere decir que el código que es ejecutado en una
plataforma no tiene que ser recompilado para correr en otra.
Se utiliza este lenguaje de programación debido a las siguientes razones:

• Es un lenguaje de programación robusto, ofrece una mayor seguridad.


• Está orientado a objetos, esto permite la fácil creación y gestión de grandes proyectos
mejorando la calidad.
• Cuenta con una independencia de plataforma, facilita que los programas escritos en JAVA
pueden ejecutarse en cualquier tipo de hardware.
• Se tiene conocimiento en el desarrollo de proyectos con este lenguaje de programación.
PYTHON: Es un lenguaje de programación interpretado, multiparadigma y multiplataforma
usado, principalmente, en Big Data, AI (Inteligencia Artificial), Data Science, frameworks de
pruebas y desarrollo web. Esto lo convierte en un lenguaje de propósito general de gran nivel
debido a su extensa biblioteca, cuya colección ofrece una amplia gama de instalaciones.

266
PHP: es el acrónimo de Hipertext Preprocesor. Es un lenguaje de programación del lado del
servidor gratuito e independiente de plataforma, rápido, con una gran librería de funciones y
mucha documentación.
En el siguiente cuadro se muestra el análisis comparativo realizado a los 3 lenguajes de
programación.

JAVA PYTHON PHP


CARACTERISTICAS
• Totalmente orientado a • Interpretado. • Es usado para realizar
objetos. Se apoya en los Interpreta el código, páginas web dinámicas.
conceptos de encapsulación, es decir, lo traduce y • Se ejecuta en el servidor
herencia, polimorfismo, etc. lo ejecuta a la vez. • Las páginas que genera
• Disponibilidad de un amplio • Multiparadigma. son visibles para
conjunto de bibliotecas. Con Admite el uso de prácticamente cualquier
las cuales es posible realizar varios paradigmas de navegador y
prácticamente cualquier tipo programación computadora o
de aplicación. (modelos de dispositivos móviles que
• Lenguaje simple. desarrollo), no exige pueda interpretar el
• Distribuido. Proporciona una un estilo único de HTML.
colección de clases para su programación. • No se necesita la
uso en aplicaciones de red, Permite los instalación de PHP en el
que permiten abrir sockets y paradigmas de: lado del cliente.
establecer y aceptar Programación • Lenguaje de alto nivel
conexiones con servidores o orientada a objetos,
clientes remotos, facilitando programación
así la creación de imperativa y
aplicaciones distribuidas. programación
• Interpretado y compilado a funcional.
la vez. • Multiplataforma.
• Robusto. Proporciona Puede ejecutarse en
numerosas comprobaciones diferentes sistemas
en compilación y en tiempo operativos como Unix,
de ejecución. Linux, macOS y
• Seguro. Windows.
• Alto rendimiento. • Tipado dinámico.
• Portable.

FORTALEZAS
• Es una fuente abierta. • Se ejecuta del lado del • Fácil.
• Independiente de la cliente • Rápido.
plataforma. • lenguaje de scripting • Multiplataforma.
• Realiza la colección de seguro y fiable • Maneja base de datos
basura de las ayudas, así que
267
la gerencia de memoria es • Es un lenguaje fácil de • Libre y gratuito.
automática. aprender y que puede • Posee varias funciones
• Asigna objetos en el apilado. hacer un sitio web muy • No requiere definición de
• Desarrollo de aplicaciones dinámico y lograr variables
web dinámicas. grandes efectos. • Puede ser combinado
• Programación modular y • múltiples librerías de junto a HTML
código reutilizable. terceros las cuales • Muchos servicios de
pueden facilitar el alojamiento web tienen
desarrollo PHP
DEBILIDADES
• Dado que la máquina virtual • No soporta herencias • Necesita un servidor para
de java es un intérprete y • Código visible por funcionar
redunda en una falta de cualquier usuario. • La POO es deficiente para
rendimiento con relación a aplicaciones grandes es
aplicaciones equivalentes muy lento lo que en sitios
escritas en código máquina web que tendrán muchas
nativo. peticiones por segundo o
• La API es muy grande y sobre cargas muy pesadas de
diseñada acceso a BD, no será la
• No soporta decimales mejor opción.
verdaderos.
EXPERIENCIA PREVIA
SI SI NO
Tabla 192: Análisis comparativo de lenguajes de programación

FRAMEWORK
SPRING BOOT
Spring Boot es una herramienta que nace con la finalidad de simplificar aún más el desarrollo de
aplicaciones basadas en el ya popular framework Spring Core. Spring Boot busca que el
desarrollador solo se centre en el desarrollo de la solución, olvidándose por completo de la
compleja configuración que actualmente tiene Spring Core para poder funcionar.
Spring Boot centra su éxito en las siguientes características que lo hacen extremadamente fácil
de utilizar:
• Configuración: Spring Boot cuenta con un complejo módulo que auto configura todos los
aspectos de nuestra aplicación para poder simplemente ejecutar la aplicación, sin tener
que definir absolutamente nada.
• Resolución de dependencias: Con Spring Boot solo hay que determinar qué tipo de
proyecto estaremos utilizando y él se encarga de resolver todas las
librerías/dependencias para que la aplicación funcione.

268
• Despliegue: Spring Boot se puede ejecutar como una aplicación Stand-alone, pero
también es posible ejecutar aplicaciones web, ya que es posible desplegar las aplicaciones
mediante un servidor web integrado, como es el caso de Tomcat, Jetty o Undertow.
• Métricas: Por defecto, Spring Boot cuenta con servicios que permite consultar el estado
de salud de la aplicación, permitiendo saber si la aplicación está prendida o apagada,
memoria utilizada y disponible, número y detalle de los Bean’s creado por la aplicación,
controles para el prendido y apagado, etc.
• Extensible: Spring Boot permite la creación de complementos, los cuales ayudan a que la
comunidad de Software Libre cree nuevos módulos que faciliten aún más el desarrollo.
FRONTEND

TECNOLOGIA WEB

ANGULAR
Es un framework de desarrollo para JavaScript creado por Google. La finalidad de Angular es
facilitar el desarrollo de aplicaciones web SPA y además de brindar herramientas para trabajar
con los elementos de una web de una manera más sencilla y óptima.
Otro propósito que tiene Angular es la separación completa entre el front-end y el back-end en
una aplicación web.
Características
• Permite crear aplicaciones de una sola página. La navegación entre secciones y páginas
de la aplicación, así como la carga de datos, se realiza de manera dinámica, casi
instantánea, asíncronamente haciendo llamadas al servidor (backend con un API REST) y
sobre todo sin refrescar la página en ningún momento.
• Cuenta con respaldo de Google y tiene una comunidad grande.

TECNOLOGIA MOVIL

IONIC
Ionic es una estructura tecnológica (Framework) de código abierto que se utiliza en el desarrollo
de aplicaciones móviles híbridas, es decir, se combinan el HTML5, CSS y JavaScript dando como
resultado aplicaciones con una interfaz amigable e intuitiva para el usuario que luego se
comercializan o descargan en plataformas como Android o IOs.
Ventajas

• Es un entorno compatible con todas las plataformas (Android e iOS).


• Utiliza lenguajes muy conocidos por los desarrolladores (HTML, CSS y JS), de modo que su
implantación en los equipos es relativamente fácil.

269
• Da soporte al entorno AngularJS y estudia incluir otros, como Ember.js o Knockout.
• Se puede reutilizar el código de una aplicación web en una aplicación móvil.
• En el desarrollo de aplicaciones híbridas, solo se necesita un único proceso de desarrollo
e implantación para Android, iOS y web.

BASE DE DATOS

POSTGRESQL
PostgreSQL, o simplemente Postgres para darle un nombre más pintoresco, es un sistema de
código abierto de administración de bases de datos del tipo relacional, aunque también es
posible ejecutar consultas que sean no relaciones. En este sistema, las consultas relacionales se
basan en SQL, mientras que las no relacionales hacen uso de JSON.
Características
Es de código abierto: Esto ha permitido que una gran comunidad de desarrolladores crezca para
respaldarlo y continuar mejorándolo.
Es gratuito: como cabe esperarse se trata de un sistema totalmente gratis, no tenemos que pagar
nada por utilizarlo. Cualquier persona es libre de descargar PostgreSQL desde su sitio web oficial
y darle uso sin ningún costo.
Es multiplataforma: Es un software que puede correr bajo distintos entornos y sistemas
operativos, y es compatible con muchos de los servidores web más populares como Apache,
Nginx y LiteSpeed por mencionar algunos.
Es fácil de usar: Su administración se vuelve muy sencilla por medio de paneles con PgAdmin,
que básicamente viene a ser un phpMyAdmin orientado para PostgreSQL. La posibilidad de
realizar diversos procedimientos en forma sencilla hace que PgAdmin sea ampliamente utilizado,
aunque también permite realizar tareas más complejas.
Puede manejar un gran volumen de datos: una característica extremadamente importante de
PostgreSQL es su gran capacidad para el manejo de grandes volúmenes de datos, algo en lo que
otros sistemas como MySQL aún no hacen tan bien. Las bases de datos de gran tamaño pueden
hacer pleno uso del MVCC de PostgreSQL, resultando en un gran rendimiento. MVCC es un
método de control que nos permite realizar tareas de escritura y lectura simultáneamente.
Soporte total de ACID: otro punto muy importante que no se debe dejar de lado es el
cumplimiento de ACID. Estas siglas en inglés refieren a: atomicity, consistency, isolation y
durability, básicamente hablan de la atomicidad, consistencia, aislamiento y durabilidad de las
transacciones que se realizan en una base de datos. Tener soporte completo de ACID da la
seguridad de que, si se produce una falla durante una transacción, los datos no se perderán ni
terminarán donde no deban.

270
GESTOR DE CONTROL DE VERSIONES

El sistema de control de versiones que se utiliza durante el desarrollo de este proyecto es Git,
que es un sistema de control de versiones distribuido, haciendo uso de la plataforma de
desarrollo colaborativo GitLab para alojar el repositorio del código del proyecto.
Para elegir el gestor de control de versiones para el desarrollo del proyecto se realizó una
comparación de las ventajas y desventajas que Git posee frente a SVN y Bazaar; las cuales se
detallan en el cuadro siguiente:

CONTROL VENTAJAS DESVENTAJAS


DE
VERSIONES
GIT • Previa experiencia en el uso de • Aprendizaje: Se debe de dar
dicho sistema de control y de su formación a aquellas personas que
plataforma web, por parte del van a utilizar nuestro proyecto en
equipo de desarrollo. desarrollo y que tendrán acceso a
• Seguridad: hace uso del sistema nuestro trabajo en el servicio de
de árbol SHA1, asegurará que control de versiones para evitar
hasta que no se realice la posibles errores.
comprobación del cifrado no se • Muchos comandos y el significado de
escribirán los cambios. los comandos.
• Ramificación: almacenamiento • Disponibilidad, el código está en un
que permite realizar varias solo repositorio.
gamas de cambios a la • Complejidad, recomendado para
estructura principal. proyectos grandes.
• Coste: herramienta gratuita.
• Velocidad: ganancia de acceso y
escritura.
• Compartición Selectiva.
• Convergencia.
• Versionar código: guardar los
cambios efectuados a un
archivo o conjunto de archivos,
con la oportunidad que tener
acceso al historial de cambios.
• Adaptable: permite organizar el
proyecto según los
requerimientos, debido a que
admite multitud de
configuraciones.
SVN • Seguimiento de la historia de • El cambio en el nombre de un
cambios sufridos por los archivo es interpretado como dos
operaciones: copia y borrado de la

271
archivos involucra copias y primera copia. Esto ocasiona que los
cambios de nombre. cambios en el código sean perdidos
• Modificaciones atómicas, si por de manera inadvertida tras
algún motivo uno de los múltiples operaciones de
archivos de la actualización, no combinación de copias.
puede ser modificado entonces • No implementa algunas operaciones
toda la operación es cancelada. administrativas, como la eliminación
• Se envían sólo las diferencias en de registros de algunos datos
ambas direcciones. almacenados en el repositorio, la
• Creación de ramas y etiquetas, cual puede hacerse de forma manual
por cada rama no se crea una y engorrosa.
nueva copia en el depósito de • Requiere que cada carpeta en el lado
archivos, sino que utiliza un del cliente incluya una carpeta
árbol diferencial de cambios oculta ".svn". Estas carpetas impiden
con el cual conoce qué archivos la generación de copias distribuibles
pertenecen a una rama. de una versión individual y son las
• Permite bloquear archivos o causantes de la mayoría de
carpetas individualmente, para problemas que enfrentan los
evitar que sean editados por usuarios de esta herramienta.
más de un usuario. Usado • No resuelve el problema de aplicar
generalmente en la edición de repetidamente parches entre ramas,
archivos binarios. por lo cual no facilita el llevar la
• Capaz de mantener el control cuenta de qué cambios se han
de las diferencias entre archivos trasladado.
binarios, con lo cual consigue
ahorrar espacio en el
repositorio de archivos.
• Se integra fácilmente a un
servidor web Apache.
BAZAAR • Se puede utilizar para • Se trabaja siempre con acceso al
adaptarse a cualquier tipo de servidor remoto.
proyecto. • No es muy popular.
• Es fácil de modificar muy • Consume ancho de banda.
intuitivo. • Estadísticamente es lento.
• Integrable se puede añadir • El Launchpad es nuevo
proyectos existentes.
• Tiene una comunidad fuerte
que mantiene las cosas, como
plug-ins y bastantes
herramientas de terceros como
GUI para añadir interfaces
gráficas para el sistema.
Tabla 193: Ventajas y Desventajas de gestores de control de versiones

272
Además, se realizó una comparación directa de los tres gestores, la cual se detalla en la siguiente
tabla:

GIT SVN BAZAAR


PREVIO Si No No
CONOCIMIENTO
CONTROL DE Distribuido Centralizado Distribuido y
VERSIONES Centralizado
Copias locales del Un repositorio central Copias locales del
repositorio en las que donde se generan repositorio, un
REPOSITORIO
se trabaja copias de trabajo repositorio central y
directamente varias copias
AUTORIZACIÓN Para la totalidad del Dependiendo de la Para la totalidad del
DE ACCESO directorio ruta de acceso directorio
SEGUIMIENTO DE Basado en contenido Basado en archivos Basado en archivos
CAMBIOS
Tanto el repositorio Solo en el repositorio Tanto el repositorio
como las copias de completo, las copias como las copias de
HISTORIAL DE
trabajo individuales de trabajo incluyen trabajo individuales
CAMBIOS
incluyen el historial únicamente la versión incluyen el historial
completo más reciente completo
CONECTIVIDAD Solo necesario para la Con cada acceso Solo necesario para la
DE RED sincronización sincronización
RAPIDEZ EN Superior Medio Bajo
EJECUCIÓN
COSTO Gratis Gratis Gratis
PLATAFORMA Si Si Si
WEB
ADAPTABILIDAD Si No Si
Tabla 194: Comparación de gestores de control de versiones

Las principales características que se tomaron en consideración para tomar una decisión fueron:
previo conocimiento, ya que el equipo de desarrollo ha trabajado en otros proyectos con Git;
rapidez en la ejecución, costó, plataforma web y la adaptabilidad con los cuales se determinó que
Git es el mejor controlador de versiones para nuestro proyecto. En dado caso las tecnologías de
programación cambien se considerará elegir otro control de versiones.

273
Anexo 6: Carta de Aceptación del Sistema

274

También podría gustarte