105
1 DESARROLLO DE UN APLICATIVO PARA EL CONTROL Y SEGUIMIENTO DE INCIDENTES PARA EL PROYECTO BANCO AGRARIO DE LA EMPRESA THOMAS MTI DANIEL ALBERTO SALAMANCA AVELLANEDA 20161373001 WILSON FERNANDO VARGAS PIZA 20161373004 UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD TECNOLÓGICA INGENIERÍA EN TELECOMUNICACIONES 2018

DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

1

DESARROLLO DE UN APLICATIVO PARA EL CONTROL Y SEGUIMIENTO DE

INCIDENTES PARA EL PROYECTO BANCO AGRARIO DE LA EMPRESA

THOMAS MTI

DANIEL ALBERTO SALAMANCA AVELLANEDA

20161373001

WILSON FERNANDO VARGAS PIZA

20161373004

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD TECNOLÓGICA

INGENIERÍA EN TELECOMUNICACIONES

2018

Page 2: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

2

DESARROLLO DE UN APLICATIVO PARA EL CONTROL Y SEGUIMIENTO DE

INCIDENTES PARA EL PROYECTO BANCO AGRARIO DE LA EMPRESA

THOMAS MTI

DANIEL ALBERTO SALAMANCA AVELLANEDA

20161373001

WILSON FERNANDO VARGAS PIZA

20161373004

TRABAJO DE MONOGRAFÍA PARA OPTAR AL TITULO DE INGENIERO EN

TELECOMUNICACIONES

DIRECTOR DEL PROYECTO:

ING. LUIS FERNANDO PEDRAZA MARTÍNEZ PHD

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD TECNOLÓGICA

INGENIERÍA EN TELECOMUNICACIONES

2018

Page 3: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

3

NOTA DE ACEPTACIÓN

___________________________________

___________________________________

___________________________________

___________________________________

___________________________________

FIRMA DIRECTOR

___________________________________

FIRMA COORDINADOR

___________________________________

FIRMA CALIFICADOR

___________________________________

Bogotá D.C. Mayo 09 de 2018

Page 4: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

4

Resumen

El presente trabajo, es el desarrollo de un aplicativo enfocado en el control interno

y seguimiento de incidentes de alto impacto, definidos como cualquier evento que

no hace parte del proceso y que puede causar una interrupción en el mismo, tales

como indisponibilidad, lentitud, entre otros para el proyecto BANCO AGRARIO de

la empresa THOMAS MTI, donde primero se encuentra los fundamentos teóricos

en desarrollo de aplicativos y software, así como la seguridad que se deben

brindar para los mismos, adicionalmente se tiene una contextualización de la

empresa, del proyecto banco agrario y los problemas que presenta; se realiza el

levantamiento de información correspondiente para identificar las categorías

necesarias del aplicativo, para verificar su funcionamiento se realizaron las

pruebas correspondientes con el fin de determinar su disponibilidad, seguridad y

calidad de servicio para la correcta cuantificación de los incidentes reportados,

para finalizar se exponen unas recomendaciones basadas en los resultados

obtenidos.

Palabras clave: Incidente, cuantificación, seguridad, disponibilidad, calidad de

servicio.

Abstract

The present work, is the development of an application focused on the internal

control and monitoring of high impact incidents defined as any event that is not part

of the process and that can cause an interruption in it, such as unavailability,

slowness, among others. for the BANCO AGRARIO project of the company

THOMAS MTI, where first the theoretical foundations are found in the development

of applications and software, as well as the security that must be provided for

them, in addition there is a contextualization of the company, of the agrarian bank

project and the problems it presents; the corresponding information is collected to

identify the necessary categories of the application, to verify its operation, the

corresponding tests were carried out in order to determine its availability, safety

and quality of service for the correct quantification of the incidents reported, to

finalize it is exposed some recommendations based on the results obtained.

Key words: Incident, quantification, security, availability, quality of service.

Page 5: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

5

Tabla de contenido

INTRODUCCIÓN .................................................................................................. 10

1. GENERALIDADES ......................................................................................... 11

1.1. DESCRIPCIÓN DE LA EMPRESA........................................................... 11

1.2. PRINCIPALES INCIDENTES DE ALTO IMPACTO EN EL PROYECTO . 11

2. PLANTEAMIENTO DEL PROBLEMA ............................................................ 12

2.1. JUSTIFICACIÓN ...................................................................................... 12

2.2. IMPACTO ESPERADO ............................................................................ 12

3. OBJETIVOS ................................................................................................... 13

3.1. OBJETIVO GENERAL ............................................................................. 13

3.2. OBJETIVOS ESPECÍFICOS .................................................................... 13

4. MARCO CONCEPTUAL ................................................................................ 14

5. ESTADO DEL ARTE ...................................................................................... 16

6. MARCO TEÓRICO ........................................................................................ 18

6.1. DESARROLLO DE SOFTWARE SEGURO ............................................. 18

6.2. DIAGRAMA DE CASOS DE USO ............................................................ 19

6.3. MODELO DE AMENAZAS ....................................................................... 20

6.3.1. PASOS GENÉRICOS ........................................................................ 20

6.4. SEGURIDAD INFORMÁTICA .................................................................. 21

6.4.1. OBJETIVOS DE LA SEGURIDAD INFORMÁTICA. .......................... 21

6.4.2. MEDIDAS PARA LA SEGURIDAD INFORMÁTICA. ......................... 23

6.5. SEGURIDAD DE LAS APLICACIONES Y SOFTWARE .......................... 23

6.6. FUNDAMENTOS DE LA PROTECCIÓN: AMENAZAS,

VULNERABILIDADES Y RIESGOS .................................................................. 24

6.7. OBJETIVOS GENERALES DE SEGURIDAD PARA LAS REDES DE

TELECOMUNICACIONES ................................................................................. 25

6.8. CALIDAD DE SERVICIO (QOS). ............................................................. 26

6.8.1. PUNTOS DE VISTA DE LOS CRITERIOS DE QOS. ........................ 26

6.9. MÉTRICAS DE CÓDIGO PARA “.NET” ................................................... 28

6.9.1. MEDIDAS DEL SOFTWARE ............................................................. 28

Page 6: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

6

6.9.2. MÉTODOS ANÓNIMOS .................................................................... 29

6.10. IIS DE WINDOWS SERVER ................................................................. 29

6.10.1. DESCRIPCIÓN DEL ROL .............................................................. 29

6.10.2. APLICACIONES PRÁCTICAS ....................................................... 30

6.11. CACTI ................................................................................................... 30

6.12. APACHE JMETER ................................................................................ 32

7. METODOLOGÍA PROPUESTA ..................................................................... 34

8. DESARROLLO DEL PROYECTO .................................................................. 35

9. LEVANTAMIENTO DE INFORMACIÓN ......................................................... 35

9.1. ANÁLISIS ................................................................................................. 38

9.1.1 IDENTIFICACIÓN Y CONTEXTUALIZACIÓN ................................... 38

9.1.2. REQUERIMIENTOS ............................................................................. 38

9.1.3. REQUERIMIENTOS FUNCIONALES ................................................ 38

9.1.4. REQUERIMIENTOS NO FUNCIONALES ......................................... 40

9.1.5. DIAGRAMAS DE CASOS DE USO ................................................... 40

9.1.6. DIAGRAMA DE FLUJO ..................................................................... 43

10. DISEÑO ....................................................................................................... 45

10.1. DISEÑO DE BASE DE DATOS ............................................................ 45

10.2. INTERFAZ (FRONT) ............................................................................. 47

10.2.1. PANTALLA INGRESO USUARIO .................................................. 47

10.2.2. PANTALLA PRINCIPAL USUARIO FINAL ..................................... 47

10.2.3. REPORTAR INCIDENTE ............................................................... 48

10.2.4. GUARDAR Y REPORTAR SOLUCIÓN .......................................... 49

10.2.5. REPORTAR SOLUCIÓN ................................................................ 49

10.2.6. CONSULTAS ................................................................................. 50

10.2.7. EXTRACCIÓN DE INFORMACIÓN................................................ 50

10.3. PRUEBAS Y AJUSTE DE PRUEBAS ................................................... 51

10.4. SEGURIDAD EN EL APLICATIVO BITÁCORA .................................... 53

11. CALIDAD DE SERVICIO ............................................................................. 53

11.1. USABILIDAD ......................................................................................... 53

11.1.1. TIEMPOS DE RESPUESTA ........................................................... 53

Page 7: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

7

11.2. FIABILIDAD .......................................................................................... 56

11.2.1. DISPONIBILIDAD ........................................................................... 56

11.2.2. TOLERANCIA A FALLOS .............................................................. 59

11.3. SEGURIDAD ......................................................................................... 63

11.3.1. ANÁLISIS DE VULNERABILIDADES ................................................. 63

11.3.2. MODELO DE AMENAZAS ............................................................. 66

11.3.2.3. NIVELES DE CONFIANZA ......................................................... 67

12. ANÁLISIS DE TRÁFICO .............................................................................. 69

13. ANÁLISIS MÉTRICAS DE CÓDIGO ........................................................... 71

13.1. ÍNDICE DE MANTENIMIENTO ............................................................. 71

13.2. ACOPLAMIENTO DE CLASES ............................................................ 73

14. RESULTADOS ............................................................................................ 75

14.1. RESULTADOS GENERALES. .............................................................. 75

14.2. ENCUESTA .......................................................................................... 75

CONCLUSIONES .................................................................................................. 77

REFERENCIAS BIBLIOGRÁFICAS ...................................................................... 78

ANEXOS: .............................................................................................................. 81

Anexo 1: Manual de Usuario .............................................................................. 81

Anexo 2: Modelo DREAD .................................................................................. 97

Anexo 3: Configuración JMeter .......................................................................... 98

Anexo 4: Métricas de Código ........................................................................... 101

Page 8: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

8

Lista de tablas

Tabla 1. Descripción de Categoría. Fuente: Autores. ............................................ 37

Tabla 2. Ingreso de Usuario. Fuente: los autores. ................................................. 38

Tabla 3. Registro de Incidencias. Fuente: los autores. .......................................... 39

Tabla 4. Registro de Solución. Fuente: los autores. .............................................. 39

Tabla 5.Consultas. Fuente: los autores. ................................................................ 39

Tabla 6. Exportar Información. Fuente: los autores. .............................................. 40

Tabla 7. Actores. Fuente: los autores. ................................................................... 40

Tabla 8. Ingreso Usuario Al Sistema. Fuente: los autores. ................................... 41

Tabla 9. Registro de Incidencias. Fuente: los autores. .......................................... 41

Tabla 10. Registro de Solución. Fuente: los autores. ............................................ 42

Tabla 11. Consultas. Fuente: los autores. ............................................................. 42

Tabla 12. Exportar Información. Fuente: los autores. ............................................ 43

Tabla 13. Portada. Fuente: Los autores. ............................................................... 67

Tabla 14. Dependencias Externas. Fuente: Los autores. ...................................... 67

Tabla 15. Niveles de Confianza. Fuente: Los autores. .......................................... 67

Tabla 16. Puntos de Entrada. Fuente: Los autores. .............................................. 68

Tabla 17. Activos. Fuente: Los autores. ................................................................ 68

Tabla 18. STRIDE. Fuente: Los autores. .............................................................. 69

Tabla 19. Cálculo de medidas de tendencia central. Fuente: Los autores. ........... 71

Tabla 20. Cálculo de Parámetros de Tabla de Distribución de Frecuencias. Fuente:

Los autores. ........................................................................................................... 71

Tabla 21. Tabla de Distribución de Frecuencias. Fuente: Los autores. ................. 72

Tabla 22. Cálculo de Medidas de Tendencia Central. Fuente: Los autores. ......... 73

Tabla 23. Cálculo de Parámetros de Tabla de Distribución de Frecuencias. Fuente:

Los autores. ........................................................................................................... 73

Tabla 24. Tabla de Distribución de Frecuencias. Fuente: Los autores. ................. 74

Tabla 25. Resultados Tabulados Pruebas. Fuente: Autores ................................. 75

Tabla 26. Resultados Análisis De Tráfico. Fuente: Autores. ................................. 75

Page 9: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

9

Lista de imágenes

Figura 1. Proceso de digitalización y custodia de documentos proyecto Banco

Agrario, Fuente: Los autores. ................................................................................ 11

Figura 2. Ejemplo Modelo de caso de uso. Fuente: Imágenes Prediseñadas de

Windows ................................................................................................................ 19

Figura 3. Diagrama de bloques, fuente: los autores. ............................................. 34

Figura 4. Comparación Número de Casos GLPI vs Correo. Fuente: Autores ....... 35

Figura 5. Diagrama de flujo aplicativo BITACORA. Fuente: Los autores. ............. 44

Figura 6. Modelo Entidad Relación. Fuente: Los autores. ..................................... 45

Figura 7. Ingreso Usuario. Fuente: Los autores. ................................................... 47

Figura 8. Pantalla Principal Usuario Final. Fuente: Los autores. ........................... 48

Figura 9. Reportar Incidente. Fuente: Los autores. ............................................... 48

Figura 10. Guardar y Reportar Solución. Fuente: Los autores. ............................. 49

Figura 11. Reportar Solución. Fuente: Los autores. .............................................. 49

Figura 12. Consultas. Fuente: Los autores............................................................ 50

Figura 13. Extracción de Información. Fuente: Los autores. ................................. 50

Figura 14. Archivo XLS. Fuente: Los autores. ....................................................... 51

Figura 15.Página de autenticación (resultados JMeter). Fuente: Los autores....... 54

Figura 16. Autenticación Usuario (resultados JMeter). Fuente: Los autores. ........ 54

Figura 17. Página principal (resultados JMeter). Fuente: Los autores. ................. 55

Figura 18.Cerrar sesión (resultados JMeter). Fuente: Los autores. ...................... 55

Figura 19. Página de autenticación (resultados JMeter). Fuente: Los autores...... 56

Figura 20. Uso de Memoria. Fuente: Los autores. ................................................ 57

Figura 21. Tráfico. Fuente: Los autores. ............................................................... 58

Figura 22. Uso Disco C. Fuente: Los autores........................................................ 59

Figura 23. Asignación de 1000 hilos JMeter. Fuente: Los autores. ....................... 60

Figura 24. Reporte resumen (Resultado JMeter). Fuente: Los autores. ............... 60

Figura 25. Conexiones establecidas en el servidor (Resultados ProcessExplorer).

Fuente: Los autores. ............................................................................................. 61

Figura 26. Información del sistema (Resultados ProcessExplorer). Fuente: Los

autores. ................................................................................................................. 61

Figura 27. Comportamiento de la CPU (Resultados ProcessExplorer). Fuente: Los

autores. ................................................................................................................. 62

Figura 28. Escaneo Vulnerabilidades del Servidor. . Fuente: NESUS Scan. ........ 66

Figura 29. Histograma y Polígono de Frecuencias. Fuente: Los autores. ............. 72

Figura 30. Histograma y Polígono de Frecuencias. Fuente: Los autores. ............. 74

Page 10: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

10

INTRODUCCIÓN

La empresa THOMAS MTI se dedica al manejo de documentos en la

administración y la seguridad de sus procesos de información. Se enfoca en

servicios de confidencialidad, disponibilidad inmediata e integridad de la

información; en el área de tecnología de la empresa THOMAS MTI se manejan

varios proyectos, para el desarrollo del proyecto de grado se centró en el proyecto

Banco Agrario, la empresa cuenta con la herramienta GLPI (sistema de

seguimiento de incidencias y de solución service desk) para el registro de

incidentes y solicitudes relacionados a la aplicación de Gestión Documental

(SIGDOC) y lo relacionado a soporte nivel I (soporte a equipos y periféricos) y

teniendo en cuenta que de acuerdo a lo pactado con el cliente los incidentes de

alto impacto como indisponibilidad, lentitud, entre otros que afecten el proceso

normal se deben manejar vía telefónica o mediante correo electrónico, se

evidencio la necesidad de cuantificar y realizar los seguimientos correspondientes

a dichos incidentes para el control interno, por lo tanto se realizó el desarrollo de

un aplicativo que permitiera realizar la cuantificación de estos.

Para el desarrollo se plantearon distintas fases que van desde el levantamiento de

información hasta la realización de pruebas y un ajuste de las mismas, por

disposición de la empresa se realiza un manual de usuario el cual se encuentra en

el primer anexo del documento.

En la “BITACORA” (nombre que la empresa sugirió para el aplicativo), se realiza el

registro del inconveniente almacenando la información en una base de datos

creada en un servidor con sistema operativo Windows server 2012, el motor de la

base de datos es SQL server 2012, para la publicación de la aplicación se utilizó el

IIS de Windows server, para garantizar mayor seguridad se utiliza una

autenticación con el usuario de SIGDOC.

Page 11: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

11

1. GENERALIDADES

1.1. DESCRIPCIÓN DE LA EMPRESA

Thomas MTI es una empresa del grupo Thomas Greg & Sons, creada en el 2005

para prestar servicios de seguridad, manejo y administración de procesos de

información; la empresa Thomas MTI se encarga de la prestación de los servicios

de gestión documental para diferentes bancos y empresas ofreciendo la

plataforma tecnológica SIGDOC.

1.2. PRINCIPALES INCIDENTES DE ALTO IMPACTO EN EL

PROYECTO

Antes de definir los incidentes de alto impacto que se presentan en el proyecto

Banco Agrario, se muestra a continuación un diagrama del proceso general que se

realiza para la digitalización y custodia de los documentos.

