implementaciÓn de una plataforma web para el …

87
1 IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL ESTUDIO ESTADÍSTICO DEL NIVEL DE SATISFACCIÓN DE LOS CLIENTES DEL INSTITUTO NACIONAL DE MEDICINA LEGAL Y CIENCIAS FORENSES REGIONAL OCCIDENTE JULIAN ALEJANDRO VENTERO BARRERA UNIVERSIDAD DE CATÓLICA DE PERERIA FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES PERERIA 2018

Upload: others

Post on 26-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

1

IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL ESTUDIO ESTADÍSTICO DEL NIVEL DE SATISFACCIÓN DE LOS CLIENTES

DEL INSTITUTO NACIONAL DE MEDICINA LEGAL Y CIENCIAS FORENSES REGIONAL OCCIDENTE

JULIAN ALEJANDRO VENTERO BARRERA

UNIVERSIDAD DE CATÓLICA DE PERERIA FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA

INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES PERERIA

2018

Page 2: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

2

IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL ESTUDIO ESTADÍSTICO DEL NIVEL DE SATISFACCIÓN DE LOS CLIENTES

DEL INSTITUTO NACIONAL DE MEDICINA LEGAL Y CIENCIAS FORENSES REGIONAL OCCIDENTE

JULIAN ALEJANDRO VENTERO BARRERA

Trabajo de Grado presentado como opción parcial para optar al título de Ingeniero de Sistemas y Telecomunicaciones

Tutor GEOVANNY GOMEZ OROZCO

Ingeniero de Sistemas y Telecomunicaciones Especialista en Desarrollo de Software

UNIVERSIDAD DE CATÓLICA DE PEREIRA FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA

INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES PEREIRA

2018

Page 3: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

3

PÁGINA DE ACEPTACIÓN

__________________________________ __________________________________ __________________________________ __________________________________ __________________________________ __________________________________ __________________________________ __________________________________ JURADO __________________________________ JURADO __________________________________ JURADO

Pereira, 23 de noviembre de 2018

Page 4: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

4

DECLARACIÓN DERECHOS DE AUTOR

El proyecto descrito a continuación fue desarrollado para el Instituto Nacional de

Medicina Legal y Ciencias Forenses Regional Occidente, por tal motivo la utilización

y disposición de empleo de todo tipo de diagramas, modelos, tablas e imágenes

requieren mantener la integridad, seguridad y confidencialidad de los procesos

internos que se llevan a cabo. De acuerdo con el convenio existente entre el Instituto

Nacional de Medicina Legal y Ciencias Forenses y la Universidad Católica de

Pereira, se autoriza a esta de incluir el presente proyecto dentro de su catálogo de

consulta y este sea fuente de conocimientos para toda persona que lo requiera, de

cualquier manera, se pide respetar la propiedad intelectual del mismo.

Page 5: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

5

CONTENIDO

INTRODUCCIÓN ................................................................................................... 13

1. SITUACIÓN PROBLEMÁTICA ....................................................................... 14

2. OBJETIVOS .................................................................................................... 15

2.1. OBJETIVO GENERAL................................................................................. 15

2.2. OBJETIVOS ESPECÍFICOS ..................................................................... 15

3. JUSTIFICACIÓN ............................................................................................. 16

4. DELIMITACIÓN Y/O ALCANCE ..................................................................... 17

5. MARCO TEÓRICO ......................................................................................... 18

5.1. ANTECENDENTES ..................................................................................... 18

6. MARCO CONCEPTUAL ................................................................................. 20

6.1. LENGUAJE DE PROGRAMACIÓN ............................................................. 20

6.1.1. LENGUAJES DE PROGRAMACIÓN DE BAJO NIVEL ........................ 21

6.1.2. LENGUAJES DE PROGRAMACIÓN DE ALTO NIVEL ........................ 21

6.2. PARADIGMAS DE PROGRAMACIÓN ........................................................ 21

6.2.1. PROGRAMACIÓN IMPERATIVA ......................................................... 22

6.2.2. PROGRAMACIÓN FUNCIONAL .......................................................... 22

6.2.3. PROGRAMACIÓN LÓGICA ................................................................. 23

6.2.4. PROGRAMACIÓN ORIENTADA A OBJETOS ..................................... 24

6.2.5. PROGRAMACIÓN ORIENTADA A ASPECTOS .................................. 24

6.3. JAVA ........................................................................................................... 25

6.4. SISTEMA DE BASE DE DATOS ................................................................. 26

6.4.1. MYSQL WORKBENCH ......................................................................... 26

6.5. WORLD WIDE WEB.................................................................................... 27

6.6. LENGUAJE HTML ....................................................................................... 27

6.7. JAVASCRIPT .............................................................................................. 28

6.8. CSS ............................................................................................................. 29

6.9. FRAMEWORK ............................................................................................. 29

6.9.1. PRIMEFACES ...................................................................................... 30

6.9.2. JAVA SERVER FACES ........................................................................ 30

6.10. SOFTWARE .............................................................................................. 30

Page 6: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

6

6.11. INGENIERÍA DE SOFTWARE .................................................................. 31

6.12. ARQUITECTURA DEL SOFTWARE ......................................................... 31

6.12.1. ARQUITECTURA CLIENTE/SERVIDOR ............................................ 32

6.13. PRUEBAS DEL SOFTWARE .................................................................... 33

7. ENFOQUE METODOLOGICO ........................................................................... 35

7.1. SCRUM ....................................................................................................... 35

8. MODELO TEORICO .......................................................................................... 38

8.1. PLANIFICACIÓN ......................................................................................... 38

8.2. ANÁLISIS .................................................................................................... 44

8.3. REQUISITOS .............................................................................................. 45

8.4. DISEÑO ....................................................................................................... 48

8.4.1. ARQUITECTURA.................................................................................. 53

8.5. CODIFICACIÓN .......................................................................................... 55

8.6. PRUEBAS ................................................................................................... 59

9. RESULTADOS ................................................................................................... 62

10. RECOMENDACIONES .................................................................................... 68

11. CONCLUSIONES ............................................................................................ 69

BIBLIOGRAFÍA ...................................................................................................... 70

ANEXOS ................................................................................................................ 72

Page 7: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

7

LISTA DE ILUSTRACIONES

Ilustración 1: Ejemplo lenguaje de programación imperativo C ............................. 22

Ilustración 2: Ejemplo lenguaje de programación funcional Haskel ....................... 23

Ilustración 3: Declaración de hechos en lenguaje Prolog ...................................... 23

Ilustración 4: Declaración de condición en lenguaje Prolog ................................... 24

Ilustración 5: Resultado ejemplo lenguaje de programación Prolog ...................... 24

Ilustración 6: Conversión de código fuente a código objeto en Java ..................... 25

Ilustración 7: Esquema separación de contenidos y presentación ......................... 29

Ilustración 8: Conversión del modelo de análisis en un diseño de software .......... 32

Ilustración 9: Niveles de arquitectura ..................................................................... 33

Ilustración 10: Proceso modelo scrum ................................................................... 37

Ilustración 11: Cronograma .................................................................................... 44

Ilustración 12: Diagrama actividades proceso actual ............................................. 45

Ilustración 13: Diagrama actividades proceso Sistema de Información ................. 48

Ilustración 14: Diagrama relacional ........................................................................ 49

Ilustración 15: Abstracción diagrama relacional ..................................................... 49

Ilustración 16: Codificación entidad encuesta ........................................................ 50

Ilustración 17: Codificación entidad respuesta ....................................................... 50

Ilustración 18: Diagrama de casos de uso ............................................................. 51

Ilustración 19: Mockup para registro de encuestas ................................................ 52

Ilustración 20: Mockup para generación de informes estadísticos ......................... 53

Ilustración 21: Esquema de funcionamiento patrón arquitectónico MVC ............... 54

Ilustración 22: Abstracción diagrama de clases ..................................................... 54

Ilustración 23: Diagrama de clases patrón de diseño estructural facade ............... 55

Ilustración 24: Codificación entorno gráfico muestra estadística ........................... 56

Ilustración 25: Codificación entorno gráfico encuestas de satisfacción ................. 56

Ilustración 26: Prototipo entorno grafico encuestas de satisfacción ....................... 57

Ilustración 27: Prototipo final entorno grafico encuestas de satisfacción ............... 58

Ilustración 28:Login ................................................................................................ 62

Ilustración 29: Entorno grafico para gestionar (CRUD) las propiedades de las

encuestas de satisfacción ...................................................................................... 63

Ilustración 30: Formulario para crear una pregunta y asociar las propiedades de las

encuestas de satisfacción ...................................................................................... 63

Ilustración 31:Entorno grafico para registrar muestra estadística .......................... 64

Ilustración 32: Entorno grafico para registrar la fecha de ....................................... 64

Ilustración 33: Entorno grafico para registrar las respuestas de ............................ 65

Ilustración 34: Entorno grafico para generar un informe estadístico ...................... 66

Ilustración 35: Informe estadístico ......................................................................... 66

Ilustración 36: Mockup de para el acceso al sistema – Login ................................ 75

Page 8: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

8

Ilustración 37: Mockup para gestionar las propiedades de las encuestas de

satisfacción y los usuarios ..................................................................................... 75

Ilustración 38:Mockup para el registro de la muestra estadística .......................... 76

Ilustración 39: Mockup para el registro de respuestas y fecha realización encuestas

de satisfacción ....................................................................................................... 76

Ilustración 40: Mockup para la generación de informes estadísticos ..................... 77

Ilustración 41: Login ............................................................................................... 81

Ilustración 42:Administración y gestión propiedades encuestas de satisfacción ... 82

Ilustración 43: Menú de navegación ...................................................................... 82

Ilustración 44: Formulario para crear propiedades encuestas de satisfacción ....... 83

Ilustración 45: Tabla principal de presentación ...................................................... 83

Ilustración 46: Formulario para ver las propiedades de las encuestas de satisfacción

............................................................................................................................... 84

Ilustración 47:Formulario para editar las propiedades de las encuestas de

satisfacción ............................................................................................................ 84

Ilustración 48: Entorno grafico para crear una muestra estadística y registrar las

respuestas de las encuestas de satisfacción ......................................................... 85

Ilustración 49: Formulario para crear una muestra estadística .............................. 85

Ilustración 50: Formulario para registrar la fecha de realización de las encuestas de

satisfacción. ........................................................................................................... 86

Ilustración 51: Entorno grafico para registrar las respuestas de las encuestas de

satisfacción ............................................................................................................ 87

Ilustración 52: Entorno grafico para generar un informe estadístico ...................... 87

Page 9: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

9

LISTA DE TABLAS

Tabla 1: Interesados del proyecto .......................................................................... 35

Tabla 2: Aspectos a evaluar estimación Cocomo .................................................. 38

Tabla 3: Resultados estimación Cocomo ............................................................... 39

Tabla 4: Factor de complejidad técnica ................................................................. 39

Tabla 5: Factores ambientales ............................................................................... 40

Tabla 6: Factor de tipos casos de uso ................................................................... 40

Tabla 7: Factor de tipo actores .............................................................................. 40

Tabla 8: Resultados estimación casos de uso ....................................................... 40

Tabla 9: Puntos de función sin ajustar ................................................................... 41

Tabla 10: Factor de ajuste ..................................................................................... 42

Tabla 11: Resultado estimación puntos de función ................................................ 42

Tabla 12: Categorización de las estimaciones ....................................................... 43

Tabla 13: Resultado estimación probabilística ....................................................... 43

Tabla 14: Responsables fases del proyecto .......................................................... 43

Tabla 15: Requisitos funcionales ........................................................................... 46

Tabla 16: Especificación del requisito funcional 01 ................................................ 46

Tabla 17: Especificación del requisito funcional 07 ................................................ 46

Tabla 18:Requisitos no funcionales ....................................................................... 47

Tabla 19: Sprint retrospective ................................................................................ 58

Tabla 20: Validación de campos en toda la plataforma web .................................. 59

Tabla 21: Caso de prueba para RF01 y RF03 ....................................................... 60

Tabla 22: Caso de prueba para RF07 .................................................................... 61

Tabla 23: Resultado informe de pruebas ............................................................... 67

Tabla 24: Compilación resultado informe de pruebas ............................................ 67

Tabla 25: Especificación de requisito funcional 01 ................................................ 72

Tabla 26: Especificación de requisito funcional 02 ................................................ 72

Tabla 27: Especificación de requisito funcional 03 ................................................ 73

Tabla 28: Especificación de requisito funcional 04 ................................................ 73

Tabla 29: Especificación de requisito funcional 05 ................................................ 73

Tabla 30: Especificación de requisito funcional 06 ................................................ 74

Tabla 31: Especificación de requisito funcional 07 ................................................ 74

Tabla 32: Caso de prueba para el requisito funcional 01 y 03 ............................... 78

Tabla 33: Caso de prueba para el requisito funcional 02 ....................................... 79

Tabla 34: Caso de prueba para el requisito funcional 04 ....................................... 79

Tabla 35: Caso de prueba para el requisito funcional 05 ....................................... 79

Tabla 36: Caso de prueba para el requisito funcional 06 ....................................... 80

Tabla 37: Caso de prueba para el requisito funcional 07 ....................................... 80

Page 10: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

10

LISTA DE ANEXOS

Anexo A. Especificación de requisitos funcionales ................................................ 72

Anexo B: Mockups plataforma web ........................................................................ 75

Anexo C. Casos de prueba de requisitos funcionales ............................................ 78

Anexo D. Manual de usuario .................................................................................. 81

Page 11: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

11

RESUMEN

Este documento presenta el desarrollo de una plataforma web que centraliza e

integra la información de las encuestas de satisfacción de los clientes del Instituto

Nacional de Medicina Legal y Ciencias Forenses Regional Occidente, facilitando la

administración y gestión del proceso de retroalimentación existente y el análisis

estadístico de dicho proceso.

A lo largo del documento se aborda de manera detallada el contexto que involucra

el desarrollo de la plataforma web, los conceptos, modelos teóricos, frameworks,

herramientas tipo software que se utilizaron para el desarrollo de esta, el empleo de

prototipos funcionales y la aplicación del proceso de feedback mediante la

metodología ágil Scrum. A su vez se presenta el desarrollo de las funcionalidades

de la plataforma web, su diseño y la evaluación de pruebas en la misma.

Palabras clave: Instituto Nacional de Medicina Legal, encuetas de satisfacción,

proceso de retroalimentación, software, plataforma web.

Page 12: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

12

ABSTRACT

This paper presents the development of a web platform that centralizes and

integrates the information of customer satisfaction surveys from the National Institute

of Legal Medicine and Forensic Sciences Regional Wes, facilitating the

administration and management of the process existing feedback and statical

analysis of such process.

Throughout the document is addressed in detail the context which involves the

development of the web platform, concepts, theoretical models, frameworks and

tools type software used for it is development and use of functional prototypes and

implementation of the feedback process through the Scrum agile methodology. In

turn presents the development of the funtionalities of the web plataform, it is design

and the evaluation of evidence in the same.

