• No se han encontrado resultados

Aplicación web basada en HTML5, para la gestión documental de la Universidad Regional Autónomas de Los Andes "Uniandes", Extensión - Puyo

N/A
N/A
Protected

Academic year: 2020

Share "Aplicación web basada en HTML5, para la gestión documental de la Universidad Regional Autónomas de Los Andes "Uniandes", Extensión - Puyo"

Copied!
141
0
0

Texto completo

(1)

UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES

“UNIANDES”

FACULTAD DE SISTEMAS MERCANTILES

PROGRAMA DE MAESTRIA EN INFORMATICA EMPRESARIAL

PROYECTO DE INVESTIGACION PREVIO A LA OBTENCION DEL GRADO

ACADÉMICO DE MAGISTER EN INFORMATICA EMPRESARIAL

TEMA:

APLICACIÓN WEB BASADA EN HTML5, PARA LA GESTIÓN DOCUMENTAL

DE LA UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES

“UNIANDES” EXTENSIÓN – PUYO.

AUTOR:

ING. VELASTEGUI CORDOVA MIGUEL EDUARDO

ASESORES:

ING. FERNANDEZ VILLACRES GUSTAVO EDUARDO, MSC

ING. MARTINEZ CAMPAÑA CARLOS EDUARDO, MSC

(2)

APROBACION DE LOS ASESORES DEL TRABAJO DE TITULACION

CERTIFICACION:

Quiénes suscriben, legalmente CERTIFICAN QUE: El presente Trabajo de Titulación realizado por el estudiante Sr. Miguel Eduardo Velastegui Córdova, estudiante del programa “Maestría en Informática Empresarial”, con el tema “APLICACIÓN WEB BASADA EN HTML5, PARA LA GESTIÓN DOCUMENTAL DE LA UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES “UNIANDES” EXTENSIÓN – PUYO.”, ha sido revisado prolijamente, y cumple con todos los requisitos establecidos en la normativa pertinente de la Universidad Regional Autónoma de los Andes – UNIANDES-, por lo que aprueba su presentación:

Ambato, Junio del 2017

Ing. Eduardo Fernández, Mg Ing. Carlos Martínez, Mg.

(3)

DECLARACION DE AUTENTICIDAD

Yo, Miguel Eduardo Velastegui Córdova, estudiante de la Facultad de Sistemas Mercantiles, Programa “Maestría en Informática Empresarial”, declaro que todos los resultados obtenidos en el presente trabajo de investigación, previo a la obtención del grado académico “Magister en Informática Empresarial”, son absolutamente originales, auténticos y personales; a excepción de las citas, por lo que son de mi exclusiva responsabilidad.

Ambato, Junio del 2017

Ing. Miguel Eduardo Velastegui Córdova CI. 0502020399

(4)

DERECHOS DE AUTOR

Yo, MIGUEL EDUARDO VELASTEGUI CÓRDOVA, declaro que conozco y acepto la disposición constante en el literal d) del Art. 85 del Estatuto de la Universidad Regional Autónoma de Los Andes, que en su parte pertinente textualmente dice: El Patrimonio de la UNIANDES, está constituido por: La propiedad intelectual sobre la Investigaciones, trabajos científicos o técnicos, proyectos profesionales y consultoría que se realicen en la Universidad o por cuenta de ella.

Ambato, Junio del 2017

Ing. Miguel Eduardo Velastegui Córdova CI. 0502020399

(5)

DEDICATORIA

Este trabajo de investigación va dedicado a todas las personas que han hecho posible su realización; principalmente a Dios y mi familia por estar siempre presentes en cada instante de mi vida, apoyándome y dándome fuerzas en los momentos más difíciles de todo este proceso investigativo. A mis compañeros de estudio, ya que con ellos compartimos momentos importantes de nuestras vidas desde el inicio hasta el fin de este programa de Maestría. A mis docentes que supieron impartir sus conocimientos de una forma muy profesional, y a mi querida Institución que ha permitido forjarme tanto Académica como profesionalmente.

(6)

AGRADECIMIENTO

Primeramente quiero expresar mi profundo agradecimiento a Dios y a mis padres que desde el cielo siempre guían e iluminan mi camino, y han permito hacer realidad este sueño tan anhelado.

A mi querida esposa, y a mis hijos por apoyarme en todo momento, sabiendo comprender el tiempo que he dedicado a este proyecto.

A mis docentes del programa de Maestría en Informática Empresarial, ya que sus conocimientos transmitidos han sido muy valiosos e importantes, para mi formación personal y profesional.

A mis queridas autoridades Dra. Corona Gómez, PhD e Ing. Gustavo Álvarez, PhD. quienes han sabido orientarme profesionalmente y apoyarme en todo momento; principalmente durante este proceso investigativo, a quienes admiro y respeto.

A mis tutores de tesis Ing. Carlos Martínez e Ing. Eduardo Fernández, maestros formadores, quienes han puesto todo su contingente, para apoyarme en la realización de este trabajo de titulación con mucho esmero y dedicación.

(7)

RESUMEN

(8)

ABSTRACT

This research bases on developing a web application on HTML5 in order to improve document management processes at Uniandes University in Puyo city. This research has gotten a quali-quantitative and theoretical-practical approach. It was given imporatance to limiting principles found at the document manament department on the mentioned university.

The problem statement was identified and it was also inferred that record and document processes had been handled in a tradition way due to the fact that there is no evidence of software to control and manage information and results. It is important to mention that in the theoretical framework it is stated the important data of reliable authors who mention information about the variables within this research. It was highlighted the importance that information and technology have got today; furthermore, it was suggested a solution in order to improve management processes in the enterprise. Regarding to the methodology, one would say that this research based on research methods, techniques and instruments which allowed to the collection of data. In addition, the methodology applied in this research led to meet the real situation of the enterprise and to set a proposal. There is also presented a chapter in which the proposal is displayed and it basically describes the structure of the Web application, it uses a fast methodology called (RAD); moreover, it has state of the art technology. Consequently, document management processes will be improved at different departments in Unianedes

University. Time willbe optimized

because process and procudres will be deliverd on

(9)

INDICE GENERAL

Contenido Pág.

APROBACION DE LOS ASESORES DEL TRABAJO DE TITULACION DECLARACION DE AUTENTICIDAD

DERECHOS DE AUTOR DEDICATORIA

AGRADECIMIENTO RESUMEN

ABSTRACT

INDICE GENERAL INDICE DE TABLAS INDICE DE FIGURAS

INTRODUCCION ... 1

Antecedentes de la Investigación ... 1

Estado del Arte ... 3

Actualidad e importancia del tema ... 4

Formulación del problema ... 5

Delimitación del problema ... 5

Objeto de investigación y campo de acción ... 5

Identificación de la línea de Investigación ... 5

Objetivo General ... 5

Objetivos Específicos ... 6

Idea a defender ... 6

Justificación del tema ... 6

CAPITULO I. MARCO TEORICO... 7

1.1. Origen y evolución del objeto de investigación ... 7

1.2. Análisis de las distintas posiciones teóricas sobre el objeto de investigación ... 9

1.2.1. Aplicaciones Web ... 9

1.2.2. Servidor web ... 9

1.2.3 Seguridad y autenticación ... 10

1.2.4 Contenido Dinámico ... 10

1.2.5 Servidores Virtuales ... 11

1.2.5.1 Prestaciones Extra ... 11

1.2.6. Html5 ... 13

(10)

1.2.7.1. Abstracción de Datos ... 14

1.2.8. Modelos de los datos ... 15

1.2.8.1 Modelo Entidad Relación ... 15

1.2.8.2 Modelo relacional ... 15

1.2.8.3 Modelo de datos Orientado a Objetos ... 16

1.2.9. Usuarios y Administradores de la base de datos... 16

1.2.10. Interfaces de usuario y herramientas ... 17

1.2.11. Formularios e interfaces gráficas de usuario ... 18

1.2.12. Generadores de informes ... 19

1.2.13. Seguridad y Autorización ... 19

1.2.14. Violaciones de la seguridad ... 20

1.2.15. La seguridad de las bases de datos ... 20

1.2.16. Sistema de Gestión de Bases de datos (SGBD) ... 21

1.2.17. Tendencias actuales ... 22

1.2.18. Metodología de desarrollo de software ... 23