Figura 1. Proceso de digitalización y custodia de documentos proyecto Banco Agrario, Fuente: Los autores.

Teniendo en cuenta que el activo principal en el proyecto Banco Agrario son las

imágenes, los principales incidentes que se presentan o se pueden presentar son

los relacionados con la visualización de estas, por ejemplo lentitud,

indisponibilidad, entre otros.

Page 12: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

12

2. PLANTEAMIENTO DEL PROBLEMA

A nivel empresarial se presentan diferentes incidentes que afectan de manera más

critica los procesos diarios, generando inconformidades por parte del cliente final

que utiliza el servicio que ofrece la empresa, por lo tanto nace la interrogante

¿Cómo realizar el control interno y seguimientos de los incidentes de manera

eficiente y rápida, que afectan los procesos diarios en un proyecto?

En aras de dar respuesta a esta pregunta y tomando como referencia el proyecto

Banco Agrario de la empresa Thomas MTI, focalizado en el área de tecnología, se

cuenta con la herramienta GLPI para la gestión y reporte de incidencias

relacionadas a la aplicación de Gestión Documental (SIGDOC) y lo concerniente a

soporte nivel I de infraestructura (Soporte equipos, dispositivos, periféricos, etc.), y

debido a lo pactado con el cliente donde los incidentes de mayor impacto que

afectan el proceso diario se deben manejar mediante correo electrónico o vía

telefónica, se evidenció la necesidad de controlar y realizar el seguimiento de

estos incidentes de manera interna para cuantificar lo que genera efectos

negativos en el flujo normal del proceso.

2.1. JUSTIFICACIÓN

La importancia del desarrollo de la aplicación radica en poder llevar un control

interno y seguimiento de los incidentes que se presentan en el proceso normal del

proyecto Banco Agrario de la empresa Thomas MTI, de tal manera que estos se

puedan cuantificar y escalar para su solución definitiva, teniendo una mejor

gestión de incidentes, gestión de problemas (incidentes recurrentes), y en caso

que se requiera una gestión de cambios.

La necesidad que tienen todas las empresas, independiente el producto o servicio

que ofrecen, es de mantener una alta calidad, para no tener afectaciones de alto

impacto en sus procesos, por tal razón las aplicaciones o plataformas web juegan

un papel fundamental debido a la reducción de tiempos y simplificación de tareas.

2.2. IMPACTO ESPERADO

Se esperan tener impactos positivos para la empresa con la implementación de la

aplicación, porque con la ayuda de éste se espera identificar los incidentes

recurrentes que afectan el proceso y de acuerdo a esto analizar si se pueden

considerar problemas, para realizar el escalamiento correspondiente para su

solución con el fin de mitigar la afectación o indisponibilidad que se pueda

presentar en el proceso diario, así mismo se desea cuantificar la mejora en el

servicio que pueda tener la identificación y solución de incidentes y/o problemas

una vez se hayan solucionado.

Page 13: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

13

3. OBJETIVOS

3.1. OBJETIVO GENERAL

Desarrollar un aplicativo para el control y seguimiento de incidentes para el

proyecto Banco Agrario de la empresa THOMAS MTI.

3.2. OBJETIVOS ESPECÍFICOS

Realizar el levantamiento de información para conocer qué afecta al

proceso, definir categorías y así poder estandarizar y cuantificar las

deficiencias actuales en el proyecto Banco Agrario.

Diseñar e implementar una plataforma que contenga FRONT, base de

datos, soporte de fallas y una estrategia que permita el registro de datos,

registro de fallas y seguridad de la aplicación.

Evaluar la plataforma desarrollada a nivel de parámetros de Calidad de

Servicio (QoS) y seguridad.

Page 14: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

14

4. MARCO CONCEPTUAL

Amenaza: Cosa o persona que constituye una posible causa de riesgo o

perjuicio para alguien o algo.

Aplicación: Programa o conjunto de programas informáticos que realizan

un trabajo específico, diseñado para el beneficio del usuario final.

Categoría: Clase que resulta de una clasificación de personas o cosas

según un criterio o jerarquía.

Cuantificación: Cantidad que resulta de cuantificar una cosa.

Disponibilidad: Una vez que la información ha sido capturada en un

sistema de cómputo, debe ser almacenada de manera segura y estar

disponible para los usuarios cuando la necesiten.

IIS (Internet Information Services): Conjunto de servicios para servidores

usando Microsoft Windows. Es especialmente usado en servidores web.

Incidente: Hecho que se puede presentar en cualquier momento y afecta

de manera considerable el proceso normal del proyecto.

Interfaz: Se denomina así a todo aquel medio físico que conecta un

dispositivo periférico con la computadora; también se le conoce así a todo

el software que comunica al usuario con la misma.

Login: Nombre dado al momento de autentificación al ingresar a un servicio

o sistema.

Query: Cadena de consulta es un término informático que se utiliza para

hacer referencia a una interacción con una base de datos.

Seguridad (Informática): Es el área relacionada con la informática y la

telemática que se enfoca en la protección de la infraestructura

computacional y todo lo relacionado con esta y, especialmente, la

información contenida en un computador o circulante a través de las redes

de computadoras.

Page 15: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

15

SQL (Structured Query Language): Es un lenguaje de programación

estándar e interactiva para la obtención de información desde una base de

datos y para actualizarla.

Usuario: Son las personas que interactuarán con el sistema reportando los

incidentes que se les hayan presentado.

Vulnerabilidad: es una debilidad del sistema informático que puede ser

utilizada para causar un daño. Las debilidades pueden aparecer en

cualquiera de los elementos de una computadora, tanto en el hardware, el

sistema operativo, cómo en el software.

W3wp: es un proceso asociado al Pool de conexiones en el ISS.

Page 16: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

16

5. ESTADO DEL ARTE

A continuación se presentan proyectos de los cuales se tuvieron en cuenta para la

revisión y evaluación de ciertos parámetros como la Calidad de Servicio, modelo

entidad-relación, siendo parte importante del proyecto a desarrollar.

Platform of Electronic Marketing for Development of ICTs Application [1]:

Proyecto de diseño de una plataforma de marketing electrónico llamada

"MiMercado", la plataforma es dirigida a la comunidad de la localidad de

Ciudad Bolívar en Bogotá, Colombia. Por medio de la plataforma se permite

la oferta de productos y servicios a los residentes locales y tiene como

objetivo mejorar la competitividad y el desarrollo económico de las

empresas locales; especialmente pequeñas y medianas empresas,

permitiendo en el proceso la creación de nuevas oportunidades de mercado

y objetivos comerciales. Para el desarrollo del proyecto se realizó el diseño

de la plataforma con PHP y MySQL, posteriormente se realiza un estudio

del impacto que podrá generar el aplicativo en la sociedad.

En primera instancia logra ser de gran interés el proyecto desarrollado

(“MiMercado”) debido a su locación al compartir ciertas condiciones legales

y normativas de la Ciudad de Bogotá D.C. en la que se desarrolla el

proyecto “BITACORA”, así mismo las herramientas de medición logran ser

de gran ayuda debido al interés de visibilizar el impacto que se logra dar en

la empresa y en el grupo social que hace uso de la información de la

empresa.

Requirements Change Management Based on Object-Oriented Software

Engineering with Unified Modeling Language [2]: Proyecto en el cual se

realiza un estudio para proponer un cambio de requisitos en el modelo de

gestión de metodología orientada a objetos con UML. Para demostrar el

modelo propuesto se eligen modelos comerciales del estudio de caso

seleccionado “Mission Hospital Phuket” como requisitos del usuario para el

sistema del prototipo. Se evalúan dos aspectos del desempeño del sistema

propuesto:

Se rescata el papel que se le otorga a los usuarios del programa al ser la

razón por la cual se da la creación de estos proyectos, apoyado en el

sistema UML encargado del modelado de amenazas y diagrama de casos

de uso, encontrando cierta similitud al proyecto que se desarrolla.

Page 17: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

17

Engineering Privacy for Big Data Apps with the Unified Modeling Language

[3]: El proyecto describe las extensiones de privacidad propuestas a UML

para ayudar a los ingenieros de software a visualizar rápidamente la

privacidad, requisitos, y diseño de privacidad en aplicaciones de Big Data.

Para cumplir con los requisitos legales y las mejores prácticas, Big Data las

aplicaciones aplican los principios de Privacidad por Diseño y utilizar

servicios de privacidad, hablando de la anonimización, seudonimización,

seguridad, aviso de uso y consentimiento para uso. Se extiende UML con

iconos de cinta que representan necesarios servicios de privacidad de Big

Data. Dichas extensiones de UML ayudan a los ingenieros de software a

modelar visualmente y rápidamente los requisitos de privacidad en el

análisis fase. Rescatando la importancia de la privacidad de la información

en el que se resalta la importancia de un programa que cumpla con

condiciones de confiabilidad, privacidad y vulnerabilidad.

The Application of Unified Modeling Language in the Performance

Evaluation of R&D Staff [4]: Se toma como ejemplo el diseño de un sistema

de evaluación de desempeño para el personal de R&D Staff de un instituto

biológico. Se utiliza el diagrama de casos de uso, paquetes, clases, de

despliegue, secuencia, y el diagrama de actividades en el análisis y diseño

para la programación orientada a objetos para simplificar el análisis y

modelado del sistema porque minimiza la diferencia entre lenguajes de

modelado.

La metodología que se desarrolla para la creación del proyecto es de gran

interés al contar con herramientas como diagramas de caso de uso y

modelado de amenazas facilitando de esta forma la identificación de

problemas que pueda tener la plataforma

Desarrollo de un Sistema de Información Para la Empresa Datecsa S.A. [5]:

Se realiza un estudio, implementación y análisis de un sistema para

administra la información de la empresa Colombiana Datecsa S.A. Se tiene

en cuenta los requerimientos de los usuarios del sistema, se selecciona la

opción tecnológica más viable para su implementación. Por último se

realiza un análisis de seguridad del sistema desarrollado. Aportando con

esto la importancia que se da por los requerimientos de los usuarios siendo

esto un tipo de diagnóstico de lo que es necesario implementar en términos

de software y sistemas de comunicación, y por último el elemento más

importante para el desarrollo de la BITACORA como es el análisis de

seguridad que se puede ofrecer y brindar por medio de este sistema.

Page 18: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

18

6. MARCO TEÓRICO

6.1. DESARROLLO DE SOFTWARE SEGURO

La comunidad WeLiveSecurity menciona algunos consejos para el diseño de un

software seguro:

1. Delinear mecanismos de autenticación difíciles de eludir

La autenticación es el proceso por el cual se permite acreditar la identidad del

usuario y además asignarle un identificador único. Uno de los pilares en la

construcción de aplicaciones seguras es el desarrollo de métodos de

autenticación centralizados que cubran cada posible camino de ingreso.

2. Autorizar, además de autenticar

Con la autenticación se puede designar si un usuario que es previamente

autenticado puede o no realizar acciones para cambiar el estado del sistema. Los

procesos de autorización en los usuarios autenticados se deben pensar desde el

diseño y así evitar sesiones que pueden caer en personas no autorizadas.

3. Separar datos de instrucciones de control

Es importante sobre todo cuando se trabaja con código que es capaz de

modificarse a sí mismo, o con lenguajes que compilan su código en tiempo de

ejecución, por ejemplo JavaScript, donde las instrucciones también se reciben

como datos. Por ende es trascendental sanear las entradas que recibe el sistema

evitando que posibles atacantes puedan manipular el flujo de ejecución

ingresando datos maliciosos.

4. Utilizar criptografía correctamente

Es necesario comprender la criptografía que se aplica al sistema en desarrollo y

así entender los elementos y las características que se buscan proteger, contra las

formas de ataque.

5. Identificar datos sensibles y cómo se los debería gestionar

Es importante proteger toda la información, sin embargo es más importante tener

bien claro qué es lo que realmente se debe cuidad. Es fundamental para el

desarrollo de un sistema definir los datos cuya protección resulta fundamental,

debido a que a partir de la definición se puede esbozar los procesos para el

diseño de la seguridad desde el inicio del ciclo de desarrollo.

Page 19: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

19

6. Considerar cambios futuros en objetos y actores

Cuando se empieza con el diseño se debe considerar los contantes cambios de

las propiedades del sistema. Factores a considerar tales como son el crecimiento

de la población de usuarios del sistema, migraciones que puedan afectar al

sistema, además de las vulnerabilidades futuras. Los procedimientos de

actualización se deben implementar de manera segura y además se deben

diseñar con visión de meses, años y en ocasiones décadas [6].

6.2. DIAGRAMA DE CASOS DE USO

La Universidad de Congreso de Mendoza Argentina, define los diagramas de

casos de uso como la forma de documentar el comportamiento deseado del

sistema que se quiere desarrollar, se comunica el comportamiento, se puede

identificar quién y qué interactúa con el sistema, se puede describir lo que el

sistema debería hacer para dichos actores.

Un diagrama es una manera de verificar que el sistema haya capturado todos los

requerimientos necesarios, además de que permite planificar las acciones del

sistema.

Brindan un contexto para los requerimientos además de que son fáciles de

entender y reflejan por qué es necesario el sistema definiendo el caso de uso

(para qué es usado el sistema) y el actor (quién o qué desea interactuar con el

sistema) [7].

En la figura 2 se observa un ejemplo de un modelo de caso.

Figura 2. Ejemplo Modelo de caso de uso. Fuente: Imágenes Prediseñadas de Windows

Page 20: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

20

6.3. MODELO DE AMENAZAS

Según la organización OWASP (Open Web Application Security Project) el modelo

de amenazas es la representación estructurada de toda la información que afecta

la seguridad de una aplicación. En pocas palabras es la perspectiva de la

aplicación desde el punto de la seguridad.

Es un proceso para capturar, organizar y analizar toda la información. Permite

tomar decisiones sobre los riesgos de seguridad en las aplicaciones. Con esto se

puede realizar una lista priorizada para las mejoras de seguridad en los requisitos,

diseño e implementación de las aplicaciones.

El modelado de amenazas es un proceso que se utiliza para optimizar la

seguridad en redes, aplicaciones, internet mediante la identificación de objetivos y

vulnerabilidades, definiendo posteriormente las medidas para contrarrestar o

mitigar los efectos de esas amenazas en el sistema [8].

6.3.1. PASOS GENÉRICOS

OWASP presenta una metodología genérica para el modelado de amenazas junto

a sus significados:

Alcance de Evaluación: Inicialmente se debe identificar los activos

tangibles, como bases de datos o archivos sensibles y/o confidenciales. Se

debe realizar la valoración de las capacidades proporcionadas por la

aplicación, adicional se deben tener en cuenta cosas menos concretas,

tales como reputación y el renombre comercial generalmente esto es más

difícil de medir, pero a menudo son considerados como los más críticos.

Identificar agentes de amenaza y posibles ataques: Se debe hacer un

análisis de los posibles atacantes que puede tener la aplicación. Se deben

tener en cuenta elementos internos y externos, errores involuntarios y

ataques maliciosos.

Entender contramedidas existentes: El modelo debe incluir las

contramedidas existentes.

Identificar las vulnerabilidades explotables: Una vez que se tiene una

mejor comprensión de la seguridad en la aplicación, se analizaran las

vulnerabilidades que están relacionadas a nuevos ataques y las

consecuencias negativas que se pueden identificar.

Identificar riesgos prioritarios: Es fundamental en el modelado de

amenazas priorizar los riesgos que tienen una mayor afectación con el fin

de determinar la probabilidad y el nivel de gravedad en el uso de la

aplicación.

Page 21: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

21

Identificar las contramedidas para reducir la amenaza: Por último se

debe identificar las contramedidas para reducir el riesgo a niveles

aceptables. [9]

6.4. SEGURIDAD INFORMÁTICA

El uso de internet en las empresas actualmente es un requisito para su

funcionamiento, por lo cual su información se encuentra expuesta a muchos

peligros, por esto la empresa se ve obligada a la implementación de aplicativos

que le permitan controlar el acceso a su red y por ende mantener a salvo la

información de infiltrados más aún cuando se implementan servicios como el

teletrabajo.

La Universidad Internacional de Valencia España, define la seguridad informática

como el proceso de prevenir y detectar el uso no autorizado o indebido de un

sistema informático, esto implica el proceso de proteger contra intrusos el uso de

los recursos informáticos con intenciones maliciosas evitando también el acceso

accidental de los mismos.

Por otra parte, la seguridad informática es el término más genérico de la seguridad

de la información y contiene medidas de seguridad como programas de software

antivirus, firewall y medidas que dependen del usuario final como la activación y

desactivación de funciones en el software y cuidar el uso adecuado de los equipos

terminales, recursos de red e internet.

La seguridad informática es muy importante para las empresas debido a que

ayuda a prevenir el robo de información sensible como contraseñas o incluso

cuentas bancarias [10].

6.4.1. OBJETIVOS DE LA SEGURIDAD INFORMÁTICA.

Los sistemas de información incluyen todos los datos que son de vital importancia

para una compañía y también en el material y los recursos de software que

permiten a una compañía almacenar y hacer circular estos datos. Los sistemas de

información son fundamentales para las compañías y por dicha razón deben ser

protegidos.

Generalmente, la seguridad informática consiste en garantizar que el material y los

recursos de software de una organización se usen únicamente para los propósitos

para los que fueron creados y dentro del marco previsto.

CCM, una comunidad informática española sugiere que la seguridad informática

es posible resumirla con cinco objetivos primordiales:

Page 22: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

22

“Integridad, que garantiza que los datos sean los que se supone que son;

Confidencialidad, que asegura que solo los individuos autorizados tengan acceso

a los recursos que se intercambian; Disponibilidad, que garantiza el correcto

funcionamiento de los sistemas de información; Evitar el rechazo, que garantiza de

que no pueda negar una operación realizada; Autenticación, que asegura que solo

los individuos autorizados tengan acceso a los recursos” [11].

Confidencialidad: La confidencialidad consiste en asegurar que sólo los individuos autorizados

tengan acceso a los recursos que se intercambian [12].

Integridad: La información no se puede falsificar. Los datos recibidos o recuperados son los

mismos que fueron enviados o almacenados. [13]

Disponibilidad: Garantizar que los usuarios autorizados tengan acceso a la información y a los

recursos relacionados con la misma, toda vez que lo requiera [14].

No repudio: Garantiza que el remitente del mensaje no puede negar posteriormente haber

enviado el mensaje y así mismo el receptor tampoco puede negar la recepción del

mensaje.

Incluye el no repudio de origen, prueba de que el mensaje fue enviado por el

emisor correspondiente, y no repudio de recepción, prueba de que el mensaje fue

recibido por el destinatario [15].

Autenticación: La autenticación consiste en la confirmación o corroboración de la identidad de un

usuario; es decir, la garantía para cada una de las partes de que su interlocutor es

realmente quien dice ser. Un control de acceso permite (por ejemplo gracias a una

contraseña codificada) garantizar el acceso a recursos únicamente a las personas

autorizadas [16].

Page 23: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

23

6.4.2. MEDIDAS PARA LA SEGURIDAD INFORMÁTICA.

La Universidad Internacional de Valencia menciona algunas prácticas o medidas

para el mantenimiento de la seguridad informática y la prevención de intrusiones:

Asegurar la instalación de software legalmente adquirido: Por lo

general el software legal está libre de troyanos y gusanos.

Suites Antivirus: Con las reglas de configuración y del sistema

adecuadamente definidos.

Hardware y Software Corta-Fuegos: Los firewalls ayudan con el bloqueo

de usuarios no autorizados que intentan acceder al computador o a la red.

Uso de contraseñas grandes y complejas: Las contraseñas deben

constar de varios caracteres especiales, números y letras; esto ayuda

bastante a evitar que descifren las claves.

Ingeniería Social: Actualmente a través de las redes sociales los datos

personales están muy expuestos para que los ciber-delincuentes los

puedan obtener.

Criptografía y encriptación: La criptografía es muy importante en una red

debido a que con ésta se puede mantener la información sensible, segura y

secreta [17].

6.5. SEGURIDAD DE LAS APLICACIONES Y SOFTWARE

Actualmente todos los sistemas deben incorporar cuestiones de seguridad para la

defensa de un posible ataque malicioso. Los desarrolladores ya no deben centrar

su atención en los usuarios sino también en los posibles atacantes que quieran

extraer la información, lo cual ha motivado a hacer cambios relevantes en el

proceso de diseño y desarrollo de software para incorporar la seguridad dentro de

los requerimientos del sistema [18].

Page 24: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

24

6.6. FUNDAMENTOS DE LA PROTECCIÓN: AMENAZAS,

VULNERABILIDADES Y RIESGOS

Para la definición de seguridad es importante tener claro cuáles son los elementos

que se deben proteger, las amenazas que puede tener, cada una de las

vulnerabilidades que tiene cada elemento y el riesgo general que corren dichos

elementos respecto a las amenazas.

Para las TIC (Tecnologías de la Información y Comunicación) es necesario

proteger elementos como:

Servicios de comunicación e informática.

Información y datos, incluyendo el software y los datos relacionados con los

servicios de seguridad.

Equipos e instalaciones.

Por ejemplo la X.800 (Recomendaciones de características básicas de conexión

de computadoras según la Unión Internacional de Telecomunicaciones ‘ITU’)

menciona que una amenaza de seguridad es una posible violación de seguridad

cuando hay:

Divulgación no autorizada de información.

Destrucción o modificación no autorizada de los datos, equipos u otros

recursos.

Robo, eliminación o pérdida de información o demás recursos.

Interrupción o denegación de servicios.

Usurpación de identidad o simulación de una entidad autorizada.

La ITU proporciona algunas definiciones importantes, las cuales se mencionan a

continuación.

Una amenaza puede ser accidental o intencional además de activas o pasivas.

“Una amenaza accidental es aquélla no premeditada, como un disfuncionamiento

o fallo físico de un sistema o del software. Una amenaza intencionada es aquélla

que una persona realiza como un acto deliberado. (Cuando la amenaza es

intencionada se denomina ataque.)” [19].

Las amenazas activas ocasionan un cambio de estado, es decir la alteración de

datos o incluso la destrucción de equipos físicos. Por otro lado una amenaza

pasiva no ocasiona ningún cambio de estado, como ejemplo tenemos las

escuchas clandestinas. Las vulnerabilidades de seguridad pueden ser defectos o

debilidades que son potencialmente explotables para la violación de un sistema o

la información que contiene. “Hay cuatro tipos de vulnerabilidades: vulnerabilidad

por forma de amenaza que resulta de la dificultad de prever posibles amenazas

Page 25: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

25

futuras; vulnerabilidad por diseño y especificación, producida por errores o

descuidos en el diseño de un sistema o del protocolo, que los hacen

inherentemente vulnerables; vulnerabilidad por implementación que se produce

como resultado de errores en la implementación del sistema o el protocolo; y

vulnerabilidad por funcionamiento y configuración que resulta de la utilización

errónea de opciones en las implementaciones o de políticas insuficientes de

instalación (por ejemplo, no se impone la utilización de la criptación en una red

WiFi)” [19].

El riesgo de seguridad se define como: “la medida de los efectos negativos que

pueden resultar de explotarse una vulnerabilidad de seguridad, es decir, si se

ejecuta una amenaza. Si bien nunca puede eliminarse el riesgo, uno de los

objetivos de la seguridad es reducirlos a un nivel aceptable. Para ello es necesario

entender las amenazas y vulnerabilidades para aplicar las contramedidas

adecuadas (es decir, los servicios y mecanismos de seguridad)” [19].

“Las amenazas y los agentes que originan las vulnerabilidades pueden cambiar,

pero siempre habrá vulnerabilidades de seguridad durante toda la vida del sistema

o el protocolo, a menos que se adopten las medidas necesarias para solventarlas.

Si se trata de protocolos normalizados, los riesgos de seguridad relativos al

protocolo pueden ser bastante importantes y de escala global, por lo que es

importante entender e identificar estas vulnerabilidades y adoptar las medidas

necesarias para contrarrestarlas” [19].

6.6.1. OBJETIVOS GENERALES DE SEGURIDAD PARA LAS REDES DE

TELECOMUNICACIONES

Es de vital importancia garantizar la seguridad en la red, para esto la ITU

menciona que principalmente lo que se debe lograr son los requisitos de

seguridad, más que la forma de aplicación.

Los objetivos de seguridad de las redes de telecomunicaciones son:

a. Únicamente los usuarios autorizados deben poder acceder y utilizar las

redes de telecomunicaciones.

b. Los usuarios autorizados han de poder acceder a los elementos

autorizados y utilizarlos.

c. Las redes de telecomunicaciones deben proporcionar privacidad al nivel

fijado por las políticas de seguridad en la red.

d. Todos los usuarios deben ser responsables únicamente y exclusivamente

de sus acciones en las redes de telecomunicaciones.

e. Para garantizar la disponibilidad, las redes de telecomunicaciones deben

estar protegidas contra accesos u operaciones no solicitadas.

Page 26: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

26

f. Debe ser posible extraer información relacionada con la seguridad de las

redes de telecomunicaciones (pero sólo por parte de los usuarios

autorizados).

g. Si se detectan violaciones de seguridad, deberán tratarse de manera

controlada de conformidad con un plan predefinido para minimizar los

posibles daños.

h. Cuando se detecte una violación de seguridad, debe ser posible restaurar

los niveles de seguridad normales.

i. La arquitectura de seguridad de las redes de telecomunicaciones debe

proporcionar cierta flexibilidad para soportar diversas políticas de seguridad,

por ejemplo, una aplicación más o menos estricta de los mecanismos de

seguridad [19].

Al implementar dichas medidas de seguridad permite lograr los objetivos de la

seguridad informática: Confidencialidad, integridad, disponibilidad, no repudio y

autenticación.

6.7. CALIDAD DE SERVICIO (QOS).

La Unión Internacional de Telecomunicaciones define la calidad de servicio como

la totalidad de características de un servicio de telecomunicaciones que

determinan su capacidad de satisfacer las necesidades explícitas e implícitas del

usuario del servicio.

6.7.1. PUNTOS DE VISTA DE LOS CRITERIOS DE QOS.

La ITU menciona que la gestión de la QoS resulta más simple si se clasifica según

los diferentes puntos de vista abarcando todos sus aspectos, desde la perspectiva

del proveedor hasta la del usuario o cliente.

6.7.1.1. Necesidades Qos Del Cliente.

Estas necesidades definen el nivel de calidad que se exige en un determinado

servicio, se pueden expresar con un lenguaje común. Al cliente o usuario no le

interesa saber cómo está constituida la red ni el diseño interno que tiene, así que

solo le importa la calidad total del servicio de origen a fin, de extremo a extremo.

La ITU en su apartado G.1000 menciona que la calidad de servicio desde el

ámbito del cliente se expresa mediante parámetros que:

“Se centran en los efectos percibidos por el usuario, más que en sus

causas dentro de la red.

Su definición no depende de las hipótesis del diseño interno de la red.

Tienen en cuenta todos los aspectos del servicio desde el punto de vista del

cliente.

Page 27: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

27

El proveedor de servicio puede garantizárselos al cliente y hasta incluirlos

en el contrato.

Se describen en términos independientes de la red e instauran un lenguaje

común, que comprende tanto el usuario como el proveedor de servicio” [20].

6.7.1.2. Qos Ofrecida Por El Proveedor De Servicio.

Es la calidad de servicio que el proveedor espera entregar al cliente y se expresa

en valores atribuidos a los parámetros. “Esta forma de calidad de servicio es

especialmente útil para la planificación y para los acuerdos de nivel de servicio.

Cada servicio tendrá su propio conjunto de parámetros QoS (como en las clases

de QoS de la Rec. UIT-T Y.1540 para los servicios IP). El proveedor de servicio

puede expresar la QoS ofrecida en lenguaje corriente para el cliente, y en lenguaje

técnico para su uso en la industria” [20].

6.7.1.3. Qos Conseguida o Entregada Por El Proveedor.

La calidad de servicio que consigue el proveedor de servicio es una declaración

del nivel real alcanzado y entregado al usuario o cliente, expresándose en valores

asignados a parámetros y deben ser idénticos a los especificados para la QoS

ofrecida, de tal manera que se pueda hacer una comparación para evaluar la

calidad de funcionamiento lograda.

“El proveedor de servicio puede, por ejemplo, declarar que la disponibilidad

obtenida en el trimestre anterior fue de 99,95% con cinco interrupciones de

servicio, una de las cuales duró 65 minutos. La industria, y a veces los

reguladores, publican la QoS conseguida o entregada para información de los

clientes” [20].

6.7.1.4. Qos Percibida Por El Cliente.

La calidad de servicio que percibe el cliente o usuario es la declaración en la que

expresa el nivel de calidad que ellos piensan que experimentaron y generalmente

se expresa en grado de satisfacción evitando los términos técnicos. “Esta calidad

de servicio se mide con encuestas a los clientes y sus comentarios sobre los

niveles de servicio, y puede ser utilizada por el proveedor de servicio para

determinar la satisfacción del cliente en cuanto a la calidad de servicio. Así, por

ejemplo, un cliente puede decir que durante una cantidad inaceptable de

ocasiones tuvo dificultad para realizar una llamada a través de la red y otorgar una

calificación de 2 en una escala de 5, donde 5 corresponde a un servicio excelente.

Idealmente, debería haber una correspondencia uno a uno entre la QoS entregada

y la percibida” [20].

Page 28: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

28

6.8. MÉTRICAS DE CÓDIGO PARA “.NET”

Según Microsoft las métricas de código son un conjunto de medidas sobre el

software que proporciona al programador una mejor visión del código que se está

desarrollando. Con dichas métricas de código se puede entender qué tipos y

métodos se deben volver a hacer o realizar pruebas más rigurosas. Se pueden

identificar los riesgos potenciales, entender el estado actual de un proyecto y

realizar un seguimiento durante el desarrollo del software [21].

6.8.1. MEDIDAS DEL SOFTWARE

Las métricas de código que calcula Visual Studio junto con su definición según

Windows definidas en su página oficial son:

Índice de mantenimiento: representa la facilidad relativa del

mantenimiento de un código al calcular un valor de índice entre 0 y 100. Al

obtener un valor alto se interpreta como una mayor facilidad de

mantenimiento. Se puede clasificar por colores, un color verde se encuentra

entre 20 y 100 e indica que el mantenimiento del código es bueno. Una

clasificación entre 10 y 19 es de color amarilla e indica que el

mantenimiento de dicho código es moderado, una clasificación roja se

encuentra entre 0 y 9 indicando que el mantenimiento del código es pobre.

Complejidad ciclomática: mide la complejidad estructural del código.

Calcula el número de rutas de acceso del código de diferentes partes del

flujo del programa. Un flujo de control complejo requerirá muchas más

pruebas para obtener una buena cobertura de código y además será más

difícil de mantener.

Profundidad de herencia: indica el número de definiciones de clase que

se extienden a la raíz de la jerarquía de clases. Entre más profunda es la

jerarquía, más difícil puede ser entender dónde se definen y se vuelven a

definir determinados métodos y campos.

Acoplamiento de clases: por medio de parámetros, variables locales, tipos

de valores devueltos, llamadas a métodos, instancias genéricas o plantillas

mide el acoplamiento de clases únicas. Un buen diseño de software indica

que los tipos y métodos deberán tener alta cohesión y bajo acoplamiento. Al

tener un acoplamiento alto sugiere un diseño difícil de reutilizar y mantener

al tener interdependencia entre otros tipos.

Líneas de código: muestra el número aproximado de líneas de código. Se

basa en el recuento de líneas de código IL y por ende no representa

exactamente el número de líneas que contiene el archivo del código fuente.

Un número alto en el recuento se puede interpretar que el método hace o

intenta hacer demasiado trabajo y se sugiere dividir, además también

puede indicar que el tipo o método podría ser difícil de mantener [21].

Page 29: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

29

6.8.2. MÉTODOS ANÓNIMOS

Se define como métodos que no tienen ningún nombre. Se utilizan con más

frecuencia para pasar un bloque de código como parámetro delegado. “Los

resultados de las métricas para un método anónimo declarado en un miembro, ya

sea como método o como descriptor de acceso, se asocian al miembro que

declara el método. No se asocian con el miembro que llama al método” [21].

6.9. IIS DE WINDOWS SERVER

IIS (Internet Information Server) es un conjunto de servicios para servidores

usando Microsoft Windows. Se usa especialmente en servidores web. Es una

plataforma unificada que integra IIS, ASP.NET, Windows Communication

Foundation y Windows SharePoint Services. Permite compartir información en

internet, una intranet o en una extranet [22].

6.9.1. DESCRIPCIÓN DEL ROL

El rol Servidor Web (IIS) en Windows Server 2012 proporciona una plataforma

segura, fácil de administrar, modular y extensible donde hospedar sitios web,

servicios y aplicaciones de manera confiable. “Con IIS 8, puede compartir

información con usuarios en Internet, en una intranet o en una extranet.IIS 8 es

una plataforma web unificada que integra IIS, ASP.NET, servicios de FTP, PHP y

Windows Communication Foundation (WCF)” [22].

Windows proporciona algunas ventajas al usar IIS 8, fueron extraídas de su página

oficial:

La seguridad web se refuerza gracias a una superficie reducida de servidor

y al aislamiento automático de aplicaciones.

Podrá implementar y ejecutar aplicaciones web de ASP.NET, ASP clásico y

PHP en el mismo servidor de forma sencilla.

Se logra el aislamiento de aplicaciones al proporcionar a los procesos de

trabajo una identidad única y una configuración en espacio aislado de

manera predeterminada, lo que reduce aún más los riesgos de seguridad.

Podrá agregar y eliminar componentes IIS integrados e incluso

reemplazarlos fácilmente por módulos personalizados que se adapten a las

necesidades del cliente.

Aumenta la velocidad del sitio web mediante el almacenamiento en caché

dinámico integrado y la compresión mejorada.

Page 30: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

30

6.9.2. APLICACIONES PRÁCTICAS

El rol de Servidor Web se puede usar para instalar y administrar varios sitios web,

aplicaciones web o sitios FTP. Algunas características se mencionan a

continuación:

Use el Administrador de IIS para configurar características de IIS y

administrar sus sitios web.

Use el Protocolo de transferencia de archivos (FTP) para permitir que los

propietarios de sitios web carguen y descarguen archivos.

Use el aislamiento de sitios web para protegerse contra la interferencia de

un sitio web con otros sitios en el servidor.

Configure aplicaciones web que están escritas con varias tecnologías,

como ASP clásico, ASP.NET y PHP.

Use Windows PowerShell para automatizar la administración de la mayor

parte de las tareas de administración del servidor web.

Configure varios servidores web en una granja de servidores que puede

administrar mediante IIS.