Key words: National Institute of Legal Medicine and Forensic Sciences, surveys

satisfaction, process of feedback, software, web platform.

Page 13: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

13

INTRODUCCIÓN

Actualmente el Instituto Nacional de Medicina Legal y Ciencias Forenses (INML y

CF) es una entidad de carácter público, la cual presta servicios medico forenses

a la comunidad, como apoyo técnico y científico a la administración de justicia,

dichos servicios están sustentados bajo la investigación científica y el entorno de

calidad, imparcialidad, competitividad y respeto por la dignidad humana.

El Estado colombiano cuenta con dicha entidad, hace 104 años y la misma presta

los servicios médico-legales de: entrega y reconocimiento de cadáveres,

realización de pruebas genéticas, evaluaciones psiquiátricas y psicológicas,

valoraciones médico legales a personas que se encuentran privadas de la

libertad, exámenes toxicológicos y químicos, etc.

Asimismo, el Instituto Nacional de Medicina Legal y Ciencias Forenses es un

organismo de verificación, asesoría y control de pruebas periciales y exámenes

forenses que sean solicitados por los fiscales, jueces, policía judicial, defensoría

del pueblo y demás autoridades competentes en todo el territorio nacional. Estos

toman el papel de clientes para el INML y CF y son los encargados de

proporcionar las solicitudes correspondientes a las personas que están

involucradas en procesos judiciales y/o legales, estos últimos toman el papel de

usuarios para el INML y CF.

Con el propósito de preservar la calidad de los servicios forenses brindados a los

usuarios, el INML y CF posee un proceso de retroalimentación con las

autoridades antes mencionadas, dicho proceso evalúa la satisfacción de estos,

referente a las solicitudes, resultados e informes de los servicios prestados. El

motivo de este proyecto radica en la implementación de una plataforma web que

apoye y facilite dicho proceso de retroalimentación, permitiendo un análisis

estadístico a partir de la gestión y administración de información de las encuestas

de satisfacción.

Todo ello le permite al Instituto Nacional de Medicina Legal y Ciencias Forenses,

ser un centro científico de referencia nacional con capacidades de acreditación y

certificación de laboratorios, pruebas periciales y peritos en medicina legal y

ciencias forenses, practicadas por entidades públicas y privadas.

Page 14: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

14

1. SITUACIÓN PROBLEMÁTICA

El actual proceso de retroalimentación entre el Instituto Nacional de Medicina Legal

y Ciencias Forenses Regional Occidente y sus clientes, es llevado a cabo a través

de la aplicación de encuestas de satisfacción, el empleo de la herramienta ofimática

Excel, en este proceso, no facilita la administración y gestión centralizada de las

encuestas de satisfacción ni las respuestas obtenidas en estas, sin embargo, dicha

herramienta posibilita el análisis estadístico de las mismas.

El empleo de este proceso genera retrasos de tiempo en él envió de informes de

satisfacción; además del uso y agotamiento de recursos físicos, tecnológicos,

financieros y de talento humano, los cuales son empleados para la recolección de

información estadística, procesos de monitorización e integración de los resultados

obtenidos.

Page 15: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

15

2. OBJETIVOS

2.1. OBJETIVO GENERAL

Implementar una plataforma web que permita el estudio estadístico del nivel de

satisfacción de los clientes del Instituto Nacional de Medicina Legal y Ciencias

Forenses Regional Occidente.

2.2. OBJETIVOS ESPECÍFICOS

• Establecer los requisitos del Instituto Nacional de Medicina Legal y Ciencias

Forenses Regional Occidente para el correcto análisis estadístico de los

niveles de satisfacción de sus clientes en una plataforma web.

• Diseñar un sistema de información para el correcto análisis estadístico.

• Realizar las pruebas necesarias en la plataforma web implementada.

Page 16: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

16

3. JUSTIFICACIÓN

Conocer de primera mano la idoneidad, claridad, confiabilidad, completitud y utilidad

de los informes periciales para las autoridades que solicitan un servicio forense, son

aspectos de vital importancia para el Instituto Nacional de Medicina Legal y Ciencias

Forenses Regional Occidente, dicho proceso permite tomar acciones correctivas y/o

preventivas que aseguren la calidad de los servicios forenses prestados y la

optimización de los informes periciales.

Sin embargo, la no centralización de información en el empleo de este proceso

posibilita el riesgo de pérdida de información, por fallos inesperados en los

computadores empleados para tabular la información obtenida de las encuestas de

satisfacción, asimismo se limita la gestión y administración de estas, para la

creación y modificación de encuestas, servicios forenses, muestras estadísticas,

aspectos a evaluar y parámetros de medición asociados a estos.

De esta manera se compromete la seguridad, reserva y veracidad de la información

y no se posibilita la optimización del proceso de análisis estadístico y la integración

de los resultados obtenidos. Todo esto genera retrasos de tiempo en él envió de

informes de satisfacción; agotamiento de recursos físicos, tecnológicos, financieros

y de talento humano, los cuales son empleados para la recolección de información

estadística, procesos de monitorización e integración de los resultados obtenidos.

Con el fin de facilitar el proceso de retroalimentación entre el Instituto Nacional de

Medicina Legal y Ciencias Forenses Regional Occidente y sus clientes, este

proyecto facilita la administración y gestión centralizada de las encuestas de

satisfacción, las respuestas obtenidas en estas y el análisis estadístico de las

mismas, de manera que se permita asegurar y preservar la calidad de los servicios

medico forenses prestados a la comunidad, contribuyendo a los procesos para el

resarcimiento de los derechos de sus usuarios y la no revictimización de estos, con

el fin de mejorar el bienestar social de sus usuarios y su entorno familiar

Page 17: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

17

4. DELIMITACIÓN Y/O ALCANCE

El desarrollo del proyecto no incluye la implantación, ni mantenimiento de la

plataforma web, a su vez el desarrollo de esta únicamente está orientado a la

Regional Occidente del Instituto Nacional de Medicina Legal y Ciencias Forenses.

De igual manera, la implementación de la plataforma web no cede la

responsabilidad, ni obligatoriedad de realizar los procesos de recolección y análisis

estadístico de las encuestas de satisfacción, ni el ingreso de datos a la misma.

Page 18: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

18

5. MARCO TEÓRICO

5.1. ANTECENDENTES

Partiendo desde la subjetividad que tiene cada persona frente al concepto de

satisfacción, se evidencian algunos estudios realizados sobre este tema, abarcando

distintos problemas fuente y aspectos que intervienen en ella, siendo uno de ellos

el elaborado por Gaitán, et al. [1] quienes logran evaluar el nivel de satisfacción que

presentan los usuarios de las EPS en 2016, tomando en cuenta tres elementos muy

importantes: el factor psicológico, los atributos del servicio prestado y el factor

económico. Todo ello se presenta a través de un Ranking de Satisfacción de EPS

2016.

Sánchez Márquez and Raigoso Castillo [2] desarrollaron un estudio medición de la

satisfacción del usuario que participa en los juegos inter empresariales de

Comfamiliar Risaralda, donde se tuvo en cuenta aspectos, como: necesidades o

valores personales del cliente, aspectos esenciales del producto o servicio,

asistencia al consumidor, proceso de reparación en el caso de que se produzca una

mala experiencia y la personalización del producto o servicio, este estudio permitió

identificar aspectos de vital importancia para la satisfacción del usuario, los cuales

determinan a mediano y corto plazo el compromiso con los juegos empresariales de

Comfamiliar Risaralda.

Jaramillo Pescador and González Suárez [3] desarrollaron un estudio para

determinar el índice de satisfacción laboral de los empleados de la alcaldía

municipal de La Celia Risaralda, con el fin de encontrar mecanismos que ayuden a

mejorar el desempeño de éstos en cada una de sus labores; para ello se identificó

factores influyentes en dicho proceso, tales como: las bonificaciones e incentivos,

el horario laboral, el cumplimiento de metas, actividades con retos permanentes,

salario digno, la retroalimentación de dicho trabajo, las posibilidades de acenso,

entre otros aspectos. Todo ello arrojo resultados de gran importancia, debido a que

los empleados de la alcaldía municipal de La Celia Risaralda presentan resultados

favorables con márgenes de 40% y hasta 80% en estar motivados por los aspectos

anteriormente mencionados.

Ahora bien, desde los artículos y revistas especializadas en ingeniería, se encuentra

un software para el análisis estadístico llamado JavaStatSoft, desarrollado por Wei

Page 19: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

19

and Chen [4] los cuales brindaron a dicho software la capacidad para realizar

procesos de probabilidad, líneas de regresión, estimaciones de Kaplan-Meier, test

estadísticos, manejo de datos cualitativos y cuantitativos, entre otros procesos.

Todo ello con datos que ingresa el usuario en formatos de Excel, texto plano e

incluso importaciones de datos de los gestores de bases de datos más populares,

dicho proceso dinamiza el análisis estadístico y permite al usuario modificar las

variables a trabajar, asimismo JavaStatSoft realiza informes de salida en diferentes

formatos, como lo son PDF, HTML, Excel, CSV y RTF facilitando el análisis y uso

de estos para brindar una mayor funcionalidad a otro tipo de sistemas.

A la hora de llevar a cabo los procesos de análisis estadísticos, es realmente

importante tener en cuenta la cantidad y tipo de datos a utilizar, ya que este es un

factor determinante en el tiempo de ejecución de dicho análisis, es por ello Hannes

and Lumley [5] muestran en su artículo “ Best of both worlds: relational databases

and statistics” la integración del Lenguaje R con las bases de datos relacionales, a

partir del desarrollo de análisis estadísticos a tres diferentes conjuntos de datos:

pequeño (142.982 registros), mediano (1.060.060 registros) y grande (9.093.077

registros), con tres métodos distintos: el primero de ellos se realiza por medio de la

utilización de solo el código R, el segundo se realiza solo utilizando sentencias SQL

directamente en la base de datos; y el tercero se realiza utilizando el objeto de datos

virtual, que no es más que la integración y comunicación entre el código SQL y R.

Page 20: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

20

6. MARCO CONCEPTUAL

6.1. LENGUAJE DE PROGRAMACIÓN

La definición de lo que es un lenguaje de programación puede llegar a ser un

concepto amplio, subjetivo y variado, para ello se da a entender que el lenguaje no

es más que un modo de expresión que busca comunicar o dar a entender algo en

específico, por otra parte, la programación o más específicamente el hecho de

programar hace referencia al acto de idear, preparar y ordenar las acciones

necesarias para realizar una actividad. Por consiguiente, un lenguaje de

programación es un modo de expresión empleado para especificar un conjunto de

instrucciones a realizar por las computadoras, con el fin de que esta cumpla uno o

muchos procesos en específico.

Aunque, los procesos a cumplir por las computadoras pueden ir desde sumar dos

números hasta calcular la presión atmosférica dentro de un avión, dichos procesos

siempre buscan dar solución a un problema en específico, pero ¿cómo resolver

dichos problemas de manera que la computadora entienda las instrucciones?, para

ello cada lenguaje de programación define un conjunto de reglas para la escritura

de instrucciones. La secuencia de instrucciones puede llegar a considerarse un

texto y este posee un conjunto de símbolos y caracteres que hacen parte un

vocabulario específico de cada lenguaje de programación, a su vez cada lenguaje

de programación establece una sintaxis u orden para su vocabulario, con el fin de

que este tenga un significado o funcionalidad especifica. La funcionalidad, sintaxis

y vocabulario de los lenguajes de programación depende estrictamente de cada uno

de ellos.

En la actualidad existe una importante variedad de lenguajes de programación, y la

clasificación de estos puede llegar a ser extensa, debido a los diferentes aspectos

a tener en cuenta para la creación de aplicaciones a la medida o aplicaciones

estándar. Los lenguajes de programación de bajo nivel y los lenguajes de

programación de alto nivel abarcan la clasificación más general de todos los

lenguajes de programación aún existentes o no.

Page 21: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

21

6.1.1. LENGUAJES DE PROGRAMACIÓN DE BAJO NIVEL

Son aquellos lenguajes diseñados para operar el hardware, ya que este únicamente

interpreta instrucciones en sistema binario (0 y 1), estos lenguajes buscan

aprovechar al máximo las características del hardware y por ello son directamente

dependientes de la máquina y diseñados a medida del hardware, el cual busca

potenciar el funcionamiento, administración y gestión de los recursos de un

computador o máquina. Dentro de la clasificación de los lenguajes de programación

de bajo nivel, existen los lenguajes ensambladores, los cuales funcionan a partir de

abreviaturas de instrucciones binarias que la maquina interpreta fácilmente, de esta

forma los lenguajes ensambladores funcionan como un traductor para el lenguaje

máquina.

6.1.2. LENGUAJES DE PROGRAMACIÓN DE ALTO NIVEL

Este tipo de lenguajes son independientes de la máquina y compatibles con

cualquier computador, a su vez este tipo de lenguaje es más cercano al ser humano,

más fácil de aprender, recordar y probar, por ello este tipo de lenguajes son

diseñados para la solución de problemas más complejos, de manera más fácil para

el programador y sin que este se preocupe por el lenguaje de máquina, sin embargo

las instrucciones escritas en un lenguaje de alto nivel no podrán ser ejecutados por

un computador mientras no sean traducidos a lenguaje maquina [6]. Este proceso

de traducción es realizado a través de compiladores o intérpretes, propios de cada

lenguaje de programación.

Los compiladores toman todas las instrucciones dadas por el programador en un

lenguaje de alto nivel, y las traducen a un lenguaje ensamblador y este luego a un

lenguaje máquina con el fin de ser ejecutadas como un todo. Por otro lado, los

intérpretes, toman una instrucción y solo una instrucción a la vez para ser traducida

a un lenguaje ensamblador y luego a un lenguaje máquina y lograr ser ejecutada.

6.2. PARADIGMAS DE PROGRAMACIÓN

La existencia de un único modelo para obtener la solución a un problema, es inútil,

esto es debido a que no es posible unificar todas las diferentes perspectivas de

como abarcar un problema, de si es debido iniciar de manera secuencial, por

módulos o de manera aleatoria, esto en gran medida es debido a los grandes

avances no correspondidos entre el campo del hardware computacional y el

desarrollo de software [7]. Con el propósito de crear uno o varios modelos básicos

Page 22: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

22

de construcción de programas, los paradigmas de programación determinan la

forma y estructura con la cual se va a encarar una problemática; la diversidad y

existencia de nuevos paradigmas de programación tiene como fin agilizar, facilitar y

mejorar el proceso de desarrollo de software.

Sin embargo, la adopción de un paradigma para la creación de un programa o

software no garantiza la perfección de este, para ello se deben conocer las

características de los diferentes paradigmas de programación y explotar a fondo las

funcionalidades de cada lenguaje de programación.

6.2.1. PROGRAMACIÓN IMPERATIVA

Es un paradigma que basa su funcionamiento en la secuencia de instrucciones, que

se ejecutan en el orden en el que se escriben, a su vez dicho orden define y modifica

el estado del programa, es importante resaltar que el código máquina está escrito