1.1.18.1. Metodología de Desarrollo RAD (Rapid Application Development) ... 24

1.2.19. Herramientas de Desarrollo ... 26

1.2.19.1 Lenguajes de programación ... 26

1.2.19.2 Lenguaje PHP ... 26

1.2.19.3 MySql ... 28

1.2.19.4 Java ... 29

1.2.19.5 Hojas de Estilo en Cascada (CSS 3) ... 30

1.2.19.6. Framework Codelgniter ... 30

1.2.19.7. Dreamweaver CS6 ... 31

1.2.20. Sistemas de gestión Documental ... 32

1.2.20.1. Entornos de trabajo en la empresa ... 33

1.2.20.2. Sistemas administrativos versus sistemas documentales ... 33

1.2.20.3. Puesta en marcha de un sistema de gestión documental... 34

1.2.20.4. Ventajas que produce La implementación de la gestión documental .... 34

1.3. Valoración crítica de los conceptos principales de las distintas posiciones teóricas sobre el objeto de investigación ... 35

1.4. Conclusiones parciales del capítulo ... 36

CAPITULO II. MARCO METODOLOGICO Y PLANTEAMIENTO DE LA PROPUESTA ... 37

(11)

2.2. Descripción del procedimiento metodológico para el desarrollo de la

investigación (que conducen al resultado que da solución al problema planteado) . 37

2.2.1 Población y muestra ... 39

2.2.2. Análisis e interpretación de los resultados ... 40

2.2.2.1 Resultados de encuesta aplicada a Estudiantes, Docentes y Funcionarios ... 40

2.2.2.2 Resultados de entrevista aplicada a un Directivo de la Universidad ... 49

2.3. Propuesta del investigador: modelo, sistema, metodología, procedimiento, entre otros, que realice el investigador ... 50

2.4. Conclusiones parciales del capítulo ... 51

CAPITULO III. VALIDACION Y/O EVALUACION DE LOS RESULTADOS DE LA APLICACIÓN ... 52

3.1 Modelo, Sistema, Metodología, procedimiento de la aplicación de resultados de la investigación ... 52

3.1.1. Tema ... 52

3.1.2. Objetivos ... 52

3.1.3. Selección de la metodología ... 53

3.1.4. Especificación de requisitos (ERS) ... 54

3.1.4.1. Introducción ... 54

3.1.4.2. Propósito ... 55

3.1.4.3. Alcance ... 55

3.1.4.4. Personal involucrado ... 55

3.1.4.5. Definiciones, acrónimos y abreviaturas ... 56

3.1.4.6. Referencias ... 57

3.1.4.7. Resumen ... 57

3.1.4.8. Restricciones ... 57

3.1.4.9. Suposiciones y dependencias ... 58

3.1.4.10. Requerimientos Funcionales ... 58

3.1.4.11. Requerimientos no funcionales. ... 64

3.1.4.11.1 Requisitos de Desempeño. ... 64

3.1.4.11.2. Requisitos de Seguridad ... 64

3.1.4.11.3. Requisitos de Fiabilidad ... 65

3.1.4.11.4. Requisitos de Disponibilidad ... 66

3.1.4.11.5. Requisitos de Mantenibilidad ... 66

3.1.4.11.6. Requisitos de Portabilidad ... 67

3.1.5. Etapa de Diseño ... 68

(12)

3.1.5.2. Características de los usuarios ... 68

3.1.5.3. Funcionalidad del producto ... 69

3.1.5.3.1. Diagramas de casos de uso ... 70

3.1.5.3.2. Diagrama de Secuencias ... 72

3.1.5.4. Diseño lógico de la Base de Datos ... 73

3.1.5.5. Diseño físico de la Base de Datos ... 74

3.1.5.6 Diccionario de Datos ... 75

3.1.5.7. Interfaces de usuario... 78

3.1.5.8. Interfaces de hardware ... 83

3.1.5.9. Interfaces de software ... 83

3.1.5.10. Interfaces de comunicación ... 83

3.1.6. Etapa de Construcción ... 84

3.1.6.1. Herramientas de desarrollo y Lenguajes de Programación ... 84

3.1.6.2. Pruebas del sistema... 99

3.1.7. Etapa de Implementación ... 101

3.1.7.1. Validación a través de Experto ... 111

3.2. Análisis de los resultados finales de la investigación ... 113

3.3. Conclusiones parciales del capítulo ... 114

CONCLUSIONES GENERALES:... 115

RECOMENDACIONES: ... 116

BIBLIOGRAFÍA Y REFERENCIAS BIBLIOGRAFICAS ... 117

(13)

INDICE DE TABLAS

Tabla 1 Clasificación de las Metodologías de desarrollo de Software ... 23

Tabla 2 Características de PHP ... 27

Tabla 3 Características de MYSQL ... 29

Tabla 4 Características de JAVA ... 30

Tabla 5 Características generales de Codelgniter ... 31

Tabla 6 Características Generales de Dreamweaver CS6 ... 32

Tabla 7 Población General Uniandes Puyo ... 39

Tabla 8 Tabulación Primera Pregunta ... 40

Tabla 9 Tabulación Segunda Pregunta ... 41

Tabla 10 Tabulación Tercera Pregunta ... 42

Tabla 11 Tabulación Cuarta Pregunta ... 43

Tabla 12 Tabulación Quinta Pregunta ... 44

Tabla 13 Tabulación Sexta Pregunta ... 45

Tabla 14 Tabulación Séptima Pregunta ... 46

Tabla 15 Tabulación Octava Pregunta ... 47

Tabla 16 Tabulación Novena Pregunta ... 48

Tabla 17 Rol Analista, diseñador, programador ... 55

Tabla 18 Rol Secretaria Académica ... 56

Tabla 19 Rol Asistente de Recursos Humanos ... 56

Tabla 20 Rol Asistente Financiera ... 56

Tabla 21 Rol Help Desk ... 56

Tabla 22 Definiciones, acrónimos y abreviaturas ... 56

Tabla 23 Referencias ... 57

Tabla 24 Requisitos Funcionales RF01 ... 58

Tabla 25 Requisitos Funcionales RF02 ... 58

Tabla 26 Requisitos Funcionales RF03 ... 59

Tabla 27 Requisitos Funcionales RF04 ... 59

Tabla 28 Requisitos Funcionales RF05 ... 60

Tabla 29 Requisitos Funcionales RF06 ... 60

Tabla 30 Requisitos Funcionales RF07 ... 61

Tabla 31 Requisitos Funcionales RF08 ... 61

Tabla 32 Requisitos Funcionales RF09 ... 62

Tabla 33 Requisitos Funcionales RF10 ... 62

Tabla 34 Requisitos Funcionales RF11 ... 63

(14)

Tabla 36 Requisitos de rendimiento ... 64

Tabla 37 Requisitos de Desempeño ... 64

Tabla 38 Requisitos de Nivel de Usuario ... 64

Tabla 39 Requisito Seguridad de la información ... 65

Tabla 40 Interfaz de usuario ... 65

Tabla 41 Diseño de la interfaz acorde a las características institucionales ... 65

Tabla 42 Disponibilidad de uso de la aplicación ... 66

Tabla 43 Requisito de Mantenimiento. ... 66

Tabla 44 Gestor de Ayuda. ... 67

Tabla 45 Requisito de Portabilidad ... 67

Tabla 46 Tipo de Usuario: Administrador ... 68

Tabla 47 Tipo de Usuario: Funcionario ... 68

Tabla 48 Tipo de Usuario: Estudiante ... 68

Tabla 49 Tipo de Usuario: Docente ... 68

Tabla 50 Tabla Docentes ... 75

Tabla 51 Tabla Alumnos ... 75

Tabla 52 Tabla Funcionarios ... 76

Tabla 53 Tabla Trámites ... 76

Tabla 54 Tabla Solicitantes ... 77

Tabla 55 Trámites_Solicitantes ... 77

Tabla 56 Tabla Responsables ... 77

Tabla 57 Tabla Usuarios ... 77

Tabla 58 Modelo de Mccall ... 111

Tabla 59 Evaluación de las Métricas de Calidad ... 112

(15)

INDICE DE FIGURAS

Figura 1 Funcionamiento de PHP ... 27

Figura 2 Representación gráfica - Primera Pregunta ... 40