Aproveche al máximo el hardware NUMA y obtenga un rendimiento óptimo

del servidor con NUMA habilitado.

6.10. CACTI

La información sobre éste software y cada una de las características y

aplicaciones fue extraída de su página web oficial y se citan textualmente a

continuación:

“Cacti es una interfaz completa para RRDTool (Round Robin Database Tool),

almacena toda la información necesaria para crear gráficos y llenarlos con datos

en una base de datos MySQL. La interfaz está completamente dirigida por

PHP. Además de ser capaz de mantener gráficos, fuentes de datos y archivos

Round Robin en una base de datos, Cacti maneja la recolección de

datos. También hay soporte SNMP (Simple Network Management Protocol) para

aquellos que se utilizan para crear gráficos de tráfico con MRTG (Multi Router

Traffic Grapher)” [21].

“Fuentes de datos: Para manejar la recopilación de datos, puede

alimentar las rutas a cualquier script/comando externo junto con cualquier

información que el usuario necesite "completar", cacti luego reunirá estos

datos en un cron-job y poblará una base de datos MySQL / los archivos

round robin.

Page 31: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

31

También se pueden crear orígenes de datos, que corresponden a datos

reales en el gráfico. Por ejemplo, si un usuario quisiera graficar los tiempos

de ping a un host, podría crear una fuente de datos utilizando un script que

haga ping a un host y devuelva su valor en milisegundos. Después de

definir las opciones para RRDTool, como la forma de almacenar los datos,

podrá definir cualquier información adicional que la fuente de entrada de

datos requiera, como un host para hacer ping en este caso. Una vez que se

crea una fuente de datos, se mantiene automáticamente en intervalos de 5

minutos.

Gráficos: Una vez que se definen una o más fuentes de datos, se puede

crear un gráfico RRDTool utilizando los datos. Cacti le permite crear casi

cualquier gráfico de herramienta RRD imaginable usando todos los tipos de

gráficos y funciones de consolidación RRDTool estándar. Un área de

selección de color y una función de relleno de texto automático también

ayudan en la creación de gráficos para facilitar el proceso.

No solo puede crear gráficos basados en RRDTool en cacti, sino que hay

muchas maneras de mostrarlos. Junto con una "vista de lista" estándar y un

"modo de vista previa", que se asemeja a la interfaz RRDTool 14all, hay

una "vista de árbol", que le permite colocar gráficos en un árbol jerárquico

para fines de organización.

Administración de usuarios: Debido a las muchas funciones de cacti, una

herramienta de administración basada en el usuario está integrada para

que pueda agregar usuarios y otorgarles derechos a ciertas áreas de

cacti. Esto permitiría a alguien crear algunos usuarios que pueden cambiar

los parámetros del gráfico, mientras que otros solo pueden ver los

gráficos. Cada usuario también mantiene su propia configuración cuando se

trata de ver gráficos.

Templating: Finalmente, cacti puede escalar a una gran cantidad de

fuentes de datos y gráficos mediante el uso de plantillas. Esto permite la

creación de un único gráfico o plantilla de origen de datos que define

cualquier gráfico o fuente de datos asociada con él. Las plantillas de host le

permiten definir las capacidades de un host para que cacti pueda

sondearlas en busca de información al agregar un nuevo host” [23].

Page 32: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

32

6.11. APACHE JMETER

Es un programa o software de código abierto, soportada en JAVA que sirve para

cargar el comportamiento funcional para una prueba en específico y poder medir

el rendimiento de una página web o un aplicativo web, actualmente ya se ha

expandido a otras funciones de prueba.

Ésta aplicación se puede usar para realizar pruebas de rendimiento a recursos

estáticos o dinámicos y aplicaciones web dinámicas. Se puede utilizar para simular

una gran carga en un servidor, grupo de servidores, red y objetos para probar su

fortaleza o analizar el rendimiento general bajo diferentes tipos de cargas.

Las características de Apache JMeter que se encuentran en la página web del

desarrollador son:

“Capacidad para cargar y probar el rendimiento de diferentes

aplicaciones/servidores/tipos de protocolos:

o Web: HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, ...)

o Servicios web SOAP / REST

o FTP

o Base de datos a través de JDBC

o LDAP

o Middleware orientado a mensajes (MOM) a través de JMS

o Correo: SMTP (S), POP3 (S) e IMAP (S)

o Comandos nativos o scripts de Shell

o TCP

o Objetos de Java

IDE de prueba con todas las funciones que permite la grabación rápida de

Plan de prueba (desde navegadores o aplicaciones nativas), compilación y

depuración.

Modo de línea de comandos (modo no guiado / sin cabeza) para cargar la

prueba desde cualquier sistema operativo compatible con Java (Linux,

Windows, Mac OSX, ...)

Un informe HTML dinámico completo y listo para presentar

Fácil correlación mediante la capacidad de extraer datos de los formatos de

respuesta más populares, HTML , JSON , XML o cualquier formato de texto

Portabilidad completa y pureza 100% Java.

El marco completo de multi-threading permite el muestreo concurrente por

muchos hilos y el muestreo simultáneo de diferentes funciones por grupos

de hilos separados.

Almacenamiento en caché y fuera de línea / reproducción de resultados de

pruebas.

Page 33: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

33

Núcleo altamente extensible:

o Los Samplers conectables permiten capacidades de prueba

ilimitadas.

o Samplers Scriptable (lenguajes compatibles con JSR223

como Groovy y BeanShell)

o Se pueden elegir varias estadísticas de carga con temporizadores

conectables.

o Los complementos de análisis y visualización de datos permiten una

gran extensibilidad y personalización.

o Las funciones se pueden usar para proporcionar una entrada

dinámica a una prueba o para proporcionar manipulación de datos.

o Integración Continua fácil a través de 3 rd bibliotecas partido de

código abierto para Maven, Graddle y Jenkins” [24].

Page 34: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

34

7. METODOLOGÍA PROPUESTA

Para el desarrollo del aplicativo, se siguió la metodología secuencial en etapas

definidas por las necesidades teóricas y prácticas reflejadas a continuación:

Etapa I: “Levantamiento de Información”. Se identificará toda la información

relacionada al proceso.

Etapa II: “Diseño y Creación Base de Datos”. Se diseñará y se creará la

base de datos para el registro de fallas.

Etapa III: “Diseño y Creación FRONT BITACORA”. Se diseñará y se creará

el FRONT o interfaz de usuario

Etapa IV: “Pruebas y ajuste de pruebas”. Se realizarán pruebas de

funcionamiento del aplicativo y se ajustarán las fallas que puedan suceder

Etapa V: “Manual de Usuario”. Se realizará un manual de usuario para el

uso correcto del aplicativo

El diagrama de bloques dado en la figura 3, define las etapas junto con los

procesos que debe surtirse.

Figura 3. Diagrama de bloques, fuente: los autores.

Page 35: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

35

8. DESARROLLO DEL PROYECTO

Para el desarrollo del proyecto se siguió la metodología antes mencionada,

empezando por el levantamiento de información, etapa en la cual se estudian los

casos reportados en el proyecto, realizando posteriormente un análisis de los

casos reportados por el aplicativo GLPI y por correo electrónico, para definir las

categorías que se van a manejar para el reporte de fallas.

Para el diseño y creación de la base de datos se definieron las tablas y campos de

las mismas respecto a las necesidades, se hizo el diagrama del modelo entidad

relación.

En la fase de pruebas y ajuste de pruebas se realizó el testeo a cada uno de los

distintos bloques o secciones del aplicativo, tales como Login, Reporte Incidente,

Reporte Solución, Consulta, Verificación de Estándares, arrojando distintos

resultados los cuales se documentaron y analizaron para su posterior ajuste en el

aplicativo.

9. LEVANTAMIENTO DE INFORMACIÓN

Para conocer los canales de recepción de incidentes de alto impacto y el número

de casos para cada canal, se realizó el levantamiento de información donde se

hizo una comparación entre los casos de alto impacto registrados en la

herramienta GLPI (Aplicativo principal de la empresa THOMAS MTI) por parte del

cliente interno y externo del proyecto Banco Agrario de la empresa THOMAS MTI,

contra los casos reportados por correo donde se informaban las inconsistencias

que estaban afectando a la operación.

Los resultados obtenidos se muestran en la figura 4.

Figura 4. Comparación Número de Casos GLPI vs Correo. Fuente: Autores

0

2

4

6

8

10

12

14

16

Agosto Septiembre Octubre Noviembre

No

. Cas

os

Mes

GLPI

Correo

Page 36: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

36

Como se evidencia la cantidad de incidentes reportados mediante correo

electrónico supera los registrados en GLPI por lo tanto no es posible agrupar de

manera correcta los mismos, esto se debe a que se tiene estipulado que las

incidencias que generan mayor impacto en la operación se deben manejar vía

telefónica y por correo electrónico para darle una mayor prioridad; por lo tanto se

observa la necesidad de tener una herramienta donde se puedan reportar estos

incidentes con el fin de agruparlos y generar de ser necesario un control de

cambios.

Para la definición de categorías se tuvo en cuenta los diferentes aplicativos que se

utilizan para la realización del proceso en el proyecto, estos son:

o SIGDOC (Sistema de Gestión Documental): Aplicativo principal del proyecto

Banco Agrario, el activo principal son las imágenes de los documentos

solicitados por el Banco a los clientes.

o COBIS: Sistema de Gestión del Banco.

o Correo Electrónico.

o GLPI.

Teniendo en cuenta la infraestructura en la que está soportada la operación del

proyecto también puede presentar afectación en algún momento, se agregó la

categoría de fallas de red que se pueden presentar en las diferentes sucursales.

De acuerdo a lo anterior y a los posibles inconvenientes que se pueden presentar

en los aplicativos se decidió expandir las categorías de la forma en que se observa

en la tabla 1, descripción de categorías.

Descripción categoría Descripción Aplicativo

Lentitud SIGDOC

Corresponde o se utiliza

cuando el cliente percibe

lentitud en la visualización de

imágenes o creación de

inventarios.

SIGDOC Indisponibilidad SIGDOC

Cuando el usuario no puede

ingresar al aplicativo

Visualización de imágenes SIGDOC

Cuando puede ingresar al

aplicativo pero no puede

visualizar imágenes

generandole diferentes errores

Page 37: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

37

Cambio de Vol.

Proceso en el cual se realiza el

cambio de almacenamiento en

el servidor de las imágenes

digitalizadas

Rollback

Categoría asociada a

despliegues por parte de la

fabrica de desarrollo que no

fueron exitosos

Lentitud COBIS

Cuando el usuario persive

lentitud en la consulta de los

clientes en el aplicativo

COBIS Indisponibilidad COBIS Cuando el usuario no puede

ingresar al aplicativo

Actualización COBIS

Cuando se realiza algún

despliegue a una versión del

aplicativo

Soporte correo electrónico Incidentes relacionados al

correo electrónico -

Fallas de red Incidente relacionado a la red -

Lentitud GLPI

Cuando el usuario persive

lentitud en la consulta de los

incidentes y solicitudes en el

aplicativo

GLPI Indisponibilidad GLPI

Cuando el usuario no puede

ingresar al aplicativo

Inconsistencia GLPI

Cuando el aplicativo genera

resultados erroneos a las

consultas generadas

Tabla 1. Descripción de Categoría. Fuente: Autores.

Page 38: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

38

9.1. ANÁLISIS

9.1.1 IDENTIFICACIÓN Y CONTEXTUALIZACIÓN

Como se ha mencionado con anterioridad el desarrollo de un aplicativo donde se puedan registrar las incidencias de alto impacto que afectan el proceso normal del proyecto Banco Agrario de la empresa Thomas MTI, radica en la necesidad por cuantificar y poder analizar las afectaciones que son informadas principalmente mediante correo electrónico por el cliente interno y externo.

9.1.2. REQUERIMIENTOS

Teniendo como base la norma IEEE 830 (Especificación de Requisitos Software), se definieron los requerimientos funcionales y no funcionales para la elaboración del aplicativo BITACORA, de la siguiente manera:

Requerimientos funcionales: Aquellos que son necesarios para el funcionamiento del registro de incidencias de alto impacto que son reportadas mediante correo electrónico, son la base para el diseño del aplicativo adecuado de acuerdo a las necesidades del proyecto.

Requerimientos no funcionales: Hacen referencia a las especificaciones del sistema como sus propiedades, confiabilidad y seguridad. Esto define la infraestructura más adecuada de acuerdo a los recursos disponibles para el correcto funcionamiento del aplicativo.

9.1.3. REQUERIMIENTOS FUNCIONALES

9.1.3.1. Ingreso de usuario

Tabla 2. Ingreso de Usuario. Fuente: los autores.

Nombre Ingreso de usuario

Resumen Se requiere el nombre y contraseña del usuario del aplicativo SIGDOC para el ingreso al aplicativo

Entrada

Contraseña

Nombre de usuario

Resultados

El sistema valida si el usuario existe en la plataforma Manager User (Herramienta para la administración de

usuarios de SIGDOC) y cuenta con el permiso "HagaloUsedMismo" (Aplicación para soporte de Banco Agrario)

Page 39: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

39

9.1.3.2. Registro de incidencias

Tabla 3. Registro de Incidencias. Fuente: los autores.

9.1.3.3. Registro de solución

Tabla 4. Registro de Solución. Fuente: los autores.

9.1.3.4. Consultas

Tabla 5.Consultas. Fuente: los autores.

Nombre Registro de incidencias

Resumen

Se debe registrar el incidente que se esta presentando o se presento y genero alguna afectación en

el proceso, se asigna al área responsable.

Fecha inicio

Descripción

Resultados

El usuario tiene dos opciones, la primera de guardar el incidente reportado y esperar un tiempo para registrar la

solución, o guardar el incidente y reportar la solución inmediatamente. Al guardar el incidente se debe mostrar

un mensaje con el número con el cual quedo registrado.

Categoría

Área encargada

Entrada

Nombre Registro de solución

Resumen

Se debe registrar un pequeño resumen de lo que se realizo para solucionar el incidente reportado,

y se asigna al líder del área que ejecuto la solución.

El usuario cuando reporta la solución desde la opción de registro de incidencias no debe ingresar el número de

incidente ya que este debe aparecer por defecto, al guardar la solución se debe mostrar un mensaje si fue o no

exitosa la tarea.

Entrada

Número de incidente

Fecha de solución

Persona asignada

Descripción de solución

Resultados

Nombre Consultas

Resumen

Se debe contar con la opción de consultar las incidencias reportadas y mostrar cuales tienen o no

solución.

Resultados

El usuario debe tener la opción de consultar los incidentes reportados mediantes tres opciones, por el número

de incidente, por la categoría asignada o por un rango de fechas en el que se realizo la creación de los mismos. El

sistema muestra el resultado de acuerdo a la opción seleccionada por el usuario, en caso tal de tener registros

con dicha opción se debe mostrar un mensaje.

Entrada

Nro. De incidente

Categoría

Fecha de creación

Page 40: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

40

9.1.3.5. Exportar información

Tabla 6. Exportar Información. Fuente: los autores.

9.1.4. REQUERIMIENTOS NO FUNCIONALES

El aplicativo BITACORA debe tener una disponibilidad de 98%.

La velocidad de respuesta para los usuarios finales no debe ser mayor a 10

segundos.

Debe contar con una interfaz sencilla y fácil de entender para el usuario

final.

9.1.5. DIAGRAMAS DE CASOS DE USO

9.1.5.1. Actores

A continuación se listan los usuarios y su identificación:

Tabla 7. Actores. Fuente: los autores.

Nombre Exportar información

Resumen Se debe contrar con una opción de exportar la información resultante de las consultas realizadas.

Resultados

El sistema arroja el resultado de una consulta realizada y debe extraer la misma a un archivo .xls

Entrada

Extraer información

Código Nombre Caracterización

ACT-001 Usuario

Cualquier usuario de la aplicación, es en general cualquier

integrante de la organización en la que se implemente el

sistema. Este usuario puede pertenecer a cualquiera de los

"roles" que se presentan a continuación.

ACT-002 AdministradorEste usuario es el encargado de gestionar los usuarios y

permisos dentro del sistema.

ACT-003 Usuario final

Este usuario se encarga de realizar el registro de los

incidentes y la solución de los mismos, adicional puede

generar reportes de los incidentes.

ACTS-001 Sistema Este hace referencia al sistema del proyecto Banco Agrario.

Representación gráfica

Page 41: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

41

9.1.5.2. CUS-01 Ingreso de usuario al sistema

Tabla 8. Ingreso Usuario Al Sistema. Fuente: los autores.

9.1.5.3. CUS-02 Registro de incidencias

Tabla 9. Registro de Incidencias. Fuente: los autores.

CUS-01

Descripción

Precondición

Paso Acción

1

El Usuario (ACT-001) abre la dirección web designada para el funcionamiento de la

aplicación.

2

El Sistema (ACTS-001) presenta el formulario de ingreso, solicitando usuario y

contraseña.

3 El Usuario (ACT-001) digita sus datos personales.

4 El Sistema verifica la información digitada.

5

En caso que el Sistema compruebe que la información es correcta presentará al

usuario la interfaz correspondiente a los permisos asignados.

Pos condición

Secuencia

Este caso de uso permitirá el inicio de una sesión de un Usuario (ACT-001) dentro del sistema.El Usuario (ACT-001) debe haber sido creado por un Administrador (ACT-002) y debe habérsele

asignado los permisos correspondientes.

Representación gráfica

Ingreso de usuario al sistema