en forma imperativa, esto hace que el hardware modifique su memoria o estado

interno, conforme sigue los pasos de un programa. La ilustración 1 muestra como

ejemplo el uso del lenguaje de programación C, para determinar la suma de los

valores enteros de 1 a 10, donde usando la sentencia de iteración “for” y el contador

de iteraciones “i”, se almacena la suma parcial de los valores de la iteración en la

variable “total”.

Ilustración 1: Ejemplo lenguaje de programación imperativo C [8]

6.2.2. PROGRAMACIÓN FUNCIONAL

Este paradigma basa su ejecución en el uso de funciones o también llamados

procesos, los cuales se encuentran definidos por el lenguaje de programación, las

funciones simplifican el manejo de variables y el estado de estas durante la

ejecución de un algoritmo. La ilustración 2 muestra como ejemplo el uso del lenguaje

de programación Haskel, para determinar la suma de los valores enteros de 1 a 10,

donde [1...10] es una lista números enteros y sum, es una función no codificada por

el usuario, que puede ser utilizada para sumar cualquier lista de valores.

Page 23: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

23

Ilustración 2: Ejemplo lenguaje de programación funcional Haskel [8]

6.2.3. PROGRAMACIÓN LÓGICA

Este paradigma surgió orientado hacia la inteligencia artificial y basa su

funcionamiento en proveer de hechos y reglas al programa, con el fin de que este

realice el proceso necesario para encontrar la solución al problema, los hechos son

la información que me describe la problemática a resolver y las reglas son todas

aquellas condiciones necesarias para que la problemática se cumpla. Este

paradigma posee un conjunto de relaciones, propiedades y funciones entre sus

variables que cambian de acuerdo con el lenguaje de programación a utilizar. La

ilustración 3 toma como ejemplo el uso del lenguaje de programación Prolog, para

determinar quiénes son los suegros de Carmina, donde en primera medida se

establecen los hechos, declarando en este caso que Emilia y Francisco son un

matrimonio y que de igual manera lo son Carmen y Joaquín, Carmina y Paco, Elena

y Federico. A su vez se establece otro hecho importante, declarando que Carmen y

Joaquín son padres de Carmina, de igual modo lo son Emilia y Francisco de Paco,

al igual que Emilia y Francisco de Elena.

Ilustración 3: Declaración de hechos en lenguaje Prolog [8]

Ahora bien, se establece la regla o condición que se debe cumplir para determinar

quiénes son los suegros de Carmina, la ilustración 4 indica que, de cumplirse toda

la regla de la izquierda, (la coma funciona como un ordenador lógico “Y”) para que

la regla de derecha también se cumpla. De este modo al querer saber quiénes son

los suegros de Carmina o de otra persona en específico, se debe cumplir la

condición en la que L es decir Carmina, está asociada a un matrimonio ya declarado

Page 24: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

24

y que su pareja X es decir Paco este declarado dentro del hecho padres, todo ello

con el fin de poder determinar los suegros de Carmina.

Ilustración 4: Declaración de condición en lenguaje Prolog [8]

Por último, la ilustración 5 muestra en pantalla la variable “X”, siendo el esposo de

Carmina, al igual que “H” e “I” siendo los suegros de esta, de esta forma se

demuestra que satisfacen la regla o condicional de la ilustración 4.

Ilustración 5: Resultado ejemplo lenguaje de programación Prolog [8]

6.2.4. PROGRAMACIÓN ORIENTADA A OBJETOS

Este paradigma, abarca las problemáticas a resolver de manera distinta, ya que

toma como base el mundo real, exponiendo las características, funcionalidades y

acciones a desarrollar con los elementos más significativos del problema a resolver.

De esta manera el paradigma orientado a objetos busca crear un ambiente de

abstracción para el programador, en el cual se facilite la descripción y codificación

de métodos, atributos, objetos y relación entre estos, que permita vincular la

problemática a solucionar desde una perspectiva más cercana al mundo real.

6.2.5. PROGRAMACIÓN ORIENTADA A ASPECTOS

Este paradigma es una pequeña mejora del paradigma orientado a objetos, por

ende comparte muy de cerca la funcionalidad de esta, con la diferencia que permite

separar de manera adecuada las responsabilidades de cada objeto con el fin evitar

que una funcionalidad o método sea llamado desde cada módulo del programa y

ejecutado en estos, para ello este paradigma, permite implementar la funcionalidad

de forma separada y que esta pueda ser ejecutada en los diferentes módulos del

sistema, solo siendo llamada una vez.

Page 25: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

25

6.3. JAVA

Es un lenguaje de programación cuya primera versión surgió en 1991 con el nombre

de OAK, posteriormente en 1995 fue cambiado su nombre al que hasta hoy

conocemos como Java, este es un lenguaje de programación de fácil aprendizaje,

orientado objetos y multiplataforma, es decir que Java trabaja por conjuntos de

objetos de datos que se relacionan entre sí para realizar tareas específicas, además

este lenguaje de programación es independiente del sistema operativo o dispositivo

móvil en que se ejecute, este es un factor de ventaja determinante en cuanto a

compatibilidad frente a otros lenguajes de programación.

La capacidad de Java para ser un lenguaje multiplataforma es proporcionada por el

uso de compiladores e intérpretes, estos cumplen funciones específicas que facilitan

la traducción y ejecución del código fuente. La ilustración 6 presenta un pequeño

modelo de conversión entre el código fuente, el código byte y el código objeto.

La ilustración 6 Identifica al código fuente, como el conjunto de instrucciones que se

desarrollan en el lenguaje Java, este debe ser procesado por un compilador con el

fin de obtener un código byte, el cual utiliza un formato muy cercano al hardware de

las computadoras y a su vez es un código genérico [9] .Posteriormente el intérprete

JVM (Java Virtual Machine) traduce línea a línea el código byte a código objeto o

código máquina, con el fin de que esta ejecute el proceso especificado en el código

fuente.

Ilustración 6: Conversión de código fuente a código objeto en Java [9]

Page 26: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

26

Java no es solo un lenguaje de programación: multiplataforma, orientado a objetos

y de fácil aprendizaje, además de ello, Java es robusto, distribuido, seguro, portable,

multitarea y de alto rendimiento, estas características le permiten a Java ser un

lenguaje de programación con un amplio entorno de trabajo.

6.4. SISTEMA DE BASE DE DATOS

Para entrar en contexto con lo que es un sistema de base de datos, se debe tener

claro la diferencia entre lo que es un dato y lo que es información, los datos no son

más que la representación simbólica de un elemento, un objeto, una variable, un

número o cualquier otro hecho o suceso que se desee representar, sin embargo los

datos por si solos no expresan nada, es decir no tienen un sentido, de otra forma la

información tiene un sentido como tal, ya que pretende da a conocer un mensaje en

específico, es por ello que la información alberga un conjunto de datos organizados

y procesados.

Una base de datos nos permite almacenar de manera estructurada un conjunto de

datos, por otro lado, un sistema de base de datos (SBD) está conformado por cuatro

componentes: datos, hardware, software y usuarios [10], estos componentes se

relacionan entre sí y permiten dar funcionalidad a una base de datos,

proporcionando una estructura para almacenar datos, al igual que la administración

y gestión de información de manera que sea tanto practica como eficiente [11].

6.4.1. MYSQL WORKBENCH

Es un sistema gestor de bases de datos (SGBD) de Oracle, que permite la

administración, diseño, gestión y mantenimientos de base de datos MySQL, este

SGBD posee una versión open source, lo cual indica que toda aquella persona,

organización y compañía que desee usar, estudiar, compartir y modificar el código

fuente de MySQL Workbench puede hacerlo sin ninguna retribución legal, siempre

y cuando se mantenga la versión open source.

De igual manera MySQL Workbench es conocido por su alto rendimiento,

confiabilidad, fácil uso y multiplataforma ya que se ejecuta en más de 20

plataformas, dentro de ellas (Linux, Windows, Mac, OS, Solaris), además de ello

este SGBD posee herramientas visuales para crear, ejecutar y optimizar consultas

SQL, administrar usuarios, visualizar indicadores de rendimiento, realizar copias de

seguridad y fácil uso para la migración de datos y tablas de diferentes sistemas

gestores de bases de datos.

Page 27: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

27

6.5. WORLD WIDE WEB

La Internet, es una red masiva de redes, es una infraestructura de redes que conecta

a millones de computadores unidos de forma global; formando una sola red, de esta

forma se logra la comunicación entre un computador o cualquier dispositivo

informático capaz de conectarse a internet. World Wide Web, o Red, es una forma

de acceder a información por medio de la Internet. Es un modelo para compartir

información, creado encima de la Internet [12]. Los documentos Web o también

llamados páginas Web pueden estar localizados en diferentes sitios de Internet,

estos sitios son llamados servidores Web. La programación de un entorno Web

pretende brindar un servicio más especializado y personalizado al usuario.

World Wide Web puede definirse básicamente como tres cosas: hipertexto,

multimedia e internet, el primero es un sistema de enlaces que permite ir de una

página a otra, el segundo hace referencia al tipo de contendidos que puede emplear

u operar como lo son: texto, video, sonido, gráficos, entre otros. Por último, se

encuentra la internet, está es la base sobre la que se trasmite toda la información.

En Internet, las comunicaciones concretas se establecen entre dos puntos: uno es

el computador personal desde el que se accede y el otro es cualquiera de los

servidores que hay en la Red y facilitan información. El fundamento de Internet es

el TC/IP, un protocolo de transmisión que asigna a cada máquina que se conecta

un número específico y único en esa red, dicho número es conocido como una

dirección IP como por ejemplo 192.168.0.3 o 10.3.4.230.

6.6. LENGUAJE HTML

Es un lenguaje estandarizado para la creación de páginas Web, el lenguaje HTML

(HyperText Markup Languague, Lenguaje de Marcas de Hipertexto), sirve para

estructurar documentos (títulos, párrafos, listas, tablas, formularios, etc.), pero no

describe la apariencia o el diseño de un documento, sino que ofrece las

herramientas necesarias para dar formato o estructura a la misma [13].

Por otro lado el lenguaje XHTML (eXtensible HyperText Markup Languague,

Lenguaje de Marcas de Hipertexto Extendido,) es una redefinición de HTML versión

4 y cumple de manera general la misma función que su antecesor, con la adición de

unas mejoras y pequeñas modificaciones, entre las que se encuentra mayor

separación del contenido y su presentación, adaptabilidad a las diferentes

Page 28: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

28

plataformas: dispositivos móviles, pantallas de computador, impresoras e incluso

dispositivos utilizados por personas discapacitadas.

Para utilizar el servicio Web se necesita una aplicación cliente capaz de entender e

interpretar la información HTML o XHTML, a este tipo de aplicaciones se les conoce

como browsers o navegadores, mediante estos el usuario puede acceder a los

documentos HTML o XHTML y moverse de un documento a otro a través de sus

vínculos o enlaces, a este hecho o acción se le conoce como navegar por Internet.

Para que el navegador encuentre y muestre de forma adecuada la información de

una página web, es necesaria una URL (Uniform Resource Locator, Localizador

Uniforme de Recursos), la cual es una secuencia de caracteres que asigna una

dirección única a cada uno de los recursos de información disponibles en la Internet.

La secuencia de caracteres de una URL combina el protocolo a usar para acceder

a los recursos, el servidor o nombre del computador donde se encuentra guardada

la página web y por último la ruta, esta indica el camino que se debe seguir en el

servidor cuando se accede a la página web [14].

.

6.7. JAVASCRIPT

Se presenta como un lenguaje de programación para aplicaciones de arquitectura

cliente/servidor a través de Internet, esté lenguaje se encuentra insertado en el

código HTML y es utilizado para crear páginas web dinámicas, donde se pueden

incorporar estilos y efectos en los textos, animaciones que se activan al pulsar

botones. De igual manera JavaScript es ampliamente utilizado en aplicaciones

externas, por ejemplo, en documentos PDF, aplicaciones de escritorio (en mayor

medida widgets), mini chats, reproducción de audio y video (webcam) e incluso

juegos completos como el Tetris.

Por otro lado, JavaScript es un lenguaje de programación interpretado, por lo que

no es necesario compilar los programas para ejecutarlos. En otras palabras, los

programas escritos con JavaScript se pueden probar directamente en cualquier

navegador sin necesidad de procesos intermedios.

Page 29: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

29

6.8. CSS

Es un lenguaje de diseño gráfico que permite definir el aspecto de cada elemento

HTML o XHTML que interpreta el navegador, sin afectar su contenido; la ilustración

2 permite observar el esquema de independencia entre los contenidos de una

página web y su presentación, donde los contenidos web son todos aquellos

elementos como: párrafos, títulos, tablas, formularios, imágenes y textos

destacados que son el eje central de la información a proyectar en una página web,

por otro lado la presentación de la misma es muy relevante y esta comprende

aspectos tales como el tamaño, posición, color y tipo de letra de los contenidos web.

Ilustración 7: Esquema separación de contenidos y presentación [15]

6.9. FRAMEWORK

Es un entorno de trabajo o marco de trabajo, el cual proporciona una base sobre la

que los desarrolladores de software pueden crear programas para una determinada

plataforma. Por ejemplo, un marco puede incluir de forma predefinida clases y

funciones que pueden ser utilizados para procesar la entrada de datos, gestionar

los dispositivos de hardware, e interactuar con el software del sistema. Esto

simplifica el proceso de desarrollo ya que los programadores no tienen que

reinventar la rueda cada vez que desarrollan una nueva aplicación.

Por ende, un framework se puede considerar como una aplicación genérica

incompleta y configurable a la que podemos añadirle las últimas piezas para

construir una aplicación concreta. Los objetivos principales que persigue un

framework son: acelerar el proceso de desarrollo, reutilizar código ya existente y

promover buenas prácticas de desarrollo con el uso de patrones de diseño [16].

Page 30: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

30

6.9.1. PRIMEFACES

Es un framework o librería de componentes visuales para Java Server Faces (JSF)

de código abierto que cuenta con gran cantidad de componentes que facilitan la

creación de aplicaciones web, a su vez posee componentes para exportar datos a

Excel, PDF, Word, crear gráficos estadísticos, envió de mensajes, crear temas

responsive y soporte de Ajax, que agregan funcionalidad y mejoran la apariencia

visual del mismo. Es de resaltar la documentación existente sobre esta librería, al

igual que sus demos donde es posible ver el código HTML y su código en Java.

6.9.2. JAVA SERVER FACES

Es conocido como un framework o estándar de Java que está orientado hacia la

construcción de interfaces de usuario para aplicaciones web que simplifican el

desarrollo de aplicaciones web del lado del servidor [17] [18], Java Server Faces

(JSF) está basada en la plataforma de aplicaciones Java EE, además incluye Java

Server Pages (JSP) como la tecnología que permite hacer el despliegue de las

páginas web en Java [19].Dentro de las inclusiones que posee en su versión 2.2.13

incluye:

• Inspección en tiempo de ejecución en las reglas de navegación.

• Permite fácilmente la creación de una página de error que utiliza

componentes JSF.

