PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO ESCUELA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN
Disertación de Grado Previa la obtención del título de Ingenieros en Sistemas y Computación
DISEÑO, DESARROLLO E IMPLEMENTACIÓN DE UN SISTEMA INFORMÁTICO Y ACONDICIONAMIENTO DE UN KIOSCO, PARA ADMINISTRAR Y CONTROLAR EL USO DE LOS LABORATORIOS EN EL CAMPUS 2 DE LA PUCE SD
AUTORES: ANDREA ELIZABETH CARRIÓN SANTÍN ARSECIO EDILBERTO VERGARA CASTILLO JAVIER OLMEDO PAUCAR PALADINES
DIRECTOR: Ms. RODOLFO SIRILO CÓRDOVA GÁLVEZ
SANTO DOMINGO - ECUADOR, 2012
ii
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR SEDE SANTO DOMINGO APROBACIÓN DE LA DISERTACIÓN DE GRADO
DISEÑO,
DESARROLLO
INFORMÁTICO
Y
E
IMPLEMENTACIÓN
ACONDICIONAMIENTO
DE
DE UN
UN
SISTEMA
KIOSCO,
PARA
ADMINISTRAR Y CONTROLAR EL USO DE LOS LABORATORIOS EN EL CAMPUS 2 DE LA PUCE SD.
AUTORES: ANDREA ELIZABETH CARRIÓN SANTÍN ARSECIO EDILBERTO VERGARA CASTILLO JAVIER OLMEDO PAUCAR PALADINES
TRIBUNAL
ING. FAUSTO ERNESTO OROZCO IGUASNIA
ING. FRANKLIN ANDRÉS CARRASCO RAMÍREZ
Ms. RODOLFO SIRILO CÓRDOVA GÁLVEZ
Santo Domingo, marzo de 2012
iii
DEDICATORIA
A Dios, quien sabiamente ha guiado nuestras vidas, y a nuestros padres, quienes desinteresadamente han velado por nuestro bienestar y preparaci贸n.
iv
AGRADECIMIENTOS Nuestros más sinceros agradecimientos a nuestros padres, su gran esfuerzo y abnegación nos ha permitido alcanzar nuestras metas; a nuestro Director de Disertación Ms. Rodolfo Córdova, por su predisposición y ayuda permanente; a nuestros docentes, por brindarnos sus conocimientos y experiencias; a nuestros familiares, amigos, y a todas aquellas personas que de diferente forma han aportado a la exitosa culminación de este proyecto.
v
RESUMEN El presente proyecto permite administrar y controlar el uso compartido de los laboratorios de computación de la Pontificia Universidad Católica del Ecuador Sede Santo Domingo, mediante el uso del sistema informático SISLAB, el cual ha sido desarrollado a medida, con la finalidad de satisfacer las necesidades específicas de la universidad; de esta manera automatizar y optimizar los procesos utilizados actualmente. El sistema informático SISLAB se divide en tres módulos: El Módulo de Administración permite reservar laboratorios para clases, parametrizar el sistema informático, y monitorear las reservaciones; Módulo de Reservación es implementado en un kiosco informático y permite a los usuarios reservar computadoras para uso personal por un período de tiempo dado; Módulo de Bloqueo permite que únicamente los usuarios que han realizado previamente la reservación de una computadora puedan utilizarla. LA PUCE SD será pionera en la provincia en automatizar el uso de laboratorios de computación a través un kiosco informático.
vi
ABSTRACT The present research paper proposes to administer and control the shared use of the computer labs of the Pontificia Universidad Cat贸lica del Ecuador Sede Santo Domingo, through the use of the computer system SISLAB, which has been developed with the exact measure, with the aim of satisfying the specific needs of the university; that way we can automate and optimize the currently used processes. The computer system SISLAB is divided in three modules: The Module of Administration allows to reserve labs for classes, parameterize the computer system, and monitor the reservations from a unique user interface; Module of Reservation is implemented in a computer kiosk and allows the users to reserve computers for personal use for a given period of time; Module of Blocking allows that only the users that have previously made the reservation of a computer are able to use it. The PUCE SD will be a pioneer in the province in automating the use of computer labs through computer kiosks.
vii
ÍNDICE DE CONTENIDOS DEDICATORIA ................................................................................................................. iii AGRADECIMIENTOS ....................................................................................................... iv RESUMEN ......................................................................................................................... v ABSTRACT ...................................................................................................................... vi LISTA DE TABLAS .......................................................................................................... xii LISTA DE FIGURAS ....................................................................................................... xiii ANTECEDENTES Y JUSTIFICACIÓN .............................................................................15 BENEFICIOS ESPERADOS ............................................................................................17 ANÁLISIS DE IMPACTOS ...............................................................................................18 OBJETIVO GENERAL .....................................................................................................23 OBJETIVOS ESPECÍFICOS ............................................................................................23 MARCO INSTITUCIONAL ...............................................................................................24 RESUMEN DE ACTIVIDADES ........................................................................................24 I.
MARCO TEÓRICO .....................................................................................25
1.1
SOFTWARE ...............................................................................................25
1.1.1
Software libre..............................................................................................25
1.1.2
Software propietario....................................................................................26
1.2
SISTEMA OPERATIVO ..............................................................................26
1.2.1
Linux ...........................................................................................................26
1.2.2
Windows .....................................................................................................27
1.3
RED ............................................................................................................28
1.3.1
Red de área local (LAN) .............................................................................28
1.3.2
Red de área metropolitana (MAN) ..............................................................29
1.3.3
Red de área amplia (WAN) .........................................................................29
1.3.4
Dirección IP ................................................................................................29
1.3.5
Dirección MAC ............................................................................................29
1.4
ARQUITECTURA CLIENTE-SERVIDOR ....................................................29
1.4.1
Cliente ........................................................................................................29
1.4.2
Servidor ......................................................................................................30
1.4.3
Funcionamiento de una arquitectura Cliente-Servidor ................................30
1.5
KIOSCO INFORMÁTICO ............................................................................30
1.5.1
Componentes de un kiosco informático ......................................................31
viii
1.5.1.1
Mueble........................................................................................................31
1.5.1.2
Computadora cliente...................................................................................31
1.5.1.3
Monitor .......................................................................................................31
1.5.1.4
Teclado.......................................................................................................32
1.5.1.5
Mouse.........................................................................................................32
1.5.1.6
Lector de banda magnética ........................................................................32
1.5.1.7
Lector de código de barras .........................................................................32
1.5.1.8
Lector biométrico ........................................................................................32
1.5.1.9
Impresora ...................................................................................................33
1.6
BASE DE DATOS .......................................................................................33
1.6.1
Base de Datos Relacional...........................................................................34
1.6.1.1
Tablas, filas y columnas .............................................................................34
1.6.1.2
Relaciones, atributos y tuplas .....................................................................34
1.6.1.3
Claves ........................................................................................................35
1.6.1.4
Índices ........................................................................................................35
1.6.2
Sistema Gestor de Base de Datos ..............................................................35
1.6.3
Modelo Entidad-Relación ............................................................................36
1.6.3.1
Entidades, atributos e identificadores .........................................................36
1.6.3.2
Relaciones ..................................................................................................36
1.6.3.3
Cardinalidad ...............................................................................................37
1.6.3.3.1
Uno a uno ...................................................................................................37
1.6.3.3.2
Uno a muchos ............................................................................................37
1.6.3.3.3
Muchos a muchos ......................................................................................37
1.6.4
Lenguaje de consulta estructurado (SQL) ...................................................38
1.6.4.1
Instrucciones de consulta ...........................................................................39
1.6.4.2
Lenguaje de manipulación de datos (DML) .................................................39
1.6.4.3
Lenguaje de definición de datos (DDL) .......................................................39
1.6.4.4
Instrucciones de control de transacciones (TC) ..........................................39
1.6.4.5
Lenguaje de control de datos (DCL) ...........................................................40
1.6.5
Oracle 10g ..................................................................................................40
1.6.5.1
Lenguaje procedural / Lenguaje de consulta estructurado (PL/SQL) ..........40
1.6.5.2
TOAD for Oracle .........................................................................................41
1.7
MODELO AAA ............................................................................................41
1.7.1
Autenticación ..............................................................................................42
1.7.2
Autorización ................................................................................................42
1.7.3
Auditoria .....................................................................................................43
ix
1.8
RADIUS ......................................................................................................43
1.8.1
FreeRADIUS...............................................................................................43
1.9
LENGUAJE DE PROGRAMACIÓN ............................................................45
1.9.1
Visual Basic ................................................................................................45
1.9.1.1
.NET Framework ........................................................................................46
1.9.1.2
Programación en capas ..............................................................................46
1.9.1.2.1
Capa de presentación.................................................................................46
1.9.1.2.2
Capa de negocio ........................................................................................46
1.9.1.2.3
Capa de acceso a datos .............................................................................46
II.
METODOLOGÍA..........................................................................................47
2.1
INVESTIGACIÓN DIAGNÓSTICA ..............................................................47
2.1.1
Mecánica operativa.....................................................................................47
2.1.2
Información primaria ...................................................................................48
2.1.3
Información secundaria ..............................................................................48
2.2
INGENIERÍA DE SOFTWARE ....................................................................49
2.2.1
Metodologías de desarrollo ágil de software ...............................................49
2.2.1.1
Programación Extrema ...............................................................................50
2.2.1.1.1
Valores de XP.............................................................................................50
2.2.1.1.2
Principios de XP .........................................................................................51
2.2.1.1.3
Prácticas de XP ..........................................................................................53
2.2.2
Roles y responsabilidades ..........................................................................54
2.2.2.1
Cliente ........................................................................................................54
2.2.2.2
Director .......................................................................................................55
2.2.2.3
Desarrolladores ..........................................................................................55
2.2.2.4
Ejecutores de pruebas ................................................................................55
2.2.3
Ciclo de vida de un software .......................................................................55
2.2.3.1
Definición y análisis de requisitos ...............................................................56
2.2.3.2
Documento de requisitos del sistema informático .......................................56
2.2.3.2.1
Diagramas de flujo de datos .......................................................................57
2.2.3.3
Diseño del sistema informático ...................................................................58
2.2.3.3.1
Diseño de la base de datos ........................................................................58
2.2.3.3.2
Historias de usuario ....................................................................................59
2.2.3.3.3
Estimación de las historias de usuario ........................................................59
2.2.3.3.4
Iteraciones ..................................................................................................60
2.2.3.4
Codificación del sistema informático ...........................................................60
2.2.3.4.1
Reuniones regulares...................................................................................60
x
2.2.3.4.2
Programación en parejas ............................................................................60
2.2.3.4.3
Refactorización ...........................................................................................61
2.2.3.5
Pruebas del sistema informático .................................................................61
2.2.3.5.1
Pruebas unitarias ........................................................................................61
2.2.3.5.2
Pruebas de integración ...............................................................................61
2.2.3.6
Entrega del sistema informático ..................................................................61
2.2.3.7
Mantenimiento del sistema informático .......................................................62
III.
RESULTADOS Y DISCUSIÓN .....................................................................63
3.1
DIAGNÓSTICO ..........................................................................................63
3.1.1
Objetivo diagnóstico ...................................................................................63
3.1.2
Variables del diagnóstico ............................................................................63
3.1.3
Indicadores .................................................................................................63
3.1.4
Mecánica operativa.....................................................................................64
3.1.4.1
Determinación de la población ....................................................................64
3.1.4.2
Determinación de la muestra ......................................................................65
3.1.4.3
Fuentes de información ..............................................................................65
3.1.4.3.1
Fuentes primarias .......................................................................................65
3.1.4.3.2
Fuentes secundarias ..................................................................................66
3.1.5
Encuesta ....................................................................................................66
3.1.5.1
Tabulación y análisis de la información.......................................................66
3.2
DEFINICIÓN Y ANÁLISIS DE REQUISITOS ..............................................77
3.2.1
Caso de uso 1 ............................................................................................78
3.2.2
Caso de uso 2 ............................................................................................79
3.2.3
Caso de uso 3 ............................................................................................80
3.2.4
Caso de uso 4 ............................................................................................81
3.2.5
Caso de uso 5 ............................................................................................82
3.2.6
Caso de uso 6 ............................................................................................83
3.2.7
Caso de uso 7 ............................................................................................84
3.2.8
Caso de uso 8 ............................................................................................85
3.2.9
Caso de uso 9 ............................................................................................86
3.2.10
Caso de uso 10 ..........................................................................................87
3.2.11
Caso de uso 11 ..........................................................................................88
3.2.12
Caso de uso 12 ..........................................................................................89
3.2.13
Caso de uso 13 ..........................................................................................90
3.2.14
Denominación del sistema informático........................................................90
3.2.15
Equipo de desarrollo del sistema informático ..............................................90
xi
3.2.16
Usuarios del sistema informático ................................................................91
3.3
DISEÑO DEL SISTEMA INFORMÁTICO....................................................91
3.3.1
Módulos ......................................................................................................91
3.3.2
Arquitecturas Cliente-Servidor del sistema informático ...............................92
3.3.3
Historias de usuario ....................................................................................93
3.3.4
Estimación de las historias de usuario ......................................................102
3.3.5
Iteraciones ................................................................................................103
3.3.5.1
Primera iteración ......................................................................................104
3.3.5.2
Segunda iteración .....................................................................................104
3.3.5.3
Tercera iteración .......................................................................................104
3.3.6
Diseño de la base de datos ......................................................................105
3.3.6.1
Diseño conceptual de la base de datos ....................................................105
3.3.6.2
Diseño físico de la base de datos .............................................................107
3.4
CODIFICACIÓN DEL SISTEMA INFORMÁTICO .....................................112
3.5
PRUEBAS UNITARIAS Y DE INTEGRACIÓN ..........................................131
3.6
ACONDICIONAMIENTO DEL KIOSCO INFORMÁTICO ..........................139
3.6.1
Adquisición de componentes ....................................................................139
3.6.2
Diseño del mueble ....................................................................................142
3.7
ENTREGA DEL SISTEMA INFORMÁTICO ..............................................142
IV.
CONCLUSIONES Y RECOMENDACIONES ............................................144
4.1
CONCLUSIONES .....................................................................................144
4.2
RECOMENDACIONES .............................................................................145
BIBLIOGRAFÍA ..............................................................................................................146 LIBROS .........................................................................................................................146 SOPORTE ELECTRÓNICO...........................................................................................147 GLOSARIO ....................................................................................................................149 ANEXO 1 .......................................................................................................................150 ANEXO 2 .......................................................................................................................153 ANEXO 3 .......................................................................................................................163 ANEXO 4 .......................................................................................................................165 ANEXO 5 .......................................................................................................................167 ANEXO 6 .......................................................................................................................169 ANEXO 7 .......................................................................................................................207 ANEXO 8 .......................................................................................................................243
xii
LISTA DE TABLAS Tabla 1: Niveles de impacto ............................................................................................18 Tabla 2: Impacto educativo .............................................................................................19 Tabla 3: Impacto administrativo .......................................................................................20 Tabla 4: Impacto tecnológico...........................................................................................21 Tabla 5: Impacto económico ...........................................................................................22 Tabla 6: Impacto general .................................................................................................23 Tabla 7: Base de datos relacional ...................................................................................34 Tabla 8: Esquema de la tabla de estimación de historias de usuario ...............................60 Tabla 9: Matriz de relación ..............................................................................................64 Tabla 10: Detalle de la población ....................................................................................64 Tabla 11: Tabulación de datos de la pregunta Nº 1 .........................................................67 Tabla 12: Tabulación de datos de la pregunta Nº 2 .........................................................68 Tabla 13: Tabulación de datos de la pregunta Nº 3 .........................................................69 Tabla 14: Tabulación de datos de la pregunta Nº 4 .........................................................70 Tabla 15: Tabulación de datos de la pregunta Nº 5 .........................................................71 Tabla 16: Tabulación de datos de la pregunta Nº 6 .........................................................72 Tabla 17: Tabulación de datos de la pregunta Nº 7 .........................................................73 Tabla 18: Tabulación de datos de la pregunta Nº 8 .........................................................74 Tabla 19: Tabulación de datos de la pregunta Nº 9 .........................................................75 Tabla 20: Tabulación de datos de la pregunta Nº 10 .......................................................76 Tabla 21: Tabulación de datos de la pregunta Nº 11 .......................................................77 Tabla 22: Tabla de estimación de historias de usuario ..................................................103 Tabla 23: Tabla de pruebas unitarias del sistema informático SISLAB ..........................132 Tabla 24: Tabla de pruebas de integración del sistema informático SISLAB .................138 Tabla 25: Componentes del kiosco informático .............................................................139
xiii
LISTA DE FIGURAS Figura 1: Arquitectura Cliente-Servidor ...........................................................................30 Figura 2: Representación gráfica de entidades, atributos e identificadores .....................36 Figura 3: Representación gráfica de relaciones ..............................................................37 Figura 4: Representación gráfica de cardinalidad uno a muchos ....................................37 Figura 5: Representación gráfica de cardinalidad muchos a muchos ..............................38 Figura 6: Componentes de un diagrama de flujo de datos ..............................................58 Figura 7: Parte frontal de una tarjeta índice de historia de usuario..................................59 Figura 8: Parte trasera de una tarjeta índice de historia de usuario ................................59 Figura 9: Representación porcentual de la pregunta Nº 1 ..............................................67 Figura 10: Representación porcentual de la pregunta Nº 2 ............................................68 Figura 11: Representación porcentual de la pregunta Nº 3 ............................................69 Figura 12: Representación porcentual de la pregunta Nº 4 ............................................70 Figura 13: Representación porcentual de la pregunta Nº 5 ............................................71 Figura 14: Representación porcentual de la pregunta Nº 6 ............................................72 Figura 15: Representación porcentual de la pregunta Nº 7 ............................................73 Figura 16: Representación porcentual de la pregunta Nº 8 ............................................74 Figura 17: Representación porcentual de la pregunta Nº 9 ............................................75 Figura 18: Representación porcentual de la pregunta Nº 10 ..........................................76 Figura 19: Representación porcentual de la pregunta Nº 11 ..........................................77 Figura 20: Diagrama de flujo de datos del caso de uso 1 ................................................78 Figura 21: Diagrama de flujo de datos del caso de uso 2 ...............................................79 Figura 22: Diagrama de flujo de datos del caso de uso 3 ...............................................80 Figura 23: Diagrama de flujo de datos del caso de uso 4 ................................................81 Figura 24: Diagrama de flujo de datos del caso de uso 5................................................82 Figura 25: Diagrama de flujo de datos del caso de uso 6 ................................................83 Figura 26: Diagrama de flujo de datos del caso de uso 7 ................................................84 Figura 27: Diagrama de flujo de datos del caso de uso 8 ................................................85 Figura 28: Diagrama de flujo de datos del caso de uso 9 ................................................86 Figura 29: Diagrama de flujo de datos del caso de uso 10 ..............................................87 Figura 30: Diagrama de flujo de datos del caso de uso 11 ..............................................88
xiv
Figura 31: Diagrama de flujo de datos del caso de uso 12 ..............................................89 Figura 32: Diagrama de flujo de datos del caso de uso 13 ..............................................90 Figura 33: Módulos del sistema informático SISLAB ......................................................92 Figura 34: Arquitectura Cliente-Servidor del módulo de administración ..........................92 Figura 35: Arquitectura Cliente-Servidor del módulo de reservación ...............................92 Figura 36: Arquitectura Cliente-Servidor del módulo de bloqueo ....................................93 Figura 37: Modelo Entidad-Relación del sistema informático SISLAB ...........................106 Figura 38: Tablas de la base de datos del sistema informático SISLAB ........................110 Figura 39: Tablas de la base de datos del servidor FreeRADIUS .................................111 Figura 40: Vistas de la base de datos del sistema informático SISLAB .........................111 Figura 41: Componentes del kiosco informático............................................................140 Figura 42: Mueble de kiosco informático implementado ................................................141 Figura 43: Diseño del mueble del kiosco informático ....................................................142
ANTECEDENTES Y JUSTIFICACIÓN El uso de computadoras hoy en día, se ha extendido hasta abarcar gran parte del desarrollo de nuestras actividades diarias, ya sean estas de carácter personal, educacional o laboral, por ende existe la necesidad de llevar un control de las mismas, especialmente si su uso es compartido entre varios usuarios. La Pontificia Universidad Católica del Ecuador Sede Santo Domingo (PUCE SD) cuenta con el servicio de laboratorios de computación, estos albergan varias computadoras que se encuentran a disposición de diferentes tipos de usuarios, clasificados en dos grupos generales: internos y externos, como usuarios internos se encuentran los estudiantes, docentes y empleados de la universidad, y como usuarios externos las personas que no pertenecen a la universidad y se encuentran autorizados para el uso de las instalaciones y servicios que ésta ofrece. Los laboratorios de computación pueden usarse para dos propósitos diferentes: cátedra (clases, cursos, seminarios, exposiciones, entre otros, dirigidos por un docente) y uso personal (desarrollo de consultas, deberes, talleres, entre otros, referentes a fines académicos), estos son de uso abierto, es decir tanto usuarios internos como externos pueden utilizarlos dentro de los horarios establecidos para ello. Conforme la universidad crece en estudiantado, aparecen nuevos inconvenientes y necesidades que deben suplirse, en el caso de los laboratorios de computación, el aumento de su demanda y concurrencia, implica que: la planificación y distribución de horarios de clase se vuelva compleja, se saturen impidiendo satisfacer óptimamente la demanda, el personal encargado invierta mayor tiempo en su administración y control. Al inicio de cada ciclo académico, las secretarías de escuela realizan los horarios de clase con las respectivas asignaciones de laboratorios de computación, para las materias que lo requieran, estos son publicados para conocimiento de todos los usuarios, quienes únicamente durante las horas restantes pueden hacer uso personal con fines académicos de las computadoras sin necesidad de una reservación previa. El personal encargado de custodiar los laboratorios de computación pertenece al Área de Redes del Centro de Investigación de las Tecnologías de la Información y Comunicación (CITIC), quienes documentan de forma básica su uso durante clases, mediante un formato de registro en el que los docentes firman responsabilizándose por el tiempo
durante el cual lo han utilizado, pero no se documenta de igual forma para el resto de actividades académicas en que se emplean, así mismo, el personal encargado planifica y documenta la distribución de laboratorios de computación para clases, en formatos que se tornan extensos, difíciles de manipular y comprender en función al aumento de materias en las que se requiere utilizar laboratorios de computación. Además no existe personal dedicado al control permanente de los laboratorios de computación, por lo cual los usuarios permanecen sin vigilancia durante largos períodos de tiempo, imposibilitando conocer qué usuarios ingresaron e hicieron buen o mal uso de las computadoras. Como se puede apreciar, la administración y control actual de los laboratorios de computación ha generado varios inconvenientes, a continuación se especifican con mayor detalle los que han sido detectados:
No existen registros de los usuarios que ingresan y hacen uso de los laboratorios de computación, por lo que en caso de daño de las computadoras no se puede determinar y responsabilizar al usuario causante.
Debido al escaso control de los laboratorios de computación, es posible que usuarios externos ingresen y hagan uso de las computadoras sin autorización.
No es posible distribuir equitativamente el tiempo de uso de las computadoras, por lo que existen usuarios que las utilizan durante largos períodos de tiempo ya sea para fines académicos o inclusive entretenimiento, como descargar archivos (música, videos, imágenes, entre otros), chatear, jugar, entre otros; obligando a esperar a otros usuarios que requieren utilizar las computadoras o finalmente no puedan hacerlo.
El proceso de asignación de laboratorios de computación para clases es efectuado por las secretarias de cada una de las escuelas, quienes deben estar en contacto periódico con el personal del Área de Redes del CITIC, estos receptan la solicitud y posteriormente luego de revisar la documentación de disponibilidad, aceptan o rechazan la solicitud de asignación, implicando considerable tiempo e inclusive errores humanos.
Al llegar el docente a un laboratorio de computación para dictar clases previa reservación, este suele estar ocupado por usuarios que no pertenecen al grupo que le corresponde usarlo, lo cual repercute en tiempo perdido hasta que se desocupen las computadoras.
Después de realizar el análisis sobre los problemas y necesidades que la universidad posee sobre la administración y control de los laboratorios de computación, se propone como solución el presente proyecto realizado en el marco de los requerimientos del
proceso investigativo final de graduación, cuyo propósito es diseñar, desarrollar e implementar un sistema informático y acondicionar un kiosco, para administrar y controlar el uso de los laboratorios de computación en el campus 2 de la PUCE SD. El kiosco se acondicionará para que desde éste los usuarios puedan realizar la reservación de computadoras en el laboratorio de su elección. A nivel local en la provincia de Santo Domingo de los Tsáchilas, no existen instituciones educativas que hagan uso de un sistema informático para administrar y controlar el uso de sus laboratorios de computación, a nivel nacional, en el Ecuador son pocas las que lo tienen, entre estas se encuentran: la Pontificia Universidad Católica del Ecuador (sede matriz Quito), la Universidad Técnica Particular de Loja y la Escuela Politécnica del Litoral. Administrar y controlar el uso de computadoras, son necesidades que actualmente resultan sencillas cuando se realizan con ayuda de tecnología informática, además de ahorrar el recurso humano, se efectúan de manera más exhaustiva y eficiente. Existen en el mercado sistemas informáticos que realizan esta tarea, sin embargo no se ajustan a las necesidades propias de la PUCE SD. El uso del servicio de laboratorios de computación se realizará a través del manejo directo de un sistema informático, enriqueciendo la cultura tecnológica de los usuarios como entes activos de esta.
BENEFICIOS ESPERADOS Los beneficios esperados con la implementación del presente proyecto son:
Optimización del proceso de administración de los laboratorios de computación.
Reservación automatizada de las computadoras de los laboratorios para uso personal, por parte de usuarios internos y externos.
Reservación automatizada de las computadoras de los laboratorios para cátedra, exclusivamente para uso de los docentes y sus respectivos estudiantes.
Asignación de un período máximo para uso de las computadoras, de esta manera los usuarios aprovecharán eficazmente su tiempo, regulando el uso equitativo de los laboratorios de computación.
Generación de historiales de uso de las computadoras por laboratorio.
Los beneficiarios directos serán los usuarios de laboratorios de computación, el personal
encargado de la administración y control de los laboratorios de computación, así como los diferentes estamentos de la PUCE SD; los beneficiarios indirectos serán los miembros de la comunidad santodomingueña.
ANÁLISIS DE IMPACTOS Los impactos son los aspectos positivos o negativos, que la ejecución del presente proyecto provocará en determinadas áreas. El análisis de impactos puede realizarse de forma prospectiva o retrospectiva, siendo prospectiva cuando el proyecto aún no ha finalizado, es decir, se describen los beneficios que aportará el proyecto cuando se encuentre en ejecución, y retrospectiva cuando el proyecto ha finalizado, es decir, se describen los beneficios que el proyecto aportó durante su ejecución. Para el caso del presente proyecto el análisis será prospectivo. Los impactos generados se analizarán en una matriz que consta de: niveles de impacto e indicadores de impacto. Los niveles de impacto permiten representar cuantitativamente la trascendencia del proyecto en cada área analizada. En la siguiente tabla se detallan los niveles de impacto: Tabla 1: Niveles de impacto NIVEL DE IMPACTO
DESCRIPCIÓN DEL NIVEL DE IMPACTO
-3
Impacto alto negativo
-2
Impacto medio negativo
-1
Impacto bajo negativo
0
No hay impacto
1
Impacto bajo positivo
2
Impacto medio positivo
3
Impacto alto positivo
Fuente: Metodología para el Trabajo de Grado, Autor: POSSO YÉPEZ, pág. 199 Los indicadores de impacto son los cambios mensurables que se generarán con la ejecución del proyecto. Para cada área se determinan sus indicadores de impacto y a estos a su vez se les
asigna un valor numérico de nivel de impacto, seguido se realiza el promedio de los niveles de impacto por área, mediante la siguiente fórmula; Nivel de impacto por área = ∑ de los niveles de impacto / # de indicadores de impacto, el resultado obtenido se redondea al entero más cercano, por exceso o por defecto, finalmente se realiza el análisis. Las áreas de impacto más representativas para el presente proyecto se analizan en las siguientes matrices: Tabla 2: Impacto educativo IMPACTO EDUCATIVO NIVEL
-3
-2
-1
0
1
2
3
INDICADOR
Potenciación de otras investigaciones relacionadas a x
la autenticación de usuarios para el uso de computadoras.
Instauración de buenos hábitos de uso de los
x
laboratorios de computación.
Aplicable para otras instituciones educativas.
TOTAL
x 2
6
∑=8 Nivel de impacto educativo = 8 / 3 = 2,66 = 3 Nivel de impacto educativo = Impacto alto positivo Elaborado por: Los autores ANÁLISIS
El proyecto puede ser estudiado y tomado como guía para realizar otras investigaciones en base a la autenticación de usuarios para el uso de computadoras, amplía el panorama existente sobre como la tecnología puede usarse para facilitar nuestras actividades diarias.
Con el control de los laboratorios de computación se educa a los usuarios creando buenos hábitos de uso de los mismos, principalmente el proceso de uso de laboratorios se encamina a la organización y cuidado de las computadoras.
La investigación e implementación del proyecto puede ser aplicable en otras instituciones educativas que tengan el mismo problema, con ligeros cambios de integración de la información académica que puede diferir de una institución a otra. Tabla 3: Impacto administrativo IMPACTO ADMINISTRATIVO NIVEL
-3
-2
-1
0
1
2
3
INDICADOR
x
Optimización del proceso de administración y control de los laboratorios de computación.
x
Optimización de tiempos de administración y control de los laboratorios de computación.
Distribución
equitativa
de
tiempos
de
uso
x
de
computadoras en los laboratorios de computación.
Incremento del soporte para sistemas informáticos.
TOTAL
x 1
9
∑ = 10 Nivel de impacto administrativo = 10 / 4 = 2,5 = 3 Nivel de impacto administrativo = Impacto alto positivo Elaborado por: Los autores ANÁLISIS
Se requerirá el personal mínimo para administrar y controlar los laboratorios de computación, el sistema informático automatizará las actividades necesarias para esto, y lo realizará con mayor eficiencia. La información permanecerá centralizada en un solo lugar de almacenamiento, y será de acceso remoto dentro del campus de la PUCE SD desde las computadoras que tengan instalado el sistema informático.
El personal encargado invertirá menor tiempo en la administración y control de los laboratorios de computación.
Todos los usuarios podrán usar las computadoras ubicadas en los laboratorios de computación durante el período de tiempo designado para ello, el cual estará preestablecido en el sistema informático.
Se deberá designar a una persona del Área de Programación del CITIC para que de mantenimiento y soporte continuo al sistema informático, una vez entregado el
proyecto a la universidad. Tabla 4: Impacto tecnológico IMPACTO TECNOLÓGICO NIVEL
-3
-2
-1
0
1
2
3
INDICADOR
Culturización
tecnológica
de
los
usuarios
de
x
laboratorios de computación.
Fortalecimiento de la imagen tecnológica de la
x
universidad. TOTAL
4
∑=4 Nivel de impacto tecnológico = 4 / 2 = 2 Nivel de impacto tecnológico = Impacto medio positivo Elaborado por: Los autores ANÁLISIS
El hecho de hacer uso frecuente del sistema informático para acceder al servicio de laboratorios de computación, apoya a culturizar tecnológicamente a los usuarios; haciendo de la tecnología una herramienta útil en el quehacer diario.
Siendo la PUCE SD pionera en nuestra provincia al implementar un proyecto tecnológico para el uso del servicio de laboratorios de computación, la imagen tecnológica generada aumenta su prestigio de institución impulsadora de la investigación y el uso aplicativo de ésta.
Tabla 5: Impacto económico IMPACTO ECONÓMICO NIVEL
-3
-2
-1
0
1
2
3
INDICADOR
Disminución de gastos de administración y control de
x
los laboratorios de computación.
Aumento de costos de soporte para sistemas
x
informáticos.
Disminución gastos de adquisición de computadoras
x
para los laboratorios. TOTAL
2
2
∑=3 Nivel de impacto económico = 4 / 3 = 1.33 = 1 Nivel de impacto económico = Impacto bajo positivo Elaborado por: Los autores ANÁLISIS
En función a la disminución de tiempos requeridos para la administración y control de los laboratorios de computación, disminuyen los costos asociados al personal encargado de estas actividades.
Se deberá designar a una persona del Área de Programación del CITIC para dar soporte continuo al sistema informático, con la finalidad de mantenerlo actualizado y en línea, lo que representa una mayor inversión de tiempo en el mantenimiento de software de la universidad, por lo que los costos de soporte también aumentan.
Debido a la optimización de tiempos para uso de las computadoras de los laboratorios, se espera que la gran mayoría de estudiantes, docentes, empleados y usuarios externos puedan utilizarlos, solventando la aparente falta de computadoras.
El análisis de impactos finaliza con una matriz general, que sintetiza y visualiza los niveles de impacto de cada área, la misma que se detalla a continuación:
Tabla 6: Impacto general IMPACTO GENERAL NIVEL
-3
-2
-1
0
1
2
3
INDICADOR
Impacto educativo.
x
Impacto administrativo.
x
Impacto tecnológico.
Impacto económico.
TOTAL
x x 1
2
6
∑=9 Nivel de impacto general = 9 / 4 = 2,25 = 2 Nivel de impacto general = Impacto medio positivo Elaborado por: Los autores ANÁLISIS
La implementación del presente proyecto contribuye positivamente al progreso educativo, administrativo, tecnológico y económico de la PUCE SD, y del resto de instituciones educativas que deseen tomar este trabajo como base para su propio beneficio.
OBJETIVO GENERAL Diseñar, desarrollar e implementar un sistema informático a medida y acondicionar un kiosco, para la administración y control del uso de los laboratorios de computación en el campus 2 de la PUCE SD.
OBJETIVOS ESPECÍFICOS
Analizar la factibilidad del proyecto de disertación a través de la aplicación de una encuesta.
Realizar la definición y análisis de requisitos.
Diseñar el sistema informático en base a los requisitos preestablecidos.
Codificar el sistema informático.
Ejecutar las pruebas unitarias y de integración del sistema informático.
Implementar el kiosco informático de reservación de computadoras.
Entregar el sistema informático.
MARCO INSTITUCIONAL El presente proyecto se implementará en el campus 2 de la PUCE SD, bajo la aprobación del CITIC y de la Escuela de Sistemas y Computación, quienes ratificarán que el sistema informático y su documentación cumplen con las normas de calidad establecidas por las unidades académicas y de investigación. El Director de Disertación apoya en la coordinación de las actividades y precautela por el adecuado desarrollo del proyecto; los autores son los responsables de ejecutar cada una de las actividades y elaborar su documentación. Una vez entregado el proyecto, será la PUCE SD el único custodio de su contenido, posterior manejo y mantenimiento.
RESUMEN DE ACTIVIDADES El desarrollo de las actividades del proyecto ha sido supervisado periódicamente por el Director de Disertación a través de reuniones; a continuación se detallan brevemente las actividades desarrolladas:
Definición y análisis de requisitos; esta actividad origina el documento de requisitos del sistema informático.
Diseño del sistema informático en base a los requisitos preestablecidos.
Codificación del sistema informático, implementando la solución a través de un software basado en el diseño del sistema informático.
Pruebas unitarias y de integración del sistema informático, las cuales pretenden encontrar defectos oportunamente para su corrección.
Adquisición de una computadora y un mueble para la implementación del kiosco informático de reservación de computadoras.
Entrega del sistema informático al CITIC.
I I. 1.1
MARCO TEÓRICO
SOFTWARE “Software es la suma total de los programas de una computadora, procedimientos, reglas, documentación asociada y los datos que pertenecen a un sistema de cómputo”1, es la parte intangible de una computadora, es decir, programas, aplicaciones, sistemas informáticos, etc. El propósito de un software se encuentra definido y estructurado en su código fuente, el cual contiene las líneas de instrucción que regulan su funcionamiento.
1.1.1 Software libre “Se denomina software libre, a todo software que se caracteriza por permitir a sus usuarios las libertades siguientes:
Ejecutar el programa para cualquier propósito.
Estudiar cómo trabaja el programa, y realizar cambios.
Acceder al código fuente.
Redistribuir copias.
Distribuir copias de sus versiones modificadas a terceros” 2.
Para que estas libertades se cumplan, el acceso al código fuente es indispensable. El software libre no es necesariamente software gratuito, ya que puede estar disponible para su uso comercial, por lo que es imprescindible obviar los términos “regalar” o “gratis”, debido a que puede interpretarse como una cuestión de precio y no de libertad, pero sin importar como se obtenga debe cumplir con las características especificadas anteriormente para ser considerado como tal.
1
Institute of Electrical and Electronics Engineers. IEEE Software Engineering Standard 729-1993: Glossary of Software Engineering Terminology. IEEE Computer Society Press. 2 Free Software Foundation. “La Definición de Software Libre”. http://www.gnu.org/philosophy/freesw.es.html. 28/06/2010.
26
1.1.2 Software propietario Se denomina software propietario, al software que los usuarios tienen restricciones para ejecutarlo, estudiarlo, modificarlo o redistribuirlo, por lo que su código fuente no se encuentra disponible, o el acceso a este es restringido. En este caso una persona natural o jurídica posee los derechos de autor de forma exclusiva sobre el software.
1.2
SISTEMA OPERATIVO Un sistema operativo es el software intermediario entre el hardware y las aplicaciones de una computadora. La parte principal de un sistema operativo es el núcleo (kernel), que provee las funciones más básicas de una computadora, incluyendo:
Archivos del sistema.- Proveen la estructura bajo la cual la información es almacenada en la computadora.
Controladores de dispositivos (drivers).- Proveen las interfaces para cada dispositivo de hardware conectado a la computadora.
Interfaces de usuario.- Permite que los usuarios ejecuten programas y tengan acceso a los archivos del sistema.
Servicios del sistema.- Proporcionan las características del sistema operativo principal como servicios web, servicios de archivos, impresión, criptografía, informe de errores, muchas de las cuales se inicializan automáticamente cuando la computadora se enciende.
1.2.1 Linux Linux es un sistema operativo tipo Unix catalogado como software libre, creado por Linus Torlvalds cuando era un estudiante de la Universidad de Helsinki en el año de 1991, empezó escribiendo el núcleo, luego lo puso a disposición del público a través de Internet y pidió que lo mejoraran. Hoy en día, existen miles de desarrolladores de software alrededor del mundo que contribuyen con la comunidad de software libre que apoya la iniciativa de Linux. Debido a que el código fuente de Linux se encuentra disponible gratuitamente, cualquier persona puede modificarlo y mejorarlo. Los desarrolladores comparten sus arreglos y mejoras con la comunidad, y de esta manera Linux continúa creciendo y perfeccionándose.
27
Linux proporciona una plataforma estable, soporte extendido para mantenimiento, seguridad de bajo riesgo para actualizaciones, diseñada para corregir problemas específicos sin necesidad de realizar grandes cambios en las aplicaciones de software, lo que es muy importante en entornos de producción donde se necesita proteger a los servidores contra las últimas amenazas. Linux garantiza que durante sus actualizaciones, la Interfaz Binaria de la Aplicación (ABI) y la Interfaz de Programación de Aplicaciones (API), no van a cambiar, esto significa que la ejecución
del
software
luego
de
la
actualización,
seguirá
funcionando
normalmente. Las actualizaciones y corrección de errores para Linux son proveídas regularmente. Existen sistemas operativos basados en el núcleo de Linux, que incluyen paquetes y ficheros organizados y listos para su instalación, a los cuales se denomina distribuciones de Linux. Entre las principales distribuciones de Linux tenemos; Debian, Ubuntu, Linux Mint, Knoppix, MEPIS, Red Had Enterprise Linux, Gentoo, Sabayon Linux, Slackware, SuSE, PCLinuxOS, Mandriva, ArchLinux.
1.2.2 Windows Windows es un sistema operativo catalogado como software propietario, lanzado y comercializado por primera vez en 1985 como una nueva versión del sistema operativo MS-DOS, que incluía una interfaz gráfica de usuario y un mejor rendimiento. Microsoft, la empresa propietaria de MS-DOS y Windows, fue fundada en el año de 1975 por Bill Gates y Paul Allen, llegando a liderar el mercado de sistemas operativos. Windows dispone de versiones para diferentes entornos informáticos, incluyendo computadoras domésticas, de negocios, equipos portátiles y servidores, cubriendo las necesidades específicas de cada grupo de usuarios. Cada nueva versión supera a su predecesora, ofreciendo entornos gráficos amigables y fáciles de utilizar, brindando soluciones prácticas, ambientes multiusuario, compatibilidad con gran cantidad de dispositivos y soporte técnico. Windows se ha caracterizado y popularizado gracias a su constante preocupación por facilitar su manejo. Las versiones de Windows en la última década son:
Windows 2000, en las ediciones siguientes: Professional, Server, Advanced
28
Server, Datacenter Server.
Windows Me.
Windows XP, en las ediciones siguientes: Home, Professional, Media Center, Tablet PC.
Windows Server 2003, en las ediciones siguientes: Web, Standard, Datacenter, SmallBusiness.
Windows Fundamentals for Legacy PC.
Windows Vista, en las ediciones siguientes: Starter, Home Basic, Premium, Business, Enterprise, Ultimate, Home Server.
Windows Server 2008, en las ediciones siguientes: Standard, Enterprise, Datacenter Edition, HPC, Web, Storage, Small Business, Essential Business, Foundation, R2.
Windows 7, en las ediciones siguientes: Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate.
1.3
RED Es una infraestructura diseñada para transmitir datos. La infraestructura física de una red está compuesta por dispositivos interconectados que además de incluir a los dispositivos finales (computadoras, teléfonos, impresoras, cámaras de seguridad, dispositivos móviles, entre otros), a los que los usuarios están habituados, incluye dispositivos intermedios (hubs, switches, routers, firewall, entre otros), para proporcionar conectividad, estas conexiones denominadas medios de transmisión pueden ser alámbricas o inalámbricas. El software que permite establecer la conectividad entre dispositivos finales para la transmisión de datos, son los servicios, que incluyen una gran cantidad de aplicaciones que utilizan comúnmente los usuarios. Las redes de datos se clasifican según su área de cobertura en:
1.3.1 Red de área local (LAN) Es una red individual de propiedad privada, que cubre una única área geográfica y proporciona transmisión de datos a personas dentro de la misma organización, su velocidad de transmisión oscila entre los 10, 100 y 1000 Mbps (Megabits por segundo).
29
1.3.2 Red de área metropolitana (MAN) Es la interconexión de varias redes LAN. Es una red de alta velocidad ya que trabaja sobre fibra óptica y par trenzado como medios de transmisión de datos, se ubica dentro de una ciudad y la distancia de cobertura es mayor de 4 Km., este tipo de red puede ser de propiedad pública o privada.
1.3.3 Red de área amplia (WAN) Es una red que interconecta países y continentes (redes LAN y WAN), con la finalidad de que sus usuarios puedan acceder a recursos de otras redes que no pertenecen a la organización local. La red WAN más conocida y utilizada es Internet.
1.3.4 Dirección IP Una dirección IP (por sus siglas en inglés, Internet Protocol), permite identificar de forma lógica a los dispositivos de una red, de esta forma se logran transmitir datos a través de redes LAN, MAN y WAN.
1.3.5 Dirección MAC Conocida también como dirección física (por sus siglas en ingles MAC, Media Access Control), permite identificar de forma única a cada dispositivo, independientemente de la red a la que pertenezca. Cada dirección MAC resulta única a nivel mundial y es escrita en el hardware del dispositivo al momento de su fabricación.
1.4
ARQUITECTURA CLIENTE-SERVIDOR Esta arquitectura se basa en la idea de “servicio”, en donde el cliente es quien consume servicios (como acceso a base de datos, impresión, e-mail, video, mensajería y telefonía), y el servidor quien se los provee. Los clientes y servidores pueden estar distribuidos en distintos puntos geográficos, conectados por medio de redes LAN, MAN o WAN.
1.4.1 Cliente El cliente es quien inicia la comunicación con el servidor a través de peticiones de servicios, en espera de una respuesta por parte del servidor; es también conocido como front-end.
30
1.4.2 Servidor El servidor es el encargado de recibir las múltiples peticiones de los clientes, sobre algún servicio que administra, y dar respuesta a estas; es también conocido como back-end. Figura 1: Arquitectura Cliente-Servidor
Red Petición
Respuesta
Cliente Servidor Elaborado por: Los autores
1.4.3 Funcionamiento de una arquitectura Cliente-Servidor 1. El cliente solicita un servicio. 2. El servidor recibe la petición del cliente. 3. El servidor procesa la solicitud. 4. El servidor envía el resultado obtenido al cliente. 5. El cliente recibe el resultado y lo procesa.
1.5
KIOSCO INFORMÁTICO Un kiosco informático es un mueble que alberga una computadora, ubicado generalmente en sitios públicos, cuya finalidad es brindar algún tipo de servicio a través de un sistema informático. Los kioscos informáticos permiten a los usuarios acceder a servicios de forma directa, en horarios ininterrumpidos, y pueden permanecer activos las 24 horas del día según las necesidades de la empresa o institución. Existen varios tipos de kioscos informáticos, los más comunes son:
Kiosco de reservación de turnos.- Permite a los usuarios reservar un turno para ser atendidos, estos kioscos eliminan las largas colas de usuarios, asignándoles a cada uno, un código secuencial por medio del cual serán atendidos ordenadamente.
Kioscos informativos.- Permite a los usuarios consultar información sobre la
31
institución o empresa en que se encuentran, como su distribución física para facilitar su ubicación y búsqueda de departamentos, procesos, servicios, promociones, etc., o cualquier información que se considere importante dar a conocer.
Kioscos de cajero automático.- Permite a los usuarios realizar retiros, depósitos y/o consultas de sus cuentas bancarias.
Kioscos de control de personal.- Permite al personal de una empresa registrar su entrada y salida del trabajo, facilitando y agilitando de esta manera el control del personal.
Kioscos de impresión.- Permite a los usuarios imprimir documentos de manera controlada, el kiosco registra toda la información sobre las actividades realizadas por el usuario, como número de impresiones, fecha de la impresión, hora de la impresión, etc.
Kiosco de reservación de computadoras.- Permite a los usuarios reservar computadoras durante un período de tiempo para su utilización, las empresas o instituciones que los utilizan, controlan de esta manera el uso de sus laboratorios de computación.
1.5.1 Componentes de un kiosco informático Un kiosco informático está conformado por varios componentes, dependiendo del servicio que ofrece a los usuarios, a continuación se describen los más comunes:
1.5.1.1 Mueble El mueble de un kiosco informático es una estructura, elaborada en madera, metal, plástico, o mixta (combinación de varios materiales), diseñada para facilitar el uso de la computadora que contiene y sus dispositivos.
1.5.1.2 Computadora cliente Es la computadora en que se instala parte del sistema informático, usualmente un módulo que permite brindar el servicio a los usuarios. Esta computadora se conecta a un servidor ubicado remotamente por medio de la red, para acceder a los datos.
1.5.1.3 Monitor Dispositivo de salida de una computadora, que muestra la salida de los resultados procesados. Muchos de los kioscos informáticos utilizan monitores
32
táctiles, que son considerados dispositivos de entrada y salida de una computadora, puesto que, además de visualizar los resultados, permite ingresar datos mediante el contacto directo con su superficie.
1.5.1.4 Teclado Dispositivo de entrada de una computadora, que permite ingresar datos para su procesamiento. Los kioscos informáticos poseen gran variedad de teclados, muchos de estos poseen tan solo unas cuantas teclas, dependiendo de los servicios que presta el kiosco.
1.5.1.5 Mouse Dispositivo de entrada de una computadora, que permite interactuar con ésta a través de un puntero presentado en pantalla. Pocos kioscos informáticos utilizan estos dispositivos, debido que los monitores táctiles reemplazan la función del mouse.
1.5.1.6 Lector de banda magnética Dispositivo de entrada de una computadora, permite leer datos de tarjetas con banda magnética (tarjetas de débito/crédito, credenciales personales, etc.) para su procesamiento. Los kioscos informáticos utilizan estos dispositivos para autenticar a los usuarios.
1.5.1.7 Lector de código de barras Dispositivo de entrada de una computadora, que permite escanear y decodificar un código de barras para su procesamiento. Los códigos de barras son una forma diferente de codificar números y letras, usando una combinación de barras y espacios en diferentes medidas. Los kioscos informáticos utilizan estos dispositivos para autenticar a los usuarios.
1.5.1.8 Lector biométrico Dispositivo de entrada de una computadora, permite el reconocimiento único de personas basándose en sus rasgos físicos, siendo los más comunes; voz, iris, sistemas dactilares y faciales, para su procesamiento. Los kioscos informáticos utilizan estos dispositivos para autenticar a los usuarios.
33
1.5.1.9 Impresora Dispositivo de salida de una computadora, que muestra físicamente los resultados
procesados,
generalmente
sobre
papel.
Muchos
kioscos
informáticos hacen uso de impresoras para entregar una constancia de las transacciones realizadas por los usuarios, en forma de recibos. En el caso de los Kioscos de impresión, se entrega el producto requerido en forma de documentos impresos.
1.6
BASE DE DATOS Una base de datos es una colección de datos interrelacionados, almacenados de forma ordenada. La misma que debe cumplir con las siguientes características generales:
Capacidad suficiente.- La función primaria de una base de datos es almacenar grandes cantidades de información.
Seguridad adecuada.- Proteger la información almacenada, no únicamente de actividades maliciosas, sino además de intentos de acceso no autorizados, eliminación o modificación accidentales de información, errores de hardware y desastres naturales.
Ambiente
multiusuario.-
La
información
almacenada
debe
permanecer
consistente, inclusive durante el acceso simultáneo de varios usuarios.
Eficacia.- Los usuarios necesitan contar con un rápido acceso a la información.
Escalabilidad.- La base de datos debe ser flexible y fácilmente adaptable a las necesidades cambiantes del negocio o institución.
Facilidad de uso.- Los datos deben ser fáciles de manipular, los usuarios deben acceder a estos a través de una interfaz gráfica de usuario amigable.
Existen diferentes tipos de base de datos, entre las que tenemos; base de datos legacy, que hacen referencia a las antiguas base de datos (archivos planos, base de datos jerárquicas y en red); base de datos relacional; y base de datos orientada a objetos. Enormes cantidades de tiempo y esfuerzo son dedicados para construir, estudiar y perfeccionar una base de datos, debido a que constituye el cimiento de una aplicación. La persona responsable de velar por el correcto diseño, funcionamiento y mantenimiento de la base de datos se denomina Administrador de la Base de
34
Datos (por sus siglas en inglés DBA, Database Administrator).
1.6.1 Base de Datos Relacional La base de datos relacional fue concebida en el año de 1969, por el Dr. Edgar F. Cood, quién fue un investigador de IBM, su insatisfacción con los modelos y productos de base de datos de aquel entonces lo llevó a buscar nuevas formas de manipular grandes cantidades de datos. El Dr. Cood presentó el modelo relacional en su histórico documento “Un modelo relacional de datos para grandes bancos de datos compartidos” en junio de 1970. Una base de datos relacional es una colección de datos interrelacionados, almacenados de forma ordenada en estructuras denominadas tablas. Actualmente es el tipo de base de datos más utilizado en aplicaciones de software, proveen un alto grado de independencia de datos, que es la habilidad de realizar cambios en la estructura lógica y física de una base de datos, sin la necesidad de reprogramar las aplicaciones.
1.6.1.1 Tablas, filas y columnas De forma general se puede pensar en una base de datos relacional como una colección de tablas, formada por filas y columnas. Las columnas denominadas también campos, contienen cada una el mismo tipo de información, por ejemplo, si tenemos una tabla de clientes, la primera columna contendrá únicamente nombres, la segunda apellidos y la tercera números de teléfono. Las filas, denominadas también registros corresponden a valores de las columnas relacionadas, según el propósito de la tabla, es decir, una fila determinada de la tabla contendrá todos los datos de un cliente específico. Tabla 7: Base de datos relacional NOMBRE
APELLIDO
NÚMERO DE TELÉFONO
José
Carrillo
094236834
María
Hernández
080963254
Carolina
Martínez
097125123
Elaborado por: Los autores
1.6.1.2 Relaciones, atributos y tuplas El nombre formal para una tabla es “relación”, el nombre formal para una
35
columna es “atributo”, y el nombre formal para una fila es “tupla”. No se debe confundir el término formal “relación” (que significa tabla) con el uso informal de este, por ejemplo “relación entre” o “relacionada a”, que generalmente se usa para describir la relación existente entre tablas.
1.6.1.3 Claves Una clave es la combinación de una o más columnas, que es utilizada para localizar filas en una tabla. Existen diferentes tipos de claves, entre las más utilizadas y difundidas tenemos:
Clave compuesta.- Está conformada por dos o más columnas.
Súper clave.- Está conformada por un conjunto de columnas donde dos o más filas no pueden tener el mismo valor.
Clave única.- Es una súper clave usada para exigir unicidad a la base de datos.
Clave primaria.- Es una clave única utilizada para ubicar rápidamente registros en la base de datos.
Clave foránea.- Es usada como restricción para almacenar información en la base de datos.
1.6.1.4 Índices Los índices son estructuras de la base de datos que hace más rápidas y fáciles las búsquedas de una o más columnas. Los índices y claves se encuentran estrechamente relacionados, pero no son lo mismo.
1.6.2 Sistema Gestor de Base de Datos Un Sistema Gestor de Base de Datos (por sus siglas en inglés DBMS, Database Management System), es un software que permite crear, mantener, modificar y manipular una base de datos. Existen en el mercado una gran variedad de DBMS, que se ofrecen como software libre o propietario. Los DBMS para base de datos relacionales se denominan Sistemas Gestores de Base de Datos Relacionales (por sus siglas en inglés RDBMS, Relational Database Management System), entre los más conocidos se encuentran; IBM DB2 UDB, Oracle, Microsoft SQL Server, Sybase, Informix, MySQL, PostgreSQL.
36
1.6.3 Modelo Entidad-Relación Es un modelo conceptual para el modelado de datos, cuya finalidad es identificar las entidades que son importantes para la solución del problema, y las interrelaciones existentes entre estas entidades. El Modelo Entidad-Relación (MER) permite clarificar el problema, mediante la elaboración de un esquema permanente de la estructura de los datos.
1.6.3.1 Entidades, atributos e identificadores Una entidad es una colección de objetos del mundo real, con propiedades comunes denominadas atributos. Y un identificador es un atributo o conjunto de atributos que toman un valor único por cada instancia de la entidad. Para representar gráficamente las entidades se utilizan rectángulos, para los atributos se utilizan elipses unidos por líneas a las entidades, y si alguno de los atributos es un identificador se subraya su nombre. Por ejemplo, la representación en un MER de la entidad “empleado”, junto con sus atributos número de identificación, nombre y apellido, donde el identificador es el número de identificación; se grafica de la siguiente manera: Figura 2: Representación gráfica de entidades, atributos e identificadores EmpleadoID
Nombre
Apellido
Empleado
Elaborado por: Los autores
1.6.3.2 Relaciones En un MER, la relación existente entre entidades se representa con un rombo, y su nombre debe ser muy descriptivo, de tal forma que sea entendible a primera vista. Además se pueden agregar atributos a las relaciones, tal como se agregarían a una entidad. Los nombres de las relaciones son usualmente verbos. Por ejemplo, la relación entre las entidades “persona” y “carro” sería manejar, entonces se diría de forma general que “las personas manejan carros”, y se grafica de la siguiente manera:
37
Figura 3: Representación gráfica de relaciones Persona
Maneja
Carro
Elaborado por: Los autores
1.6.3.3 Cardinalidad La cardinalidad determina el tipo de relación existente entre dos entidades. Podemos encontrar tres tipos de cardinalidad: uno a uno (1:1), uno a muchos (1:M), y muchos a muchos (M:M) o (M:N).
1.6.3.3.1 Uno a uno Dos entidades tienen una cardinalidad uno a uno (1:1) cuando una sola instancia de la primera entidad se relaciona a una sola instancia de la segunda entidad, y viceversa. Usualmente cuando se identifica una relación de uno a uno, las entidades implicadas se unifican y los atributos se mantienen.
1.6.3.3.2 Uno a muchos Dos entidades tienen una cardinalidad de uno a muchos (1:M) cuando una sola instancia de la primera entidad se relaciona con varias instancias de la segunda entidad, pero una sola instancia de la segunda entidad se relaciona con una sola instancia de la primera entidad. Por ejemplo, la relación entre las entidades “empleados” y “autos” es de uno a muchos, ya que un solo empleado puede vender varios autos, y un solo auto puede ser vendido por un solo empleado.
Figura 4: Representación gráfica de cardinalidad uno a muchos Empleado
1
Vender
M
Auto
Elaborado por: Los autores
1.6.3.3.3 Muchos a muchos Dos entidades tienen una cardinalidad de muchos a muchos (M:M o M:N) cuando una sola instancia de la primera entidad se relaciona a varias
38
instancias de la segunda entidad, y viceversa. Por ejemplo, la relación entre las entidades “receta” e “ingredientes” es de muchos a muchos, ya que una sola receta puede contener varios ingredientes, y un solo ingrediente puede ser contenido por varias recetas. Figura 5: Representación gráfica de cardinalidad muchos a muchos Receta
M
Contiene
M
Ingrediente
Elaborado por: Los autores
1.6.4 Lenguaje de consulta estructurado (SQL) El lenguaje de consulta estructurado (por sus siglas en inglés SQL, Structured Query Language), fue desarrollado por IBM a mediados de la década de 1970, en aquel entonces conocido como SEQUEL, en base al trabajo del Dr. Edgar F. Cood, con el objetivo de encontrar un método de estandarización de acceso y manipulación de datos para base de datos relacionales. En el año de 1979, una compañía conocida como Relational Software Inc. (hoy conocida como Oracle Corporation) lanzó la primera versión comercial de SQL. SQL es un estándar introducido por el Instituto Nacional Americano de Estándares (por sus siglas en inglés ANSI, American National Standards Institute) y por la Organización Internacional de Estandarización (por sus siglas en inglés ISO, International Standards Organization), que presenta un conjunto de normas lógicas y de sintaxis para uso de base de datos relacionales, y provee las siguientes funcionalidades:
Consulta a la base de datos para recuperación de datos almacenados.
Modificación de los datos existentes en la base de datos.
Inserción de nuevos datos en la base de datos.
Eliminación de datos no deseados en la base de datos.
Adición de permisos a los objetos de la base de datos (tablas, vistas, procedimientos, funciones, etc.).
Modificación de la estructura de la base de datos.
Configuración de la seguridad de la base de datos.
Gracias a SQL, programadores y DBAs tienen el beneficio de aprender un lenguaje que con pequeños ajustes es aplicable a una gran variedad de base de
39
datos. Existen cinco tipos de instrucciones SQL, las cuales se definen a continuación:
1.6.4.1 Instrucciones de consulta Permiten recuperar datos almacenados en las tablas de la base de datos. Una consulta se escribe mediante la instrucción SQL SELECT.
1.6.4.2 Lenguaje de manipulación de datos (DML) Conocido en inglés como Data Manipulation Language, permite modificar el contenido de las tablas de la base de datos. Existen tres sentencias DML:
INSERT.- Permite agregar filas a una tabla.
UPDATE.- Permite modificar los datos almacenados en una tabla.
DELETE.- Permite eliminar filas de una tabla.
1.6.4.3 Lenguaje de definición de datos (DDL) Conocido en inglés como Data Definition Language, permite definir las estructuras de datos, como tablas, que conforman una base de datos. Existen cinco tipos básicos de sentencias DDL:
CREATE.- Permite crear una estructura de base de datos. Por ejemplo, CREATE TABLE Se utiliza para crear una tabla, CREATE USER se utiliza para crear un usuario de base de datos.
ALTER.- Permite modificar una estructura de base de datos. Por ejemplo, ALTER TABLE se utiliza para modificar una tabla.
DROP.- Permite eliminar una estructura de base de datos. Por ejemplo, DROP TABLE se utiliza para eliminar una tabla.
RENAME.- Permite cambiar el nombre de una tabla.
TRUNCATE.- Permite borrar todo el contenido de una tabla.
1.6.4.4 Instrucciones de control de transacciones (TC) Conocidas en inglés como Transaction Control, permiten grabar de forma permanente los cambios realizados en las tablas o deshacer los cambios. Existen tres instrucciones TC:
COMMIT.- Permite grabar de forma permanente los cambios realizados en las
40
tablas.
ROLLBACK.- Permite deshacer los cambios realizados a las tablas.
SAVEPOINT.- Permite establecer un "punto de retorno" al que se pueden revertir los cambios realizados en las tablas.
1.6.4.5 Lenguaje de control de datos (DCL) Conocido en inglés como Data Control Language, permite cambiar los permisos de las estructuras de base de datos. Existen dos instrucciones DCL:
GRANT.- Permite otorgar permisos a otros usuarios a las estructuras de base de datos, como tablas.
REVOKE.- Permite evitar que otros usuarios accedan a las estructuras de base de datos, como tablas.
1.6.5 Oracle 10g Oracle 10g es un RDBMS potente y flexible para bases de datos relacionales, lanzado al mercado en el año 2004, su propietario es Oracle Corporation, la empresa líder de base de datos comerciales. Con Oracle 10g, los DBAs poseerán una base de datos simple de configurar, robusta y auto-gestionable. Los avances en escalabilidad y rendimiento de la base de datos se basan en el modelo grid computing de Oracle. Grid computing ha revolucionado la idea de las empresas, de poseer varios servidores individuales, en donde cada uno de ellos está dedicado a un pequeño número de aplicaciones, desperdiciando de esta manera los recursos de hardware como memoria, CPU, y disco. En comparación, las bases de datos configuradas bajo el modelo grid computing de Oracle, que pueden utilizar el número de servidores que sea necesario, integrándolos como uno solo, para hacer más eficiente el uso de los recursos de hardware. Para el diseño de aplicaciones basadas en Oracle 10g, es necesario entender cómo Oracle manipula los datos almacenados, mediante el uso de PL/SQL.
1.6.5.1 Lenguaje procedural / Lenguaje de consulta estructurado (PL/SQL) El Lenguaje procedural / Lenguaje de consulta estructurado (por sus siglas en inglés PL/SQL, Procedural Language / Structured Query Language) es el lenguaje de procedimiento de Oracle que permite agregar construcciones de programación en torno a SQL. PL/SQL se utiliza principalmente para la adición
41
de procedimientos y funciones en una base de datos, para implementar una lógica de negocio. PL/SQL contiene construcciones de programación estándar, tales como:
Bloques
Declaración de variables y tipos de variables
Condicionales lógicos
Bucles
Cursores
Procedimientos
Funciones
Paquetes
1.6.5.2 TOAD for Oracle Toad for Oracle es una herramienta usada para desarrollo SQL y PL/SQL, que permite la administración de bases de datos, y asiste a los desarrolladores en la utilización de aplicaciones basadas en Oracle, bajo la plataforma Windows. Toad posee las siguientes características3:
Permite entender el entorno de base de datos a través de representaciones visuales.
1.7
Automatización y flujos de trabajo sin problemas.
Desarrollo y administración de tareas desde una sola herramienta.
Consulta de múltiples plataformas y herramientas de modelado de datos.
Valida el código de la base de datos para asegurar un mejor rendimiento.
Permite administrar y compartir proyectos, plantillas y scripts, entre otros.
MODELO AAA Cuando de diseñar una red se trata, es impensable obviar el tema de seguridad de la red, sin embargo no siempre fue así, y han sido los eventos políticos, sociales y económicos de la última década, los que han forzado a no tomar a la ligera este tema. A pesar de que la seguridad no es medible en términos de ingresos económicos, y al contrario conlleva mayor tiempo de diseño y costos adicionales,
3
Quest Software. “Toad for Oracle”. http://www.quest.com/toad-for-oracle/. 19/12/2010.
42
su
falta
podría
traer
secuelas
catastróficas.
Como
resultado
de
esta
concientización, el campo de seguridad de redes ha ganado gran atención, por lo que varios estándares, protocolos, y procedimientos han sido desarrollados. El acceso a la red necesita ser controlado, los usuarios y dispositivos necesitan ser autorizados para usar una variedad de servicios y funciones por los que usualmente se paga. Es aquí donde aparece el modelo AAA (Authentication, Authorization and Accounting), y sirve para gestionar e informar todas las transacciones ocurridas de principio a fin. Antes de que el modelo AAA fuera desarrollado, equipos individuales debían ser usados para autenticar usuarios. Sin la existencia de un estándar formal, cada computadora poseía su propio método de autenticación. El AAA Working Group, fue formado por la IETF (por sus siglas en inglés, Internet Engineering Task Force) con la finalidad de crear una arquitectura funcional, que pudiera eliminar las limitaciones existentes mediante la creación de un modelo estándar. El modelo AAA se centra en los tres aspectos cruciales de control de acceso a usuarios: autenticación, autorización y auditoria, respectivamente.
1.7.1 Autenticación Consiste en probar la identidad del cliente que puede ser una persona o computadora, que solicita acceso a los recursos de la red, para lo cual presenta su identificación junto con una serie de credenciales que la validan. Posteriormente estas credenciales son usadas para verificar que la identificación presentada realmente le pertenece al cliente. La forma más común de autenticar clientes que conocemos es por medio de un nombre de usuario y contraseña, esta información conformaría las credenciales solicitadas para validar la autenticidad del cliente, las mismas que varían según la aplicación.
1.7.2 Autorización Consiste en otorgar permisos de acceso al usuario autenticado, estos pueden ser: servicio de internet, uso de una computadora, información confidencial, cualquier otro servicio, aplicación, o información que le pertenezca a la red.
43
1.7.3 Auditoria Consiste en recolectar información sobre los recursos de red que han consumido los usuarios durante su acceso, de acuerdo a las necesidades propias de la aplicación. Esta información puede incluir la cantidad de datos que el usuario ha enviado y/o recibido durante su acceso, el tiempo que duró su acceso. Los datos obtenidos de la auditoria son de gran utilidad para el administrador del servidor AAA.
1.8
RADIUS Remote Authentication Dial-In User Service cuyo acrónimo es RADIUS, es un protocolo diseñado originalmente por la empresa fabricante de servidores Livingston, para ser usado en su serie Portmaster, desde entonces ha sido implementado por cientos de empresas e instituciones y se ha convertido en un estándar de Internet RFC. Fue el primer protocolo desarrollado bajo el modelo AAA, que exhibía todas sus funcionalidades. Diseñado según RFC 2865 (Remote Authentication Dial In User Service RADIUS) y RFC 2866 (RADIUS Accounting), permite el control de acceso a usuarios remotos que desean utilizar un servicio. Usado mayormente por proveedores de servicio de Internet, también es conveniente implementarlo en aplicaciones donde se requiere controlar y administrar usuarios centralizadamente. Utiliza UDP como protocolo subyacente para transmitir paquetes entre cliente y servidor, el puerto UDP registrado para tráfico RADIUS es el 1812, y cuando se utiliza para auditoria el puerto UDP registrado es el 1813.
1.8.1 FreeRADIUS FreeRADIUS es un servidor RADIUS de alto rendimiento y configurable, sus desarrolladores hablan en forma general de su producto de la siguiente manera: “FreeRADIUS es el servidor RADIUS de mayor despliegue en el mundo. Es la base para múltiples ofertas comerciales. Cubre las necesidades AAA de muchas empresas Fortune-500 e ISPs. También es ampliamente utilizado en la comunidad académica, incluyendo eduroam. El servidor es rápido, rico en características, modular y escalable.”4
4
FreeRadius. “The FreeRADIUS Project”. http://freeradius.org. 28/05/2010.
44
FreeRADIUS soporta los protocolos de autenticación PAP, CHAP y EAP con MD5, TLS, TTLS, y PEAP, es desarrollado bajo la GNU General Public Licence, Versión 2 (GPLv2), y es gratuito para descargar y utilizar, como un paquete RADIUS de software libre que incluye servidores, clientes, bibliotecas de desarrollo y numerosas utilidades relacionadas con el protocolo RADIUS, ofrece un paquete estándar para numerosos sistemas operativos y paquetes binarios para muchos otros. Soporta solicitudes de proxy, conmutación por error, equilibrio de carga y diferentes tipos de bases de datos. FreeRADIUS está disponible para los siguientes sistemas operativos:
AIX
Cygwin
FreeBSD
HP-UX
Linux (CentOS, Debian, Mandriva, Red Hat, SUSE, Turbolinux, Ubuntu)
Mac OSX (Leopard Server)
NetBSD
OpenBSD
OSF/Unix
Solaris
Windows
FreeRADIUS soporta las siguiente bases de datos:
IBM DB2
Firebird
FreeTDS (mssql)
iODBC
MySQL
Oracle
PostgreSQL
Sybase (mssql)
unixODBC (mssql)
45
1.9
LENGUAJE DE PROGRAMACIÓN Un lenguaje de programación es un conjunto de reglas, símbolos, y palabras especiales usadas para construir un programa (software, sistema informático, o aplicación), que será ejecutado por una computadora. Los lenguajes de programación se dividen de forma general en lenguajes de bajo nivel y alto nivel. Se denominan leguajes de bajo nivel a aquellos lenguajes que se comunican directamente con el hardware de una computadora, por lo que resultan muy complejos, estos fueron los primeros en aparecer. Los lenguajes de alto nivel, al contrario, facilitan el trabajado de los desarrolladores de software, quienes utilizan un número reducido de instrucciones, denominadas sintaxis del lenguaje para crear aplicaciones, y hacen uso de compiladores o intérpretes para traducir esta sintaxis a lenguaje máquina.
1.9.1 Visual Basic El lenguaje de programación Visual Basic cuya empresa propietaria es Microsoft, ha evolucionado significativamente desde su primera aparición en el año de 1991, con el lanzamiento de Visual Basic .NET, se ha convertido en un completo lenguaje de programación orientada a objetos, para la creación de aplicaciones .NET Framework. Una de las características más importantes de Visual Basic es que permite escribir programas robustos con poco código. Forma parte de Visual Studio, un ambiente de desarrollo completo denominado IDE (Integrated Development Environment), que es el marco de diseño para la construcción de aplicaciones, y posee todas las herramientas necesarias para ello. Las tres últimas versiones lanzadas al mercado son: Visual Studio 2005, Visual Studio 2008 y la más reciente Visual Studio 2010. Visual Basic soporta los cuatro conceptos requeridos para que un lenguaje sea orientado a objetos:
Abstracción.- Es la habilidad de un lenguaje de tomar un concepto y crear una representación abstracta de ese concepto.
Encapsulación.- Permite esconder los detalles internos de implementación de un objeto, simplificando de esta forma su utilización.
Polimorfismo.- Es la habilidad de un objeto de presentar diferentes comportamientos en función al contexto en que se encuentre.
Herencia.- Es la característica que posee un objeto de heredar las
46
características y comportamiento de otro objeto ya existente.
1.9.1.1 .NET Framework El componente .NET Framework, desarrollado por Microsoft para sistemas operativos
Windows,
incluye
extensas
librerías
que
permite
ejecutar
aplicaciones robustas, escalables, atractivas visualmente y soporta varios lenguajes de programación basados en este framework.
1.9.1.2 Programación en capas La programación en capas es un método de organización de la estructura del código fuente de una aplicación, facilitando de esta manera su desarrollo y mantenimiento, aunque el modelo puede tener n-capas, se ha popularizado el uso de tres; capa de presentación, capa de negocio y capa de acceso a datos. Las capas pueden residir en diferentes computadoras o en una sola, debido a que su estructuración es lógica.
1.9.1.2.1 Capa de presentación Esta capa contiene el diseño de la interfaz de usuario, con la cual los usuarios
se
relacionan
directamente,
ingresando
datos
para
su
procesamiento y recibiendo las respuestas de la aplicación.
1.9.1.2.2 Capa de negocio En esta capa se definen las reglas del negocio, y es el enlace entre la capa de presentación y la capa de acceso a datos. La capa de negocios recibe los datos de la capa de presentación para su validación y devuelve los resultados obtenidos de la capa de acceso a datos.
1.9.1.2.3 Capa de acceso a datos Esta capa se comunica directamente con el RDBMS, recibe solicitudes de consulta, inserción, modificación o eliminación de datos desde la capa de negocio, y las ejecuta.
II II. 2.1
METODOLOGÍA
INVESTIGACIÓN DIAGNÓSTICA Es un “procedimiento por medio del cual se establece la
magnitud de las
necesidades y problemas que afectan a una comunidad, empresa o institución motivo de estudio”5; comprende también el análisis de éstas necesidades y problemas. La estructura de una investigación diagnóstica contiene:
Objetivos diagnósticos.- Constituyen una guía para la investigación diagnóstica, y se relacionan directamente con el tema del proyecto que se está desarrollando.
Variables diagnósticas.- Son los aspectos generales que desean investigarse, y están relacionados directamente con los objetivos diagnósticos. Para cada variable se deben determinar algunos indicadores.
Indicadores.- Son los subaspectos que ofrecen información sobre cada variable diagnóstica.
Matriz de relación.- La matriz de relación permite relacionar los objetivos, las variables y los indicadores, con la finalidad de determinar la técnica que permitirá recolectar la información requerida para cada indicador.
2.1.1 Mecánica operativa Es una metodología de apoyo para la investigación diagnóstica, para la cual es necesario identificar los siguientes aspectos:
Población.- Es la suma total de individuos, objeto de la investigación.
Muestra.- Constituye una porción representativa de la población; la información obtenida a partir de la muestra es válida para toda la población. Para determinar la muestra se utiliza la siguiente fórmula matemática:
5
Posso, Miguel. “Metodología para el trabajo de grado”. Página 122.
48
n=
k2 * p * q * N (e2 * (N - 1)) + (k2 * p * q)
En donde: n: es el tamaño de la muestra. N: es el tamaño de la población o universo. k: es una constante obtenida a partir del nivel de confianza asignado a la investigación, que indica la probabilidad de que los resultados sean ciertos. e: es el error muestral aceptado en la investigación. p: es la proporción de individuos de la población que poseen la característica del estudio. q: es la proporción de individuos de la población que no poseen la característica del estudio, es decir, es 1 - p.
2.1.2 Información primaria Es la información recolectada de forma directa, a través del contacto directo con los individuos investigados, las técnicas de investigación primaria utilizadas en el presente proyecto son:
Observación.- Permite reconocer y anotar datos a través de una observación profunda y directa del medio en que se desarrolla la investigación.
Encuesta.- Conjunto de preguntas formuladas de manera sencilla y clara, que permiten obtener información cuantificable de los individuos objeto de la investigación.
Entrevista.- Conversación directa dirigida por un cuestionario, cuyo objetivo es obtener información del entrevistado.
2.1.3 Información secundaria Es la información recolectada de otras investigaciones realizadas anteriormente, para lo cual no es necesario interactuar directamente con el objetivo de éstas. Las fuentes de información secundaria pueden ser libros revistas, manuales, periódicos, internet, etc.
49
2.2
INGENIERÍA DE SOFTWARE Comprende todos los aspectos de la producción de un software, desde la definición y análisis los requisitos, hasta su mantenimiento. Permite asegurar que el producto entregado satisfaga las necesidades del cliente, de manera confiable, rentable, y cumpliendo con el tiempo propuesto. Existen varias metodologías de desarrollo de software, cada una de las cuales define un conjunto de procedimientos, técnicas y herramientas que especifican cómo producir un software.
2.2.1 Metodologías de desarrollo ágil de software Las metodologías de desarrollo ágil de software, también conocidas como metodologías ágiles, nacieron como resultado de la frustración que los equipos de desarrollo poseían al implementar las metodologías tradicionales (modelo en cascada, prototipado, espiral, etc.). En el año 2001, varios líderes de desarrollo de software, se reunieron y formaron la Alianza Ágil, entonces redactaron lo que llamarían el Manifiesto Ágil, que representa un compromiso público para buscar nuevas y mejores formas de desarrollar software, el mismo que se presenta a continuación: “Estamos descubriendo mejores formas de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de este trabajo hemos aprendido a valorar:
Individuos e interacciones
sobre
procesos y herramientas.
Software funcionando
sobre
documentación extensiva.
Colaboración con el cliente
sobre
negociación contractual.
Respuesta ante el cambio
sobre
seguir un plan.
Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda”6. Las metodologías ágiles reducen la complejidad de la planificación, centrándose en el valor del cliente, y creando un ambiente productivo de participación y
6
Manifiesto por el desarrollo ágil de software. http://www.agilemanifesto.org/iso/es/manifesto.html. 15/05/2010.
50
colaboración. A continuación se describe la metodología aplicada al presente proyecto.
2.2.1.1 Programación Extrema La Programación Extrema (por sus siglas en inglés XP, Extreme Programming), es una metodología ágil que se caracteriza por un conjunto de valores, principios y prácticas que constituyen un medio eficiente y eficaz de desarrollo de software. En el núcleo de XP el objetivo es aceptar los cambios que ocurren durante el desarrollo del software.
2.2.1.1.1 Valores de XP XP establece cinco valores fundamentales, los cuales constituyen la base sobre la que todos sus principios y prácticas se construyen. Cada uno de estos valores se describe a continuación:
Comunicación.- Los equipos que se comunican a menudo y de manera efectiva en un entorno abierto y honesto son capaces de tomar decisiones eficaces y mitigar los problemas con mayor rapidez que los equipos que no poseen este tipo de comunicación. XP favorece la comunicación cara a cara.
Simplicidad.- Los equipos de desarrollo deben realizar sus actividades de la manera más sencilla posible, esto incluye la programación del código que desarrollan, la documentación que producen, los procesos que utilizan y la forma de comunicación que elijan. La simplicidad obliga al equipo a desarrollar lo que es necesario para satisfacer los requisitos del software, en lugar de funcionalidades innecesarias que no han sido requeridas y posiblemente nunca serán utilizadas. El resultado de mantener las cosas simples es la reducción del código, procesos y documentación, que a su vez, deja más tiempo para continuar incorporando funcionalidades al software.
Retroalimentación.- La retroalimentación crea ciclos cortos de desarrollo del software tras los cuales se observan resultados, y mantiene al equipo de desarrollo en el camino correcto hacia el objetivo del proyecto, por lo que ésta debe ser repetitiva y frecuente. Asegura que el software que se está
desarrollando
es
de
alta
calidad
y
estable.
En
XP,
la
retroalimentación no proviene únicamente de los individuos y sus
51
interacciones, sino también de las pruebas, el progreso que genera los seguimientos del software, y la aceptación exitosa de las funcionalidades del software por parte de los usuarios.
Valentía.- Se necesita gran valor para intentar algo nuevo, debido a que los individuos poseen una resistencia natural al cambio y tienen miedo a lo desconocido. Los equipos XP deben poseer valentía cuando encuentran resistencia a la aplicación de esta metodología.
Respeto.- El respeto debe prevalecer entre los miembros del equipo de desarrollo. El trabajo de cada miembro debe ser respetado por el resto del equipo, demostrando interés y apoyo mutuo, de esta manera la autoestima del equipo de desarrollo crece y el ritmo de producción se acelera.
2.2.1.1.2 Principios de XP Quince principios se derivan de los cinco valores de XP. Cada uno de estos principios se describe a continuación:
Retroalimentación rápida.- Las retroalimentaciones rápidas incrementan el valor de las retroalimentaciones, mediante la rápida circulación de información. Si los desarrolladores reciben una retroalimentación rápida en segundos o minutos, entonces los clientes recibirán la misma retroalimentación en días o semanas. Por ejemplo, en la metodología en cascada, las pruebas de aceptación no estarán disponibles hasta el final del proyecto; sin embargo con la retroalimentación rápida de XP, estas pruebas estarán listas en días o semanas, en lugar de meses o años.
Adoptar simplicidad.- Se debe tratar cada problema como si se pudiera resolver con la mayor simplicidad posible, esto no pretende dar a entender que cada problema sea simple. Este principio alienta a resolver los problemas actuales, sin añadir complejidad a las soluciones en espera de solventar futuras necesidades que no han sido requeridas.
Cambios incrementales.- Hacer pequeños cambios incrementales ayuda a identificar nuevos problemas rápidamente. La aplicación de este principio evita que tras realizar un gran cambio, los errores encontrados deban ser buscados en una extensa área de código.
Aceptar el cambio.- Este es un aspecto clave en todas las metodologías ágiles. Si un miembro del equipo puede desarrollar software que resuelva
52
únicamente el problema o necesidad actual, entonces puede manejar efectivamente los cambios.
Entregar trabajo de alta calidad.- El resultado final debe ser un producto de alta calidad. Es importante insistir en este principio, si el software entregado es inestable y lleno de errores, entonces el desarrollo de software pierde su verdadero sentido.
Enseñar a aprender.- XP estimula a enseñar a los equipos de desarrollo, el cómo implementar esta metodología ágil, y el por qué sus prácticas son valiosas.
Realizar una inversión inicial pequeña.- Sin importar el tamaño y alcance del proyecto, la inversión inicial debe mantenerse pequeña, y crecer a medida que el proyecto progresa.
Jugar para ganar.- Hacer todo lo posible y necesario para que el proyecto sea exitoso. Existen equipos que juegan para no perder, haciendo lo mínimo. El espíritu de XP insiste en crear un equipo que juegue para ganar.
Realizar experiencias concretas.- Realizar pruebas que continuamente demuestren que el desarrollo de software se dirige por el camino correcto.
Promover una comunicación abierta y honesta.- Se puede tener un equipo XP con comunicación cara a cara, pero si la cultura y el medio ambiente no fomentan una comunicación abierta y honesta, entonces el valor se pierde. Por lo tanto, es importante asegurarse que el equipo respeta y promueve la comunicación abierta y honesta.
Trabajar con los instintos de la gente, no contra ellos.- Es importante confiar en los miembros del equipo, y en sus instintos.
Aceptar la responsabilidad.- Permitir a los miembros del equipo elegir sus tareas, esto crea sentido de pertenencia, y mayor compromiso.
Modificar según las necesidades.- Dos o más proyectos jamás serán iguales, cada uno poseerá sus propias características y retos. Se deben adaptar funcionalidades de un software a otro, únicamente con un firme entendimiento de lo que debe adaptarse y por qué.
Viajar ligero.- Utilizar procesos, documentación y herramientas mientras sean necesarios y tengan sentido, y deshacerse de estos cuando ya no sea así.
Medir honestamente.- Elegir las métricas de acuerdo al proyecto.
53
2.2.1.1.3 Prácticas de XP Las prácticas definidas por XP son en realidad las "mejores prácticas" que diferentes
proyectos
de
desarrollo
de
software
han
implementado
exitosamente desde hace años. XP combina todas estas prácticas en una única metodología. A continuación se describen cada una de las prácticas que implementan los valores y principios definidos anteriormente:
Todo el equipo.- Colocar al equipo en conjunto en una misma área de trabajo es una práctica implícita de XP. Un valor fundamental de XP es la comunicación, de preferencia cara a cara, y la creación de espacios grandes y abiertos, donde el equipo de desarrollo pueda trabajar junto.
El juego de planificar.- La idea de esta práctica es establecer una imagen de lo que el cliente quiere y cuánto va a costar, lo más rápido posible. Así los clientes pueden decidir si desean seguir adelante con el proyecto, y si prefieren no continuar, el tiempo invertido será mínimo, en comparación con los meses que se pueden llegar invertir con una metodología tradicional.
Pequeños lanzamientos.- Para los clientes mientras más pronto empiecen a utilizar el software, más pronto retorna su inversión. El software que se desarrolla en pequeños incrementos y entregas, han probado ser más exitoso que aquellos que poseen largas fechas de entrega.
Pruebas de clientes.- El equipo construye este tipo de pruebas y las utiliza para probar que la función se ejecuta correctamente, para sí mismos, y para el cliente.
Diseño simple.- La implementación de un diseño simple permite a los desarrolladores cumplir con las funcionalidades necesarias del software.
Programación en parejas.- Hace que la revisión del código de programación sea una actividad cotidiana. Además, todo el código obtiene el beneficio de la atención de muchas personas, lo que aumenta la calidad del código y reduce los defectos. Por último, con la programación en parejas la tarea de mantenimiento del sistema resulta simple.
Desarrollo controlado por pruebas.- Promueve la escritura de las pruebas antes de escribir el código. Esto permite concentrarse en la interfaz y lo que se espera de su código, antes de enfocarse particularmente en su implementación.
54
Refactorización.- Impulsa a mejorar el diseño del software, a través de la práctica constante de refactorización. La refactorización se define como el proceso de mejorar la estructura interna de un software sin alterar su comportamiento externo.
Integración continua.- Simplifica la integración final de los componentes y subsistemas de las aplicaciones, mediante la integración temprana y continua de éstos.
Propiedad colectiva.- Esta práctica permite extender el conocimiento a todo el equipo de desarrollo, haciendo las modificaciones más sencillas.
Estándares de codificación.- Permite seguir una norma común de codificación, de tal manera que todo el código se ve como si fuera escrito por una sola persona muy competente.
Metáforas.- Busca encontrar una manera sencilla pero completa de explicar la aplicación a través del uso de metáforas. Se trata de crear una forma para que todos los miembros del equipo, puedan compartir una visión común de lo que es el sistema.
Ritmo sostenible.- XP se asegura de que los miembros del equipos de desarrollo no tengan más trabajo del que han demostrado ser capaces de completar. El resultado es una mayor calidad, debido a que el equipo de desarrollo posee sus estimaciones, está más confiado de concluir el trabajo a tiempo. El estrés de los miembros del equipo se reduce, debido a que tienen un horario razonable.
2.2.2 Roles y responsabilidades A continuación se describen los roles y responsabilidades de cada miembro del equipo de desarrollo de software:
2.2.2.1 Cliente El cliente es quien solicita el sistema informático que se está desarrollando. Es el responsable de definir, con la guía del resto del equipo, los requisitos del sistema informático. Se espera que los clientes estén disponibles durante todo el ciclo de vida del software. Las responsabilidades del cliente son:
Definir el sistema informático a desarrollar.
Responder las inquietudes de los desarrolladores.
Describir las historias de usuario.
55
Aprobar las historias de usuario.
Definir los criterios para la aprobación del sistema informático.
2.2.2.2 Director El director es responsable del éxito general del sistema informático, su principal labor es la coordinación. Las responsabilidades del director son:
Coordinar las actividades del equipo de desarrollo.
Dar seguimiento a los avances del sistema informático.
2.2.2.3 Desarrolladores Son los programadores encargados de desarrollar el sistema informático; trabajan junto con el cliente. Las responsabilidades de los desarrolladores son:
Estimar el nivel de esfuerzo que requiere completar cada historia de usuario.
Transformar cada historia de usuario en tareas manejables y estimar el nivel de esfuerzo requerido para completar cada una de las tareas definidas.
Ejecutar pruebas unitarias.
Desarrollar tareas.
Refactorizar el código.
Comunicarse con el cliente cuando surgen inquietudes sobre las tareas.
2.2.2.4 Ejecutores de pruebas Los ejecutores de las pruebas son los responsables de la calidad de un sistema informático; trabajan junto el cliente para ejecutar y planear cada una de las pruebas. Asegurar la implementación estable de cada historia de usuario. Las responsabilidades de los ejecutores de prueba son:
Ejecutar pruebas de integración.
Aprobar la implementación del sistema informático.
2.2.3 Ciclo de vida de un software Un software requiere de un tiempo determinado para su desarrollo y uso, durante el cual se sigue un proceso organizado que incluye varias fases, que en conjunto se denominan ciclo de vida de un software. Durante el ciclo de vida de un software es recomendable aplicar una metodología, la cual indica cómo obtener los distintos resultados parciales y finales, en el presente proyecto la metodología
56
aplicada será la programación extrema (XP). Generalmente las fases del ciclo de vida de un software son: 1. Definición y análisis de requisitos. 2. Diseño del sistema informático. 3. Codificación del sistema informático. 4. Pruebas del sistema informático. 5. Entrega del sistema informático. 6. Mantenimiento del sistema informático.
2.2.3.1 Definición y análisis de requisitos En esta fase se identifican, recolectan y analizan los requisitos, con la finalidad de entender el problema real, el propósito y alcance del sistema que se desea construir. Primero se definen las funciones del sistema, como un listado de características y servicios que se proporcionarán a los usuarios, y se documentan claramente. Luego se procede a analizar el listado de características y servicios, lo que permite expandir y especificar sus funcionalidades.
2.2.3.2 Documento de requisitos del sistema informático El documento de requisitos describe formalmente las funcionalidades del sistema informático, y nace a partir de una o varias entrevistas cara a cara con el cliente. Especifica en síntesis lo que se espera que haga el sistema informático una vez finalizado, y ayuda a los desarrolladores a comprender exactamente lo que el cliente requiere. La IEEE recomienda el uso del estándar 830 para su redacción, y su formato puede ser adaptado a las necesidades del sistema informático que se va a desarrollar. Para el presente proyecto se especificará la siguiente información:
Lugar y fecha.- Permite conocer donde y cuando se redactó el documento.
Nombre del proyecto.- Denominación del proyecto asociado al sistema informático que se va a desarrollar.
Introducción.- Breve descripción del proyecto.
Alcance.- Especificación de los límites del proyecto.
Glosario.- Definición de términos y acrónimos utilizados en el documento.
57
Actores.- Personas relacionadas al desarrollo del sistema informático.
Requisitos
funcionales.-
Funcionalidades
del
sistema
informático
redactadas en casos de uso. Un caso de uso describe un requisito del sistema informático.
Requisitos no funcionales.- Características generales del sistema informático.
2.2.3.2.1 Diagramas de flujo de datos Los diagramas de flujo de datos son una herramienta de uso común durante el análisis de problemas, son muy útiles para la comprensión de las funciones de un sistema informático y pueden ser utilizados con eficacia durante su análisis. Muestran gráficamente el flujo de datos a través de un sistema informático. Los componentes de un diagrama de flujo de datos son:
Entidad externa.- Representa personas, objetos, organizaciones, u otros sistemas informáticos, con los que el sistema informático que se está desarrollando se comunica.
Proceso.- Representa a los procesos del sistema informático que transforman la información.
Flujo de datos.- Representa el canal a través del cual fluye la información.
Almacén de datos.- Representa un archivo lógico, donde se almacena la información.
La representación gráfica de los componentes de un diagrama de flujo de datos se muestra a continuación:
58
Figura 6: Componentes de un diagrama de flujo de datos
Entidad externa
Proceso
Flujo de datos Almacén de datos Elaborado por: Los autores
2.2.3.3 Diseño del sistema informático En esta fase se transforman los requisitos del sistema informático en una solución técnica y viable, mediante el uso de métodos de diseño. El objetivo del diseño es aproximarse a la solución antes de implementarla. Como resultado el diseño del sistema informático nos dirá cómo construir la aplicación, y todos los aspectos técnicos que debemos tomar en cuenta para ello.
2.2.3.3.1 Diseño de la base de datos La base de datos se modela a partir del documento de requisitos del sistema informático, el cual contiene la descripción total del software. El objetivo del diseño de una base de datos es crear un conjunto de estructuras de datos relacionadas,
que
permitan
almacenar
información
y
faciliten
su
recuperación.
Diseño conceptual.- Es el modelado de un diagrama conceptual lógico, que muestra todos los datos y sus relaciones, se desarrolla utilizando técnicas como el Modelo Entidad – Relación.
Diseño físico.- Es la creación de las estructuras reales de la base de datos, que serán implementadas en un DBMS. El diseño físico de la base de datos es completamente dependiente del DBMS que se vaya a utilizar.
59
2.2.3.3.2 Historias de usuario Las historias de usuario son equivalentes a requerimientos específicos, son cortas y se recomienda escribirlas en tarjetas índice para acceder fácilmente a ellas. Pueden redactarse a partir de entrevistas con el cliente o a partir de un documento formal ya existente como el documento de requisitos del sistema informático. Cada historia de usuario posee un título único; en la parte frontal de la tarjeta índice se redactan unas cuantas oraciones que la describen, y en la parte trasera sus tareas asociadas. Figura 7: Parte frontal de una tarjeta índice de historia de usuario [TÍTULO ÚNICO]
[Descripción de la historia de usuario]
Elaborado por: Los autores
Figura 8: Parte trasera de una tarjeta índice de historia de usuario [TÍTULO ÚNICO]
[Tareas asociadas a la historia de usuario]
Elaborado por: Los autores
2.2.3.3.3 Estimación de las historias de usuario Cada historia de usuario debe ser estimada en función al nivel de esfuerzo que requiere para ser completada. Las estimaciones se miden en días ideales y se refieren a ellas como puntos de historia. Un día ideal es equivalente a un día de trabajo planeado, se denomina así debido a que la planificación realizada a menudo no se cumple, por lo que únicamente se la idealiza.
60
Tabla 8: Esquema de la tabla de estimación de historias de usuario PUNTOS DE HISTORIA ESTIMADOS
HISTORIA DE USUARIO [Título de historia de usuario 1]
[Puntos de historia 1]
[Título de historia de usuario 2]
[Puntos de historia 2]
[Título de historia de usuario n]
[Puntos de historia n]
PUNTOS DE HISTORIA TOTAL
[Puntos de historia total]
Elaborado por: Los autores
2.2.3.3.4 Iteraciones Una iteración es un período de tiempo, determinado en número de días ideales, en el que se desarrollan un subconjunto de historias de usuario. Las iteraciones tienen las siguientes características:
Contienen un subconjunto de historias de usuario.
Se inicia inmediatamente después de su planificación.
Todas las iteraciones son de igual longitud, o su diferencia es mínima.
2.2.3.4 Codificación del sistema informático En la fase de codificación, el diseño del sistema informático es transformado a código fuente mediante algún lenguaje de programación, y éste debe escribirse de forma comprensible tanto para el autor como para terceras personas.
2.2.3.4.1 Reuniones regulares Se deben establecer reuniones en horarios regulares durante todos los días de trabajo para cada iteración, con la finalidad de mantener la comunicación del equipo de trabajo. Cada reunión es breve y dura entre 15 y 20 minutos. Se hace referencia a inquietudes o problemas encontrados el día de trabajo anterior, también se socializan las nuevas estructuras, procedimientos, funciones, herramientas, etc. que pueden servir de ayuda a los otros desarrolladores.
2.2.3.4.2 Programación en parejas Cada historia de usuario se desarrolla entre dos miembros del equipo. La programación en parejas facilita la transferencia de conocimiento entre los
61
desarrolladores, y permite dar diferentes perspectivas para solucionar un problema.
2.2.3.4.3 Refactorización Mientras se codifica una historia de usuario, el desarrollador puede encontrar áreas donde es posible refactorizar. Se debe tener en cuenta que la refactorización no cambia el comportamiento general del sistema, sólo mejora el diseño y la comprensión del código.
2.2.3.5 Pruebas del sistema informático Esta fase involucra probar el sistema informático en partes y como un todo, esto es, separando pruebas unitarias, que requieren probar de forma individual los módulos y el código que lo componen, de las pruebas de integración, que requieren probar el funcionamiento del sistema completo. Las pruebas deben escribirse antes de codificar cada iteración, pensando en los resultados que se espera observar luego de ejecutarlas. Demuestran que el código desarrollado cumple los requisitos del sistema informático, y también enseñan a otros desarrolladores cómo utilizar cada funcionalidad creada.
2.2.3.5.1 Pruebas unitarias Las pruebas unitarias se realizan para cada historia de usuario, y permiten comprobar su correcto funcionamiento. Son utilizadas a diario, en el momento que los desarrolladores consideren necesario probar el código.
2.2.3.5.2 Pruebas de integración Las pruebas de integración se realizan para cada iteración, y pueden realizarse en paralelo con el desarrollo del sistema informático. Cada prueba de integración indica cuando una iteración se ha completado con éxito. Primero los desarrolladores realizan las pruebas desde un nivel funcional y de integración, y luego se realizan las pruebas desde la perspectiva del usuario. El cliente es responsable en última instancia de dar como finalizadas las pruebas de integración, y aceptar el sistema informático.
2.2.3.6 Entrega del sistema informático En esta fase se realiza el traspaso del sistema informático terminado
62
satisfactoriamente al cliente incluyendo la documentación del mismo, que contiene manual de usuario, manual de instalación y configuración, y diccionario de datos, y es donde reside de forma detallada la información que facilita el uso, configuración y estructura del sistema.
Manual de usuario.- Está dirigido a los usuarios finales, describe las funcionalidades y procesos del sistema informático.
Manual de instalación y configuración.-
Está dirigido al personal técnico
encargado de instalar y configurar el sistema informático, contiene información técnica.
Diccionario de datos.- Contiene las características lógicas de las estructuras que contiene la base de datos del sistema informático.
2.2.3.7 Mantenimiento del sistema informático Cuando un sistema informático entra en fase de mantenimiento, se considera que se encuentra terminado con respecto a su visión original. El mantenimiento incluye reparar defectos y añadir funcionalidades al sistema.
III III. 3.1
RESULTADOS Y DISCUSIÓN
DIAGNÓSTICO La PUCE SD cuenta con varios laboratorios de computación, los cuales no están siendo administrados de forma adecuada, esto conlleva a que los estudiantes no utilicen correctamente las computadoras. A menudo, los profesores se encuentran con los laboratorios de computación ocupados cuando van a dictar clase, disminuyendo su tiempo de planificación de la materia. En vista de que no existe un ente regulador de tiempos, los usuarios hacen uso de las computadoras por prolongados períodos, y en la mayoría de casos para entretenimiento, imposibilitando a otros usuarios realizar trabajos académicos. Por tal motivo es necesaria la implementación del sistema informático SISLAB el cual permitirá tener una administración y control eficaz de los laboratorios de computación, brindando a todos los usuarios un servicio de calidad.
3.1.1 Objetivo diagnóstico Identificar la problemática existente en la administración y control del uso de los laboratorios de computación de la PUCE SD.
3.1.2 Variables del diagnóstico
Administración de los laboratorios de computación.
Servicio de atención de calidad.
3.1.3 Indicadores
Cantidad de computadoras existentes.
Infraestructura de los laboratorios.
Horarios de atención.
Soporte a usuarios.
Disponibilidad del personal.
Frecuencia de uso de los laboratorios.
Aglomeración de personas en los laboratorios.
64
Tabla 9: Matriz de relación
Administración de los laboratorios de computación
VARIABLES
Servicio de atención de calidad
Identificar la problemática existente en la administración y control del uso de los laboratorios de computación de la PUCE SD
OBJETIVO
INDICADORES
TÉCNICAS
FUENTE DE INFORMACIÓN
Cantidad de computadoras existentes
Entrevista
Personal encargado
Infraestructura de los laboratorios
Entrevista Observación
Personal encargado
Frecuencia de uso de los laboratorios
Entrevista Encuesta
Personal encargado, usuarios
Horarios de atención
Encuesta
Personal encargado
Soporte a usuarios
Entrevista
Personal encargado
Disponibilidad del personal
Entrevista
Personal encargado
Aglomeración de personas en los laboratorios
Observación
Usuarios de laboratorios
Elaborado por: Los autores
3.1.4 Mecánica operativa 3.1.4.1 Determinación de la población La población objeto de la investigación está conformada por los miembros de la comunidad universitaria, que incluyen a estudiantes, docentes y empleados de la PUCE SD; la información obtenida corresponde al ciclo académico 2010-02, y se muestra a continuación: Tabla 10: Detalle de la población POBLACIÓN Estudiantes
1142
Docentes
105
Empleados
62
TOTAL
1309
Fuente: Sistemas Académico y Nómina de la PUCE SD (ver Anexo 4)
65
3.1.4.2 Determinación de la muestra Debido a la dificultad que implica obtener información de toda la población, se ha procedido a determinar un tamaño de muestra. Los datos obtenidos y analizados a partir de la muestra, representan el criterio y pensamiento de toda la población de la PUCE SD. A continuación se reemplazan cada una de las variables de la fórmula matemática que permite calcular el tamaño de la muestra: N = 1309 k = 1,96 (equivale a un nivel de confianza de 95%) e = 0,09 p = 0,5 q = 0,5
n=
n=
n=
k2 * p * q * N (e2 * (N - 1)) + (k2 * p * q) 1,962 * 0,5 * 0,5 * 1309 (0,092 * (1309 - 1)) + (1,962 * 0,5 * 0,5)
3,84 * 0,5 * 0,5 * 1309 (10,59 * 1308) + 0,96
n = 109
3.1.4.3 Fuentes de información Constituyen las fuentes de información primaria y secundaria a través de las cuales se recolectaron los datos necesarios para el desarrollo del presente proyecto.
3.1.4.3.1 Fuentes primarias Las fuentes primarias utilizadas han sido las entrevistas y encuestas. Se
66
realizó una encuesta a los usuarios los laboratorios antes de iniciar la elaboración del presente proyecto, para determinar su factibilidad de desarrollo, y el análisis obtenido se detalla más adelante. Para determinar la funcionalidad y alcance del proyecto, se entrevistaron a los miembros del Área de Redes del CITIC, obteniendo como resultado el documento de requisitos del sistema informático (ver Anexo 2).
3.1.4.3.2 Fuentes secundarias Los documentos y herramientas utilizadas como fuentes secundarias del presente proyecto son:
Libros.- Estas fuentes constituyen la fundamentación teórica y científica, y se detalla en la bibliografía.
Soporte electrónico.- El Internet constituye la fundamentación teórica y técnica, y se detalla en la bibliografía.
3.1.5 Encuesta Se aplicó una encuesta (ver Anexo 1) a la muestra, determinada a partir de la población de usuarios de laboratorios constituida por estudiantes, docentes y empleados de la PUCE SD.
3.1.5.1 Tabulación y análisis de la información Cada una de las preguntas aplicadas en la encuesta se tabula y analiza a continuación:
67
1. ¿Qué relación posee usted con la PUCE SD? Tabla 11: Tabulación de datos de la pregunta Nº 1 ALTERNATIVAS
CANTIDAD PORCENTAJE
Estudiante
91
83,49%
Docente
12
11,01%
Empleado
6
5,50%
109
100%
TOTAL ENCUESTADOS Elaborado por: Los autores
Figura 9: Representación porcentual de la pregunta Nº 1
Estudiante 11,01%
Docente
Empleado
5,50%
83,49%
Elaborado por: Los autores ANÁLISIS La PUCE SD por la naturaleza de la actividad que realiza, se conforma en su mayoría por estudiantes, es por esto que observamos que el 83,49% corresponde a estudiantes, y tan solo el 16,51% a docentes y empleados. Por lo tanto, los criterios obtenidos y analizados a partir de la presente encuesta corresponden en gran medida al pensamiento de los estudiantes.
68
2. ¿Con que frecuencia utiliza usted los laboratorios de computación para USO PERSONAL?
Tabla 12: Tabulación de datos de la pregunta Nº 2 ALTERNATIVAS
CANTIDAD PORCENTAJE
Siempre
27
24,77%
A menudo
44
40,37%
Poco
36
33,03%
Nunca
2
1,83%
109
100%
TOTAL ENCUESTADOS Elaborado por: Los autores
Figura 10: Representación porcentual de la pregunta Nº 2
Siempre
A menudo
Poco
Nunca
1,83% 33,03%
24,77%
40,37%
Elaborado por: Los autores ANÁLISIS Los laboratorios de computación son utilizados de manera personal por el 98,17% (siempre, a menudo y poco) de los encuestados, de donde el 40,37% los utiliza a menudo; es entonces importante tomar en cuenta la reservación de laboratorios para uso personal, al momento de administrar y controlar los mismos.
69
3. ¿Con que frecuencia utiliza usted los laboratorios de computación para CLASES? Tabla 13: Tabulación de datos de la pregunta Nº 3 ALTERNATIVAS
CANTIDAD PORCENTAJE
Siempre
29
26,61%
A menudo
36
33,03%
Poco
33
30,28%
Nunca
11
10,09%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores Figura 11: Representación porcentual de la pregunta Nº 3
Siempre
A menudo
Poco
10,09%
Nunca 26,61%
30,28%
33,03%
Elaborado por: Los autores ANÁLISIS Los laboratorios de computación son utilizados para clases por el 89,01% de los encuestados, con una frecuencia proporcional entre: siempre, a menudo y poco; podemos deducir entonces que varias horas del día son invertidas en esta actividad, así como en su control y administración.
70
4. ¿En alguna ocasión, ha sido usted interrumpido durante el uso de una computadora, solicitándole que desaloje el laboratorio? Tabla 14: Tabulación de datos de la pregunta Nº 4 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
74
67,89%
No
35
32,11%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores
Figura 12: Representación porcentual de la pregunta Nº 4
Si
No
32,11%
67,89%
Elaborado por: Los autores ANÁLISIS El 67,89% de los encuestados han sido desalojados de un laboratorio de computación en alguna ocasión; situación que incomoda tanto a los usuarios como al administrador de los laboratorios, y se realiza con frecuencia.
71
5. En caso de haber contestado NO a la pregunta anterior, pase a la pregunta 6, caso contario responda: ¿Cuál fue el motivo por el que le solicitaron desalojar el laboratorio? Tabla 15: Tabulación de datos de la pregunta Nº 5 ALTERNATIVAS
CANTIDAD
PORCENTAJE
Por inicio de clases en el laboratorio
19
25,68%
Por finalización del horario de atención del laboratorio
47
63,51%
Por mantenimiento del laboratorio
7
9,46%
Otro motivo
1
1,35%
TOTAL ENCUESTADOS
74
100%
Elaborado por: Los autores
Figura 13: Representación porcentual de la pregunta Nº 5
9,46%
Por inicio de clases en el laboratorio
1,35% 25,68%
63,51%
Por finalización del horario de atención del laboratorio Por mantenimiento del laboratorio Por otro motivo
Elaborado por: Los autores ANÁLISIS Con la finalidad de disminuir el desalojo en los laboratorios, es fundamental mantener a los usuarios informados sobre la disponibilidad diaria de los laboratorios, principalmente los horarios de atención y clases.
72
6. ¿Se encuentra usted satisfecho(a) por la disponibilidad de uso de las computadoras en los laboratorios? Tabla 16: Tabulación de datos de la pregunta Nº 6 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
48
44,04%
No
61
55,96%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores
Figura 14: Representación porcentual de la pregunta Nº 6 Si
No
44,04% 55,96%
Elaborado por: Los autores ANÁLISIS El 55,96% de los encuestados no se encuentran satisfechos por la disponibilidad de uso de las computadoras, lo que representa más de la mitad de los usuarios. Una solución efectiva debe buscarse para dar solución a este problema, ya que muchas actividades académicas implican el uso de computadoras.
73
7. ¿Cómo califica usted la administración y control de uso de los laboratorios de computación por parte del personal encargado? Tabla 17: Tabulación de datos de la pregunta Nº 7 ALTERNATIVAS
CANTIDAD PORCENTAJE
Excelente
8
7,34%
Muy buena
31
28,44%
Buena
49
44,95%
Regular
17
15,60%
Malo
4
3,67%
109
100%
TOTAL ENCUESTADOS Elaborado por: Los autores
Figura 15: Representación porcentual de la pregunta Nº 7 Excelente
Muy buena 3,67%
Buena
Regular
Malo
7,34%
15,60% 28,44%
44,95%
Elaborado por: Los autores ANÁLISIS El 80,73% (excelente, muy buena, buena) de los encuestados se encuentra satisfecho con la administración y control de los laboratorios de computación, realizada por el personal encargado. Aunque la mayoría califica la labor realizada por el personal encargado como buena; se deben buscar alternativas para mejorar el servicio y llegar a la excelencia.
74
8. ¿Estaría usted de acuerdo con la implementación de un sistema informático para controlar y administrar el uso de los laboratorios de computación? Tabla 18: Tabulación de datos de la pregunta Nº 8 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
102
93,58%
No
7
6,42%
109
100%
TOTAL ENCUESTADOS Elaborado por: Los autores
Figura 16: Representación porcentual de la pregunta Nº 8 Si
No
6,42%
93,58%
Elaborado por: Los autores ANÁLISIS El 93,58% de usuarios de laboratorios, es decir casi la totalidad de los encuestados, se encuentra de acuerdo con la implementación de un sistema informático para administrar y controlar el uso de los laboratorios de computación, ayudando así a disminuir los inconvenientes detectados.
75
9. ¿Estaría usted dispuesto(a) a realizar la reservación de las computadoras de los laboratorios para USO PERSONAL, desde un kiosco informático? Tabla 19: Tabulación de datos de la pregunta Nº 9 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
83
76,15%
No
26
23,85%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores
Figura 17: Representación porcentual de la pregunta Nº 9 Si
No
23,85%
76,15%
Elaborado por: Los autores ANÁLISIS El 76,15% de los encuestados está dispuesto a hacer uso de un kiosco informático para la reservación de computadoras. La mayoría de usuarios de laboratorios de computación aceptará con satisfacción este cambio como medida de regulación para uso de los laboratorios.
76
10. ¿Considera usted conveniente regular el tiempo máximo de uso de las computadoras de los laboratorios para USO PERSONAL? Tabla 20: Tabulación de datos de la pregunta Nº 10 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
75
68,81%
No
34
31,19%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores
Figura 18: Representación porcentual de la pregunta Nº 10 Si
No
31,19%
68,81%
Elaborado por: Los autores ANÁLISIS El 68,81%, que representa a gran parte de los encuestados, concuerdan que se regule el tiempo máximo de uso de las computadoras. Esta medida garantiza que los laboratorios de computación sean utilizados de forma equitativa por todos sus usuarios.
77
11. ¿Considera usted conveniente que el personal encargado, administre y controle las reservaciones de los laboratorios para CLASES desde un sistema informático? Tabla 21: Tabulación de datos de la pregunta Nº 11 ALTERNATIVAS
CANTIDAD PORCENTAJE
Si
89
81,65%
No
20
18,35%
TOTAL ENCUESTADOS
109
100%
Elaborado por: Los autores Figura 19: Representación porcentual de la pregunta Nº 11
Si
No
18,35%
81,65%
Elaborado por: Los autores ANÁLISIS La implementación de un sistema informático para administrar y controlar las reservaciones para clases, es respaldada por el 81,65% de los encuestados, es decir por gran parte de la comunidad universitaria.
3.2
DEFINICIÓN Y ANÁLISIS DE REQUISITOS El Anexo 2, contiene el documento de definición y análisis de requisitos del sistema informático SISLAB, él que se redactó en base a los casos de uso definidos por el Área de Redes del CITIC; el documento se basa en el estándar de la IEEE 830, que determina los estándares de especificación de requisitos de
78
software. Cada caso de uso es analizado y diagramado en un flujo de datos, lo que permite a los desarrolladores tener una visión clara sobre lo que se desea lograr en cada uno de ellos. A continuación se realiza el análisis cada uno de los casos de uso definidos como requisitos funcionales:
3.2.1 Caso de uso 1 Los usuarios del sistema informático podrán acceder únicamente a los módulos y opciones del sistema que les sean asignados. Figura 20: Diagrama de flujo de datos del caso de uso 1
Usuarios del sistema informático Usuarios del sistema informático
Autenticar usuarios Perfiles de usuario del sistema informático
Consultar perfiles de usuario
Módulos y opciones
Elaborado por: Los autores
Usuario autenticado
Perfil de usuario
Consultar módulos y opciones asignados al perfil de usuario
Módulos y opciones del sistema informático
79
3.2.2 Caso de uso 2 Los usuarios del sistema informático podrán administrar la información referente a los laboratorios y sus computadoras. Figura 21: Diagrama de flujo de datos del caso de uso 2
Usuarios del sistema informático
Usuarios del sistema informático
Autenticar usuarios Laboratorios de computación
Administrar información de los laboratorios
Usuario autenticado
Laboratorio de computación
Administrar información de las computadoras
Elaborado por: Los autores
Computadoras los laboratorios de computación
80
3.2.3 Caso de uso 3 Los usuarios del sistema informático podrán consultar la información referente a los laboratorios y sus computadoras.
Figura 22: Diagrama de flujo de datos del caso de uso 3
Usuarios del sistema informático
Usuarios del sistema informático
Autenticar usuarios Laboratorios y computadoras
Consultar información sobre los laboratorios y sus computadoras
Usuario autenticado
Laboratorios y computadoras
Generar reporte de los laboratorios y sus computadoras
Elaborado por: Los autores
81
3.2.4 Caso de uso 4 Los usuarios del sistema informático podrán parametrizar los horarios de atención de los laboratorios de computación. Figura 23: Diagrama de flujo de datos del caso de uso 4
Usuarios del sistema informático
Usuarios del sistema informático
Autenticar usuarios Laboratorios de computación
Definir horarios de atención de los laboratorios de computación
Elaborado por: Los autores
Usuario autenticado
82
3.2.5 Caso de uso 5 Los usuarios del sistema informático, podrán parametrizar el tiempo mínimo y máximo de reservación para uso de las computadoras, dependiendo del grupo al que pertenezca el usuario de laboratorios (estudiantes, docentes, empleados o usuarios externos). El tiempo máximo de reservación deberá definirse por un periodo, luego del cual se restablecerá, y el usuario de laboratorios podrá realizar reservaciones nuevamente. Figura 24: Diagrama de flujo de datos del caso de uso 5
Usuarios del sistema informático
Período de restablecimiento de reservaciones Definir periodo para restablecimiento de las reservaciones
Grupos de usuarios de laboratorios Definir el tiempo mínimo y máximo permitido para las reservaciones de computadoras
Elaborado por: Los autores
83
3.2.6 Caso de uso 6 Los usuarios los laboratorios, deben acceder al servicio de reservación de computadoras, a través de un módulo del sistema, ubicado en un kiosco informático. Figura 25: Diagrama de flujo de datos del caso de uso 6
Usuarios de los laboratorios Usuarios de los laboratorios
Autenticar usuarios Laboratorios y computadoras
Reservar computadoras para uso personal
Usuario autenticado
Dirección MAC de la computadora
Código de desbloqueo
Elaborado por: Los autores
Consultar código de desbloqueo de computadoras
84
3.2.7 Caso de uso 7 Los usuarios de laboratorios, deben poder restablecer sus contraseñas en caso de necesitarlo. Figura 26: Diagrama de flujo de datos del caso de uso 7
Usuarios de los laboratorios Usuarios de los laboratorios
Autenticar usuarios
Usuarios de los laboratorios Restablecer contraseña y enviarla por correo electrónico
Elaborado por: Los autores
Usuario autenticado
85
3.2.8 Caso de uso 8 Las computadoras de los laboratorios deben permanecer bloqueadas, y únicamente los usuarios de laboratorios que hayan realizado previamente una reservación, desde el kiosco informático podrán acceder a ellas. Figura 27: Diagrama de flujo de datos del caso de uso 8
Usuarios de los laboratorios Reservaciones de computadoras
Autenticar y autorizar reservaciones
Dirección MAC de la computadora Desbloquear computadoras
Elaborado por: Los autores
86
3.2.9 Caso de uso 9 Las computadoras de los laboratorios se bloquearán nuevamente una vez finalizado el tiempo de reservación de cada usuario de laboratorios. Figura 28: Diagrama de flujo de datos del caso de uso 9
Usuarios de los laboratorios
Autenticar y autorizar reservaciones
Dirección MAC de la computadora Desbloquear computadoras Dirección MAC de la computadora
Verificar periódicamente el tiempo restante de la reservación
Tiempo de reservación finalizado Bloquear computadoras
Elaborado por: Los autores
Reservaciones de computadoras
87
3.2.10 Caso de uso 10 Cinco minutos antes de finalizar el tiempo de reservación de computadoras, se avisará a los usuarios de laboratorios, para que procedan a guardar sus archivos y desocupar las computadoras. Figura 29: Diagrama de flujo de datos del caso de uso 10 Usuarios de los laboratorios
Autenticar y autorizar reservaciones
Dirección MAC de la computadora Desbloquear computadoras Dirección MAC de la computadora
Verificar periódicamente el tiempo restante de la reservación
Visualizar mensaje de aviso cinco minutos antes de finalizar la reservación
Tiempo restante de la reservación
Tiempo de reservación finalizado
Bloquear computadoras
Elaborado por: Los autores
Reservaciones de computadoras
88
3.2.11 Caso de uso 11 Los usuarios del sistema informático podrán realizar reservaciones de laboratorios para clases. Figura 30: Diagrama de flujo de datos del caso de uso 11
Usuarios del sistema informático Usuarios del sistema informático
Autenticar usuarios Laboratorios y computadoras
Usuario Reservar computadoras para clases
Dirección MAC de la computadora
Código de desbloqueo
Elaborado por: Los autores
Generar código de desbloqueo de computadoras
89
3.2.12 Caso de uso 12 Los usuarios del sistema informático podrán consultar los historiales de reservación de computadoras. Figura 31: Diagrama de flujo de datos del caso de uso 12
Usuarios del sistema informático
Usuarios del sistema informático
Autenticar usuarios Reservación de computadoras
Consultar historial de reservaciones
Usuario autenticado
Datos de la reservación
Generar reporte de historial de reservaciones Elaborado por: Los autores
90
3.2.13 Caso de uso 13 Los usuarios del sistema informático podrán bloquear las computadoras de los laboratorios en caso de ser necesario. Figura 32: Diagrama de flujo de datos del caso de uso 13
Usuarios del sistema informático
Usuarios del sistema informático
Autenticar usuarios Reservación de computadoras
Finalizar todas las reservaciones
Usuario autenticado
Elaborado por: Los autores
3.2.14 Denominación del sistema informático El sistema informático se denomina SISLAB, y se describe como “Sistema de Administración y Control de Laboratorios de Computación”.
3.2.15 Equipo de desarrollo del sistema informático Los miembros del equipo de desarrollo del sistema informático SISLAB son:
Cliente.- El cliente del sistema informático SISLAB es la PUCE SD, específicamente el Área de Redes del CITIC.
Director.- La directora del sistema informático SISLAB es la Sra. Andrea Carrión, que conforma el grupo de autores del presente proyecto.
Desarrolladores.- Los desarrolladores del sistema informático SISLAB son los autores del presente proyecto.
91
Ejecutores de pruebas.- Los ejecutores de pruebas del sistema informático SISLAB son los miembros del Área de Programación del CITIC.
3.2.16 Usuarios del sistema informático Los usuarios son quienes luego de entregado el sistema informático, harán uso de sus funcionalidades. Se utilizan dos metáforas para diferenciar a los usuarios del sistema informático SISLAB:
Usuarios de laboratorios.- Estudiantes, docentes, trabajadores y usuarios externos, que hacen uso de los laboratorios de computación de la PUCE SD.
Usuarios del sistema informático.- Personal encargado de administrar el sistema informático SISLAB.
3.3
DISEÑO DEL SISTEMA INFORMÁTICO Los desarrolladores diseñaron el sistema informático en base al análisis previamente realizado, enfocándose en lo que realmente es necesario implementar.
3.3.1 Módulos El sistema informático SISLAB está conformado por tres módulos: Módulo de administración, Módulo de reservación y Módulo de bloqueo. Cada uno de los cuales son esenciales y cumplen una función específica; éstas se definen brevemente a continuación:
Módulo de administración.- Permitirá administrar la información del sistema informático, controlar el uso de los laboratorios de computación y reservar computadoras para cátedra, desde una sola interfaz de usuario. Este módulo será utilizado por los usuarios administradores del sistema informático.
Módulo de reservación.- Permitirá a los usuarios de laboratorios, reservar computadoras para uso personal por un período de tiempo dado. Este módulo será utilizado por los usuarios de laboratorios (estudiantes, docentes, empleados y usuarios externos).
Módulo de bloqueo.- Permitirá a los usuarios de laboratorios que hayan realizado una reservación de laboratorios, utilizar una computadora previa autenticación.
92
Figura 33: Módulos del sistema informático SISLAB SISLAB Módulo de administración
Módulo de reservación
Módulo de bloqueo
Elaborado por: Los autores
3.3.2 Arquitecturas Cliente-Servidor del sistema informático A continuación se presentan las arquitecturas Cliente-Servidor utilizadas por el sistema informático SISLAB: Figura 34: Arquitectura Cliente-Servidor del módulo de administración Red de área local (LAN) Petición Interfaz Respuesta Cliente (Módulo de Administración)
Servidor de Base de Datos (Oracle 10g)
Elaborado por: Los autores
Figura 35: Arquitectura Cliente-Servidor del módulo de reservación Red de área local (LAN) Petición Interfaz Respuesta Cliente (Módulo de Reservación)
Elaborado por: Los autores
Servidor de Base de Datos (Oracle 10g)
93
Figura 36: Arquitectura Cliente-Servidor del módulo de bloqueo Red de área local (LAN) Petición
Petición
Respuesta
Respuesta
Interfaz
Cliente (Módulo de Bloqueo)
Servidor RADIUS (FreeRADIUS)
Servidor de Base de Datos (Oracle 10g)
Elaborado por: Los autores
3.3.3 Historias de usuario Las historias de usuario del sistema informático SISLAB se redactaron a partir del documento de requisitos del sistema informático. A continuación se presentan las historias de usuario:
Diseño de base de datos: DISEÑO DE LA BASE DE DATOS Almacenar la información del sistema informático. Diseño conceptual de la base de datos. Diseño físico de la base de datos. DISEÑO DE LA BASE DE DATOS Tareas: Analizar el documento de requisitos del sistema informático. Crear el Modelo Entidad-Relación. Crear los scripts para la creación de la base de datos. Crear las estructuras de base de datos.
Configuración del servidor FreeRADIUS: CONFIGURACIÓN DEL SERVIDOR FREERADIUS Autenticar computadoras reservadas. Configurar servidor de autenticación FreeRADIUS. CONFIGURACIÓN DEL SERVIDOR FREERADIUS Tareas: Instalar el servidor FreeRADIUS. Configurar el servidor FreeRADIUS. Crear las estructuras de base de datos para uso del servidor FreeRADIUS.
94
Inicio de sesión para administración: INICIO DE SESIÓN PARA ADMINISTRACIÓN Autenticar a los usuarios del sistema informático. Pertenece al módulo de administración. Se requiere nombre de usuario y contraseña para iniciar sesión. INICIO DE SESIÓN PARA ADMINISTRACIÓN Tareas: Crear formulario de inicio de sesión. Crear campos para usuario y contraseña. Crear botones ingresar y limpiar. Crear función de base de datos de autenticación del usuario y su contraseña.
Administración de usuarios del sistema: ADMINISTRACIÓN DE USUARIOS DEL SISTEMA Acceso a la información de usuarios del sistema informático. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar usuarios del sistema informático. Los usuarios del sistema pueden estar: habilitados o deshabilitados. Asignar perfil a los usuarios. Generar una contraseña de cuatro dígitos para el usuario. ADMINISTRACIÓN DE USUARIOS DEL SISTEMA Tareas: Crear formulario de usuarios del sistema. Crear campos para código, nombre, departamento en que labora, cargo que desempeña, perfil de usuario, contraseña y estado (habilitado / deshabilitado). Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de usuarios del sistema. Crear procedimiento de aplicación para generar una contraseña encriptada de cuatro dígitos.
Cambiar contraseña de usuarios del sistema: CAMBIAR CONTRASEÑA DE USUARIOS DEL SISTEMA Una vez iniciada sesión, los usuarios del sistema tienen opción a cambiar su contraseña en cualquier momento. Pertenece al módulo de administración. Modificar la contraseña de los usuarios del sistema informático.
95
CAMBIAR CONTRASEÑA DE USUARIOS DEL SISTEMA Tareas: Crear formulario de cambio de contraseña para usuarios del sistema. Crear campos para nueva contraseña y verificar contraseña. Crear botones guardar y cancelar. Crear procedimiento de aplicación para encriptar la contraseña de usuarios del sistema. Crear procedimiento de base de datos de modificación de contraseña de usuarios del sistema.
Administración de módulos y opciones: ADMINISTRACIÓN DE MÓDULOS Y OPCIONES Acceso a la información de módulos y opciones del sistema informático. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar módulos y opciones. ADMINISTRACIÓN DE MÓDULOS Y OPCIONES Tareas: Crear formulario de módulos y opciones del sistema. Crear campos para código, nombre, tipo (módulo / opción), nombre del formulario, orden de presentación, módulo padre (solo para uso de las opciones). Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de módulos y opciones del sistema.
Administración de perfiles del usuario: ADMINISTRACIÓN DE PERFILES DEL USUARIO Y MÓDULOS/OPCIONES Acceso a la información de perfiles de usuario del sistema informático y módulos/opciones por perfil. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar perfiles de usuario. Los perfiles pueden estar: habilitados o deshabilitados. Seleccionar, crear, modificar y eliminar módulos y opciones por perfil.
ADMINISTRACIÓN DE PERFILES DEL USUARIO Y MÓDULOS/OPCIONES Tareas: Crear formulario maestro detalle de perfiles de usuario y módulos/opciones por perfil. Crear en el bloque maestro campos para código, nombre, descripción y estado (habilitado / deshabilitado) de perfiles de usuario Crear en el bloque detalle un campo para módulo/opción del sistema. Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar, para el bloque maestro y para el bloque detalle. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de perfiles de usuario. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de módulos y opciones por perfil.
96
Autorización de módulos y opciones según el perfil: AUTORIZACIÓN DE MÓDULOS Y OPCIONES SEGÚN EL PERFIL Generar en el formulario principal, el menú de módulos y opciones del sistema informático según el perfil al que pertenece el usuario autenticado. Pertenece al módulo de administración. El menú para el usuario se genera al iniciar la sesión. El usuario debe estar asignado a un perfil. Los módulos y opciones deben estar habilitados. AUTORIZACIÓN DE MÓDULOS Y OPCIONES SEGÚN EL PERFIL Tareas: Crear función de base de datos que retorne los módulos y opciones asignados al perfil del usuario que ha iniciado sesión. Generar el menú de la aplicación en tiempo de ejecución según el perfil al que pertenezca el usuario.
Administración de laboratorios y computadoras: ADMINISTRACIÓN DE LABORATORIOS Y COMPUTADORAS Acceso a la información de laboratorios. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar laboratorios. Los laboratorios pueden estar: habilitados o deshabilitados. Seleccionar, crear, modificar y eliminar computadoras por laboratorio. Las computadoras pueden estar: habilitados o deshabilitados. ADMINISTRACIÓN DE LABORATORIOS Y COMPUTADORAS Tareas: Crear formulario maestro detalle de laboratorios y computadoras por laboratorio. Crear en el bloque maestro campos para código, nombre, descripción, ubicación, número de columnas de computadoras, orden de presentación y estado (habilitado / deshabilitado). Crear en el bloque detalle campos para código, MAC, nombre, descripción, orden de presentación y estado (habilitado / deshabilitado). Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar para el bloque maestro y para el bloque detalle. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de laboratorios de computación. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de computadoras.
97
Administración de grupos de usuario de laboratorios: ADMINISTRACIÓN DE GRUPOS DE USUARIO DE LABORATORIOS Acceso a la información de los grupos de usuario que pueden realizar reservaciones personales. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar grupos de usuario de laboratorios. Los grupos de usuario de laboratorios pueden estar: habilitados o deshabilitados. Tomar en cuenta que cada usuario de laboratorios es consultado de los Sistemas: Académico, Nómina y Contable de la PUCE SD y se encuentra pre-asignado a un grupo de usuarios de laboratorios. ADMINISTRACIÓN DE GRUPOS DE USUARIO DE LABORATORIOS Tareas: Crear formulario de grupos de usuario de laboratorios. Crear campos de código, descripción, periodo de restablecimiento (diario, semanal, mensual), tiempo mínimo de reservación, tiempo máximo de reservación y estado (habilitado / deshabilitado). Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar. Crear procedimientos de base de datos de inserción, modificación y eliminación de grupos de usuario de laboratorios.
Administración de franjas horarias: ADMINISTRACIÓN DE FRANJAS HORARIAS Acceso a las franjas horarias. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar franjas horarias. Las franjas horarias pueden estar: habilitadas o deshabilitadas.
ADMINISTRACIÓN DE FRANJAS HORARIAS Tareas: Crear formulario de franjas horarias. Crear campos de código, hora inicio, minutos inicio, hora fin, minutos fin y estado (habilitado / deshabilitado). Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar. Crear procedimientos de base de datos de inserción, modificación y eliminación de franjas horarias.
Administración de horarios de atención de los laboratorios de computación: ADMINISTRACIÓN DE HORARIOS DE ATENCIÓN DE LABORATORIOS Acceso a los horarios de atención de los laboratorios de computación. Pertenece al módulo de administración. Seleccionar, crear, modificar y eliminar horarios de atención de los laboratorios de computación. Un laboratorio de computación puede atender en varias franjas horarias.
98
ADMINISTRACIÓN DE HORARIOS DE ATENCIÓN DE LABORATORIOS Tareas: Crear formulario de horarios de atención de los laboratorios de computación. Crear campos de código, laboratorios de computación, día de la semana y franja horaria. Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar. Crear procedimientos de base de datos de inserción, modificación y eliminación de horarios de atención de laboratorios de computación.
Reservación de computadoras para clases: RESERVACIÓN DE COMPUTADORAS PARA CLASES Reservar computadoras para clases. Pertenece al módulo de administración. El usuario del sistema informático puede reservar laboratorios para clases. Consultar del Sistema Académico los días y horas en que se pueden reservar los laboratorios, en función a los horarios de clase asignados. Un código aleatorio de cuatro dígitos se genera una vez reservado el laboratorio. RESERVACIÓN DE COMPUTADORAS PARA CLASES Tareas: Crear formulario maestro detalle de encabezados de reservaciones de laboratorios, y detalle de computadoras reservadas. Crear en el bloque maestro campos para ciclo académico, escuela, carrera, nivel, paralelo, materia y laboratorio de computación. Crear en el bloque detalle campos para código, equipo de computación, nombre de usuario, contraseña, fecha y hora inicio de la reservación, fecha y hora fin de la reservación. Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar para los encabezados de las reservaciones de laboratorios y para los detalles de computadoras reservadas. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de encabezados de reservaciones de laboratorios. Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de computadoras reservadas en función a los horarios de clase del Sistema Académico.
Bloqueo de computadoras por el administrador: BLOQUEO DE COMPUTADORAS POR EL ADMINISTRADOR El administrador de laboratorios, podrá bloquear las computadoras en el momento que creyere conveniente. Pertenece al módulo de administración.
99
BLOQUEO DE COMPUTADORAS POR EL ADMINISTRADOR Tareas: Crear formulario de vista de reservaciones de los laboratorios de computación. Visualizar las reservaciones en curso de forma gráfica. Crear un botón para modificación de reservaciones. Crear campo de minutos en que finalizará la reservación. Crear procedimiento de base de datos de modificación de reservaciones.
Inicio de sesión para reservación: INICIO DE SESIÓN PARA RESERVACIÓN Autenticar a los usuarios de laboratorios. Pertenece al módulo de reservación. Se requiere nombre de usuario y contraseña para iniciar sesión. El nombre de usuario se obtiene del código de barras del carnet o documento del usuario de laboratorios. Para que un usuario de laboratorios pueda iniciar sesión debe estar registrado en uno de los sistemas informáticos de la PUCE SD; en el Sistema Académico para los estudiantes, en el Sistema de Nómina para los docentes y empleados, y en el Sistema Contable para los usuarios externos. La contraseña inicial para los nuevos usuarios de laboratorios será su número de identificación (cédula o pasaporte). Se debe obligar a los usuarios a cambiar su contraseña la primera vez que inician sesión. INICIO DE SESIÓN PARA RESERVACIÓN Tareas: Crear formulario de inicio de sesión para reservación de computadoras. Crear campos para usuario y contraseña. Crear botones ingresar y limpiar. Crear función de base de datos de autenticación del usuario y su contraseña. Llamar al formulario de cambio de contraseña si es la primera vez que el usuario inicia sesión.
100
Reservación
de
computadoras
para
uso
personal:
Reservación
de
computadoras: RESERVACIÓN DE COMPUTADORAS PARA USO PERSONAL Reservar computadoras disponibles. Pertenece al módulo de reservación. Visualizar gráficamente los laboratorios y sus respectivas computadoras. Mostrar los datos referentes al nombre de usuario, tipo de usuario (estudiante, docente, empleado o usuario externo), ubicación de laboratorio, horarios de atención, tiempo de disponible para reservaciones y tiempo consumido en reservaciones. Reservar un equipo de computación disponible, por usuario a la vez. Asignar el tiempo de reservación máximo asignado al grupo al que pertenece el usuario, si el usuario ya ha reservado computadoras en el mismo periodo se debe asignar el tiempo restante a la reservación. El tiempo de reservación no puede ser menor al tiempo mínimo de reservación asignado al grupo al que pertenece el usuario. Cancelar una reservación existente. Diferenciar gráficamente las computadoras ocupadas, deshabilitadas y disponibles.
RESERVACIÓN DE COMPUTADORAS PARA USO PERSONAL Tareas: Crear formulario para reservación de computadoras para uso personal Visualizar en tiempo de ejecución los laboratorios de computación y sus respectivas computadoras, y refrescar cada minuto. Seleccionar datos de los laboratorios de computación. Asignar una imagen a cada equipo de computación para diferenciar si se encuentra ocupado, deshabilitado o disponible. Crear procedimientos de base de datos para reservar y cancelar reservaciones de computadoras. Bloquear la reservación de computadoras si el usuario ya tiene una reservación previa en curso, si el laboratorio no tiene horario de atención disponible, o si existe una reservación de computadoras para clases que iniciará en poco tiempo.
Cambio de contraseña: CAMBIO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS El usuario de laboratorios podrá cambiar su contraseña cuando lo creyere conveniente. Pertenece al módulo de reservación. Las contraseñas deben ser de cuatro dígitos numéricos. CAMBIO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS Tareas: Crear formulario de cambio de contraseña. Crear campos para contraseña de cuatro dígitos numéricos, confirmación de contraseña. Crear botones aceptar y cancelar. Crear procedimiento de base de datos para modificación de contraseña.
101
Olvido de contraseña: OLVIDO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS Opción de generación de nueva contraseña en caso de olvido. Pertenece al módulo de reservación. Enviar un correo electrónico con la nueva contraseña generada a la cuenta de correo registrada para el usuario de laboratorio. La contraseña aleatoria contendrá cuatro dígitos numéricos. OLVIDO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS Tareas: Crear opción de generación de nueva contraseña, en el formulario de inicio de sesión para reservación de computadoras. Crear procedimiento de base de datos para generación de una nueva contraseña aleatoria de cuatro dígitos numéricos. Crear procedimiento de aplicación para envío de una nueva contraseña al correo electrónico del usuario de laboratorios.
Desbloqueo de computadoras por usuarios de laboratorios: DESBLOQUEO DE COMPUTADORAS POR USUARIO DE LABORATORIOS Autenticar las reservaciones. Pertenece al módulo de bloqueo. Se requiere nombre de usuario y código de desbloqueo. DESBLOQUEO DE COMPUTADORAS POR USUARIO DE LABORATORIOS Tareas: Crear formulario de desbloqueo de computadoras. Crear campos para usuario, código de desbloqueo.
Bloqueo de computadoras una vez finalizado el tiempo de reservación: BLOQUEO DE COMPUTADORAS Bloquear las computadoras una vez finalizado el tiempo de reservación, o en caso de que el usuario de laboratorios así lo requiera. Pertenece al módulo de bloqueo. Cinco minutos antes de finalizar el tiempo de reservación, se debe dar a conocer al usuario de laboratorios que su computadora será bloqueada. Si un usuario decide desocupar una computadora, podrá bloquearla sin necesidad de que el tiempo de reservación finalice.
102
BLOQUEO DE COMPUTADORAS Tareas: Crear formulario de bloqueo de computadoras. Crear opción para finalizar la reservación. Crear procedimiento de aplicación para bloquear computadoras. Crear procedimiento de base de datos para finalizar la reservación.
Desbloqueo de computadoras por administradores: DESBLOQUEO DE COMPUTADORAS POR ADMINISTRADORES Desbloquear computadoras sin necesidad de realizar una reservación o estar conectado a la red para realizar mantenimiento. Pertenece al módulo de bloqueo. Se requiere contraseña de administrador. DESBLOQUEO DE COMPUTADORAS POR ADMINISTRADORES Tareas: Crear formulario de desbloqueo de computadoras por administradores. Crear el campo para contraseña de administrador. Crear botones de aceptar y cancelar. Guardar localmente una contraseña de administrador encriptada. Crear procedimiento de aplicación para autenticar la contraseña de administrador. Crear procedimiento de aplicación para desbloquear el equipo por tiempo indefinido.
Cambiar la contraseña de desbloqueo de computadoras por administradores: CAMBIAR CONTRASEÑA DE Cambiar la contraseña local de administrador. Pertenece al módulo de bloqueo. Se requiere ingresar la contraseña de administrador anterior.
CAMBIAR CONTRASEÑA DE ADMINISTRADORES Tareas: Crear botón de cambio de contraseña. Crear procedimiento de aplicación para cambiar la contraseña de administrador.
3.3.4 Estimación de las historias de usuario Las historias de usuario han sido estimadas, por lo que ahora podemos entender la magnitud y el coste de la implementación de cada funcionalidad del sistema informático SISLAB.
103
Tabla 22: Tabla de estimación de historias de usuario HISTORIA DE USUARIO
PUNTOS DE HISTORIA ESTIMADOS
Diseño de la base de datos
25
Configuración del servidor FreeRADIUS
30
Inicio de sesión para administración
8
Administración de usuarios del sistema
3
Cambiar contraseña de usuarios del sistema
1
Administración de módulos y opciones
3
Administración de perfiles de usuario y módulos/opciones
3
Autorización de módulos y opciones según el perfil
5
Administración de laboratorios y computadoras
3
Administración de grupos de usuario de laboratorios
3
Administración de franjas horarias
2
Administración de horarios de atención de laboratorios
2
Reservación de computadoras para clases
15
Bloqueo de computadoras por el administrador
5
Inicio de sesión para reservación
5
Reservación de computadoras para uso personal
20
Cambio de contraseña de usuarios de laboratorios
2
Olvido de contraseña de usuarios de laboratorios
5
Desbloqueo de computadoras por usuarios de laboratorios
12
Bloqueo de computadoras por usuarios de laboratorios
25
Desbloqueo de computadoras por administradores
15
Cambiar contraseña de administradores
3
PUNTOS DE HISTORIA TOTAL
195
Elaborado por: Los autores
3.3.5 Iteraciones A continuación se describen las iteraciones planificadas para el desarrollo del sistema informático SISLAB:
104
3.3.5.1 Primera iteración La primera iteración durará 66 días ideales, y contiene las siguientes historias de usuario:
Diseño de la base de datos.
Configuración del servidor FreeRADIUS.
Inicio de sesión para administración.
Administración de usuarios del sistema.
3.3.5.2 Segunda iteración La segunda iteración durará 67 días ideales, y contiene las siguientes historias de usuario:
Cambiar contraseña de usuarios del sistema.
Administración de módulos y opciones.
Administración de perfiles de usuario y módulos/opciones.
Autorización de módulos y opciones según el perfil.
Administración de laboratorios y computadoras.
Administración de grupos de usuario de laboratorios.
Administración de franjas horarias.
Administración de horarios de atención de laboratorios.
Reservación de computadoras para clases.
Bloqueo de computadoras por el administrador.
Inicio de sesión para reservación.
Reservación de computadoras para uso personal.
3.3.5.3 Tercera iteración La tercera iteración durará 62 días ideales, y contiene las siguientes historias de usuario:
Cambio de contraseña de usuarios de laboratorios.
Olvido de contraseña de usuarios de laboratorios.
105
Desbloqueo de computadoras por usuarios de laboratorios.
Bloqueo de computadoras por usuarios de laboratorios.
Desbloqueo de computadoras por administradores.
Cambiar contraseña de administradores.
3.3.6 Diseño de la base de datos Constituye el diseño de lo que será el almacén de la información del sistema informático.
3.3.6.1 Diseño conceptual de la base de datos El Modelo Entidad-Relación constituye el diseño conceptual de la base de datos, y permite identificar las entidades, atributos y relaciones del sistema informático SISLAB, y se presenta a continuación:
106
Figura 37: Modelo Entidad-Relación del sistema informático SISLAB Descripción
Nombre
Nombre
CodPer
Estado
CodPer
CodMod
CodMod
Perfil
N
N
Contiene
Orden
Módulo
1
1
Pertenece
Contiene
N
N
Usuario del sistema
Opción Descripción Nombre Estado
CodUsuSis Nombre
Ubicación CodOpc
Cargo CodLab
Departamento
Orden
Estado Nombre
N
Formulario
Laboratorio 1
N CodLab CodHor Día
Contiene
Atiende
MacEqu Nombre
N
Descripción
N
Equipo
Estado
Horario
N MacEqu CodHor
Estado
CodUsuLab Hora_Inicio Fecha
Reserva
Hora_Inicio Hora_Fin Tipo_Reservación
N Usuario de laborarorios Estado CodUsuLab Teléfono Identificación Dirección Tipo_Identificación
Nombre
Tipo_Usuario
Elaborado por: Los autores
Correo_Electrónico Nick
Hora_Fin
107
3.3.6.2 Diseño físico de la base de datos Para realizar el diseño físico de la base de datos se utilizó el RDBMS Oracle 10g R2, el cual fue definido por el CITIC (ver Anexo 3). El diccionario de datos especifica detalladamente cada una de las estructuras creadas en la base de datos (ver Anexo 8). Para la creación de estructuras de datos en la base de datos, se utilizaron los siguientes estándares: RAD y REALM.- Prefijos de las estructuras de datos correspondientes al servidor FreeRADIUS. SL.- Prefijo de las estructuras de datos correspondientes al sistema informático SISLAB. SLT.- Prefijo de las tablas correspondientes al sistema informático SISLAB. SLV.- Prefijo de las vistas correspondientes al sistema informático SISLAB. SLR.- Prefijo de los triggers correspondientes al sistema informático SISLAB. SLPK.- Prefijo de las claves primarias correspondientes al sistema informático SISLAB. SLFK.- Prefijo de las claves foráneas correspondientes al sistema informático SISLAB. SLUK.- Prefijo de las claves únicas correspondientes al sistema informático SISLAB. A continuación se muestra un fragmento del script de creación de la base de datos del sistema informático SISLAB, y el diagrama del diseño físico de la base de datos: /*=====================================================*/ /* Tabla:SLTEQU */ /* Tabla de computadoras. */ /*=====================================================*/ CREATE TABLE SLTEQU ( LABCOD VARCHAR2(10 BYTE) NOT NULL, EQUMAC VARCHAR2(30 BYTE) NOT NULL, EQUNOM VARCHAR2(100 BYTE) NOT NULL, EQUDES VARCHAR2(300 BYTE) NOT NULL, EQUORD NUMBER(3) NOT NULL, EQUEST VARCHAR2(20 BYTE) NOT NULL, USUCRE VARCHAR2(100 BYTE), FECCRE DATE, USUMOD VARCHAR2(100 BYTE),
108
FECMOD ) TABLESPACE PCTUSED PCTFREE INITRANS MAXTRANS STORAGE
DATE USERS 0 10 1 255 ( INITIAL MINEXTENTS MAXEXTENTS PCTINCREASE BUFFER_POOL )
64K 1 2147483645 0 DEFAULT
LOGGING NOCOMPRESS NOCACHE NOPARALLEL MONITORING; COMMENT ON TABLE SLTEQU IS 'Tabla de computadoras.'; COMMENT ON COLUMN SLTEQU.LABCOD IS 'Código único del laboratorio.'; COMMENT ON COLUMN SLTEQU.EQUMAC IS 'Dirección MAC del equipo.’ COMMENT ON COLUMN SLTEQU.EQUNOM IS 'Nombre del equipo de computación.'; COMMENT ON COLUMN SLTEQU.EQUDES IS 'Descripción del equipo de computación.'; COMMENT ON COLUMN SLTEQU.EQUORD IS 'Orden del equipo para su graficación en la aplicación'; COMMENT ON COLUMN SLTEQU.EQUEST IS 'Estado del equipo de computación: Habilitado, Deshabilitado.'; COMMENT ON COLUMN SLTEQU.USUCRE IS 'Usuario que creó el registro'; COMMENT ON COLUMN SLTEQU.FECCRE IS 'Fecha y hora de creación del registro'; COMMENT ON COLUMN SLTEQU.USUMOD IS 'Usuario que modificó el registro'; COMMENT ON COLUMN SLTEQU.FECMOD IS 'Fecha y hora de modificación del registro'; CREATE UNIQUE INDEX SLPKEQU ON SLTEQU (EQUMAC, LABCOD, CAMUNICOD) LOGGING TABLESPACE USERS PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL 64K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 BUFFER_POOL DEFAULT ) NOPARALLEL;
109
CREATE OR REPLACE TRIGGER SLREQU_BUPDATE before update ON SLTEQU referencing new as new old as old for each row begin :new.USUMOD := user; :new.FECMOD := sysdate; end; / SHOW ERRORS; CREATE OR REPLACE TRIGGER SLREQU_BINSERT before insert ON SLTEQU referencing new as new old as old for each row begin :new.USUCRE := user; :new.FECCRE := sysdate; end; / SHOW ERRORS; CREATE PUBLIC SYNONYM SLTEQU FOR SLTEQU; ALTER TABLE SLTEQU ADD ( CONSTRAINT SLPKEQU PRIMARY KEY (EQUMAC, LABCOD, CAMUNICOD) USING INDEX TABLESPACE USERS PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL MINEXTENTS MAXEXTENTS PCTINCREASE ));
64K 1 2147483645 0
ALTER TABLE SLTEQU ADD ( CONSTRAINT SLFK_TEQU_RF_TLAB FOREIGN KEY (LABCOD, CAMUNICOD) REFERENCES SLTLAB (LABCOD, CAMUNICOD));
Simbología de íconos del diseño físico de la base de datos: Clave primaria
Clave única
Clave foránea
Dato no nulo
110
Tablas para uso del sistema informático SISLAB:
Figura 38: Tablas de la base de datos del sistema informático SISLAB
Elaborado por: Los autores
111
Tablas para uso del servidor FreeRADIUS: Figura 39: Tablas de la base de datos del servidor FreeRADIUS
Elaborado por: Los autores
Vistas creadas a partir de otros sistemas informáticos de la PUCE SD, para uso del sistema informático SISLAB:
Figura 40: Vistas de la base de datos del sistema informático SISLAB
Elaborado por: Los autores
112
3.4
CODIFICACIÓN DEL SISTEMA INFORMÁTICO Durante
la
codificación
del
sistema
informático
se
realizaron
reuniones
permanentes con la finalidad de que todos los desarrollares se mantuvieran informados sobre el progreso y cambios realizados el día de trabajo anterior. La programación en la mayoría de las tareas asignadas, se realizó en parejas, y en caso de no ser así, el desarrollador encargado de la tarea socializó los cambios realizados al resto de desarrolladores. A través de todo el desarrollo del sistema informático, en especial durante las pruebas unitarias, pruebas de integración y control de calidad, el código fue refactorizado. Para la codificación del sistema informático se utilizó el lenguaje de programación Visual Basic .NET del IDE Visual Studio 2008; la estructuración interna del código se realizó bajo los lineamientos de la programación en capas. El sistema informático SISLAB, se codificó en dos capas:
Capa de presentación/negocios.
Capa de acceso a datos.
A continuación se muestran extractos de código fuente del sistema informático SISLAB programado en capas:
Archivo de conexión a la base de datos app.conf. <?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data. Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> </configSections> <dataConfiguration defaultDatabase="principal" /> <connectionStrings> <add name="principal" connectionString="Data Source=PRUEBA;User ID=SISLAB;Password=sl;Unicode=True" providerName="System.Data.OracleClient" /> <add name="SISLAB_ADM.My.MySettings.ConnectionString"
113
connectionString="Data Source=prueba;Persist Security Info=True;User ID=sislab;Unicode=True" providerName="System.Data.OracleClient" /> </connectionStrings> </configuration>
ď&#x201A;ˇ
Clase de la capa ComĂşn para definir los usuarios del sistema: Imports System.ComponentModel Public Class Usuarios_Sistema 'Identificador del usuario del sistema Private _us_id As String Public Property US_ID() As String Get Return _US_id End Get Set(ByVal value As String) _us_id = value End Set End Property 'Nombre del usuario del sistema Private _us_nom As String Public Property US_Nombre() As String Get Return _us_nom End Get Set(ByVal value As String) _us_nom = value End Set End Property 'Departamento al que pertenece el usuario del sistema Private _us_dep As String Public Property US_Departamento() As String Get Return _us_dep End Get Set(ByVal value As String) _us_dep = value
114
End Set End Property 'Cargo que desempe単a el usuario del sistema Private _us_car As String Public Property US_Cargo() As String Get Return _us_car End Get Set(ByVal value As String) _us_car = value End Set End Property 'Contrase単a de acceso al sistema Private _us_psw As String Public Property US_Contrase単a() As String Get Return _us_psw End Get Set(ByVal value As String) _us_psw = value End Set End Property 'ID del perfil Private _us_per_id As String Public Property US_Perfil_ID() As String Get Return _us_per_id End Get Set(ByVal value As String) _us_per_id = value End Set End Property 'Nombre del perfil Private _us_per_nom As String Public Property US_Perfil_nombre() As String Get Return _us_per_nom End Get
115
Set(ByVal value As String) _us_per_nom = value End Set End Property 'Estado del usuario del sistema Private _us_est As Boolean Public Property US_Estado() As Boolean Get Return _us_est End Get Set(ByVal value As Boolean) _us_est = value End Set End Property End Class Public Class Usuarios_SistemaCollection Inherits BindingList(Of Usuarios_Sistema) End Class
ď&#x201A;ˇ
Clase de la capa de Acceso a Datos para administrar los usuarios del sistema: Imports Microsoft.Practices.EnterpriseLibrary.Data Imports System.Data.Common Imports System.Data.OracleClient Imports Comun Imports System.Data ''' <summary> ''' Acceso a Datos de usuarios del sistema ''' </summary> Public Class Usuarios_Sistema_DA Implements IDisposable Dim db As Database Dim package_name As String Public Sub New() db = DatabaseFactory.CreateDatabase() package_name = g_schema_name & "." & "slk_usuarios_sis" End Sub ''' <summary> ''' Obtiene un registro de usuario del sistema
116
''' </summary> Public Function Obtener_registro(ByVal v_codigo As String) As Usuarios_Sistema Dim sql As String = package_name & ".p_obt_usuario" Dim rec As Usuarios_Sistema = Nothing Using cmd As DbCommand = db.GetStoredProcCommand(sql) Dim par As New OracleParameter("io_cursor", OracleType.Cursor) par.Direction = ParameterDirection.Output db.AddInParameter(cmd, "v_cod", DbType.String, v_codigo) cmd.Parameters.Add(par) Using dr As IDataReader = db.ExecuteReader(cmd) If dr IsNot Nothing AndAlso dr.Read Then rec = New Usuarios_Sistema() With rec .US_ID = dr("ususiscod") .US_Nombre = dr("ususisnom") .US_Departamento = dr("ususisdep") .US_Cargo = dr("ususiscar") .US_Estado = IIf(dr("ususisest") = "Habilitado", True, False) End With End If End Using End Using Return rec End Function ''' <summary> ''' Obtiene una colecci贸n de registros de usuarios del sistema ''' </summary> Public Function Obtener_registros() As Usuarios_SistemaCollection Dim sql As String = package_name & ".p_obt_usuarios" Dim lista As Usuarios_SistemaCollection = Nothing Using cmd As DbCommand = db.GetStoredProcCommand(sql) Dim par As New OracleParameter("io_cursor", OracleType.Cursor) par.Direction = ParameterDirection.Output cmd.Parameters.Add(par) Using dr As IDataReader = db.ExecuteReader(cmd)
117
If dr IsNot Nothing Then lista = New Usuarios_SistemaCollection While dr.Read Dim usu As New Usuarios_Sistema With usu .US_ID = dr("ususiscod") .US_Nombre = dr("ususisnom") .US_Departamento = dr("ususisdep") .US_Cargo = dr("ususiscar") .US_Perfil_ID = dr("persiscod") .US_Perfil_nombre = dr("persisnom") .US_Contrase単a = dr("ususispsw") .US_Estado = IIf(dr("ususisest") = "Habilitado", True, False) End With lista.Add(usu) End While End If End Using End Using Return lista End Function ''' <summary> ''' Valida las credenciales del usuario del sistema ''' </summary> Public Function Validar(ByVal v_codigo As String, ByVal v_contrasena As String) As Boolean Dim sql As String = package_name & ".f_validar" Dim retval As Char Using cmd As DbCommand = db.GetStoredProcCommand(sql) db.AddParameter(cmd, "ret", DbType.String, 1, ParameterDirection.ReturnValue, True, 0, 0, String.Empty, DataRowVersion.Current, Convert.DBNull) db.AddInParameter(cmd, "codigo", DbType.String, v_codigo) db.AddInParameter(cmd, "passwd", DbType.String, v_contrasena) db.ExecuteNonQuery(cmd) retval = db.GetParameterValue(cmd, "ret") End Using
118
Return IIf(retval = "T", True, False) End Function ''' <summary> ''' Permite cambiar la contrase単a de un usuario del sistema ''' </summary> Public Sub CambiarPassword(ByVal v_usuario As String, ByVal v_contrasena As String) Dim sql As String = package_name & ".p_cambiar_contrasena" Dim v_contrasena_encriptada As String = CryptoHelper.Encrypt(v_contrasena) Using cmd As DbCommand = db.GetStoredProcCommand(sql) db.AddInParameter(cmd, "v_ususiscod", DbType.String, v_usuario) db.AddInParameter(cmd, "v_ususispsw", DbType.String, v_contrasena_encriptada) db.ExecuteNonQuery(cmd) End Using End Sub ''' <summary> ''' Inserta un registro de usuarios del sistema ''' </summary> Public Sub Insertar(ByVal registro As Usuarios_Sistema) Dim sql As String = package_name & ".p_ins_usuario" Using cmd As DbCommand = db.GetStoredProcCommand(sql) db.AddInParameter(cmd, "v_ususiscod", DbType.String, registro.US_ID) db.AddInParameter(cmd, "v_ususisnom", DbType.String, registro.US_Nombre) db.AddInParameter(cmd, "v_ususisdep", DbType.String, registro.US_Departamento) db.AddInParameter(cmd, "v_ususiscar", DbType.String, registro.US_Cargo) db.AddInParameter(cmd, "v_persiscod", DbType.String, registro.US_Perfil_ID) db.AddInParameter(cmd, "v_ususispsw", DbType.String, registro.US_Contrase単a) db.AddInParameter(cmd, "v_usucre", DbType.String, g_codusuario) db.AddInParameter(cmd, "v_ususisest", DbType.String,
119
IIf(registro.US_Estado, "Habilitado", "Deshabilitado")) db.ExecuteNonQuery(cmd) End Using End Sub ''' <summary> ''' Actualiza un registro de usuario del sistema ''' </summary> Public Sub Actualizar(ByVal registro As Usuarios_Sistema) Dim sql As String = package_name & ".p_act_usuario" Using cmd As DbCommand = db.GetStoredProcCommand(sql) db.AddInParameter(cmd, "v_ususiscod", DbType.String, registro.US_ID) db.AddInParameter(cmd, "v_ususisnom", DbType.String, registro.US_Nombre) db.AddInParameter(cmd, "v_ususisdep", DbType.String, registro.US_Departamento) db.AddInParameter(cmd, "v_ususiscar", DbType.String, registro.US_Cargo) db.AddInParameter(cmd, "v_persiscod", DbType.String, registro.US_Perfil_ID) db.AddInParameter(cmd, "v_ususispsw", DbType.String, registro.US_Contrase単a) db.AddInParameter(cmd, "v_usumod", DbType.String, g_codusuario) db.AddInParameter(cmd, "v_ususisest", DbType.String, IIf(registro.US_Estado, "Habilitado", "Deshabilitado")) db.ExecuteNonQuery(cmd) End Using End Sub ''' <summary> ''' Elimina un registro de usuario del sistema ''' </summary> Public Sub Eliminar(ByVal v_codigo As String) Dim sql As String = package_name & ".p_eli_usuario" Using cmd As DbCommand = db.GetStoredProcCommand(sql) db.AddInParameter(cmd, "v_ususiscod", DbType.String, v_codigo)
120
db.ExecuteNonQuery(cmd) End Using End Sub #Region " IDisposable Support " Private disposedValue As Boolean = False 'Para detectar llamadas redundantes 'IDisposable Protected Overridable Sub Dispose(ByVal disposing As Boolean) If Not Me.disposedValue Then If disposing Then 'TODO: Liberar otro estado (objetos administrados). End If db = Nothing End If Me.disposedValue = True End Sub 'Visual Basic agregó este código para implementar 'correctamente el modelo descartable. Public Sub Dispose() Implements IDisposable.Dispose 'No cambie este código. Coloque el código de limpieza en 'Dispose (ByVal que se dispone como Boolean). Dispose(True) GC.SuppressFinalize(Me) End Sub #End Region End Class
Formulario de la capa de presentación/negocios que muestra la información de los usuarios del sistema:
121
Imports Comun Imports AccesoDatos Public Class Frm_Usuarios_Sistema Dim vl_Accion_Usuarios_Sistema As String = "" 'Variable local que alamacena el tipo de acci贸n: (I)Inserci贸n, '(M)Modificaci贸n Private Sub Frm_Usuarios_Sistema_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Establecer propiedades y obtener registro de usuarios del 'sistema: FormatoDataGridView(Usuarios_SistemaDataGridView) Usuarios_Sistema() BloquearElementos_Usuarios_Sistema() End Sub #Region "1. USUARIOS DEL SISTEMA" #Region "1.1. PRINCIPAL (USUARIOS DEL SISTEMA)" Private Sub Usuarios_Sistema() 'Obtener listas: ObtenerLista_Perfiles("%") 'Obtener datos: Obtener_Usuarios_Sistema() 'Establecer valores/propiedades por defecto: DesbloquearNavegacion_Usuarios_Sistema() If Usuarios_SistemaBindingSource.Count > 0 Then Usuarios_SistemaBindingSource.MoveFirst() Usuarios_SistemaDataGridView.Rows(0).Selected = True End If End Sub #End Region #Region "1.2. ACCESO A DATOS (USUARIOS DEL SISTEMA)" Private Sub Obtener_Usuarios_Sistema() Dim data As Usuarios_SistemaCollection = Nothing Try 'Obtener registros: Using x As New Usuarios_Sistema_DA data = x.Obtener_registros() End Using
122
Catch ex As Exception MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try If data IsNot Nothing Then Usuarios_SistemaBindingSource.DataSource = data End If End Sub Private Sub ObtenerLista_Perfiles(ByVal v_estado As String) Dim data As PerfilesCollection = Nothing Try 'Obtener registros: Using x As New Perfiles_DA data = x.Obtener_registros(v_estado) End Using Catch ex As Exception MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try If data IsNot Nothing Then ListaPerfilesBindingSource.DataSource = data End If End Sub Private Sub Insertar_Usuarios_Sistema() Try Dim registro As Usuarios_Sistema = DirectCast(Usuarios_SistemaBindingSource.Current, Usuarios_Sistema) 'Insertar registro: Using db As New Usuarios_Sistema_DA db.Insertar(registro) End Using Catch ex As Exception MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) Usuarios_SistemaBindingSource.CancelEdit() End Try End Sub
123
Private Sub Modificar_Usuarios_Sistema() Try Dim registro As Usuarios_Sistema = DirectCast(Usuarios_SistemaBindingSource.Current, Usuarios_Sistema) 'Modificar registro: Using db As New Usuarios_Sistema_DA db.Actualizar(registro) End Using Catch ex As Exception MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) Usuarios_SistemaBindingSource.CancelEdit() End Try End Sub Private Sub Eliminar_Usuarios_Sistema() If MessageBox.Show("¿Está realmente seguro de eliminar el registro actual?", "CONFIRMACIÓN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then Try Dim registro As Usuarios_Sistema = DirectCast(Usuarios_SistemaBindingSource.Current, Usuarios_Sistema) 'Eliminar registro: Using db As New Usuarios_Sistema_DA db.Eliminar(registro.US_ID) End Using Usuarios_SistemaBindingSource.Remove(registro) Catch ex As Exception MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try End If End Sub Private Function GenerarContrasena_Usuarios_Sistema() As String Dim vl_contrasena As String = "" Dim vl_contrasena_encriptada As String = ""
124
Try Cursor.Current = Cursors.WaitCursor vl_contrasena = GeneraCodigo() vl_contrasena_encriptada = CryptoHelper.Encrypt(vl_contrasena) Cursor.Current = Cursors.Default MessageBox.Show(String.Format("Se ha generado la contraseña [{0}]. Ésta es la única oportunidad que tiene para memorizarla, a continuación será encriptada.", vl_contrasena), "INFORMACIÓN", MessageBoxButtons.OK, MessageBoxIcon.Information) Catch ex As Exception Cursor.Current = Cursors.Default MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try Return vl_contrasena_encriptada End Function #End Region #Region "1.3. BOTONES (USUARIOS DEL SISTEMA)" Private Sub Agregar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Agregar_Usuarios_SistemaButton.Click Usuarios_SistemaBindingSource.AddNew() 'Establecer valores/propiedades por defecto: ValidarAgregarModificar_Usuarios_Sistema() DesbloquearElementos_Usuarios_Sistema() vl_Accion_Usuarios_Sistema = "I" 'Establecer el foco de entrada: US_IDTextBox.Focus() End Sub Private Sub Eliminar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Eliminar_Usuarios_SistemaButton.Click Eliminar_Usuarios_Sistema() 'Obtener datos de los registros principales: Usuarios_Sistema() 'Establecer valores por defecto:
125
Usuarios_SistemaBindingSource.MoveFirst() End Sub Private Sub Modificar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Modificar_Usuarios_SistemaButton.Click 'Establecer valores por defecto: ValidarAgregarModificar_Usuarios_Sistema() DesbloquearElementos_Usuarios_Sistema() vl_Accion_Usuarios_Sistema = "M" End Sub Private Sub Guardar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Guardar_Usuarios_SistemaButton.Click Dim vl_CamposObligatoriosVacios As Boolean 'Variable local que almacena TRUE si uno o m谩s de los campos obligatorios no contiene informaci贸n, caso contrario almacena FALSE 'Verificar el ingreso de todos los datos obligatorios: vl_CamposObligatoriosVacios = ValidarDatosObligatorios_Usuarios_Sistema() If vl_CamposObligatoriosVacios Then Exit Sub End If 'Insertar o modificar: Usuarios_SistemaBindingSource.EndEdit() If vl_Accion_Usuarios_Sistema = "I" Then Insertar_Usuarios_Sistema() ElseIf vl_Accion_Usuarios_Sistema = "M" Then Modificar_Usuarios_Sistema() End If 'Obtener datos de los registros principales: Usuarios_Sistema() 'Establecer valores por defecto: BloquearElementos_Usuarios_Sistema() ValidarGuardarCancelar_Usuarios_Sistema() vl_Accion_Usuarios_Sistema = "" End Sub Private Sub Cancelar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancelar_Usuarios_SistemaButton.Click
126
'Obtener datos de los registros principales: BloquearElementos_Usuarios_Sistema() Usuarios_Sistema() 'Establecer valores por defecto: Usuarios_SistemaBindingSource.MoveFirst() ReiniciarValidacionDatosObligatorios_Usuarios_Sistema() ValidarGuardarCancelar_Usuarios_Sistema() vl_Accion_Usuarios_Sistema = "" End Sub Private Sub Refrescar_Usuarios_SistemaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Refrescar_Usuarios_SistemaButton.Click 'Obtener datos de los registros principales: Usuarios_Sistema() 'Establecer valores por defecto: Usuarios_SistemaBindingSource.MoveFirst() vl_Accion_Usuarios_Sistema = "" End Sub Private Sub GenerarContrasenaButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GenerarContrasenaButton.Click If MessageBox.Show(String.Format("Se procederá a generar una nueva contraseña para el usuario [{0}]. ¿Desea continuar?", US_IDTextBox.Text), "CONFIRMACIÓN", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then US_ContraseñaTextBox.Enabled = True US_ContraseñaTextBox.Focus() US_ContraseñaTextBox.Text = GenerarContrasena_Usuarios_Sistema() US_ContraseñaTextBox.Enabled = False End If End Sub #End Region #Region "1.4. EVENTOS (USUARIOS DEL SISTEMA)" Private Sub US_Perfil_IDComboBox_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles US_Perfil_IDComboBox.GotFocus ObtenerLista_Perfiles("Habilitado") End Sub #End Region
127
#Region "1.5. FUNCIONALES VARIOS (USUARIOS DEL SISTEMA)" Private Sub BloquearNavegacion_Usuarios_Sistema() 'Bloquear botones: Agregar_Usuarios_SistemaButton.Enabled = False Eliminar_Usuarios_SistemaButton.Enabled = False Modificar_Usuarios_SistemaButton.Enabled = False Refrescar_Usuarios_SistemaButton.Enabled = False Guardar_Usuarios_SistemaButton.Enabled = False Cancelar_Usuarios_SistemaButton.Enabled = False 'Bloquear datagridview: Usuarios_SistemaDataGridView.Enabled = False End Sub Private Sub DesbloquearNavegacion_Usuarios_Sistema() If Usuarios_SistemaBindingSource.Count = 0 Then Agregar_Usuarios_SistemaButton.Enabled = True Eliminar_Usuarios_SistemaButton.Enabled = False Modificar_Usuarios_SistemaButton.Enabled = False Refrescar_Usuarios_SistemaButton.Enabled = True Guardar_Usuarios_SistemaButton.Enabled = False Cancelar_Usuarios_SistemaButton.Enabled = False 'Validar datagridview: Usuarios_SistemaDataGridView.Enabled = True Else Agregar_Usuarios_SistemaButton.Enabled = True Eliminar_Usuarios_SistemaButton.Enabled = True Modificar_Usuarios_SistemaButton.Enabled = True Refrescar_Usuarios_SistemaButton.Enabled = True Guardar_Usuarios_SistemaButton.Enabled = False Cancelar_Usuarios_SistemaButton.Enabled = False 'Validar datagridview: Usuarios_SistemaDataGridView.Enabled = True End If End Sub Private Sub ValidarAgregarModificar_Usuarios_Sistema() 'Validar botones: Agregar_Usuarios_SistemaButton.Enabled = False Eliminar_Usuarios_SistemaButton.Enabled = False Modificar_Usuarios_SistemaButton.Enabled = False Refrescar_Usuarios_SistemaButton.Enabled = False Guardar_Usuarios_SistemaButton.Enabled = True
128
Cancelar_Usuarios_SistemaButton.Enabled = True 'Validar datagridview: Usuarios_SistemaDataGridView.Enabled = False End Sub Private Sub ValidarGuardarCancelar_Usuarios_Sistema() 'Validar botones: Agregar_Usuarios_SistemaButton.Enabled = True If Usuarios_SistemaBindingSource.Count = 0 Then Eliminar_Usuarios_SistemaButton.Enabled = False Modificar_Usuarios_SistemaButton.Enabled = False Else Eliminar_Usuarios_SistemaButton.Enabled = True Modificar_Usuarios_SistemaButton.Enabled = True End If Refrescar_Usuarios_SistemaButton.Enabled = True Guardar_Usuarios_SistemaButton.Enabled = False Cancelar_Usuarios_SistemaButton.Enabled = False 'Validar datagridview: Usuarios_SistemaDataGridView.Enabled = True End Sub Private Sub BloquearElementos_Usuarios_Sistema() US_IDTextBox.Enabled = False US_NombreTextBox.Enabled = False US_DepartamentoTextBox.Enabled = False US_CargoTextBox.Enabled = False US_Perfil_IDComboBox.Enabled = False GenerarContrasenaButton.Enabled = False US_EstadoCheckBox.Enabled = False End Sub Private Sub DesbloquearElementos_Usuarios_Sistema() US_IDTextBox.Enabled = True US_NombreTextBox.Enabled = True US_DepartamentoTextBox.Enabled = True US_CargoTextBox.Enabled = True US_Perfil_IDComboBox.Enabled = True GenerarContrasenaButton.Enabled = True US_EstadoCheckBox.Enabled = True End Sub Private Function ValidarDatosObligatorios_Usuarios_Sistema()
129
Dim vl_CamposVacios As Boolean = False If String.IsNullOrEmpty(US_IDTextBox.Text) Then ErrorProvider.SetError(US_IDTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_IDTextBox, String.Empty) End If If String.IsNullOrEmpty(US_NombreTextBox.Text) Then ErrorProvider.SetError(US_NombreTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_NombreTextBox, String.Empty) End If If String.IsNullOrEmpty(US_DepartamentoTextBox.Text) Then ErrorProvider.SetError(US_DepartamentoTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_DepartamentoTextBox, String.Empty) End If If String.IsNullOrEmpty(US_CargoTextBox.Text) Then ErrorProvider.SetError(US_CargoTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_CargoTextBox, String.Empty) End If If String.IsNullOrEmpty(US_Perfil_IDTextBox.Text) Then ErrorProvider.SetError(US_Perfil_IDTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_Perfil_IDTextBox, String.Empty) End If If String.IsNullOrEmpty(US_Perfil_IDComboBox.SelectedValue) Then ErrorProvider.SetError(US_Perfil_IDComboBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_Perfil_IDComboBox, String.Empty) End If If String.IsNullOrEmpty(US_Contrase単aTextBox.Text) Then
130
ErrorProvider.SetError(US_ContraseñaTextBox, "DATO OBLIGATORIO") vl_CamposVacios = True Else ErrorProvider.SetError(US_ContraseñaTextBox, String.Empty) End If Return vl_CamposVacios End Function Private Sub ReiniciarValidacionDatosObligatorios_Usuarios_Sistema() ErrorProvider.SetError(US_IDTextBox, String.Empty) ErrorProvider.SetError(US_NombreTextBox, String.Empty) ErrorProvider.SetError(US_DepartamentoTextBox, String.Empty) ErrorProvider.SetError(US_CargoTextBox, String.Empty) ErrorProvider.SetError(US_Perfil_IDTextBox, String.Empty) ErrorProvider.SetError(US_Perfil_IDComboBox, String.Empty) ErrorProvider.SetError(US_ContraseñaTextBox, String.Empty) End Sub #End Region #End Region End Class
Archivo de conexión del Módulo de Reservación, que incluye la información para envío de contraseñas restablecidas al correo electrónico de los usuarios de laboratorios: <?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary. Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> </configSections> <dataConfiguration defaultDatabase="principal" /> <connectionStrings> <add name="principal" connectionString="Data Source=PRUEBA;User ID=SISLAB;Password=sl;Unicode=True"
131
providerName="System.Data.OracleClient" /> </connectionStrings> <system.net> <mailSettings> <smtp from="sislab.pucesd@gmail.com"> <network host="smtp.gmail.com" port="587" userName="sislab.pucesd" password="mi_contraseña" /> </smtp> </mailSettings> </system.net> </configuration>
Clase para envío de contraseñas restablecidas al correo electrónico de los usuarios de laboratorios: Imports System.Net.Mail Public Class Mail Public Shared Sub Enviar(ByVal destinatario As String, ByVal dest_mail As String, ByVal mensaje As String) Dim mail As MailMessage = New MailMessage() With mail .From = New MailAddress("sislab.pucesd@gmail.com") .To.Add(New MailAddress(dest_mail, destinatario)) .Subject = "Envio de contraseña." .Body = "<HTML><BODY>" & "Su contraseña para el uso del kiosko de reservación de computadoras de la PUCE-SD es:" & mensaje & "</BODY></HTML>" .IsBodyHtml = True .Priority = MailPriority.Normal End With Dim smtp As New SmtpClient() smtp.EnableSsl = True smtp.Send(mail) End Sub End Class
3.5
PRUEBAS UNITARIAS Y DE INTEGRACIÓN
Las pruebas unitarias se realizaron en base a las historias de usuario, cada tarea fue verificada durante y después del desarrollo:
132
Tabla 23: Tabla de pruebas unitarias del sistema informático SISLAB HISTORIA DE USUARIO
DISEÑO DE LA BASE DE DATOS
CONFIGURACIÓN DEL SERVIDOR FREERADIUS
INICIO DE SESIÓN PARA ADMINISTRACIÓN
ADMINISTRACIÓN DE USUARIOS DEL SISTEMA
CAMBIAR CONTRASEÑA DE USUARIOS DEL SISTEMA
TAREAS
VERIFICADO
Analizar el documento de requisitos del sistema informático.
SI
Crear el Modelo Entidad-Relación.
SI
Crear los scripts para la creación de la base de datos.
SI
Crear las estructuras de base de datos.
SI
Instalar el servidor FreeRADIUS.
SI
Configurar el servidor FreeRADIUS.
SI
Crear las estructuras de base de datos para uso del servidor FreeRADIUS.
SI
Crear formulario de inicio de sesión.
SI
Crear campos para usuario y contraseña.
SI
Crear botones ingresar y limpiar.
SI
Crear función de base de datos de autenticación del usuario y su contraseña.
SI
Crear formulario de usuarios del sistema.
SI
Crear campos para código, nombre, departamento en que labora, cargo que desempeña, perfil de usuario, contraseña y estado (habilitado/deshabilitado).
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de usuarios del sistema.
SI
Crear procedimiento de aplicación para generar una contraseña encriptada de cuatro dígitos.
SI
Crear formulario de cambio de contraseña para usuarios del sistema.
SI
Crear campos para nueva contraseña y verificar contraseña.
SI
Crear botones guardar y cancelar.
SI
Crear procedimiento de aplicación para encriptar la contraseña de usuarios del sistema.
SI
133
HISTORIA DE USUARIO
ADMINISTRACIÓN DE MÓDULOS Y OPCIONES
ADMINISTRACIÓN DE PERFILES DEL USUARIO Y MÓDULOS/OPCIONES
AUTORIZACIÓN DE MÓDULOS Y OPCIONES SEGÚN EL PERFIL
ADMINISTRACIÓN DE LABORATORIOS Y
TAREAS
VERIFICADO
Crear procedimiento de base de datos de modificación de contraseña de usuarios del sistema.
SI
Crear formulario de módulos y opciones del sistema.
SI
Crear campos para código, nombre, tipo (módulo/opción), nombre del formulario, orden de presentación, módulo padre (solo para uso de las opciones).
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de módulos y opciones del sistema.
SI
Crear formulario maestro detalle de perfiles de usuario y módulos/opciones por perfil.
SI
Crear en el bloque maestro campos para código, nombre, descripción y estado (habilitado/deshabilitado) de perfiles de usuario
SI
Crear en el bloque detalle un campo para módulo/opción del sistema.
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar, para el bloque maestro y para el bloque detalle.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de perfiles de usuario.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de módulos y opciones por perfil.
SI
Crear función de base de datos que retorne los módulos y opciones asignados al perfil del usuario que ha iniciado sesión.
SI
Generar el menú de la aplicación en tiempo de ejecución según el perfil al que pertenezca el usuario.
SI
Crear formulario laboratorios y
SI
maestro detalle de computadoras por
134
HISTORIA DE USUARIO COMPUTADORAS
ADMINISTRACIÓN DE GRUPOS DE USUARIO DE LABORATORIOS
ADMINISTRACIÓN DE FRANJAS HORARIAS
TAREAS
VERIFICADO
Crear en el bloque maestro campos para código, nombre, descripción, ubicación, número de columnas de computadoras, orden de presentación y estado (habilitado/ deshabilitado).
SI
Crear en el bloque detalle campos para código, MAC, nombre, descripción, orden de presentación y estado (habilitado/ deshabilitado).
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar para el bloque maestro y para el bloque detalle.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de laboratorios de computación.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de computadoras.
SI
Crear formulario de grupos de usuario de laboratorios.
SI
Crear campos de código, descripción, periodo de restablecimiento (diario, semanal, mensual), tiempo mínimo de reservación, tiempo máximo de reservación y estado (habilitado/ deshabilitado).
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar.
SI
Crear procedimientos de base de datos de inserción, modificación y eliminación de grupos de usuario de laboratorios.
SI
Crear formulario de franjas horarias.
SI
Crear campos de código, hora inicio, minutos inicio, hora fin, minutos fin y estado (habilitado / deshabilitado).
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar.
SI
Crear procedimientos de base de datos de inserción, modificación y eliminación de franjas horarias.
SI
laboratorio.
135
HISTORIA DE USUARIO
ADMINISTRACIÓN DE HORARIOS DE ATENCIÓN DE LABORATORIOS
RESERVACIÓN DE COMPUTADORAS PARA CLASES
BLOQUEO DE COMPUTADORAS POR EL ADMINISTRADOR
TAREAS
VERIFICADO
Crear formulario de horarios de atención de los laboratorios de computación.
SI
Crear campos de código, laboratorios de computación, día de la semana y franja horaria.
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar.
SI
Crear procedimientos de base de datos de inserción, modificación y eliminación de horarios de atención de laboratorios de computación.
SI
Crear formulario maestro detalle de encabezados de reservaciones de laboratorios, y detalle de computadoras reservadas.
SI
Crear en el bloque maestro campos para ciclo académico, escuela, carrera, nivel, paralelo, materia y laboratorio de computación.
SI
Crear en el bloque detalle campos para código, equipo de computación, nombre de usuario, contraseña, fecha y hora inicio de la reservación, fecha y hora fin de la reservación.
SI
Crear botones agregar, modificar, guardar, eliminar, cancelar y refrescar para los encabezados de las reservaciones de laboratorios y para los detalles de computadoras reservadas.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de encabezados de reservaciones de laboratorios.
SI
Crear procedimientos de base de datos de selección, inserción, modificación y eliminación de computadoras reservadas en función a los horarios de clase del Sistema Académico.
SI
Crear formulario de vista de reservaciones de los laboratorios de computación.
SI
Visualizar las reservaciones en curso de forma gráfica.
SI
Crear un botón para modificación de
SI
136
HISTORIA DE USUARIO
TAREAS
VERIFICADO
Crear campo de minutos en que finalizará la reservación.
SI
Crear procedimiento de base de datos de modificación de reservaciones.
SI
Crear formulario de inicio de sesión para reservación de computadoras.
SI
Crear campos para usuario y contraseña.
SI
Crear botones ingresar y limpiar.
SI
Crear función de base de datos de autenticación del usuario y su contraseña.
SI
Llamar al formulario de cambio de contraseña si es la primera vez que el usuario inicia sesión.
SI
Crear formulario para reservación de computadoras para uso personal.
SI
Visualizar en tiempo de ejecución los laboratorios de computación y sus respectivas computadoras, y refrescar cada minuto.
SI
Seleccionar datos de los laboratorios de computación.
SI
Asignar una imagen a cada equipo de computación para diferenciar si se encuentra ocupado, deshabilitado o disponible.
SI
Crear procedimientos de base de datos para reservar y cancelar reservaciones de computadoras.
SI
Bloquear la reservación de computadoras si el usuario ya tiene una reservación previa en curso, si el laboratorio no tiene horario de atención disponible, o si existe una reservación de computadoras para clases que iniciará en poco tiempo.
SI
Crear formulario de cambio de contraseña.
SI
Crear campos para contraseña de cuatro dígitos numéricos, confirmación de contraseña.
SI
Crear botones aceptar y cancelar.
SI
reservaciones.
INICIO DE SESIÓN PARA RESERVACIÓN
RESERVACIÓN DE COMPUTADORAS PARA USO PERSONAL
CAMBIO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS
137
HISTORIA DE USUARIO
OLVIDO DE CONTRASEÑA PARA USUARIOS DE LABORATORIOS
DESBLOQUEO DE COMPUTADORAS POR USUARIO DE LABORATORIOS
BLOQUEO DE COMPUTADORAS
DESBLOQUEO DE COMPUTADORAS POR ADMINISTRADORES
CAMBIAR CONTRASEÑA DE ADMINISTRADORES Elaborado por: Los autores
TAREAS
VERIFICADO
Crear procedimiento de base de datos para modificación de contraseña.
SI
Crear opción de generación de nueva contraseña, en el formulario de inicio de sesión para reservación de computadoras.
SI
Crear procedimiento de base de datos para generación de una nueva contraseña aleatoria de cuatro dígitos numéricos.
SI
Crear procedimiento de aplicación para envío de una nueva contraseña al correo electrónico del usuario de laboratorios.
SI
Crear formulario computadoras.
SI
de
desbloqueo
de
Crear campos para usuario, código de desbloqueo.
SI
Crear formulario computadoras.
SI
de
bloqueo
de
Crear opción para finalizar la reservación.
SI
Crear procedimiento de aplicación para bloquear computadoras.
SI
Crear procedimiento de base de datos para finalizar la reservación.
SI
Crear formulario de desbloqueo computadoras por administradores.
SI
de
Crear el campo para contraseña de administrador.
SI
Crear botones de aceptar y cancelar.
SI
Guardar localmente una contraseña de administrador encriptada.
SI
Crear procedimiento de aplicación para autenticar la contraseña de administrador.
SI
Crear procedimiento de aplicación para desbloquear el equipo por tiempo indefinido.
SI
Crear botón de cambio de contraseña.
SI
Crear procedimiento de aplicación para cambiar la contraseña de administrador.
SI
138
Las pruebas de integración se realizaron en base a las iteraciones, cada iteración fue verificada por los desarrolladores, y por el CITIC (ver Anexo 5): Tabla 24: Tabla de pruebas de integración del sistema informático SISLAB ITERACIÓN
PRIMERA ITERACIÓN
HISTORIA DE USUARIO
Diseño de la base de datos.
SI
Configuración del servidor FreeRADIUS.
SI
Inicio de sesión para administración.
SI
Administración de usuarios del sistema.
SI
Cambiar contraseña de usuarios del sistema.
SI
Administración de módulos y opciones.
SI
Administración de módulos/opciones.
SEGUNDA ITERACIÓN
TERCERA ITERACIÓN
VERIFICADO
perfiles
de
usuario
y
SI
Autorización de módulos y opciones según el perfil.
SI
Administración de laboratorios y computadoras.
SI
Administración laboratorios.
SI
de
grupos
de
usuario
de
Administración de franjas horarias.
SI
Administración de horarios de atención de laboratorios.
SI
Reservación de computadoras para clases.
SI
Bloqueo de computadoras por el administrador.
SI
Inicio de sesión para reservación.
SI
Reservación de computadoras para uso personal.
SI
Cambio de laboratorios.
SI
contraseña
de
usuarios
de
Olvido de contraseña de usuarios de laboratorios.
SI
Desbloqueo de computadoras por usuarios de laboratorios.
SI
Bloqueo de computadoras por usuarios de laboratorios.
SI
Desbloqueo de administradores.
SI
computadoras
Cambiar contraseña de administradores. Elaborado por: Los autores
por
SI
139
3.6
ACONDICIONAMIENTO DEL KIOSCO INFORMÁTICO Los autores del presente proyecto de disertación, donan a la PUCE SD, el kiosco informático en el que se instalará el módulo de reservación. Las siguientes actividades se realizaron con la finalidad de acondicionar el kiosco informático:
3.6.1 Adquisición de componentes Los componentes del kiosco informático se adquirieron tomando en cuenta los requerimientos de hardware y software detallados en el manual de instalación y configuración (ver Anexo 7). Tabla 25: Componentes del kiosco informático Nº
COMPONENTES
DESCRIPCIÓN Tarjeta madre Intel DG31PR Procesador Intel Dual Core E5400 2,7 GHz
1
Computadora cliente Memoria RAM DIMMs 2Gb PC-800 DDR2 Disco Duro Samsung 160 Gb Sata 7200 rpm
2
Monitor
Monitor Samsung 17” B1730NW LCD
3
Teclado
Teclado numérico Genius Numpad USB
4
Mouse
Mouse Genius USB
5
Lector de código de barras Scanner Metrol Voyager MK-9540 USB
6
Mueble
Elaborado por: Los autores
Mueble de madera color negro
140
Figura 41: Componentes del kiosco informรกtico
1
2
Monitor del kiosco informรกtico Computadora cliente (CPU)
5
3
4
Lector de cรณdigo de barras Teclado
Fuente: Tecnomega
Mouse
141
Figura 42: Mueble de kiosco informรกtico implementado
6
Elaborado por: Los autores
142
3.6.2 Diseño del mueble Se diseñó el mueble en base a las medidas de los diferentes componentes del kiosco informático: computadora cliente, monitor, teclado, mouse, y lector de código de barras, de esta manera se aseguró que todos los componentes puedan ser ubicados en su respectivo lugar. Luego se procedió enviar el diseño para su respectiva construcción. Figura 43: Diseño del mueble del kiosco informático
Elaborado por: Los autores
3.7
ENTREGA DEL SISTEMA INFORMÁTICO El presente proyecto de disertación, realizado en el marco de los requerimientos del proceso investigativo final de graduación, contiene el sistema informático SISLAB, el manual de usuario (Ver Anexo 6), el manual de instalación y configuración (Ver Anexo 7), y el diccionario de datos (Ver Anexo 8); por lo que la entrega del sistema informático se encuentra inmersa en la entrega del proyecto de disertación.
143
Para realizar la entrega formal del presente proyecto de disertación, se realizaron los siguientes pasos: 1. El Director de la Disertación, Ms. Rodolfo Córdova emitió el documento de aprobación del proyecto de disertación. 2. Se envió el proyecto de disertación junto con el documento de aprobación a la Escuela de Ingeniería de Sistemas y Computación. 3. La Escuela de Ingeniería de Sistemas y Computación envió el proyecto de disertación al CITIC, para la respectiva revisión y control de calidad del sistema informático SISLAB. 4. El CITIC realizó las pruebas de integración del sistema informático SISLAB. 5. Se procedió a capacitar al personal del Área de Programación y Área de Redes del CITIC sobre el sistema informático SISLAB. 6. El CITIC emitió un documento (Ver Anexo 5), comunicando la exitosa culminación de la revisión y control de calidad del sistema informático SISLAB a la Escuela de Ingeniería de Sistemas y Computación, con lo cual el proceso de entrega del sistema informático finalizó.
IV IV. 4.1
CONCLUSIONES Y RECOMENDACIONES
CONCLUSIONES La PUCE SD será pionera en contar con un sistema de administración y control de uso de laboratorios de computación en la provincia; así como también en la implementación de tecnología informática para servicios de calidad.
El sistema informático SISLAB ha sido desarrollado a medida, tomando en cuenta las necesidades específicas planteadas por la PUCE SD.
La implementación de este proyecto permitirá administrar y controlar los laboratorios de computación a través del sistema informático SISLAB; logrando automatizar las actividades que anteriormente el personal encargado realizaba manualmente, y agregando nuevas y mejores funcionalidades.
El uso del sistema informático SISLAB ampliará la cultura tecnológica de los estudiantes, docentes, empleados y usuarios externos de los laboratorios de computación de la PUCE SD.
El sistema informático SISLAB cuenta con una interfaz de fácil uso, con la que se podrá realizar una administración eficiente y óptima de los laboratorios de computación de la PUCE SD.
El Módulo de Bloqueo controlará permanentemente el uso de las computadoras de los laboratorios, permitiendo únicamente a usuarios autorizados hacer uso de estas.
El servidor FreeRadius permitirá tener un control de acceso de usuarios hacia las diferentes computadoras de los laboratorios que posee la PUCE SD de manera centralizada y segura.
El sistema informático SISLAB fue documentado en manuales prácticos y de fácil interpretación, para permitir que cualquier persona con conocimientos básicos de computación pueda instalarlo y usarlo.
El servidor FreeRadius permitirá tener un control de acceso de usuarios hacia los diferentes
laboratorios
de
computación
PUCESD de manera centralizada y segura.
que
posee
la
4.2
RECOMENDACIONES Seleccionar al personal encargado de dar soporte y mantenimiento al sistema informático SISLAB, tomando en consideración sus conocimientos y experiencia en la utilización de las siguientes herramientas: Visual Basic .NET, base de datos Oracle, y sistemas operativos Windows y Linux.
Capacitar al personal asignado para administrar el sistema informático SISLAB, en cada uno de los módulos que lo componen: Módulo de Administración, Módulo de Reservación y Módulo de Bloqueo.
Socializar el uso del Módulo de Reservación del sistema informático SISLAB a los usuarios de laboratorios.
Ubicar el kiosco informático para reservación de computadoras, en un lugar estratégico que permita un fácil acceso, y sea equidistante a todos los laboratorios de computación.
Rotular las computadoras de los laboratorios de computación de acuerdo al nombre que le fue otorgado en el módulo de administración del sistema informático SISLAB.
El uso del servidor FreeRADIUS del sistema informático SISLAB puede ampliarse en lo posterior para futuras investigaciones.
146
BIBLIOGRAFÍA LIBROS ALBIN, STEPHEN. “The art of software architecture”. Estados Unidos de América, Wiley Publishing Inc., 2003. ANGENENDT, RALPH. MEMBREY, PETER. VERHOEVEN, TIM. “The definitive guide to CentOS”. Estados Unidos de América, Apress, 2009. BORONCZYK, TIMOTHY. NEGUS, CHRISTOPHER. “CentOS bible”. Estados Unidos de América, Wiley Publishing Inc., 2009 BUXTON,
STEPHEN.
FRYMAN,
LOWELL.
GUTING,
RALF.
HALPIN,
TERRY.
HARRINGTON, JAN. INMON, WILLIAM. LIGHTSTONE, SAM. MELTON, JIM. MORGAN, TONY. NADEAU, THOMAS. O’NEIL, BONNIE. O’NEIL, ELIZABETH. O’NEIL, PATRICK. SCHNEIDER, MARKUS. SIMSION, GRAEME. TEOREY, TOBY. WITT, GRAHAM. “Database design”. Estados Unidos de América, Elsevier Inc., 2009. DONAHOO, MICHEL. SPEEGLE, GREGORY. “SQL: Practical guide for developers”. Estado Unidos de América, Elsevier Inc., 2005. EVJEN, BILL. HOLLIS, BILLY. SHARKEY, KENT. SHELDON, BILL. “Professional Visual Basic 2008”. Estados Unidos de América, Wiley Publishing Inc., 2008. GARRETT, ROBERT. JONES, ARIE. KRIEGEL, ALEX. PLEW, RONALD. STEPHENS, RYAN. “SQL functions programmer’s reference”. Estados Unidos de América, Wiley Publishing Inc., 2005. GOODWILL, JAMES. PEARMAN, GREG. “Pro .NET 2.0 Extreme Programming”. Estados Unidos de América, Apress, 2006. HASSELL, JONATHAN. “RADIUS”. Estados Unidos de América, O'Reilly & Associates, Inc., 2003. KRIEGEL, ALEX. TRUKHNOV, BORIS. “SQL bible”. Estados Unidos de América, John Wiley & Sons Ltd., 2003.
147
NAKHJIRI, MADJID. NAKHJIRI, MAHSA. “AAA and network security for mobile access”. Inglaterra, John Wiley & Sons Ltd., 2005. PANKAJ, JALOTE. “A concise introduction to software engineering”. Inglaterra, SpringerVerlag London Ltda., 2008. POSSO YÉPEZ, MIGUEL ÁNGEL, “Metodología para el Trabajo de Grado”, Tercera Edición, 2006. PRICE, JASEON. “Oracle database 10g SQL”. Estados Unidos de América, McGrawHill/Osborne, 2004. SOMMERVILLE, IAN. “Ingeniería del software”. España, Pearson Educación S.A., Séptima Edición, 2005. STEPHENS, ROD. “Beginning database design solutions”. Estados Unidos de América, Wiley Publishing Inc., 2009.
SOPORTE ELECTRÓNICO Eduroam. “What is eduroam?”. http://www.eduroam.org/. 28/06/2010. Feedback
“¿Cómo
Networks.
calcular
la
muestra
correcta?”.
http://www.feedbacknetworks.com/cas/experiencia/sol-preguntar-calcular.htm. 15/11/2010. FreeRADIUS. “FreeRADIUS Wiki”. http://wiki.freeradius.org. 25/06/2010. Free
Software
Foundation.
“La
Definición
de
Software
Libre”.
http://www.gnu.org/philosophy/free-sw.es.html. 28/06/2010. RFC
Editor.
“Overview
of
RFC
Document
Series”.
http://www.rfc-
editor.org/RFCoverview.html. 28/06/2010. Jeffries,
Ronald.
“An
agil
software
development
resource”.
http://xprogramming.com/index.php. 18/08/2010. The FreeRADIUS Server Project. “The FreeRADIUS Project”. www.freeradius.org.
148
25/06/2010. The
Internet
Engineering
Task
Force
(IETF).
“RADIUS
Accounting”.
http://www.ietf.org/rfc/rfc2866.txt. 25/06/2010. The Internet Engineering Task Force (IETF). “Remote Authentication Dial In User Service (RADIUS)”. http://www.ietf.org/rfc/rfc2865.txt. 25/06/2010.
149
GLOSARIO Ciclo académico.- Período de tiempo semestral en que el estudiante recibe clases de las materias en que se ha matriculado. CITIC.- Centro de Investigación de las Tecnologías de la Información y Comunicación, cuyo objetivo central es promover y consolidar una cultura de investigación y desarrollo tecnológico en la PUCE SD, conformado por tres áreas de acción; Soporte Técnico, Redes y Programación. Eduroam.- Contracción de education roaming, es un servicio mundial de movilidad segura desarrollado para la comunidad académica y de investigación. Fortune-500.- Listado anual de la revista Fortune de las 500 mayores empresas estadounidenses. Interfaz gráfica de usuario.- Conocida como GUI (Graphical User Interface), es el medio visual a través del cual el usuario de una computadora se comunica con su software. Laboratorio de computación.- Espacio físico adecuado para albergar un conjunto de computadoras conectadas en red, con la finalidad de ofrecer servicios tecnológicos a sus usuarios. Mbps.- Es una unidad que se usa para cuantificar un caudal de datos equivalente a 1000 Kilobits por segundo. RFC.- Acrónimo de Request for Comments, es el medio de publicación de las especificaciones técnicas y documentos de política producida por la IETF (Internet Engineering Task Force), el IAB (Internet Architecture Board), o el IRTF (Internet Research Task Force). UDP.- Acrónimo de User Datagram Protocol (Protocolo de Datagrama de Usuario), es un protocolo para envío de mensajes a través de la red que no establece una conexión previa, por lo que no garantiza su entrega.
150
ANEXO 1
ENCUESTA La presente encuesta tiene como propósito obtener información sobre los estudiantes, docentes y empleados de la Pontificia Universidad Católica del Ecuador Sede Santo Domingo (PUCE SD), para conocer la factibilidad de desarrollo del tema de disertación “Diseño, desarrollo e implementación de un sistema informático y acondicionamiento de un kiosco, para administrar y controlar el uso de los laboratorios en el campus 2 de la PUCE SD”, y su análisis tendrá fines académicos. Conteste marcando con una cruz la respuesta de su elección.
1. ¿Qué relación posee usted con la PUCE SD?
Estudiante
Docente
Empleado
2. ¿Con qué frecuencia utiliza usted los laboratorios de computación para USO PERSONAL?
Siempre
A menudo
Poco
Nunca
3. ¿Con qué frecuencia utiliza usted los laboratorios de computación para CLASES?
Siempre
A menudo
Poco
Nunca
4. ¿En alguna ocasión, ha sido usted interrumpido durante el uso de una computadora, solicitándole que desaloje el laboratorio?
Si
No
5. En caso de haber contestado NO a la pregunta anterior, pase a la pregunta 6, caso contrario responda: ¿Cuál fue el motivo por el que le solicitaron desalojar el laboratorio?
Por inicio de clases en el laboratorio Por finalización del horario de atención del laboratorio Por mantenimiento del laboratorio Por otro motivo, especifique: __________________________________________
6. ¿Se encuentra usted satisfecho(a) por la disponibilidad de uso de las computadoras en los laboratorios?
Si
No
7. ¿Cómo califica usted la administración y control de uso de los laboratorios de computación por parte del personal encargado?
Excelente
Muy buena
Buena
Regular
Malo
8. ¿Estaría usted de acuerdo con la implementación de un sistema informático para controlar y administrar el uso de los laboratorios de computación?
Si
No
9. ¿Estaría usted dispuesto(a) a realizar la reservación de las computadoras de los laboratorios para USO PERSONAL, desde un kiosco informático?
Si
No
10. ¿Considera usted conveniente regular el tiempo máximo de uso de las computadoras de los laboratorios para USO PERSONAL?
Si
No
11. ¿Considera usted conveniente que el personal encargado, administre y controle las reservaciones de los laboratorios para CLASES desde un sistema informático?
Si
No
MUCHAS GRACIAS POR SU TIEMPO Y COLABORACIÓN.
153
ANEXO 2
1 de 8
DOCUMENTO DE REQUISITOS DEL SISTEMA INFORMÁTICO
LUGAR Y FECHA Santo Domingo, 20 de enero de 2010. PROYECTO Diseño, desarrollo e implementación de un sistema informático y acondicionamiento de un kiosco, para administrar y controlar el uso de los laboratorios en el campus 2 de la PUCE SD. INTRODUCCIÓN El presente proyecto propone controlar y administrar el uso compartido de los laboratorios de computación de la Pontificia Universidad Católica del Ecuador Sede Santo Domingo, mediante un sistema informático desarrollado a medida, de esta manera automatizar y optimizar los procesos utilizados por la universidad actualmente, con la finalidad de brindar un mejor servicio a los usuarios. ALCANCE El sistema informático se implementará en el campus 2 de la Pontificia Universidad Católica del Ecuador Sede Santo Domingo, para los laboratorios; General, Hardware y Software. GLOSARIO CITIC.- Centro de Investigación de Tecnologías de la Información y Comunicación, cuyo objetivo central es promover y consolidar una cultura de investigación y desarrollo tecnológico en la PUCE SD, conformado por tres áreas de acción; Soporte Técnico, Redes y Programación. Kiosco informático.- Es un mueble que alberga una computadora, ubicado generalmente en sitios públicos, cuya finalidad es brindar algún tipo de servicio a través de un sistema informático. PUCE SD.- Pontificia Universidad Católica del Ecuador Sede Santo Domingo.
2 de 8
Servidor RADIUS.- Servidor basado en el modelo AAA (Authentication, Authorization and Accounting), permite el control de acceso a usuarios que desean utilizar un servicio informático. Usuarios externos.- Personas que no pertenecen a la universidad y se encuentran autorizados para el uso de las instalaciones y servicios que ésta ofrece. ACTORES Director del CITIC.- Es el responsable del área tecnológica de la PUCE SD, quien aprobará el documento de requisitos del sistema informático. Área de Redes.- Es el área encargada de administrar los laboratorios y describir los requisitos del sistema informático. Área de Programación.- Es el área encargada de realizar el control de calidad del sistema informático una vez finalizado. Usuarios de laboratorios.- Estudiantes, docentes, trabajadores y usuarios externos, que hacen uso de los laboratorios de computación de la PUCE SD. Usuarios del sistema informático.- Personal encargado de administrar el sistema informático. Desarrolladores.- Son los autores del proyecto. REQUISITOS FUNCIONALES Caso de uso 1 Descripción Los usuarios del sistema informático podrán acceder únicamente a los módulos y opciones del sistema que les sean asignados. Requisito
Formulario de inicio de sesión del módulo de administración.
Formulario principal del módulo de administración
3 de 8
Prerrequisitos
Formulario de administración de usuarios del sistema informático.
Formulario de administración de módulos y opciones del sistema informático.
Formulario de administración de perfiles de usuarios del sistema informático.
Caso de uso 2 Descripción Los usuarios del sistema informático podrán administrar la información referente a los laboratorios y sus computadoras. Requisito
Formulario de administración de laboratorios de computación.
Formulario de administración de computadoras por laboratorio.
Caso de uso 3 Descripción Los usuarios del sistema informático podrán consultar la información referente a los laboratorios y sus computadoras. Requisito
Reporte de laboratorios y computadoras.
Prerrequisito
Información almacenada de los laboratorios y sus computadoras.
Caso de uso 4 Descripción Los usuarios del sistema informático podrán parametrizar los horarios de atención de los laboratorios de computación.
4 de 8
Requisito
Formulario de parametrización de horarios de atención por laboratorio de computación.
Prerrequisito
Formulario de administración de franjas horarias.
Caso de uso 5 Descripción Los usuarios del sistema informático, podrán parametrizar el tiempo mínimo y máximo de reservación para uso de las computadoras, dependiendo del grupo al que pertenezca el usuario de los laboratorios (estudiantes, docentes, empleados o usuarios externos). El tiempo máximo de reservación deberá definirse por un período, luego del cual se restablecerá, y el usuario de laboratorios podrá realizar reservaciones nuevamente. Requisito
Formulario de administración de grupos de usuario de laboratorios de computación.
Prerrequisitos
Acceso a la base de datos de los sistemas de la PUCE SD.
Información sobre los usuarios de laboratorios (estudiantes, docentes, empleados y usuario externos), asignado el grupo al que pertenece cada uno.
Caso de uso 6 Descripción Los usuarios de laboratorios, deben acceder al servicio de reservación de computadoras, a través de un módulo del sistema, ubicado en un kiosco informático. Requisitos
Kiosco informático para reservación de computadoras.
5 de 8
Formulario de inicio de sesión, que permita la autenticación de los usuarios de laboratorios por medio de un código de barras y una contraseña.
Formulario de reservación de computadoras.
Prerrequisitos
Registrar a los usuarios en uno de los sistemas informáticos de la PUCE SD, ya sea en el Sistema Académico en caso de ser estudiantes, en el Sistema de Nómina en el caso de ser empleados y docentes, o en el Sistema Contable en caso de ser usuarios externos.
Adquisición del kiosco informático, y la computadora en que se instalará el módulo de reservación de computadoras.
Caso de uso 7 Descripción Los usuarios de laboratorios, podrán restablecer sus contraseñas en caso de necesitarlo. Requisito
Formulario de restablecimiento de contraseñas.
Caso de uso 8 Descripción Las computadoras de los laboratorios deben permanecer bloqueadas, y únicamente los usuarios de laboratorios que hayan realizado previamente una reservación, desde el kiosco informático podrán acceder a ellas. Requisitos
Servidor RADIUS.
Formulario de desbloqueo de computadoras.
Prerrequisitos
Instalación y configuración del servidor RADIUS.
6 de 8
Reservación de las computadoras por parte de los usuarios de laboratorios, desde el kiosco informático.
Caso de uso 9 Descripción Las computadoras de los laboratorios se bloquearán nuevamente una vez finalizado el tiempo de reservación de cada usuario de laboratorios. Requisitos
Función de bloqueo de computadoras una vez finalizado el tiempo.
Prerrequisito
Formulario de bloqueo/desbloqueo de computadoras.
Reservación de las computadoras por parte de los usuarios de laboratorios, desde el kiosco informático.
Asignación del tiempo durante el cual el usuario de laboratorios utilizará la computadora reservada.
Caso de uso 10 Descripción Cinco minutos antes de finalizar el tiempo de reservación de computadoras, se avisará a los usuarios de laboratorios, para que procedan a guardar sus archivos y desocupar las computadoras. Requisito
Función de aviso de tiempo restante a usuarios de laboratorios.
Prerrequisito
Formulario de bloqueo/desbloqueo de computadoras.
Reservación de las computadoras por parte de los usuarios de laboratorios, desde el kiosco informático.
7 de 8
Caso de uso 11 Descripción Los usuarios del sistema informático podrán realizar reservaciones de los laboratorios para clases. Requisito
Formulario de reservación de laboratorios de computación para clases.
Prerrequisitos
Otorgar permisos para consultar información del Sistema Académico de la PUCE SD, sobre: ciclos académicos, escuelas, carreras, niveles, paralelos, materias y horarios de clase.
Caso de uso 12 Descripción Los usuarios del sistema informático podrán consultar los historiales de reservación de computadoras. Requisito
Reporte de historial de reservaciones de computadoras para uso personal.
Reporte de historial de reservaciones de computadoras para clases.
Prerrequisito
Información almacenada sobre reservaciones de computadoras, realizadas para uso personal, y clases.
Caso de uso 13 Descripción Los usuarios del sistema informático podrán bloquear las computadoras de los laboratorios en caso de ser necesario.
8 de 8
Requisito
Formulario de bloqueo de computadoras de los laboratorios.
Prerrequisito
Reservaciones de computadoras de los laboratorios.
REQUISITOS NO FUNCIONALES
El sistema informático podrá ser utilizado únicamente dentro de la red privada de la PUCE SD.
El lenguaje de programación utilizado para codificar el sistema informático será Visual Basic .NET, mediante la utilización del IDE Microsoft Visual Studio 2008 (ver Anexo 3).
El RDBMS utilizado para almacenar la información del sistema informático será Oracle 10g (ver Anexo 3).
Las plataformas sobre la que se ejecutará el sistema informático serán Windows XP y Windows 7.
163
ANEXO 3
165
ANEXO 4
167
ANEXO 5
169
ANEXO 6
MANUAL DE USUARIO
ii
ÍNDICE DE CONTENIDOS 1
INTRODUCCIÓN ........................................................................................ 6
2
MÓDULO DE ADMINISTRACIÓN ............................................................... 7
2.1
DESCRIPCIÓN GENERAL .......................................................................... 7
2.1.1
Iniciar sesión................................................................................................ 9
2.1.2
Seguridades ...............................................................................................10
2.1.2.1
Usuarios del sistema ..................................................................................11
2.1.2.1.1
Generar contraseña de usuario del sistema ...............................................11
2.1.2.2
Módulos y opciones del sistema .................................................................12
2.1.2.3
Perfiles de usuario ......................................................................................13
2.1.2.4
Cambiar contraseña ...................................................................................14
2.1.3
Estructura ...................................................................................................14
2.1.3.1
Laboratorios y computadoras .....................................................................15
2.1.4
Parámetros generales ................................................................................16
2.1.4.1
Grupos de usuarios de laboratorios ............................................................16
2.1.4.2
Franjas horarias..........................................................................................17
2.1.4.3
Horarios de laboratorios .............................................................................18
2.1.5
Reservaciones ............................................................................................19
2.1.5.1
Reservar laboratorios y computadoras para clases ....................................19
2.1.5.1.1
Actualizar calendario ..................................................................................21
2.1.5.1.2
Reservar laboratorio ...................................................................................21
2.1.5.2
Vista de laboratorios ...................................................................................22
2.1.5.2.1
Modificar el tiempo de reservación de una computadora ............................22
2.1.5.2.2
Modificar el tiempo de reservación de un laboratorio ..................................23
2.1.6
Reportes .....................................................................................................23
2.1.6.1
Historial de reservaciones personales ........................................................23
2.1.6.2
Historial de reservaciones para clases........................................................24
3
MÓDULO DE RESERVACIÓN ...................................................................25
3.1
DESCRIPCIÓN GENERAL .........................................................................25
3.1.1
Iniciar sesión...............................................................................................25
3.1.2
Reservar computadoras .............................................................................26
3.1.3
Cancelar reservación ..................................................................................30
3.1.4
Cambiar contraseña ...................................................................................31
SISLAB – MANUAL DE USUARIO
iii
3.1.5
Contraseña olvidada ...................................................................................32
4
MÓDULO DE BLOQUEO...........................................................................34
4.1
DESCRIPCIÓN GENERAL .........................................................................34
4.1.1
Iniciar sesión...............................................................................................34
4.1.2
Finalizar reservación...................................................................................35
4.1.3
Crear contraseña para el administrador ......................................................36
4.1.4
Iniciar sesión como administrador...............................................................36
4.1.5
Cambiar contraseña del administrador .......................................................37
SISLAB – MANUAL DE USUARIO
iv
LISTA DE FIGURAS Figura 1: Formulario simple ............................................................................................. 7 Figura 2: Formulario compuesto ...................................................................................... 7 Figura 3: Formulario informativo ...................................................................................... 8 Figura 4: Formulario auxiliar ............................................................................................ 8 Figura 5: Ícono de acceso directo en el escritorio de Windows ........................................ 9 Figura 6: Carpeta SISLAB en menú de inicio de Windows ............................................... 9 Figura 7: Formulario de inicio de sesión del Módulo de Administración ..........................10 Figura 8: Pantalla principal del Módulo de Administración ..............................................10 Figura 9: Formulario de usuarios del sistema .................................................................11 Figura 10: Mensaje de generación de contraseña para un usuario del sistema ..............12 Figura 11: Separador de opciones del Módulo de Administración ...................................13 Figura 12: Formulario de módulos y opciones del sistema ..............................................13 Figura 13: Formulario de perfiles de usuario ...................................................................14 Figura 14: Formulario de cambio de contraseña .............................................................14 Figura 15: Formulario de laboratorios y computadoras ...................................................16 Figura 16: Formulario de grupos de usuarios de laboratorios .........................................17 Figura 17: Formulario de franjas horarias .......................................................................18 Figura 18: Formulario de horarios de atención de laboratorios de computación..............19 Figura 19: Formulario de reservación de laboratorio .......................................................21 Figura 20: Formulario de fechas y horas de reservación .................................................21 Figura 21: Formulario de vista de laboratorios ................................................................22 Figura 22: Formulario de modificación de tiempo de reservación de una computadora ..23 Figura 23: Formulario de modificación de tiempo de reservación de un laboratorio ........23 Figura 24: Formulario de generación de historial de reservaciones personales ..............24 Figura 25: Formulario de generación de historial de reservaciones personales ..............24 Figura 26: Formulario de inicio de sesión del Módulo de Reservación ............................25 Figura 27: Mensaje de aviso de creación de una contraseña..........................................26 Figura 28: Formulario para cambio de contraseña ..........................................................26 Figura 29: Error de ingreso de usuario o contraseña ......................................................26 Figura 30: Formulario de reservación de computadoras .................................................27 Figura 31: Panel izquierdo de laboratorios ......................................................................27 Figura 32: Panel derecho de información del laboratorio y consumo ..............................28
SISLAB – MANUAL DE USUARIO
v
Figura 33: Panel central de computadoras......................................................................28 Figura 34: Simbología de imágenes de las computadoras y laboratorios ........................29 Figura 35: Mensaje de confirmación de reservación .......................................................29 Figura 36: Mensaje de solicitud de cancelación de reservación anterior .........................29 Figura 37: Mensaje de información de tiempo y de la computadora reservada ...............30 Figura 38: Mensaje de confirmación de cancelación de la reservación ...........................30 Figura 39: Mensaje de información de cancelación de la reservación .............................31 Figura 40: Formulario de cambio de contraseña .............................................................31 Figura 41: Mensaje de información de cambio de contraseña exitoso ............................31 Figura 42: Formulario de inicio de sesión del Módulo de Reservación ............................32 Figura 43: Mensaje de confirmación de envío de nueva contraseña ...............................32 Figura 44: Mensaje de aviso de envío exitoso de nueva contraseña ..............................33 Figura 45: Formulario principal del Módulo de Bloqueo ..................................................34 Figura 46: Formulario de inicio de sesión del Módulo de Bloqueo...................................35 Figura 47: Ícono de finalizar reservación.........................................................................35 Figura 48: Mensaje de confirmación de finalización de la reservación ............................36 Figura 49: Mensaje de creación de contraseña de administrador ...................................36 Figura 50: Formulario de creación de contraseña de administrador ................................36 Figura 51: Formulario de administración de la computadora ...........................................37 Figura 52: Formulario de cambio de contraseña de Administrador .................................37
SISLAB – MANUAL DE USUARIO
6
1
INTRODUCCIÓN
El presente manual tiene como finalidad describir la correcta forma de uso, interpretación y funcionalidades de los módulos del sistema informático SISLAB: Administración, Reservación y Bloqueo.
SISLAB – MANUAL DE USUARIO
7
2 2.1
MÓDULO DE ADMINISTRACIÓN
DESCRIPCIÓN GENERAL Existen cuatro tipos de formularios con los que el usuario del sistema interactuará, el primero es un formulario simple, el segundo es un formulario compuesto, el tercero es un formulario informativo y el cuarto un formulario auxiliar. En el primer caso tenemos formularios simples (ver Figura 1) con un solo tipo de datos, y una sola barra de menú. Figura 1: Formulario simple
Fuente: Sistema informático SISLAB En el segundo caso tenemos formularios compuestos (ver Figura 2) con datos maestro – detalle, es decir que los datos ubicados en el panel inferior dependen de los datos ubicados en panel superior, en este caso tenemos dos barras de menú, una para cada panel. Figura 2: Formulario compuesto
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
8
En el tercer caso tenemos formularios informativos (ver Figura 3) de tipo visual, que dan una perspectiva general de la información. Figura 3: Formulario informativo
Fuente: Sistema informático SISLAB En el cuarto caso tenemos formularios auxiliares (ver Figura 4) que permiten generar reportes. Figura 4: Formulario auxiliar
Fuente: Sistema informático SISLAB Existen varias acciones que son recurrentes en los diferentes formularios, a continuación se describen de forma general.
Permite agregar un nuevo registro de datos.
Permite modificar los datos del registro seleccionado.
Permite guardar un nuevo registro agregado, o un registro modificado.
SISLAB – MANUAL DE USUARIO
9
Permite eliminar de forma permanente el registro seleccionado.
Permite cancelar los cambios realizados en un registro.
Permite refrescar los datos del formulario, para observar los cambios realizados por otros usuarios del sistema.
2.1.1 Iniciar sesión Se puede ingresar al Módulo de Administración de dos maneras diferentes: 1. A través del ícono de acceso directo que se genera al instalar la aplicación en el escritorio de Windows (ver Figura 5).
Figura 5: Ícono de acceso directo en el escritorio de Windows
Fuente: Sistema informático SISLAB 2. O desde el menú de inicio de Windows, opción “Todos los programas”, carpeta SISLAB (ver Figura 6). Figura 6: Carpeta SISLAB en menú de inicio de Windows
Fuente: Sistema informático SISLAB Una vez que ingrese al módulo, aparecerá la pantalla de inicio de sesión (ver Figura 7), solicitando usuario y contraseña para acceder a las diferentes funcionalidades. El usuario por defecto es ADMIN y su contraseña admin, ambos distinguen entre mayúsculas y minúsculas.
SISLAB – MANUAL DE USUARIO
10
Figura 7: Formulario de inicio de sesión del Módulo de Administración
Fuente: Sistema informático SISLAB Una vez iniciada la sesión, se visualizará la pantalla principal del Módulo de Administración, junto con los módulos y opciones a los que tiene acceso el usuario en la barra del menú principal de la parte superior (ver Figura 8). Figura 8: Pantalla principal del Módulo de Administración
Fuente: Sistema informático SISLAB
2.1.2 Seguridades El módulo de seguridades permite administrar los módulos, opciones, usuarios y perfiles de usuario del Módulo de Administración.
SISLAB – MANUAL DE USUARIO
11
2.1.2.1 Usuarios del sistema Los usuarios del sistema son quienes harán uso de las diferentes funcionalidades del Módulo de Administración. Esta opción permite administrar los usuarios del Módulo de Administración. Los datos requeridos son: ID: Identificador único del usuario del sistema, con el que podrá iniciar sesión. Nombre: Nombre y apellido del usuario del sistema. Departamento: Departamento al que pertenece el usuario del sistema. Cargo: Cargo que desempeña actualmente el usuario del sistema. Perfil: Perfil al que pertenece el usuario del sistema. Agrupa un conjunto de módulos y opciones predefinidas. Contraseña: Contraseña del usuario del sistema, con la que podrá iniciar sesión. Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez del usuario del sistema. Figura 9: Formulario de usuarios del sistema
Fuente: Sistema informático SISLAB
2.1.2.1.1
Generar contraseña de usuario del sistema La contraseña debe ser generada dando clic en el botón Generar ubicado junto a la caja de texto de esta, un código aleatorio de cuatro dígitos será asignado al usuario. Se le notificará en un mensaje su contraseña, cópiela o memorícela ya que será la única ocasión en que pueda hacerlo, una vez aceptado se almacenará de forma encriptada (ver Figura 10).
SISLAB – MANUAL DE USUARIO
12
Figura 10: Mensaje de generación de contraseña para un usuario del sistema
Fuente: Sistema informático SISLAB
2.1.2.2 Módulos y opciones del sistema Cada formulario que pertenece al Módulo de Administración se encuentra asociado a una opción, y a su vez las opciones se agrupan en módulos, lo que permite un fácil acceso y organización del sistema. Esta opción permite administrar los módulos y opciones. Cuando un nuevo formulario sea creado, este deberá ser ingresado como una opción dentro de un módulo. Los datos requeridos para los módulos son (panel superior):
ID: Identificador único del módulo.
Nombre: Nombre del módulo.
Orden: Orden en el que aparecerá ubicado en el menú principal.
Los datos requeridos para las opciones son (panel inferior):
ID: Identificador único de la opción.
Nombre: Nombre de la opción. En caso de tratarse de un separador de opciones el nombre deberá corresponder a un – (guión). Un separador de opciones es una línea horizontal divisoria, que permite organizar las opciones de un módulo (ver Figura 11).
Formulario: Nombre del formulario que se enlaza a la opción. Cuando se trata de separadores de menú, no se ingresa formulario.
SISLAB – MANUAL DE USUARIO
13
Figura 11: Separador de opciones del Módulo de Administración
Fuente: Sistema informático SISLAB Figura 12: Formulario de módulos y opciones del sistema
Fuente: Sistema informático SISLAB
2.1.2.3 Perfiles de usuario Un perfil de usuario agrupa un conjunto de módulos y opciones del sistema, para luego ser asignado a uno o varios usuarios. Los usuarios del sistema únicamente tendrán acceso a los módulos y opciones según el perfil de usuario al que pertenezcan. Esta opción permite administrar los perfiles de usuario. Los datos requeridos para los perfiles de usuario son (panel superior):
ID: Identificador único del perfil de usuario.
Nombre: Nombre del perfil de usuario.
Descripción: Descripción del perfil de usuario.
Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez del perfil de usuario.
SISLAB – MANUAL DE USUARIO
14
Los datos requeridos para los módulos y opciones por perfil de usuario son (panel inferior):
Módulo/Opción: Código y nombre del módulo u opción asignado al perfil de usuario. Cada opción debe ser asignada junto con el módulo que la contiene, caso contrario no se visualizarán en el menú principal. Por ejemplo, si de agrega a un perfil la opción 1.1 que corresponde a Módulos y opciones del sistema, también debe asignarse el módulo 1 que corresponde a Seguridades. Figura 13: Formulario de perfiles de usuario
Fuente: Sistema informático SISLAB
2.1.2.4 Cambiar contraseña Esta opción permite al usuario del sistema cambiar su contraseña de acceso al Módulo de Administración en el momento que lo requiera, para ello deberá ingresar la contraseña nueva, y luego verificarla ingresándola nuevamente. Figura 14: Formulario de cambio de contraseña
Fuente: Sistema informático SISLAB SISLAB – MANUAL DE USUARIO
15
2.1.3 Estructura El módulo estructura permite agrupar y establecer la distribución de la estructura física de los laboratorios y sus respectivas computadoras.
2.1.3.1 Laboratorios y computadoras Esta opción permite definir la estructura de los laboratorios y computadoras, es necesario ingresar toda la información requerida, ya que esta información será publicada a los usuarios de laboratorios a través del Módulo de Reservación. Los datos requeridos para los laboratorios son (panel superior):
ID: Identificador único del laboratorio de computación.
Nombre: Nombre del laboratorio de computación.
Descripción: Descripción del laboratorio de computación.
Ubicación: Nombre del edificio y referencias que ayuden a conocer la ubicación del laboratorio.
Columnas: Número de columnas que tiene el laboratorio para su graficación.
Orden: Orden en el que se mostrarán los laboratorios de computación.
Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez del laboratorio de computación.
Los datos requeridos para las computadoras son (panel inferior):
ID: Identificador único de la computadora.
MAC: Dirección física de la computadora. Tenga en cuenta que la MAC es un dato crucial para la reservación de computadoras, por lo que se recomienda verificar que corresponda al dato real.
Nombre: Nombre de la computadora.
Descripción: Descripción de la computadora.
Orden: Orden en el que se graficarán las computadoras. Permite simular la distribución real de las computadoras dentro de los laboratorios.
Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez de la computadora.
SISLAB – MANUAL DE USUARIO
16
Figura 15: Formulario de laboratorios y computadoras
Fuente: Sistema informático SISLAB
2.1.4 Parámetros generales Este módulo permite administrar información sobre tipos de usuario de laboratorio, y horarios de atención de los laboratorios.
2.1.4.1 Grupos de usuarios de laboratorios La información sobre grupos de usuario de laboratorio se encuentra ligada a la base de datos de la PUCE SD, por lo se recomienda no modificarla a menos que el administrador del sistema lo creyere conveniente luego de analizar a profundidad el rol que cumplen, específicamente se solicita no modificar el ID, la descripción y el estado de cada grupo. Los datos requeridos para los grupos de usuarios de laboratorios son:
ID: Es el identificador único del grupo de usuarios de laboratorios.
Descripción: Nombre del grupo de usuarios de laboratorios.
Período: Periodo de tiempo durante el cual el usuario podrá hacer uso de los laboratorios de computación por el tiempo máximo establecido, pasado
SISLAB – MANUAL DE USUARIO
17
el periodo, el tiempo máximo se restablecerá nuevamente. Se puede escoger entre: Diario, Semanal y Mensual.
Tiempo mínimo: Tiempo mínimo en minutos durante el que se podrá reservar
una computadora. Se recomienda definir el tiempo mínimo en
función al tiempo que bajo una situación normal el usuario tardaría en llegar a una computadora y utilizarla para una tarea básica.
Tiempo máximo: Tiempo máximo en minutos durante el que se podrá reservar una computadora. El tiempo máximo de cada usuario de laboratorios, irá disminuyendo en función de las reservaciones que realice.
Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez del grupo de usuarios del laboratorio. Figura 16: Formulario de grupos de usuarios de laboratorios
Fuente: Sistema informático SISLAB
2.1.4.2 Franjas horarias Las franjas horarias son lapsos de tiempo que podrán ser asignados como horarios de uso de laboratorios. Los datos requeridos para las franjas horarias son:
ID: Identificador único de la franja horaria.
Hora inicio: Hora en que inicia la franja horaria, puede ingresar de 1 a 24 horas.
Minutos inicio: Minutos en que inicia la franja horaria, puede ingresar de 1 a 60 minutos.
Hora fin: Hora en que finaliza la franja horaria, puede ingresar de 1 a 24 horas.
SISLAB – MANUAL DE USUARIO
18
Minutos fin: Minutos en que finaliza la franja horaria, puede ingresar de 1 a 60 minutos.
Estado: Estado habilitado (casilla seleccionada) o deshabilitado (casilla deseleccionada), que indica la validez de la franja horaria. Figura 17: Formulario de franjas horarias
Fuente: Sistema informático SISLAB
2.1.4.3 Horarios de laboratorios Permite asignar franjas horarias de atención de los laboratorios, durante las cuales se podrán reservar las computadoras. Los datos del panel superior son meramente informativos, y su finalidad es organizar los horarios por laboratorio. Los datos requeridos para los horarios de laboratorios son (panel inferior):
ID: Identificador único del horario de atención del laboratorio.
Día: Día de la semana (lunes, martes, miércoles, jueves, viernes, sábado o domingo).
Hora: Franja horaria para atención del laboratorio.
SISLAB – MANUAL DE USUARIO
19
Figura 18: Formulario de horarios de atención de laboratorios de computación
Fuente: Sistema informático SISLAB
2.1.5 Reservaciones El módulo reservaciones permite generar reservaciones para clases, y visualizar de forma general las reservaciones personales de los laboratorios de computación.
2.1.5.1 Reservar laboratorios y computadoras para clases Mediante esta opción el Administrador de Laboratorios podrá reservar los laboratorios para clases, según los horarios de clase creados por las Secretarias de Escuela desde el Sistema Académico. Los horarios de clase tienen prioridad sobre los horarios de atención de los laboratorios. Es decir que sin importar el horario de atención de un laboratorio, las reservaciones para clases siempre podrán efectuarse a menos que exista un cruce de horarios en cuyo caso no se podrán procesar. Los datos requeridos para las reservaciones de laboratorios son (panel superior):
Ciclo académico: Ciclo académico abierto, en el que se está dictando clases.
Escuela: Escuela en la que se encuentra la materia para la que se realizará
SISLAB – MANUAL DE USUARIO
20
la reservación.
Carrera: Carrera en la que se encuentra la materia para la que se realizará la reservación.
Nivel: Nivel al que pertenece la materia para la que se realizará la reservación.
Materia: Materia para la que se reservará el laboratorio.
Laboratorio: Laboratorio a reservar.
Los datos requeridos para las reservaciones de computadoras son (panel superior):
ID: Identificador único de la reservación de la computadora para clases.
Computadora: MAC y nombre de la computadora que se desea reservar.
Usuario: Nombre de usuario con el que se deberá identificar la persona que acceda
a
la
computadora.
El
nombre
de
usuario
se
genera
automáticamente a partir del ID de la computadora (recuerde que no es lo mismo que la MAC), la fecha de la reservación, y la hora en que inicia la reservación. Por ejemplo, si se reserva una computadora con ID 30 para la fecha 06/12/2011 a las 20:30, el usuario sería 30061220112030.
Contraseña: La contraseña corresponde a un número aleatorio de cuatro dígitos, y permitirá acceder junto con el nombre de usuario a la computadora reservada.
Fecha y hora inicio: Fecha y hora en que iniciará la reservación de la computadora. Las fechas disponibles corresponden a las fechas que se encuentran entre la fecha inicio y la fecha fin, del ciclo académico en que se realizará la reservación, y depende además del día y hora en que inicia la clase de la materia según los horarios del Sistema Académico.
Fecha y hora fin: Fecha y hora en que finaliza la reservación de la computadora. Las fechas disponibles corresponden a las fechas que se encuentras entre la fecha inicio y la fecha fin, del ciclo académico en que se realizará la reservación, y depende además del día y hora en que finaliza la clase de la materia según los horarios del Sistema Académico.
Tiempo: Visualiza el tiempo que durará la reservación de la computadora.
SISLAB – MANUAL DE USUARIO
21
Figura 19: Formulario de reservación de laboratorio
Fuente: Sistema informático SISLAB
2.1.5.1.1
Actualizar calendario
El botón
ubicado en el menú de opciones del panel
principal permite generar las fechas para inicio y fin de las reservaciones según el ciclo académico del registro que se encuentre seleccionado.
2.1.5.1.2
Reservar laboratorio Existen dos formas de reservar los laboratorios de computación para clases: agregando una por una las computadoras y fechas de inicio y fin de la reservación, con lo cual se generará además una contraseña diferente para cada reservación, o pulsando el botón
ubicado en el
menú de opciones del panel principal, el cual permite reservar todas las computadoras del laboratorio con estado habilitado, y que no se encuentren reservadas dentro de la fecha y hora de inicio y fin que seleccionemos. Las fechas y horas de inicio y fin de las reservaciones pueden seleccionarse desde el Sistema Académico, o podemos ingresarlas manualmente. Figura 20: Formulario de fechas y horas de reservación
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
22
2.1.5.2 Vista de laboratorios A través de esta opción el Administrador de laboratorios podrá conocer el estado actual de los laboratorios y sus reservaciones, tiempo de reserva y tiempo utilizado por los usuarios. En el panel izquierdo del formulario aparecerán todos los laboratorios habilitados y deshabilitados, en el panel central aparecerán todas las computadoras que se encuentren en el laboratorio, ya estén habilitadas, deshabilitadas u ocupadas, y finalmente en el panel derecho
aparecerá
la
información
del
laboratorio
que
se
encuentre
seleccionado, además de la simbología de las imágenes utilizadas por el formulario. Figura 21: Formulario de vista de laboratorios
Fuente: Sistema informático SISLAB
2.1.5.2.1
Modificar el tiempo de reservación de una computadora En caso de ser necesario, el Administrador de laboratorios podrá reducir o aumentar el tiempo de reservación de una computadora, dando clic sobre la que desee, y a continuación ingresando el número de minutos en que finalizará la reservación, luego de clic en el botón Modificar reservación, y listo.
SISLAB – MANUAL DE USUARIO
23
Figura 22: Formulario de modificación de tiempo de reservación de una computadora
Fuente: Sistema informático SISLAB
2.1.5.2.2
Modificar el tiempo de reservación de un laboratorio La misma funcionalidad anterior es posible aplicar para todo el laboratorio de computación, de clic en el botón Modificar
ubicado en el panel derecho
de información, e ingrese el número de minutos en los que finalizarán las reservaciones, luego de clic en el botón Modificar reservaciones, y listo. Figura 23: Formulario de modificación de tiempo de reservación de un laboratorio
Fuente: Sistema informático SISLAB
2.1.6 Reportes El módulo reportes permite visualizar información histórica de las reservaciones personales, y para clases realizadas hasta la presente fecha.
2.1.6.1 Historial de reservaciones personales A través de esta opción se podrá visualizar a través de un reporte quienes han hecho uso de los laboratorios por: ciclo académico, laboratorio, computadora y usuario de laboratorios. Llene los datos necesarios para reducir la búsqueda de información, o deje en blanco el(los) campo(s) de texto si desea visualizar toda la información que exista. Luego presione el botón Generar reporte. Presione el botón Limpiar, si desea encerar los parámetros del reporte.
SISLAB – MANUAL DE USUARIO
24
Figura 24: Formulario de generación de historial de reservaciones personales
Fuente: Sistema informático SISLAB
2.1.6.2 Historial de reservaciones para clases A través de esta opción se podrá visualizar a través de un reporte quienes han hecho uso de los laboratorios para clases por: ciclo académico, escuela, carrera, nivel, paralelo, materia, laboratorio y computadora. Llene los datos necesarios para reducir la búsqueda de información, o deje en blanco el(los) campo(s) de texto si desea visualizar toda la información que exista. Luego presione el botón Generar reporte. Presione el botón Limpiar, si desea encerar los parámetros del reporte.
Figura 25: Formulario de generación de historial de reservaciones personales
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
25
3 3.1
MÓDULO DE RESERVACIÓN
DESCRIPCIÓN GENERAL A través del Módulo de Reservación, estudiantes, docentes, empleados y usuarios externos, podrán realizar reservaciones de las computadoras de los laboratorios de la PUCE SD, para uso personal.
3.1.1 Iniciar sesión Para que un usuario de laboratorios pueda realizar una reservación, primero deberá autenticarse a través del formulario de inicio de sesión del Módulo de Reservación. Figura 26: Formulario de inicio de sesión del Módulo de Reservación
Fuente: Sistema informático SISLAB Los pasos que el usuario de laboratorios deberá seguir para autenticarse son: 1. Pasar su código de barras por el lector ubicado en el kiosco de reservación de computadoras, el cual corresponde al nombre de usuario. 2. Ingresar su contraseña, si es la primera vez que el usuario se autentica la contraseña será su número de identificación (cédula o pasaporte), se le solicitará que la cambie inmediatamente (ver Figura 27 y Figura 28), y posteriormente que vuelva a autenticarse.
SISLAB – MANUAL DE USUARIO
26
Figura 27: Mensaje de aviso de creación de una contraseña
Fuente: Sistema informático SISLAB
Figura 28: Formulario para cambio de contraseña
Fuente: Sistema informático SISLAB 3. El módulo validará el correcto ingreso del nombre de usuario y contraseña, caso contrario visualizará un mensaje de error. Figura 29: Error de ingreso de usuario o contraseña
Fuente: Sistema informático SISLAB
3.1.2 Reservar computadoras Una vez autenticado el usuario de laboratorios, éste podrá realizar la reservación
SISLAB – MANUAL DE USUARIO
27
de una computadora en el laboratorio de su elección. El formulario de reservación de computadoras está conformado por: barra superior de opciones, panel
izquierdo de laboratorios, panel central de
computadoras y panel derecho de información. Figura 30: Formulario de reservación de computadoras
Fuente: Sistema informático SISLAB Los pasos que el usuario de laboratorios deberá seguir para reservar una computadora son: 1. Elegir el laboratorio en que desea reservar una computadora, dando clic sobre ésta, se desplegará en el lado izquierdo la información sobre: nombre, ubicación y horario de atención diaria del laboratorio. Figura 31: Panel izquierdo de laboratorios
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
28
Figura 32: Panel derecho de información del laboratorio y consumo
Fuente: Sistema informático SISLAB 2. Elegir una computadora disponible para su reservación, dando clic sobre ésta. Las computadoras pueden tener tres estados: disponible, ocupada y deshabilitada. Figura 33: Panel central de computadoras
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
29
Figura 34: Simbología de imágenes de las computadoras y laboratorios
Fuente: Sistema informático SISLAB 3. Confirmar la reservación, si ya tiene una reservación previa primero deberá cancelarla. Figura 35: Mensaje de confirmación de reservación
Fuente: Sistema informático SISLAB Figura 36: Mensaje de solicitud de cancelación de reservación anterior
Fuente: Sistema informático SISLAB 4. Un mensaje informará el tiempo de reservación de la computadora, y el nombre de usuario. La contraseña de desbloqueo corresponde a la misma contraseña de ingreso al Módulo de Reservación, dar clic en el botón Aceptar.
SISLAB – MANUAL DE USUARIO
30
Figura 37: Mensaje de informaciรณn de tiempo y de la computadora reservada
Fuente: Sistema informรกtico SISLAB
3.1.3 Cancelar reservaciรณn Una reservaciรณn debe ser previamente cancelada si estando aรบn vigente, deseamos realizar una reservaciรณn diferente, o en caso de que el usuario decida ya no hacer uso de la reservaciรณn. Los pasos que el usuario de laboratorios deberรก seguir para cancelar una reservaciรณn son:
1. Dar clic sobre el botรณn
Cancelar reservaciรณn anterior, ubicado en la barra
superior de opciones del formulario de reservaciรณn. 2. Confirmar la cancelaciรณn de la reservaciรณn.
Figura 38: Mensaje de confirmaciรณn de cancelaciรณn de la reservaciรณn
Fuente: Sistema informรกtico SISLAB 3. En caso de confirmar afirmativamente, la reservaciรณn serรก cancelada y un mensaje de informaciรณn se visualizarรก, dar clic en el botรณn Aceptar.
SISLAB โ MANUAL DE USUARIO
31
Figura 39: Mensaje de información de cancelación de la reservación
Fuente: Sistema informático SISLAB
3.1.4 Cambiar contraseña Los pasos que el usuario de laboratorios deberá seguir para cambiar su contraseña son:
1. Dar clic sobre el botón
Cambiar contraseña, ubicado en la barra superior
de opciones del formulario de reservación. 2. Escribir y confirmar la nueva contraseña, que deberá contener cuatro dígitos numéricos únicamente, y dar clic sobre el botón Aceptar. Figura 40: Formulario de cambio de contraseña
Fuente: Sistema informático SISLAB 3. En caso de aceptar el cambio de contraseña, un mensaje de información de cambio de contraseña exitoso se visualizará, dar clic en el botón Aceptar. Figura 41: Mensaje de información de cambio de contraseña exitoso
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
32
3.1.5 Contraseña olvidada En caso de olvido de contraseña, podrá ser generada una nueva contraseña aleatoria de cuatro dígitos, la cual será enviada a la cuenta de correo electrónico registrada para el usuario de laboratorios en el Sistema Académico o Sistema de Nómina. Los pasos que el usuario de laboratorios deberá seguir para generar una nueva contraseña por olvido de la anterior son: 1. Pasar su código de barras por el lector ubicado en el kiosco de reservación de computadoras, el cual corresponde al nombre de usuario, y dar clic doble el link ¿Ha olvidado su contraseña?, ubicado en la parte inferior del formulario de inicio de sesión. Figura 42: Formulario de inicio de sesión del Módulo de Reservación
Fuente: Sistema informático SISLAB 2. Confirmar la generación de una nueva contraseña, la cual será enviada a la cuenta de correo electrónico registrada para el usuario de laboratorios. Figura 43: Mensaje de confirmación de envío de nueva contraseña
Fuente: Sistema informático SISLAB SISLAB – MANUAL DE USUARIO
33
3. En caso de confirmar afirmativamente, un mensaje de información de cambio de envío exitoso de nueva contraseña se visualizará, dar clic en el botón Aceptar. Figura 44: Mensaje de aviso de envío exitoso de nueva contraseña
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
34
4 4.1
MÓDULO DE BLOQUEO
DESCRIPCIÓN GENERAL A través del Módulo de Bloqueo, estudiantes, docentes, empleados y usuarios externos, podrán usar de forma controlada las computadoras de los laboratorios de la PUCE SD a través de un nombre de usuario y contraseña por un periodo de tiempo determinado. Este módulo deberá ser instalado en cada una de las computadoras de los laboratorios. En el formulario principal del Módulo de Bloqueo, podrá observar: el nombre de la computadora y su ID, el nombre del laboratorio, y el formulario de inicio de sesión. Figura 45: Formulario principal del Módulo de Bloqueo
Fuente: Sistema informático SISLAB
4.1.1 Iniciar sesión Una vez realizada la reservación de una computadora desde Módulo de Reservación, el usuario de laboratorios deberá autenticarse a través del formulario de inicio de sesión del Módulo de Bloqueo.
SISLAB – MANUAL DE USUARIO
35
Figura 46: Formulario de inicio de sesión del Módulo de Bloqueo
Fuente: Sistema informático SISLAB Los pasos que el usuario de laboratorios deberá seguir para autenticarse son: 1. Ingresar su nombre de usuario, el mismo que le fue informado al momento de reservar la computadora. 2. Ingresar su contraseña de desbloqueo, que corresponde a la misma contraseña de autenticación del Módulo de Reservación. 3. Dar clic en el botón Aceptar. Una vez autenticado el usuario, podrá utilizar la computadora durante el tiempo que ha sido reservada, un mensaje de información emergerá cinco minutos antes de
que
la
reservación
finalice,
luego
de esto
la
sesión
se
cerrará
automáticamente.
4.1.2 Finalizar reservación Si el usuario desea dar por terminada la reservación de la computadora, antes de finalizado el tiempo, podrá hacerlo siguiendo los siguientes pasos: 1. Dar clic sobre el botón FINALIZAR RESERVACIÓN ubicado en la esquina superior derecha del escritorio de Windows. Figura 47: Ícono de finalizar reservación
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
36
2. Confirme la finalización de la reservación. Figura 48: Mensaje de confirmación de finalización de la reservación
Fuente: Sistema informático SISLAB
4.1.3 Crear contraseña para el administrador La primera vez que ejecuta el Módulo de Bloqueo debe hacerlo con un usuario Administrador de Windows, se le solicitará ingresar una contraseña de administración, la misma que le permitirá ingresar a la computadora sin necesidad de realizar una reservación previa. Podrá así utilizar la computadora por un periodo de tiempo indefinido, y sin necesidad de tener conexión de red de datos. Figura 49: Mensaje de creación de contraseña de administrador
Fuente: Sistema informático SISLAB Figura 50: Formulario de creación de contraseña de administrador
Fuente: Sistema informático SISLAB
4.1.4 Iniciar sesión como administrador El Administrador de laboratorios podrá tener acceso directo a las computadoras
SISLAB – MANUAL DE USUARIO
37
de los laboratorios por un periodo de tiempo indefinido, mediante la opción de Administrador, para ello siga los siguientes pasos:
1. Dar clic sobre el botón de Administración
.
2. Ingrese la contraseña de Administración, y de clic en el botón Aceptar. Figura 51: Formulario de administración de la computadora
Fuente: Sistema informático SISLAB
4.1.5 Cambiar contraseña del administrador Para cambiar la contraseña del Administrador de Laboratorios, siga los siguientes pasos:
1. Dar clic sobre el botón de Administración
.
2. Ingrese la contraseña de Administración, y de clic en el botón Cambiar contraseña. 3. Ingrese la nueva contraseña, y luego verifíquela, de clic en en el botón Aceptar. Figura 52: Formulario de cambio de contraseña de Administrador
Fuente: Sistema informático SISLAB
SISLAB – MANUAL DE USUARIO
207
ANEXO 7
SISLAB – MANUAL DE USUARIO
MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
ii
ÍNDICE DE CONTENIDOS 1
INTRODUCCIÓN .......................................................................................... 5
2
PRERREQUISITOS ..................................................................................... 6
2.1.
Servidor de base de datos ........................................................................... 6
2.2.
Servidor RADIUS ......................................................................................... 6
2.3.
Módulo de Administración............................................................................ 7
2.4.
Módulo de Reservación ............................................................................... 8
2.5.
Módulo de Bloqueo ...................................................................................... 8
3
INSTALACIÓN Y CONFIGURACIÓN DEL SERVIDOR DE BASE DE
DATOS ............................................................................................................................. 9 3.1.
Instalación de Microsoft Windows 2003 Server ............................................ 9
3.2.
Instalación de la base de datos Oracle 10g Express Edition .......................12
4
INSTALACIÓN Y CONFIGURACIÓN DEL SERVIDOR RADIUS ...............14
4.1.
Instalación de Oracle Client en Linux ..........................................................14
4.2.
Instalación mediante yum ...........................................................................15
4.3.
Instalación mediante compilación ...............................................................16
4.4.
Configuración de FreeRADIUS para soporte de Oracle ..............................16
4.5.
Configuración del Servidor FreeRADIUS ....................................................17
4.5.1.
Configuración del archivo radiusd.conf .......................................................18
4.5.2.
Configuración del archivo clients.conf .........................................................18
4.5.3.
Configuración del archivo default ................................................................18
5
CREACIÓN DE LA BASE DE DATOS ........................................................20
5.1.
Crear tablespace ........................................................................................20
5.2.
Crear usuario SISLAB ................................................................................20
5.3.
Importar base de datos ...............................................................................20
5.4.
Enlazar SISLAB a la base de datos de la PUCE SD ...................................21
6
INSTALACIÓN DEL SISTEMA INFORMÁTICO SISLAB ............................25
6.1.
Instalación de Oracle Client ........................................................................25
6.2.
Instalación de Microsoft .NET Framework 3.5.............................................28
6.3.
Instalación del Sistema Informático SISLAB ...............................................29
6.4.
Configuración del Módulo de Bloqueo ........................................................34 SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
iii
LISTA DE TABLAS
Tabla 1: Requisitos de software del servidor de base de datos......................................... 6 Tabla 2: Requisitos de hardware del servidor de base de datos ....................................... 6 Tabla 3: Requisitos de software del servidor FreeRADIUS ............................................... 6 Tabla 4: Requisitos de hardware del servidor FreeRADIUS .............................................. 7 Tabla 5: Requisitos de software del Módulo de Administración ......................................... 7 Tabla 6: Requisitos de hardware del Módulo de Administración ....................................... 7 Tabla 7: Requisitos de software del Módulo de Reservación ............................................ 8 Tabla 8: Requisitos de hardware del Módulo de Reservación ........................................... 8 Tabla 9: Requisitos de software del Módulo de Bloqueo ................................................... 8 Tabla 10: Requisitos de hardware del Módulo de Bloqueo ............................................... 8 Tabla 11: Tabla ficticia de ciclos académicos ..................................................................23
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
iv
LISTA DE FIGURAS
Figura 1: Inicio de instalación de Windows 2003 Server ................................................... 9 Figura 2: Formato de partición de Windows 2003 Server .................................................10 Figura 3: Reinicio del equipo durante la instalación de Windows 2003 Server .................10 Figura 4: Progreso de la instalación de Windows 2003 Server ........................................11 Figura 5: Configuración regional y de idioma de Windows 2003 Server ...........................11 Figura 6: Ingreso de clave de Windows 2003 Server .......................................................12 Figura 7: Instalación de Oracle Database 10g Express Edition ........................................12 Figura 8: Ingreso de contraseña de base de datos ..........................................................13 Figura 9: Finalización de la instalación de la base de datos .............................................13 Figura 10: Pantalla de selección de tipo de instalación de Oracle Client ..........................25 Figura 11: Pantalla de componentes disponibles de Oracle Client ...................................26 Figura 12: Pantalla de comprobación de requisitos para instalación de Oracle Client ......27 Figura 13: Asistente de configuración de red de Oracle Client .........................................27 Figura 14: Inicio de la instalación de Microsoft .NET Framework 3.5 ...............................28 Figura 15: Pantalla de instalación completada de Microsoft .NET Framework 3.5 ...........29 Figura 16: Ícono de instalación del sistema informático SISLAB ......................................29 Figura 17: Asistente para instalación del sistema informático SISLAB .............................30 Figura 18: Pantalla de selección de carpeta de instalación del sistema informático SISLAB ........................................................................................................................................30 Figura 19: Pantalla para buscar carpeta para instalación del sistema informático SISLAB ........................................................................................................................................31 Figura 20: Pantalla de espacio en disco para instalación del sistema informático SISLAB ........................................................................................................................................31 Figura 21: Pantalla de confirmación de la instalación del sistema informático SISLAB ....32 Figura 22: Pantalla de progreso de la instalación del sistema informático SISLAB ..........32 Figura 23: Pantalla de instalación completada del sistema informático SISLAB...............33 Figura 24: Configuración de control de cuentas de usuario de Windows .........................34 Figura 25: Editor de directivas de grupo local de Windows ..............................................35
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
5
1
INTRODUCCIÓN
El presente manual tiene como finalidad describir los prerrequisitos de hardware y software, y detallar los pasos a seguir para la instalación y configuración de cada uno de los componentes del sistema informático SISLAB.
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
6
2
PRERREQUISITOS
Tomar en cuenta los siguientes aspectos para el adecuado funcionamiento del sistema informático SISLAB.
2.1. Servidor de base de datos Tabla 1: Requisitos de software del servidor de base de datos SOFTWARE Sistema operativo Microsoft Windows 2003 Server Base de datos
Oracle Database 10g Relase 2
Fuente: Realizado por los autores
Tabla 2: Requisitos de hardware del servidor de base de datos HARDWARE Procesador
Dual Intel Core, Pentium, AMD, o compatible (1GHz o superior)
Disco duro
40 GB (mínimo)
Memoria RAM 512 MB (mínimo) Dispositivos
Monitor, teclado, mouse, DVD-RW
Fuente: Realizado por los autores
2.2. Servidor RADIUS Tabla 3: Requisitos de software del servidor FreeRADIUS SOFTWARE Sistema operativo
Centos 5.4
Freeradius 2.1.7 Paquetes adicionales Oracle-instantclient-basic- 10.2.0.4 -1.i386.rpm Oracle-instantclient-devel- 10.2.0.4 -1.i386.rpm SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
7
Oracle-instantclient-sqlplus- 10.2.0.4 -1.i386.rpm
Fuente: Realizado por los autores Tabla 4: Requisitos de hardware del servidor FreeRADIUS HARDWARE Procesador
Pentium IV (mínimo)
Memoria RAM 512 MB (mínimo) Disco duro
40 Gb (recomendado)
Dispositivos
Monitor, teclado, mouse, DVD-RW
Fuente: Realizado por los autores
2.3. Módulo de Administración Tabla 5: Requisitos de software del Módulo de Administración SOFTWARE Sistema operativo
Microsoft Windows XP, Microsoft Windows 7
Paquetes adicionales Microsoft .NET Framework 3.5, Oracle Client Fuente: Realizado por los autores Tabla 6: Requisitos de hardware del Módulo de Administración HARDWARE Procesador
Intel Dual Core, Pentium, AMD, o compatible (1GHz o superior)
Disco duro
40 GB (recomendado)
Memoria RAM 512 MB de RAM Dispositivos
Monitor, teclado, mouse, DVD-RW
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
8
2.4. Módulo de Reservación Tabla 7: Requisitos de software del Módulo de Reservación SOFTWARE Sistema operativo
Microsoft Windows XP, Microsoft Windows 7
Paquetes adicionales Microsoft .NET Framework 3.5, Oracle Client Fuente: Realizado por los autores Tabla 8: Requisitos de hardware del Módulo de Reservación HARDWARE Procesador
Intel Dual Core, Pentium, AMD, o compatible (1GHz o superior)
Disco duro
40 GB (recomendado)
Memoria RAM 512 MB de RAM Dispositivos
Monitor, teclado, mouse, DVD-RW
Fuente: Realizado por los autores
2.5. Módulo de Bloqueo Tabla 9: Requisitos de software del Módulo de Bloqueo SOFTWARE Sistema Operativo
Microsoft Windows XP, Microsoft Windows 7
Paquetes adicionales
Microsoft .NET Framework 3.5, Oracle Client
Fuente: Realizado por los autores Tabla 10: Requisitos de hardware del Módulo de Bloqueo HARDWARE Procesador
Intel Core 2 Duo (recomendado)
Memoria RAM 1GB (recomendado) Disco duro
1,5 Gb disponibles en el disco duro
Dispositivos
Monitor, teclado, mouse, DVD-RW
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
9
3
INSTALACIÓN Y CONFIGURACIÓN DEL SERVIDOR DE BASE DE DATOS
La base de datos Oracle 10g que almacenará la información de SISLAB se instalará sobre el sistema operativo Microsoft Windows 2003 Server. A continuación se detallan ambas instalaciones.
3.1. Instalación de Microsoft Windows 2003 Server Una vez comprobada la compatibilidad del hardware con Microsoft Windows 2003 server, procedemos a seguir los siguientes pasos: 1. Insertar el DVD de instalación. 2. Una vez que aparezca la pantalla de instalación, presionar la tecla ENTER para elegir la opción Instalar Windows ahora (ver Figura 1).
Figura 1: Inicio de instalación de Windows 2003 Server
Fuente: Realizado por los autores 3. Presionar la tecla F8 para aceptar el contrato de licencia. 4. A continuación se deberá elegir el lugar para la instalación, puede crear una partición en el espacio libre, o elegir el espacio libre, presione ENTER. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
10
5. Elija NTFS para dar formato a la partición y presione ENTER (ver Figura 2). Figura 2: Formato de partición de Windows 2003 Server
Fuente: Realizado por los autores 6. Automáticamente se efectúa la copia de los archivos necesarios para la instalación, y se inicia la configuración del sistema operativo. 7. Una vez finalizada la configuración el sistema se reiniciará, para continuar con la instalación (ver Figura 3). Figura 3: Reinicio del equipo durante la instalación de Windows 2003 Server
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
11
8. Automáticamente
se
procederá
a
recopilar
información,
actualizar
dinámicamente, preparar la instalación y se continuará con la instalación de Windows (ver Figura 4). Figura 4: Progreso de la instalación de Windows 2003 Server
Fuente: Realizado por los autores 9. Proceda a modificar las opciones regionales, avanzadas y, configuración regional y de idioma, si así lo requiere (ver Figura 5). Figura 5: Configuración regional y de idioma de Windows 2003 Server
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
12
10. Introduzca el nombre completo y la organización a la que pertenece el equipo. 11. A continuación ingrese la clave del producto (ver Figura 6). Figura 6: Ingreso de clave de Windows 2003 Server
Fuente: Realizado por los autores 12. Actualice la fecha y hora del sistema. 13. Seguidamente se instalará la red, elija la opción configuración típica. 14. Ingrese el grupo de trabajo al que pertenece el equipo. 15. Automáticamente procederá la instalación, una vez finalizada el equipo se reiniciará nuevamente.
3.2. Instalación de la base de datos Oracle 10g Express Edition Ahora se procederá a instalar la base de datos en el recién instalado sistema operativo Microsoft Windows 2003 server. 1. Ingresar al DVD adjunto a la carpeta RADIUS. 2. Proceda a ejecutar el instalador OracleXEUniv (ver Figura 7). Figura 7: Instalación de Oracle Database 10g Express Edition
Fuente: Realizado por los autores 3. Acepte los términos de la licencia, y de clic en el botón Siguiente. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
13
4. Ingrese y confirme la contraseña del usuario SYSTEM de la base de datos, y de clic en el botón Siguiente (ver Figura 8). Figura 8: Ingreso de contraseña de base de datos
Fuente: Realizado por los autores 5. Aparecerá a continuación un resumen con los valores de la instalación que se va a realizar, de clic en el botón Instalar. 6. Se iniciará el proceso de copia de ficheros y creación de la base de datos, elegir la casilla de verificación Pagina inicial de la base de datos, y de clic en el botón Terminar (ver Figura 9). Figura 9: Finalización de la instalación de la base de datos
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
14
4
INSTALACIÓN Y CONFIGURACIÓN DEL SERVIDOR RADIUS
Se realizan dos tipos de instalaciones, primero con yum para generar los archivos principales en la ruta /etc/radd/, con los que se trabajará posteriormente, y segundo por compilación para generar el módulo que permite al servidor RADIUS trabajar con Oracle como sistema manejador de base de datos. Antes de empezar la instalación asegurarse que se tiene conexión a internet.
4.1. Instalación de Oracle Client en Linux Antes de iniciar la instalación del servidor RADIUS, procederemos a instalar el cliente de Oracle siguiendo los pasos que se detallan a continuación: 1. Ingrese a la carpeta del usuario administrador root. 2. Copiar la carpeta oracle_linux la misma que se encuentra en el DVD adjunto en la carpeta RADIUS. 3. Desde una terminal ingresar a la carpeta oracle_linux. cd oracle_linux 4. Instale los siguientes paquetes:
rpm –ivh oracle-instantclient-basic-10.2.0.4-1.i386.rpm oracle-instantclient-devel10.2.0.4-1.i386.rpm oracle-instant client-sqlplus-10.2.4-1.i386.rpm 5. Cree el directorio para archivos de configuración, con el siguiente comando: mkdir/etc/oracle.
6. Acceda a /etc/oracle con el comando: cd/etc/oracle. 7. Cree el archivo TNSNAMES.ORA, su contenido deberá parecerse al siguiente, cambie el service_name y host dependiendo de sus red: PRUEBA2 = (DESCRIPTION = SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
15
(ADDRESS = (PROTOCOL = TCP) (HOST = host_ip_oracle) (PORT = 1521) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = prueba2) ) )
8. Defina las variables de entorno, ingresando al archivo .bashrc con: vim /root/.bashrc, y agregue al final del archivo las líneas siguientes: export TNS_ADMIN=/etc/oracle #Ruta donde está el tnsnames.ora ORACLE_HOME=/usr/lib/oracle/10.2.0.4/client/bin LD_LIBRARY_PATH=/usr/lib/oracle/10.2.0.4/client/lib #Ruta de las librerías PATH=$PATH:$ORACLE_HOME export ORACLE_HOME export ORACLE_SID=PRUEBA2 export PATH export LD_LIBRARY_PATH
9. Reinicie la sesión de root para que los cambios en las variables de entorno tengan efecto. 10. Compruebe la conectividad con el servidor oracle con la siguiente línea de comando: sqlplususuario/key@net_service_name, dónde usuario es el nombre de usuario, key la clave de usuario y net_service_name es el nombre de servicio de red. 11. Para el presente proyecto la conexión se realiza de esta manera: sqlplus sislab/sl@PRUEBA2.
4.2. Instalación mediante yum Instalar el servidor radius con el siguiente comando: yum
–y
install
freeradius2. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
16
Instalar mysql para freeradius con el siguiente comando: yum –y install freeradius2-mysql.
4.3. Instalación mediante compilación 1. Ingresar al DVD adjunto a la carpeta RADIUS donde se encuentra el archivo freeradius-server-2.1.7 y copiar a la carpeta personal del administrador root en el Centos. 2. Para facilidad en el acceso cambiar el nombre desde una terminal la carpeta a freeradius con: mv freeradius-server-2.1.7 freeradius. 3. Ingresar al archivo descomprimido con: cd freeradius. 4. Hacer la operación de configuración con el siguiente comando:./configure. El comando ./configure es el encargado de configurar y crear un fichero Makefile que será utilizado por make para compilar e instalar. 5. Si solicita el (GCC) conjunto de compiladores, instalar con: yum -y install gcc.
6. Compilar los archivos binarios con el comando: make.
Instalar los archivos binarios con el comando: make install.
4.4. Configuración de FreeRADIUS para soporte de Oracle 1. Desde una terminal, ingresar a la ruta: cd freeradius/src/modules/rlm_sql /drivers/rlm_sql_oracle/.
2. Hacer la operación de configuración con el siguiente comando: ./configure. 3. Abrir el archivo makefile con: vim makefile. 4. Reemplazar el contenido actual con el siguiente: include ../../../../../Make.inc TARGET = rlm_sql_oracle
#Nombre del módulo
HEADERS = rlm_sql_oracle.hsql_oracle.c SRCS = sql_oracle.c RLM_SQL_CFLAGS = $(INCLTDL) – I/usr/include/oracle/10.2.0.4/client RLM_SQL_LIBS
#Ruta del Oci.h
= -L/usr/lib/oracle/10.2.0.4/client/lib
–lclntsh –lm #Librerías del cliente de oracle SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
17
include ../rules.mak
12. Compilar los archivos binarios con el comando: make. 13. Instalar con: make install. 14. Esto generará el módulo rlm_sql_oracle.so que deberá estar instalado en la ruta del directorio lib que en la mayoría de casos debe estar en /usr/local/lib/, compruebe que se encuentra en esa ruta. 15. Copiar el archivo rlm_sql_oracle-2.1.7.so que está en la ruta /usr/local/lib/ al directorio /usr/lib/freeradius/
cp
con:
/usr/local/lib/rlm_sql_oracle-
2.1.7.so /usr/lib/freeradius/, sobreescribir el archivo existente.
16. Crear un enlace simbólico dentro de la ruta /usr/lib/freeradius/ con: ln –s rlm_sql_oracle-2.1.7.so rlm_sql_oracle.so.
17. El enlace se llama rlm_sql_oracle.so y apunta al archivo rlm_sql_oracle2.1.7.so. 18. Acceder con vim /etc/ld.so.conf en consola y añadir la siguiente línea que es
la
ruta
de
las
librerías
del
Oracle
Client:
/usr/lib/oracle/
10.2.0.4/client/lib/.
19. Desde una terminal como root ejecutar las configuraciones del archivo ld.so.conf con: ldconfig.
La línea anterior establece los vínculos necesarios para las bibliotecas más recientes encontradas en los directorios especificados en el archivo /etc/ld.so.conf.
4.5. Configuración del Servidor FreeRADIUS 1. Configurar el archivo sql.conf, acceda con: vim /etc/raddb/sql.conf. 2. Realizar los siguientes cambios: Database = “oracle”
#Tipo de base de datos
Server = PRUEBA2
#Servidor a conectarse
Login = “sislab”
#Nombre del usuario de conexión
Password = “secreto_de_sislab”
#Clave de usuario que conecta a #la base de datos
radius_db = "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host_ip_oracle)(PORT= 1521))(CONNECT_DATA=(SID=PRUEBA2)))" SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
18
#Esta configuración es similar a la del archivo tnsnames.ora
4.5.1. Configuración del archivo radiusd.conf 1. Acceder con: vim /etc/raddb/radiusd.conf 2. Realizar los siguientes cambios: #$INCLUDE
eap.conf
INCLUDE sql.conf
#Esta línea se comenta #Esta línea se descomenta para que incluya #las configuraciones del archivo sql.conf
4.5.2. Configuración del archivo clients.conf Añada en este archivo las redes que tendrán acceso al servidor radius, con sus respectivas máscaras Acceder con: vim /etc/raddb/radiusd.conf y realicar los siguientes cambios: client 192.168.1.0/24 {
#Red para implementar el control
secret = secreto_de_sislab
#Secreto compartido
shortname = labs
#Nombre descriptivo #los laboratorios
de
cada
uno
de
}
4.5.3. Configuración del archivo default 1. Acceder con: vim /etc/raddb/sites-available/default. 2. En la sección authorize (línea 138) comentar lo siguiente: #eap { #ok = return #}
3. Descomentar la siguiente línea en la sección authorize (línea 157), accounting (línea 363), sesión (línea 394), post-auth (línea 415) sql
4. En las secciones authenticate (línea 287) y post-proxy (línea 536) comentar la línea siguiente. #eap SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
19
5. Borrar enlaces, en la ruta /etc/raddb/sites-enabled utilizar el comando rm para borrar todos los enlaces a excepción de defaul, el cual apunta a /etc/raddb/sitesavailable/default. 6. Iniciar el servidor RADIUS con el comando: service radiusd start ; tail –f /var/log/radius/radius.log
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
20
5
CREACIÓN DE LA BASE DE DATOS
5.1. Crear tablespace Primero se debe crear la ubicación de almacenamiento del espacio en donde se guardarán los objetos de la base de datos, en nuestro caso el directorio será C:\oracle\database\sislab.dat, para lo cual ejecutaremos el siguiente script: create tablespace tb_sislab datafile 'c:\oracle\database\sislab.dat' size 1024m autoextend on next 100m maxsize unlimited logging online permanent extent management local autoallocate blocksize 8k segment space management auto flashback on;
5.2. Crear usuario SISLAB En la base de datos Oracle se deberá crear el usuario SISLAB, con el cual nos conectaremos posteriormente a la base de datos. El usuario se creará con el usuario SYSDBA, ejecutando el siguiente script: create user sislab identified by sl default tablespace tb_sislab temporary tablespace temp; grant dba to sislab; grant resource to sislab; grant connect to sislab; grant create session to sislab;
5.3. Importar base de datos Una vez creado el usuario SISLAB, nos dispondremos a importar los objetos al esquema del usuario. Encontrará el archivo DB_SISLAB.DMP en la carpeta BASE DE DATOS del DVD adjunto. Para importar la base de datos, siga los siguientes SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
21
pasos: 1. En el servidor Windows 2003 Server que contiene la base de datos Oracle instalada previamente, abra el Símbolo del Sistema (cmd). 2. Digite “imp” para iniciar la importación de los objetos, y presione la tecla ENTER. C:\Documents and Settings\Administrador>imp
3. Ingrese el nombre de usuario y contraseña del usuario para el que vamos a importar los objetos de base de datos, y presione ENTER. Usuario: SISLAB Contraseña: sl
4. Digitar la ruta en que se encuentra el archivo DMP. Exportar archivo: EXPDAT.DMP > E:\BASE DE DATOS\DB_SISLAB.DMP
5. Definir 1000000 como tamaño del buffer de inserción. Introduzca el tamaño del buffer de inserción (mínimo 8192) 30720> 1000000
6. Responder con sí o no a las preguntas que aparecerán a continuación, de la siguiente manera: Mostrar sólo el contenido del archivo de importación (sí/no): no > n Ignorar error de creación debido a que el objeto ya existe (sí/no): no > s Importar permisos (sí/no): sí > s Importar los datos de la tabla (sí/no): sí > s Importar todo el archivo de exportación (sí/no): no > s
7. Finalmente se le informará que la importación ha terminado correctamente y sin advertencias.
5.4. Enlazar SISLAB a la base de datos de la PUCE SD El sistema informático SISLAB accede a los datos sobre: ciclos académicos, materias, horarios de clase, matrículas, estudiantes, docentes, empleados y SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
22
usuarios externos a través de vistas, que contienen toda la información necesaria. Por motivos de seguridad las vistas SLV_CICACA, SLV_DOCMAT, SLV_ESTMTR SLV_MATHOR y SLV_USULAB, se encuentran enlazadas a las tablas temporales TMP_CICACA, TMP_DOCMAT, TMP_ESTMTR, TMP_MATHOR y TMP_USULAB, respectivamente y su objetivo es representar a las vistas reales de la base de datos de la PUCE SD. Antes de continuar con la implementación, es necesario cambiar cada vista, manteniendo los nombres de los campos y respetando su contenido, pero haciendo referencia a la información en tiempo real de la base de datos de la PUCE SD. Por ejemplo, el script de la vista SLV_CICACA se encuentra definido de la siguiente manera: CREATE OR REPLACE VIEW SLV_CICACA (CICACAID, CICACANOM, CICACAINI, CICACAFIN, CICACAEST) AS SELECT CICACAID, CICACANOM, CICACAINI, CICACAFIN, CICACAEST FROM SISLAB.TMP_CICACA;
Los cinco campos que conforman esta vista deberán ser seleccionados sin alterar la naturaleza de su contenido (puede consultar que información debe contener cada campo en el Diccionario de Datos), ni su nombre, en caso de que el campo al que se hace referencia posea un nombre diferente será necesario usar alias. A continuación describimos un ejemplo aproximado al cambio que debe realizarse, si la tabla en la que se encuentran almacenados los datos estuviera definida de la siguiente manera:
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
23
ESQUEMA: ESQUEMA_PUCESD TABLA: TABLA_CICLOS_ACADEMICOS Tabla 11: Tabla ficticia de ciclos académicos CAMPO
DESCRIPCIÓN
CA_CODIGO
Código identificador del ciclo académico.
CA_NOMBRE
Nombre del ciclo académico.
CA_DESCRIPCION
Descripción del ciclo académico.
CA_FECHA_INICIO Fecha de inicio del ciclo académico. CA_FECHA_FIN
Fecha de fin del ciclo académico.
CA_ESTADO
Estado del ciclo académico.
Fuente: Realizado por los autores La vista SLV_CICACA quedaría de la siguiente forma: CREATE OR REPLACE VIEW SLV_CICACA (CICACAID, CICACANOM, CICACAINI, CICACAFIN, CICACAEST) AS SELECT CA_CODIGO CICACAID, CA_NOMBRE CICACANOM, CA_FECHA_INICIO CICACAINI, CA_FECHA_FIN CICACAFIN, CA_ESTADO CICACAEST FROM ESQUEMA_PUCESD.TABLA_CICLOS_ACADEMICOS;
Debido a las políticas de confidencialidad de datos de la PUCE SD, no es posible representar en este manual los scripts reales que contienen las vistas mencionadas, por lo que es responsabilidad del Administrador de Base de Datos de la PUCE SD la creación de estas. Entonces, los pasos a seguir para enlazar el sistema SISLAB a la base de datos de la PUCE SD serían los siguientes: 1.
Dar los permisos al usuario de la base de datos de la PUCESD que será propietario de las vistas. El usuario debe poder seleccionar todas las tablas que SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
24
contengan los datos necesarios para la creación de las vistas. 2. Eliminar las tablas temporales TMP_CICACA, TMP_DOCMAT, TMP_ESTMTR, TMP_MATHOR y TMP_USULAB y vistas SLV_CICACA, SLV_DOCMAT, SLV_ESTMTR SLV_MATHOR y SLV_USULAB. 3. Crear las vistas. 4. Dar permisos de selección de las vistas creadas para el usuario SISLAB.
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
25
6
INSTALACIÓN DEL SISTEMA INFORMÁTICO SISLAB
El sistema informático SISLAB debe ser instalado por un usuario Administrador de Windows. Se recomienda que el Módulo de Bloqueo sea utilizado por usuarios Estándares de Windows, debido a que los usuarios Administradores tienen permisos elevados y podrían desinstalar y modificar el módulo. A continuación se explican los pasos a seguir para instalar exitosamente SISLAB.
6.1. Instalación de Oracle Client Para conectar los módulos con la base de datos Oracle, es necesario instalar el cliente de Oracle en cada una de las computadoras en que se instalará cualquiera de los módulos de SISLAB, encontrará los instaladores para Windows XP y Windows 7 en la carpeta ORACLE CLIENT del DVD adjunto. Para ambos sistemas operativos la instalación es muy parecida, siga los siguientes pasos: 1. Inicie el instalador dando clic en el ícono de Setup. 2. En la pantalla de bienvenida que aparecerá, de clic en el botón Siguiente. 3. A continuación elija el tipo de instalación Personalizado y de clic en el botón Siguiente (ver Figura 10). Figura 10: Pantalla de selección de tipo de instalación de Oracle Client
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
26
4. En la pantalla siguiente se le mostrará el directorio raíz en el que se instalará el cliente de Oracle, de preferencia que sea en la unidad C: de clic en el botón Siguiente. 5. A continuación elija los componentes Oracle Windows Interfaces, Oracle Data Provider for .NET y Oracle Net (ver Figura 11). El resto de componentes deben estas deseleccionados, asegúrese de que así sea. Figura 11: Pantalla de componentes disponibles de Oracle Client
Fuente: Realizado por los autores 6. A continuación el instalador verificará que se cumplen todos los requisitos mínimos para la instalación, de clic en el botón Siguiente. 7. Si el instalador le solicita verificar errores con los problemas de “La base de datos Oracle 10g no está certificada en el sistema operativo actual” o “El sistema operativo Windows Vista 6.1 no está soportado” se debe a que no tiene instalado el último Service Pack de Windows 7, en este caso realice una verificación manual de los requisitos, dando clic en la casilla de verificación que aparece en estado de Error para cambiarla a Usuario verificado, y de clic en el botón Siguiente (ver Figura 12).
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
27
Figura 12: Pantalla de comprobación de requisitos para instalación de Oracle Client
Fuente: Realizado por los autores 8. En la pantalla siguiente aparecerá el resumen de la instalación, de clic en el botón Instalar. 9. Una asistente de configuración de red aparecerá en otra ventana, elija la casilla de verificación para realizar una configuración típica y de clic en siguiente (ver Figura 13). Figura 13: Asistente de configuración de red de Oracle Client
Fuente: Realizado por los autores 10. Finalmente la instalación le informará que ha terminado correctamente. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
28
11. Copie el archivo TNSNAMES del DVD adjunto, el mismo que se encuentra en la carpeta BASE DE DATOS. Este archivo contiene la información de conexión a la base de datos Oracle, ubíquelo en el directorio C:\oracle\product\10.2.0 \client_1\network\ADMIN, modifique el Host y SID en función a su red: PRUEBA = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = tcp.world) (PROTOCOL = TCP) (Host = 192.168.1.6) #Dirección IP del servidor de base de datos (Port = 1521) ) ) (CONNECT_DATA = (SID = SIDORCL) #Oracle SID ) )
12. Finalmente compruebe la conexión del archivo TNSNAMES con la base de datos, para ello en el cmd de Windows, digite tnsping prueba y de ENTER. Un mensaje de “Realizado correctamente” deberá aparecer.
6.2. Instalación de Microsoft .NET Framework 3.5 Antes de proseguir con la instalación del sistema informático SISLAB, es necesario instalar Microsoft .NET Framework 3.5 en cada una de las computadoras en que residirá cualquiera de los módulos, para lo cual deberá seguir los siguientes pasos: 1. Abra la carpeta DOTNET FRAMEWORK ubicada en el DVD adjunto. 2. Inicie la instalación dando clic sobre el ícono dotnetfx35. 3. Aparecerá una pantalla de iniciación del instalador (ver Figura 14). Figura 14: Inicio de la instalación de Microsoft .NET Framework 3.5
Fuente: Realizado por los autores SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
29
4. Luego de iniciado el instalador, aparecerá una pantalla de instalación de Microsoft .Net Framework 3.5, de clic en el botón Instalar. 5. Una vez terminado el progreso de instalación dar clic en el botón Salir (ver Figura 15). Figura 15: Pantalla de instalación completada de Microsoft .NET Framework 3.5
Fuente: Realizado por los autores
6.3. Instalación del Sistema Informático SISLAB El DVD adjunto contiene los instaladores de los Módulos de Administración, Reservación y Bloqueo del sistema informático SISLAB, abra la carpeta INSTALADORES, ahí encontrará tres subcarpetas con el nombre de cada módulo y su instalador respectivo. A continuación se describen los pasos a seguir para instalar los módulos del sistema informático SISLAB. 1. De doble clic en el ícono setup (ver Figura 16) del instalador. Figura 16: Ícono de instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 2. El asistente para instalación del módulo aparecerá en pantalla (ver Figura 17). De clic en el botón Siguiente. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
30
Figura 17: Asistente para instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 3. La siguiente pantalla permite configurar la instalación (ver Figura 18). De clic en el botón Siguiente si desea mantener la configuración por defecto, y continúe con el paso 7. Figura 18: Pantalla de selección de carpeta de instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 4. Si desea cambiar la ubicación de la instalación, de clic en el botón Examinar. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
31
Una pantalla para buscar otra ubicación aparecerá (ver Figura 19). Elija la carpeta en que desea realizar la instalación y de clic en el botón Aceptar, y luego en el botón Siguiente. Figura 19: Pantalla para buscar carpeta para instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 5. Si desea conocer el espacio que ocupará el módulo en la unidad, de clic en el botón Espacio en disco (ver Figura 20). Figura 20: Pantalla de espacio en disco para instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 6. Si desea instalar el módulo para todos los usuarios de Windows, seleccione la opción Para todos los usuarios y de clic en el botón Siguiente. SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
32
7. A continuación una pantalla de confirmación de la instalación aparecerá (ver Figura 21). Para iniciar la instalación de clic en el botón Siguiente. Figura 21: Pantalla de confirmación de la instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 8. El módulo se instalará (ver Figura 22). Figura 22: Pantalla de progreso de la instalación del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
33
9. Finalmente una pantalla de información le avisará que la instalación ha sido completada (ver Figura 23).
Figura 23: Pantalla de instalación completada del sistema informático SISLAB
Fuente: Instalador del sistema informático SISLAB 10. Una vez instalado cada módulo, cambie la conexión en el archivo de configuración de extensión .config ubicada en la dirección C:\Archivos de programa\PUCESD\SISLAB Administración, C:\Archivos de programa\PUCESD\ SISLAB Reservación, o C:\Archivos de programa\PUCESD\SISLAB Bloqueo. El Data Source debe ser igual al que definió en el TNSNAMES del equipo, en este caso es prueba, el ID debe ser igual al nombre de usuario de la base de datos con el que se conectará la aplicación, en este caso es SISLAB, y password debe corresponder a la contraseña del mismo, en este caso es sl. connectionString= "Data Source=PRUEBA;User ID=SISLAB;Password=sl;Unicode=True" providerName="System.Data.OracleClient" /> <add name="SISLAB_ADM.My.MySettings.ConnectionString" connectionString="Data Source=PRUEBA;Persist Security Info=True;User ID=SISLAB;Unicode=True" providerName="System.Data.OracleClient" />
11. En el archivo de configuración del Módulo de Bloqueo, cambie además los SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
34
datos de conexión al servidor RADIUS, el valor del secreto compartido, en este caso es secreto_de_sislab, y la dirección IP del servidor Radius, en este caso el 192.168.1.15. <add key="secreto" value="secreto_de_sislab" /> <add key="servidor" value="192.168.1.15" />
6.4. Configuración del Módulo de Bloqueo Finalmente el Módulo de Bloqueo requiere además las siguientes configuraciones: 1. En el panel de control de Windows, ingrese al Centro de actividades, y elija la opción Cambiar configuración de Control de Cuentas de Usuario (ver Figura 24), cambie la recepción de notificaciones a No notificarme nunca. Figura 24: Configuración de control de cuentas de usuario de Windows
Fuente: Realizado por los autores 2. Deshabilitar las opciones de Ctrl+Alt+Supr, para lo cual de clic en Inicio y escriba gpedit.msc (ver Figura 25), en Configuración de usuario seleccione Plantillas administrativas, luego Sistema, y Opciones de Ctrl+Alt+Supr. Dar doble clic en Quitar la opción Cambiar contraseña y elija la opción Habilitada, y acepte los cambios, haga
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
35
lo mismo con Quitar el bloqueo de equipos, Quitar Administrador de tareas y Quitar Cerrar sesión.
Figura 25: Editor de directivas de grupo local de Windows
Fuente: Realizado por los autores 3. Cierre la sesión del usuario Administrador de Windows con el que instaló el Módulo de Bloqueo. 4. Inicie sesión con un usuario Administrador de Windows, la primera vez que se ejecuta el Módulo de Bloqueo, se le solicitará que ingrese y confirme la clave de Administrador, finalmente cierre sesión. 5. Ahora los usuarios Estándares de Windows podrán utilizar SISLAB.
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
243
ANEXO 8
SISLAB - MANUAL DE INSTALACIÓN Y CONFIGURACIÓN
DICCIONARIO DE DATOS
ii
ÍNDICE DE CONTENIDOS 1
INTRODUCCIÓN.......................................................................................... 6
2
TABLAS ....................................................................................................... 7
2.1
PARAMETRIZACIÓN .................................................................................. 7
2.2
LISTA DE TABLAS ...................................................................................... 7
2.2.1
Tabla RADACCT ......................................................................................... 8
2.2.1.1
Índices en RADACCT .................................................................................. 9
2.2.1.2
PK, UK, & Check Constraints en RADACCT................................................ 9
2.2.2
Tabla RADCHECK......................................................................................10
2.2.2.1
Índices en RADCHECK ..............................................................................10
2.2.2.2
Triggers en RADCHECK ............................................................................10
2.2.2.3
PK, UK, & Check Constraints en RADCHECK ............................................11
2.2.2.4
Objetos que hacen referencia a la tabla RADCHECK .................................11
2.2.3
Tabla RADGROUPCHECK.........................................................................11
2.2.3.1
Índices en RADGROUPCHECK .................................................................11
2.2.3.2
PK, UK, & Check Constraints en RADGROUPCHECK ...............................11
2.2.4
Tabla RADGROUPREPLY .........................................................................12
2.2.4.1
Índices en RADGROUPREPLY ..................................................................12
2.2.4.2
PK, UK, & Check Constraints en RADGROUPREPLY ................................12
2.2.5
Tabla RADREPLY ......................................................................................12
2.2.5.1
Índices en RADREPLY ...............................................................................13
2.2.5.2
PK, UK, & Check Constraints en RADREPLY.............................................13
2.2.5.3
Objetos que hacen referencia a la tabla RADREPLY..................................13
2.2.6
Tabla RADUSERGROUP ...........................................................................13
2.2.6.1
Índices en RADUSERGROUP ....................................................................14
2.2.6.2
Triggers en RADUSERGROUP ..................................................................14
2.2.6.3
PK, UK, & Check Constraints en RADUSERGROUP .................................14
2.2.6.4
Objetos que hacen referencia a la tabla RADUSERGROUP ......................14
2.2.7
Tabla REALMGROUP ................................................................................14
2.2.7.1
Índices en REALMGROUP .........................................................................15
2.2.7.2
PK, UK, & Check Constraints en REALMGROUP ......................................15
2.2.8
Tabla REALMS ...........................................................................................15
2.2.8.1
Índices en REALMS....................................................................................15
SISLAB – DICCIONARIO DE DATOS
iii
2.2.8.2
PK, UK, & Check Constraints en REALMS .................................................15
2.2.9
Tabla SLTCICACAFEC ..............................................................................16
2.2.9.1
Objetos que hacen referencia a la tabla SLTCICACAFEC ..........................16
2.2.10
Tabla SLTEQU ...........................................................................................16
2.2.10.1
Índices en SLTEQU ....................................................................................17
2.2.10.2
Triggers en SLTEQU ..................................................................................17
2.2.10.3
Restricciones de claves foráneas SLTEQU ................................................17
2.2.10.4
PK, UK, & Check Constraints en SLTEQU .................................................18
2.2.10.5
Objetos referenciados por la tabla SLTEQU ...............................................18
2.2.10.6
Objetos que hacen referencia a la tabla SLTEQU ......................................18
2.2.11
Tabla SLTGRUUSULAB .............................................................................18
2.2.11.1
Índices en SLTGRUUSULAB ......................................................................19
2.2.11.2
PK, UK, & Check Constraints en SLTGRUUSULAB ...................................19
2.2.11.3
Objetos que hacen referencia a la tabla SLTGRUUSULAB ........................20
2.2.12
Tabla SLTHOR ...........................................................................................20
2.2.12.1
Índices en SLTHOR ....................................................................................20
2.2.12.2
Triggers en SLTHOR ..................................................................................20
2.2.12.3
PK, UK, & Check Constraints en SLTHOR .................................................21
2.2.12.4
Objetos que hacen referencia a la tabla SLTHOR ......................................21
2.2.12.5
Tabla SLTHORLAB ....................................................................................21
2.2.12.6
Índices en SLTHORLAB .............................................................................22
2.2.12.7
Triggers en SLTHORLAB ...........................................................................22
2.2.12.8
Restricciones de claves foraneas SLTHORLAB .........................................22
2.2.12.9
PK, UK, & Check Constraints en SLTHORLAB...........................................22
2.2.12.10
Objetos referenciados por la tabla SLTHORLAB ........................................22
2.2.12.11
Objetos que hacen referencia a la tabla SLTHORLAB ................................23
2.2.13
Tabla SLTLAB ............................................................................................23
2.2.13.1
Índices en SLTLAB .....................................................................................24
2.2.13.2
Triggers en SLTLAB ...................................................................................24
2.2.13.3
PK, UK, & Check Constraints en SLTLAB ..................................................24
2.2.13.4
Objetos que hacen referencia a la tabla SLTLAB .......................................24
2.2.14
Tabla SLTMODOPC ...................................................................................25
2.2.14.1
Índices en SLTMODOPC ............................................................................25
2.2.14.2
Restricciones de claves foráneas SLTMODOPC ........................................26
2.2.14.3
PK, UK, & Check Constraints en SLTMODOPC .........................................26
2.2.14.4
Objetos referenciados por la tabla SLTMODOPC .......................................26
SISLAB – DICCIONARIO DE DATOS
iv
2.2.14.5
Objetos que hacen referencia a la tabla SLTMODOPC ..............................26
2.2.15
Tabla SLTPARGEN ....................................................................................26
2.2.15.1
Índices en SLTPARGEN .............................................................................27
2.2.15.2
PK, UK, & Check Constraints en SLTPARGEN ..........................................27
2.2.15.3
Objetos que hacen referencia a la tabla SLTPARGEN ...............................27
2.2.16
Tabla SLTPERMODOPC ............................................................................27
2.2.16.1
Índices en SLTPERMODOPC ....................................................................28
2.2.16.2
Restricciones de claves foráneas SLTPERMODOPC .................................28
2.2.16.3
PK, UK, & Check Constraints en SLTPERMODOPC ..................................28
2.2.16.4
Objetos referenciados por la tabla SLTPERMODOPC ................................29
2.2.16.5
Objetos que hacen referencia a la tabla SLTPERMODOPC .......................29
2.2.17
Tabla SLTPERSIS ......................................................................................29
2.2.17.1
Índices en SLTPERSIS...............................................................................29
2.2.17.2
PK, UK, & Check Constraints en SLTPERSIS ............................................30
2.2.17.3
Objetos que hacen referencia a la tabla SLTPERSIS .................................30
2.2.18
Tabla SLTRESEQUCLA .............................................................................30
2.2.18.1
Índices en SLTRESEQUCLA ......................................................................31
2.2.18.1.1 Restricciones de claves foráneas SLTRESEQUCLA .......................................32 2.2.18.2
PK, UK, & Check Constraints en SLTRESEQUCLA ...................................32
2.2.18.3
Objetos referenciados por la tabla SLTRESEQUCLA .................................32
2.2.18.4
Objetos que hacen referencia a la tabla SLTRESEQUCLA ........................32
2.2.19
Tabla SLTRESEQUPER .............................................................................32
2.2.19.1
Objetos que hacen referencia a la tabla SLTRESEQUPER ........................33
2.2.20
Tabla SLTRESLABCLA ..............................................................................33
2.2.20.1
Índices en SLTRESLABCLA .......................................................................34
2.2.20.2
PK, UK, & Check Constraints en SLTRESLABCLA ....................................34
2.2.20.3
Objetos que hacen referencia a la tabla SLTRESLABCLA .........................34
2.2.21
Tabla SLTUSULABPSW .............................................................................35
2.2.21.1
Objetos que hacen referencia a la tabla SLTUSULABPSW ........................35
2.2.22
Tabla SLTUSUSIS ......................................................................................35
2.2.22.1
Índices en SLTUSUSIS ..............................................................................36
2.2.22.2
Restricciones de claves foráneas SLTUSUSIS ...........................................36
2.2.22.3
PK, UK, & Check Constraints en SLTUSUSIS ............................................36
2.2.22.4
Objetos referenciados por la tabla SLTUSUSIS ..........................................36
2.2.22.5
Objetos que hacen referencia a la tabla SLTUSUSIS .................................36
3
VISTAS ......................................................................................................38
SISLAB – DICCIONARIO DE DATOS
v
3.1
PARAMETRIZACIÓN .................................................................................38
3.2
LISTA DE VISTAS ......................................................................................38
3.2.1
Vista SLV_CICACA ....................................................................................38
3.2.2
Vista SLV_DOCMAT ..................................................................................39
3.2.3
Vista SLV_ESTMTR ...................................................................................39
3.2.4
Vista SLV_MATHOR ..................................................................................40
3.2.5
Vista SLV_USULAB....................................................................................40
SISLAB – DICCIONARIO DE DATOS
6
1
INTRODUCCIÓN
El presente diccionario de datos tiene como finalidad describir las características lógicas de los datos que están siendo utilizados por el sistema informático SISLAB.
SISLAB – DICCIONARIO DE DATOS
7
2 2.1
TABLAS
PARAMETRIZACIÓN Las tablas del sistema informático SISLAB inician con el prefijo SLT, seguidas de las tres primeras letras cada una de las palabras que describen su contenido. Las tablas para uso del servidor RADIUS inician con el prefijo RAD y REA.
2.2
LISTA DE TABLAS A continuación se enlistan todas las tablas existentes:
Nombre de la tabla
Comentario
RADACCT
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
RADCHECK
Tabla de datos de expiración de la reservación, el servidor RADIUS verifica a través de esta tabla la reservación de usuario se encuentre vigente, caso contrario se debe dar por finalizada.
RADGROUPCHECK
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
RADGROUPREPLY
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
RADREPLY
Tabla de datos de inicio de reservación, el servidor RADIUS verifica a través de esta tabla que el usuario tenga una reservación en curso, caso contrario no lo autentica.
RADUSERGROUP
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
REALMGROUP
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
REALMS
Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB).
SLTCICACAFEC
Tabla de fechas por ciclos académicos. Esta tabla contiene todas las fechas que existen entre el rango de fecha inicio y fecha fin de cada ciclo académico en el que se van a realizar reservaciones.
SLTEQU
Tabla de computadoras por laboratorio.
SISLAB – DICCIONARIO DE DATOS
8
SLTGRUUSULAB
Tabla de grupos de usuarios de laboratorios. El identificador GRUUSULABID se encuentra directamente relacionado con el tipo de usuario asignado en la vista SLV_USULAB y debe obligatoriamente ser: (1) Usuarios externos, (2) Estudiantes, (3) Empleados y (4) Docentes.
SLTHOR
Tabla de franjas horarias.
SLTHORLAB
Tabla de horarios de atención de laboratorios de computación.
SLTLAB
Tabla de laboratorios de computación.
SLTMODOPC
Tabla de módulos y opciones del sistema.
SLTPARGEN
Tabla de parámetros generales del sistema.
SLTPERMODOPC Tabla de módulos y opciones del sistema por perfil. SLTPERSIS
Tabla de perfiles de usuarios del sistema.
SLTRESEQUCLA
Tabla de reservaciones de computadoras para clases.
SLTRESEQUPER
Tabla de reservaciones de computadoras para uso personal.
SLTRESLABCLA
Tabla de reservaciones de laboratorios para clases.
SLTUSULABPSW
Tabla de usuarios de laboratorios y sus contraseñas.
SLTUSUSIS
Tabla de usuarios del sistema.
2.2.1
Tabla RADACCT Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
Nombre de la columna
Tipo de dato
No nulo?
1
RADACCTID
INTEGER
Y
2
ACCTSESSIONID
VARCHAR2(64 BYTE)
Y
3
ACCTUNIQUEID
VARCHAR2(32 BYTE)
4
USERNAME
VARCHAR2(64 BYTE)
Y
5
GROUPNAME
VARCHAR2(32 BYTE)
Y
6
REALM
VARCHAR2(30 BYTE)
7
NASIPADDRESS
VARCHAR2(15 BYTE)
8
NASPORTID
VARCHAR2(15 BYTE)
9
NASPORTTYPE
VARCHAR2(32 BYTE)
10
ACCTSTARTTIME
TIMESTAMP(6) WITH TIME
Y
SISLAB – DICCIONARIO DE DATOS
9
Col #
Nombre de la columna
No nulo?
Tipo de dato
ZONE 11
ACCTSTOPTIME
TIMESTAMP(6) WITH TIME ZONE
12
ACCTSESSIONTIME
NUMBER(19)
13
ACCTAUTHENTIC
VARCHAR2(32 BYTE)
14
CONNECTINFO_START
VARCHAR2(50 BYTE)
15
CONNECTINFO_STOP
VARCHAR2(50 BYTE)
16
ACCTINPUTOCTETS
NUMBER(19)
17
ACCTOUTPUTOCTETS
NUMBER(19)
18
CALLEDSTATIONID
VARCHAR2(50 BYTE)
19
CALLINGSTATIONID
VARCHAR2(50 BYTE)
20
ACCTTERMINATECAUSE
VARCHAR2(32 BYTE)
21
SERVICETYPE
VARCHAR2(32 BYTE)
22
FRAMEDPROTOCOL
VARCHAR2(32 BYTE)
23
FRAMEDIPADDRESS
VARCHAR2(15 BYTE)
24
ACCTSTARTDELAY
NUMBER(12)
25
ACCTSTOPDELAY
NUMBER(12)
26
XASCENDSESSIONSVRK EY
VARCHAR2(10 BYTE)
2.2.1.1 Unicidad
Índices en RADACCT Nombre del índice
Columnas
ACCTSESSIONID, USERNAME, SYS_EXTRACT_UTC("ACCTSTARTTIME"), UNIQUE RADACCT_IDX1 SYS_EXTRACT_UTC("ACCTSTOPTIME"), NASIPADDRESS, FRAMEDIPADDRESS UNIQUE SYS_C0032821
RADACCTID
2.2.1.2 PK, UK, & Check Constraints en RADACCT Nombre
Tipo
Estado
Columnas
SYS_C0032821 Clave primaria HABILITADO RADACCTID
SISLAB – DICCIONARIO DE DATOS
10
2.2.2 Tabla RADCHECK Tabla de datos de expiración de la reservación, el servidor RADIUS verifica a través de esta tabla la reservación de usuario se encuentre vigente, caso contrario se debe dar por finalizada. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
ID
INTEGER
Y
Identificador secuencial del registro.
2
USERNAME
VARCHAR2(30 BYTE)
Y
Nombre de usuario.
3
ATTRIBUTE
VARCHAR2(64 BYTE)
4
OP
VARCHAR2(2 BYTE)
5
VALUE
2.2.2.1
Atributo asignado al usuario: Expiration, Calling-Station-Id, AuthType y User-Password. Operador relacional == (igual igual), := (dos puntos, igual).
Y
Valor asignado al atributo, que corresponde para “Expitarion”, la fecha y hora de inicio de la reservación en formato Mon dd aaaa hh:mm:ss, por ejemplo Jan 19 2009 12:00:00, para “Calling-Station-Id”, la dirección MAC de la computadora reservada, para “Auth-Type” Local, y para “User-Passwoord” la contraseña de desbloqueo de la computadora.
VARCHAR2(40 BYTE)
Índices en RADCHECK Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032824 ID
2.2.2.2 Triggers en RADCHECK Nombre del trigger
Estado
Evento
INSERT RADCHECK_SERIALNUMBER HABILITADO OR UPDATE
Tipo
Cuerpo
BEFORE EACH ROW
BEGIN if ( :new.id = 0 or :new.id is null ) then SELECT radcheck_seq.nextval into :new.id from dual; end if; END;
SISLAB – DICCIONARIO DE DATOS
11
2.2.2.3 PK, UK, & Check Constraints en RADCHECK Nombre
Tipo
Estado
Columnas
SYS_C0032824 Clave primaria HABILITADO ID
2.2.2.4 Objetos que hacen referencia a la tabla RADCHECK Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
RADCHECK_SERIALNUMBER Trigger
2.2.3 Tabla RADGROUPCHECK Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
Nombre de columna
Tipo de dato
No nulo?
1
ID
INTEGER
Y
2
GROUPNAME
VARCHAR2(20 BYTE)
Y
3
ATTRIBUTE
VARCHAR2(64 BYTE)
4
OP
CHAR(2 BYTE)
5
VALUE
VARCHAR2(40 BYTE)
Y
2.2.3.1 Índices en RADGROUPCHECK Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032827 ID UNIQUE SYS_C0032828 GROUPNAME
2.2.3.2 PK, UK, & Check Constraints en RADGROUPCHECK Nombre
Tipo
Estado
Columnas
SYS_C0032827 Clave primaria HABILITADO ID SYS_C0032828 Única
HABILITADO GROUPNAME
SISLAB – DICCIONARIO DE DATOS
12
2.2.4
Tabla RADGROUPREPLY Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
2.2.4.1
Nombre de columna
Tipo de dato
No nulo?
1
ID
INTEGER
Y
2
GROUPNAME
VARCHAR2(20 BYTE)
Y
3
ATTRIBUTE
VARCHAR2(64 BYTE)
4
OP
CHAR(2 BYTE)
5
VALUE
VARCHAR2(40 BYTE)
Y
Índices en RADGROUPREPLY Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032831 ID UNIQUE SYS_C0032832 GROUPNAME
2.2.4.2 PK, UK, & Check Constraints en RADGROUPREPLY Nombre
Tipo
Estado
Columnas
SYS_C0032831 Clave primaria HABILITADO ID SYS_C0032832 Única
HABILITADO GROUPNAME
2.2.5 Tabla RADREPLY Tabla de datos de inicio de reservación, el servidor RADIUS verifica a través de esta tabla que el usuario tenga una reservación en curso, caso contrario no lo autentica. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
ID
INTEGER
Y
Identificador secuencial del registro.
2
USERNAME
VARCHAR2(30 BYTE)
Y
Nombre de usuario.
3
ATTRIBUTE
VARCHAR2(64 BYTE)
Atributo asignado al usuario: ReplyMessage.
SISLAB – DICCIONARIO DE DATOS
13
Col #
4
5
Nombre de columna
OP
CHAR(2 BYTE)
VALUE
2.2.5.1
No nulo?
Tipo de dato
Y
Comentarios
Operador de asignación: = (igual). Valor asignado al atributo, que corresponde a la fecha y hora de inicio de la reservación en formato aaaa-mm-dd hh:mm:ss, por ejemplo 2009-07-30 17:30:00.
VARCHAR2(40 BYTE)
Índices en RADREPLY Unicidad
Nombre del índice
Columnas
NON-UNIQUE RADREPLY_IDX1 USERNAME UNIQUE
SYS_C0032835
ID
2.2.5.2 PK, UK, & Check Constraints en RADREPLY Nombre
Tipo
Estado
Columnas
SYS_C0032835 Clave primaria HABILITADO ID
2.2.5.3 Objetos que hacen referencia a la tabla RADREPLY
2.2.6
Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
Tabla RADUSERGROUP Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
Nombre de columna
Tipo de dato
No nulo?
1
ID
INTEGER
Y
2
USERNAME
VARCHAR2(30 BYTE)
Y
3
GROUPNAME
VARCHAR2(30 BYTE)
SISLAB – DICCIONARIO DE DATOS
14
2.2.6.1
Índices en RADUSERGROUP Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032837 ID UNIQUE SYS_C0032838 USERNAME
2.2.6.2 Triggers en RADUSERGROUP Nombre del trigger
Estado
RADUSERGROUP_SERIALNUM BER
2.2.6.3
Evento
HABILITAD O
INSER T OR UPDAT E
Tipo
Cuerpo
BEFOR E EACH ROW
BEGIN if ( :new.id = 0 or :new.id is null ) then SELECT radusergroup_seq.nex tval into :new.id from dual; end if; END;
PK, UK, & Check Constraints en RADUSERGROUP Nombre
Tipo
Estado
Columnas
SYS_C0032837 Clave primaria HABILITADO ID SYS_C0032838 Única
2.2.6.4
HABILITADO USERNAME
Objetos que hacen referencia a la tabla RADUSERGROUP Propietario
SISLAB
Nombre del objeto
Tipo de objeto
RADUSERGROUP_SERIALNUMBER Trigger
2.2.7 Tabla REALMGROUP Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
Nombre de columna
Tipo de dato
No nulo?
1
ID
INTEGER
Y
2
REALMNAME
VARCHAR2(30 BYTE)
Y
3
GROUPNAME
VARCHAR2(30 BYTE)
SISLAB – DICCIONARIO DE DATOS
15
2.2.7.1
Índices en REALMGROUP Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032840 ID UNIQUE SYS_C0032841 REALMNAME
2.2.7.2 PK, UK, & Check Constraints en REALMGROUP Nombre
Tipo
Estado
Columnas
SYS_C0032840 Clave primaria HABILITADO ID SYS_C0032841 Única
HABILITADO REALMNAME
2.2.8 Tabla REALMS Tabla del servidor RADIUS (no se la utiliza para el funcionamiento del sistema informático SISLAB). Col #
2.2.8.1
Nombre de columna
Tipo de dato
No nulo?
1
ID
INTEGER
Y
2
REALMNAME
VARCHAR2(64 BYTE)
3
NAS
VARCHAR2(128 BYTE)
4
AUTHPORT
INTEGER
5
OPTIONS
VARCHAR2(128 BYTE)
Índices en REALMS Unicidad
Nombre del índice
Columnas
UNIQUE SYS_C0032842 ID
2.2.8.2 PK, UK, & Check Constraints en REALMS Nombre
Tipo
Estado
Columnas
SYS_C0032842 Clave primaria HABILITADO ID
SISLAB – DICCIONARIO DE DATOS
16
2.2.9 Tabla SLTCICACAFEC Tabla de fechas por ciclos académicos. Esta tabla contiene todas las fechas que existen entre el rango de fecha inicio y fecha fin de cada ciclo académico en el que se van a realizar reservaciones. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
CICACAID
VARCHAR2(10 BYTE)
Y
Identificador de ciclo académico.
2
FECHA
DATE
Y
Fecha en formato dd/mm/aaa, por ejemplo 20/06/2009.
Y
Número de día al que corresponde la fecha: (1)Lunes, (2)Martes, (3)Miércoles, (4)Jueves, (5)Viernes, (6)Sábado o (7)Domingo.
Y
Día de la semana al que corresponde el número de día: Lunes, Martes, Miércoles, Jueves o Viernes.
3
4
NUMDIA
DIA
2.2.9.1
VARCHAR2(2 BYTE)
VARCHAR2(20 BYTE)
Objetos que hacen referencia a la tabla SLTCICACAFEC Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_GENERAL Cuerpo de paquete
2.2.10 Tabla SLTEQU Tabla de computadoras por laboratorio. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
EQUCOD
NUMBER
Y
Código secuencial computadora.
2
LABCOD
NUMBER
Y
Código único del laboratorio.
3
EQUMAC
VARCHAR2(30 BYTE)
Y
Dirección MAC de la computadora.
Y
Nombre de la computadora. Este nombre se mostrará a los usuarios para que identifiquen la computadora que desean reservar.
4
EQUNOM
VARCHAR2(100 BYTE)
5
EQUDES
VARCHAR2(300 BYTE)
Breve descripción computadora.
único
de
de
la
la
SISLAB – DICCIONARIO DE DATOS
17
Col #
Nombre de columna
No nulo?
Tipo de dato
Comentarios
6
EQUORD
NUMBER(3)
Y
Orden del equipo para graficación en la aplicación.
su
7
EQUEST
VARCHAR2(20 BYTE)
Y
Estado de la computadora: Habilitado, Deshabilitado.
8
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
9
FECCRE
DATE
Fecha y hora de creación del registro.
10
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
11
FECMOD
DATE
Fecha y hora de modificación del registro.
2.2.10.1 Índices en SLTEQU Unicidad
Nombre del índice
Columnas
UNIQUE SLPKEQU
EQUMAC
UNIQUE SLTEQU_PK
EQUCOD
UNIQUE SLUKEQU_2
LABCOD, EQUORD
2.2.10.2 Triggers en SLTEQU Nombre del trigger
Estado
Evento
INSERT EQU_SERIALNUMBER HABILITADO OR UPDATE
Tipo
Cuerpo
BEFORE EACH ROW
BEGIN if ( :new.equcod = 0 or :new.equcod is null ) then SELECT slsequ.nextval into :new.equcod from dual; end if; END;
2.2.10.3 Restricciones de claves foráneas SLTEQU
Nombre
Columnas
Ref Tabla Propietario
SLFK_TEQU_RF_TLAB LABCOD SISLAB
Ref Tabla Nombre
SLTLAB
Ref Columnas
Estado
LABCOD
HABILITADO
SISLAB – DICCIONARIO DE DATOS
18
2.2.10.4 PK, UK, & Check Constraints en SLTEQU Nombre
Tipo
Estado
Columnas
SLTEQU_PK Clave primaria HABILITADO EQUCOD SLUKEQU_1 Única
HABILITADO EQUMAC
SLUKEQU_2 Única
HABILITADO LABCOD, EQUORD
2.2.10.5 Objetos referenciados por la tabla SLTEQU Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTLAB
Tabla
2.2.10.6 Objetos que hacen referencia a la tabla SLTEQU Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS
Cuerpo de paquete
SISLAB
EQU_SERIALNUMBER
Trigger
2.2.11 Tabla SLTGRUUSULAB Tabla de grupos de usuarios de laboratorios. El identificador GRUUSULABID se encuentra directamente relacionado con el tipo de usuario asignado en la vista SLV_USULAB y debe obligatoriamente ser: (1)Usuarios externos, (2)Estudiantes, (3)Empleados y (4)Docentes. Col #
1
Nombre de columna
GRUUSULABID
Tipo de dato
NUMBER(2)
No nulo?
Comentarios
Y
Identificador del grupo de usuarios de laboratorios: (1)Usuarios externos, (2)Estudiantes, (3)Empleados o (4)Docentes.
SISLAB – DICCIONARIO DE DATOS
19
Col #
2
3
4
5
6
Nombre de columna
GRUUSULABDES
Tipo de dato
VARCHAR2(100 BYTE)
GRUUSULABTIEMAXRES NUMBER(4)
GRUUSULABEST
GRUSULABTIEMINRES
GRUUSULABPER
VARCHAR2(20 BYTE)
No nulo?
Comentarios
Y
Descripción del grupo de usuarios de laboratorios: Usuarios externos, Estudiantes, Empleados y Docentes.
Y
Tiempo máximo de reservación en minutos del grupo de usuarios de laboratorios.
Y
Estado del grupo de usuarios de laboratorios.
NUMBER(4)
Tiempo mínimo de reservación en minutos del grupo de usuarios de laboratorios.
VARCHAR2(3 BYTE)
Periodo de restablecimiento del tiempo máximo de la reservación: (DIA)Diario, (SEM)Semanal o (MEN)Mensual.
2.2.11.1 Índices en SLTGRUUSULAB Unicidad
Nombre del índice
Columnas
UNIQUE SLPKGRUPERLAB GRUUSULABID
2.2.11.2 PK, UK, & Check Constraints en SLTGRUUSULAB Nombre
Tipo
Estado
Columnas
SLPKGRUPERLAB Clave primaria HABILITADO GRUUSULABID
SISLAB – DICCIONARIO DE DATOS
20
2.2.11.3 Objetos que hacen referencia a la tabla SLTGRUUSULAB Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_USUARIOS Cuerpo de paquete
2.2.12 Tabla SLTHOR Tabla de franjas horarias. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
HORID
NUMBER
Y
Identificador secuencial único de la franja horaria.
2
HORHORINI
NUMBER(2)
Y
Hora inicio de la franja horaria.
3
HORMININI
NUMBER(2)
Y
Minutos inicio de la franja horaria.
4
HORHORFIN
NUMBER(2)
Y
Hora fin de la franja horaria.
5
HORMINFIN
NUMBER(2)
Y
Minutos fin de la franja horaria.
6
HOREST
VARCHAR2(20 BYTE)
Y
Estado de la franja horaria: Habilitado o Deshabilitado.
2.2.12.1 Índices en SLTHOR Unicidad
Nombre del índice
Columnas
UNIQUE SLPKHOR
HORID
UNIQUE SLUKHOR_1
HORHORINI, HORMININI, HORHORFIN, HORMINFIN
2.2.12.2 Triggers en SLTHOR Nombre del trigger
Estado
HOR_SERIALNUMBER HABILITADO
Evento
INSERT OR UPDATE
Tipo
Cuerpo
BEFORE EACH ROW
BEGIN if ( :new.horid = 0 or :new.horid is null ) then SELECT slshorid.nextval into :new.horid from dual; end if; END;
SISLAB – DICCIONARIO DE DATOS
21
2.2.12.3 PK, UK, & Check Constraints en SLTHOR Nombre
SLTHOR_PK
Tipo
Estado
Clave primaria
Columnas
HABILITADO HORID
SLUKHOR_1 Única
HABILITADO
HORHORINI, HORMININI, HORHORFIN, HORMINFIN
2.2.12.4 Objetos que hacen referencia a la tabla SLTHOR Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTHORLAB
Tabla (FK)
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS
Cuerpo de paquete
SISLAB
HOR_SERIALNUMBER Trigger
2.2.12.5 Tabla SLTHORLAB Tabla de horarios de atención de laboratorios de computación. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
HORLABID
NUMBER(5)
Y
Identificador secuencial único del horario de atención del laboratorio de computación.
2
LABCOD
NUMBER
Y
Código secuencial único del laboratorio de computación.
3
HORLABDIA NUMBER
Y
Número de día de la semana: (1)Lúnes, (2)Martes, (3)Miércoles, (4)Jueves, (5)Viernes, (6)Sábado o (7)Domingo.
4
HORID
NUMBER
Y
Identificador secuencial único de la franja horaria.
5
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
6
FECCRE
DATE
Fecha y hora de creación del registro.
7
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
SISLAB – DICCIONARIO DE DATOS
22
Col #
8
Nombre de columna
No nulo?
Tipo de dato
FECMOD
DATE
Comentarios
Fecha y hora de modificación del registro.
2.2.12.6 Índices en SLTHORLAB Unicidad
Nombre del índice
UNIQUE SLPKHORLAB
Columnas
HORLABID
2.2.12.7 Triggers en SLTHORLAB Nombre del trigger
Estado
Evento
Tipo
INSERT HORLAB_SERIALNUMBER HABILITADO OR UPDATE
Cuerpo
BEFORE EACH ROW
BEGIN if ( :new.horlabid = 0 or :new.horlabid is null ) then SELECT slshorlab.nextval into :new.horlabid from dual; end if; END;
SLFK_THORLAB_RF_TLAB
LABCOD SISLAB SLTLAB
SLFK_THORLAB_RF_THOR HORID
Estado
Ref Columnas
Columnas
Ref Tabla Nombre
Nombre
Ref Tabla Propietari o
2.2.12.8 Restricciones de claves foraneas SLTHORLAB
LABCOD HABILITADO
SISLAB SLTHOR HORID
HABILITADO
2.2.12.9 PK, UK, & Check Constraints en SLTHORLAB Nombre
Tipo
Estado
Columnas
SLPKHORLAB Clave primaria HABILITADO HORLABID
2.2.12.10
Objetos referenciados por la tabla SLTHORLAB Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTLAB
Tabla
SISLAB – DICCIONARIO DE DATOS
23
2.2.12.11
Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTHOR
Tabla
Objetos que hacen referencia a la tabla SLTHORLAB Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS
Cuerpo de paquete
SISLAB
HORLAB_SERIALNUMBER Trigger
2.2.13 Tabla SLTLAB Tabla de laboratorios de computación. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
LABCOD
NUMBER
Y
Identificador secuencial único laboratorio de computación.
del
2
LABNOM
VARCHAR2(100 BYTE)
Y
Nombre del computación.
de
3
LABDES
VARCHAR2(300 BYTE)
Y
Breve descripción del laboratorio de computación.
4
LABUBI
VARCHAR2(300 BYTE)
Y
Ubicación del computación.
5
LABCOL
NUMBER(2)
Y
Número de columnas del laboratorio de computación para graficación de las computadoras en la aplicación.
6
LABORD
NUMBER(3)
Y
Orden de graficación del laboratorio de computación en la aplicación.
7
LABEST
VARCHAR2(20 BYTE)
Y
Estado del laboratorio de computación: Habilitado o Deshabilitado.
8
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
9
FECCRE
DATE
Fecha y hora de creación del registro.
10
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
11
FECMOD
DATE
Fecha y hora de modificación del registro.
laboratorio
laboratorio
de
SISLAB – DICCIONARIO DE DATOS
24
2.2.13.1 Índices en SLTLAB Unicidad
Nombre del índice
Columnas
UNIQUE SLPKLAB
LABCOD
UNIQUE SLUKLAB_1
LABNOM
UNIQUE SLUKLAB_2
LABORD
2.2.13.2 Triggers en SLTLAB Nombre del trigger
Estado
Evento
LAB_SERIALNUMBER HABILITADO
INSERT OR UPDATE
Tipo
Cuerpo
BEFORE EACH ROW
BEGIN if ( :new.labcod = 0 or :new.labcod is null ) then SELECT slslab.nextval into :new.labcod from dual; end if; END;
2.2.13.3 PK, UK, & Check Constraints en SLTLAB Nombre
Tipo
Estado
Columnas
SLTLAB_PK Clave primaria HABILITADO LABCOD SLUKLAB_1 Única
HABILITADO LABNOM
SLUKLAB_2 Única
HABILITADO LABORD
2.2.13.4 Objetos que hacen referencia a la tabla SLTLAB Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTEQU
Tabla (FK)
SISLAB
SLTHORLAB
Tabla (FK)
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS Cuerpo de paquete
SISLAB
LAB_SERIALNUMBER Trigger
SISLAB – DICCIONARIO DE DATOS
25
2.2.14 Tabla SLTMODOPC Tabla de módulos y opciones del sistema. Col #
1
Nombre de columna
MODOPCCOD
Tipo de dato
VARCHAR2(10 BYTE)
No nulo?
Comentarios
Y
Código del módulo/opción.
2
MODOPCNOM
VARCHAR2(200 BYTE)
Y
Nombre Si este caracter que es menú.
del módulo/opción. campo contiene el "-" (guión) significa un separador de
3
MODOPCTIP
VARCHAR2(20 BYTE)
Y
Tipo: (M)Módulo (O)Opción.
4
MODOPCFRM
VARCHAR2(100 BYTE)
5
MODOPCORD
NUMBER(5)
6
MODOPCCODPAD VARCHAR2(10 BYTE)
Código del módulo padre. Todas las opciones deben tener lleno este campo.
7
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
8
FECCRE
DATE
Fecha y hora de creación del registro.
9
USUMOD
VARCHAR2(100 BYTE)
Usuario que registro.
10
FECMOD
DATE
Fecha y hora de modificación del registro.
o
Nombre del formulario del móldulo/opción. Y
Orden de presentación del móldulo/opción.
modificó
el
2.2.14.1 Índices en SLTMODOPC Unicidad
Nombre del índice
UNIQUE SLPKMODOPC
Columnas
MODOPCCOD
SISLAB – DICCIONARIO DE DATOS
26
Ref Tabla Propietario
Ref Tabla Nombre
Ref Columnas
Estado
SISLAB
SLTMODOPC
MODOPCCOD
HABILITADO
SLFK_TMODOPC_RF_TMODOPC
Columnas
Nombre
MODOPCCODPAD
2.2.14.2 Restricciones de claves foráneas SLTMODOPC
2.2.14.3 PK, UK, & Check Constraints en SLTMODOPC Nombre
Tipo
Estado
Columnas
SLPKMODOPC Clave primaria HABILITADO MODOPCCOD
2.2.14.4 Objetos referenciados por la tabla SLTMODOPC Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTMODOPC
Tabla
2.2.14.5 Objetos que hacen referencia a la tabla SLTMODOPC Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTMODOPC
Tabla (FK)
SISLAB
SLTPERMODOPC
Tabla (FK)
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_SEGURIDADES Cuerpo de paquete
2.2.15 Tabla SLTPARGEN Tabla de parámetros generales del sistema.
SISLAB – DICCIONARIO DE DATOS
27
Col #
1
Nombre de columna
No nulo?
Tipo de dato
PARGENID
VARCHAR2(20 BYTE)
Comentarios
Y
Identificador del general del sistema.
parámetro
2
PARGENCLA
VARCHAR2(50 BYTE)
Y
Clasificación del parámetro general del sistema. La clasificación agrupa el conjunto de parámetros generales del sistema.
3
PARGENVAL
VARCHAR2(200 BYTE)
Y
Valor del parámetro general del sistema.
4
PARGENDES
VARCHAR2(100 BYTE)
Y
Descripción del general del sistema.
5
PARGENORD
NUMBER
Y
Orden del parámetro general del sistema.
parámetro
2.2.15.1 Índices en SLTPARGEN Unicidad
Nombre del índice
UNIQUE SLPKPARGEN
Columnas
PARGENID, PARGENCLA
2.2.15.2 PK, UK, & Check Constraints en SLTPARGEN Nombre
Tipo
Estado
Columnas
SLPKPARGEN Clave primaria HABILITADO PARGENID, PARGENCLA
2.2.15.3 Objetos que hacen referencia a la tabla SLTPARGEN Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_GENERAL Cuerpo de paquete
2.2.16 Tabla SLTPERMODOPC Tabla de módulos y opciones del sistema por perfil. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
PERSISCOD
VARCHAR2(10 BYTE)
Y
Código del perfil de usuarios del sistema.
2
MODOPCCOD
VARCHAR2(10 BYTE)
Y
Código del módulo/opción del
SISLAB – DICCIONARIO DE DATOS
28
Col #
Nombre de columna
No nulo?
Tipo de dato
Comentarios
sistema. 3
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
4
FECCRE
DATE
Fecha y hora de creación del registro.
5
USUMOD
VARCHAR2(100 BYTE)
Usuario registro.
6
FECMOD
DATE
Fecha y hora de modificación del registro.
que
modificó
el
2.2.16.1 Índices en SLTPERMODOPC Unicidad
Nombre del índice
Columnas
UNIQUE SLPKPERMODOPC PERSISCOD, MODOPCCOD
SISLAB
SLTPERSIS
PERSISCOD
HABILITADO
SLFK_TPERMODOPC_RF_TMODOPC
SISLAB
SLTMODOPC
MODOPCCOD
HABILITADO
Estado
PERSISCOD
Ref Tabla Nombre Ref Columnas
SLFK_TPERMODOPC_RF_TPER
MODOPCCOD
Nombre
Ref Tabla Propietario
Columnas
2.2.16.2 Restricciones de claves foráneas SLTPERMODOPC
2.2.16.3 PK, UK, & Check Constraints en SLTPERMODOPC Nombre
Tipo
Estado
Columnas
SLPKPERMODOPC Clave primaria HABILITADO PERSISCOD, MODOPCCOD
SISLAB – DICCIONARIO DE DATOS
29
2.2.16.4 Objetos referenciados por la tabla SLTPERMODOPC Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTPERSIS
Tabla
SISLAB
SLTMODOPC
Tabla
2.2.16.5 Objetos que hacen referencia a la tabla SLTPERMODOPC Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_SEGURIDADES Cuerpo de paquete
2.2.17 Tabla SLTPERSIS Tabla de perfiles de usuarios del sistema. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
PERSISCOD
VARCHAR2(10 BYTE)
Y
Código del perfil de usuarios.
2
PERSISNOM
VARCHAR2(100 BYTE)
Y
Nombre del perfil de usuarios.
3
PERSISDES
VARCHAR2(300 BYTE)
Y
Descripción usuarios.
4
PERSISEST
VARCHAR2(50 BYTE)
Estado del perfil de usuarios: Habilitado o Deshabilitado.
5
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
6
FECCRE
DATE
Fecha y hora de creación del registro.
7
USUMOD
VARCHAR2(100 BYTE)
Usuario registro.
8
FECMOD
DATE
Fecha y hora de modificación del registro.
que
del
perfil
modificó
de
el
2.2.17.1 Índices en SLTPERSIS Unicidad
Nombre del índice
UNIQUE SLPKPERSIS
Columnas
PERSISCOD
UNIQUE SLUKPERSIS_1 PERSISNOM
SISLAB – DICCIONARIO DE DATOS
30
2.2.17.2 PK, UK, & Check Constraints en SLTPERSIS Nombre
SLPKPERSIS
Tipo
Estado
Columnas
Clave primaria HABILITADO PERSISCOD
SLUKPERSIS_1 Única
HABILITADO PERSISNOM
2.2.17.3 Objetos que hacen referencia a la tabla SLTPERSIS Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTPERMODOPC
Tabla (FK)
SISLAB
SLTUSUSIS
Tabla (FK)
SISLAB
SLK_GENERAL
Cuerpo de paquete
SISLAB
SLK_SEGURIDADES Cuerpo de paquete
2.2.18 Tabla SLTRESEQUCLA Tabla de reservaciones de computadoras para clases. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
RESEQUCLAID
NUMBER
Y
Identificador secuencial único del registro de reservación de computadoras para clases.
2
CICACAID
VARCHAR2(10 BYTE)
Y
Identificador único del ciclo académico.
3
ESCID
VARCHAR2(10 BYTE)
Y
Identificador único de la escuela.
4
CARID
VARCHAR2(10 BYTE)
Y
Identificador de la carrera.
único
5
NIVCOD
NUMBER(2)
Y
Identificador del nivel.
único
6
PARCOD
CHAR(1 BYTE)
Y
Identificador del paralelo.
único
7
MATCOD
VARCHAR2(30 BYTE)
Y
Identificador de la materia.
único
8
LABCOD
VARCHAR2(10 BYTE)
Y
Identificador
SISLAB – DICCIONARIO DE DATOS
31
Col #
Nombre de columna
No nulo?
Tipo de dato
Comentarios
secuencial único del laboratorio de computación. 9
EQUMAC
VARCHAR2(30 BYTE)
Y
Dirección MAC del equipo.
10
USULABCOD
VARCHAR2(50 BYTE)
Y
Código identificación usuario laboratorios.
de del de
11
USULABPSW
VARCHAR2(10 BYTE)
Y
Contraseña de desbloqueo de la computadora.
12
RESLABCLAFECHORINI
DATE
Y
Fecha y hora inicio de reservación.
13
RESLABCLAFECHORTER DATE
Y
Fecha y hora fin de la reservación.
14
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
15
FECCRE
DATE
Fecha y hora de creación del registro.
16
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
17
FECMOD
DATE
Fecha y hora de modificación del registro.
de la
2.2.18.1 Índices en SLTRESEQUCLA Unicidad
Nombre del índice
Columnas
UNIQUE SLPKRESEQUCLA RESEQUCLAID
SISLAB – DICCIONARIO DE DATOS
32
Columnas
Ref Tabla Propietario
Ref Tabla Nombre
Ref Columnas
Estado
CICACAID, ESCID, CARID, NIVCOD, PARCOD, MATCOD, LABCOD
SISLAB
SLTRESLABCLA
CICACAID,ESCID, CARID,NIVCOD, PARCOD,MATCOD, LABCOD
HABILITADO
2.2.18.1.1 Restricciones de claves foráneas SLTRESEQUCLA
Nombre
SLFK_TRESEQUCLA_RF_TRESLABCLA
2.2.18.2 PK, UK, & Check Constraints en SLTRESEQUCLA Nombre
Tipo
Estado
Columnas
SLPKRESEQUCLA Clave primaria HABILITADO RESEQUCLAID
2.2.18.3 Objetos referenciados por la tabla SLTRESEQUCLA Propietario
SISLAB
Nombre del objeto
Tipo de objeto
SLTRESLABCLA Tabla
2.2.18.4 Objetos que hacen referencia a la tabla SLTRESEQUCLA Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS Cuerpo de paquete
SISLAB
SLK_REPORTES
Cuerpo de paquete
2.2.19 Tabla SLTRESEQUPER Tabla de reservaciones de equipos para uso personal.
SISLAB – DICCIONARIO DE DATOS
33
Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
RESEQUPERID
INTEGER
Y
Identificador único de reservaciones personales.
2
CICACAID
VARCHAR2(10 BYTE)
Y
Identificador académico.
3
LABCOD
VARCHAR2(10 BYTE)
Y
Identificador secuencial único del laboratorio de computación.
4
EQUMAC
VARCHAR2(30 BYTE)
Y
Dirección MAC computadora.
5
USULABCOD
VARCHAR2(50 BYTE)
Y
Nombre de usuario para desbloqueo de la computadora.
6
RESLABFECHOR INI
DATE
Y
Fecha y hora reservación.
inicio
de
la
7
RESLABFECHOR TER
DATE
Y
Fecha y hora reservación.
fin
de
la
8
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
9
FECCRE
DATE
Fecha y hora de creación del registro.
10
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
11
FECMOD
DATE
Fecha y hora de modificación del registro.
único
del
las ciclo
de
la
2.2.19.1 Objetos que hacen referencia a la tabla SLTRESEQUPER Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_EQUIPOS
Cuerpo de paquete
SISLAB
SLK_LABORATORIOS Cuerpo de paquete
SISLAB
SLK_REPORTES
Cuerpo de paquete
SISLAB
SLK_USUARIOS
Cuerpo de paquete
2.2.20 Tabla SLTRESLABCLA Tabla de reservaciones de laboratorios para clases. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
SISLAB – DICCIONARIO DE DATOS
34
Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
CICACAID
VARCHAR2(10 BYTE)
Y
Identificador académico.
único
del
ciclo
2
ESCID
VARCHAR2(10 BYTE)
Y
Identificador único de la escuela.
3
CARID
VARCHAR2(10 BYTE)
Y
Identificador único de la carrera.
4
NIVCOD
NUMBER(2)
Y
Identificador único del nivel.
5
PARCOD
CHAR(1 BYTE)
Y
Identificador único del paralelo.
6
MATCOD
VARCHAR2(30 BYTE)
Y
Identificador único de la materia.
7
LABCOD
VARCHAR2(10 BYTE)
Y
Identificador secuencia único del laboratorio de computación.
8
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
9
FECCRE
DATE
Fecha y hora de creación del registro.
10
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
11
FECMOD
DATE
Fecha y hora de modificación del registro.
2.2.20.1 Índices en SLTRESLABCLA Unicidad
Nombre del índice
Columnas
UNIQUE SLPKRESLABCLA
CICACAID, ESCID, CARID, NIVCOD, PARCOD, MATCOD, LABCOD
2.2.20.2 PK, UK, & Check Constraints en SLTRESLABCLA Nombre
Tipo
SLPKRESLABCLA
Clave primaria
Estado
HABILITADO
Columnas
CICACAID, ESCID, CARID, NIVCOD, PARCOD, MATCOD, LABCOD
2.2.20.3 Objetos que hacen referencia a la tabla SLTRESLABCLA Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTRESEQUCLA
Tabla (FK)
SISLAB
SLK_LABORATORIOS Cuerpo de paquete
SISLAB – DICCIONARIO DE DATOS
35
2.2.21 Tabla SLTUSULABPSW Tabla de usuarios de laboratorios y sus contraseñas. Col #
Nombre de columna
1
USULABCOD
VARCHAR2(20 BYTE)
USULABPSW
Contraseña del usuario de laboratorios para autenticarse en las reservaciones, VARCHAR2(100 BYTE) y desbloquear computadoras previa reservación.
2
Tipo de dato
Comentarios
Código de identificación del usuario de laboratorios.
2.2.21.1 Objetos que hacen referencia a la tabla SLTUSULABPSW Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_USUARIOS Cuerpo de paquete
2.2.22 Tabla SLTUSUSIS Tabla de usuarios del sistema Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
USUSISCOD
VARCHAR2(100 BYTE)
Y
Código del usuario del sistema.
2
USUSISNOM
VARCHAR2(200 BYTE)
Y
Nombre del usuario del sistema.
3
USUSISDEP
VARCHAR2(200 BYTE)
Y
Departamento al que pertenece el usuario del sistema.
4
USUSISCAR
VARCHAR2(200 BYTE)
Y
Cargo que desempeña el usuario del sistema.
5
PERSISCOD
VARCHAR2(10 BYTE)
Y
Identificador secuencial único del perfil de usuario del sistema.
6
USUSISPSW
VARCHAR2(50 BYTE)
Y
Contraseña encriptada del usuario del sistema.
7
USUSISEST
VARCHAR2(20 BYTE)
Y
Estado del usuario del sistema.
8
USUCRE
VARCHAR2(100 BYTE)
Usuario que creó el registro.
9
FECCRE
DATE
Fecha y hora de creación del registro.
SISLAB – DICCIONARIO DE DATOS
36
Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
10
USUMOD
VARCHAR2(100 BYTE)
Usuario que modificó el registro.
11
FECMOD
DATE
Fecha y hora de modificación del registro.
2.2.22.1 Índices en SLTUSUSIS Unicidad
Nombre del índice
UNIQUE SLPKUSUSIS
Columnas
USUSISCOD
Delete Rule
Estado
NO ACTION
HABILITADO
PERSISCOD
Ref Tabla Nombre Ref Columnas
SLTPERSIS
Ref Tabla Propietario
SISLAB
SLFK_TUSUSIS_RF_TPERSIS
Columnas
Nombre
PERSISCOD
2.2.22.2 Restricciones de claves foráneas SLTUSUSIS
2.2.22.3 PK, UK, & Check Constraints en SLTUSUSIS Nombre
Tipo
Estado
Columnas
SLPKUSUSIS Clave primaria HABILITADO USUSISCOD
2.2.22.4 Objetos referenciados por la tabla SLTUSUSIS Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLTPERSIS
Tabla
2.2.22.5 Objetos que hacen referencia a la tabla SLTUSUSIS Propietario
SISLAB
Nombre del objeto
SLK_GENERAL
Tipo de objeto
Cuerpo de paquete
SISLAB – DICCIONARIO DE DATOS
37
Propietario
Nombre del objeto
Tipo de objeto
SISLAB
SLK_SEGURIDADES
Cuerpo de paquete
SISLAB
SLK_USUARIOS_SIS Cuerpo de paquete
SISLAB – DICCIONARIO DE DATOS
38
3 3.1
VISTAS
PARAMETRIZACIÓN Las vistas del sistema informático SISLAB inician con el prefijo SLV, seguidas de las tres primeras letras cada una de las palabras que describen su contenido.
3.2
LISTA DE VISTAS A continuación se enlistan todas las tablas existentes: Nombre de vista
3.2.1
Comentario
SLV_CICACA
Vista de ciclos académicos.
SLV_DOCMAT
Vista de materias y docentes por ciclo académico.
SLV_ESTMTR
Vista de matrículas de los estudiantes.
SLV_MATHOR
Vista de horarios de clase por materia.
SLV_USULAB
Vista de usuarios de laboratorios.
Vista SLV_CICACA Vista de ciclos académicos.
Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
CICACAID
VARCHAR2(10)
Y
Identificador académico.
único
del
ciclo
2
CICACANOM
VARCHAR2(100)
Y
Nombre del ciclo académico.
3
CICACAINI
DATE
Y
Fecha inicio del ciclo académico.
4
CICACAFIN
DATE
Y
Fecha fin del ciclo académico.
5
CICACAEST
CHAR(1)
Y
Estado del ciclo académico: (A)Abierto o (C)Cerrado.
SISLAB – DICCIONARIO DE DATOS
39
3.2.2
Vista SLV_DOCMAT
Vista de materias y docentes por ciclo académico.
Col #
Nombre de columna
No nulo?
Tipo de dato
Comentarios
1
CICACAID
VARCHAR2(10)
Y
Identificador único del ciclo académico.
2
ESCID
VARCHAR2(10)
Y
Identificador único de la escuela.
3
ESCNOM
VARCHAR2(4000)
Y
Nombre de la escuela.
4
CARID
VARCHAR2(10)
Y
Identificador único de la carrera.
5
CARNOM
VARCHAR2(4000)
Y
Nombre de la carrera.
6
MATID
VARCHAR2(10)
Y
Identificador único de la materia.
7
MATNOM
VARCHAR2(4000)
Y
Nombre de la materia.
8
NIVID
NUMBER(2)
Y
Identificador único del nivel.
9
PARID
VARCHAR2(10)
Y
Identificador único del paralelo.
10
DOCID
VARCHAR2(20)
Y
Identificador único del docente.
3.2.3
Vista SLV_ESTMTR
Vista de matrículas de los estudiantes. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
CICACAID
VARCHAR2(10)
Y
Identificador único del ciclo académico.
2
ESCID
VARCHAR2(10)
Y
Identificador único de la escuela.
3
CARID
VARCHAR2(10)
Y
Identificador único de la carrera.
4
MATID
VARCHAR2(10)
Y
Identificador único de la materia.
5
NIVID
NUMBER(2)
Y
Identificador único del nivel.
6
PARID
VARCHAR2(10)
Y
Identificador único del paralelo.
7
USULABCOD
VARCHAR2(20)
Y
Identificador único del estudiante.
8
ESTMTREST
CHAR(1)
Y
Estado de la matrícula del estudiante: (M)Matriculado, (P)Pre-matriculado.
SISLAB – DICCIONARIO DE DATOS
40
3.2.4
Vista SLV_MATHOR
Vista de horarios de clase por materia. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
CICACAID
VARCHAR2(10)
Y
Identificador único del ciclo académico.
2
ESCID
VARCHAR2(10)
Y
Identificador único de la escuela.
3
CARID
VARCHAR2(10)
Y
Identificador único de la carrera.
4
MATID
VARCHAR2(10)
Y
Identificador único de la materia.
5
NIVID
NUMBER(2)
Y
Identificador único del nivel.
6
PARID
VARCHAR2(10)
Y
Identificador único del paralelo.
7
DIA
CHAR(1)
Y
Número de día de la semana: (1)Lúnes, (2)Martes, (3)Miércoles, (4)Jueves, (5)Viernes, (6)Sábado o (7)Domingo.
8
HORINI
NUMBER(2)
Y
Hora inicio de la clase.
9
MININI
NUMBER(2)
Y
Minutos inicio de la clase.
10
HORFIN
NUMBER(2)
Y
Hora fin de la clase.
11
MINFIN
NUMBER(2)
Y
Minutos fin de la clase.
3.2.5
Vista SLV_USULAB
Vista de usuarios de laboratorios. Col #
Nombre de columna
Tipo de dato
No nulo?
Comentarios
1
USULABCOD
VARCHAR2(20)
Y
Identificador único del usuario de laboratorios.
2
USULABTIPID
VARCHAR2(9)
Y
Tipo de identificación del usuario de laboratorios: Cédula o Pasaporte.
3
USULABNOM
VARCHAR2(4000)
Y
Nombre del usuario de laboratorios.
5
USULABDIR
VARCHAR2(200)
Y
Dirección del usuario de laboratorios.
6
USULABTEL
VARCHAR2(30)
Y
Teléfono del usuario de laboratorios.
7
USULABMAI
VARCHAR2(100)
Y
Correo electrónico del usuario de laboratorios.
8
USULABEST
VARCHAR2(13)
Y
Estado del usuario de laboratorios: Habilitado o Deshabilitado.
SISLAB – DICCIONARIO DE DATOS
41
9
USULABTIP
CHAR(1)
Y
Identificador del grupo de usuarios de laboratorios: (1)Usuarios externos, (2)Estudiantes, (3)Empleados o (4)Docentes.
SISLAB â&#x20AC;&#x201C; DICCIONARIO DE DATOS