El usuario se ha identificado correctamente en el sistema y su sesión está abierta.

CUS-02

Descripción

Precondición

Paso Acción

1

El Sistema (ACTS-001) presenta el formulario principal, el usuario final (ACT-003) selecciona la pestaña

de registrar incidente.

2 El usuario (ACT-003) ingresa la información correspondiente para el registro del incidente.

3 El sistema (ACTS-001) genera un número de incidente.

Pos condición

Registro de incidencias

Este caso de uso permitirá que un usuario (ACT-003) crear un incidente, del cuál registrara la solución

El usuario (ACT-003) debe seleccionar una categoría, la fecha y hora en que sucedió o esta sucediendo el

inconveniente, asigna el área responsable y escribe una pequeña descripción, para que el sistema guarde el

Secuencia

Representación

gráfica

El usuario final ha reportado correctamente en el sistema su incidente, generando el sistema el número

Page 42: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

42

9.1.5.4. CUS-03 Registro de solución

Tabla 10. Registro de Solución. Fuente: los autores.

9.1.5.5. CUS-04 Consultas

Tabla 11. Consultas. Fuente: los autores.

CUS-03

Descripción

Precondición

Paso Acción

1

El Sistema (ACTS-001) presenta el formulario principal, el usuario final (ACT-003) selecciona la

pestaña de registrar solución.

2 El usuario (ACT-003) ingresa el número del incidente.

3 El sistema (ACTS-001) muestra la información del incidente.

4 El usuario (ACT-003) ingresa los datos necesarios para registrar la solución correspondiente.

5 El sistema (ACTS-001) guarda la información y genera un mensaje de tarea finalizada.

Pos condición

Representación

gráfica

Registro de solución

En este caso de uso el usuario (ACT-003) una vez tenga la solución del incidente va a registrarla.

El usuario (ACT-003) va a ingresar en el registro de solución y digitara el número del incidente que no

tiene solución, debe escoger la fecha de solución, el líder del área encargada y una descripción de la

solución.

Secuencia

El usuario final a diligenciado la solución con éxito, el sistema almacena la información

correspondiente.

CUS-04

Descripción

Precondición

Paso Acción

1

El Sistema (ACTS-001) presenta el formulario principal, el usuario final (ACT-

003) selecciona la opción de consulta.

2 El sistema (ACTS-001) muestra las opciones de consulta.

3 El usuario (ACT-003) selecciona la opción de consulta.

4

El sistema (ACTS-001) muestra la información del incidente y la solución en

caso de tenerla.

Pos condición

Representación

gráfica

Consultas

En este caso de uso el usuario (ACT-003) va a consultar uno o varios incidentes, de

acuerdo a la opción seleccionada.

El usuario (ACT-003) va a ingresar en el modulo de consulta donde se visualizara tres

opciones de consulta, por número de incidente, categoría o un rango de fecha

cuando se reporto la incidencia.

Secuencia

El usuario final selecciona una opción de consulta, en caso tal que no se cuente con

información el sistema arrojara un mensaje informando esto, en caso contrario el

sistema mostrara la información de la consulta.

Page 43: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

43

9.1.5.6. CUS-05 Exportar información

Tabla 12. Exportar Información. Fuente: los autores.

9.1.6. DIAGRAMA DE FLUJO

En la siguiente figura (Figura 5) se muestra el diagrama de flujo del aplicativo

BITACORA para cada proceso.

CUS-05

Descripción

Precondición

Paso Acción

1

El Sistema (ACTS-001) presenta el formulario principal, el usuario final (ACT-

003) selecciona la opción de consulta.

2 El sistema (ACTS-001) muestra las opciones de consulta.

3 El usuario (ACT-003) selecciona la opción de consulta.

4

El sistema (ACTS-001) muestra la información del incidente y la solución en

caso de tenerla.

5 El usuario (ACT-003) selecciona la opción de exportar información.

6 El sistema (ACTS-001) extrae la información en una archivo .xls

Pos condición

Representación

gráfica

Exportar información

En este caso de uso el usuario (ACT-003) puede exportar la información generada en

las consultas.

El sistema (ACTS-001) muestra la información de la consulta realizada por el usuario

(ACT-003).

Secuencia

El usuario final extrae la información que el sistema arroja de la consulta realizada.

Page 44: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

44

Figura 5. Diagrama de flujo aplicativo BITACORA. Fuente: Los autores.

Page 45: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

45

10. DISEÑO

Para la etapa de diseño, se empezó con la base de datos realizando el modelo

entidad relación y posteriormente se realizó el diseño e implementación del

FRONT del aplicativo.

10.1. DISEÑO DE BASE DE DATOS

Para el diseño se definieron las tablas y los campos de las mismas de acuerdo a

las necesidades planteadas para el registro de las incidencias y la solución de

estas, posteriormente se realizó el modelo entidad-relación que se muestra a

continuación.

Figura 6. Modelo Entidad Relación. Fuente: Los autores.

En el modelo entidad-relación, se analiza el esquema de diferentes entidades o

tablas, y su correlación entre ellas, a continuación se explica la relación existente:

• Relación BIT_Incon – BIT_Categorías: La relación entre las categorías y los

incidentes es de una a muchas, ya que una categoría puede tener diferentes

incidentes, pero un incidente solo puede tener una categoría.

• Relación BIT_Incon – BIT_Area: La relación entre las áreas y los

inconvenientes es de una a muchas, ya que un incidente solamente puede tener

un área asignada pero un área puede tener diferentes inconvenientes.

Page 46: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

46

• Relación BIT_Incon – BIT_Solucion: La relación entre los inconvenientes y

la solución es de una a una, ya que un inconveniente solamente puede tener una

solución.

• Relación BIT_Solucion – BIT_Responsable: La relación entre los

responsables y las soluciones es de una a muchas, ya que un responsable puede

tener diferentes soluciones asignadas, pero una solución solo puede tener un

responsable.

• Relación BIT_Responsable – BIT_Area: La relación entre responsables y

áreas es de una a una, ya que un responsable solamente puede tener un área

asignada.

Para la selección del motor de base de datos se tuvo en cuenta los recursos con

los que disponía el proyecto y de acuerdo a la cantidad y la sensibilidad de los

datos que se iban a manejar en el aplicativo se escogió Microsoft SQL Server

2012, adicionalmente se seleccionó este motor debido a que la autenticación del

aplicativo se realiza con los usuarios de SIGDOC y este aplicativo también se

soporta sobre ese mismo motor; agregando solamente un permiso adicional para

garantizar mayor seguridad.

Se dispuso de un servidor para la base de datos con las siguientes características

técnicas:

o Espacio de almacenamiento disco fuente: 40GB.

o RAM: 10GB.

o Procesador de 8 núcleos.

o Sistema Operativo: Windows server 2012.

Teniendo en cuenta la cantidad de datos y usuarios (aproximadamente 20) que

tiene el aplicativo de registro de incidentes, agregando a esto una mayor

disponibilidad del mismo.

Page 47: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

47

10.2. INTERFAZ (FRONT)

Para la diseño del FRONT se buscó una interfaz amigable, sencilla y fácil de

entender para el usuario final, se desarrolló bajo el software Visual Studio debido a

que se contaba con esta licencia en la empresa y por su facilidad y versatilidad de

manejo.

10.2.1. PANTALLA INGRESO USUARIO

En esta interfaz se muestra la página de ingreso, donde el usuario debe digitar su

usuario y contraseña.

Figura 7. Ingreso Usuario. Fuente: Los autores.

10.2.2. PANTALLA PRINCIPAL USUARIO FINAL

Una vez ingresado el usuario y contraseña, podrá visualizar el menú principal

donde podrá Consultar, Reportar la inconsistencia o Reportar la Solución

correspondiente:

Page 48: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

48

Figura 8. Pantalla Principal Usuario Final. Fuente: Los autores.

10.2.3. REPORTAR INCIDENTE

El formulario que el usuario debe diligenciar para reportar la inconsistencia se

muestra a continuación

Figura 9. Reportar Incidente. Fuente: Los autores.

Page 49: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

49

10.2.4. GUARDAR Y REPORTAR SOLUCIÓN

El aplicativo BITACORA cuenta con la opción de guardar la inconsistencia

y reportar la solución correspondiente, desde la página de Reportar

inconsistencia:

Figura 10. Guardar y Reportar Solución. Fuente: Los autores.

10.2.5. REPORTAR SOLUCIÓN

Figura 11. Reportar Solución. Fuente: Los autores.

Page 50: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

50

Para diligenciar la solución, el usuario debe ingresar el número del incidente en el

formulario anterior, y completar los campos solicitados.

10.2.6. CONSULTAS

Figura 12. Consultas. Fuente: Los autores.

Como se puede visualizar se cuenta con las siguientes opciones, para realizar una

consultar:

Consultar por número de la novedad reportada.

Consultar por categoría.

Consultar por fecha de creación.

Consultar por fecha de creación y por categoría.

10.2.7. EXTRACCIÓN DE INFORMACIÓN

Una vez realizada la consulta, la información se vera de la siguiente manera:

Figura 13. Extracción de Información. Fuente: Los autores.

Page 51: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

51

En esta página se cuenta con la opción de extraer la información, solamente se

debe dar click en el botón “EXTRAER INFORMACIÓN”, automáticamente se

descargara un archivo con el nombre Export con extensión XLS.

Figura 14. Archivo XLS. Fuente: Los autores.

10.3. PRUEBAS Y AJUSTE DE PRUEBAS

Durante la fase de desarrollo del aplicativo BITACORA, se realizaron diferentes

pruebas funcionales, inicialmente unas por secciones del aplicativo para analizar

el correcto funcionamiento del mismo, obteniendo los siguientes resultados:

Login: En la página inicial donde se ingresa el Login de cada usuario se

identificó una vulnerabilidad de seguridad en el campo donde se ingresa la

contraseña, ya que el navegador estaba almacenando el caché de la

aplicación por lo tanto al ver en otro label de las páginas del aplicativo era

posible visualizar la contraseña, la manera en que se identificó esta

vulnerabilidad fue en los resultados obtenidos después de testear la

aplicación con el software Nessus Scan; la manera en que se ajustó esta

inconsistencia, fue en el manejo correcto del caché de la aplicación, desde

el desarrollo se quitó la opción del almacenamiento automático de la

información ingresada.

Reporte incidente: En la página donde se registra el incidente, no se

estaba cumpliendo la condicional de que la totalidad de los campos deben

estar diligenciados, por lo tanto los incidentes reportados estaban quedando

de manera incompleta en la base de datos, se identificó que esto se debía a

una inconsistencia en la clase de datos donde se estaba insertando la

información en la base de datos, se realizó el ajuste en query y quedo

funcionando correctamente.

Page 52: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

52

Reporte solución: La opción de guardar la solución desde el botón

“Guardar y continuar” no estaba funcionando correctamente, al validar este

problema se identificó un error en la programación de la información que

estaba arrojando al momento de consultar el número de incidente, adicional

la clase que se estaba utilizando no se estaba conectando correctamente a

la base de datos, esto se solucionó mediante la validación del web config ya

que el usuario que se estaba utilizando no tenía los permisos suficientes

para realizar la operación solicitada.

Consulta: Al realizar la prueba funcional en esta página se presentaron

diferentes problemas relacionados a la consulta por la opción fecha y

categoría, ya que no estaba arrojando ningún resultado al momento de

utilizar estas opciones, adicional no se contaba con ninguna notificación al

momento de consultar por alguna categoría que no contara con incidentes

reportados. Los incidentes reportados no estaban quedando de manera

secuencial, para esto se eliminó por completo la tabla Bit_Incon y se creó

nuevamente modificando los campos de las llaves foráneas y se truncó la

tabla para eliminar por completo los valores existentes, al momento de

realizar esta acción los incidentes reportados ya quedaban correctamente

registrados.

Los principales problemas que se presentaron en la fase de desarrollo fueron

relacionados en la creación de los querys para realizar las consultas y para

insertar la información, adicional de un problema asociado al usuario que se tenía

para la conexión a la base de datos, por lo que se realizó la creación de otro

usuario con mayores privilegios en el manejo de datos, adicional se hizo el ajuste

correspondiente en los querys que se habían creado teniendo en cuenta las

buenas prácticas de desarrollo.

Verificación de Estándares: aunque los sitios web pueden ser construidos

a partir de diferentes lenguajes, todos deben cumplir ciertas normas de

organización de su código fuente (sintaxis), que permitan su visualización

por software equivalente en diferentes plataformas, para este aplicativo se

tuvo en cuenta la validación de CSS, lo que indico que la Hoja de Cascada

de Estilo (Cascade Style Sheet) cumple con la sintaxis estándar y por lo

tanto podrá ser visualizada correctamente en todos los sistemas.

Page 53: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

53

10.4. SEGURIDAD EN EL APLICATIVO BITÁCORA

Para restringir el acceso de los usuarios al aplicativo BITACORA y garantizar una

mayor seguridad los parámetros de ingreso son los mismos (Usuario y

contraseña) a los utilizados para SIGDOC, adicional se tiene un permiso adicional

para dicho ingreso.

El método de encriptación para la contraseña de los usuarios que se utilizo fue la

clase SHA512 de Visual Studio. Se restringió el almacenamiento del usuario y

contraseña en la página principal de la autenticación, adicional se dejaron

mensajes de advertencia genéricos para mitigar que se pueda forzar el acceso a

la página. La conexión a la base de datos se realizó mediante web.config para

evitar dejar en las páginas de diseño las credenciales de la misma.

Los permisos para el acceso al aplicativo BITACORA se dejaron solamente al

segmento del área de tecnología del proyecto Banco Agrario, para evitar que otros

usuarios intenten ingresar al sitio web.

11. CALIDAD DE SERVICIO

Con base en algunos criterios establecidos en la norma ISO 25000 (Sistemas y

requisitos de calidad del software y evaluación (SQuaRE)) [25] [26]; se

establecieron los siguientes requisitos de evaluación para la calidad de servicio del

aplicativo web BITACORA:

11.1. USABILIDAD

11.1.1. TIEMPOS DE RESPUESTA

Con base a las conclusiones del estudio presentado en 1968 por Robert Miller que

aún siguen siendo válidas, los tiempos recomendados son los siguientes:

“Una décima de segundo (0.1 s) es el tiempo normal de respuesta para que

el usuario sienta que el sistema está reaccionando instantáneamente.

Un segundo (1 s) es el tiempo límite para que el usuario se dé cuenta de

que hay una demora y que la misma no es una interrupción”.

Mostrar una página en menos de un segundo le da al usuario la sensación

de que está accediendo a la información sin demoras.

Diez segundos (10 s) es el tiempo máximo que un usuario puede

permanecer atento a una tarea. Si el tiempo de respuesta es mayor, los

usuarios tienden a ocupar su tiempo en otras cosas por lo que ya no están

atentos a lo que la computadora está haciendo” [27].

Page 54: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

54

A partir de esto se realizaron las mediciones de los tiempos de respuesta que

tiene el sitio web BITACORA al momento de mostrar la página de autenticación,

adicional se muestran los tiempos para cada interacción realizada para el ingreso

a la página inicial:

Figura 15.Página de autenticación (resultados JMeter). Fuente: Los autores.

A partir de los resultados obtenidos se evidencia un tiempo de carga a la página

de autenticación de la BITACORA (Figura 15) de 42ms con una latencia de 24ms,

de acuerdo a esto no se supera el tiempo establecido para que el usuario final

perciba lentitud, demostrando que la comunicación con el servidor es óptima y la

navegabilidad del sitio web está dentro de los parámetros establecidos en los

requerimientos no funcionales.

Figura 16. Autenticación Usuario (resultados JMeter). Fuente: Los autores.

Page 55: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

55

En la figura 16 se muestran los resultados del JMeter al momento de la

autenticación del usuario, por lo tanto los tiempos son superiores en cuanto a la

respuesta del servidor, a pesar de que el tiempo de carga aumenta hasta 74ms no

es un tiempo considerable para que el usuario final perciba algún tipo de lentitud.

Figura 17. Página principal (resultados JMeter). Fuente: Los autores.

Como se evidencia en la figura 17 el tiempo de respuesta para que el aplicativo

BITACORA muestre la página principal es de 21ms, con una latencia de 9ms, lo

que indica que la demora es mínima para que cargue esta página.

Figura 18.Cerrar sesión (resultados JMeter). Fuente: Los autores.

Page 56: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

56

Figura 19. Página de autenticación (resultados JMeter). Fuente: Los autores.

En la figura 18 y en la figura 19, se visualizan los tiempos de respuesta al

momento de cerrar sesión, teniendo un tiempo máximo de 26ms para mostrar

nuevamente la página de autenticación.

11.2. FIABILIDAD

En este ítem se evaluaron los parámetros de disponibilidad y de tolerancia a fallos,

a continuación se muestra de manera detallada cada uno de estos:

11.2.1. DISPONIBILIDAD

Para el cumplimiento de este parámetro se realizó el monitoreo del

comportamiento de la aplicación durante una semana (por disposición de recursos

de la empresa), el aplicativo que se utilizó para este monitoreo fue el Cacti, en

este caso se analizaron los siguientes ítems:

Page 57: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

57

11.2.1.1. Uso de la memoria

Figura 20. Uso de Memoria. Fuente: Los autores.

Como se muestra en la gráfica la memoria no se ve comprometida con el uso de la

aplicación, en el pico que se visualiza del martes 03-04-2018 se debe a un

proceso de actualización que se ejecutó para otras funciones compartidas con la