• Mejoras en la expresión del lenguaje

• Un conjunto de componentes por defecto para la interfaz de usuario

• Administración de estados

• Un modelo de eventos en el lado del servidor

• Un conjunto de APIs para representar componentes de una interfaz de

usuario y administrar su estado, manejar eventos, validar entrada

6.10. SOFTWARE

Un software es un resultado intangible de una serie de procesos que involucran el

empleo de conocimientos teóricos y prácticos en metodologías, estrategias,

modelos y uso de herramientas para lograr dar solución a un problema específico.

A pesar de que el software es un producto intangible, este está conformado por un

conjunto procesos, procedimientos, sentencias y algoritmos que buscan dar

Page 31: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

31

entregar al cliente y sus usuarios la funcionalidad y desempeño requeridos, sin dejar

de lado que este sea sustentable, confiable y utilizable [20].

A pesar de que el uso de software se encuentra asociado a las computadoras y

cualquier dispositivo electrónico, su ejecución y uso no podría ser posible, de no ser

por los distintos archivos de configuración, instalación, manuales de usuario y

manuales técnicos que forman parte del software y son necesarios para que este

opere de manera correcta [21].

6.11. INGENIERÍA DE SOFTWARE

El desarrollo de software no es un proceso que se lleva acabo de la noche a la

mañana y mucho menos, que no se requiere el aprendizaje y uso adecuado de

técnicas, procesos, etapas, metodologías, modelos, herramientas y otros aspectos

necesarios para el desarrollo de un software de calidad, siendo este, uno de los

principios generales de la ingeniera del software, la cual es definida por la IEEE

(Institute of Electrical and Electronics Engineers) como “La aplicación de un enfoque

sistemático, disciplinado, y cuantificable hacia el desarrollo, operación y

mantenimiento de software.”[22]

Asimismo es necesario conocer que el ciclo de vida del software es un “Marco de

referencia que contiene los procesos, las actividades y las tareas involucradas en el

desarrollo, la explotación y el mantenimiento de un producto de software abarcando

la vida del sistema desde la definición de requisitos hasta la finalización de su uso”

[23]. El ciclo vida de un sistema o de un software como tal, posee unas etapas o

fases bien definidas como lo son: planificación, análisis, diseño, implementación,

pruebas, instalación o despliegue, uso y mantenimiento. Dichas fases coexisten con

un nivel de detalle especial de acuerdo con las metodologías de desarrollo de

software existentes.

6.12. ARQUITECTURA DEL SOFTWARE

La arquitectura de un software logra extender la vida útil del mismo, ya que es la

encargada de soportar todo el funcionamiento del software con la capacidad de ser

escalable, flexible a cambios, fiable y seguro. La arquitectura de software es un

factor que se encuentra altamente ligado con el diseño de este, la ilustración 8

incluye el diseño arquitectónico y el diseño de datos como piezas del diseño de

software.

Page 32: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

32

Ilustración 8: Conversión del modelo de análisis en un diseño de software [24]

El diseño arquitectónico se centra en la representación detallada de la estructura de

los componentes del software, sus propiedades e interacciones [24], de modo

similar el diseño de datos presenta de manera simple las funcionalidades e

interacciones del software.

6.12.1. ARQUITECTURA CLIENTE/SERVIDOR

Es una arquitectura de red en la que cada ordenador o proceso en la red es cliente

o servidor, normalmente, los servidores son ordenadores potentes dedicados a

gestionar unidades de disco (servidor de ficheros), impresoras (servidor de

impresoras), tráfico de red (servidor de red), datos (servidor de bases de datos) o

incluso aplicaciones (servidor de aplicaciones), mientras que los clientes son

Page 33: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

33

máquinas menos potentes y usan los recursos que ofrecen los servidores. La

arquitectura cliente/servidor permite la creación de aplicaciones distribuidas, es

decir, permite separar las funciones según su servicio [25]. La ilustración 9 presenta

los niveles de arquitectura según su servicio.

• Lógica de presentación: se encarga de la entrada y salida de la aplicación

con el usuario. Sus principales tareas son: obtener información del usuario,

enviar la información del usuario a la lógica de negocio para su

procesamiento, recibir los resultados del procesamiento de la lógica de

negocio y presentar estos resultados al usuario.

• Lógica de negocio (o aplicación): se encarga de gestionar los datos a nivel

de procesamiento. Actúa de puente entre el usuario y los datos. Sus

principales tareas son: recibir la entrada del nivel de presentación, interactuar

con la lógica de datos para ejecutar las reglas de negocio que tiene que

cumplir la aplicación (facturación, cálculo de nóminas, control de inventario,

etc.) y enviar el resultado del procesamiento al nivel de presentación.

• Lógica de datos: se encarga de gestionar los datos a nivel de

almacenamiento. Sus principales tareas son: almacenar los datos, recuperar

los datos, mantener los datos y asegurar la integridad de los datos

Ilustración 9: Niveles de arquitectura [25]

6.13. PRUEBAS DEL SOFTWARE

Las pruebas en un software son en gran medida un factor decisivo para que un

software se denomine finalizado y este se entregue al cliente; sin embargo, esto no

implica que el diseño y realización de pruebas sea el correcto y asegure un software

Page 34: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

34

de calidad, por este motivo se llegan a denominar las pruebas de software como un

proceso que busca probar la no existencia de errores en un software.

La IEEE (Institute of Electrical and Electronics Engineers) define las pruebas como

“el proceso de operación de un sistema o componente bajo condiciones

especificadas, los resultados se observan y se registran y se realiza una evaluación

de algún aspecto del sistema o componente” [22]. Por otro lado, Glenford J. Myers

define las pruebas como “el proceso de ejecución de un programa o una unidad de

programa discreta, con la intención de encontrar errores” [26]. A su vez Roger S.

Pressman define las pruebas de software como “un elemento crítico para la garantía

de calidad del software y representa una revisión final de las especificaciones, del

diseño y de la codificación” [24].

Dicho de otro modo, las pruebas de software son un proceso implícito, incluido en

el ciclo de vida de este; el proceso de pruebas busca validar la calidad del software

y hallar la mayor cantidad de errores en este, antes de que sea entregado al cliente.

A pesar de que el proceso de pruebas solo se tenga en cuenta cuando se finaliza la

codificación o implementación del software, esta debe llegar a emplearse durante

todo el desarrollo de este, con el fin de no obtener sobrecostos en el presupuesto

del proyecto, limitar su alcance o solicitar más tiempo del esperado.

La variedad de pruebas de software existentes y las técnicas para emplear estas,

son un factor importante para asegurar la calidad y confiabilidad del software, los

aspectos a evaluar en un software pueden llegar a ser infinitos e incluso complejos,

para ello existen dos formas generales de probar un producto software, la primera

de ellas se centra en evaluar si el producto cumple con las funciones para lo cual

fue diseñado [20], la segunda forma consiste en evaluar minuciosamente el

funcionamiento interno del producto evaluando el código fuente del mismo y su

conjunto específico de condiciones, bucles y caminos lógicos [24].

Las formas de probar un producto software, mencionadas anteriormente hacen

referencia a las pruebas de caja negra y caja blanca respectivamente, las pruebas

de software se encuentran categorizadas para evaluar distintos aspectos de este:

comportamiento del sistema, características, componentes, modo en el que trabaja,

arquitectura y capacidad de este tras haber ser modificado. El desarrollo exitoso de

dichas pruebas está directamente ligado con el diseño de casos de prueba, los

cuales son escenarios de prueba específicos creados por el tester, que buscan

hallar la mayor cantidad de errores con la mínima cantidad de esfuerzo y tiempo

posible.

Page 35: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

35

7. ENFOQUE METODOLOGICO

Es importante mencionar que la metodología para el desarrollo de software posee

dos grandes divisiones, las cuales logran dar una perspectiva general del enfoque

que se lleva a cabo en los diferentes modelos que posee cada división; la primera

de ellas hace referencia a las metodologías tradicionales en la cual se hace énfasis

en la planificación total y detallada de todos los procesos que intervienen en la

producción del software, la segunda división hace referencia a las metodologías

agiles, las cuales poseen gran capacidad de respuesta a los cambios, brindan un

mayor interés al individuo y su interacción, reconocen en mayor medida un software

que funciona que su documentación exhaustiva e integran al cliente como un

miembro activo en las diferentes etapas del proceso [27].

7.1. SCRUM

El modelo Scrum incorpora las siguientes actividades estructurales: requisitos y/o

requerimientos, análisis, diseño, evolución y entrega. Dentro de cada actividad

estructural, las tareas del trabajo ocurren con un patrón del proceso llamado sprint;

un sprint es el tiempo en el cual se desarrolla un incremento en la funcionalidad del

producto software, la duración de cada sprint no debe superar cuatro semanas.

El desarrollo del modelo scrum y sus actividades estructurales, involucran de

manera activa a los interesados del proyecto, estos poseen un rol especifico

determinante para el desarrollo de este, la tabla 1 presenta la especificación de

estos y el cargo que estos desempeñan en el Instituto Nacional de Medicina Legal

y Ciencias Forenses Regional Occidente.

Tabla 1: Interesados del proyecto

Nombre Cargo Rol

Juan Carlos Medina Director regional Product Owner - Usuarios

Jairo Gonzales Director seccional Product Owner - Usuarios

Olga Cecilia Taborda Coordinadores de grupo Usuarios

Clarena Yepes Encargada de calidad Stakeholder

Geovanny Gomez Facilitador Tic #1 Scrum Master

Rodrigo Sogamoso Facilitador Tic #2

Julian Ventero Ing. Sist y Teleco

Carolina Garzón Ing. Sist y Teleco

Team development

Fiscalía, Policía judicial, Procuradoria,

Defensoria del pueblo, etc.Autoridades judiciales Clientes

Page 36: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

36

Existe una estrecha relación entre el cliente, los desarrolladores y el gerente de

proyectos, a los cuales se les llamara de ahora en adelante como: Propietario del

Producto, Equipo de Desarrollo y Scrum Master, respectivamente. Estos, mantienen

una reunión al iniciar de nuevo un sprint, en dicha reunión el propietario del producto

expone los requisitos del producto y la funcionalidad deseada, asignando una

prioridad a cada uno de ellos, de esta manera el equipo de desarrollo crea una lista

de producto o Product backlog, con la cual, posteriormente se desglosarán las

tareas necesarias para cumplir con cada uno de los requisitos del producto y solo

se agregaran a la Sprint Planning Meeting aquellas tareas que se pueden cumplir

dentro del sprint [27].

Dichas tareas son auto asignadas o elegidas por el Scrum Master, quien crea una

lista de sprint o Sprint backlog, en la cual se registran las tareas a realizar, sus

responsables, el tiempo aproximado en desarrollar dicha tarea, el estado en el que

se encuentra y la categoría a la que pertenece la misma.

Una vez definidas las tareas a realizar y las personas encargadas de desarrollarlas

a lo largo del sprint, es necesario cumplir con una breve reunión llamada Daily

Scrum, en la cual los miembros del equipo de desarrollo responden a estas tres

preguntas:

1. ¿Qué he hecho desde la última reunión de sincronización?

2. ¿Qué voy a hacer a partir de este momento?

3. ¿Qué impedimentos tengo o voy a tener?

Las respuestas dadas por los miembros del equipo de desarrollo permiten

evidenciar los obstáculos que presenta cada tarea y es función del Scrum Máster,

motivar, apoyar y dirigir al equipo de desarrollo, para que se pueda cumplir con los

requisitos del producto al finalizar el sprint. De no ser así el Scrum Master junto con

el Equipo de Desarrollo deben exponer los resultados obtenidos frente al Propietario

del Producto y los demás interesados, en una reunión llamada Sprint Review. Una

vez finalizada dicha reunión se procede a realizar un proceso de retroalimentación,

en el cual se plantean las mejoras que se deben realizar, las dificultades que se

tuvieron y los aspectos que se cumplieron en una lista llamada Sprint Retrospective.

Page 37: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

37

Ilustración 10: Proceso modelo scrum [28]

Partiendo de los procesos que se llevan a cabo en el ciclo de vida del software y

utilizando el modelo Scrum, se aplicaron de manera teórica y práctica los siguientes

procesos, etapas o fases: planificación, análisis, requisitos, diseño y arquitectura,

codificación y pruebas.

Page 38: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

38

8. MODELO TEORICO

8.1. PLANIFICACIÓN

Esta etapa fue enfocada a dos grandes aspectos; uno es la organización y

distribución de tiempo para las demás etapas involucradas durante todo el proceso

de desarrollo de la plataforma web, el otro aspecto a considerar es la

fundamentación de conceptos, está pretende introducir las temáticas, metodologías

y tecnologías a utilizar en el desarrollo de la plataforma web, con el fin de poseer

los conocimientos guías para seguir de manera correcta con el desarrollo de las

demás etapas.

Con el fin de evaluar los recursos de tiempo y talento humano necesarios para el

desarrollo del proyecto, se aplican diferentes técnicas de estimación: Cocomo,

puntos de casos de uso, puntos de función y estimación probabilística de tres

puntos, todo ello con el propósito de obtener una aproximación más no una exactitud

del costo total del proyecto. La tabla 2 presenta los atributos de evaluación de un

modelo intermedio de Cocomo.

Tabla 2: Aspectos a evaluar estimación Cocomo

Atributos Valor Concepto

Normal Precedencia

Normal Arquitectura / Resolución de riesgos

Alto Cohesión del equipo

Alto Madurez del proceso

Normal Flexibilidad de desarrollo

Normal Fiabilidad requerida del software

Alto La documentación se ajusta a las necesidades del ciclo de vida

Normal Tamaño de Base de Datos

Normal Complejidad del producto

Alto Desarrollado para reutilización

Alto Capacidad del analista

Normal Capacidad del programador

Alto Continuidad del personal

Alto Experiencia del lenguaje y heramientas

Normal Experiencia de la aplicación

Normal Experiencia de la plataforma

Normal Restricción de tiempo

Normal Restricción de almacenamiento

Normal Volatilidad de la plataforma

Muy Alto Herramientas de usos del Software

Bajo Desarrollo multisitio

Normal Restricción de tiempo de desarrollo

Proyecto

Controlador

de escala

de software

Controlador

de costos

de software

Producto

Personal

Plataforma

Page 39: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

39

Tras realizar los cálculos correspondientes se obtienen los resultados observados

en la tabla 3, estos hacen referencia al total de líneas de código nuevas, reutilizables

y modificadas, a su vez se presenta la cantidad de personas necesarias para el

desarrollo, el tiempo estimado para el mismo y el costo total del proyecto.

Tabla 3: Resultados estimación Cocomo

La estimación de casos de uso evalúa factores técnicos, factores ambientales, tipos

casos de uso y tipos de actores para calcular la cantidad de esfuerzo en horas que

requiere un hombre para desarrollar los puntos de casos de uso. La evaluación de

estos factores se presenta de manera respectiva en las tablas 4, 5, 6 y 7.

Sistema Distribuido 2 4

Tiempo de Respuesta Eficaz 1 1

Eficiencia del Usuario Final 1 3