Figura 3 Representación gráfica - Segunda Pregunta ... 41

Figura 4 Representación gráfica - Tercera Pregunta... 42

Figura 5 Representación gráfica - Cuarta Pregunta ... 43

Figura 6 Representación gráfica - Quinta Pregunta ... 44

Figura 7 Representación gráfica - Sexta Pregunta ... 45

Figura 8 Representación gráfica - Séptima Pregunta ... 46

Figura 9 Representación gráfica - Octava Pregunta ... 47

Figura 10 Representación gráfica - Novena Pregunta ... 48

Figura 11 Diagrama de Procesos de Gestión Documental ... 69

Figura 12 Diagrama de Casos de Uso Actor: Administrador ... 70

Figura 13 Diagrama de Casos de Uso Actor: Estudiante ... 70

Figura 14 Diagrama Caso de Uso Actor: Docente ... 71

Figura 15 Diagrama Caso de Uso Actor: Funcionario ... 71

Figura 16 Diagrama de Secuencias - Gestión Documental ... 72

Figura 17 Diagrama Entidad Relación ... 73

Figura 18 Diagrama Relacional Base de datos ... 74

Figura 19 Inicio de sesión al sistema de gestión documental ... 78

Figura 20 Menú Principal Sistema de Gestión Documental... 79

Figura 21 Interfaz de Usuario Registro de Alumnos ... 79

Figura 22 Interfaz de Usuario Estudiantes Registrados ... 80

Figura 23 Interfaz de usuario Registro de Docentes ... 80

Figura 24 Interfaz de usuario - Docentes registrados ... 81

Figura 25 Interfaz de usuario Registro de Funcionarios ... 81

Figura 26 Interfaz de usuario - Funcionarios Registrados ... 82

Figura 27 Interfaz Registro de Trámites ... 82

Figura 28 Pruebas Unitarias - Técnica Caja Blanca - Firebug. ... 99

Figura 29 Firebug. Extensión de Firefox para realizar pruebas a sitios web ... 100

Figura 30 Equipo Servidor de Base de Datos y Aplicaciones Web... 101

Figura 31 Inicio de Sesión de Usuarios SGD ... 103

Figura 32 Menú Principal Sistema de Gestión Documental... 104

Figura 33 Presentación Registro de Alumnos ... 104

Figura 34 Presentación Estudiantes Registrados ... 105

(16)

Figura 36 Presentación - Docentes registrados ... 106

Figura 37 Presentación - Registro de Funcionarios ... 106

Figura 38 Presentación - Funcionarios Registrados ... 107

Figura 39 Presentación - Registro de Trámites ... 107

Figura 40 Presentación- Trámites Realizados ... 108

Figura 41 Módulo de Consulta Trámites de Estudiantes ... 108

Figura 42 Módulo de búsqueda - trámites Estudiantes ... 109

Figura 43 Menú de Reportes de Trámites Realizados ... 109

Figura 44 Reportes Mensual de Trámites ... 110

(17)

1

INTRODUCCION

Antecedentes de la Investigación

Una vez que se ha procedido a realizar una investigación en la biblioteca y el repositorio digital de la Universidad Regional Autónoma de los Andes; se pueden encontrar varios aportes, que tienen relación a la presente investigación; los mismos que pueden servir como antecedentes, para el desarrollo de este trabajo investigativo.

Uno de ellos corresponde al tema “Aplicación web para la gestión de las prácticas pre-profesionales de la Carrera de Sistemas de la UNIANDES”, de autoría del Ing. Martínez Vargas Miguel Ángel, con fecha de publicación (26 de mayo del 2015); en donde se puede inferir que la investigación se basó en un estudio documental de todos los procesos académicos y técnicos sobre las prácticas pre profesionales de la carrera de Sistemas, mediante el paradigma “cuali–cuantitativo”, con sus respectivos métodos y técnicas de investigación. Para el desarrollo de la aplicación web utilizó la metodología XP en sus respectivas etapas de desarrollo. La arquitectura utilizada es “Cliente-Servidor” de tres capas con equilibrio de carga a nivel de la base de datos.

Del análisis realizado a la investigación que se enuncia; podemos deducir que con la implementación de la aplicación web, para el seguimiento de las prácticas pre-profesionales, se espera tener una mejor organización documental, sobre todos y cada uno de los procesos que desarrollan los estudiantes de la mencionada carrera en sus prácticas; y que más que todo la información ya almacenada y procesada, permitirá obtener los resultados que la carrera y la universidad necesitan en procesos posteriores.

Adicionalmente, se ha procedido a revisar varios repositorios digitales de otras universidades del país; destacando la tesis del Ing. “Tobar Chicaiza Diego Rodrigo”, con fecha de publicación (2014), cuyo tema es “Análisis, desarrollo e implementación de una aplicación Web orientada para el registro de órdenes de compra, clientes y productos para la empresa ferretería Tobar Nolivos Cía. Ltda.”, de la Pontificia Universidad Católica del Ecuador; en la que hace referencia a la automatización de los procesos mediante la utilización de la aplicación web.

(18)

2

aplicaciones web de código abierto; como lenguaje de programación “PHP”, JavaScript y como base de datos utilizó MySQL.

De esta manera se puede deducir que la aplicación web, a más de automatizar los procesos de la empresa; cuenta con interfaces amigables para los usuarios; no representan una inversión excesiva y facilitan la gestión tanto para clientes internos como externos.

En el contexto internacional, se han revisado varios trabajos investigativos relacionados a la presente investigación; destacando la tesis de grado de los señores Miguel Ángel Rojas Cabrejos y Guillermo Renato Sullca Padilla, de la Universidad Tecnológica del Perú, con fecha de publicación (junio del 2012); cuyo tema es el “Desarrollo de una Aplicación Web para el Registro de Historias Clínicas Electrónicas (HCE) para el Hospital Nacional Guillermo Almenara”; en donde se puede destacar que con la implementación de la aplicación web, al personal de salud y administrativo, les permitirá tomar mejores decisiones, ya que la aplicación se basa en estándares nacionales e internacionales.

En esta tesis se puede observar las etapas de análisis y diseño, en donde utilizan la metodología RUP en combinación con UML, para generar diagramas de casos de uso del negocio, casos de uso de la aplicación, diagramas de estado, diagramas de secuencia y diagramas de clases. En la etapa de desarrollo se puede observar la creación de un prototipo de la aplicación la misma que utiliza herramientas de desarrollo como php, ajax, el motor de base de datos es mysql.

Luego de haber realizado una revisión minuciosa en la biblioteca de universidad y varios repositorios digitales tanto a nivel nacional como internacional, hemos encontrado algunos temas relacionados a la presente investigación; en donde se destaca la importancia que tienen las aplicaciones web, para la gestión documental y procesamiento de la información de las distintas organizaciones o empresas donde se han implementado; permitiendo a funcionarios, empresarios o autoridades, tomar las mejores decisiones con los resultados que arrojan los reportes; a más de ello utilizan metodologías ágiles para su desarrollo y herramientas de código abierto, lo cual representa una mínima inversión con excelentes resultados.

(19)

3

Regional Autónoma de los Andes – Extensión Puyo; más por el contrario, existe suficiente información que contribuirá al desarrollo de esta investigación.

Estado del Arte

A partir de la década de los setenta, cuando se envió por primera vez un correo electrónico; se marca un hito en la historia, dando paso a la era digital, donde se rompen las barreras de la distancia, y la humanidad empieza a comunicarse desde cualquier parte del mundo sin ningún problema.

En ese contexto, hoy en día muchas de las empresas a nivel del mundo, ya cuentan con sistemas de gestión, portales de servicios y aplicaciones que operan en la web e inclusive aplicaciones móviles; facilitando el trabajo de las personas que laboran en ellas y obteniendo mejores resultados para las mismas. De la misma manera para los clientes y usuarios, las aplicaciones web han sido de mucha ayuda, ya que les permiten realizar varias gestiones o trámites desde la comodidad de su casa; y eso beneficia positivamente a la calidad en la atención que se brinda a los clientes.