aplicación BITACORA (Actualización de COBIS) que tiene el servidor.

Teniendo en cuenta que en este servidor no se encuentra la base de datos es

coherente que no se presente una afectación en la memoria. Con el servidor

funcionando de manera correcta el monitoreo muestra un uso de memoria de 5.2

GB con una disponibilidad del 49% y un promedio de uso del 39% garantizando

así el funcionamiento correcto del servicio web; el porcentaje restante los destina a

procesos reservados del mismo. El espacio que se tiene desde el día 20 de marzo

al 23 de marzo se debe a que en ese momento no se contaba con el monitoreo del

servidor.

Page 58: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

58

11.2.1.2. Trafico

Figura 21. Tráfico. Fuente: Los autores.

En este caso se evidencia un espacio sin monitoreo desde el día 20 de marzo al

23 de marzo, debido a que en este lapso de tiempo no se contaba con este, en la

gráfica se observan distintos valores atípicos o picos en la señal por ejemplo en el

tráfico entrante el día martes de la semana de pruebas se obtiene un valor máximo

de 100.1Kbits por segundo teniendo en cuenta que ese día se realizaron pruebas

de carga con varios usuarios del aplicativo con el fin de cuantificar el tráfico de la

plataforma.

Para el tráfico de salida se realizaron pruebas volumétricas el día martes

03/04/2018 para poder verificar la plataforma y confirmar si es posible que el

aplicativo pueda soportar una alta contingencia, el valor atípico para ese día se

encuentra en 110.3Kbps, observando que la plataforma responde acorde a las

necesidades de la empresa y resaltando que la probabilidad de que en la puesta

en marcha el aplicativo llegue a dicho tráfico es baja, debido a que las personas

encargadas del registro no son demasiadas.

Page 59: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

59

11.2.1.3. Uso del disco C

Figura 22. Uso Disco C. Fuente: Los autores.

El fin de la prueba consiste en monitorear la unidad de almacenamiento para

verificar el uso y las posibles falla que pueda tener, en la gráfica se observa que el

porcentaje de inactividad de la unidad alcanza un promedio del 91.8% lo que

indica que la plataforma no se utilizó constantemente o no se registraron muchas

fallas en el tiempo de prueba, el porcentaje promedio de tiempo de escritura y

lectura se encuentra en 0.1% evidenciando el poco uso de la plataforma.

11.2.2. TOLERANCIA A FALLOS

En este caso se realizaron pruebas de estrés de la aplicación, por lo tanto se

dispuso del aplicativo JMeter, en el cual se crearon 1000 hilos de Login para

validar el acceso a la BITACORA (Figura 23), para así verificar el comportamiento

del servidor con pruebas de volumetría. Para ver en tiempo real el comportamiento

del servidor donde se soporta el sitio web se utilizó la aplicación ProcessExplorer

ya que esta proporciona la funcionalidad del Administrador de tareas de Windows

junto con un amplio conjunto de características para recopilar información sobre

los procesos que se ejecutan en el sistema del usuario. Los resultados se

muestran a continuación:

Page 60: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

60

Figura 23. Asignación de 1000 hilos JMeter. Fuente: Los autores.

En la figura 24, se muestra el resumen de los resultados obtenidos con las

pruebas de volumetría, en el ítem # Muestras hace referencia a la cantidad de

iteraciones que se realizó en cada página, como se evidencia todas las

conexiones se realizaron de manera exitosa,

Figura 24. Reporte resumen (Resultado JMeter). Fuente: Los autores.

Las conexiones establecidas para la autenticación del usuario en el servidor se

muestran en la figura 25, las que se encuentran en rojo corresponden a

conexiones cerradas, las que se encuentran en verde hacen referencia a las

conexiones establecidas correctamente y las que no tienen ningún color son

Page 61: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

61

conexiones pendientes; una vez realizada la correcta autenticación del usuario por

seguridad se cierran las conexiones, adicional esto se usa para liberar recursos

en el servidor. En la figura 25, solo hay una muestra de las 1000 conexiones

establecidas con las pruebas de estrés.

Figura 25. Conexiones establecidas en el servidor (Resultados ProcessExplorer). Fuente: Los autores.

A continuación se muestran las gráficas del comportamiento del servidor, frente a

las pruebas de estrés.

Figura 26. Información del sistema (Resultados ProcessExplorer). Fuente: Los autores.

Como se evidencia en la figura 27, la CPU es la que se ve más comprometida en

las pruebas de estrés, los picos de la gráfica de entradas contra salidas

corresponden a respuesta de escritorio remoto ya que para acceder al servidor se

realiza mediante RDP (Protocolo de Escritorio Remoto). Por lo tanto en la figura 27

se ve de manera detalla el comportamiento de la CPU en las pruebas de

volumetría.

Page 62: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

62

Figura 27. Comportamiento de la CPU (Resultados ProcessExplorer). Fuente: Los autores.

De acuerdo a los resultados obtenidos se evidencia que el servidor responde de

manera adecuada para soportar una carga mayor de usuarios, sin comprometer

sus recursos, ya que el pico máximo de uso de CPU con estas pruebas fue de

36.88%. Las pruebas de estrés se realizaron solamente con un grupo de mil

(1000) hilos teniendo en cuenta la capacidad de JMeter.

NOTA: Para el desarrollo del proyecto y mediciones de QoS se presentaron

ciertas limitaciones como la negativa de la empresa para usar software libre

además de los permisos necesarios para la realización de ciertas pruebas como

pruebas de volumetría para la medición de pérdida de paquetes con el fin de no

afectar los procesos normales que se encuentran en el ambiente de producción.

Page 63: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

63

11.3. SEGURIDAD

11.3.1. ANÁLISIS DE VULNERABILIDADES

La empresa THOMAS MTI cuenta con políticas de seguridad de la información

muy rigurosas, por lo tanto para los datos suministrados por el personal se debe

garantizar la integridad, disponibilidad y confidencialidad de los mismos.

Por ejemplo el acceso a las instalaciones es restringido, por ende para acceder a

los servidores y computadores de la empresa es bastante difícil, lo que permite

que personas ajenas a la empresa no tengan acceso a la información ni realizar

un posible ataque a los servidores.

Para restringir el acceso de los usuarios al aplicativo BITACORA se re utilizo un

recurso ya existente pero que actualmente no se encontraba en uso, cuya

funcionalidad consistía en permitir el ingreso a un recurso temporal de SIGDOC

(Aplicativo de Gestión Documental). Este recurso se denomina

“HagaloUsedMismo”; dicho permiso solamente se les asignará a los usuarios ya

creados para el ingreso a SIGDOC y que puedan ingresar a la BITACORA. Los

parámetros de ingreso serán los mismos (Usuario y contraseña) a los utilizados

para SIGDOC.

Se dispuso por parte del proyecto Banco Agrario la utilización de un servidor para

soportar el sitio web del aplicativo BITACORA con las siguientes características

técnicas:

o Espacio de almacenamiento disco fuente: 10GB.

o RAM: 4GB.

o Procesador de 10 núcleos.

o Sistema Operativo: Windows server 2012.

Se utilizó el Rol del IIS (Internet Information Services) para alojar el servicio web.

La conexión con la Base de datos de SIGDOC (Para la autenticación de los

usuarios) y la Base de datos de la BITACORA (Donde se almacena toda la

información registrada en el aplicativo), se realizó mediante Web.Config.

Para garantizar la seguridad del servidor donde se soporta el sitio web del

aplicativo se realizó un escaneo de vulnerabilidades con el software Nessus Scan,

evidenciando los siguientes resultados (figura 28).

Page 64: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

64

Analizando los resultados obtenidos, se identificó que el servidor no cuenta con

vulnerabilidades críticas ni altas, las cuales por definición pueden comprometer de

manera seria los recursos y funcionamiento del equipo.

Por otra parte se encontró cinco (5) vulnerabilidades de nivel medio relacionadas

a inconvenientes que se tienen con el certificado SSL, estas se encuentran en

proceso de corrección por parte del grupo encargado de la administración de

plataformas de la empresa Thomas MTI. Este proyecto no profundizara en la

mitigación y resolución de las vulnerabilidades descubiertas, ya que no

corresponde al alcance del mismo.

Los 33 mensajes informativos corresponden a características de seguridad

establecidas en Nessus que se presentan como recomendaciones para evitar

riesgos de vulnerabilidades en el servidor.

Page 65: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

65

Page 66: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

66

Figura 28. Escaneo Vulnerabilidades del Servidor. Fuente: Nessus Scan.

11.3.2. MODELO DE AMENAZAS

El modelado de amenazas es un procedimiento para optimizar la seguridad de la

red/aplicaciones/Internet mediante la identificación de objetivos y vulnerabilidades,

y luego definir las contramedidas para prevenir o mitigar los efectos de las

amenazas al sistema.

Para el modelo de amenazas del aplicativo BITACORA, se utilizó el modelo

propuesto por OWASP (Open Web Application Security Project, ‘Proyecto abierto

de seguridad de aplicaciones web’) este último es un proyecto de código abierto

dedicado a determinar y combatir las causas que hacen que el software sea

inseguro.

En los numerales del 1 al 5 se realizó la descomposición de la aplicación,

identificando las entidades externas, los puntos de entrada que puede tener la

misma y los activos, de esta manera se definieron los niveles de confianza (Nota:

los niveles de confianza se dejaron en el ítem 3, para mejor comprensión de los

numerales 4-7), en los ítems 6 y 7 se definieron las amenazas y las sugerencias

para mitigar las mismas.

Page 67: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

67

11.3.2.1. PORTADA

Tabla 13. Portada. Fuente: Los autores.

11.3.2.2. DEPENDENCIAS EXTERNAS

Tabla 14. Dependencias Externas. Fuente: Los autores.

11.3.2.3. NIVELES DE CONFIANZA

Tabla 15. Niveles de Confianza. Fuente: Los autores.

Versión Aplicación V1

Autor: Wilson Vargas, Daniel Salamanca

Participantes: Wilson Vargas - Daniel Salamanca

Revisor: Andres Reyes - Administrador de Plataformas

Modelo de Amenazas

Descripción:

BITACORA es una aplicación web, que permite realizar el registro de incidentes de alto

impacto que afectan el proceso normal del proyecto Banco Agrario de la empresa

THOMAS MTI.

ID Descripción

1 Base de datos SQLServer 2012

2 Usuarios MTI

3 S.O. Windows server 2012

4 Internet Information Service

5 Firewall

6 Manager User

External Dependencies

ID Nombre Descripción

1 Usuarios Manager User

Todo usuario existente activo en Manager User con el permiso

"HagaloUsedMismo" tiene acceso a la Bitácora con un usuario y

contraseña.

2 Directorio activo MTIUsuarios que se encuentran registrados en el directorio activo de

MTI en el grupo de infraestructura tiene acceso a la Base de datos

3 Usuarios anónimos Usuario que puede tener acceso a la página de login

Niveles de Confianza

Page 68: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

68

11.3.2.4. PUNTOS DE ENTRADA

Tabla 16. Puntos de Entrada. Fuente: Los autores.

11.3.2.5. ACTIVOS

Tabla 17. Activos. Fuente: Los autores.

11.3.2.6. STRIDE

Para la identificación de las amenazas críticas se utilizó el método STRIDE

(Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service,

Elevation of Privilege por sus siglas en inglés), donde se definieron cuáles son los

posibles puntos de entrada que puede tener un atacante de acuerdo a cada

amenaza, de esta manera definir los activos que se ven expuestos.

ID Nombre Descripción Niveles de Confianza

1

1

1

1

1

2

3

2

5 Protocolo HTTP

6 Motor Base de datos SQL Server 2012

3 Usuario final Consultas

4 Usuario final Extracción de información

Puntos de Entrada

1 Usuario final Reporte inconsistencias

2 Usuario final Reporte solución

ID Nombre DescripciónNiveles de

Confianza

1

2

1

2

1

2

2

4 Código aplicación Código compilado

1 Incidentes Poseen la información de los incidentes reportados.

2 Reportes Información de los incidentes y soluciones reportados.

Activos

3 Datos usuarios Información básica de usuarios que ingresan en la aplicación

Page 69: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

69

Tabla 18. STRIDE. Fuente: Los autores.

11.3.2.7. DREAD

En el modelo DREAD (Damage, Reproducibility, Exploitability, Affected users,

Discoverability por sus siglas en inglés), es un esquema de calificación para

cuantificar, comparar y dar prioridad a la cantidad de riesgo que presenta una

amenaza específica, las cuales se definieron con el método STRIDE.

Para la sugerencia de contramedidas y mitigaciones se tomó como referencia los

requisitos y sugerencias que se realizan en la norma de seguridad de datos de

PCI (Payment Card Industry), ya que esta se desarrolló para fomentar y mejorar la

seguridad de los datos de los usuarios, esta facilita la adopción de medidas de

seguridad uniformes, adicional el Proyecto Banco Agrario se encuentra en el

proceso de certificación de dicha norma, por lo tanto la mayoría de

recomendaciones ya se encuentran implementadas en el proceso o en proceso de

implementación.

Tabla modelo DREAD. Anexo 2.

12. ANÁLISIS DE TRÁFICO

Para el aplicativo se tiene un servidor de 40 GB de capacidad, cuenta con un

canal dedicado de 50MBps.

Para el cálculo de N (Elementos de red con capacidad infinita), se tiene que el

máximo peso de un archivo a guardar que para este caso al ser un archivo plano

de Excel se estima un peso aproximado de 12 MB.

N =50MBps

12MB

N = 4.1666666667

Aproximando al siguiente entero se obtiene:

N = 5

Amenazas Puntos de entrada Activos

Robo de identidad 1 al 6 1,2,3,4

Manipulación de datos 5 y 6 1,3,4

Repudiación 5 y 6 1

Divulgación de información 1 al 6 1,2,3,4

Negación de servicio 5 y 6 3,4

Elevación de privilegios 5 y 6 3,4

Page 70: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

70

El sistema fue diseñado para tener una probabilidad de bloqueo de 10% debido a

que la cantidad de usuarios reales con que cuenta la plataforma no es

significativamente mayor, se procede a calcular el tráfico con N=5 y se obtiene:

ATot = 2.319999 [Erlangs]

Con el tráfico total del sistema y el tráfico por usuario que es aproximadamente

0.005 Erlangs (Auss) se obtiene el número total de usuarios asumiendo que todos

los archivos tienen un tamaño de 12 MB.

#Uss =ATot

AUss

#Uss =2.319999

0.005

#Uss = 463.9998

Por ende la cantidad máxima de usuarios es 463.

Para calcular el total de archivos que puede almacenar el servidor se procede a

dividir la capacidad total del servidor con el tamaño máximo por archivo de 12 MB,

obteniendo así:

#Archivos =40GB

12MB

#Archivos = 3333.33333333

En este caso se debe aproximar por debajo porque solo es posible almacenar

archivos incompletos obteniendo una capacidad máxima de 3333 archivos

guardados.

Page 71: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

71

13. ANÁLISIS MÉTRICAS DE CÓDIGO

13.1. ÍNDICE DE MANTENIMIENTO

El índice de mantenimiento indica la facilidad relativa de mantenimiento de un

código obteniendo un valor que varía entre 0 y 100, Microsoft define que un índice

de mantenimiento adecuado debe estar por encima de 20 puntos. Para el análisis

de dicho parámetro se organizaron los datos de forma ascendente y para luego

calcular las medidas de tendencia central de los datos obtenidos, los datos

originales se pueden observar en el anexo 4.

En las tablas 19, 20 y 21 se pueden observar los resultados del análisis por medio

de la tabla, histograma y polígono de distribución de frecuencias para poder

observar mejor los datos.

Promedio 80.89261745

Mediana 95

Cuartil 0 31

Cuartil 1 61

Cuartil 2 95

Cuartil 3 98

Cuartil 4 100 Tabla 19. Cálculo de medidas de tendencia central. Fuente: Los autores.

# de Datos 149

Valor Máx 100

Valor Min 31

Rango 69

# de Intervalos 8

Amplitud de clase

9

diferencia 1

Tabla 20. Cálculo de Parámetros de Tabla de Distribución de Frecuencias. Fuente: Los autores.

Page 72: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

72

Intervalo de clase

Marca de clase

fi Fi hi[%] Hi[%]

30 40 35 3 3 2.013422819 2.013422819

41 50 45.5 10 13 6.711409396 8.724832215

51 60 55.5 23 36 15.43624161 24.16107383

61 70 65.5 10 46 6.711409396 30.87248322

71 80 75.5 13 59 8.724832215 39.59731544

81 90 85.5 8 67 5.369127517 44.96644295

91 100 95.5 82 149 55.03355705 100

Acumulado 149 100

Tabla 21. Tabla de Distribución de Frecuencias. Fuente: Los autores.

Figura 29. Histograma y Polígono de Frecuencias. Fuente: Los autores.

Al analizar los resultados obtenidos con promedio de 80.8, mediana y moda de 95

y debido a que cuenta con una distribución de datos la cual el 50% son iguales o

mayores a 95, además el valor mínimo (Cuartil 0) se encuentra en 31,

presentando solo 12 datos con valor de 100 siendo estos valores atípicos para

nuestro análisis y teniendo en cuenta lo anterior se concluye que al no haber un

solo dato por debajo de esa cifra el código cuenta con un índice de mantenimiento

general óptimo.

0

10

20

30

40

50

60

70

80

90

35 45.5 55.5 65.5 75.5 85.5 95.5