Procesamiento interno Complejo necesario 1 1

Código reutilizable debe ser un foco 1 3

Facilidad de instalación 0,5 5

Facilidad de Usabilidad 0,5 3

Portabilidad 2 2

Fácil Modificación 1 2

Altamente concurrente 1 1

Personalización de Seguridad 1 1

Dependencia de Terceros 1 4

Entrenamiento Especial 1 1

0,93

Factores TécnicosPeso o

factor

Magnitud

relativa

Total factor de complejidad técnica Tabla 4: Factor de complejidad técnica

Nuevas 100000

Reutilizables 8100

Modificadas 6000

Costo por mes $ 1.200.000

Esfuerzo 0,2 ≈ 1 personas por mes

Tiempo en meses 2,1

Costo Total $ 2.520.000

Lineas de codigo

Desarrollo de la plataforma web

(Elaboración y Construcción)

Page 40: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

40

Familiaridad con el modelo de proyecto utilizado. 2 0

Experiencia en la aplicación. 0,5 2

Experiencia en orientación a objetos. 1 4

Capacidad del analista líder. 0,5 3

Motivación. 1 4

Estabilidad de los requerimientos 2 1

Personal part-time -1 4

Dificultad del lenguaje de programación -1 3

1,235

Factores AmbientalesPeso o

factor

Magnitud

relativa

Total factores ambientales Tabla 5: Factores ambientales

Simple 5 4

Medio 10 1

Complejo 15 1

45

Tipo de casos de usoPeso o

factor

Número de

casos de

Total factor casos de uso Tabla 6: Factor de tipos casos de uso

Simple 1 0

Medio 2 0

Complejo 3 3

9

Tipo de actorPeso o

factor

Número de

actores

Total factor de actores Tabla 7: Factor de tipo actores

Teniendo en cuenta una jornada laboral de 6 horas, 20 días hábiles de trabajo en

un mes y un equipo de desarrollo compuesto por 4 personas, se presenta en la tabla

8 los costos del proyecto, correspondiendo a una duración de 3,4 meses y un costo

total de $16.130.000.

Tabla 8: Resultados estimación casos de uso

Factor Técnico 0,93

Factor Ambiental 1,235

Puntos de Casos de Uso Ajustados 45

Poder de los Actores 9

Puntos de casos de uso 62,02

Estimación de esfuerzo 26

Horas de esfuerzo por persona 1612,56 ≈ 1613

Horas de esfuerzo (4 personas) 403,3

Días de trabajo (4 personas) 67,2

Tiempo en meses (4 personas) 3,4

Costo por mes $ 1.200.000

Costo Total $ 16.130.000

Cálculos de estimación

Page 41: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

41

Partiendo de la evaluación de un producto software por lo que hace y no por su

tamaño, se emplea la estimación por puntos de función, esta es independiente de

la tecnología empleada y busca medir las funcionalidades de un producto software,

a través de la clasificación y complejidad de sus funciones (tabla 9) y los niveles de

influencia o características con las que debe contar un producto software (tabla 10).

Tabla 9: Puntos de función sin ajustar

Requisito Función Clasificación Complejidad Puntos

Crear las propiedades de encuestas de satisfacción Entrada externa Baja 45

Ver las propiedades de encuestas de satisfacción Salida externa Baja 60

Listar las propiedades de encuestas de satisfacción Salida externa Media 75

Editar las propiedades de encuestas de satisfacción Entrada externa Baja 45

Borrar las propiedades de encuestas de satisfacción Entrada externa Baja 45

Gestionar (CRUD) las propiedades de encuestas de satisfacción Archivo lógico interno Baja 105

Buscar y comparar las propiedades del usuario Consulta externa Baja 4

Buscar y comparar las propiedades del usuario Archivo lógico interno Baja 7

Crear los usuarios del sistema y sus asignar propiedades Entrada externa Baja 3

Ver los usuarios del sistema Salida externa Baja 4

Listar los usuarios del sistema Salida externa Media 5

Editar las propiedades de los usuarios del sistema Entrada externa Baja 3

Borrar los usuarios del sistema Entrada externa Baja 3

Gestión (CRUD) de usuarios Archivo lógico interno Baja 7

Crear fecha realización encuestas de satisfacción Entrada externa Baja 3

Registrar fecha realización encuesta Archivo lógico interno Baja 7

Crear muestra estadística para encuestas de satisfacción Entrada externa Baja 3

Registrar muestra estadística Archivo lógico interno Baja 7

Buscar el servicio forense a evaluar Consulta externa Baja 8

Buscar el servicio forense a evaluar Archivo lógico interno Baja 7

Listar las preguntas asociadas a la encuestas de satisfacción Salida externa Baja 4

Buscar los parámetros de medición asociados a cada pregunta Consulta externa Media 4

Buscar los parámetros de medición asociados a cada pregunta Archivo lógico interno Baja 7

Listar los parámetros de medición asociados a cada pregunta Salida externa Media 5

Registrar respuestas de encuestas de satisfacción Entrada externa Media 4

Crear un periodo de evaluación Entrada externa Baja 3

Listar servicio forense a evaluar Salida externa Baja 4

Listar municipio a evaluar Salida externa Baja 4

Buscar y comparar los parámetros de entrada Consulta externa Media 4

485

Generar informes

estadísticos

Total puntos de función sin ajustar

Gestión (CRUD) de

usuarios

Registrar fecha

realización encuesta

Registrar muestra

estadística

Registrar las respuestas

de las encuestas de

satisfacción

Login - Ingresar al

sistema

Gestionar (CRUD) las

propiedades de

encuestas de

satisfacción

Page 42: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

42

Tabla 10: Factor de ajuste

Tras realizar los cálculos correspondientes y habiendo tenido en cuenta un

promedio de 8 horas de trabajo por punto de función, en lenguajes de cuarta

generación (como Java), una jornada laboral de 6 horas, 20 días hábiles de trabajo

en un mes y un equipo de desarrollo compuesto por 4 personas, se obtienen los

resultados observados en la tabla 11, esta hace referencia a los costos del proyecto,

correspondiendo a una duración de 7,7 meses y un costo total de $36.960.000.

Tabla 11: Resultado estimación puntos de función

Con el fin de incluir la variación de costos y duración del proyecto, obtenidas en las

tres estimaciones anteriormente empleadas, se emplea la técnica de probabilidad

estadística de tres puntos, esta técnica categoriza las estimaciones en tres tipos,

optimista, más probable y pesimista (tabla 12), además comprende una desviación

estándar, es decir, un rango de variación para la estimación obtenida.

Factor de Ajuste Puntaje

Comunicación de Datos 4

Procesamiento Distribuido 3

Objetivos de Rendimiento 0

Configuración del equipamiento 1

Tasa de transacciones 1

Entrada de Datos en Línea 4

Interfase con el Usuario 3

Actualización en Línea 3

Procesamiento Complejo 0

Reusabilidad de Código 4

Facilidad de Implementación 1

Facilidad de Operación 0

Instalaciones Múltiples 3

Facilidad de Cambios 4

Total factor de ajuste 31

Puntos de función ajustados 465,6

Promedio horas punto de función en Java 8

Horas de esfuerzo por persona 3724,8 ≈ 3725

Horas de esfuerzo (4 personas) 931,2

Días de trabajo (4 personas) 155,5

Tiempo en meses (4 personas) 7,7

Costo por mes $ 1.200.000

Costo Total $ 36.960.000

Cálculos de estimación

Page 43: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

43

Tabla 12: Categorización de las

estimaciones

Tabla 13: Resultado estimación

probabilística

Tras evaluar las variaciones de costo en las estimaciones de Cocomo, casos de uso

y puntos de función, se presenta en la tabla 13 un consolidado de la duración y de

los costos esperados para el proyecto, al igual que sus respectivos rangos de

variación, de esta manera se puede determinar que para el desarrollo de este

proyecto se estima un rango de costos de: $11.593.33 hasta $23.073.333 y un rango

de duración de 3 meses hasta 5 meses.

Con el fin de seguir los principios del modelo Scrum, la tabla 14 da a conocer de

manera general las etapas y/o fases a desarrollar en el proyecto y sus respectivos

responsables, el desarrollo de las fases de planificación, análisis y requisitos

incluyeron el apoyo de funcionarios del área de sistemas del INML que conocían en

cabalidad el proceso de las encuestas de satisfacción, por otro lado, el apoyo de

una persona externa al proceso con dominio en el ámbito de ingeniería del software,

facilito la creación, ejecución y validación de los casos de prueba realizados en

dicha etapa.

Tabla 14: Responsables fases del proyecto

Optimista 2,1 meses

Más probable 3,4 meses

Pesimista 7,7 meses

Optimista $ 2.520.000

Más probable $ 16.130.000

Pesimista $ 36.960.000

Duración

Costos

Duración esperada 3,9 ≈ 4 meses

Desviación estándar 0,99 ≈ 1 mes

Costo esperado 17.333.333$

Desviación estándar 5.740.000$

Cálculos de estimación

Duración

Costos

Fase/Etapa Responsable

Planificación Geovany Gomez - Julian Ventero

Análisis Rodrigo Sogamoso - Julian Ventero

Requisitos Rodrigo Sogamoso - Julian Ventero

Diseño Julian Ventero

Arquitectura Julian Ventero

Codificación Julian Ventero

Pruebas Carolina Garzón - Julian Ventero

Proyecto: Plataforma web satisfacción clientes INML

Page 44: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

44

La ilustración 11, presenta un cronograma detallado de las actividades a realizar

durante el desarrollo del proyecto, estas involucran el ciclo de vida del software junto

con la metodología scrum, todo ello con el fin de alcanzar un prototipo funcional al

final de cada sprint y facilitar el proceso de feedback o sprint Retrospective.

Ilustración 11: Cronograma

8.2. ANÁLISIS

Para el desarrollo de esta etapa, se inicia conociendo el contexto en el cual se

involucra el proyecto, conociendo los objetivos y funciones del Instituto Nacional de

Medicina Legal y Ciencias Forenses, su estado actual referente al uso de las TIC

en la Regional Occidente y su visión para la integración de estas con el instituto. A

su vez, se revisa la documentación existente sobre la problemática del proyecto,

con el fin de conocer el proceso actual de las encuestas de satisfacción de los

clientes del INML y CF, identificar y caracterizar los distintos roles que intervienen

en dicho proceso, al igual que identificar el eje central de la problemática del

proyecto, siendo este el empleo de la herramienta ofimática Excel para la

administración y gestión centralizada de las encuestas de satisfacción de los

clientes del INML y CF.

La ilustración 12, representa gráficamente el proceso actual de las encuestas de

satisfacción de los clientes del Instituto Nacional de Medicina Legal y Ciencias

Forenses Regional Occidente, dicho proceso posee dos roles bien definidos, uno

Page 45: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

45

de ellos es el coordinador de grupo, el cual está a cargo de integrar los servicios

forenses prestados a la sociedad en un marco de calidad. Por otro lado, el rol

definido como cliente, representa las distintas autoridades como: fiscalía, policía

judicial, defensoría del pueblo, tribunales, jueces y demás autoridades competentes

que requieran la prestación de servicios médico-legales y de ciencias forenses.

Ilustración 12: Diagrama actividades proceso actual

La ilustración 12, presenta actividades como planear la evaluación de la satisfacción

del cliente, en la que el coordinador de grupo, define el tamaño de muestra

estadística y el tipo de encuesta a aplicar, por otra parte al ser aplicada y

diligenciada la encuesta de satisfacción, el coordinador de grupo debe tabular,

analizar y realizar un informe estadístico, con el fin de divulgar los resultados de

evaluación obtenidos, a su vez este, debe consultar e implementar acciones

preventivas, correctivas y/o de mejoramiento de los servicios forenses evaluados.

8.3. REQUISITOS

El desarrollo de esta etapa se inició directamente con el análisis de las encuestas

de satisfacción existentes y sus informes estadísticos, los cuales permitieron inferir

aspectos y funcionalidades de gran importancia para el proyecto. Posteriormente se

validó y recolecto información adicional a través de entrevistas programadas con los

Stakeholders, permitiendo identificar y establecer las funcionalidades con las que

debe cumplir la plataforma web.

Page 46: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

46

Tabla 15: Requisitos funcionales

La tabla 15 representa el Product backlog del proyecto, este es un marco de

referencia general de las funciones y tareas a desarrollar, su estimación en horas

(basada en la estimación por puntos de función) y la prioridad de estas. Las tablas

16 y 17, presentan una especificación de los requisitos funcionales del proyecto.

Prioridad del

requisito4 (Alta)

Proyecto: Plataforma web Satisfacción Clientes INML

Identificación del

requisitoRF01

Nombre del

requisitoGestionar (CRUD) las propiedades de encuestas de satisfacción

Descripción del

requisito

El sistema debe permitir al usuario administrador crear, modificar,

eliminar y consultar los criterios, aspectos, parámetros de medición,

preguntas de las encuestas y clientes del INML

Tabla 16: Especificación del requisito funcional 01

Prioridad del

requisito5 (Muy Alta)

Proyecto: Plataforma web Satisfacción Clientes INML

Identificación del

requisitoRF07

Nombre del

requisitoGenerar informes estadísticos

Descripción del

requisito

El sistema debe permitir a los coordinadores de grupo, directores

seccional y regional, ingresar un periodo de fechas (inicio -fin),

municipio y servicio forense, con el fin de obtener el informe

estadístico en formato PDF

Tabla 17: Especificación del requisito funcional 07

Nota: La especificación de cada uno de los requisitos funcionales que hacen parte

del proyecto, se pueden evidenciar en la sección de anexos.

Id Prioridad Nombre Estimación (horas)

RF01 4 Gestionar (CRUD) las propiedades de encuestas de satisfacción 1980

RF02 2 Login - Ingresar al sistema 58,08

RF03 4 Gestion (CRUD) de usuarios 132

RF04 3 Registrar fecha realización encuesta 52,8

RF05 2 Registrar muestra estadística 52,8

RF06 5 Registrar las respuestas de las encuestas de satisfacción 205,92

RF07 4 Generar informes estaditicos 79,2

Proyecto: Plataforma web satisfacción clientes INML

Page 47: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

47

Los requisitos no funcionales, están asociados con las características del software

o atributos de calidad, estos son presentados en la tabla 18 y buscan especificar los

criterios con los que debe contar la plataforma web: portabilidad, seguridad,

capacidad de mantenimiento y usabilidad, seguridad.

Tabla 18:Requisitos no funcionales

La ilustración 13 representa un diagrama de actividades ideal, en el cual se

encuentra implementado el sistema de información de las encuestas de satisfacción

de los clientes del INML y CF, dicho diagrama muestra de manera detallada las

actividades que realiza cada rol, donde en primera medida el director de sistemas

debe crear las propiedades de las encuestas de satisfacción, al igual que los

usuarios que tendrán acceso al sistema. Posteriormente el coordinador de grupo

debe aplicar las encuestas de satisfacción e ingresar al sistema, con el fin de

registrar las respuestas dadas por las autoridades judiciales, de manera seguida el