Consecuentemente en nuestro país, desde hace pocos años atrás, se incluyó como política de estado, que toda la administración pública utilice herramientas informáticas de código abierto, y principalmente se ha incorporado sistemas de gestión en línea y aplicaciones web, que permitan manejar de una forma eficiente, toda la gestión documental de las instituciones públicas del País; tal es el caso de “los gobiernos por resultados (GPR)”, los “sistemas de gestión documental (Quipux)”, entre otros. Por su parte las instituciones y empresas privadas también han incorporado dentro de su infraestructura tecnológica, sistemas de gestión, portales informativos y de servicios, así como una diversidad de aplicativos que dan respuesta a múltiples necesidades tanto de clientes internos como externos, con inversiones acordes a las posibilidades de las empresas u organizaciones.

(20)

4

Adicionalmente a las actividades académicas que se imparte en la Extensión Puyo, también se realizan diversos tipos de trámites tanto estudiantiles como de docentes, egresados, aspirantes y comunidad en general, siendo estos atendidos por los propios funcionarios de la localidad, así como también de otros trámites que deben ser atendidos desde la matriz de la universidad.

En lo que respecta a gestión de los trámites, no se lleva un registro y control del estado de los mismos, siendo en ocasiones muy tardíos, lo cual ocasiona molestias en las personas que lo solicitan; por otro lado cuando se requiere algún reporte específico, no se pude obtener información inmediata, ya que al no existir un registro automatizado, es necesario recurrir al archivo físico y a la memoria de los funcionarios para proceder con lo solicitado.

Caso similar ocurre cuando un estudiante egresa de la institución y necesita que su titulación y registros en la Senescyt sea inmediato, no es posible ya que al combinar trámites locales, más los trámites de la matriz retrasan lo planificado y lógicamente eso ocasiona un problema con el estudiante y sus posibilidades laborales que pudo haber tenido.

A más de ello no se puede medir objetivamente la eficiencia administrativa de todos los funcionarios que laboran en la Extensión Universitaria; ya que al no contar con registros de trámites realizados, en espera, o no realizados; cualquier valoración será subjetiva.

Con todo lo anteriormente descrito, se puede deducir que en la Extensión Uniandes Puyo, el problema radica en los procesos de la gestión documental, lo que amerita ser investigado.

Actualidad e importancia del tema

El presente trabajo investigativo, es de mucha importancia y relevancia, ya que trata sobre la utilización de herramientas tecnológicas modernas y metodologías de desarrollo ágil, para la solución de problemas concretos dentro de las organizaciones y empresas; es por ello que se considera como un aporte valioso y de actualidad, ya que para su desarrollo, se consideran herramientas tecnológicas que están en pleno apogeo a nivel mundial, en el ámbito del desarrollo de aplicaciones para la web.

(21)

5

El tema investigado es bastante novedoso, ya que involucra una exploración de metodologías ágiles para el desarrollo, a diferencia del esquema tradicional; de la misma manera la utilización de motores de bases de datos para web de código libre, lenguajes de programación para la web con las versiones más modernas y los framework, que incluyen mejor infraestructura de software, para el desarrollo de aplicaciones web, como por ejemplo “Dreamweaver CS6“, script case, que agilitan el desarrollo, basado en el lenguaje HTML5, entre otros aspectos.

En la práctica, la aplicación web para la Extensión Puyo de la Universidad Regional de los Andes, será de mucha utilidad, ya que una vez enunciada la problemática, se espera que sea un verdadero aporte, para dar solución a los diversos inconvenientes que actualmente se evidencian en la gestión documental de la institución; a más de ello se espera tener un impacto positivo en la satisfacción de la comunidad universitaria, quienes son los que demandan de agilidad e inmediatez en sus distintos trámites solicitados.

Formulación del problema

¿Cómo mejorar los procesos de la gestión documental en Uniandes Extensión Puyo?

Delimitación del problema

La presente investigación se desarrolló en la ciudad de Puyo, provincia de Pastaza, específicamente en la Extensión Uniandes Puyo, de la Universidad Regional Autónoma de los Andes, en los departamentos Administrativos, Académicos y Financieros, durante los años 2015 hasta 2017.

Objeto de investigación y campo de acción

 El objeto de investigación corresponde a: Sistemas Informáticos

 El campo de acción son las: Aplicaciones Web basada en HTML5

Identificación de la línea de Investigación

La línea de Investigación para el presente trabajo es: “Desarrollo de Software y programación de Sistemas”.

Objetivo General

(22)

6

Objetivos Específicos

 Fundamentar científicamente las aplicaciones web, el lenguaje HTML5 y los procesos

de gestión documental.

 Diagnosticar los procesos de gestión documental que se desarrollan en Uniandes

Extensión Puyo.

 Desarrollar una aplicación web, que permita incorporar procesos automáticos para el

seguimiento y control, sobre la gestión documental que se realiza en Uniandes Puyo.

 Validar mediante expertos, la aplicación web que incorpore procesos automáticos, para

el seguimiento y control de la gestión documental de “Uniandes Puyo”.

Idea a defender

Con la implementación de una aplicación web basada en HTML5, se mejorará la gestión documental de la Extensión Uniandes Puyo.

Justificación del tema

Con la implementación de una aplicación web basada en html5, se pretende mejorar la eficiencia y eficacia en los diferentes trámites tanto de estudiantiles docentes, egresados, aspirantes y comunidad en general, que acuden a la Extensión Universitaria para realizar alguna diligencia; sea en la propia Extensión como en la Matriz de la Universidad.

Con la aplicación web debidamente implementada permitirá tener una mejor gestión de los trámites, llevando un adecuado registro y control de los mismos y brindar una mejor y oportuna atención a los usuarios que acuden a las dependencias universitarias.

La aplicación web permitirá tener reportes inmediatos, sobre el estado de los trámites, permitiendo a las autoridades dar un adecuado seguimiento a los mismos, y con ello medir la eficiencia de los funcionarios que están encargados de atender cada uno de los casos.

De la misma manera se podrá dar seguimiento a los casos de los estudiantes que egresan de la institución y necesitan que su titulación y registros en la Senescyt sea inmediato, y por otro lado contar con una base de datos debidamente actualizada de graduados.

(23)

7

CAPITULO I. MARCO TEORICO

1.1. Origen y evolución del objeto de investigación

Los sistemas de información, aparecen como una alternativa de solución a los diferentes problemas de organización de información en las empresas e instituciones; donde al pasar el tiempo se acumula grandes cantidades de papel, haciéndose tan compleja su búsqueda y actualización de la misma. Los sistemas de información, son el resultado de varias experiencias de profesionales en el área informática. Los mismos que desde su aparición, hasta la presente fecha han ido evolucionando de forma progresiva y sistémica, con el objetivo de satisfacer las necesidades de los usuarios, y de las organizaciones en general.

Un sistema de información es un conjunto de elementos interrelacionados con el propósito de prestar atención a las demandas de información de una organización, para elevar el nivel de conocimientos que permitan un mejor apoyo a la toma de decisiones y desarrollo de acciones. (Peña, 2010).

Los primeros Sistemas de Información fueron de tipo monousuarios; hoy en día los sistemas tienen la posibilidad de ser utilizados por varios usuarios al mismo tiempo, optimizando recursos y aportando significativamente a la gestión de la información en las empresas y organizaciones. Hoy en día los sistemas de información son más intuitivos, más fáciles de manejar y muy amigables con los usuarios, quienes dependen directamente de los mismos.

De igual manera, la web en sus inicios, era simplemente una colección de páginas estáticas, documentos, etc., que podían consultarse o descargarse. El siguiente paso en su evolución fue la inclusión de un método para confeccionar páginas dinámicas que permitiesen que lo mostrado fuese dinámico (generado o calculado a partir de los datos de la petición).

Dicho método fue conocido como CGI (common Gateway interface) y definía un mecanismo

mediante el cual podíamos pasar información entre el servidor HTTP y programas externos. Los CGI siguen siendo muy utilizados, puesto que la mayoría de los servidores web los soportan debido a su sencillez. Además, nos proporcionan total libertad a la hora de escoger el lenguaje de programación para desarrollarlos.

(24)

8

Python, etc.) o en algún lenguaje que requería run-time environment (VisualBasic, Java,

etc.), esto implicaba una gran carga para la máquina del servidor. Además, si la web tenía muchos accesos al CGI, esto suponía problemas graves.