Histograma y Polígono de Frecuencias

Histograma

Polígono

Page 73: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

73

13.2. ACOPLAMIENTO DE CLASES

El acoplamiento de clases se mide a través de parámetros variables, locales,

métodos etc. Microsoft sugiere un acoplamiento de clases bajo lo que indica un

diseño fácil de reutilizar y mantener puesto que existe independencia de variables,

clases, etc, Para el análisis de dicho parámetro se organizaron los datos de forma

ascendente y para luego calcular las medidas de tendencia central de los datos

obtenidos, en el anexo 4 se observa la totalidad de datos.

En las tablas 22, 23 y 24 se pueden observar los resultados del análisis por medio

de la tabla, histograma y polígono de distribución de frecuencias para poder

observar mejor los datos.

Promedio 5.624161074

Mediana 1

Moda 0

Cuartil 0 0

Cuartil 1 0

Cuartil 2 1

Cuartil 3 7

Cuartil 4 67 Tabla 22. Cálculo de Medidas de Tendencia Central. Fuente: Los autores.

# de Datos 149

Valor Máx 67

Valor Min 0

Rango 67

# de Intervalos 8

Amplitud de clase

9

diferencia 1

Tabla 23. Cálculo de Parámetros de Tabla de Distribución de Frecuencias. Fuente: Los autores.

Page 74: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

74

Intervalo de clase marca de

clase fi Fi hi[%] Hi[%]

-1 9 4 114 114 76.510067 76.510067

10 19 14.5 27 141 18.120805 94.630872

20 29 24.5 6 147 4.0268456 98.657718

30 39 34.5 0 147 0 98.657718

40 49 44.5 1 148 0.6711409 99.328859

50 59 54.5 0 148 0 99.328859

60 69 64.5 1 149 0.6711409 100

Acumulado 149 100

Tabla 24. Tabla de Distribución de Frecuencias. Fuente: Los autores.

Figura 30. Histograma y Polígono de Frecuencias. Fuente: Los autores.

Los resultados arrojan un promedio de 5.62, mediana de 1, moda de 0, valor

mínimo de 0 (Cuartil 0) y un valor máximo de 67 (Cuartil 4), lo que se evidencia en

los resultados obteniendo que aproximadamente el 75% de los datos se

encuentran con un acoplamiento de clases igual o inferior a 7 indicando la

independencia de la mayoría del código.

0

20

40

60

80

100

120

4 14.5 24.5 34.5 44.5 54.5 64.5

Histograma y Polígono de Frecuencias

Histograma

Polígono

Page 75: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

75

14. RESULTADOS

A continuación se muestran tabulados los resultados de algunas pruebas que se

realizaron en el aplicativo Bitácora.

14.1. RESULTADOS GENERALES.

Parámetro Valor

Memoria Uso de Memoria 5.2 [GB]

Disponibilidad 49%

Tráfico Entrante 100.1K[bits]

Saliente 110.3K[bits]

Disco C Inactividad 91.8%

Porcentaje Promedio Escritura 0.1%

Tabla 25. Resultados Tabulados Pruebas. Fuente: Autores

Parámetro Valor

N (Elementos de Red con Capacidad Infinita) 5

Tráfico Total 2.319999 [Erlangs]

Número de Usuarios 463

Tamaño Máximo por Archivo 12MB

Total Archivos Guardados 3333

Tabla 26. Resultados Análisis De Tráfico. Fuente: Autores.

14.2. ENCUESTA

Teniendo en cuenta que el aplicativo BITACORA se encuentra en ambiente

productivo desde el 02 de abril del 2018 con dos usuarios autorizados para el

registro y seguimiento de incidencias, se realizaron las siguientes preguntas para

analizar el nivel de satisfacción y funcionabilidad del aplicativo con respecto al

proceso:

A. Mida el nivel de satisfacción del uso del aplicativo BITACORA, con respecto

a tiempos de respuesta y disponibilidad de la información, siendo 1 el peor

5 el mejor.

Page 76: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

76

1. .

2. .

3. .

4. X (Usuario 1)

5. X (Usuario 2)

Observaciones: Se sugiere ajustar el campo de fechas para optimizar el registro

de incidencias.

B. Respecto al proceso del proyecto Agrario, ¿Cómo ha ayudado el aplicativo

BITACORA para reducir el número de incidentes?, siendo 1 nada y 5

mucho.

1. X (Usuario 1)

2. X (Usuario 2)

3. .

4. .

5. .

Observaciones: A la fecha no es posible realizar dicha medición ya que se

requiere tener un mayor tiempo el aplicativo en el ambiente productivo para

generar un informe de los incidentes recurrentes.

Page 77: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

77

CONCLUSIONES

o La información recogida con el levantamiento logró estandarizar y definir a

las distintas categorías que son necesarias para una selección eficiente de

la información, con esta información se logró el diseño de las categorías y

el diseño del FRONT de usuario para el registro de incidentes.

o Se logró implementar por completo la plataforma con FRONT, base de

datos, soporte de fallas que permiten el registro de datos, fallas con la

seguridad de la aplicación establecida por la empresa implementando el

método de encriptación SHA512 de Visual Studio siendo éste junto a

Microsoft Windows Server 2012 herramientas importantes para el desarrollo

exitoso del aplicativo ya que se contaba con la limitante del uso de software

licenciado y fueron proporcionados por la empresa.

o Con las pruebas de volumetría realizadas al servidor y a la plataforma en

generar se puede concluir que la evaluación de parámetros de calidad del

servicio y seguridad fue satisfactoria al igual que el análisis de tráfico

debido a los resultados arrojados.

o Por medio de las encuetas a los usuarios se determinó que el aplicativo ha

sido una buena herramienta para los mismos, debido a que cuentan con un

concepto favorable en cuanto a tiempos de respuestas y disponibilidad de

Page 78: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

78

la información además de la facilidad de registro y el fácil acceso a los

mismos.

REFERENCIAS BIBLIOGRÁFICAS

[1] PEDRAZA, L; HERNANDEZ, C; SALCEDO, O. Platform of Electronic Marketing

for Development of ICTs Application. IEEE, 2011.

[2] TOMYIM, J; POHTHONG, A. Requirements Change Management Based on

Object-Oriented Software Engineering with Unified Modeling Language. IEEE,

2016.

[3] JUTLA, D; BODOWIK, P; ALI, S. Engineering Privacy for Big Data Apps with

the Unified Modeling Language. IEEE, 2013.

[4] LAN, Y; LI, T. The Application of Unified Modeling Language in the

Performance Evaluation of R&D Staff. IEEE, 2012.

[5] REYES, N; CASTIBLANCO, A; PEDRAZA L. Desarrollo de un Sistema de

Información Para la Empresa Datecsa S.A. REDES DE INGENIERÍA, 2013.

[6] GIUSTO, D. 10 Consejos Para el Desarrollo Seguro de Aplicaciones [En Línea]. Disponible en <https://www.welivesecurity.com/la-es/2015/03/12/10-consejos-desarrollo-seguro-de-aplicaciones/> [7] PINCIROLI, F. Análisis de sistemas orientado a objetos: estado del arte. [En Línea]. Disponible en < http://ucongreso.edu.ar/grado/carreras/lsi/Introduccion_al_UML1.pdf>

[8] OWASP. Modelado de Amenazas. [En Línea]. Disponible en < https://www.owasp.org/index.php/Modelado_de_Amenazas#Introducci.C3.B3n > [9] OWASP. Modelado de Amenazas [En Línea]. Disponible en <https://www.owasp.org/index.php/Modelado_de_Amenazas> [10] UNIVERSIDAD INTERNACIONAL DE VALENCIA. ¿Qué es la seguridad informática y cómo puede ayudarme? [En Línea]. Disponible en: <https://www.universidadviu.es/la-seguridad-informatica-puede-ayudarme/>

Page 79: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

79

[11] Introducción a la Seguridad Informática. [En Línea]. Disponible en <https://es.ccm.net/contents/622-introduccion-a-la-seguridad-informatica> [12] CARDONA, J. SALCEDO, W. Análisis y evaluación de riesgos de seguridad

informática para la cámara de comercio de La Dorada, Puerto Boyacá, Puerto

Salgar y Municipios de Oriente de Caldas. Universidad Nacional Abierta y a

Distancia, 2017. [En Línea]. Disponible en <

http://repository.unad.edu.co/bitstream/10596/14418/1/10174106.pdf>

[13] ROMERO, L. Seguridad Informática, Conceptos Generales. Universidad de

Salamanca. [En Línea]. Disponible en: <

http://campus.usal.es/~derinfo/Activ/Jorn02/Pon2002/LARyALSL.pdf>

[14] BAADER, R. Seguridad de la Información. Universidad de Buenos Aires,

2018. [En Línea]. Disponible en: < https://www-

2.dc.uba.ar/materias/seginf/material/Clase01-Unidad1_vf.pdf>

[15] SORIANO, M. Seguridad en Redes y Seguridad de la Información. České

vysoké učení technické v Praze. [En Línea]. Disponible en: <

http://improvet.cvut.cz/project/download/C2ES/Seguridad_de_Red_e_Informacion.

pdf>

[16] GRUPO DE SEGURIDAD INFORMÁTICA. Seguridad Informática.

Universidad De La República Uruguay, 2018. [En Línea]. Disponible en: <

https://eva.fing.edu.uy/pluginfile.php/58016/mod_resource/content/6/FSI-2018-

IAA.pdf>

[17] UNIVERSIDAD INTERNACIONAL DE VALENCIA. ¿Qué es la seguridad informática y cómo puede ayudarme? [En Línea]. Disponible en: <https://www.universidadviu.es/la-seguridad-informatica-puede-ayudarme/> [18] TALENS-OLIANG, S. Seguridad en el Desarrollo de Aplicaciones. Escuela

Politécnica Superior, 2004. [En Línea]. Disponible en: <

https://www.uv.es/sto/charlas/SDA/SDA.pdf>

[19] UNIÓN INTERNACIONAL DE TELECOMUNICACIONES. La Seguridad de las

Telecomunicaciones y las Tecnologías de la Información, 2006.

[20] UNIÓN INTERNACIONAL DE TELECOMUNICACIONES. Serie G: Sistemas y Medios de Transmisión, Sistemas y Redes Digitales, 2001. Página 5. [21] MICROSOFT. Valores de Métricas de Código. [En Línea]. Disponible en

<https://msdn.microsoft.com/es-es/library/bb385914.aspx>

Page 80: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

80

[22] MICROSOFT. Introducción al Servidor Web IIS. [En Línea]. Disponible en

<https://msdn.microsoft.com/es-es/library/hh831725(v=ws.11).aspx>

[23] CACTIL [En Línea] Disponible en <https://www.cacti.net/what_is_cacti.php> [24] JMeter. Disponible en <https://jmeter.apache.org/>

[25] Norma ISO 25000. Calidad Del Producto Software. [En Línea]. Disponible En

<http://iso25000.com/index.php/normas-iso-25000/10-iso-iec-2503n>

[26] Guía 02. ISO 25000. Calidad del Producto Software. [En Línea]. Disponible en

<http://artemisa.unicauca.edu.co/~cardila/CS_02_Calidad_Producto_SW__ISO_25

000__2017.pdf>

[27] NIELSEN, J. Designing Web Usability. 2001. [En Línea]. Disponible en

<https://es.slideshare.net/webconomia/jakob-nielsen-usabilidad>

Page 81: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

81

ANEXOS

Anexo 1: MANUAL DE USUARIO

BITACORA, su herramienta On-Line que le permite realizar el reporte de

inconsistencias de alto impacto que afecta la operación del proyecto Banco

Agrario relacionadas a despliegues, inconvenientes con el volumen activo, entre

otras.

¿Cómo acceder a BITACORA?

Acceda a la URL http://BITACORA/Login.aspx desde el navegador de su

preferencia y a continuación digite su usuario y contraseña de SIGDOC,

Una vez ingresado su usuario y contraseña, podrá visualizar el menú principal

donde podrá Consultar, Reportar la inconsistencia o Reportar la Solución

correspondiente, para cada una de las opciones se profundizara a lo largo del

presente manual:

Page 82: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

82

1. Reporte inconsistencias

Para reportar la inconsistencia presentada se debe dar click en la opción

“REPORTAR INCONSISTENCIA” y después se le da click en el botón ACEPTAR,

como se muestra a continuación:

El siguiente menú se visualizara una vez realizada la acción anterior:

Page 83: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

83

Para reportar la inconsistencia presentada se cuenta con las siguientes opciones

de selección:

FECHA INICIO: Fecha en la que se empezó a presentar la inconsistencia:

CATEGORÍA: Se cuentan con las siguientes categorías de acuerdo a los

inconvenientes que se presentan con mayor frecuencia en el proyecto Banco

Agrario:

Descripción categoría

Lentitud SIGDOC

Indisponibilidad SIGDOC

Visualización de imágenes SIGDOC

Cambio de Vol.

Rollback

Lentitud COBIS

Indisponibilidad COBIS

Actualización COBIS

Soporte correo electrónico

Fallas de red

Lentitud GLPI

Indisponibilidad GLPI

Inconsistencia GLPI

AREA ENCARGADA: En este campo se seleccionada el área responsable de la

inconsistencia presentada, se cuenta con las siguientes áreas:

Page 84: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

84

Descripción área

Mesa de servicios

Soporte Infraestructura

Infraestructura

Banco

Implementación

Mesa de servicios MTI

Descripción: en este campo se debe escribir de manera detallada un resumen de

la inconsistencia que se está presentando.

NOTA: Para registrar el inconveniente con éxito se deben diligenciar todos los

campos.

Una vez diligenciados todos los campos se le da click en el botón GUARDAR Y

CONTINUAR, y se mostrara el número de la inconsistencia reportada, como se

visualiza a continuación:

Page 85: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

85

Se le da click en el botón aceptar, y esto lo retornara al menú principal.

1.1. Guardar y reportar solución

El aplicativo BITACORA cuenta con la opción de guardar la inconsistencia y

reportar la solución correspondiente, desde la página de Reportar inconsistencia,

como se muestra a continuación:

Una vez dado click en el botón “Guardar y reportar solución”, lo enviara a la página

de reporte solución, indicando el número de incidente y la descripción del mismo:

Page 86: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

86

Para reportar la solución se cuentan con los siguientes ítems:

FECHA DE SOLUCIÓN: Fecha en la que se dio solución a la inconsistencia

presentada.

PERSONA ASIGNADA: Persona encargada de solucionar el inconveniente

reportado. En este caso se visualizan los líderes de cada área.

DESCRIPCIÓN: Una breve descripción de cómo se solucionó el inconveniente

presentado.

Para finalizar se da click en el botón ACEPTAR.

Page 87: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

87

NOTA: Tener en cuenta que se deben completar la totalidad de campos para

reportar la solución con éxito.

Page 88: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

88

2. Reporte solución

Para reportar la solución de una inconsistencia ya reportada se debe dar click en

la opción “REPORTAR INCONSISTENCIA” y después se le da click en el botón

ACEPTAR, como se muestra a continuación:

El siguiente menú se visualizara una vez realizada la acción anterior:

Para reportar la solución se consulta por un número de incidente y se da click en

el botón aceptar que se encuentra, como se muestra a continuación:

Page 89: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

89

Si se encuentra con información de dicho incidente, se va a mostrar la descripción

del inconveniente, la categoría, el área encargada y la fecha en que se reportó:

NOTA: En caso tal que no exista el número de incidente se va a mostrar un

mensaje indicando que se valide este número de incidente.

Como se había mencionado anteriormente en el inciso 1.1 Guardar y reportar

Solución, para reportar la solución se cuentan con los siguientes ítems:

FECHA DE SOLUCIÓN: Fecha en la que se dio solución a la inconsistencia

presentada.

PERSONA ASIGNADA: Persona encargada de solucionar el inconveniente

reportado. En este caso se visualizan los líderes de cada área.

DESCRIPCIÓN: Una breve descripción de cómo se solucionó el inconveniente

presentado.

Para finalizar se da click en el botón ACEPTAR.

Page 90: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

90

NOTA: Tener en cuenta que se deben completar la totalidad de campos para

reportar la solución con éxito.

3. Consulta

Para realizar una consulta desde el aplicativo “BITACORA”, se debe dar click en la

opción Consultar, después en el botón ‘ACEPTAR’:

El siguiente menú se visualizara una vez realizada la acción anterior:

Page 91: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

91

Como se puede visualizar se cuenta con las siguientes opciones, para realizar una

consultar:

* Consultar por nro. de la novedad reportada.

* Consultar por categoría.

* Consultar por fecha de creación.

* Consultar por fecha de creación y por categoría.

A continuación se detallara la manera correcta en la que se deben realizar las

consultas de acuerdo a la opción seleccionada:

3.1. Consulta por inconsistencia

Para realizar la consulta por el número de la inconsistencia, se da click en la

opción “Nro. Novedad” se habilitara el label para ingresar el número de la

inconsistencia, una vez realizado esto se da click en el botón aceptar:

Page 92: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

92

NOTA: Tener en cuenta que una vez seleccionada dicha opción, no se permitirá

escoger la opción por categoría o fecha de creación.

El resultado obtenido se muestra a continuación:

En esta página se cuenta con la opción de extraer la información, solamente se

debe dar click en el botón “EXTRAER INFORMACIÓN”, automáticamente se

descargara un archivo con el nombre Export con extensión XLS.

Page 93: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

93

NOTA: Para las opciones de consulta de Categoría y/o fecha se podrá descargar