coordinador de grupo, al igual que los directores de seccional y regional, tiene la

opción de generar un informe estadístico, para lo cual se debe ingresar un periodo

de evaluación (fecha inicio y fecha de finalización a evaluar), un municipio y el

servicio forense que fue evaluado por las autoridades.

Id Tipo

RNF01 Seguridad

RNF02 Usabilidad

RNF03Capacidad de mantenimiento

Portabilidad

RNF05 Usabilidad

RNF06 Capacidad de mantenimiento

Los informes estadísticos deben ser mostrados en formato PDF

El patrón arquitectónico MVC (Modelo Vista Controlador) y el patrón de diseño Facade deben

ser empleados en la plataforma web

RNF04El sistema debe ser tipo web y emplear la tecnología Java Server Pages, al igual que los

frameworks Java Server Faces y Primefaces

Capacidad de mantenimiento

Portabilidad

El sistema debe emplear la biblioteca Ireport para la creación de los informes estadísticos

El sistema debe emplear un entorno grafico semejante a los sistemas ya implantados en INML

Proyecto: Plataforma web satisfacción clientes INML

Nombre

El acceso al sistema se dará a través de la cedula del usuario

Page 48: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

48

Ilustración 13: Diagrama actividades proceso Sistema de Información

8.4. DISEÑO

El desarrollo de esta fase es de gran importancia para cumplir las funcionalidades

del proyecto, debido a esto, el desarrollo de esta fase tiene como base fundamental

los requisitos funcionales y la especificación de estos. La representación de un

modelo estructural contribuye al soporte de las funcionalidades del sistema y facilita

la abstracción de objetos de datos, atributos y relaciones entre estos, dicho modelo

es presentado en las ilustraciones 14 y 15.

Page 49: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

49

Ilustración 14: Diagrama relacional

Ilustración 15: Abstracción diagrama relacional

Page 50: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

50

La creación del modelo de base de datos es la representación del diagrama

relacional, las ilustraciones 16 y 17 presentan respectivamente la codificación de las

entidades encuesta y respuesta, dichas entidades poseen un papel de gran

importancia para el proyecto, ya que estas son la base principal para la creación de

informes estadísticos.

Ilustración 16: Codificación entidad encuesta

Ilustración 17: Codificación entidad respuesta

Page 51: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

51

La ilustración 18 presenta un diagrama de casos de uso, en el cual se muestra la

integración de la plataforma web al proceso de retroalimentación del INML y CF,

además de esto se presentan las interacciones o actividades que los diferentes

actores realizan con la plataforma web, estas actividades hacen referencia en

primera media a la creación de usuarios y propiedades de las encuestas de

satisfacción (criterios, aspectos, preguntas, servicios forenses, parámetros de

medición) por parte del facilitador TIC del área de sistemas. Posterior a la

planeación, evaluación y aplicación de las encuestas de satisfacción, las

autoridades responden estas y los coordinadores de grupo registran dichas

respuestas en la plataforma web.

Finalmente, la generación de informes estadísticos se encuentra a cargo de los

coordinadores de grupo, el director seccional y el director regional, quienes son los

encargados de establecer el periodo de evaluación, el municipio y el servicio forense

a evaluar.

Ilustración 18: Diagrama de casos de uso

Page 52: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

52

Dentro de la fase de diseño es necesario, la creación de prototipos o modelos que

permitan visualizar los entornos funcionales con los cuales interactúa el cliente, por

lo que las ilustraciones 19 y 20 presentan un prototipo general del entorno grafico

del sistema o mockups, en estos se evidencia el registro de encuestas estadísticas

y la generación de informes estadísticos por parte del coordinar de grupo y el

director regional o seccional respectivamente.

Ilustración 19: Mockup para registro de encuestas

Page 53: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

53

Ilustración 20: Mockup para generación de informes estadísticos

Nota: La presentación de los mockups correspondientes al desarrollo de cada uno

de los requisitos funcionales que hacen parte del proyecto, se pueden evidenciar en

la sección de anexos.

8.4.1. ARQUITECTURA

La arquitectura de un software es un factor propio y característico de la fase de

diseño, el desarrollo de la fase de arquitectura permite detallar y conocer la

interacción de las propiedades de un objeto de datos (métodos y eventos), esta es

representada a través de un esquema de funcionamiento del patrón arquitectónico

MVC (Modelo Vista Controlador), siendo este el encargado de segmentar los

componentes de una aplicación, con el fin de reutilizar funcionalidades en distintas

partes de la misma aplicación, facilitar el mantenimiento de la misma y asignar

responsabilidades u obligaciones a los componentes que intervienen en la ejecución

de una aplicación software y la interacción con el usuario.

Dicho esquema de funcionamiento se puede evidenciar en la ilustración 21, donde

se observa la segmentación de las capas de datos, negocio y presentación, al igual

que el sentido de ejecución que emplea la plataforma web cuando el cliente accede

al uso de esta.

Page 54: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

54

Ilustración 21: Esquema de funcionamiento patrón arquitectónico MVC [29]

La integración del patrón MVC (Modelo Vista Controlador) constituye la

segmentación de las capas de datos, negocio y presentación, la primera capa es

presentada en la ilustración 22 a través de un diagrama de clases y se encuentra

directamente relacionada con el modelo de base datos descrito anteriormente, la

facilidad de comunicación entra las capas uno y dos posee correlación con el patrón

de diseño estructural facade, el cual minimiza la dependencia entre objetos de datos

y es presentado en la ilustración 23 como un modelo de arquitectura de software.

La tercera y última capa hace referencia a la interfaz gráfica con la que interactúa el

usuario.

Ilustración 22: Abstracción diagrama de clases

Page 55: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

55

Ilustración 23: Diagrama de clases patrón de diseño estructural facade

8.5. CODIFICACIÓN

El desarrollo de la fase de codificación consiste en llevar a código fuente, los

modelos de arquitectura, datos y requisitos de las fases anteriormente

desarrolladas, el empleo de la plataforma Java Enterprise Edition es esencial para

el desarrollo de esta fase, ya que esta permite crear aplicaciones distribuidas,

robustas y ligeras en lenguaje Java y las propiedades de este para la programación

orientada a objetos, además permite agregar e integrar diferentes componentes

como: EJB (Enterprise Java Beans), JSP (Java Server Pages); JPA (Java

Persistence API), JTA (Java Transaction API).

De otro modo, el empleo de JSF (Java Server Faces) en el desarrollo de esta fase,

facilito la manipulación y visualización de diferentes elementos en los formularios de

la vista, además de la recuperación de valores en cajas y demás elementos de la

interfaz de usuario. Las ilustraciones 24 y 25 presentan la creación de paneles,

botones, cajas de texto, formularios y tablas a través del lenguaje XHTML y los

componentes y frameworks descritos anteriormente.

Page 56: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

56

Ilustración 24: Codificación entorno gráfico muestra estadística

Ilustración 25: Codificación entorno gráfico encuestas de satisfacción

Page 57: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

57

La creación de prototipos funcionales, son un aspecto característico de la

metodología scrum, la cual es empleada para el desarrollo del proyecto, los avances

realizados durante la fase de codificación se evidencian en las ilustraciones 26 y 27,

estas presentan de manera respectiva el prototipo inicial y prototipo final del entorno

grafico del sistema para la creación de encuestas de satisfacción, su panel de

visualización, edición y el menú correspondiente a los demás factores que hacen

partes del proyecto.

Ilustración 26: Prototipo entorno grafico encuestas de satisfacción

Page 58: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

58

Ilustración 27: Prototipo final entorno grafico encuestas de satisfacción

La base fundamental para el continuo mejoramiento de prototipos funcionales se

realizó a través del Sprint Retrospective, este proceso busca establecer las

dificultades y aspectos cumplidos durante cada sprint realizado, con el fin de obtener

un apoyo y/o solución por parte del Scrum Master, la tabla 19 presenta de manera

muy general las dificultades y aspectos cumplidos a lo largo del desarrollo del todo

el proyecto.

Tabla 19: Sprint retrospective

Feedback / Sprint Retrospective

Aspectos cumplidosEspecificación de requisitos funcionales

Corrección diagrama relacional

Modificar los nombres de la interfaz de usuario a través del bundle

Detallar diagrama actividades

Empleo de componentes de Primefaces

Creación de templates para la separación de contenido

Validación de campos en interfaz de usuario

Dificultades

Precisar la diferencia entre usuarios y clientes del INML

Manejo de datos para listar las propiedades de un objeto

Consultas a través del patrón de diseño Facade

Diferenciar componentes JSP, HTML , XHTML y Primefaces en la vista

Comparación de datos para el Login

Solución de errores entre la vista y el controlador

Integración de Ireport con Netbeans

Page 59: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

59

8.6. PRUEBAS

La calidad de un producto software no puede asegurarse en un 100% (es imposible),

sin embargo, si es posible producir casos de prueba que identifiquen errores

funcionales en la plataforma web, el desarrollo de esta fase tiene como eje central

la identificación de errores funcionales en la plataforma web y la validación de

campos de la misma en toda la plataforma web, esta es presentada en la tabla 20 y

comprueba el estado de las diferentes cajas de texto, los tipo de datos que admiten,

el tipo de dato para el que fue diseñado y la reacción de los botones al clic del

usuario.

Validación de campos y botones Resultado

Los campos de tipo fecha solo permiten el formato correspondiente (mm-dd-yyyy) ✓

Los campos de tipo texto solo permiten el ingreso del mismo ✗

Los campos de tipo entero solo permiten el ingreso de números ✓

Los campos para el ingreso de correo electrónico solo son validos si emplea el arroba "@" ✗

Los campos para el ingreso de contraseñas, ocultan sus valores ✓

Los campos de tipo texto permiten el ingreso de tildes ✓

Todos los menús de selección reaccionan a una función o clic del usuario ✓

Todos los botones reaccionan a una función o clic del usuario ✓

Tabla 20: Validación de campos en toda la plataforma web

Con el fin de evaluar los requisitos funcionales de la plataforma web desarrollada,

se diseñan casos de prueba con escenarios específicos y probables de empleo por

todo tipo de usuarios, desde usuarios con poco dominio de escenarios

sistematizados (computadores, sistemas de información, páginas web, etc.) hasta

usuarios con altas destrezas en escenarios sistematizados.

La tabla 21 especifica un caso de prueba para evaluar la gestión (CRUD) de las

propiedades de las encuestas de satisfacción y la gestión (CRUD) de los usuarios,

en dicho caso de prueba se determinan diferentes flujos de entrada con el fin de

evaluar las posibles acciones a realizar por los usuarios en la plataforma web,

asimismo se identifican las salidas esperadas y las salidas obtenidas, esta última

hace referencia al resultado real que entrega la plataforma web.

Page 60: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

60

Tabla 21: Caso de prueba para RF01 y RF03

Requisito Id Caso de prueba CP01

Operación Salida obtenida

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

No esposible ingresar texto

Se cierra el formulario sin registrar

Presenta alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

Presentar alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Se cierra el formulario sin registrar

No se permite, el botón de editar se

encuentra deshabilitado

Presentar alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Presentar alerta de que el registro se

edito correctamente

No permitir la selección de más de una

fila

No se permite, el botón se encuentra

deshabilitado

Presentar una alerta de que el registro

se borro correctamente

Presentar una alerta de que el registro

se borro correctamente

Error al ingresar dato

Seleccionar varios registros de la tabla para ver sus

propiedades

Diligenciar de manera correcta el formulario

Alerta de error, dato duplicado

Actualizar un registro con un dato ya existente en

otro registro

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Ingresar un campo de texto vacío

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Recargar la pagina con los campos de texto llenos

No seleccionar ningún registro de la tabla para

editar sus campos

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Proyecto

Entrada esperada

El sistema debe permitir al usuario administrador crear, modificar, eliminar y ver los criterios, aspectos, parámetros de medición,

preguntas, encuestas, regionales, seccionales y clientes del INML y CF

Gestionar (CRUD) las propiedades de encuestas de satisfacción -

Gestion (CRUD) de usuarios

Salida esperada

Plataforma web Satisfacción clientes INML

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar el formulario de creación

vacío, presentar alerta de registro

exitoso y mostrar el nuevo registro en

la tabla

Descripción

Crear

Ingresar un campo de texto vacío

Seleccionar una fila de la tabla y crear un registro

Crear un registro con un dato ya existente

Presentar alerta de que el registro se

guardo correctamente y mostrar el

nuevo registro en la tabla

Presentar el formulario de creación

vacío, presentar alerta de registro

exitoso y mostrar el nuevo registro en

la tabla

En un campo de fecha ingresar texto

Recargar la pagina con los campos de texto llenos

No permitir la selección de más de una

fila

No permitir la selección de más de una

fila

Borrar

Editar

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Se cierra el formulario sin registrar

No permitir

Alerta de error, dato duplicado

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Presentar alerta de que el registro se

edito correctamenteEditar de manera correcta los campos de un registro

Borrar múltiples filas

Presentar una alerta de que el registro

se borro correctamente

Ver

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Se cierra el formulario sin registrar

No permitir

No permitir la selección de más de una

fila

Presentar una alerta de que el registro

se borro correctamenteEliminar un registro con una llave foránea asociada

Seleccionar una registro de la tabla y borrarlo

Borrar un registro sin ser seleccionado

Page 61: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

61

De modo similar la tabla 22 presenta el caso de prueba diseñado para evaluar la

generación de informes estadísticos, donde se especifican los posibles flujos de

entrada, la salida esperada y el resultado real que arroja la plataforma web.

Tabla 22: Caso de prueba para RF07

Nota: La presentación de los casos de pruebas correspondientes al cumplimiento

de cada uno de los requisitos funcionales que hacen parte del proyecto, se pueden

evidenciar en la sección de anexos.

Los resultados obtenidos de los casos de prueba descritos anteriormente, son

expuestos en la sección de resultados, donde se presenta el cumplimiento de los

requisitos funcionales con la implementación de la plataforma web y se da a conocer

el informe de pruebas.

Requisito Id Caso de prueba CP06

Operación Resultado Real

No es posible, solo se sale dando clic

No deja ingresar texto

Se cierra el formulario sin registrar

Entrada esperada Salida esperada

Registrar

Ingresar un campo de texto vacíoPresentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Salirse del formulario dando clic en cualquier otro No es posible, solo se sale dando clic

En un campo de fecha ingresar texto Error al ingresar dato

Recargar la pagina con los campos de texto llenos Se cierra el formulario sin registrar

Diligenciar de manera correcta el formularioGenerar la descarga en formato PDF

del informe estadístico

Generar la descarga en formato PDF

del informe estadístico

Proyecto Plataforma web Satisfacción clientes INML

Generar informes estadísticos

DescripciónEl sistema debe permitir a los coordinadores de grupo, directores seccional y regional, ingresar un periodo de fechas (inicio -fin),

municipio y servicio forense, con el fin de obtener el informe estadístico en formato PDF

Page 62: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

62

9. RESULTADOS

Con el fin de preservar la integridad y seguridad de los datos, la plataforma web