Por ello se empiezan a desarrollar alternativas a los CGI para solucionar este grave problema de rendimiento. Las soluciones vienen principalmente por dos vías. Por un lado se diseñan sistemas de ejecución de módulos más integrados con el servidor, que evitan que éste tenga que instanciar y ejecutar multitud de programas. La otra vía consiste en dotar al servidor de un intérprete de algún lenguaje de programación (RXML, PHP, VBScript, etc.) que nos permita incluir las páginas en el código de manera que el servidor sea quien lo ejecute, reduciendo así el tiempo de respuesta.

A partir de este momento, se vive una explosión del número de arquitecturas y lenguajes de programación que nos permiten desarrollar aplicaciones web. Todas ellas siguen alguna de las dos vías ya mencionadas. De ellas, las más útiles y las que más se utilizan son aquellas que permiten mezclar los dos sistemas, es decir, un lenguaje de programación integrado que permita al servidor interpretar comandos que “incrustemos” en las páginas HTML y un sistema de ejecución de programas más enlazado con el servidor que no presente los problemas de rendimiento de los CGI, la que quizás sea la más exitosa y potente de estas aproximaciones, la seguida por Sun Microsystems con su sistema Java, que está integrada por dos componentes; a saber, un lenguaje que permite incrustar código interpretable en las páginas HTML y que el servidor traduce a programas ejecutables, JSP

(Java server pages) y un mecanismo de programación estrechamente ligado al servidor, con un rendimiento muy superior a los CGI convencionales, llamado Java Servlet.

Otra de las tecnologías que más éxito ha obtenido y una de las que más se utiliza en Internet es el lenguaje de programación interpretado por el servidor PHP. Se trata de un lenguaje que permite incrustar HTML en los programas, con una sintaxis que proviene de C y Perl, además, habida cuenta de su facilidad de aprendizaje, su sencillez y potencia, se está convirtiendo en una herramienta muy utilizada para algunos desarrollos.

(25)

9

1.2. Análisis de las distintas posiciones teóricas sobre el objeto de investigación 1.2.1. Aplicaciones Web

Una aplicación web es básicamente una manera de facilitar el logro de una tarea específica en la web, a diferencia de un sitio web estático, que es más bien una herramienta, no menos importante para la comunicación. El término más decisivo de esta definición es “tarea específica”. La aplicación web por lo tanto permite al usuario interactuar directamente con otro usuario y sus datos, todo en forma personalizada, para llevar a cabo esa tarea específica (Benito, 2010).

Para (Alegsa L. 2016) Una aplicación web es cualquier aplicación que es accedida vía web por una red como internet o una intranet. En general, el término también se utiliza para designar aquellos programas informáticos que son ejecutados en el entorno del navegador por ejemplo, un applet de Java o codificado con algún lenguaje soportado por el navegador como JavaScript, combinado con HTML; confiándose en el navegador web para que reproduzca renderice la aplicación.

1.2.2. Servidor web

Un servidor web es un programa que atiende y responde a las diversas peticiones de los navegadores, proporcionándoles los recursos que solicitan mediante el protocolo HTTP o el protocolo HTTPS (la versión segura, cifrada y autenticada de HTTP). Un servidor web básico tiene un esquema de funcionamiento muy sencillo, ejecutando de forma infinita el bucle siguiente:

1. Espera peticiones en el puerto TCP asignado (el estándar para HTTP es el 80).

2. Recibe una petición.

3. Busca el recurso en la cadena de petición.

4. Envía el recurso por la misma conexión por donde ha recibido la petición.

5. Vuelve al punto 2.

(26)

10

atender, en función de que sean o no multi-proceso, multi-hilados, etc. A continuación detallaremos algunas de las características principales de los servidores web, que extienden, obviamente el esquema anterior. (Benito, 2010).

1.2.3 Seguridad y autenticación

La mayoría de los servidores web modernos nos permiten controlar desde el programa servidor aquellos aspectos relacionados con la seguridad y la autenticación de los usuarios.

El modo más simple de control es el proporcionado por el uso de ficheros .htaccess. Éste es un sistema de seguridad que proviene de uno de los primeros servidores web (del NCSA httpd), que consiste en poner un fichero de nombre .htaccess en cualquier directorio del contenido web que se vaya a servir, indicando en este fichero qué usuarios, máquinas, etc., tienen acceso a los ficheros y subdirectorios del directorio donde está el fichero. Como el servidor de NCSA fue el servidor más usado durante mucho tiempo, la mayoría de servidores modernos permiten utilizar el fichero .htaccess respetando la sintaxis del servidor de NCSA.

Otros servidores permiten especificar reglas de servicio de directorios y ficheros en la configuración del servidor web, indicando allí qué usuarios, máquinas, etc., pueden acceder al recurso indicado.

Por lo que respecta a la autenticación (validación del nombre de usuario y contraseña proporcionados por el cliente), las prestaciones ofrecidas por los diversos servidores web son de lo más variado. La mayoría permiten, como mínimo, proporcionar al servidor web un fichero con nombres de usuario y contraseñas contra el que se pueda validar lo enviado por el cliente. De todos modos, es frecuente que los servidores proporcionen pasarelas que permitan delegar las tareas de autenticación y validación a otro software (por ejemplo RADIUS, LDAP, etc.). Si usamos un sistema operativo como Linux, que dispone de una

infraestructura de autenticación como PAM (pluggable authentication modules), podemos

usar esta funcionalidad como modo de autenticación del servidor web, permitiéndonos así usar los múltiples métodos disponibles en PAM para autenticar contra diversos sistemas de seguridad.

1.2.4 Contenido Dinámico

(27)

11

se sirve no proviene de páginas estáticas, sino que se genera dinámicamente, y esta tendencia es claramente alcista, el soporte para contenido dinámico que nos ofrece el servidor web es uno de los puntos más críticos en su elección.

La mayoría de servidores web ofrecen soporte para CGI (cabe recordar que los CGI son el método más antiguo y simple de generación de contenido dinámico). Muchos ofrecen soporte para algunos lenguajes de programación (básicamente interpretados) como PHP, JSP, ASP, Pike, etc. Es altamente recomendable que el servidor web que utilicemos proporcione soporte para alguno de estos lenguajes, siendo uno de los más utilizados PHP, sin tener en cuenta JSP, que usualmente requiere un software externo al servidor web para funcionar (como por ejemplo, un contenedor de Servlets).

La oferta en este campo es muy amplia, pero antes de escoger un lenguaje de programación de servidor tenemos que plantearnos si deseamos un lenguaje muy estandarizado para que nuestra aplicación no dependa de un servidor web o arquitectura concreta o si, por el contrario, la portabilidad no es una prioridad y sí lo es alguna prestación concreta que pueda ofrecernos algún lenguaje de programación concreto.

1.2.5 Servidores Virtuales

Un servicio que está ganado usuarios a gran escala, especialmente entre los proveedores de servicios de Internet y los operadores de alojamiento de dominios, es la capacidad que poseen algunos servidores web de proporcionar diferentes dominios con tan sólo una dirección IP, separando entre los diversos dominios residentes por el nombre de dominio enviado en la cabecera de la petición HTTP. Esta prestación permite administrar de una forma más razonada un bien escaso, como son las direcciones IP.

“Si necesitamos disponer de muchos nombres de servidor (ya sea porque proporcionamos alojamiento o por otros motivos) debemos asegurarnos de que el servidor web escogido ofrezca estas facilidades, y además, que el soporte que facilita para servidores virtuales nos permita una configuración diferente para cada servidor (directorios, usuarios, seguridad, etc.). Lo ideal sería que cada servidor se comportase como si de un ordenador diferente se tratase.” (Montenegro Peque, 2008)

1.2.5.1 Prestaciones Extra

(28)

12

pueden decidir la elección de servidor web. Debemos ser conscientes, no obstante, de que si usamos algunas de estas características, o si éstas se convierten en imprescindibles para nosotros, ello nos puede obligar a usar un determinado servidor web aunque en algún momento determinado deseemos cambiar.”

Algunas características adicionales de algunos servidores web de código libre son las siguientes:

Spelling (Apache). Esta prestación de Apache nos permite definir una página de error para los recursos no encontrados que sugiera al usuario algunos nombres de recurso parecidos al que solicitaba para el caso de que hubiese cometido un error al escribir.

Status (Apache). Nos proporciona una página web generada por el servidor donde éste nos muestra su estado de funcionamiento, nivel de respuesta, etc.