la información de la misma manera.

3.2. Consulta por categoría

Para realizar la consulta por las categorías de las inconsistencias, se da click en la

opción “Categoría” se habilitara un menú desplegable con las categorías que ya se

han mencionado con anterioridad, una vez seleccionada la categoría se da click

en el botón aceptar:

NOTA: Una vez seleccionada la opción de categoría se podrá escoger la fecha de

creación, pero quedara inactiva la opción de “Nro. Novedad”.

El resultado obtenido se puede visualizar a continuación:

Page 94: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

94

Para extraer la información, se siguen los pasos mencionados en el inciso 3.1.

Consulta por inconsistencia.

3.3. Consulta por fecha de creación

Para realizar la consulta por un rango de fecha de creación, se da click en la

opción “Fecha de creación” se habilitara la opción para escoger el rango de las

fechas, una vez seleccionada las dos fechas se da click en el botón aceptar:

NOTA: Una vez seleccionada la opción de fecha de creación se podrá escoger la

categoría, pero quedara inactiva la opción de “Nro. Novedad”.

El resultado obtenido se puede visualizar a continuación:

Page 95: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

95

Para extraer la información, se siguen los pasos mencionados en el inciso 3.1.

Consulta por inconsistencia.

3.4. Consulta por fecha/categoría

Para realizar la consulta por un rango de fecha de creación y una categoría, se da

click en la opción “Fecha de creación” se habilitara la opción para escoger el rango

de las fechas, adicional se da click en la opción Categoría; una vez seleccionada

la categoría y las dos fechas se da click en el botón aceptar:

NOTA: Una vez seleccionada la opción de categoría y de fecha de creación,

quedara inactiva la opción de “Nro. Novedad”.

Page 96: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

96

El resultado obtenido se puede visualizar a continuación:

Para extraer la información, se siguen los pasos mencionados en el inciso 3.1.

Consulta por inconsistencia.

NOTA: Para cualquier opción seleccionada para consultar se deben diligenciar

todos los campos que se habiliten de lo contrario no podrá continuar con la

consulta requerida.

Page 97: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

97

Anexo 2: Modelo DREAD

Page 98: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

98

Anexo 3: Configuración JMeter

Para la configuración del Jmeter se realizan los siguientes pasos:

1. Se descarga el Jmeter desde la página:

https://jmeter.apache.org/

2. Se descomprime el archivo descargado.

3. En la carpeta obtenida se busca el archivo jmeter.bat en la ruta

\apache-jmeter-2.13\bin

4. Cuando se ejecuta el archivo, se abre el programa Jmeter

5. Para generar la grabación de las pruebas que se van a realizar sobre el

aplicativo (Bitácota) y ejecutarla desde el Jmeter se debe instalar la

extensión BlazeMeter en el navegador (Preferiblemente Google Chrome).

6. Después de inscribirse en la página de BlazeMeter e instalar la extensión

en el navegador ya se puede realizar la grabación correspondiente del

aplicativo. Como se muestra a continuación:

Page 99: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

99

7. Una vez terminada la grabación se extrae un archivo .jmx

8. El archivo .jmx se abre en el aplicativo Jmeter y ahí se mostraran los pasos

realizados en la grabación como un grupo de hilos, para ejecutar estos

pasos se da click sobre el botón arrancar:

9. Los resultados obtenidos se pueden visualizar como árbol de resultados y/o

generar un reporte resumen (entre otras opciones), como se muestra a

continuación:

Page 100: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

100

Page 101: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

101

Anexo 4: Métricas de Código

# Ámbito Espacio de nombres

Tipo Miembro Índice de

mantenimiento Acoplamiento de

clases

1 Proyecto

73 67

2 Espacio de nombres

BITACORA

61 47

3 Tipo BITACORA Consulta

57 23

4 Miembro BITACORA Consulta Button1_Click(object, EventArgs) : void 77 3

5 Miembro BITACORA Consulta Button2_Click(object, EventArgs) : void 83 5

6 Miembro BITACORA Consulta Button3_Click(object, EventArgs) : void 77 3

7 Miembro BITACORA Consulta Button4_Click(object, EventArgs) : void 83 5

8 Miembro BITACORA Consulta Button5_Click(object, EventArgs) : void 31 14

9 Miembro BITACORA Consulta Button6_Click(object, EventArgs) : void 88 3

10 Miembro BITACORA Consulta Calendar1_SelectionChanged(object,

EventArgs) : void 73 6

11 Miembro BITACORA Consulta Calendar2_SelectionChanged(object,

EventArgs) : void 73 6

12 Miembro BITACORA Consulta CheckBox1_Click(object, EventArgs) : void 65 4

13 Miembro BITACORA Consulta CheckBox2_Click(object, EventArgs) : void 53 6

14 Miembro BITACORA Consulta CheckBox3_CheckedChanged(object,

EventArgs) : void 48 7

15 Miembro BITACORA Consulta Consulta() 100 1

16 Miembro BITACORA Consulta lb_CerrarSesion_Click(object, EventArgs) : void 73 5

17 Miembro BITACORA Consulta Page_Load(object, EventArgs) : void 55 11

18 Tipo BITACORA Inicio

68 12

19 Miembro BITACORA Inicio Button1_Click(object, EventArgs) : void 62 7

20 Miembro BITACORA Inicio Inicio() 100 1

21 Miembro BITACORA Inicio lb_CerrarSesion_Click(object, EventArgs) : void 73 5

22 Miembro BITACORA Inicio Page_Load(object, EventArgs) : void 62 7

23 Tipo BITACORA Login

63 18

24 Miembro BITACORA Login Button1_Click(object, EventArgs) : void 60 7

25 Miembro BITACORA Login Front(Class1) : void 50 13

26 Miembro BITACORA Login Login() 100 1

27 Miembro BITACORA Login Page_Load(object, EventArgs) : void 95 3

28 Tipo BITACORA ReporteI

nc 62 20

29 Miembro BITACORA ReporteI

nc Button1_Click(object, EventArgs) : void 77 3

30 Miembro BITACORA ReporteI

nc Button2_Click(object, EventArgs) : void 83 5

31 Miembro BITACORA ReporteI

nc Button3_Click(object, EventArgs) : void 51 13

32 Miembro BITACORA ReporteI

nc Button4_Click(object, EventArgs) : void 52 13

33 Miembro BITACORA ReporteI

nc Button5_Click(object, EventArgs) : void 88 3

34 Miembro BITACORA ReporteI

nc Calendar1_SelectionChanged(object,

EventArgs) : void 72 6

35 Miembro BITACORA ReporteI

nc lb_CerrarSesion_Click(object, EventArgs) : void 73 5

36 Miembro BITACORA ReporteI Page_Load(object, EventArgs) : void 51 11

Page 102: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

102

nc

37 Miembro BITACORA ReporteI

nc ReporteInc() 100 1

38 Tipo BITACORA ReporteS

ol 61 24

39 Miembro BITACORA ReporteS

ol Button1_Click(object, EventArgs) : void 77 3

40 Miembro BITACORA ReporteS

ol Button2_Click(object, EventArgs) : void 83 5

41 Miembro BITACORA ReporteS

ol Button3_Click(object, EventArgs) : void 47 11

42 Miembro BITACORA ReporteS

ol Button4_Click(object, EventArgs) : void 56 12

43 Miembro BITACORA ReporteS

ol Button5_Click(object, EventArgs) : void 88 3

44 Miembro BITACORA ReporteS

ol Calendar1_SelectionChanged(object,

EventArgs) : void 72 6

45 Miembro BITACORA ReporteS

ol lb_CerrarSesion_Click(object, EventArgs) : void 73 5

46 Miembro BITACORA ReporteS

ol Page_Load(object, EventArgs) : void 48 17

47 Miembro BITACORA ReporteS

ol ReporteSol() 100 1

48 Tipo BITACORA ResulCon

sul 53 28

49 Miembro BITACORA ResulCon

sul Button1_Click(object, EventArgs) : void 64 5

50 Miembro BITACORA ResulCon

sul Button2_Click(object, EventArgs) : void 45 19

51 Miembro BITACORA ResulCon

sul Button3_Click(object, EventArgs) : void 64 5

52 Miembro BITACORA ResulCon

sul lb_CerrarSesion_Click(object, EventArgs) : void 60 5

53 Miembro BITACORA ResulCon

sul Page_Load(object, EventArgs) : void 40 11

54 Miembro BITACORA ResulCon

sul ResulConsul() 100 1

55 Espacio de nombres

BITACORA.Class

86 29

56 Tipo BITACORA.Clas

s BitSoluci

on 93 1

57 Miembro BITACORA.Clas

s BitSoluci

on BitSolucion() 100 0

58 Miembro BITACORA.Clas

s BitSoluci

on DesSol.get() : string 98 0

59 Miembro BITACORA.Clas

s BitSoluci

on DesSol.set(string) : void 95 0

60 Miembro BITACORA.Clas

s BitSoluci

on FechaSol.get() : DateTime 98 1

61 Miembro BITACORA.Clas

s BitSoluci

on FechaSol.set(DateTime) : void 95 1

62 Miembro BITACORA.Clas

s BitSoluci

on idinconv.get() : int 98 0

63 Miembro BITACORA.Clas

s BitSoluci

on idinconv.set(int) : void 95 0

64 Miembro BITACORA.Clas

s BitSoluci

on Idres.get() : int 98 0

65 Miembro BITACORA.Clas

s BitSoluci

on Idres.set(int) : void 95 0

66 Miembro BITACORA.Clas

s BitSoluci

on IdSol.get() : int 98 0

67 Miembro BITACORA.Clas

s BitSoluci

on IdSol.set(int) : void 95 0

Page 103: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

103

68 Tipo BITACORA.Clas

s Busqued

a 93 1

69 Miembro BITACORA.Clas

s Busqued

a Area.get() : string 98 0

70 Miembro BITACORA.Clas

s Busqued

a Area.set(string) : void 95 0

71 Miembro BITACORA.Clas

s Busqued

a Busqueda() 100 0

72 Miembro BITACORA.Clas

s Busqued

a Categoría.get() : string 98 0

73 Miembro BITACORA.Clas

s Busqued

a Categoría.set(string) : void 95 0

74 Miembro BITACORA.Clas

s Busqued

a Descripción.get() : string 98 0

75 Miembro BITACORA.Clas

s Busqued

a Descripción.set(string) : void 95 0

76 Miembro BITACORA.Clas

s Busqued

a DescripciónSolución.get() : string 98 0

77 Miembro BITACORA.Clas

s Busqued

a DescripciónSolución.set(string) : void 95 0

78 Miembro BITACORA.Clas

s Busqued

a FechaFin.get() : string 98 0

79 Miembro BITACORA.Clas

s Busqued

a FechaFin.set(string) : void 95 0

80 Miembro BITACORA.Clas

s Busqued

a FechaInicial.get() : DateTime 98 1

81 Miembro BITACORA.Clas

s Busqued

a FechaInicial.set(DateTime) : void 95 1

82 Miembro BITACORA.Clas

s Busqued

a FechaInicial2.get() : DateTime 98 1

83 Miembro BITACORA.Clas

s Busqued

a FechaInicial2.set(DateTime) : void 95 1

84 Miembro BITACORA.Clas

s Busqued

a NroInconveniente.get() : int 98 0

85 Miembro BITACORA.Clas

s Busqued

a NroInconveniente.set(int) : void 95 0

86 Miembro BITACORA.Clas

s Busqued

a Responsable.get() : string 98 0

87 Miembro BITACORA.Clas

s Busqued

a Responsable.set(string) : void 95 0

88 Tipo BITACORA.Clas

s Class1

94 0

89 Miembro BITACORA.Clas

s Class1 autorizado.get() : string 98 0

90 Miembro BITACORA.Clas

s Class1 autorizado.set(string) : void 95 0

91 Miembro BITACORA.Clas

s Class1 cadena.get() : string 98 0

92 Miembro BITACORA.Clas

s Class1 cadena.set(string) : void 95 0

93 Miembro BITACORA.Clas

s Class1 Class1() 100 0

94 Miembro BITACORA.Clas

s Class1 usuario.get() : string 98 0

95 Miembro BITACORA.Clas

s Class1 usuario.set(string) : void 95 0

96 Tipo BITACORA.Clas

s Connecti

on 50 29

97 Miembro BITACORA.Clas

s Connecti

on Connection() 100 0

98 Miembro BITACORA.Clas

s Connecti

on ConnectionBitacora() : SqlConnection 60 4

99 Miembro BITACORA.Clas

s Connecti

on ConnectionManagerUser() : SqlConnection 60 4

Page 104: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

104

100 Miembro BITACORA.Clas

s Connecti

on Consult(Busqueda) : IList<Busqueda> 50 17

101 Miembro BITACORA.Clas

s Connecti

on Consult1(Busqueda) : List<Busqueda> 50 16

102 Miembro BITACORA.Clas

s Connecti

on Consult11(Busqueda) : List<Busqueda> 50 17

103 Miembro BITACORA.Clas

s Connecti

on Consult12(Busqueda) : List<Busqueda> 49 17

104 Miembro BITACORA.Clas

s Connecti

on Fecha(Busqueda) : bool 52 12

105 Miembro BITACORA.Clas

s Connecti

on FechaCateg(Busqueda) : bool 52 12

106 Miembro BITACORA.Clas

s Connecti

on GetArea() : IList<Criterios> 52 17

107 Miembro BITACORA.Clas

s Connecti

on GetCriterios() : IList<Criterios> 52 17

108 Miembro BITACORA.Clas

s Connecti

on GetResponsable() : IList<Criterios> 52 17

109 Miembro BITACORA.Clas

s Connecti

on GetSolucion(Solucion) : IList<Solucion> 51 17

110 Miembro BITACORA.Clas

s Connecti

on IdCateg(Criterios) : bool 53 11

111 Miembro BITACORA.Clas

s Connecti

on IdInc(Criterios) : bool 53 11

112 Miembro BITACORA.Clas

s Connecti

on IdSol(Criterios) : bool 53 11

113 Miembro BITACORA.Clas

s Connecti

on LoginUser(Class1) : bool 33 19

114 Miembro BITACORA.Clas

s Connecti

on ReporteInc(Criterios) : int 55 7

115 Miembro BITACORA.Clas

s Connecti

on ReporteSol(BitSolucion) : void 55 9

116 Tipo BITACORA.Clas

s Criterios

93 1

117 Miembro BITACORA.Clas

s Criterios Area.get() : string 98 0

118 Miembro BITACORA.Clas

s Criterios Area.set(string) : void 95 0

119 Miembro BITACORA.Clas

s Criterios Criterios() 100 0

120 Miembro BITACORA.Clas

s Criterios Descategoria.get() : string 98 0

121 Miembro BITACORA.Clas

s Criterios Descategoria.set(string) : void 95 0

122 Miembro BITACORA.Clas

s Criterios DesInconv.get() : string 98 0

123 Miembro BITACORA.Clas

s Criterios DesInconv.set(string) : void 95 0

124 Miembro BITACORA.Clas

s Criterios FechIni.get() : DateTime 98 1

125 Miembro BITACORA.Clas

s Criterios FechIni.set(DateTime) : void 95 1

126 Miembro BITACORA.Clas

s Criterios IdArea.get() : int 98 0

127 Miembro BITACORA.Clas

s Criterios IdArea.set(int) : void 95 0

128 Miembro BITACORA.Clas

s Criterios Idcategoria.get() : int 98 0

129 Miembro BITACORA.Clas

s Criterios Idcategoria.set(int) : void 95 0

130 Miembro BITACORA.Clas

s Criterios Idinconv.get() : string 98 0

131 Miembro BITACORA.Clas

s Criterios Idinconv.set(string) : void 95 0

Page 105: DESARROLLO DE UN APLICATIVO PARA EL …repository.udistrital.edu.co/bitstream/11349/13395/2/...4 Resumen El presente trabajo, es el desarrollo de un aplicativo enfocado en el control

105

132 Miembro BITACORA.Clas

s Criterios IdResponsable.get() : int 98 0

133 Miembro BITACORA.Clas

s Criterios IdResponsable.set(int) : void 95 0

134 Miembro BITACORA.Clas

s Criterios Login.get() : string 98 0

135 Miembro BITACORA.Clas

s Criterios Login.set(string) : void 95 0

136 Miembro BITACORA.Clas

s Criterios Responsable.get() : string 98 0

137 Miembro BITACORA.Clas

s Criterios Responsable.set(string) : void 95 0

138 Tipo BITACORA.Clas

s Solucion

93 1

139 Miembro BITACORA.Clas

s Solucion Área.get() : string 98 0

140 Miembro BITACORA.Clas

s Solucion Área.set(string) : void 95 0

141 Miembro BITACORA.Clas

s Solucion Categoría.get() : string 98 0

142 Miembro BITACORA.Clas

s Solucion Categoría.set(string) : void 95 0

143 Miembro BITACORA.Clas

s Solucion Descripción.get() : string 98 0

144 Miembro BITACORA.Clas

s Solucion Descripción.set(string) : void 95 0

145 Miembro BITACORA.Clas

s Solucion Fecha.get() : DateTime 98 1

146 Miembro BITACORA.Clas

s Solucion Fecha.set(DateTime) : void 95 1

147 Miembro BITACORA.Clas

s Solucion NroIncidente.get() : int 98 0

148 Miembro BITACORA.Clas

s Solucion NroIncidente.set(int) : void 95 0

149 Miembro BITACORA.Clas

s Solucion Solucion() 100 0