incluye la verificación de acceso a usuarios a través de un Login, el cual es

presentado en la ilustración 28 y da cumplimiento al requisito no funcional de

seguridad en el que el acceso al sistema se dará a través de la cedula del usuario.

Ilustración 28:Login

Posterior al acceso del sistema, la plataforma web presenta al administrador del

sistema el entorno grafico para gestionar las propiedades de las encuestas de

satisfacción, este posee un menú de navegación principal en el costado izquierdo y

una tabla principal para la presentación de las propiedades de las encuestas de

satisfacción creadas, todo ello se evidencia en la ilustración 29.

Page 63: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

63

Ilustración 29: Entorno grafico para gestionar (CRUD) las propiedades de las

encuestas de satisfacción

De manera similar la ilustración 30 presenta el formulario para crear y asociar las

distintas propiedades de las encuestas de satisfacción, no obstante, cabe destacar

que las operaciones de ver, editar y borrar están asociadas a cada propiedad de las

encuestas de satisfacción.

Ilustración 30: Formulario para crear una pregunta y asociar las propiedades de

las encuestas de satisfacción

Page 64: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

64

Las ilustraciones 31, 32 y 33 presentan de manera respectiva el entorno grafico

para los usuarios del sistema con rol de cooridanores de grupo, dichos usuarios son

los encargados de crear una muestra estadística (ilustración 30); registrando la

muestra planeada, la fecha de creación de esta y asociando dichos datos a un

servicio forense y su respectiva encuesta de satisfacción. De manera similar la

ilustración 31 presenta el entorno grafico para registrar la fecha de realización de

las encuestas de satisfacción, el servicio forense evaluado la seccional a la que

pertenece y la autoridad evaluadora.

Ilustración 31:Entorno grafico para registrar muestra estadística

Ilustración 32: Entorno grafico para registrar la fecha de

realización encuestas de satisfacción

Page 65: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

65

La relación existente entre las ilustraciones 32 y 33 es de vital importancia, ya que

el registro de datos de la primera ilustración da origen a la presentación de las

preguntas asociadas a la encuesta de satisfacción (seleccionada previamente), al

mismo tiempo presenta los parámetros de medición asociados a cada pregunta,

seleccionando cada una de estas.

Ilustración 33: Entorno grafico para registrar las respuestas de

las encuestas de satisfacción

La ilustracion 34 presenta el entorno grafico para los usuarios del sistema con rol

de cooridanores de grupo, director seccional y director regional, dichos usuarios son

los encargados de establecer los parametros de entrada para crear un informe

estadistico, seleccionado el servico forense, municipio y periodo de evaluación

(fecha inicio y fecha de finalización) deseados.

Posterior a ello, se obtiene en formato PDF el informe estadistico presentado en la

ilustración 35, en el cual se evidencia la cantidad de encuentas y preguntas

realizadas, las preguntas anuladas y un consolidado de los parametros de medición

respondidos en cada pregunta.

Page 66: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

66

Ilustración 34: Entorno grafico para generar un informe estadístico

Ilustración 35: Informe estadístico

Page 67: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

67

La tabla 23 presenta de manera detallada el informe de pruebas realizadas a la

plataforma web, en este se puede evidenciar las operaciones cuyo resultado no fue

satisfactorio, el caso de prueba al que pertenecen y el requisito que evalúan, sin

embargo, solo las operaciones relacionadas con el caso de prueba 04, tienen un

impacto de ejecución bajo para el usuario final.

Tabla 23: Resultado informe de pruebas

La tabla 24 muestra de manera general la cantidad de casos de prueba efectuados

y los resultados satisfactorios o no de los mismos, en este sentido se puede inferir

que el 100% de las funciones del sistema operan de manera correcta, sin embargó

el 5% de las funciones del sistema tienen un impacto de ejecución bajo para el

usuario final y deben seguir una ruta especifica de ejecución para no interrumpir el

proceso de registro que se esté realizando.

Tabla 24: Compilación resultado informe de pruebas

Id Caso de

pruebaRequisito Operación Salida esperada Resultado Real

Crear un registro con un dato

ya existente

Alerta de error,

dato duplicado

Presenta alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla, sin embargo el

registro creado posee un id diferente

al dato existente

Actualizar un registro con un

dato ya existente en otro

registro

Alerta de error,

dato duplicado

Presenta alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla, sin embargo el

registro creado posee un id diferente

al dato existente

Recargar la pagina con los

registros de preguntas en la

tabla y habiendo

seleccionado un parametro

de medicion como respuesta

Se restaure la

tabla con los

registros de las

preguntas

Error debido a que la clave de fila de

la tabla no posee un valor como

variable

Diligenciar de manera

correcta el formulario

Presentar alerta

de que el registro

se guardo

correctamente

No presenta alerta de nigun tipo, sin

emabrgola respuesta queda guardada

correctamente

Proyecto Plataforma web Satisfacción Clientes INML

Registrar las

respuestas de las

encuestas de

satisfacción

CP04

Gestionar (CRUD)

las propiedades de

encuestas de

satisfacción

Gestion (CRUD)

de usuarios

CP01

6 40 4

Proyecto: Plataforma web Satisfacción Clientes INML

Resultado no satisfactorioResultado

satisfactorio

Total de casos

de prueba

realizados

Total de operaciones y/o esecenarios probados

Page 68: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

68

10. RECOMENDACIONES

• Tras el desarrollo y adaptación de futuras versiones de la plataforma web

implementada, integrar a la misma los procesos de recolección de encuestas

de satisfacción, con el fin de incluir de manera activa a las autoridades que

integran el proceso de retroalimentación con el Instituto Nacional de Medicina

legal y Ciencias Forenses Regional Occidente.

• Impulsar el uso de la plataforma web a nivel nacional, con el fin de integrar

los resultados de las encuestas de satisfacción a nivel nacional y obtener

indicadores estadísticos que permitan establecer fortalezas y debilidades del

Instituto Nacional de Medicina legal y Ciencias Forenses y demás

autoridades competentes en todo el territorio nacional que solicitan servicios

a esta entidad.

Page 69: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

69

11. CONCLUSIONES

• La creación y documentación de modelos teorico-practicos facilitó la

ejecución de cada una de las fases de desarrollo de software consideradas

para la realización de la plataforma web implementada

• La realización de pruebas de caja negra permitió establecer el cumplimiento

de los requisitos funcionales de la plataforma web implementada

• Si bien la documentación existente sobre los procesos de recolección,

tabulación y análisis estadístico, posibilitan establecer los requisitos de la

plataforma web, el reconocimiento y caracterización de las encuestas de

satisfacción existentes, el entorno que involucra a los usuarios en el proceso

de retroalimentación y la identificación de los roles que intervienen en el

proceso, son factores claves para establecer los requisitos del Instituto

Nacional de Medicina Legal y Ciencias Forenses Regional Occidente.

• La evaluación de los datos existentes, la especificación de requisitos y el

empleo de frameworks, modelos de datos, modelos arquitectónicos y

modelos de interfaz proporcionan los fundamentos teorico-practicos

necesarios para el correcto diseño y creación de un sistema de información

que apoya y garantiza las funcionalidades de la plataforma web

implementada.

• La planeación y diseño previo de las pruebas funcionales en la plataforma

web implementada facilitaron la identificación de posibles escenarios y

operaciones a ejecutar por los usuarios del sistema, simplificaron la

caracterización de errores funcionales hallados y proporcionaron un marco

de referencia para el cumplimiento de pruebas funcionales en la plataforma

web y sus futuras adaptaciones.

• Pese a que una sola persona desempeño todos los roles del equipo de

desarrollo, la implementación de la metodología Scrum, la planificación del

ciclo de vida del software, el apoyo del INML y CF, el empleo de prototipos

funcionales y la aplicación del proceso de feedback, facilitaron el desarrollo

de las etapas de análisis, requisitos, diseño, arquitectura, codificación y

pruebas en la plataforma web implementada.

Page 70: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

70

BIBLIOGRAFÍA

[1] C. A. M. Gaitán, G. E. Morales, and E. A. Barney, "Sistema de Evaluación y

Calificación de Actores: Ranking de Satisfacción EPS 2016." [2] E. Sánchez Márquez and L. K. Raigoso Castillo, "Medición de la satisfacción

del usuario que participa en los juegos interempresariales de Comfamiliar Risaralda," Pereira: Universidad Tecnológica de Pereira, 2015.

[3] N. J. Jaramillo Pescador and J. E. González Suárez, "Nivel de satisfacción

laboral de los empleados de la Alcaldía Municipal de la Celia Risaralda," Universidad Tecnológica de Pereira, 2010.

[4] W. H. Wei and G. J. Chen, "JavaStatSoft: design patterns and features,"

Computational Statistics, vol. 23, pp. 235-251, 2007. [5] M. Hannes and T. Lumley, "Best of both worlds relational databases and

statistics.pdf," 2013. [6] J. J. R. Sala, Introducción a la programación. Teoría y práctica vol. 3. [7] F. Durán, F. Gutiérrez, and E. Pimentel, Programación orientada a objetos

con Java: Editorial Paraninfo, 2007. [8] F. A. M. Gil and G. M. Quetglás, Introducción a la programación estructurada

en C: Universidad de València Servicio de Publicaciones, 2003. [9] J. Dean, Introducción a la programación con Java: McGraw-Hill

Interamericana, 2009. [10] C. J. Date, Introducción a los sistemas de bases de datos: Pearson

Educación, 2001. [11] A. Silberschatz, H. F. Korth, S. Sudarshan, and F. S. Pérez, Fundamentos de

bases de datos: McGraw-Hill, 2006. [12] N. Snell, Internet: ¿qué hay que saber?: Prentice-Hall, 1995. [13] E. Vértice, Diseño básico de páginas web en HTML: Editorial Vértice, 2009. [14] S. M. Solís, La web semántica: Lulu. com, 2007. [15] J. E. Pérez, "Introducción a XHTML," ed.

Page 71: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

71

[16] J. J. Gutiérrez, "¿ Qué es un framework web?," 12/05/2014 2014. [17] D. Geary and C. S. Horstmann, Core JavaServer Faces: Pearson Education,

2010. [18] E. Burns and N. Griffin, JavaServer Faces 2.0, The Complete Reference:

McGraw-Hill, Inc., 2010. [19] S. Rios, JSF 2+ Hibernate 4+ Spring 4: PrimeFaces 5 with JAX-WS y EJB’S:

Sergio Rios, 2015. [20] I. Sommerville, Software Engineering: Pearson Education, 2011. [21] I. Sommerville and M. I. A. Galipienso, Ingeniería del software: Pearson

Educación, 2005. [22] "IEEE Standard Glossary of Software Engineering Terminology," IEEE Std

610.12-1990, pp. 1-84, 1990. [23] "ISO/IEC/IEEE Standard for Systems and Software Engineering - Software

Life Cycle Processes," IEEE Std 12207-2008, pp. c1-138, 2008. [24] R. S. Pressman and R. O. Martín, Ingeniería del software: un enfoque

práctico: McGraw-Hill, 2003. [25] S. Luján Mora, Programación de aplicaciones web: historia, principios

básicos y clientes web: Editorial Club Universitario, 2002. [26] G. J. Myers, C. Sandler, T. Badgett, and T. M. Thomas, The Art of Software

Testing: Wiley, 2004. [27] E. H. Uribe and L. E. V. Ayala, "Del manifiesto ágil sus valores y principios,"

Scientia et technica, vol. 1, 2007. [28] I. Torras, "Scrum Documentation.pdf," 2015. [29] J. M. O. Cassá and P. A. O. D. Ufano, Programación web en Java: Ministerio

de Educación, 2012.

Page 72: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

72

ANEXOS

Anexo A. Especificación de requisitos funcionales

Tabla 25: Especificación de requisito funcional 01

Tabla 26: Especificación de requisito funcional 02

Prioridad del

requisito

Descripción del

requisito

El sistema debe permitir al usuario administrador crear,

modificar, eliminar y consultar los criterios, aspectos,

parámetros de medición, preguntas de las encuestas y clientes

Identificación del

requisitoRF01

Gestionar (CRUD) las propiedades de encuestas de satisfacciónNombre del

requisito

4 (Alta)

Proyecto: Plataforma web satisfacción clientes INML

Prioridad del

requisito

Proyecto: Plataforma web satisfacción clientes INML

RF02

Login - Ingresar al sistema

El sistema debe permitir un control de acceso a los usuarios por

medio de la cedula del mismo

Descripción del

requisito

2 (Baja)

Identificación del

requisitoNombre del

requisito

Page 73: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

73

Tabla 27: Especificación de requisito funcional 03

Tabla 28: Especificación de requisito funcional 04

Tabla 29: Especificación de requisito funcional 05

Prioridad del

requisito

Proyecto: Plataforma web satisfacción clientes INML

RF03Identificación del

requisito

4 (Alta)

Gestión (CRUD) de usuarios

El sistema debe permitir al DBA crear, modificar, eliminar y

consultar los usuarios que tendrán acceso al sistema y asociar

permisos de funcionalidad a los mismos

Nombre del

requisito

Descripción del

requisito

Prioridad del

requisito

Identificación del

requisitoNombre del

requisito

Descripción del

requisito

Proyecto: Plataforma web satisfacción clientes INML

RF04

Registrar fecha realización encuesta

Cada vez que se registre una encuesta, el sistema debe permitir

registrar a los coordinadores de grupo la fecha en que fue

diligenciada la encuesta de satisfacción por el cliente

3 (Medio)

Prioridad del

requisito

Identificación del

requisito

2 (Baja)

RF05

Cuando se vaya a registrar una encuesta por primera vez, el

sistema debe permitir registrar a los coordinadores de grupo

una muestra estadística ejecutada, el servicio forense a

Registrar muestra estadística

Proyecto: Plataforma web satisfacción clientes INML

Descripción del

requisito

Nombre del

requisito

Page 74: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

74

Tabla 30: Especificación de requisito funcional 06

Tabla 31: Especificación de requisito funcional 07

Prioridad del

requisito

Identificación del

requisitoNombre del

requisitoRegistrar las respuestas de las encuestas de satisfacción

Proyecto: Plataforma web satisfacción clientes INML

RF06

El sistema debe permitir a los coordinadores de grupo registrar

las respuestas de las encuestas de satisfacción dadas por los

clientes (autoridades judiciales)

5 (Muy Alta)

Descripción del

requisito

Prioridad del

requisito

Proyecto: Plataforma web satisfacción clientes INML

5 (Muy Alta)

Identificación del

requisitoRF07

Nombre del

requisitoGenerar informes estadísticos

Descripción del

requisito

El sistema debe permitir a los coordinadores de grupo,

directores seccional y regional, ingresar un periodo de fechas

(inicio -fin), municipio servicio forense, con el fin de obtener

el informe estadístico en formato PDF

Page 75: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

75

Anexo B: Mockups plataforma web

Ilustración 36: Mockup de para el acceso al sistema – Login

Ilustración 37: Mockup para gestionar las propiedades de las encuestas de

satisfacción y los usuarios