RXML Tags (Roxen). Añade a HTML algunos tags (comandos de HTML), mejorados para

programación y generación de contenido dinámico.

SQL Tags (Roxen). Añade al lenguaje HTML extendido de Roxen (RXML), comandos para realizar accesos a bases de datos SQL desde las propias páginas HTML.

Graphics (Roxen). Añade al lenguaje HTML extendido de Roxen (RXML), comandos para la generación de gráficos, títulos, etc., y no requiere un trabajo de diseño gráfico.

Bfnsgd (AOLServer), mod_gd (Apache). Nos permite realizar gráficos a partir de texto y de fuentes True Type.

mod_mp3 (Apache), ICECAST, MPEG (Roxen). Nos permiten convertir el servidor web en un servidor de música (con streaming, etc.).

Throttle (Roxen), mod_throttle (Apache). Nos proporcionan medios para limitar la velocidad de servicio de HTTP, ya sea por usuario, servidor virtual, etc.

Nsxml (AOLServer), tDOM (AOLServer), mod_xslt (Apache). Nos permite realizar la transformación de ficheros XML a partir de XSL.

Kill Frame (Roxen). Envía con cada página web servida un código que evita que nuestra

(29)

13

1.2.6. Html5

HTML5 es un nuevo concepto para la construcción de sitios web y aplicaciones en una época donde el uso de dispositivos móviles, almacenamiento en la nube están dentro del alcance de todos.

“En los últimos años, programadores y diseñadores web alrededor del mundo surgieron con los más increíbles trucos para superar las limitaciones de esta tecnología y sus iniciales deficiencias en portabilidad. Gracias a estas nuevas implementaciones, Javascript, HTML y CSS se convirtieron pronto en la más perfecta combinación para la necesaria evolución de la web.

HTML5 es, de hecho, una mejora de esta combinación, el pegamento que une todo. HTML5 propone estándares para cada aspecto de la web y también un propósito claro para cada una de las tecnologías involucradas. A partir de ahora, HTML provee los elementos estructurales, CSS se encuentra concentrado en cómo volver esa estructura utilizable y atractiva a la vista, y Javascript tiene todo el poder necesario para proveer dinamismo y

construir aplicaciones web completamente funcionales.”(Gauchat, 2013)

Las limitaciones que existían entre diferentes sitios webs y aplicaciones en definitiva han desaparecido. Las tecnologías necesarias para la integración están completamente listas. La web y su porvenir es muy prometedor y gracias a la combinación de HTML, CSS y Jacascript que convierte una sola y poderosa especificación que convierte en líder en desarrollo a Internet.

A pesar de no ser declarado oficialmente HTML5 provee en esencia tres características: estructura, estilo y funcionalidad. HTML5 es considerado el resultado de combinar HTML, CSS y Javascript. Estas tecnologías dependen una de la otra y así actua como una sola unidad muy fuerte bajo la única especificación dde HTML5. “HTML está a cargo de la estructura, CSS presenta esa estructura y su contenido en la pantalla y Javascript hace el

resto que (como veremos más adelante) es extremadamente significativo.”(Gauchat, 2013)

(30)

14

documento. Ahora la estructura debe proveer forma, organización y flexibilidad, y debe ser tan fuerte como los fundamentos de un edificio.”

Para elaborar sitios webs y aplicaciones con HTML5, se necesita saber primero cómo esa estructura debe ser construida, para que sea totalmente firme. Crear fundamentos estables nos ayudará a aplicar el resto de componentes para aprovechar totalmente las nuevas tecnologías.

1.2.7. Bases de Datos

Según Michael V.Mannino, una base de datos es una colección de datos persistentes que pueden compartirse e interrelacionarse. La colección de datos, normalmente denominada base de datos, contiene información relevante para una empresa. El objetivo principal de un SGBD es proporcionar una forma de almacenar y recuperar la información de una base de datos de manera que sea tanto práctica como eficiente.

Dado que la información es tan importante en la mayoría de las organizaciones, los científicos informáticos han desarrollado un amplio conjunto de conceptos y técnicas para la gestión de los datos.

Los autores Silberschatz A., Korth H., Sudarshan S. dicen que aunque las interfaces de datos ocultan detalles del acceso a las bases de datos, y la mayoría de la gente ni siquiera es consciente de que están interactuando con una base de datos, el acceso a las bases de datos forma una parte esencial de la vida de casi todas las personas actualmente. La importancia de los sistemas de bases de datos se puede juzgar de otra forma: actualmente, los vendedores de sistemas de bases de datos como Oracle están entre las mayores compañías software en el mundo, y los sistemas de bases de datos forman una parte importante de la línea de productos de compañías más diversificadas, como Microsoft e IBM.

1.2.7.1. Abstracción de Datos

(31)

15

Nivel físico: Siendo el nivel más bajo de abstracción describe cómo se recolectan realmente los datos, se describe detalladamente las estructuras de datos complejas de bajo nivel.

Nivel lógico: El nivel intermedio de abstracción describe los datos que se almacenan en la base de datos y la relación existente entre ellos. Según (Silberschatz A, 2010) La base de datos completa se describe así en términos de un número pequeño de estructuras relativamente simples. Aunque la implementación de estructuras simples en el nivel lógico puede involucrar estructuras complejas del nivel físico, los usuarios del nivel lógico no necesitan preocuparse de esta complejidad. Los administradores de bases de datos, que deben decidir la información que se mantiene en la base de datos, usan el nivel lógico de abstracción.

Nivel de vistas: Manteniendo el nivel más alto de abstracción tan solo describe una parte de toda la base de datos. Debido a la variedad de información almacenada en una gran base de datos queda algo de complejidad. “Muchos usuarios del sistema de base de datos no necesitan toda esta información. En su lugar, tales usuarios necesitan acceder sólo a una parte de la base de datos.”(Korth, & Silberschatz, 2010)

1.2.8. Modelos de los datos 1.2.8.1 Modelo Entidad Relación

Está basado en una percepción del mundo real que posee una recopilación de objetos,

llamados entidades, y de relacionesentre ellos. Una entidad hace referencia a un “objeto”

en el mundo real que es distinguible de otros objetos.

1.2.8.2 Modelo relacional

Aquí se utiliza un grupo de tablas que representan los datos y las relaciones entre ellos. Cada tabla está compuesta por varias columnas, y cada columna tiene un nombre único.

(32)

16

1.2.8.3 Modelo de datos Orientado a Objetos

Se puede observas a este modelo como una extensión del modelo Entidad-Relación. Este tipo de modelo la especificación de datos donde los elementos de datos individuales del mismo tipo pueden tener diferentes conjuntos de atributos. A diferencia de los anteriores, en los que cada elemento de datos de un tipo particular debe tener el mismo conjunto de atributos.

1.2.9. Usuarios y Administradores de la base de datos

Un objetivo principal de un sistema de bases de datos es recuperar información y almacenar nueva información en la base de datos. Las personas que trabajan con una base de datos se pueden catalogar como usuarios de bases de datos o como administradores de bases de datos.

Los autores Korth, & Silberschatz, 2010 mencionan que, hay cuatro tipos diferentes de usuarios de un sistema de base de datos, diferenciados por la forma en que ellos esperan interactuar con el sistema. Se han diseñado diferentes tipos de interfaces de usuario para diferentes tipos de usuarios, mismos que se detallan a continuación:

Usuarios normales. Son usuarios no sofisticados que interactúan con el sistema mediante la invocación de alguno de los programas de aplicación permanentes que se ha escrito

previamente. Por ejemplo, un cajero bancario que necesita transferir 50 $ de la cuenta A a

la cuenta B invoca un programa llamado transferir. Este programa pide al cajero el importe

de dinero a transferir, la cuenta de la que el dinero va a ser transferido y la cuenta a la que el dinero va a ser transferido. Como otro ejemplo, considérese un usuario que desee encontrar su saldo de cuenta en World Wide Web. Tal usuario podría acceder a un formulario en el que introduce su número de cuenta. Un programa de aplicación en el servidor Web recupera entonces el saldo de la cuenta, usando el número de cuenta proporcionado, y pasa la información al usuario. La interfaz de usuario normal para los usuarios normales es una interfaz de formularios, donde el usuario puede rellenar los campos apropiados del formulario. Los usuarios normales pueden también simplemente leer informes generados de la base de datos.

(33)

17

construir formularios e informes sin escribir un programa. Hay también tipos especiales de lenguajes de programación que combinan estructuras de control imperativo (por ejemplo, para bucles for, bucles while e instrucciones ifthen- else) con instrucciones del lenguaje de manipulación de datos. Estos lenguajes, llamados a veces lenguajes de cuarta generación, a menudo incluyen características especiales para facilitar la generación de formularios y la presentación de datos en pantalla. La mayoría de los sistemas de bases de datos comerciales incluyen un lenguaje de cuarta generación.

Los usuarios sofisticados interactúan con el sistema sin programas escritos. En su lugar, ellos forman sus consultas en un lenguaje de consulta de bases de datos. Cada una de

estas consultas se envía al procesador de consultas, cuya función es transformar

instrucciones LMD a instrucciones que el gestor de almacenamiento entienda. Los analistas que envían las consultas para explorar los datos en la base de datos entran en esta categoría. Las herramientas de procesamiento analítico en línea (OLAP, Online Analytical

Processing)simplifican la labor de los analistas permitiéndoles ver resúmenes de datos de

formas diferentes. Por ejemplo, un analista puede ver las ventas totales por región (por ejemplo, norte, sur, este y oeste), o por producto, o por una combinación de la región y del producto (es decir, las ventas totales de cada producto en cada región). Las herramientas también permiten al analista seleccionar regiones específicas, examinar los datos con más detalle (por ejemplo, ventas por ciudad dentro de una región) o examinar los datos con menos detalle (por ejemplo, agrupando productos por categoría). Otra clase de herramientas para los analistas son las herramientas de recopilación de datos, que les ayudan a encontrar ciertas clases de patrones de datos.

Usuarios especializados. Son usuarios sofisticados que escriben aplicaciones de bases de datos especializadas que no son adecuadas en el marco de procesamiento de datos tradicional. Entre estas aplicaciones están los sistemas de diseño asistido por computador, sistemas de bases de conocimientos y sistemas expertos, sistemas que almacenan los datos con tipos de datos complejos (por ejemplo, datos gráficos y datos de audio) y sistemas de modelado del entorno.(p. 8-9)

1.2.10. Interfaces de usuario y herramientas

(34)

18

Los autores Korth, & Silberschatz, 2010 mencionan que:

a) Los formularios e interfaces gráficas de usuario

Permiten a los usuarios introducir valores que completan las consultas redefinidas. El sistema ejecuta las consultas y da formato apropiado y muestra los resultados al usuario. Las interfaces gráficas de usuario proporcionan una forma fácil de interactuar con el sistema de bases de datos.

b) Los generadores de informes

Permiten generar informes predefinidos sobre los contenidos actuales de la base de datos. Los analistas o gestores examinan estos informes para tomar decisiones de negocio.

c) Las herramientas de análisis de datos

Permiten a los usuarios examinar interactivamente y analizar los datos. (p. 135)

1.2.11. Formularios e interfaces gráficas de usuario

Las interfaces de formularios se usan de diferentes maneras para introducir y extraer datos en las bases de datos mediante preguntas o consultas pre establecidas. Con esto l sistema comprueba información como la identidad, así como para extraer información de la base de datos y mostrarla. En la actualidad los exploradores Web compatibles con HTML constituyen los formularios e interfaces gráficas de usuario más ampliamente utilizados.

(35)

19

formulario2. Por ejemplo, una restricción sobre el campo número de asignatura podría comprobar que el número de asignatura escrito por el usuario corresponde realmente con una asignatura. Aunque estas restricciones se pueden comprobar cuando se ejecuta la transacción, la detección temprana de errores ayuda a los usuarios a corregir rápidamente los errores. Los menús que indican los valores válidos que se pueden escribir en un campo pueden eliminar la posibilidad de muchos tipos de errores. Los desarrolladores de sistemas encuentran que su trabajo es mucho más fácil con la posibilidad de controlar tales características de forma declarativa la ayuda de una herramienta de desarrollo de interfaces de usuario, en lugar de crear el formulario directamente usando un lenguaje de guiones o de programación.

1.2.12. Generadores de informes

Los autores (Korth, & Silberschatz, 2010), nos dicen que: Los generadores de informes son herramientas que generan informes de resumen legibles de una base de datos. Integran la consulta a la base de datos con la creación de texto con formato y gráficos de resumen (tales como gráficos de barras o de pastel). Por ejemplo, un informe podría mostrar las ventas totales de los dos meses anteriores para cada zona de ventas. El desarrollador de aplicaciones puede especificar formatos de informes usando las características de formato del generador de informes. Se pueden usar variables para almacenar parámetros tales como el mes y el año y para definir campos del informe. Se pueden definir tablas, gráficos de barras, gráficos de pastel u otros gráficos mediante consultas sobre la base de datos. Las definiciones de las consultas pueden usar valores de parámetros almacenados en las variables. Una vez que se ha definido la estructura del informe con un generador de informes, se puede almacenar y ejecutar cada vez que se genere un informe. Los sistemas generadores de informes proporcionan varias características para estructurar una salida tabular, tal como definir las cabeceras de tabla y columna, mostrar subtotales por cada grupo en una tabla, dividir automáticamente una tabla grande en varias páginas y mostrar subtotales al final de cada página.

1.2.13. Seguridad y Autorización

(36)

20

1.2.14. Violaciones de la seguridad

Entre las formas de acceso malintencionado se encuentran:

• La lectura no autorizada de los datos (robo de información)

• La modificación no autorizada de los datos

• La destrucción no autorizada de los datos

1.2.15. La seguridad de las bases de datos

Hablamos de la protección de las bases de datos frente a accesos malintencionados. Una protección absoluta es algo imposible contra el uso malintencionado, pero se puede mejorar lo suficiente para disuadir la mayor parte, si no la totalidad, de los intentos de tener acceso a la base de datos sin la autorización adecuada.

Los autores (Korth, & Silberschatz, 2010) mencionan que:

Para proteger la base de datos hay que adoptar medidas de seguridad en varios niveles:

Sistema de bases de datos. Puede que algunos usuarios del sistema de bases de datos sólo estén autorizados a tener acceso a una parte limitada de la base de datos. Puede que otros usuarios estén autorizados a formular consultas pero tengan prohibido modificar los datos. Es responsabilidad del sistema de bases de datos asegurarse de que no se violen estas restricciones de autorización.

 Sistema operativo. Independientemente de lo seguro que pueda ser el sistema de bases de datos, la debilidad de la seguridad del sistema operativo puede servir como medio para el acceso no autorizado a la base de datos.

 Red. Dado que casi todos los sistemas de bases de datos permiten el acceso remoto

mediante terminales o redes, la seguridad en el nivel del software de la red es tan importante como la seguridad física, tanto en Internet como en las redes privadas de las empresas.

 Físico. Los sitios que contienen los sistemas informáticos deben estar protegidos físicamente contra la entrada de intrusos.

(37)

21

Debe conservarse la seguridad en todos estos niveles si hay que asegurar la seguridad de la base de datos. La debilidad de los niveles bajos de seguridad (físico o humano) permite burlar las medidas de seguridad estrictas de niveles superiores (base de datos).(p.149-150)

1.2.16. Sistema de Gestión de Bases de datos (SGBD)

La existente necesidad de tener una visión global de la empresa y de interrelacionar diferentes aplicaciones que utilizan bases de datos diferentes, junto a la facilidad que permiten las redes para la intercomunicación entre diferentes ordenadores, ha conducido a los Sistemas de Gestión de Bases de Datos actuales, que permiten que un programa sea capaz de trabajar con diferentes Bases de datos como si se tratase de una sola, se la conoce como base de datos distribuida.

Los autores (Korth, & Silberschatz, 2010) mencionan que:

Esta distribución ideal se consigue cuando las diferentes BD son soportadas por una misma marca de SGBD, es decir, cuando hay homogeneidad. Sin embargo, esto no es tan sencillo si los SGBD son heterogéneos. En la actualidad, gracias principalmente a la estandarización del lenguaje SQL, los SGBD de marcas diferentes pueden dar servicio unos a otros, y colaborar para dar servicio a un programa de aplicación. No obstante, en general, en los casos de heterogeneidad no se llega a poder dar en el programa que los utiliza la apariencia de que se trata de una única BD.