Page 76: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

76

Ilustración 38:Mockup para el registro de la muestra estadística

Ilustración 39: Mockup para el registro de respuestas y fecha realización encuestas de satisfacción

Page 77: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

77

Ilustración 40: Mockup para la generación de informes estadísticos

Page 78: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

78

Anexo C. Casos de prueba de requisitos funcionales

Tabla 32: Caso de prueba para el requisito funcional 01 y 03

Requisito Id Caso de prueba CP01

Operación Salida obtenida

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

No esposible ingresar texto

Se cierra el formulario sin registrar

Presenta alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

Presentar alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Se cierra el formulario sin registrar

No se permite, el botón de editar se

encuentra deshabilitado

Presentar alerta de que el registro se

guardo correctamente y mostrar el

registro en la tabla

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Presentar alerta de que el registro se

edito correctamente

No permitir la selección de más de una

fila

No se permite, el botón se encuentra

deshabilitado

Presentar una alerta de que el registro

se borro correctamente

Presentar una alerta de que el registro

se borro correctamente

Error al ingresar dato

Seleccionar varios registros de la tabla para ver sus

propiedades

Diligenciar de manera correcta el formulario

Alerta de error, dato duplicado

Actualizar un registro con un dato ya existente en

otro registro

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Ingresar un campo de texto vacío

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Recargar la pagina con los campos de texto llenos

No seleccionar ningún registro de la tabla para

editar sus campos

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Salirse del formulario dando clic en cualquier otro

sitio de la plataforma

Proyecto

Entrada esperada

El sistema debe permitir al usuario administrador crear, modificar, eliminar y ver los criterios, aspectos, parámetros de medición,

preguntas, encuestas, regionales, seccionales y clientes del INML y CF

Gestionar (CRUD) las propiedades de encuestas de satisfacción -

Gestion (CRUD) de usuarios

Salida esperada

Plataforma web Satisfacción clientes INML

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar el formulario de creación

vacío, presentar alerta de registro

exitoso y mostrar el nuevo registro en

la tabla

Descripción

Crear

Ingresar un campo de texto vacío

Seleccionar una fila de la tabla y crear un registro

Crear un registro con un dato ya existente

Presentar alerta de que el registro se

guardo correctamente y mostrar el

nuevo registro en la tabla

Presentar el formulario de creación

vacío, presentar alerta de registro

exitoso y mostrar el nuevo registro en

la tabla

En un campo de fecha ingresar texto

Recargar la pagina con los campos de texto llenos

No permitir la selección de más de una

fila

No permitir la selección de más de una

fila

Borrar

Editar

Presentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Se cierra el formulario sin registrar

No permitir

Alerta de error, dato duplicado

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Presentar alerta de que el registro se

edito correctamenteEditar de manera correcta los campos de un registro

Borrar múltiples filas

Presentar una alerta de que el registro

se borro correctamente

Ver

No es posible, solo se sale dando clic

en el botón cancelar ó en la x del

formulario

Se cierra el formulario sin registrar

No permitir

No permitir la selección de más de una

fila

Presentar una alerta de que el registro

se borro correctamenteEliminar un registro con una llave foránea asociada

Seleccionar una registro de la tabla y borrarlo

Borrar un registro sin ser seleccionado

Page 79: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

79

Tabla 33: Caso de prueba para el requisito funcional 02

Tabla 34: Caso de prueba para el requisito funcional 04

Tabla 35: Caso de prueba para el requisito funcional 05

Requisito Id Caso de prueba CP02

Operación Resultado Real

Presentar un mensaje de alerta

indicando que los datos no son validosPermitir el acceso al sistema y

presentar la vista correspondiente

Presentar un mensaje de alerta

indicando que los datos no son validos

Presentar un mensaje de alerta

indicando que los datos no son validos

Se cierra el formulario sin registrarSe cierra el formulario sin registrar

Presentar un mensaje de alerta

indicando que los datos no son validos

Registrar

Proyecto Plataforma web Satisfacción clientes INML

Login - Ingresar al sistema

DescripciónEl sistema debe permitir un control de acceso a los usuarios por medio de la cedula del mismo obtener el informe estadístico en

formato PDF

Entrada esperada Salida esperada

Ingresar un campo de texto vacíoPresentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Ingresar usuario y contraseña incorrectosPresentar un mensaje de alerta

indicando que los datos no son validos

Ingresar usuario y contraseña correctosPermitir el acceso al sistema y

presentar la vista correspondiente

Recargar la pagina con los campos de texto llenos

Presentar un mensaje de alerta

indicando que los datos no son validos

Ingresar usuario correcto y contraseña incorrecta

Ingresar usuario incorrecto y contraseña correcta

Requisito Id Caso de prueba CP03

Operación Resultado Real

No es posible, solo se sale dando clic

No esposible ingresar texto

Se cierra el formulario sin registrar

Proyecto Plataforma web Satisfacción clientes INML

Registrar fecha realización encuesta

DescripciónCada vez que se registre una encuesta, el sistema debe permitir registrar a los coordinadores de grupo la fecha en que fue

diligenciada la encuesta de satisfacción por el cliente

Entrada esperada Salida esperada

Registrar

Ingresar un campo de texto vacíoPresentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Salirse del formulario dando clic en cualquier otro No es posible, solo se sale dando clic

En un campo de fecha ingresar texto Error al ingresar dato

Diligenciar de manera correcta el formularioPresentar alerta de que el registro se

guardo correctamente

Presentar alerta de que el registro se

guardo correctamente

Recargar la pagina con los campos de texto llenos Se cierra el formulario sin registrar

Requisito Id Caso de prueba CP04

Operación Resultado Real

No es posible, solo se sale dando clic

No esposible ingresar texto

Se cierra el formulario sin registrar

Proyecto Plataforma web Satisfacción clientes INML

Registrar muestra estadística

DescripciónCuando se vaya a registrar una encuesta por primera vez, el sistema debe permitir registrar a los coordinadores de grupo una

muestra estadística ejecutada, el servicio forense, la seccional y el cliente del INML y CF

Presentar alerta de que el registro se

guardo correctamente

Registrar

Ingresar un campo de texto vacíoPresentar un mensaje de alerta

indicando que existe un campo vacío

En un campo de fecha ingresar texto Error al ingresar dato

Recargar la pagina con los campos de texto llenos Se cierra el formulario sin registrar

Diligenciar de manera correcta el formularioPresentar alerta de que el registro se

guardo correctamente

Presentar un mensaje de alerta

indicando que existe un campo vacío

Salirse del formulario dando clic en cualquier otro No es posible, solo se sale dando clic

Entrada esperada Salida esperada

Page 80: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

80

Tabla 36: Caso de prueba para el requisito funcional 06

Tabla 37: Caso de prueba para el requisito funcional 07

Requisito Id Caso de prueba CP05

Operación Resultado Real

Presentar alerta de que el registro se

Error debido a que la clave de fila de la

tabla no posee un valor como variable

Proyecto Plataforma web Satisfacción clientes INML

Registrar las respuestas de las encuestas de satisfacción

Presentar la pagina con los registros de Recargar la pagina solo con los registros de

Registrar

Seleccionar más de un registro de la tablaNo permitir la selección de más de una

fila

Entrada esperada Salida esperada

DescripciónEl sistema debe permitir a los coordinadores de grupo registrar las respuestas de las encuestas de satisfacción dadas por los clientes

(autoridades judiciales)

Recargar la pagina con los registros de preguntas en

la tabla y habiendo seleccionado un parametro de

medicion como respuesta

Se restaure la tabla con los registros de

las preguntas

No permitir la selección de más de una

fila

Diligenciar de manera correcta el formularioPresentar alerta de que el registro se

guardo correctamente

No presenta alerta de nigun tipo, sin

emabrgola respuesta queda guardada

correctamente

Requisito Id Caso de prueba CP06

Operación Resultado Real

No es posible, solo se sale dando clic

No deja ingresar texto

Se cierra el formulario sin registrar

Entrada esperada Salida esperada

Registrar

Ingresar un campo de texto vacíoPresentar un mensaje de alerta

indicando que existe un campo vacío

Presentar un mensaje de alerta

indicando que existe un campo vacío

Salirse del formulario dando clic en cualquier otro No es posible, solo se sale dando clic

En un campo de fecha ingresar texto Error al ingresar dato

Recargar la pagina con los campos de texto llenos Se cierra el formulario sin registrar

Diligenciar de manera correcta el formularioGenerar la descarga en formato PDF

del informe estadístico

Generar la descarga en formato PDF

del informe estadístico

Proyecto Plataforma web Satisfacción clientes INML

Generar informes estadísticos

DescripciónEl sistema debe permitir a los coordinadores de grupo, directores seccional y regional, ingresar un periodo de fechas (inicio -fin),

municipio y servicio forense, con el fin de obtener el informe estadístico en formato PDF

Page 81: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

81

Anexo D. Manual de usuario Paso 1: La pantalla principal de acceso al sistema se evidencia en la ilustración 41,

en esta se deben completar los campos de usuario y contraseña correspondientes

y posteriormente dar clic en el botón de ingresar. Cabe resaltar que el campo de

usuario hace referencia a la cedula del mismo.

Ilustración 41: Login Nota: En caso de el administrador de la plataforma web, siga los pasos 2, 3 y 4 de

no serlo continúe con el paso 5.

Paso 2: Posterior al ingreso del usuario, se presenta el entrono grafico para la

administración y gestión de las propiedades de las encuestas de satisfacción

(ilustración 42), en esta se evidencia un menú de navegación principal en el costado

izquierdo y una tabla principal para la presentación de las propiedades de las

encuestas de satisfacción creadas.

Page 82: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

82

Ilustración 42:Administración y gestión propiedades encuestas de satisfacción

La ilustración 43 presenta el menú de

navegación principal en el costado izquierdo,

este hace referencia a todas las propiedades de

las encuestas de satisfacción, siendo estas las

preguntas, criterios, aspectos, parámetros de

medición, servicios forenses, grupos

nacionales a los que pertenecen estos, clientes

a los que se les presta el servicio, regionales,

seccionales, usuarios que tienen acceso al

sistema y roles de estos.

Es importante resaltar, que dentro del menú de

navegación se encuentras ítems como

“Encuesta – Preguntas y Preguntas –

Parámetros Medición”, estos hacen referencia

a la relación existente entre estos, y dando clic

en estos se accede a la gestión y

administración de estas, donde se asocian las

preguntas a cada encuesta de satisfacción y los

parámetros de medición a cada pregunta.

Ilustración 43: Menú de navegación

Page 83: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

83

La tabla principal para la presentación de las propiedades de las encuestas de

satisfacción posee en la parte superior cuatro botones con las principales funciones

del sistema (crear, ver, editar, borrar), la ilustración 44 presenta el formulario para

crear un nuevo criterio, en este se deben agregar un nombre y asignar un estado

para el mismo, posterior a ello se da clic en el botón guardar.

Ilustración 44: Formulario para crear propiedades encuestas de satisfacción

Nota: El sistema no permitirá guardar las propiedades de las encuestas de

satisfacción, si algún campo de ingreso no está diligenciado.

Paso 3: Una vez se crea un criterio o cualquier otra propiedad de las encuestas de

satisfacción, esta es agregada a la tabla principal de presentación (ilustración 45),

donde se evidenciará un listado de los criterios ya existentes, asimismo en la parte

inferior de la tabla de presentación existe la opción para avanzar o retroceder en el

número de páginas del listado existente.

Ilustración 45: Tabla principal de presentación

Paso 4: Para acceder a las funciones de ver, editar y borrar, es necesario seleccionar un ítem de la tabla de presentación, posterior a ello y una vez seleccionado el botón de ver, se presentará un formulario con todas las propiedades del ítem seleccionado (ilustración 46).

Page 84: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

84

Ilustración 46: Formulario para ver las propiedades de las encuestas de

satisfacción

De la misma manera funcionan los botones para editar y borrar un ítem de la tabla

de presentación, la ilustración 47 presenta el correspondiente formulario y los

campos característicos al ítem seleccionado.

Ilustración 47:Formulario para editar las propiedades de las encuestas de

satisfacción

Nota: Los pasos 2,3 y 4 son los mismos para la administración y gestión de todas las propiedades de las encuestas de satisfacción.

Page 85: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

85

Paso 5: La ilustración 48, presenta el entorno grafico para la creación de muestras

estadísticas y el registro de las respuestas dadas por las autoridades judiciales en

las encuestas de satisfacción.

Ilustración 48: Entorno grafico para crear una muestra estadística y registrar las

respuestas de las encuestas de satisfacción

Paso 6: La creación de una muestra estadística se debe realizar solo al inicio de un

periodo de evaluación, para ello se da clic en el primer botón de crear, posterior a

ello se presenta el formulario de la ilustración 49, esta hace referencia a las

propiedades de una muestra estadística, es importante recalcar que el sistema no

permitirá guardar las propiedades de las encuestas de satisfacción, si algún campo

de ingreso no está diligenciado.

Ilustración 49: Formulario para crear una muestra estadística

Page 86: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

86

Paso 7: Para el registro de las respuestas de las enucestas de satisfacción se da

clic en el segundo botón de crear, posterior a ello se presenta el formulario de la

ilustración 50, esta hace referencia a los datos de la autoridad que diligencio la

encuesta, datos como la fecha en que se realizó la encuesta, el servicio forense

evaluado, la seccional y municipio del INML y CF a la que pertenece la encuesta.

Es importante recalcar que el sistema no permitirá guardar las propiedades de las

encuestas de satisfacción, si algún campo de ingreso no está diligenciado.

Ilustración 50: Formulario para registrar la fecha de realización de las encuestas de satisfacción.

Paso 8: Posterior al paso 7, se presentan en una tabla de presentación (ilustración

51) las preguntas asociadas a la encuesta de satisfacción (seleccionada

previamente), al mismo tiempo presenta los parámetros de medición asociados a

cada pregunta, seleccionando cada una de estas.

El registro de las respuestas de las encuestas de satisfacción se evidencia en la

ilustración 51, esta se lleva acabo seleccionado la fila en la que se encuentra la

pregunta, a partir de ello se presenta en la parte inferior de la tabla de presentación,

un menú desplegable con los parámetros de medición, para registrar la respuesta

solo es pertinente seleccionar un parámetro de medición y realizar el mismo proceso

con las demás preguntas de la encuesta.

Page 87: IMPLEMENTACIÓN DE UNA PLATAFORMA WEB PARA EL …

87

Ilustración 51: Entorno grafico para registrar las respuestas de las encuestas de

satisfacción Paso 9: Posterior al paso 8, se da clic en el ítem de “Informes estadísticos” ubicado

en el menú de navegación izquierdo, este presenta el formulario con los parametros

de entrada para crear un informe estadistico, seleccionado el servico forense,

municipio y periodo de evaluación (fecha inicio y fecha de finalización) deseados.

Una vez se haya dado clic en el botón aceptar se deben esperar unos segundos,

para que de manera automática se descargue el informe estadístico en formato

PDF.

Ilustración 52: Entorno grafico para generar un informe estadístico