Además de esta distribución “impuesta”, al querer tratar de forma integrada distintas BD preexistentes, también se puede hacer una distribución “deseada”, diseñando una BD distribuida físicamente, y con ciertas partes replicadas en diferentes sistemas. Las razones básicas por las que interesa esta distribución son las siguientes:

1) Disponibilidad. La disponibilidad de un sistema con una BD distribuida puede ser más alta, porque si queda fuera de servicio uno de los sistemas, los de más seguirán funcionando. Si los datos residentes en el sistema no disponible están replicados en otro sistema, continuarán estando disponibles. En caso contrario, sólo estarán disponibles los datos de los demás sistemas.

(38)

22

El coste total de las comunicaciones se puede reducir haciendo que un usuario tenga más cerca los datos que utiliza con mayor frecuencia; por ejemplo, en un ordenador de su propia oficina o, incluso, en su ordenador personal. La tecnología que se utiliza habitualmente para distribuir datos es la que se conoce como entorno (o arquitectura) cliente/servidor (C/S). (p.11-12)

1.2.17. Tendencias actuales

En la actualidad los SGBD relacionales sufren transformaciones para adaptarse a tres tecnologías de éxito reciente: la multimedia, la web y la de orientación a objetos e Internet.

Los diferentes tipos de datos que se pueden definir en los Sistemas de Gestión de Bases de Datos relacionales de los años ochenta y noventa son muy restringidos. La implementación de tecnologías multimedia en los SI hace necesario que los Sistemas de Gestión de Bases de Datos relacionales acepten propiedades de estos tipos.

Sin embargo, para algunas aplicaciones no es suficiente con la incorporación de tipos especializados en multimedia sino necesitan tipos complejos que el desarrollador pueda aplicar a medida de la aplicación.

Los autores (Korth, & Silberschatz, 2010) nos dicen:

El éxito de la OO al final de los años ochenta, en el desarrollo de software básico, en las

aplicaciones de ingeniería industrial y en la construcción de interfaces gráficas con los usuarios, ha hecho que durante la década de los noventa se extendiese en prácticamente todos los campos de la informática.

En los SI se inicia también la adopción, tímida de momento, de la OO. La utilización de lenguajes como C++ o Java requiere que los SGBD relacionales se adapten a ellos con interfaces adecuadas.

La rápida adopción de la web a los SI hace que los SGBD incorporen recursos para ser servidores de páginas web, como por ejemplo la inclusión de SQL en guiones HTML, SQL incorporado en Java, etc. Notad que en el mundo de la web son habituales los datos multimedia y la OO.

Durante estos últimos años se ha empezado a extender un tipo de aplicación de las BD

denominado Data Warehouse, o almacén de datos, que también produce algunos cambios

(39)

23

distintas aplicaciones, las empresas han ido acumulando gran cantidad de datos de todo tipo. Si estos datos se analizan convenientemente pueden dar información valiosa.

Por lo tanto, se trata de mantener una gran BD con información proveniente de toda clase de aplicaciones de la empresa (e, incluso, de fuera). Los datos de este gran almacén, el

Data Warehouse, se obtienen por una replicación más o menos elaborada de las que hay en las BD que se utilizan en el trabajo cotidiano de la empresa. Estos almacenes de datos se utilizan exclusivamente para hacer consultas, de forma especial para que lleven a cabo estudios los analistas financieros, los analistas de mercado, etc.

Actualmente, los SGBD se adaptan a este tipo de aplicación, incorporando, por ejemplo, herramientas como las siguientes:

a) La creación y el mantenimiento de réplicas, con una cierta elaboración de los datos. b) La consolidación de datos de orígenes diferentes.

c) La creación de estructuras físicas que soporten eficientemente el análisis

multidimensional.(p.13-14)

1.2.18. Metodología de desarrollo de software

En la siguiente tabla se presenta una clasificación resumida de las metodologías de desarrollo de software, de donde se destacan básicamente tres tipos.

Tabla 1 Clasificación de las Metodologías de desarrollo de Software

Metodología Descripción Fundamento Utilización

Estructurada Metodología orientada a funciones (flujo de procesos),

descomposición de algoritmos, identificación de eventos a los que el sistema debe responder.

Diagramas de flujo de datos

Sistemas Modulares

Orientada a datos

Metodología orientada a la estructuración de un sistema de software derivado del mapeo de las entradas a las salidas de datos del mismo.

Diagramas CRUD(Create, read, update, delete) Sistemas de manejo de información. Orientada a Objetos

Metodología orientada al modelamiento de sistemas de software como una colección de objetos. Consiguiendo una unificación de sus

Diagramas de clases, Proceso unificado Rational (RUP)

METRICA (que

también soporta la notación estructurada)

(40)

24 métodos y notaciones, que posteriormente se reoriente a un objetivo más modesto, para dar lugar al lenguaje Unificado de Modelado (UML).

Tradicionales o

No Agiles. Son aquellas que están guiadas por una fuerte planificación durante todo el proceso de desarrollo, donde se realiza una intensa etapa de análisis y diseño antes de la construcción del sistema.

Las metodologías

antes indicadas

pueden considerarse metodologías

tradicionales.

Realizando una

configuración

adecuada, podría

considerarse ágil.

Sistemas de

manejo de

información. Sistemas interactivos.

Metodologías Agiles

Un proceso es ágil cuando el desarrollo de

software es incremental

(entregas pequeñas de software, con ciclos

rápidos). Cooperativo

(cliente y desarrolladores trabajan juntos

constantemente con una cercana comunicación), sencillo (el método en sí mismo es fácil de aprender y modificar, bien documentado) y adaptable (permite realizar cambios de último momento).

Entre las metodologías

ágiles tenemos: La

programación

extrema formulada por Kent Beck. Es el más destacado de los procesos ágiles de desarrollo de software. Principalmente pone más énfasis en la adaptabilidad que en la previsibilidad.

Scrum es un modelo de desarrollo ágil

caracterizado por

adoptar una estrategia

de desarrollo

incremental, en lugar de la planificación y ejecución completa del producto.

Solapamiento de las diferentes fases del desarrollo, en lugar de realizar una tras otra en un ciclo secuencial o de cascada.

Sistema de manejo de información. Sistemas Interactivos.

Fuente: Sommerville, Ian. Ingeniería del Software, (7ª Edición), Madrid: Pearson Education, S.A.

1.1.18.1. Metodología de Desarrollo RAD (Rapid Application Development)

Es una metodología que permite a las distintas organizaciones, el desarrollo de sistemas, de manera rápida, reduciendo costos de desarrollo y mejorando su calidad.

(41)

25

desarrollar aplicaciones con uso intensivo de datos. Normalmente están organizadas como un conjunto de herramientas que permiten crear datos, buscar, visualizar y presentar a través de informes.

Las herramientas que incluyen en un entorno RAD, según Somerville(2008) son:

1. Lenguaje de programación de base de datos, que contiene conocimiento sobre la estructura de la base de datos y que incluye las operaciones básicas de manipulación de datos. Los comandos SQL, se pueden introducir directamente o de forma automática, mediante formularios digitados por los usuarios finales.

2. Generador de interfaces, que se utiliza para la creación de formularios para la introducción y visualización de datos.

3. Enlaces a aplicaciones de oficina, como una hoja de cálculo para el análisis y manipulación de información numérica o un procesador de textos para la creación de plantillas de informes.

4. Un generador de informes, que se utiliza para definir y crear informes, a partir de la información de las bases de datos.

Los sistemas RAD, son muy exitosos, debido a que las aplicaciones tienen muchas cosas en común. Principalmente, a menudo estas aplicaciones comprender la actualización de una BD, y la producción de informes, a partir de la información existente en ella. Se utilizan formularios estándar para las entradas y salidas. Los sistemas RAD están dirigidos a la producción de aplicaciones interactivas que se apoyan la abstracción de la información en una base de datos organizacional, presentándose a los usuarios finales en su terminal o estación de trabajo y actualización de base de datos, con los cambios realizados por los usuarios. Sommerville (2008).

RAD, cuenta con cuatro etapas en su ciclo de vida, las mismas que se exponen a continuación:

Referencias

Documento similar