PORTADA UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERÍA CIENCIAS FÍSICAS Y MATEMÁTICA CARRERA DE INGENIERÍA INFORMÁTICA “ANÁLISIS, DISEÑO Y DESARROLLO DE UNA HERRAMIENTA DE ADMINISTRACIÒN DE MANTENIMIENTO Y REPARACIÓN DE EQUIPOS INFORMÁTICOS, COMPUTERIZED MAINTENANCE MANAGEMENT SYSTEM, CMMS” TRABAJO DE GRADO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERO INFORMÁTICO AUTOR: ÁNGEL GABRIEL IBUJÉS VILLACÍS TUTOR: ING. CÉSAR AUGUSTO MORALES MEJÍA, MSc. QUITO – ECUADOR 2015 DEDICATORIA A Dios y mediante Él a mis Padres, que con su guía y bendiciones he logrado cumplir con una de mis metas más queridas y objetivos trazados en mi vida. A mi querida familia, a quién dedico este trabajo por la ejemplar enseñanza del esfuerzo y la dedicación de cada uno de ellos. A mis Papacitos, a quienes debo corresponder al cariño recibido durante toda mi vida, a la lucha abnegada y ejemplar de todos los días de su existencia, a la motivación recibida para convertir grandes sueños en grandes realidades. A mis hijos "Alexis Daniel y Doménika Alejandra", por el tiempo durante el cual he tenido que ausentarme por razones de trabajo y estudio, sacrificando el crecimiento entrañable de familia y al esfuerzo realizado por parte de ellos en sus estudios. Al Ingeniero César Morales por sus conocimientos puestos a disposición mía y la motivación recibida a lo largo de la realización del presente proyecto. Y, a todas las personas a quienes he estimado y que han sido un pilar fundamental para a alcanzar este objetivo. ii AGRADECIMIENTO A la Escuela de Ciencias de la Facultad de Ingeniería Ciencias Físicas y Matemática, que me recibió como su estudiante y de quien recibí acreditados conocimientos de Ingeniería Informática y Matemática. A cada uno de mis Maestros que a su debido tiempo me impartieron sus sabias enseñanzas en las aulas universitarias A mi querida Institución el Instituto Tecnológico Consejo Provincial de Pichincha en la cual presto mis servicios como Técnico Informático, a quien debo agradecer por la oportunidad brindada y contribuir al mejoramiento institucional. iii AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL Yo, Ángel Gabriel Ibujés Villacís en calidad del autor del trabajo de investigación o tesis realizada sobre “ANÁLISIS Y DESARROLLO DE UNA HERRAMIENTA DE ADMINISTRACIÓN DE MANTENIMIENTO Y REPARACIÓN DE EQUIPOS INFORMÁTICOS, COMPUTERIZED MAINTENANCE MANAGEMENT SYSTEM”, por la presente autorizo a la UNIVERSIDAD CENTRAL DEL ECUADOR, hacer uso de todos los contenidos que me pertenecen o de parte de los que contiene esta obra, con fines estrictamente académicos o de investigación. Los derechos que como autor me corresponden, con la excepción de la presente autorización, seguirán vigentes a mi favor, de conformidad con lo establecido en los artículos 5, 6, 8 y 19 y demás pertenecientes de la Ley de Propiedad Intelectual y su Reglamento. Quito, a 26 de Febrero del 2015 -----------------------------------Ángel Gabriel Ibujés Villacís CC.0501373070 iv CERTIFICACIÓN DEL TUTOR v vi RESULTADO DEL TRABAJO DE GRADUACIÓN vii CONTENIDO _______________________________________________________________________ i DEDICATORIA ____________________________________________________________ ii AGRADECIMIENTO _______________________________________________________ iii AUTORIZACIÓN DE LA AUTORÍA INTELECTUAL _________________________________ iv CERTIFICACIÓN DEL TUTOR _________________________________________________ v RESULTADO DEL TRABAJO DE GRADUACIÓN __________________________________ vii CONTENIDO ___________________________________________________________ viii LISTA DE TABLAS _______________________________________________________ xvi LISTA DE FIGURAS ______________________________________________________ xvii RESUMEN ______________________________________________________________ xx ABSTRACT ______________________________________________________________xxi CERTIFICADO DE TRADUCCIÓN ____________________________________________ xxii COPIA DEL TÍTULO ______________________________________________________xxiii INTRODUCCIÓN __________________________________________________________ 1 CAPITULO I ______________________________________________________________ 2 1 PRESENTACIÓN DEL PROBLEMA. _________________________________________ 2 1.1 Planteamiento del Problema. __________________________________________ 2 1.2 Justificación. _______________________________________________________ 2 1.3 Objetivos. _________________________________________________________ 3 1.3.1 Objetivo General __________________________________________________ 3 1.3.2 Objetivos Específicos. ______________________________________________ 3 1.4 Alcance. ___________________________________________________________ 3 1.5 Limitaciones. _______________________________________________________ 5 1.6 Riesgos. ___________________________________________________________ 5 1.7 Análisis de herramientas para desarrollo de páginas web. __________________ 6 1.7.1 Sistema Operativo. ________________________________________________ 6 1.7.2 Lenguaje de Programación. _________________________________________ 8 1.7.3 CS4. Adobe Creative Suite. Dreamweber. ______________________________ 9 1.7.4 Sistema de Gestión de Base de Datos. _________________________________ 9 viii 1.7.5 Servidores Web. _________________________________________________ 13 1.7.6 Plataforma de desarrollo Wampserver _______________________________ 16 1.7.7 Uso del Servidor Wamp. ___________________________________________ 17 1.7.8 Módulos de Apache _______________________________________________ 17 1.7.9 EL Encriptador MD5 de Apache _____________________________________ 17 1.7.10 Sendmail _______________________________________________________ 18 1.7.11 Navegador Web. _________________________________________________ 18 1.7.12 Requisitos de Hardware para el desarrollo del sistema. __________________ 18 CAPÍTULO 2_____________________________________________________________ 19 2 REVISIÓN BIBLIOGRÁFICA. _____________________________________________ 19 2.1 Antecedentes. _____________________________________________________ 19 2.2 Fundamentación Teórica. ____________________________________________ 20 2.2.1 El Desarrollo del Software de Mantenimiento. _________________________ 20 2.2.2 La Administración del Mantenimiento. _______________________________ 23 2.2.3 EL CMMS (Computerized Maintenance Management System) ____________ 24 2.2.3.1 Generalidades _________________________________________________ 24 2.2.3.2 Categorías de Aplicación de CMMS ________________________________ 24 2.2.3.3 Estructura Informativa de un CMMS _______________________________ 30 2.2.3.4 Estructura Básica de un CMMS. ___________________________________ 31 2.2.3.5 Estructura General de Sistemas CMMS. _____________________________ 32 2.2.3.6 Rating de los CMMS.____________________________________________ 33 2.2.4 Helpdesk _______________________________________________________ 38 2.2.5 El Mantenimiento de Equipos Informáticos. ___________________________ 38 2.2.5.1 Costos Directos_________________________________________________ 39 2.2.5.2 Costos Indirectos. _______________________________________________ 39 2.2.6 Operaciones y Tipos de Mantenimiento_______________________________ 39 2.2.6.1 Mantenimiento Conservativo _____________________________________ 39 2.2.6.2 Mantenimiento Correctivo _______________________________________ 40 2.2.6.3 Mantenimiento Preventivo _______________________________________ 40 2.2.6.4 Mantenimiento de Actualización __________________________________ 41 2.2.7 UML (Unified Modeling Languaje) ___________________________________ 42 ix 2.2.7.1 Casos de Uso __________________________________________________ 42 2.2.7.2 Modelo de Entidad-Relación ______________________________________ 44 2.2.7.3 Bases de Datos. ________________________________________________ 45 2.2.7.4 Servidores_____________________________________________________ 46 2.2.7.5 Estructura de una Aplicación Web _________________________________ 46 2.2.7.6 Sistemas Web. _________________________________________________ 47 CAPITULO 3_____________________________________________________________ 48 3 METODOLOGÍAS DE DESARROLLO. ______________________________________ 48 3.1 Selección de la metodología para desarrollo el sistema. ___________________ 48 3.2 Metodología de desarrollo RUP. ______________________________________ 49 3.3 Flujo de trabajo de procesos. _________________________________________ 50 3.3.1 Modelado del Negocio. ____________________________________________ 50 3.3.1.1 Incidencias ____________________________________________________ 51 3.3.1.1.1 Incidencias en Laboratorios. ______________________________________ 51 3.3.1.1.2 Incidencias en Oficinas Administrativas. ____________________________ 52 3.3.1.2 Indicadores de Gestión del Mantenimiento. _________________________ 53 3.3.1.2.1 Mantenimiento Preventivo. ______________________________________ 54 3.3.1.2.2 Mantenimiento Correctivo. _______________________________________ 55 3.3.2 Requisitos. ______________________________________________________ 56 3.3.2.1 Requisitos Funcionales. __________________________________________ 56 3.3.2.2 Roles de Usuario. _______________________________________________ 57 3.3.3 Análisis y Diseño. _________________________________________________ 57 3.3.3.1 Gestión del Sistema _____________________________________________ 60 3.3.3.1.1 Gestión de usuarios. ____________________________________________ 60 3.3.3.1.1.1 Ingreso al sistema. ____________________________________________ 60 3.3.3.1.1.2 Registrarse en el sistema y acreditación de roles. ___________________ 60 3.3.3.1.1.3 Acreditación de roles a usuario. _________________________________ 60 3.3.3.1.1.4 Olvido de password. __________________________________________ 60 3.3.3.1.2 Gestión de inventario. ___________________________________________ 61 3.3.3.1.2.1 Equipos Base. ________________________________________________ 61 3.3.3.1.2.2 Partes de Equipo. _____________________________________________ 61 x 3.3.3.1.3 Gestión de soporte. _____________________________________________ 61 3.3.3.1.3.1 De Incidencias. _______________________________________________ 61 3.3.3.1.3.2 De Soporte. _________________________________________________ 61 3.3.3.1.4 Gestión de mantenimiento planificado. _____________________________ 62 3.3.3.2 PROTOTIPOS. __________________________________________________ 62 3.3.3.2.1 Interfaz gráfica de gestión de usuario. ______________________________ 62 3.3.3.2.1.1 Prototipo de ingreso de usuarios al sistema. _______________________ 63 3.3.3.2.1.2 Prototipo para registrarse como cliente del sistema. ________________ 64 3.3.3.2.1.3 Prototipo de Acreditación de roles a cliente. _______________________ 64 3.3.3.2.1.4 Prototipo para Olvido de Password. _____________________________ 65 3.3.3.2.2 Gestión de Inventario. ___________________________________________ 65 3.3.3.2.2.1 Prototipo de Equipo Base. _____________________________________ 65 3.3.3.2.2.2 Prototipo para inventario de partes de equipos. ____________________ 66 3.3.3.2.3 Gestión de Soporte. _____________________________________________ 67 3.3.3.2.3.1 Prototipo de tratamiento de Incidencias. __________________________ 67 3.3.3.2.3.2 Prototipo de tratamiento de Soporte. ____________________________ 67 3.3.3.2.4 Mantenimiento Planificado. ______________________________________ 68 3.3.3.2.4.1 Prototipo de Control de Mantenimiento. __________________________ 68 3.3.3.2.4.2 Prototipo para gestionar Mantenimiento Planificado. _______________ 68 3.3.3.3 CASOS DE USO, DIAGRAMAS UML. _________________________________ 69 3.3.3.3.1 Diagramas UML, Caso de Uso Gestión de Usuario. ____________________ 69 3.3.3.3.1.1 UML Ingreso de usuarios al sistema. _____________________________ 69 3.3.3.3.1.2 UML Registrarse en el sistema. __________________________________ 69 3.3.3.3.1.3 UML Acreditación de roles de usuario. ____________________________ 70 3.3.3.3.1.4 UML Olvido de Password. ______________________________________ 70 3.3.3.3.2 Diagramas UML, Caso de Uso Gestión de Inventario. __________________ 70 3.3.3.3.2.1 UML Equipos Base ____________________________________________ 71 3.3.3.3.2.2 UML Partes de Equipo,_________________________________________ 71 3.3.3.3.3 Diagramas UML Caso de Uso de Gestión de Soporte. __________________ 72 3.3.3.3.3.1 UML Tratamiento de incidencias ________________________________ 72 3.3.3.3.3.2 UML Tratamiento de soporte, ___________________________________ 72 xi 3.3.3.3.4 Diagramas UML Gestión de Mantenimiento Planificado. _______________ 73 3.3.3.3.4.1 UML de Control de Mantenimiento Planificado ____________________ 73 3.3.3.3.4.2 UML Gestionar Mantenimiento Planificado. _______________________ 73 3.3.3.4 DESCRIPCIÓN DE LOS CASOS DE USO. _______________________________ 74 3.3.3.4.1 Descripción de caso de uso Gestión de usuario. _______________________ 74 3.3.3.4.1.1 Ingreso al sistema. ____________________________________________ 74 3.3.3.4.1.2 Registrarse en el sistema. ______________________________________ 74 3.3.3.4.1.3 Acreditación de usuarios. ______________________________________ 75 3.3.3.4.1.4 Olvido de Password ___________________________________________ 75 3.3.3.4.2 Descripción de caso de uso de Gestión de Inventario. __________________ 75 3.3.3.4.2.1 Equipo base _________________________________________________ 75 3.3.3.4.2.2 Inventario de partes de equipos. _________________________________ 76 3.3.3.4.3 Descripción de caso de usos de Gestión de Incidencias. ________________ 76 3.3.3.4.3.1 Tratamiento de incidencias. ____________________________________ 76 3.3.3.4.3.2 Tratamiento de soporte ________________________________________ 77 3.3.3.4.4 Descripción Gestión de Mantenimiento Planificado ___________________ 78 3.3.3.5 DIAGRAMAS DE SECUENCIA. ______________________________________ 79 3.3.3.5.1 Diagrama de secuencia de Gestión de Usuarios. ______________________ 79 3.3.3.5.1.1 Ingreso al sistema. ____________________________________________ 79 3.3.3.5.1.2 Registrarse en el sistema. ______________________________________ 80 3.3.3.5.1.3 Acreditación de usuarios, ______________________________________ 81 3.3.3.5.1.4 Olvido de password. __________________________________________ 82 3.3.3.5.2 Diagrama de secuencia de Gestión de Inventario. _____________________ 82 3.3.3.5.2.1 Equipos base. ________________________________________________ 82 3.3.3.5.2.2 Partes de equipo. _____________________________________________ 83 3.3.3.5.3 Diagrama de secuencia de Gestión de Incidencias. ____________________ 84 3.3.3.5.3.1 Tratamiento de incidencias. ____________________________________ 84 3.3.3.5.3.2 Tratamiento de soporte. _______________________________________ 84 3.3.3.5.4 Diagrama de secuencia de Control de Mantenimiento Planificado. ______ 85 3.3.3.6 Diagrama de clases. ____________________________________________ 86 3.3.3.7 Diagrama de la base de datos. ____________________________________ 86 xii 3.3.3.8 3.3.4 Script de la base de datos.________________________________________ 86 Implementación. _________________________________________________ 86 3.3.4.1 3.3.5 Listado del directorio de archivos php ______________________________ 86 Pruebas ________________________________________________________ 88 3.3.5.1 Tablas de administración de códigos. _______________________________ 88 3.3.5.2 Test Report Webserver Load Performance Strees Test. _________________ 88 3.3.6 Despliegue. _____________________________________________________ 88 3.3.6.1 Manual Técnico.________________________________________________ 89 Flujos de trabajo de soporte. _________________________________________ 89 3.4 3.4.1 Gestión de cambios y configuraciones. _______________________________ 89 3.4.2 Gestión del proyecto. _____________________________________________ 89 3.4.2.1 Administrar riesgos. ____________________________________________ 89 3.4.2.2 Seguridad de datos. _____________________________________________ 89 3.4.2.3 Medidas de protección del servidor. ________________________________ 90 3.4.2.4 Activación voluntaria de usuarios. _________________________________ 90 3.4.2.5 Mantenimiento de bases de datos. ________________________________ 90 Entorno. ________________________________________________________ 90 3.4.3 3.4.3.1 Herramientas Adicionales Utilizadas. _______________________________ 90 CAPITULO 4 ____________________________________________________________ 93 4 CONCLUSIONES Y RECOMENDACIONES ___________________________________ 93 4.1 CONCLUSIONES. ___________________________________________________ 93 4.2 RECOMENDACIONES. _______________________________________________ 93 GLOSARIO DE TÉRMINOS. _________________________________________________ 94 BIBLIOGRAFÍA___________________________________________________________ 97 ANEXO A _______________________________________________________________ 98 1 Report Webserver Load Performance Strees Test ___________________________ 98 ANEXO B ______________________________________________________________ 103 1. Diagrama de clases. _________________________________________________ 103 2. Diagrama de la base de datos. ________________________________________ 104 3. Script de la base de datos. ____________________________________________ 105 4. Diccionario de datos _________________________________________________ 113 xiii 5. Tabla de Administración de códigos. ___________________________________ 117 6. Exportación de la base de datos _______________________________________ 117 7. Importación de la base de datos _______________________________________ 119 ANEXO C ______________________________________________________________ 120 1 MANUAL DE USUARIO. _______________________________________________ 120 1.1 Objetivo. ________________________________________________________ 120 1.1.1 1.2 Identificación de Usuario con el Sistema._____________________________ 120 USUARIO ADMINISTRADOR DEL SISTEMA. _____________________________ 123 Soporte Técnico. ________________________________________________ 123 1.2.1 1.2.1.1 Incidencias Reportadas. ________________________________________ 124 1.2.1.2 Soportes solicitados. ___________________________________________ 125 1.2.2 Inventarios. ____________________________________________________ 126 1.2.2.1 Ingresar un nuevo equipo al inventario. ____________________________ 128 1.2.2.2 Ingresar partes de equipos. ______________________________________ 129 1.2.3 Mantenimiento. ________________________________________________ 130 1.2.3.1 Control de Mantenimiento Planificado. ____________________________ 130 1.2.3.2 Gestionar Mantenimiento Planificado. ____________________________ 131 1.2.4 Administración. _________________________________________________ 131 1.2.4.1 Codificación de Tipo de Equipo. __________________________________ 131 1.2.4.2 Codificación de Estados de Incidencias. ____________________________ 132 1.2.4.3 Codificación de Estado de Equipo. ________________________________ 132 1.2.4.4 Codificación de Dependencia o Unidad. ____________________________ 133 1.2.4.5 Codificación de Organización. ____________________________________ 134 1.2.4.6 Administración de usuarios (Administradores, Técnicos y Usuarios de Equipos). 134 1.2.5 Reportes. ______________________________________________________ 135 1.2.5.1 Incidencias. __________________________________________________ 136 1.2.5.2 Reporte general de incidencias ___________________________________ 136 1.2.5.3 Reporte de Equipos. ____________________________________________ 137 1.2.5.4 Inventario General. ____________________________________________ 138 1.3 USUARIO TÉCNICO DE MANTENIMIENTO. ______________________________ 140 xiv 1.3.1 Soporte Técnico. ________________________________________________ 140 1.3.2 Mantenimiento. ________________________________________________ 141 1.3.2.1 Insertar Mantenimiento. ________________________________________ 141 1.3.2.2 Control de Mantenimiento. ______________________________________ 142 1.4 USUARIO DE EQUIPOS. _____________________________________________ 143 1.4.1 Insertar una Incidencia ___________________________________________ 143 1.4.2 Reporte de incidencias ___________________________________________ 143 2 MANUAL TÉCNICO __________________________________________________ 144 Plataforma de desarrrollo WampServer _______________________________ 144 2.1 2.1.1 Instalación del Software __________________________________________ 144 2.1.2 Activación de los módulos de Apache. ______________________________ 147 2.1.3 Activación de las extensiones de php. _______________________________ 149 2.2 Instalación de sendmail. ____________________________________________ 152 2.2.1 Configuración. __________________________________________________ 152 2.2.2 Prueba de envío de correo electrónico mediante sendmail. ______________ 153 2.3 Instalación del sistema. ____________________________________________ 154 2.3.1 Crear la Base de Datos cmms. _____________________________________ 154 2.3.2 Importar la base de datos. ________________________________________ 157 2.3.3 Instalación del software CMMS.CPP ________________________________ 160 2.4 3 3.1 Manual de Organización del sistema de archivos php. ____________________ 160 ANEXO D __________________________________________________________ 163 Encuesta, Resultados y Conclusiones __________________________________ 163 xv LISTA DE TABLAS Tabla 1 Cuadro Comparativo Linux vs Windows. ________________________________________________ 6 Tabla 2 Ventajas de uso de Linux vs Windows __________________________________________________ 7 Tabla 3 Niveles de Puntuación _______________________________________________________________ 8 Tabla 4 Cuadro comparativo de lenguajes de programación en el servidor ___________________________ 8 Tabla 5 Cuadro comparativo de Gestores de base de datos más conocidos __________________________ 13 Tabla 6 Servidores Web más conocidos. ______________________________________________________ 14 Tabla 7 Rating CMMS ____________________________________________________________________ 33 Tabla 8 Líneas y Flechas para diagramar comportamientos ______________________________________ 43 Tabla 9 Características Metodologías RUP Y XP _______________________________________________ 49 Tabla 10 Roles de Clientes: Administrador, Técnico y Usuario _____________________________________ 57 Tabla 11 datosgenerales _________________________________________________________________ 114 Tabla 12 Acceso ________________________________________________________________________ 114 Tabla 13 equipo ________________________________________________________________________ 114 Tabla 14 Estado del equipo _______________________________________________________________ 114 Tabla 15 Tabla de Stock __________________________________________________________________ 115 Tabla 16 Tipo de equipo__________________________________________________________________ 115 Tabla 17 Unidad ________________________________________________________________________ 115 Tabla 18 Procedencia de equipos __________________________________________________________ 115 Tabla 19 helpdesk ______________________________________________________________________ 116 Tabla 20 Estado de evento _______________________________________________________________ 116 Tabla 21 Mantenimiento _________________________________________________________________ 116 Tabla 22 Organización ___________________________________________________________________ 117 Tabla 23 Administración de códigos ________________________________________________________ 117 Tabla 24 Módulos de Apache que deben estar activados _______________________________________ 149 Tabla 25 Extensiones de php ______________________________________________________________ 151 Tabla 26 Archivos php comunes de Administrador, Técnico y Usuario _____________________________ 160 Tabla 27 Archivos php de Administrador del Sistema __________________________________________ 161 Tabla 28 Archivos php de Técnico _________________________________________________________ 162 Tabla 29 Archivos php de usuario __________________________________________________________ 162 xvi LISTA DE FIGURAS Figura 1 CS4 Dreamweber __________________________________________________________________ 9 Figura 2 Arquitectura de servidores de Wikimedia ______________________________________________ 14 Figura 3 Funcionamiento de WAMPSERVER ___________________________________________________ 16 Figura 4 Permite Instalar aplicaciones para uso en la red ________________________________________ 17 Figura 5 Diagrama de información básica de CMMS ____________________________________________ 31 Figura 6 Diagrama de la estructura general de un CMMS ________________________________________ 32 Figura 7 CMMS MAINTENANCE CONNECTION _________________________________________________ 34 Figura 8 CMMS emaint ___________________________________________________________________ 35 Figura 9 CMMS infor _____________________________________________________________________ 35 Figura 10 CMMS FasTrak __________________________________________________________________ 35 Figura 11 CMMS MICROMAIN ______________________________________________________________ 36 Figura 12 CMMS ASSET point ______________________________________________________________ 36 Figura 13 CMMS MPULSE _________________________________________________________________ 36 Figura 14 CMMS FaciliWorks _______________________________________________________________ 37 Figura 15 CMMS Maintimizer ______________________________________________________________ 37 Figura 16 CMMS ARSENAULT ______________________________________________________________ 37 Figura 17 Arquitectura tradicional de 3 capas _________________________________________________ 46 Figura 18 Desarrollo de una incidencia _______________________________________________________ 52 Figura 19 Diagrama de Contexto y los Procesos de Gestión de Incidentes y Mantenimiento ____________ 59 Figura 20 Plantilla básica para componentes __________________________________________________ 62 Figura 21 Plantilla de reportes maestro-detalle para incidencias e inventario ________________________ 63 Figura 22 Ingresar al Sistema CMMS.CPP _____________________________________________________ 63 Figura 23 Información requerida por el usuario ________________________________________________ 64 Figura 24 Lista de usuarios registrados en el sistema ___________________________________________ 64 Figura 25 Credenciales de usuario ___________________________________________________________ 65 Figura 26 Prototipo de pantalla para cambio de contraseña ______________________________________ 65 Figura 27 Prototipo de pantalla para equipo base ______________________________________________ 66 Figura 28 Prototipo de pantalla de ingreso de partes de equipo ___________________________________ 66 Figura 29 Interfaz gráfica para notificar incidencia _____________________________________________ 67 Figura 30 Pantalla para Administrador para gestionar soporte ___________________________________ 67 Figura 31 Prototipo de pantalla de control de mantenimiento ____________________________________ 68 Figura 32 Gestionar mantenimiento planificado _______________________________________________ 68 Figura 33 UML Ingreso de usuarios al sistema _________________________________________________ 69 Figura 34 UML Registrarse en el sistema _____________________________________________________ 69 Figura 35 UML Acreditación de roles a usuarios ________________________________________________ 70 Figura 36 UML olvido de password __________________________________________________________ 70 Figura 37 UML Tratamiento de equipo base___________________________________________________ 71 Figura 38 UML tratamiento de partes de equipo _______________________________________________ 71 Figura 39 UML Tratamiento de incidencias ___________________________________________________ 72 Figura 40 UML Tratamiento de soporte ______________________________________________________ 72 Figura 41 UML Control de mantenimiento planificado __________________________________________ 73 Figura 42 Gestionar orden de mantenimiento _________________________________________________ 73 Figura 43 Diagrama de secuencia de ingreso al sistema _________________________________________ 79 Figura 44 Diagrama de secuencia para registrarse en el sistema __________________________________ 80 Figura 45 Diagrama de secuencia de acreditación de usuarios ____________________________________ 81 xvii Figura 46 Diagrama de secuencia de olvido de password ________________________________________ 82 Figura 47 Diagrama de secuencia de inventario de equipo base ___________________________________ 83 Figura 48 Diagrama de secuencia de inventario de partes de equipo _______________________________ 83 Figura 49 Diagrama de gestión de tratamiento de incidencia _____________________________________ 84 Figura 50 Diagrama de secuencia de gestión de soporte _________________________________________ 85 Figura 51 Diagrama de secuencia de control de mantenimiento __________________________________ 85 Figura 52 Directorio de archivos php ________________________________________________________ 86 Figura 53 Directos de archivos php continuación _______________________________________________ 87 Figura 54 Directorio de archivos php continuación... ____________________________________________ 88 Figura 55 STARUML ______________________________________________________________________ 91 Figura 56 Evolus Pencil ___________________________________________________________________ 91 Figura 57 YEd Graph Editor ________________________________________________________________ 92 Figura 58 Diagrama de clases _____________________________________________________________ 103 Figura 59 Diagrama relacional de la base de datos ____________________________________________ 104 Figura 60 Exportación de la base de datos. Paso 1_____________________________________________ 117 Figura 61 Exportación de la base de datos. Paso 2_____________________________________________ 118 Figura 62 Exportación de la base de datos. Paso 3_____________________________________________ 118 Figura 63 Importación de la base de datos. __________________________________________________ 119 Figura 64 Pantalla de Inicio CMMS.CPP _____________________________________________________ 121 Figura 65 Obtener un nuevo password ______________________________________________________ 121 Figura 66 Pantalla para registro de nuevo usuario ____________________________________________ 122 Figura 67 Menú Principal de Administrador __________________________________________________ 123 Figura 68 Menú de sopporte técnico ________________________________________________________ 123 Figura 69 Reporte de incidencias___________________________________________________________ 124 Figura 70 Gestionar incidencia ____________________________________________________________ 125 Figura 71 Asignación de técnico para atender la incidencia _____________________________________ 126 Figura 72 Menú principal de gestión de inventarios ____________________________________________ 127 Figura 73 Información de equipo base ______________________________________________________ 127 Figura 74 Ingreso de un nuevo equipo ______________________________________________________ 128 Figura 75 Pantalla inicial de partes de equipo ________________________________________________ 129 Figura 76 Pantalla de gestión de partes de equipo ____________________________________________ 130 Figura 77 Control de mantenimiento planificado ______________________________________________ 130 Figura 78 Gestionar mantenimiento planificado ______________________________________________ 131 Figura 79 Menú de administración de códigos ________________________________________________ 131 Figura 80 Configuración de tipos de equipo __________________________________________________ 131 Figura 81 Definición de tipos de equipo _____________________________________________________ 132 Figura 82 Definición de estados de incidencia ________________________________________________ 132 Figura 83 Definición de estados de equipo ___________________________________________________ 133 Figura 84 Modificar estados de equipo ______________________________________________________ 133 Figura 85 Definición de unidad o dependencia _______________________________________________ 133 Figura 86 Insertar unidad o dependencia ____________________________________________________ 134 Figura 87 Datos de la institución ___________________________________________________________ 134 Figura 88 Pantalla de administración de usuarios _____________________________________________ 134 Figura 89 Credenciales de usuario __________________________________________________________ 135 Figura 90 Menú de reportes ______________________________________________________________ 136 Figura 91 Reporte de incidencias___________________________________________________________ 136 Figura 92 Reporte general de incidencias ____________________________________________________ 137 Figura 93 Reporte de equipos _____________________________________________________________ 137 Figura 94 Reporte de inventario general ____________________________________________________ 139 Figura 95 Menú principal de técnico ________________________________________________________ 140 xviii Figura 96 Reporte de incidencias del Administrador ___________________________________________ 140 Figura 97 Modificar una incidencia _________________________________________________________ 141 Figura 98 Insertar una incidencia __________________________________________________________ 141 Figura 99 Planificación de mantenimiento ___________________________________________________ 142 Figura 100 Control de mantenimiento ______________________________________________________ 142 Figura 101 Insertar una incidencia _________________________________________________________ 143 Figura 102 Reporte de incidentes de usuario de equipos ________________________________________ 143 Figura 103 Dirección de descarga wampserver _______________________________________________ 144 xix RESUMEN ANÁLISIS, DISEÑO Y DESARROLLO DE UNA HERRAMIENTA DE ADMINISTRACIÓN DE MANTENIMIENTO Y REPARACIÓN DE EQUIPOS INFORMÁTICOS, COMPUTERIZED MAINTENANCE MANAGEMENT SYSTEM El desarrollo de la presente tesis corresponde a la necesidad de construir un software que dé soluciones integrales a los actores, procedimientos y medios que intervienen en el uso de equipos informáticos, como tal es necesario que se dote de herramientas que den facilidad al mantenimiento de los equipos informáticos dentro del Instituto Tecnológico Consejo Provincial de Pichincha, en la ciudad de Quito. Los beneficios que aportan la implantación y el uso de una herramienta que administre el servicio técnico CMMS para el área de mantenimiento y atención al cliente a través de los incidentes que él reporte nos ayudará a monitorear la ubicación de los recursos, los requerimientos, las incidencias, el estado y disponibilidad de los equipos de una manera descentralizada y accesible desde cualquier lugar, únicamente realizando la conexión vía internet con el servidor de la aplicación mediante un equipo electrónico como computadora, teléfono móvil, tablet, etc.. En el contenido se puede encontrar diagramas, tablas, puntualizaciones de tipo de usuarios del sistema así como los manuales de usuario y técnico para tener una perspectiva más clara del funcionamiento. DESCRIPTORES: CMMS / SERVIDORES WEB / APLICACIONES WEB / RUP / UML / PHP / MANTENIMIENTO / BASES DE DATOS xx ABSTRACT ANALYSIS, DESIGN AND DEVELOPMENT OF A MAINTENANCE MANAGEMENT REPAIR COMPUTER EQUIMENT. TOOL AND The development of this thesis reflects the need to build comprehensive software solutions to the actors, procedures and resources involved in the use of computer equipment as such is required to be provided tools that will ease the maintenance of computers in Consejo Provincial de Pichincha Institute. The benefits of the implementation and use of a CMMS tool to manage the service area maintenance and customer service by reporting incidents that he will help us to monitor the location of resources, requirements, incidents, the status and availability of equipment in a centralized and accessible way anywhere, only making the connection by Internet to the server application through a computer, mobile phone, tablet, etc. The content can be found diagrams, figures and tables of the system and user manuals and technical to have a broader perspective of the functioning. DESCRIPTORS: CMMS/WEB SERVICES / WEB APPLICATIONS / RUP / UML / PHP / MAINTENANCE / DATABASE xxi CERTIFICADO DE TRADUCCIÓN Yo, Mery Marlene Tapia Tapia certifico que he revisado el resumen de la tesis del señor Ángel Gabriel Ibujés Villacís con el tema “ANÁLISIS, DISEÑO Y DESARROLLO DE UNA HERRAMIENTA DE ADMINISTRACIÓN DE MANTENIMIENTO Y REPARACIÓN DE EQUIPOS INFORMÁTICOS, COMPUTERIZED MAINTENACE MANAGEMENT SYSTEM, CMMS”. Adjunto el título y la certificación del registro que constata mi conocimiento en el Idioma Inglés. Es todo lo que puedo certificar en honor a la verdad. El señor Ángel Gabriel Ibujés Villacís puede hacer uso de este certificado como bien le convenga. Atentamente xxii COPIA DEL TÍTULO xxiii INTRODUCCIÓN El avance tecnológico que impulsa la investigación provee la creación de elementos que dominan muchos aspectos de actualidad y que siguen dando buenos resultados a la industria informática. Diversos aspectos del conocimiento dígase sobre las comunicaciones, salud, sistemas de transporte, navegación, física, química, astronomía, ciencias sociales, negocios, etc. se han visto favorecidos por la aplicación de software especializado que proveen de funcionalidad. La ingeniería de software ha logrado construir potenciales soluciones para las diversas áreas del conocimiento. Si bien estas aplicaciones se utilizan en diversas áreas de la empresa actual en equipos informáticos, al departamento de mantenimiento se le aplica la responsabilidad de la protección, asistencia y conservación. Por esta razón el Instituto Tecnológico Consejo Provincial de Pichincha, de acuerdo a los antecedentes tomados en cuenta debe beneficiarse de un sistema denominado CMMSComputerized Maintenance Management System, plataforma tecnológica que ayudará a: Administrar vía web las incidencias reportadas por los usuarios en los equipos de computación, sean estos el personal administrativo, el personal docente, y estudiantes. Administrar el mantenimiento y reparación con la finalidad de solucionar los distintos inconvenientes. Mantener a los usuarios permanentemente comunicados con los técnicos mediante un helpdesk y obtener consultas del estado de la solución al trabajo solicitado La tecnología informática está transformando la comunicación, el crecimiento multiplicativo de las nuevas herramientas que se ejecutan en la nube y el acceso a internet están redefiniendo el trabajo abriendo nuevas formas de integración para el desarrollo. 1 CAPITULO I 1 PRESENTACIÓN DEL PROBLEMA. 1.1 Planteamiento del Problema. El Departamento Técnico del Instituto Tecnológico Consejo Provincial de Pichincha no dispone de una herramienta que permita administrar la información que generan las actividades que despliega, el registro de actividades diarias es realizado manualmente y por lo tanto nos encontramos con los siguientes inconvenientes: 1. No se conoce a ciencia cierta la totalidad de incidentes que puedan ocurrir en los equipos y las soluciones desplegadas al tener factores concluyentes como: un parque informático extenso, la cantidad de usuarios y la diversidad de software; no es prudente llegar a cada uno de los equipos sin la ayuda de un sistema que aborde la problemática. 2. La falta de un sistema centralizado que permita a los técnicos tener una información clasificada y de fácil acceso a la hora de documentar sus actividades realizadas: mantenimiento, reparación, reutilización, actualización, mejoramiento, instalación de software, hardware, etc. 3. Los directivos no tienen una línea de comunicación precisa, por la sencilla razón de que los técnicos no tienen la información debidamente tratada. 4. No se puede realizar un seguimiento de las actividades que desarrollan los técnicos. 5. No existen registros de intervención de los equipos según algún parámetro clasificador de incidencias. 6. El inventario se realiza mediante hojas de Excel, y al ocasionarse cambios, la desactualización de esa información es inmediata. 7. El usuario no dispone de un medio de comunicación inmediato con que le permita notificar su problema. 8. No hay un mecanismo automatizado que permita entregar información de una manera ágil y oportuna vía web a los interesados. 1.2 Justificación. 1. La aplicación del sistema generará la información necesaria que permita obtener el seguimiento y establecer mejores resultados de la gestión del departamento de mantenimiento, de no aplicarse el manejo de la información continuaría siendo obsoleto. 2 2. La utilización del sistema propuesto dará a los técnicos las debidas facilidades al servicio de mantenimiento mediante el almacenamiento de la información que hayan alimentado a sus bases de datos. 3. La aplicación del sistema generaría una iniciativa para que otras dependencias den solución a similares problemas. 1.3 Objetivos. 1.3.1 Objetivo General Proporcionar a través del Sistema de Administración de Mantenimiento de Equipos Informáticos CMMS.CPP una metodología estructurada, organizada, de seguimiento, de fácil actualización, de servicio eficiente para beneficio de los técnicos informáticos, de los usuarios, de los equipos de computación y optimizar la gestión del departamento. 1.3.2 Objetivos Específicos. Proporcionar a los técnicos la capacidad de estructurar fácilmente informes precisos de la información del seguimiento de las incidencias y las soluciones desplegadas, mantener una información muy confiable de la estructuración interna de los equipos, inventario, ubicación y responsabilidad del uso por parte de los usuarios, y. Dotar a los usuarios de una herramienta web petitoria de reparación y consulta del estado de reparación de su equipo. 1.4 Alcance. El sistema informático CMMS.CPP es un sistema de administración de mantenimiento y reparación de equipos informáticos, en el cual se definen los usuarios: Administrador, Técnico y Usuario de Equipos. 1. El rol del usuario Administrador comprende los Inventario, Mantenimiento, Administración y Reportes. 3 siguientes módulos: Soporte, Los componentes del módulo Soporte son: Solicitud de soporte Incidencias reportadas Los componentes del módulo Inventario son: Inventario General. Descripción del equipo. Partes. Los componentes del módulo Mantenimiento son: Control de mantenimiento. Detalle. Los componentes del módulo Administración son: Tipo de equipo. Incidencia. Estado de equipo. Ubicación. Datos de la Institución. Usuarios. Los componentes del módulo Reportes son: Incidencias. Equipos. Inventario General. Mantenimiento. 2. El rol del usuario Técnico comprende los siguientes módulos: Soporte, Mantenimiento y Reportes. Los componentes del módulo Soporte son: Incidencias reportadas. Soportes solicitados. Reportes. 4 Los componentes del módulo Mantenimiento son: Control de mantenimiento. Detalle. Los componentes del módulo Reportes son: Reporte de Incidencias Reporte de Equipos Inventario General Mantenimiento 3. El rol del usuario de equipos comprende los siguientes módulos: Incidencias. Los componentes del módulo Incidencias son: 1.5 Incidencias reportadas. Soportes solicitados. Limitaciones. El sistema no realizará un seguimiento de ubicación por curso de los estudiantes, se considera únicamente la necesidad de la incidencia reportada por el usuario, no se requiere la identidad de nombre y curso. Para el caso de Administrativos este personal es plenamente identificado como responsable del equipo según el departamento. El sistema no efectuará un historial del traslado de los equipos, trabajará en base a la ubicación actual del equipo. El sistema no considera un historial de desvalorización de los equipos con la finalidad de efectuar el cruce de información contable. El Inventario no se realiza utilizando el dispositivo de lectura óptica de código de barras. El técnico informático es a la vez Administrador y Técnico de Mantenimiento de los equipos. 1.6 Riesgos. Se consideran los siguientes riesgos de alto grado: La suspensión de la dirección IP pública de Internet, a la cual está direccionado el sistema informático se puede mitigar este riesgo contratando otra IP pública o contratando un hosting pagado. 5 La suspensión del servicio de internet. La posibilidad de que el Técnico informático por motivos probables tenga que movilizarse a laborar en otra Institución, se puede mitigar este riesgo con la transferencia de conocimientos a otro técnico cualificado. 1.7 1.7.1 Análisis de herramientas para desarrollo de páginas web. Sistema Operativo. Previo a la selección del Sistema Operativo que utilizaríamos, examinaríamos el cuadro comparativo mostrado en la Tabla 1 y la Tabla 2 de los dos más utilizados en el mercado, con la finalidad de obtener los argumentos necesarios para la elección del sistema operativo. ASPECTOS GNU/LINUX WINDOWS Filosofía El sistema es libre, cualquiera lo puede usar, modificar y distribuir Gratis, tantas licencias como se desee Miles de voluntarios en todo el mundo, cualquiera puede participar, pertenece a la “comunidad” Abierto a todos Muy estable, es difícil que se quede colgado. Los servidores que lo usan pueden funcionar meses sin parar. Pertenece a Microsoft, única compañía que lo puede modificar. Según las versiones cientos de euros, cada licencia. Lo desarrolla Microsoft, que vende algunos datos técnicos relevantes y oculta otros. Secreto empresarial Poco estable, es común verse obligado a reiniciar el sistema. Los servidores no admiten más allá de un par de semanas sin reiniciar. Muy poco seguro, existen miles de virus que atacan sistemas Windows. Precio Desarrollo Código fuente Estabilidad Seguridad Facilidad de uso Controladores de hardware Difusión Disponibilidad de programas Precio de los programas Comunicación con otros sistemas operativos Extremadamente seguro, tiene varios sistemas de protección. No existen virus para Linux En muchas tareas, poca día a día mejora este aspecto Desarrollados por voluntarios; algunos dispositivos no funcionan en absoluto porque sus fabricantes ocultan los detalles técnicos Poco extendido en hogares y oficinas, muy extendido en servidores Existen programas casi para todas las facetas, pero no hay tanta variedad como los programas para Windows Existen programas de pago, pero lo más habitual es que sean libres Lee y escribe en sistemas de archivo de Windows, Macintosh, etc. Por red se comunica con cualquier otro sistema. Cuando funciona, es sencillo de manejar Los fabricantes de dispositivos siempre venden con controladores para Windows, todos deben funcionar en pocos momentos Copa todo el mercado, salvo el de servidores Miles y miles de programas de todo tipo que se instalan con facilidad La mayor parte de los programas son de pago Sólo lee y escribe sus propios sistemas de archivos, y presenta incompatibilidades entre algunas de sus versiones. Tabla 1 Cuadro Comparativo Linux vs Windows. Fuente: Internet1 1 http://www.dacostabalboa/es/tabla-comparativa-windows-y-linux/1124 6 ASPECTOS GUI (Graphic User Interface) Uso de computadores Compatibilidad Difusión Preferencia del público Complejidad de manejo Aplicaciones Soporte GNU/LINUX Menos difundido de GNU, cada vez más creciente Reciente Linux, cierta compatibilidad con Microsoft dependiendo de las aplicaciones Menos difundido Creciente, a nivel absoluto con menos índices de aceptación Mayor Creciente, pero no alcanza los niveles de Microsoft Permanente, pero medible por la cantidad de usuarios WINDOWS Entorno visual más difundido de Microsoft No es reciente Microsoft Más difundido, por la afinidad que en el tiempo ha logrado Se mantiene los mismos niveles de aceptación. En oficinas y hogar Fácil Existen muchas y especializadas y versiones en serie Permanente si el software es licenciado Tabla 2 Ventajas de uso de Linux vs Windows Fuente: Autor Autor: Tesista El sistema operativo seleccionado es Windows, por las siguientes consideraciones: Fácil de instalarse y no requiere mayores conocimientos. Muchas aplicaciones de Microsoft buscan mantener un perfecto acoplamiento al sistema Operativo de Windows, el afán de mantenerse en la preferencia de desarrolladores de páginas web ha motivado la construcción de herramientas de desarrollo para que éste pueda elegir de entre una multitud. El licenciamiento del uso de Windows ya no es problema, en la actualidad al adquirir un computador, viene incluido el valor de la licencia. Los principales fabricantes de hardware incluyen los drivers que son fácilmente de instalar, además de que la red de internet ofrece muchos sitios para proveerse de ellos. La ejecución de la aplicación web no requiere de uno en particular, se puede realizar desde cualquier sistema operativo y cualquier navegador web, y, Por mejor conocimiento y manejo Windows y previniendo la continuidad del uso de este sistema operativo dentro de la Institución. A continuación haremos un estudio del software necesario con la finalidad de seleccionar la más favorable para realizar nuestra aplicación. Daremos una clasificación al diferente software analizado con la finalidad de seleccionar nuestras necesidades ajustadas al software estudiado, de acuerdo a la Tabla 3. 7 NIVEL 0 1 2 3 4 SIGNIFICANCIA Muy bajo, No, Malo Bajo, Regular Aceptable Alto, Bueno Muy alto, Si, Excelente Tabla 3 Niveles de Puntuación Fuente: Tesista Autor: Tesista 1.7.2 Lenguaje de Programación. Los lenguajes de programación más utilizados Tabla 4 para el desarrollo de páginas web son asp.net, java y Php, mostraremos sus características y los puntuaremos de acuerdo a la Tabla 3 con la finalidad de obtener el más favorable y utilizarlo en el desarrollo de la programación en el servidor web. CARACTERÍSTICAS Programación Similitud con otros lenguajes de programación Aceptación por facilidad de programación Mantenimiento En el Servidor Aceptación como herramienta open source de desarrollo Mayor consumo de Recursos Bases de datos Soporte para otras base de datos ASP.NET JAVA PHP 3 2 3 4 0 2 3 2 3 4 4 3 4 4 4 4 4 4 0 4 4 Tabla 4 Cuadro comparativo de lenguajes de programación en el servidor Fuente: Tesista Autor: Tesista El lenguaje seleccionado es PHP, por las siguientes consideraciones: La comunidad de usuarios de PHP es muy extensa, encontramos tutoriales, documentación, ejemplos, se comparten muchos conocimientos se puede ir perfeccionando. Es fácil de aprender, la sintaxis del lenguaje es muy parecida a la de otros lenguajes, de ahí que se necesitan tener conocimientos previos del lenguaje, JavaScript o el lenguaje de marcas, HTML conviven sin inconveniente alguno. El rendimiento de PHP realmente es bueno, el equipo hardware no requiere de muchos recursos. El bajo costo de acceder para mantener un hosting local es verdaderamente una ventaja para usar PHP. Está disponible para la mayoría de los sistemas operativos, en consecuencia su portabilidad es excede a los otros lenguajes de programación. 8 Tiene la capacidad de conectarse a una variedad de bases de datos de manera robusta. La preferencia y dominio de la programación en este lenguaje. 1.7.3 CS4. Adobe Creative Suite. Dreamweber. Crear una aplicación web de páginas dinámicas con código html es realmente una tarea muy compleja, ver Figura 1 Es un framework que permite desarrollar páginas web dinámicas sin mucha complejidad, Adobe es la empresa propietaria, ha tenido una amplia aceptación entre los desarrolladores por sus ventajas grandes al momento de programar, pues es ilustrativo y no requiere profundos conocimientos, desde luego es indispensable conocer el lenguaje PHP y Java Script. Características. 1 Es un editor visual de páginas web que cuenta con una amplia aceptación en los desarrolladores por su capacidad de manejar simultáneamente la programación en PHP, Java Script, Firefox y otras herramientas de Adobe Creative Site CCS. 2 Las funciones de visualización permite manejar una interfaz paralela de la vista de código la cual permite acceder al código fuente html, vista en vivo simulando cómo se verá a través del navegador, y la vista de diseño que nos permite desarrollar la aplicación, las tres vistas manejadas simultáneamente le dan al desarrollador una amplia visión de la aplicación que se está desarrollando. Figura 1 CS4 Dreamweber Fuente: Internet 1.7.4 Sistema de Gestión de Base de Datos. El SGBD es una aplicación que permite a los usuarios gestionar el almacenamiento, modificación y la extracción de información en una base de datos, incluye herramientas que le permiten el 9 acceso, la creación, modificación, actualización, borrado y el análisis de datos, los sistemas de bases constituyen un conjunto de varios archivos denominados tablas de la bases de datos, estos archivos están integrados y guardan relaciones entre ellos, las características de los SGBD son las siguientes: Gestión, seguridad accesibilidad a los datos. 1. Recursos Esta característica se mide por el costo en requerimientos necesario desde su instalación hasta su funcionamiento tanto en hardware o software. 1. Mayor Velocidad Es la rapidez con que efectúa el procesamiento de las transacciones. 2. Multiplataforma Es una combinación de hardware y software construida con la finalidad de buscar independencia de software de procesamiento de datos y captar la mayor cantidad de usuarios, esto ha permitido que estas plataformas se estén continuamente perfeccionando. 3. Soportes de lenguajes de programación. Esta característica nos permite observar sobre qué lenguaje de programación podemos utilizar en el desarrollo, actualización, mantenimiento y buscar una independencia en los datos, programas y procesos. 4. ACID. Propiedad de que la transacción de ha realizado completamente Atomicidad. Propiedad de que la transacción de ha realizado completamente Consistencia. Se ejecutan únicamente transacciones que no van a romper las reglas de integridad de la bases de datos Aislamiento. 10 Se ejecutan dos transacciones sin que entre ellas se afecten cuando actúen sobre la misma información. Durabilidad. Una vez realizada la transacción sobre la información, esta permanece aun cuando falle el sistema 5. Seguridad Backups Se realiza las copias de seguridad o respaldos de las bases de datos en el caso de pérdida, daño, inconsistencia, etc. que puedan surgir ante algún ataque informático, virus, catástrofes, robos y poder reponer la base de datos al sistema sin mayores inconvenientes. SSL Es un protocolo que administra la seguridad de las transacciones que se realizan a través de Internet, se basa en el cifrado de claves que garantizan la seguridad de los datos que se envían Encriptación Es el procedimiento que se utiliza con el fin de proteger la información legible de bases de datos, contraseñas, archivos que viaja por el internet mediante algoritmos, de esta manera se protege de uso incorrectos de personas inescrupulosas. 6. Accesibilidad a los datos Los SGBD tienen incorporados funciones que le permiten al usuario informes y consultas, las interfaces son muy útiles, pues no tienen que estarse programando, estas ya vienen incluidas en el SGBD. 7. Controlar la redundancia de los datos El SGBD permite controlar la redundancia en los datos dentro de las tablas, al tener bien diseñada la base de datos cualquier actualización o modificación alterará a todo el entorno de datos involucrado y no se permitirá actualizaciones fallidas. 11 8. Mantenimiento El mantenimiento de las bases de datos nos permitirá seguir teniendo la información en un nivel óptimo de rendimiento y estabilidad, la información que ya no sea necesaria deberá ser retirada, liberando del disco espacio no necesario, y para ello los gestores de bases de datos tienen sus propias herramientas. Las operaciones de mantenimiento de las aplicaciones están sujetas a cambios, los gestores de bases de datos permiten separar la descripción de los datos de las aplicaciones, por lo tanto se simplifica el mantenimiento de las aplicaciones que acceden a la base de datos. 9. Software libre. El seleccionar la licencia de la base de datos corresponde la necesidad y condición de adaptar las aplicaciones con herramientas libres o propietario. Los gestores de bases de datos más utilizadas son PostGreSql, MySql, Oracle, mostraremos sus características en Tabla 5 y su calificación de acuerdo a la Tabla 3 con la finalidad de seleccionar la más favorable y utilizarlo en el desarrollo del sistema. CARACTERÍSTICA EMPRESA Gestión Menor consumo de recursos Mayor velocidad Multiplataforma Soporte de lenguajes de programación ACID Seguridad Backups SSL Encriptación Accesibilidad a los datos Funciones incorporadas Control de redundancia de datos Mantenimiento POSTGRESQL2 ver. 9 PostgreSQL Global Development Group 16 3 MYSQL3 ver. 5 Sun MicroSystem ORACLE4 ver. 11g Oracle Corporation 20 4 18 3 2 4 4 4 4 4 4 4 3 3 12 4 4 4 15 4 4 11 4 4 3 16 4 4 11 4 4 3 11 4 4 4 4 3 4 3 2 www.meetup.com/PostgreSQL-Espana/events/220296287/ mysql.es.downloadastro.com 4 www.oracle.com/index.html 3 12 4 43 Software Libre TOTAL 4 47 0 40 Tabla 5 Cuadro comparativo de Gestores de base de datos más conocidos Fuente: Tesista Autor: Tesista El SGBD seleccionado es MySql por las siguientes consideraciones: Para su uso puede hacer uso de plataformas de desarrollo como: WAMP (Windows + Apache + Mysql + Php). XAMP (Cualquier Sistema Operativo + Apache + Mysql + Php). LAMP (Linux + Apache + Mysql + Php). MAMP (Macintosh + Apache + Mysql + Php). El menor consumo de recursos. Por la accesibilidad a los datos desde distintos lenguajes de programación. 1.7.5 Servidores Web. Un servidor web es un programa que se ejecuta continuamente en un computador, un usuario o cliente de internet solicita la ejecución de una aplicación alojada en el servidor mediante el direccionamiento de la url, el servidor envía el código correspondiente de la aplicación a la dirección desde dónde llamó el cliente y es ahí donde el navegador ejecuta el código recibido presentando lo solicitado a través de páginas web. Por lo general se usa el protocolo HTTP para estas comunicaciones, perteneciente a la capa de aplicación del modelo OSI5, al protocolo HTTP se le asigna el puerto TCP 80. Las empresas se han visto favorecidas por los avances en la conectividad y la disponibilidad de banda ancha, actualmente es común que los servidores los establezcan dentro de la misma empresa, sin tener la necesidad de recurrir al hosting de proveedores externos y podremos realizar nuestras propias pruebas del desarrollo via localhost, acceder y proteger nuestros datos, impedir la publicidad, entre otros, veamos una arquitectura de servidores de la Fundación Wikimedia, Figura 2 5 OSI, Modelo de Interconexión de Sistemas Abiertos (ISO/IEC 7498-1) 13 Figura 2 Arquitectura de servidores de Wikimedia Se han desarrollados diferentes servidores web, siendo los más conocidos los siguientes Tabla 6: Apache, IIS, Tomcat, mostraremos sus características y su calificación de acuerdo a la Tabla 3 con la finalidad de seleccionar el más favorable y utilizarlo en del desarrollo del sistema. CARACTERÍSTICA APACHE IIS TOMCAT Total Software Libre Conexiones permanentes 52 4 4 52 4 4 38 4 4 Módulos Soporte virtual Autenticación CGI´S Envío de archivos Páginas de error personalizas Conexiones seguras SSL PHP Base de datos 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 0 1 4 1 4 4 0 Sitios web dinámicos ftp Líneas de código 4 0 185.000 4 4 ¿ 4 0 ¿ c ¿ Java Código fuente Tabla 6 Servidores Web más conocidos. Fuente: Internet 6 6 Autor: ekathy.blogspot.com/ 14 El Servidor web seleccionado es Apache por las siguientes consideraciones: Es un servidor web HTTP de código abierto, escrito en el lenguaje C, de distribución libre y el más popular, pues ha logrado captar el 50 por ciento de la oferta de servidores web, la comunidad Apache Software Foundation es un grupo que exclusivamente lo desarrolla, sin embargo proveen de suficiente información para que los desarrolladores tengan las herramientas que le permitam realizar mejoras al software. La principal caracteristica de Apache es que funciona en varias plataformas así Windows, Mac, Linux, provee de una estructura planificada de directorios, informe de errores, comprobación de escritura para URL, proveen de diferente información para que los desarrolladores tengan la herramienta que les permitan realizar mejoras en el servidor, manuales online, tiene un lenguaje integrado para programación script, tiene soporte para host virtuales, se pueden conectar host que estén en otras areas de trabajo mediante redes wan, y su popularidad se demuestra a través de los foros Apache. Del análisis realizado a las diferentes estrategias de solución al problema de implementación de un sistema CMMS en el que intervienen varias plataformas del tipo servidor web, servidor de aplicación, servidor de base de datos, servidor de correo se ha podido seleccionar la mejor estrategia de solución basada en la utilización de Windows como sistema operativo y el software libre con la definición de un servidor web basado en Apache y como manejador de bases de datos la utilización de Mysql esencialmente por su alto nivel de rendimiento y confiabilidad, adicionalmente a esto hemos analizado como parte de la solución de nuestro problema la implementación de nuestro propio servidor de correo integrado a nuestro sistema, y se ha utilizado el Sendmail y como parte fundamental de la solución se ha escogido plantear el CMMS bajo el lenguaje de programación PHP, lenguaje totalmente orientado a soluciones web que permiten acceder a la información a través de cualquier browser que trabaje con los protocolos http. Amerita que seleccionemos la plataforma de WAMP que integra todo en un solo paquete denominado frameset WAMPSERVER acrónimo que proviene de Windows 7, Apache, MySQL y Php. 15 1.7.6 Plataforma de desarrollo Wampserver La plataforma de Wampserver es un entorno de desarrollo con el que se pueden crear aplicaciones web para enviar páginas estáticas o gestionar información mediante las páginas dinámicas. Permite desarrollar la aplicación sobre un servidor local Apache, los programadores la utilizan como servidor de pruebas para ensayar de forma segura y confiable con la finalidad de previsualizar y probar el código de la aplicación mientras se está desarrollando, posteriormente cuando la aplicación está lista se procede a subir a un hosting de Internet, Figura 37 Figura 3 Funcionamiento de WAMPSERVER El proceso de instalación si lo realizamos por separado puede inducirnos a incurrir en algunos errores, Wamp permite manejar la instalación de toda la plataforma de forma segura además que ofrece un panel de control desde dónde se puede realizar tareas de administración y mantenimiento. Ofrece también facilidades para poder modificar alguna configuración necesaria. Debemos indicar también que Wamp es gratuito y tiene el consentimiento de comunidades que desarrollan mejoras, literatura diversa, foros y mucha información en general. Si bien podemos trabajar con php dentro de Wamp podemos utilizar el frameset de CS4 Adobe Dreamweber. 7 Fuente: Internet 16 1.7.7 Uso del Servidor Wamp. Si ya tenemos instalado nuestro servidor WAMP, acceder a él es una tarea sencilla. Si la aplicación está instalado en nuestra red interna en un equipo y tiene la dirección 192.168.1.2 o disponemos de una IP Pública, nos enlazamos desde cualquier otro equipo y en cualquier lugar únicamente si nos dirigimos en el navegador mediante la dirección 192.168.1.2 de la red interna o mediante la ip publica y logramos ingresar a la aplicación. Observe la Figura 4 Figura 4 Permite Instalar aplicaciones para uso en la red Fuente: http://recursostic.educacion.es/observatorio/web/fr/software/servidores/800-monograficoservidores-wamp Veremos a continuación la clasificación de los componenetes de Wampserver 2.2 con las acotaciones necesarias. 1.7.8 Módulos de Apache Los módulos es una forma de agrupar o modularizar ciertos comportamientos en el Servidor, una de las principales razones de emplear módulos es que no todas las instalaciones son iguales, pues las instalación no requieren de las mismas funcionalidades, si todas las funcionalidades de Apache fueran incluidas en una sola versión de Apache lo harían sumamente pesado. 1.7.9 EL Encriptador MD5 de Apache Del inglés Message-Digest Algorithm 5, algoritmo de encriptación de información, diseñado por Ronald Rivest8 del MIT9 y permite encriptarla volviéndola segura a la información de manera que pueda enviarse. 8 9 http://people.csail.mit.edu/rivest/bio.html Massachusetts Institute of Technology 17 1.7.10 Sendmail El propósito principal de Sendmail es el de transferir correos de forma segura entre hosts, usualmente usando el protocolo SMTP. Sin embargo, sendmail es altamente configurable, permitiendo el control sobre casi cada aspecto del manejo de correos, incluyendo el protocolo utilizado. Muchos administradores de sistemas seleccionan sendmail como su MTA debido a su poder de escalabilidad. 1.7.11 Navegador Web. Para la ejecución del sistema se requiere de cualquier navegador web sea Internet Explorer, Mozilla Firefox, Opera, Androide en un computador sea de escritorio o sea un dispositivo portátil notebook, teléfono o tablet con conexión a internet. 1.7.12 Requisitos de Hardware para el desarrollo del sistema. Computador disco duro 250 GB. Memoria RAM 4 GB. Procesador Intel Pentium Core Duo 3.10 GHZ. 18 CAPÍTULO 2 2 REVISIÓN BIBLIOGRÁFICA. 2.1 Antecedentes. Según el documento “Normas de Control Interno para las Entidades, Organismos el Sector Público y de las Personas Jurídicas de Derecho Privado que dispongan de recursos públicos de la Contraloría General del Estado”, (ESTADO, Contraloría General del, 2009), el subtítulo “410-09 Mantenimiento y Control de la Infraestructura Tecnológica”, (ESTADO, Contraloría General del, 2009, pág. 78) dice "La Unidad de Tecnología de Información de cada organización definirá y regulará los procedimientos que garanticen el mantenimiento y uso de la infraestructura tecnológica de las entidades." (ESTADO, Contraloría General del, 2009, pág. 78). El numeral 6, manifiesta "Se elaborará un plan de mantenimiento preventivo y/o correctivo de la infraestructura tecnológica sustentada en revisiones periódicas y monitoreo en función de las necesidades organizacionales (principalmente en las aplicaciones críticas de la organización), estrategias de actualización de hardware y software, riesgos, evaluación de vulnerabilidades y requerimientos de seguridad", (ESTADO, Contraloría General del, 2009, pág. 78), El Numeral 7 manifiesta, “Se mantendrá el control de los bienes informáticos a través de un inventario actualizado con el detalle de las características y responsables a cargo, conciliado con los registros contables." (ESTADO, Contraloría General del, 2009, pág. 79), El Numeral 8 manifiesta, "El mantenimiento de los bienes que se encuentren en garantía será proporcionado por el proveedor, sin costo adicional para la entidad." (ESTADO, Contraloría General del, 2009, pág. 79), El subtítulo 410-12 Administración de soporte de tecnología de información, "La Unidad de Tecnología de Información definirá, aprobará y difundirá procedimientos de operación que faciliten una adecuada administración del soporte tecnológico y garanticen la seguridad, integridad, confiabilidad y disponibilidad de los recursos y datos, tanto como la oportunidad de los servicios tecnológicos que se ofrecen.", (ESTADO, Contraloría General del, 2009, pág. 86). El Numeral 8 manifiesta, “ Administración de los incidentes reportados, requerimientos de servicio y solicitudes de información y de cambios que demandan los usuarios, a través de los 19 mecanismos efectivos y oportunos como mesas de ayuda o de servicios, entre otros." (ESTADO, Contraloría General del, 2009, pág. 81) El Numeral 9 manifiesta, "Mantenimiento de un repositorio de diagramas y configuraciones de hardware y software actualizado que garantice su integridad, disponibilidad y faciliten una rápida resolución de los problemas de producción." (ESTADO, Contraloría General del, 2009, pág. 81). El Numeral 10, manifiesta “Administración adecuada de la información, librerías de software, respaldo y recuperación de datos.", (ESTADO, Contraloría General del, 2009, pág. 81). Al no existir antecedentes de alguna implementación sea adquirida o desarrollada en la institución de un sistema de características propias de un asistente de administración de mantenimiento, se ha planteado al vicerrectorado de la institución la realización del presente proyecto y como tal sea tomado como trabajo de tesis de grado. El departamento como tal quiere emprender dentro de su proceso el fortalecimiento a través de un sistema de información que le permita llevar la gestión completa de las actividades, con todas las ventajas que conlleva. 2.2 Fundamentación Teórica. El desarrollo del proyecto precisa de un marco teórico y explicaciones básicas que aborde el desarrollo de una herramienta Web de Administración del Mantenimiento, trataremos abordar desde la problemática del desarrollo de software de mantenimiento y su viabilidad, hasta los conocimientos necesarios para lograr comprender la construcción de un CMMS para equipos informáticos y los actores correspondientes. 2.2.1 El Desarrollo del Software de Mantenimiento. El software existente de administración de mantenimiento CMMS está orientado en su mayoría al ámbito industrial, no tiene una orientación hacia el mantenimiento de equipos informáticos y además no provee una relación fortalecida con el cliente mediante un helpdesk. El software de mantenimiento CMMS no se ajusta a los requerimientos de los equipos de computación, por lo general estos tienen menos desgaste que los equipos mecánicos y las operaciones de mantenimiento suelen ocupar menos mano de obra, menos tiempo y hasta el costo es más reducido. 20 Entonces no se ha desarrollado un sistema con la investigación adecuada, conviene realizar entonces un análisis para que las organizaciones a la hora de tomar una decisión de adquirir un CMMS lo haga de la manera más óptima. De cualquier manera las decisiones que deban tomar los analistas pasan siempre primero por un análisis de requerimientos de información de los usuarios y sistemas. Partiendo por las consideraciones de si es más conveniente desarrollar, comprar o arrendar software comercial para los sistemas nuevos. 1. Consideraciones de desarrollar software personalizado: Beneficios. Respuestas propias a las necesidades locales del negocio. La creación de su propio software podría dar una imagen positiva para hacer frente a la competencia. La empresa dispondrá de personal interno para mantenimiento y mejoramiento de la herramienta creada por sus propios empleados y el código fuente de sus aplicaciones. Satisfacción única de poder desarrollar sus propias herramientas. Inconvenientes. El software creado a la medida por lo general tiene un costo inicial mayor que un software comercial no alineado a sus procedimientos o el de un proveedor de servicios de aplicación. La necesidad y riesgo de realizar contratos a personal no capacitado para el desarrollo del software personalizado. La capacitación continua que deberá dar la empresa a los desarrolladores para buscar posteriores mejoras o escalabilidad de sus sistemas. 2. Si se comprara paquetes comerciales. Beneficios. Estos paquetes se han ido mejorando mediante la interacción de los usuarios con los fabricantes del software a través de lanzamientos de versiones mejoradas. Por la cantidad de usuarios que adquieren, las empresas deben demostrar ante el cliente pruebas de confiabilidad. 21 Otras funcionalidades complementarias de sus herramientas básicas a sus sistemas comerciales algo más especializados, o sean miembro de alguna familia de productos. El costo inicial de este tipo de software es más bajo que el software a la medida o el que se provee a través de un proveedor de servicios de aplicaciones. La imagen del sistema generado por otras empresas que también lo utilizan, influye en la decisión de la empresa al momento de proveerse del software comercial. Inconvenientes. No existiría la personalización adecuada ni la implantación de acuerdo a las necesidades propias de la organización. La empresa debe sujetarse a los alcance de las características actuales del sistema. El desconocimiento de los alcances y grado de adaptabilidad a sus sistemas. El no tener el código fuente que le permita avanzar en el mejoramiento. Estar sujetos a los cambios u omisiones de los fabricantes. Tienen una personalización limitada de adaptación a los sistemas y procedimientos de la empresa. Se sostiene que luego de algún tiempo de uso, los fabricantes de software comercial podrían abandonar el soporte, obligando a la empresa a adquirir nuevas versiones u otros sistemas que reemplacen a los adquiridos. 3. Al considerar contratar los servicios de un proveedor de servicio de aplicaciones. Beneficios. Las organizaciones no requieren contratar o capacitar empleados para usos de los sistemas. Los empleados utilizan su tiempo e tareas que no son de tecnologías de desarrollo y la empresa no requieren de recursos tecnológicos para el desarrollo. Pérdida del control de la seguridad, confidencialidad de los datos, tecnologías, programaciones y estrategias. Depender de terceros con la imposibilidad de innovar el software, y conseguir mejoramientos, escalabilidad, etc. Inconvenientes. Pérdida de la confidencialidad y hasta seguridad en el tratamiento de la información. 22 La necesidad de contratar seguros y garantías no necesarias. La necesidad de establecer puentes de comunicación entre personal afín de la administración de la información y la empresa externa que de servicio de procesamiento de datos. Estar ligada a personas que pueden no conocer la realidad ajustada a la situación de la empresa. Crear un rubro importante para la administración del procesamiento de la información que debe ser analizada por las personas y tratada por los propios usuarios. 2.2.2 La pérdida de la autonomía de la administración de la empresa. La Administración del Mantenimiento. Las empresas públicas a través de las políticas de gobierno están abasteciendo de importantes recursos tecnológicos, inversiones orientadas al mejoramiento de la calidad y obtener un mejor resultado en la formación académica de sus estudiantes. Como tal, es de suponer que las empresas protejan las inversiones a través de acciones que involucren mejores prácticas de mantenimiento de sus recursos existentes y poder administrarlos racionalmente. La noción del mejoramiento del mantenimiento de equipos se conformaba únicamente a “cuidar” que estos no se dañen mediante un control y pronósticos no adecuados, no reales y no sistemáticos que terminaban alejando el buen rendimiento de los equipos. La mayoría de los sistemas de mantenimiento eran aplicaciones diseñadas para generar órdenes de trabajo emergentes, la administración de activos, horas hombres, materiales y costos fueron de importancia secundaria y la capacidad analítica era en la mayoría de los sistemas muy limitada. Ahora, el mantenimiento es parte de las operaciones de igual valía que el mismo funcionamiento de ellos, las empresas cuentan con departamentos de mantenimiento conformados por técnicos que buscan ayudar a la empresa cuidar la inversión y que permanentemente estén en funcionamiento. 23 2.2.3 EL CMMS (Computerized Maintenance Management System) 2.2.3.1 Generalidades El CMMS concibe la idea de manejar de manera óptima las incidencias del uso de equipos informáticos, el mantenimiento controlado y el desarrollo de la comunicación entre directivos, técnicos de mantenimiento y usuarios. Un CMMS es una estrategia que debe ser bien recibida por los departamentos de mantenimiento de equipos informáticos, debe adoptarse como una solución inteligente para el desempeño de los técnicos, que puedan facilitar respuestas adecuadas al seguimiento del mantenimiento, reparación, soporte y asesoría a los usuarios, esto permitirá un mejor desempeño del departamento. Mediante la masificación del uso de internet, la creciente mejora en las capacidades de desarrollo de las herramientas para crear software cada vez más comunicativo y la necesidad de que los usuarios puedan tener un camino abierto con los técnicos para que puedan abastecer sus requerimientos de asesoría ha hecho posible que se implante una herramienta que dé solución a ese contexto y esa herramienta se llama CMMS. El uso efectivo de sistemas computarizados para la administración y gestión del mantenimiento es fundamental para el mejoramiento de una empresa. Sin embargo un CMMS se convierte en una herramienta que siendo mal utilizada por los técnicos generaría mucha dependencias y estancaría la búsqueda de soluciones inmediatas al realizar un seguimiento pormenorizado de las actividades de mantenimiento, por esta razón los CMMS deben ser bien analizados antes de procederse a comprarse o bien a empezar a desarrollarse como un aplicativo para la empresa. Un aspecto importante es que el CMMS debe estar a la mano en cualquier lugar dónde los técnicos están realizando las tareas de mantenimiento para así actualizar inmediatamente sus registros. 2.2.3.2 Categorías de Aplicación de CMMS En su artículo "La cultura de la confiabilidad" (LEVIT, Joel, 2013) describe "50 preguntas para ayudarle en la búsqueda de su software para cmms", cuestionario que servirá para evaluar algún sistema CMMS que se quiera adquirir, el cliente deberá analizar si se ajusta al tipo de uso de los 24 equipos, la forma y procedimientos que se den a los sistemas de producción, entonces hemos seleccionado los siguientes de acuerdo a: Orden de Trabajo, Almacén, Reportes e Historial de Mantenimiento, Sistema de Mantenimiento Predictivo y Generales Orden de Trabajo 1. Haga una orden de trabajo fácil de utilizar que permita la conversión futura a códigos de barras, terminales portátiles, y a otros avances tecnológicos. 2. Clasifique todo el trabajo por una cierta clase de código de razón de la reparación: Mantenimiento Predictivo PM (Predictive Maintenance por sus siglas en inglés), correctivo, interrupción, decisión de gerencia, etc. 3. Será más fácil que una sola persona revise las órdenes de trabajo incluidas antes de la autorización para iniciar el trabajo. Algunos sistemas tienen un campo que tiene que ser comprobado por un supervisor o un encargado para liberar la orden de trabajo al siguiente paso del proceso. 4. Proporcione la capacidad de estructurar fácilmente informes precisos (inmediatamente) para contestar a las preguntas de los directivos. Esto se llama un escritor de informes. 5. Permita que la producción descubra qué sucedió (qué estado) a petición del trabajo sin poder realizar cambios. 6. Calcule la acumulación de trabajo y exhibirla por tema. 7. Ambas órdenes de trabajo abiertas y cerradas se pueden exhibir o imprimir muy fácilmente. Mantenga las órdenes de trabajo disponibles por lo menos 5 años, y preferiblemente desde la puesta en operación del equipo hasta su retiro. 8. Facilite programación del trabajo con estándares de trabajo por tarea, capacidad de clasificar y de recurrir a las órdenes de trabajo abiertas por localización del trabajo, línea, y de otras maneras. Almacén. 1. Facilita el análisis imprimiendo todas las partes mayores a $500. Facilita el análisis del A-F (de mayor a menor importancia) imprimiendo el costo unitario del producto (en orden descendente) multiplicándolo por el uso anual. 2. Parte del almacenaje del Sistema tiene una función de búsqueda que ayuda al mecánico o encargado del almacén para encontrar las partes o piezas menos solicitadas. 3. Genera un catálogo de partes por tipo o por proveedor, con consumo anual para facilitar la negociación combinada del contrato. 4. Recomiende los máximos y mínimos del inventario, lugares de entrega, cantidades. 25 Reportes e Historial del Mantenimiento 1. Mantenga la historia del mantenimiento que es suficientemente detallada, para saber que sucedió en años posteriores. 2. Proporcione el ciclo completo de la información para seguir la petición del servicio edición de la orden de trabajo de mantenimiento-trabajo completo-cliente satisfecho. Incluya el tiempo transcurrido y otros factores de análisis. 3. Proporcione informes para presupuestos, análisis del personal, evaluación de programa, desempeño. 4. Proporcione información para la planeación, programación y asignación del trabajo. Tenga la capacidad para almacenar y recuperar los planes de trabajo, copiar viejos planes de trabajo, y modificar planes existentes cuando ingrese nueva información. 5. Pueda aislar todo el trabajo realizado (clase, arreglo, analizar, seleccionar, o enlistar) por orden de trabajo, mecánico, activo, edificio, proceso, producto, división, piso, sitio y tipo de equipo o activo. 6. Proporcione la capacidad de estructurar fácilmente informes precisos (inmediatamente) para contestar a las preguntas de los directivos. Esto se llama un escritor de informes. 7. Tenga la capacidad de generar historial del equipo/activo desde su puesta en operación (instalación, construcción, o conexión) al presente con todas las reparaciones mayores y resúmenes de las menores. 8. Los reportes del sistema se diseñan alrededor de los principios de Pareto, donde el sistema ayuda a identificar los pocos factores importantes que usted maneja y le ayuda a manejar las pocas cosas importantes contra muchas triviales. 9. El sistema proporciona informes sobre contratista contra trabajo interno. El sistema puede seguir el trabajo del contratista con tanto detalle como en el trabajo interno. 10. Proporcione informes que cargan el costo de mantenimiento al departamento o centro de costos. 11. Tiene informes con tiempo entre fallas (MTBF Mean Time Between Failures) que muestra con qué frecuencia la unidad ha fallado, cuántos días (u horas de la máquina) transcurrieron entre las fallas, y la duración de cada reparación (MTTR). 12. Alerta sobre reparaciones constantes cuando un técnico necesita cierta ayuda. 26 Sistema de Mantenimiento Predictivo 1. Permita que los mecánicos preparen reportes fácilmente de las deficiencias encontradas en viajes de inspección del PM. El sistema entonces genera y sigue automáticamente una orden de trabajo prevista del mantenimiento. 2. Produce automáticamente órdenes de trabajo del P.M. en el día correcto, lectura correcta del medidor, etc. El sistema PM puede clasificar órdenes de trabajo por la localización para reducir al mínimo el tiempo del recorrido. 3. Pueda exhibir la cantidad de trabajo del P.M. por un período futuro, tal como un año por al mínimo el recorrido. 4. Permite la captura de datos de subsistemas predictivos de mantenimiento. Esto puede incluir tendencias, días para recordar, lineamientos, comparación a las lecturas anteriores. 5. Destaca situaciones donde es más costosa la actividad del P.M. que la interrupción. 6. Tiene informes simples que relacionen el P.M. horas/material con horas/material correctivo con la emergencia horas/material. Esto demostrará la eficacia del programa del P.M. Estas proporciones se convierten en pruebas para la mejora. Información Común General. 1. El sistema pueda manejar 3-4 veces más activos que los que nunca imagino tener. Aun las compañías medianas y más pequeñas van a la caza de la adquisición. Un fabricante pequeño exitoso pudo triplicar (o más) en tamaño durante la noche. 2. El sistema tiene un sistema de localización lógico para localizar activos y donde se hace el trabajo. 3. El sistema sigue la garantía para los componentes, y señala el trabajo en garantía por medio de una bandera para recuperar los fondos. 4. Fácil de utilizar y aprender para los principiantes, y rápido de utilizar para los expertos. 5. El sistema se integra o se puede integrar a software de compras, ingeniería, nómina/contabilidad. 6. El sistema maneja fácilmente una secuencia P.M. tal como una ruta de lubricante, ruta de cambio de filtro. 7. El sistema opera en hardware estándar (no hardware especial incompatible con todo lo demás). El sistema es compatible con las redes de área local existentes (si es un producto de la PC). 8. El vendedor del sistema tiene la capacidad financiera para terminar el contrato (y permanecer en el negocio por varios años después de la instalación). 27 9. El vendedor tiene personal de soporte para el software que usted puede contactar fácilmente, vía un número 800. Cuando llama, el personal conoce el producto y el mantenimiento de fábricas. 10. El vendedor proporciona adecuaciones particulares por un costo adicional. Tienen actualizaciones en el transcurso. Los programadores son empleados del vendedor o trabajadores bajo contrato. 11. El vendedor tiene una organización local de instalación. 12. El vendedor tiene la experiencia en el manejo de instalación de proyectos del tamaño de su empresa; tienen experiencia con la puesta en operación de proyectos de este tamaño. Gary Brown(2013) La cultura de la confiabilidad, consultado el día 8 de diciembre del 2013 de la World Wide Web: http://confiabilidad.net/articulos/cree-usted-que-un-sistemacomputarizado-de-gestion-del-mantenimiento-cmms-s/ “El impacto del CMMS en el futuro de un negocio cobra vida al considerar que “la gestión del mantenimiento generalmente representa entre 40% y 50% de los presupuestos operativos; hay enormes ahorros a partir de una mayor eficiencia y reducción de desperdicios.”(1) Esta realidad ha quedado plenamente plasmada en evaluaciones efectuadas después de implementar y usar un CMMS. Mi experiencia es que la confiabilidad del equipo puede aumentar de un 35% a un 50%; un mejor manejo del flujo de trabajo conlleva a mayores ahorros entre el 5% y 15% de los costos generales de mantenimiento; los ahorros en costos a partir de optimización de inventarios y compras pueden alcanzar hasta el 20% del costo total del inventario; y una ganancia del 20% en tiempo activo del equipo redunda en una mayor productividad y mejor asignación de recurso.” "Un CMMS fortalece la gestión de los equipos" "La necesidad de capturar y mantener información histórica, precisa y significativa acerca de los equipos hace que las compañías inviertan en el CMMS. Esta base de datos interactiva de información es el medio continuo que se convierte en la vida misma de la función de mantenimiento. En estos tiempos de mayor competitividad global, las organizaciones hoy en día están en un constante estado de cambio. Entre las tendencias claves detrás de este cambio se incluye la tecnología en expansión vertiginosa, una mayor demanda por competencias y capacidades tanto individuales como organizacionales, cada vez menores tiempos de entrega y cambios en los requerimientos de personal calificado. 28 El CMMS es el vehículo ideal para cumplir con estas necesidades y permite la planificación, medición, evaluación, operación y práctica del mantenimiento, y proporciona información acerca de la condición de los equipos críticos." El departamento de mantenimiento y el rol que desempeñan los técnicos de mantenimiento en las empresas deben también mejorar: el alcance sus operaciones, ya no debe ser un servicio que únicamente repare daños y nada más, ya no pueden seguir existiendo como islas cerradas, aisladas y secundarias de las aplicaciones principales de la empresa. Tienen que funcionar como un eje principal, no como componente periférico de la empresa. Para logra este nuevo rol, tendrán que asociar arquitecturas abiertas que permitan incorporar acciones de filtración, almacenaje, consultoría, inventarios, emitir criterios de trabajo, mejoramiento de uso de instalaciones, cambios, etc. Actualmente se está dando la importancia debida haciéndolo constar como un elemento más dentro de las denominadas unidades de tecnología de la información y a éstas estar dentro del organigrama institucional como un organismo que coordine todo el procesamiento de datos. Utilizando la tecnología informática, los sistemas podrán ofrecer nuevas perspectivas sobre desempeño tales como: Tendencias de desempeño del ciclo de vida de equipos. • Desempeño comparativo de ciclo de vida de activos. • Dejar conocer lo bueno y lo malo (benchmarking). • Identificación de factores clave optimizando el costo de equipos, unidades y negocios. • Productividad de trabajos y de equipos. • Condición de los componentes de equipo. • Información de materiales, tendencias de movimiento y niveles de seguridad para repuestos. • Monitoreo, control y administración de desperdicios tóxicos. • Planeación, programación, ejecución y evaluación de trabajo. 29 2.2.3.3 Estructura Informativa de un CMMS 1. Información de datos de equipos y su historial. En la estructura de un CMMS, es importante tener la información de: datos técnicos, distribución y ubicación de equipos, ubicación de fallas, el historial de los trabajos de reparaciones realizados a los equipos. 2. Información de Mantenimiento Preventivo. Un CMMS contendrá parámetros que serán planificados y que servirán de entrada a los módulos de mantenimiento preventivo, estos pueden ser: el recurso humano que involucrado, los equipos que se intervendrán, las operaciones que se desarrollarán, la frecuencia con que se ejecutará, las herramientas que se utilizarán y el estimado de repuestos que deberán cambiarse y los tiempos de inicio, suspensión, continuación y finalización del trabajo. 3. Inventarios La información de Inventarios brindará al CMMS el registro de todo el inventario distribuido a los diferentes usuarios, esta información debe contener partes, características del equipo, ubicación, series, estado de funcionamiento, números de serie de partes, etc. 4. Recursos Un CMMS deberá tener registrado a los técnicos que desarrollan tareas propias de mantenimiento, así como especialidad, responsabilidades, horario de trabajo. 30 horario de trabajo, preparación, 2.2.3.4 Estructura Básica de un CMMS. La Figura 5 muestra la Información Básica de un CMMS Figura 5 Diagrama de información básica de CMMS Fuente: http://es.scribd.com/doc/38700453/cmms, pág18 Autor: Oscar Wolfang Junuman Garrido 31 2.2.3.5 Estructura General de Sistemas CMMS. En la Figura 6 se muestra la estructura de un CMMS Figura 6 Diagrama de la estructura general de un CMMS Fuente: http://es.scribd.com/doc/38700453/cmms, pág19 Autor: Oscar Wolfang Junuman Garrido Los sistemas informáticos no solucionan los problemas por su propia cuenta. Es más, si se desarrollan o implantan independientemente de las políticas, procedimientos, procesos y organizaciones de la empresa, fácilmente pueden incrementar los problemas. El mejoramiento empresarial en estos tiempos demanda una fusión de tecnología informática e ingeniería de negocio, herramientas nuevas, procesos de negocios eficientes y eficaces, y una estructura organizacional sana. 32 2.2.3.6 Rating de los CMMS. La Tabla 7 Rating CMMS mostramos la clasificación de los 10 toptens CMMS10 del 2015 de acuerdo a: 4. 5. 6. 7. 8. 9. Gestión de Seguimiento (Tracking Management) Gestión de activos (Asset Management) Gestión de órdenes de trabajo (Work Order Management) Características (Features) Configuraciones admitidas (Supported Configuration), Ayuda y Soporte Help & Support Tabla 7 Rating CMMS 7. Manager Plus 8. Hippo CMMS 8.60 8.45 8.15 7.60 Assets Inventory Work Orders Repair Costs Labor Recent Purchases Track Warranties Attach Documents Enter Meter Readings Barcode Capabilities Submit Work Order Requests Edit Work Orders Create Work Orderds Assign Work Orders Preventive Maintenance Maintain Maintenance Schedules Upkeep & Condition Monitoring Asset Management Work Order Management Ease of Use Score 95% Number of Users Notification Permission Settings Customize Reports Mobile Capabilities Audit Trail 10 Add-On Module 10. DPSI Maint 6. Maintenance Pro 8.75 9.85 9. MPulse 5. Net Facilities 4. MicroMain 3. FaciliWorks 2. Maintenance Pro 1. eMaint CMMS 9.48 9.40 9.18 8.98 Tracking Management Rating 80% Features 90% 85% 80% 90% 95% 85% Not available Not availabl e www.maintenance-management-software-review.toptenreviews.com 33 Add-On Module Web_Based Application Voice Recognition Windows 8 Supported Configurations Windows 7 Windows Vista Windows XP Mac OS X Help & Support Score Telephone Email Live Chat Online Resources Online User Guides Fuente: Internet Autor: Renee Shipley11 Help & Support Not availab le Add-On Module Según (TAYLOR, 2014)12 los sistemas CMMS más recomendados son al 4 de junio del 2014 los siguientes: 1. Maintenance Connection.- El mantenimiento es un sistema de software basado en Web para la gestión del mantenimiento. Está dirigido a las organizaciones en la gestión general de las instalaciones, salud, manufactura, gobierno, servicios públicos, almacenes, desarrollo energético, agencias de viajes, y otras industrias especializadas, Figura 7 Figura 7 CMMS MAINTENANCE CONNECTION Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 2. EMaint X3.- Es un sistema asequible, fácil de usar y ofrece gestión de activos y control de inventarios, monitoreo de condiciones y herramientas de programación, Figura 8 11 12 http://maintenance-management-software-review.totptenrviews.com/ http://www.softwareadvice.com/cmms/ 34 Figura 8 CMMS emaint Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 3. Infor EAM.- Una solución de gestión de activos de gran alcance, Infor EAM aumenta la eficiencia de la cadena operativa y la oferta, optimiza el proceso de fabricación e incluso mejora la sostenibilidad del medio ambiente. Personalizable y es ideal para una amplia gama de industrias, Figura 9 Figura 9 CMMS infor Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 4. FTMaintenance por Fastrak Software SoftWorks.- Se centra en la automatización de las tareas importantes para salvar a las compañías tiempo y dinero, así como mejorar la precisión de los datos en tiempo real. El sistema es escalable y personalizable ofrece complementos, Figura 10 Figura 10 CMMS FasTrak Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 35 5. MicroMain.- Un sistema CMMS fácil de usar, MicroMain ayuda a las empresas a simplificar y racionalizar cada paso de sus operaciones de mantenimiento preventivo, la automatización de orden de compra y seguimiento de proveedores y vendedores, Figura 11. Figura 11 CMMS MICROMAIN Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 6. AssetPoint.- Con treinta años de experiencia en gestión de mantenimiento, TabWare por AssetPoint es una solución CMMS/EAM (Gestión de activos empresariales) robusta con la aprobación de la orden de trabajo móvil, programación avanzada, mantenimiento preventivo, e incluso la capacidad de inteligencia de negocios, Figura 12. Figura 12 CMMS ASSET point Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 7. Mpulse.- Tanto si eres un pequeño taller o gran organización. Mpulse tiene el sistema CMMS para adaptarse a sus necesidades. Elija entre cuatro ediciones que ofrecen la gestión de órdenes de trabajo, seguimiento, planificación y presentación de informes, Figura 13 Figura 13 CMMS MPULSE Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 36 8. CyberMetrics FaciliWorks CMMS.- Es una Gestión de Activos Empresariales, herramienta utilizada por más de 6.000 usuarios a nivel internacional y de gestión de mantenimiento. CyberMetrics ofrece tanto en las instalaciones y en la nube un hosting para su sistema CMMS Figura 14 Figura 14 CMMS FaciliWorks Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 9. Software MaintiMizer. Este CMMS está disponible en tres ediciones diferentes, que ofrecen sus módulos avanzados para el seguimiento de las órdenes de trabajo, inventarios, proveedores y órdenes de compra, mantenimiento preventivo, y tarjetas de tiempo, Figura 15. Figura 15 CMMS Maintimizer Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 10. Software Dossier.- CMMS de mantenimiento de la flota por Arsenal Associates proporciona un sistema de gestión de flotas robustas para que los usuarios puedan realizar un seguimiento con precisión todos los vehículos y equipos, al importar datos de forma rápida y el seguimiento de historiales de mantenimiento, Figura 16 Figura 16 CMMS ARSENAULT Fuente: http://www.softwareadvice.com/cmms/ Autor: Taylor Short 37 2.2.4 Helpdesk Las redefinición de nuevas formas de comunicación y trabajo que impone el uso de las Tecnologías de la sociedad de la información actual mediante la masificación del uso de del Internet, está produciendo un cambio en las relaciones de comunicación entre el cliente y los proveedores de bienes y/o servicios, la tradicional comunicación tenía que necesariamente movilizar a las personas llevando la información en medios magnéticos portátiles, traslado de equipos, el uso de teléfonos para comunicar incidentes era común. Las nuevas aplicaciones informáticas han reducido la presencia de los clientes en la sala de espera de las empresas, salvo en ciertos casos dónde siempre es necesaria la presencia del técnico o del cliente en el lugar dónde se registra el incidente o la reparación del equipo. El personal que trabaja en los Helpdesk además de estar organizados, requiere tener suficientes conocimientos para dar la guía, asesoramiento o reparación al problema en que se encuentra, el cliente demanda eficiencia y eficacia en el soporte que recibe. Lo que se requiere es que el cliente esté satisfecho con el servicio que recibe. El Helpdesk ha desplazado al uso de tecnologías pasadas, las empresas dan el soporte que necesita el cliente mediante una comunicación vía web, este soporte requiere que el usuario tenga pistas sobre el incidente producido, tenga más precisión en detallar el problema. De esta manera la persona que está en lado del helpdesk sabrá el alcance de la solución y en caso contrario documentar el problema para que un técnico visite para dar la solución in situ. 2.2.5 El Mantenimiento de Equipos Informáticos. A la gestión del mantenimiento hay que darle la importancia correspondiente, realizar mantenimiento quiere decir estar dispuesto a cuidar la inversión, la fiabilidad, calidad, disponibilidad, mantenibilidad, continuidad, seguridad, transparencia, costo y tiempo, la aplicación de estos conceptos lograrán resultados muy importantes que traerán enormes beneficios a las empresas. El mantenimiento de equipos informáticos es un servicio que agrupa una serie de actividades cuya ejecución permite alcanzar un mayor grado de confiabilidad en los equipos, alcanzando un rendimiento óptimo y eficaz a la hora de su funcionamiento, de esta manera podemos prevenir o detectar fallas que pueda presentarse. 38 Los equipos e instalaciones se encuentran en condiciones de funcionamiento reales y fiables, únicamente si aplicamos tareas de mantenimiento podremos mitigar o evitar las consecuencias de los fallos de los equipos, generando más seguridad en el tratamiento de la información, funcionamiento, encomendar más información y esperar un desempeño adecuado a la hora de procesar datos. A la hora de realizar el mantenimiento debemos tomar en cuenta los costos de mantenimiento, los cuales se clasifican en: 2.2.5.1 Costos Directos Se define como el valor de bienes y servicios que son necesarios para desarrollar un trabajo de mantenimiento. Está compuesto por costos de suministros y costos de mano de obra 1. Costos de suministros. A la tarea de realizar mantenimiento debemos añadir los costos de suministros, y que no necesariamente son repuestos, pueden ser la actualización, compra o recambio de insumos por ejemplo de herramientas necesarias para las labores de mantenimiento. 2. Costos de mano de obra. Aquí se pueden ubicar el salario que es devengado por los técnicos del departamento, igualmente los costos que se harían al dar equipos a empresas al no existir la capacidad del departamento. 2.2.5.2 Costos Indirectos. Los costos que indirectamente intervienen en una operación de mantenimiento, los cuales pueden ser supervisión, almacén, instalaciones, préstamo de herramientas, accesorios, administración. 2.2.6 Operaciones y Tipos de Mantenimiento 2.2.6.1 Mantenimiento Conservativo Está orientado a la conservación, durabilidad y productividad; factores meteorológicos ambientales, eléctricos, sobrecarga de trabajo inciden en el rendimiento de los equipos. El objetivo es compensar el deterioro sufrido por estos factores inevitables. 39 2.2.6.2 Mantenimiento Correctivo 1. Mantenimiento correctivo inmediato Este tipo de mantenimiento permite actuar inmediatamente al percibir la avería con la finalidad de prevenir que los daños se incrementen. Imprevisiblemente se presenta una avería, en el menor tiempo posible debe intervenirse, para que la instalación o el equipo siga funcionando normalmente sin generar perjuicio a la producción, tal es el caso de ciertos computadores que presentan un calentamiento en su fuente de poder, o como también incidentes de software. Este correctivo se aplica a sistemas que dan servicio a otros equipos, entonces su reparación es imperativa. Por lo tanto los procesos no pueden ser interrumpidos y se debe actuar de inmediato. El personal que debe realizar este tipo de mantenimiento debe ser calificado, tener conocimiento de los equipos y actuar con solvencia, de ser el caso se debe conformar grupos de emergencia para actuar. 2. Mantenimiento correctivo diferido En este tipo de mantenimiento prevé cuando actuar antes de que produzca un daño, cuando actuar luego de que los equipos fueron sometidos a sobrecarga de trabajo, sometimiento a ejecución temporal de software casual, o a pruebas de software. Para lo cual ya se programa los insumos necesarios por ejemplo: repuestos, recursos económicos, recursos humanos, manuales, software de instalación y tiempo etc. Para efectuar este mantenimiento se deberá tener un listado de actividades que vamos a efectuar y se programar de acuerdo a la demanda de equipos, reemplazo con otros equipos que puedan sustituir a los necesarios, o en el caso de suspensión temporal, por ejemplo vacaciones y fines de semana 2.2.6.3 Mantenimiento Preventivo Este tipo de mantenimiento está destinado a aislar en un futuro inmediato fallas y averías en los componentes de software y hardware y así mantener trabajando el equipo informático permanentemente. Se pueden clasificar en el mantenimiento preventivo en: Programado, Predictivo y de Oportunidad 40 1. Mantenimiento preventivo programado. Se establece un plan para realizar visitas periódicas para inspeccionar el funcionamiento, realizar ajustes, limpieza, lubricación, se debe observar la carga de trabajo al que están sometidos los equipos, observar recomendaciones de fabricantes, el entorno ambiental, la disponibilidad de técnicos, el sometimiento de carga de trabajo. Al realizar este mantenimiento estamos protegiendo a los equipos de futuros fallas, aumentar la vida útil de los equipos, evitar gastos innecesarios, en definitiva los equipos siempre estarán en óptimas condiciones de rendimiento e instalación 2. Predictivo No siempre todos los equipos a los que se realiza el mantenimiento programado tienen una misma carga de funcionamiento, se realiza observaciones más detalladas por ejemplo de horas de trabajo a los equipos que están más exigidos, pues estos muestran más desgaste, esto permite minimizar más el error de funcionamiento y obtener indicadores comparables con el resto de equipos. 3. Oportunidad El mantenimiento de oportunidad se refiere a que en temporadas ciertos los equipos están sometidos a irregulares, variadas, o no son necesarios, entonces esos períodos de tiempo son utilizados para efectuar el mantenimiento, buscando estén listos para el nuevo período de funcionamiento. 2.2.6.4 Mantenimiento de Actualización La actualización o repotenciación se realiza cuando los equipos ya tienen un tiempo de uso considerable. Se busca componentes compatibles que mejoren las condiciones y el desempeño, sin embargo esta compatibilidad tiene un límite que puede ser la dada por el fabricante o determinada por el uso de software actualizado. Podremos concluir que estas acciones no tendrá mucho sostén por lo que pronto habrá que renovar con la adquisición de nuevos equipos. 41 2.2.7 UML (Unified Modeling Languaje) Según (SCHMULLER, Joseph, 2001), “El Lenguaje Unificado de Modelado es una de las herramientas más emocionantes en el mundo actual del desarrollo de sistema. Esto se debe a que permite a los creadores de sistemas generar diseños que capturen sus ideas en una forma convencional y fácil de comprender para comunicarla con otras”. La industria del desarrollo de software ha tenido en el UML un estándar para el desarrollo de aplicaciones complicadas, su gran capacidad de despliegue a la hora de analizar y diseñar. El utilizar UML para modelar sistemas ha permitido desarrollar sistemas más robustos, pues su uso genera la documentación necesaria ante alguna variabilidad del sistema construido, y es la documentación que siempre debe acompañar al sistema y que no deben prescindir los desarrolladores. El principio fundamental de UML se fundamenta en los casos de uso: 2.2.7.1 Casos de Uso Un caso de uso es la visión que los desarrolladores tienen de lo que requiere el usuario. Se requiere tener definido los requerimientos del sistema de manera que pueda limitarse el comportamiento de las relaciones entre los diferentes actores y entidades. En él se muestran las iteraciones entre los procesos y los actores en respuesta a la reacción que provoca la aplicación de la relación sobre ellos. Los componentes de los diagramas de casos de uso son el caso de uso, los actores y las conexiones correspondientes denominadas relaciones. Cada caso de uso constituye un comportamiento tomado de las relaciones que existen entre los distintos procesos que requieren interactuar para transmitir requerimientos propios y para mantener el flujo que puedan tener los otros casos de uso en el modelo UML. (KENDAL, 2011, pág. 36) “Las relaciones activas se denominan como relaciones de comportamiento y se emplean principalmente en los diagramas de casos de uso….”. Las relaciones de comportamiento son las siguientes: Comunica, Incluye, Extiende y Generaliza y se las gráficas como se muestra en la Tabla 8 42 Relación Símbolo Significado Comunica Un actor se conecta a un caso de uso usando una línea sin puntas de flecha Incluye <<incluir>> Un caso de uso contiene un comportamiento que es más común que otro caso de uso. La flecha apunta al caso de uso común. Extiende <<extender>> Un caso de uso diferente maneja las excepciones del caso de uso básico. La flecha apunta desde el caso de uso extendido hacia el básico Generaliza Una “cosa ” de UML es más general que otra “cosa”, La flecha apunta a la “cosa ” general Tabla 8 Líneas y Flechas para diagramar comportamientos El UML permite definir muchas variables de control del desarrollo del sistema y para eso ha tenido que modelar algunos diagramas entre los más importantes: Diagramas de clases, casos de uso y diagramas de secuencias. 1. Diagrama de clases. Aquí se definen los objetos denominados clases, los atributos y métodos y las relaciones que tienen las clases con otras clases. 2. Diagrama de casos de uso. El modelamiento de los casos de uso determina la utilización de un proceso dentro del sistema, dónde están juntos el actor que inicia (una persona, un componente de hardware, u otro proceso) y el caso de uso resultante. Las precondiciones y las post-condiciones determinan el antes del caso de uso y el después del caso de uso. 3. Diagrama de secuencia. Se utilizan para mostrar el seguimiento del actor (persona, proceso) a través de los diferentes casos de uso que se defina en el sistema, los objetos tras cumplir o no cumplir determinados requisitos para avanzar a otro caso de uso. 43 Los diagramas de secuencia describen la dinámica del sistema. Mediante la identificación de los acontecimientos y los actores involucrados, se puede realizar la representación de los casos de uso y los actores a lo largo del tiempo mediante la emisión de mensajes que emiten los actores, pudiendo ser estos personas o sistemas. 2.2.7.2 Modelo de Entidad-Relación El modelo Entidad-Relación es la percepción de un mundo real que consiste en un conjunto de objetos básicos llamados entidades y de unas relaciones entre esos objetos. Se utiliza para esquematizar la estructura lógica general de lo que será la base de datos. Es bastante empleado en la documentación correspondiente al requerimiento de una base de datos13. “Entidad.- Es un objeto que existe y puede distinguirse de otros objetos. Una entidad está representada por un conjunto de atributos.” (OSORIO, 2008, pág. 25) “Un atributo es una función que mapea un conjunto de entidades dentro de un dominio, para lo cual cada entidad se describe por medio de un conjunto de parejas (atributo, valor del dato), una por cada atributo del conjunto de entidades.” (OSORIO, 2008, pág. 25) “Por cada atributo existe un rango de valores permitidos conocidos como dominio del atributo.” (OSORIO, 2008, pág. 25) “Un conjunto de entidades.-Es una agrupación de entidades del mismo tipo.” (OSORIO, 2008, pág. 25) Dependiendo del nivel de abstracción, el despliegue de profundidad que quieran representar nuestros datos, y las características de las entidades, éstas se clasifican en relaciones de: Uno a uno, uno a muchos y muchos a muchos. 13 http://books.google.com.ec/books?id=buM5rlZMEcC&pg=PA25&dq=el+modelo+entidad+relacion&hl=es&sa=X&ei=Lm04U8PQAvLlsATor4G4Dw&ved=0CEIQ6 wEwBA#v=onepage&q=el%20modelo%20entidad%20relacion&f=false 44 2.2.7.3 Bases de Datos. Una base de datos es una colección de archivos de información que mantienen algún tipo de relación mediante algún criterio que le permita mantenerla clasificada y con la finalidad de compartirla entre mucho usuarios en sus diferentes aplicaciones. La gestión de la base de datos se lo realiza a través del (DBMS, Database Management System), el cual permite realizar las diferentes transacciones de creación, modificación, actualización de la base de datos, la recuperación de datos y la generación de reportes y pantallas. (KENDAL, 2011, pág. 403), manifiesta como objetivos de efectividad, el uso de las bases de datos a los siguientes: 1. Asegurar que los datos se puedan compartir entre los usuarios para una diversidad de aplicaciones. 2. Mantener datos que sean exactos y consistentes. 3. Asegurar que todos los datos requeridos por las aplicaciones actuales y futuras se podrán acceder con facilidad. 4. Permitir a la base de datos evolucionar conforme aumenten las necesidades de los usuarios. 5. Permitir a los usuarios construir su vista personal de los datos sin preocuparse por la forma en que los datos se encuentren almacenados físicamente. El uso de las bases de datos se ha masificado en gran medida y cada vez se ha ido perfeccionando el acceso, actualmente una base de datos puede ser gestionada en la nube; los usuarios mediante sus aplicaciones logran ejecutar su base de datos independientemente, para eso se requiere de una máquina virtual; o pueden comprar el acceso a un servicio de base de datos, gestionada por un proveedor de bases de datos en la nube, por ejemplo: proveedores de tecnología, etc. Las bases de datos bien diseñadas, alimentadas, seguras y con el mantenimiento correspondiente permite a corto plazo motivar el desarrollo de nuevas aplicaciones seguras para la empresa, lo que le permitiría mantener una mayor amplitud de conocimientos con facilidad y confiabilidad que le permitirá obtener mayor alcance a sus servicios. Definiremos a continuación las bases de datos relacionales, a este tipo de bases de datos se ha añadido diversidad de software adyacente para su tratamiento, además de ser las más aceptadas 45 en el tratamiento de la información, ya sea por su facilidad de modelar problemas reales y administrar datos dinámicamente. 2.2.7.4 Servidores Es una máquina con características avanzadas propias a nivel de hardware capaz de proveer de muchas funciones específicas a otras máquinas denominadas clientes, por lo tanto la configuración del servidor debe ser exigente y muy robusta ya que la transferencia de datos requiere de memoria virtual para facilitar los procesos de envío y recepción de información. Ante la gran cantidad de software existente, la virtualización se ha convertido en un negocio para las grandes empresas permitiendo el compartimiento de la información con cada usuario y en cualquier parte del mundo. Existen distintos tipos de servidores según el servicio que estos prestan, así servidores de correo electrónico, servidores de chat, FTP (File Transfer Protocol), servidores de noticias, servidores de fax, proxys, telnet y servidores web. 2.2.7.5 Estructura de una Aplicación Web Una aplicación web formalmente está compuesta de tres capas: la primera denominada capa de vista formada por el navegador o vista de usuario, la segunda capa de modelo compuesta por un motor y alguna tecnología de desarrollo de web dinámicas como PHP, Java ASP, centralizada en un servidor de aplicaciones y la tercera capa denominada capa de base de datos, Figura 17, con lo cual obtenemos las siguientes ventajas: Figura 17 Arquitectura tradicional de 3 capas , Fuente: http://www.monografias.com/trabajos71/aplicaciones-web-java/image001.gif 46 Centralización de los aspectos de seguridad. No se replica la lógica en cada uno de los clientes, esto permite que las modificaciones y las mejoras sean aprovechadas por todo el conjunto de usuarios que hacen uso de la aplicación. 2.2.7.6 Se dan mayor sencillez de uso a los usuarios. Sistemas Web. Conocemos como sistemas web a las aplicaciones de software que se hallan alojadas en servidores de internet (hosting) o en servidores web a los que se puede llegar mediante internet o una intranet mediante un navegador. Las aplicaciones web se escriben a través de un lenguaje de programación en un servidor web, estas deben contener elementos que permita la comunicación activa entre el usuario y la información. Las aplicaciones web trabajan con bases de datos que permiten procesar y mostrar información de forma dinámica con el usuario y tienen funcionalidades muy potentes. Hay muchos beneficios que resaltar si solamente tomamos en cuenta que el usuario puede llegar a la información o recibir la información del servidor mediante el sistema web, el usuario accederá a los datos de modo interactivo gracias a la respuesta que generará el código de la aplicación web, podemos señalar las siguientes ventajas: 1. Los usuarios de los sistemas web permanentemente irán aumentando gracias a la existencia de un mecanismo de comunicación. 2. Los usuarios tendrán siempre una vía de comunicación a la información permanentemente, ya que podrán realizar según sus actividades el trabajo desde cualquier lugar, por ejemplo el hogar. 3. Constituyen un mecanismo de difusión o de posicionamiento en el Internet que le permitirá tener posibilidades de crecimiento. 4. La familiarización con la interfaz estandarizada de los procesos en la empresa. 5. La posibilidad de que los usuarios puedan acceder las 24 horas a la información. Tenemos muchos sistemas web en la actualidad, muchos para los más diversos requerimientos y nivel de conocimiento del usuario, Enciclopedias, Sistemas de Facturación, Medicina, Arquitectura, Ingeniería, Investigación, Arte, Comercio Electrónico, etc. 47 CAPITULO 3 3 METODOLOGÍAS DE DESARROLLO. 3.1 Selección de la metodología para desarrollo el sistema. “La metodología es un conjunto de procedimientos, técnicas, herramientas y un soporte documental que ayuda a los desarrolladores a realizar un nuevo software” 14 Para el desarrollo del sistema CMMS.CPP se identificó algunas metodologías de desarrollo que mejor se adapte al sistema y encontramos principalmente dos de mucha difusión a la cual las tomamos en cuenta: metodologías ágiles y tradicionales. Tabla 9 Metodología ágil, con el modelo Programación extrema XP. Metodología tradicional con el modelo RUP (Rational Unified Process). Mostraremos las características en el siguiente cuadro comparativo: CARACTERÍSTICA RUP XP Tamaño del grupo Para grupos pequeños hasta Para grupos grandes más de 5 cuatro personas personas Obtención de requisitos Casos de uso Historia del usuario Carga de trabajo Mayor Menor Relación con el cliente Se presentan artefactos, es muy No tiene formalismos formal Documentación Mucha Poca Duración del proyecto Largo Corto Detección de errores En forma temprana A largo plazo Reutilización el código Si Si Simplicidad en el diseño No Si Centrado en la arquitectura Si No Soporte técnico continuo Menor Mayor Diseño simple No Si Desarrollo Iteractivo Iteractivo Largo Corto Evaluación del estado del proyecto 14 http://alarcos.inf-cr.uclm.es/ISOFTWAREI/Tema04.pdf,02-07-2013 48 Accesibilidad al código fuente Poca Mucha por parte del cliente Tabla 9 Características Metodologías RUP Y XP De las dos metodologías analizadas mostradas seleccionamos RUP (Rational Unified Process) por las siguientes consideraciones: Tiene como objetivo asegurar la producción de software de calidad. Se divide el proyecto en equipos. Un aspecto importante es dividir el sistema en casos de uso. Se describen los roles de cada uno de los actores, las personas que inician el proceso, las precondiciones y las post-condiciones en cada uno de los casos de uso. 3.2 Metodología de desarrollo RUP. La ingeniería de software establece para su desarrollo la utilización de una disciplina que le permita conseguir software de alta calidad denominada RUP (Rational Unified Process) y conjuntamente con el UML (Unified Modeling Languaje), constituyen un marco de desarrollo de software, con distintas capacidades para enfocar un proyecto de desarrollo que se adapte a las organizaciones. El RUP define su acción mediante el ciclo de vida dónde caracteriza su modo iterativo e incremental, desde luego no es un sistema sino un conjunto de buenas prácticas que conlleva un conjunto de metodologías aplicables a situaciones particulares en el desarrollo de software. RUP enfatiza el desarrollo de software en principios de buenas prácticas, establece de manera temprana una buena arquitectura que sea sostenible, o sea que no se vea afectada seriamente ante cambios posteriores durante las fases de construcción y el mantenimiento, además que permiten desarrollar bajo un determinado plan controlado el avance, la calidad del software y las personas involucradas en cada una de las iteraciones. En el desarrollo actual de proyectos de software resulta que debemos hacer hincapié en la utilización de metodologías, es casi imposible no usarlas por la cantidad de variables o indicadores que necesariamente deben ser incluidas al momento de la elaboración ordenada de las aplicaciones. Y el uso de metodologías y estándares nos permite mantener siempre un nivel de competividad. 49 Conocer cómo se relacionan las metodologías y estándares con el objetivo de elaborar aplicaciones de manera eficiente y con el menor número de defectos, constituye un reto a la hora de desarrollar un sistema de calidad, pues teniendo una base de conocimiento robusto podemos obtener los mejores resultados a la hora de evaluar cada uno de los pasos en la elaboración y por lo tanto la calidad del producto. Encontramos dentro de esta metodología RUP disciplinas en las cuales se encuentran artefactos con lo cual crearemos guías para poder documentar e implementar de manera fácil y eficiente, se fundamenta en la aplicación de 6 principios claves: 3.3 Flujo de trabajo de procesos. 3.3.1 Modelado del Negocio. El Sistema de Educación del Ecuador en su régimen Sierra y Oriente determina que el año lectivo se divida en dos quimestres: de septiembre a enero y febrero a julio. Los cinco laboratorios de computación de la Institución laboran desde las 07:00 hasta las 13 de lunes a viernes y si bien todavía no se ha constituido el Departamento de Tecnologías de la Información, las actividades que el técnico las realiza van dirigidas a los distintos usuarios: administrativos, docentes y estudiantes: Atención a incidencias. Soporte técnico a los usuarios quienes requieren de alguna solución a sus dificultades en el uso, el mal funcionamiento o ausencia del hardware y/o software, conexiones de cables de red, direccionamiento de Internet, etc. Asesoría. Asesoría, en manejo de sistemas operativos y software para la enseñanza en caso de que los docentes los usuarios lo requieran. Administración. La administración del hardware, incluye pc´s, impresoras, ruteadores, switches, protección de equipos. Mantenimiento Preventivo. 50 Preparación de equipos: reinstalación de software. Mantenimiento Correctivo. Antivirus, antispams para los equipos de los laboratorios y oficinas administrativas. Logística. Incluye preparación de equipos, coordinación, logística y abastecimiento de equipos para la realización de eventos internos o externos de la Institución. Adecuaciones eléctricas y de cableado de red. Se realiza este tipo de actividad al analizarse la posibilidad de reubicar equipos o dispositivos de red que puedan ser compartidos para ampliar el servicio de internet, sean estos switchs, hubs, impresoras, ruteadores, etc. Administración lógico de ruteadores y funcionamiento de la red. 3.3.1.1 Incidencias 3.3.1.1.1 Incidencias en Laboratorios. Este mantenimiento se realiza en base a las visitas que se realiza a los laboratorios en dónde se puede obtener información a través de los estudiantes, o ante el pedido verbal o escrito del docente que haya detectado la incidencia en el lugar. Para proceder a realizar la debida reparación: Identificación del equipo Valoración de la incidencia. Si el problema no puede ser solucionado en el lugar se traslada el equipo a la oficina de mantenimiento, si el problema es solucionado en el mismo lugar el equipo continúa dando servicio al usuario. 51 3.3.1.1.2 Incidencias en Oficinas Administrativas. Las actividades se registran en un documento de Word y sirve para verificar la constancia del trabajo realizado, aquí se anota la incidencia o el requerimiento técnico, la solución, la firma del usuario administrativo, la fecha y hora, por lo que sería de ayuda poder utilizar esta información coordinando con un sistema informático, como observamos en Figura 18. Desarrollo de una incidencia Figura 18 Desarrollo de una incidencia Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 52 3.3.1.2 Indicadores de Gestión del Mantenimiento. A la gestión del mantenimiento hay que darle la importancia correspondiente, realizar mantenimiento quiere decir estar dispuesto a vigilar los siguientes indicadores de gestión: Cuidar la inversión, la Fiabilidad, Disponibilidad, Mantenibilidad, Calidad, Seguridad, Costo y Tiempo de entrega. 1. Cuidar la inversión. Es la responsabilidad de mantener durante un tiempo de vida más prolongado mediante el buen uso, de lo contrario se deberán realizar inversiones innecesarias. 2. Fiabilidad. Es la capacidad de que los equipos se puedan desplegar su trabajo satisfactoriamente sin falla, en un tiempo estimado de uso. 3. Disponibilidad. Se denomina a la cantidad de equipos que se encuentran habilitados diariamente, de ahí que frente a la cantidad de usuarios es de suponer que siempre van a existir novedades, especialmente en los laboratorios 4. Mantenibilidad. Es la característica que determina que un equipo o sistema pueda ser reparado en un tiempo determinado. 5. Calidad. Se refiere a la condición óptima del equipo para su uso. 6. Seguridad. Se refiere a que los equipos puedan tener una debida vigilancia de su integridad, protegida de violaciones de seguridades. 7. Tiempo de entrega. 53 Se refiere a las condiciones acordadas para la entrega de una solución a algún requerimiento o incidencia. De ahí que es importante llevar un control exacto sobre estos datos y sobre el manejo de mantenimiento para realizar un adecuado seguimiento. 3.3.1.2.1 Mantenimiento Preventivo. Como se sobreentiende los equipos son sometidos hasta 25 horas diarias de uso, y en vista de la situación se realiza el mantenimiento preventivo en los meses de septiembre, diciembre, enero y junio o julio, o también en situaciones determinadas en las cuales se suspenden las labores académicas en los laboratorios. Este mantenimiento se realiza según la disponibilidad de los laboratorios, o sea al finalizar el año lectivo cuando los estudiantes están en período de exámenes. Al finalizar el año lectivo y al previo inicio de clases del año lectivo se realiza el mantenimiento preventivo en los laboratorios de computación. Al inicio del año lectivo se realiza un cronograma de intervención preventiva a los equipos de computación en los distintos laboratorios y equipos de la administración de la institución, diseñado en Project de Office de Microsoft. Generalmente las actividades que se realizan sobre el hardware son: Sopleteo interno del gabinete, ventiladores de fuente de poder y procesadores. Lubricación de ejes de ventiladores de fuente de poder y procesadores. Limpieza de contactos de memorias. Una vez ensamblado el equipo hay que tener en cuentas las siguientes observaciones importantes y corregir si es necesario: Aumento de temperatura en procesadores, disco duro, memorias, fuente de poder. Hay que tomar en cuenta que luego al encender el equipo las hélices de los ventiladores giren a una velocidad adecuada. Instalación de actualizaciones del software. 54 Actualización de antivirus. Retiro de software no necesario del disco duro. 3.3.1.2.2 Mantenimiento Correctivo. Al fallar repentinamente un equipo en producción se efectúa un desbalance en la distribución de equipos y estudiantes, situación que no está planificada, y que debe ser solucionada. En este caso puede suspenderse cualquier actividad de mantenimiento preventivo o priorizar cualquier otra acción de reparación que se esté realizando paralelamente, hasta solucionar el problema. Debe considerarse en caso de ser necesario la consulta debida para proceder a analizar abastecimiento como: existencia de repuestos, materiales, herramientas, manuales, software repositivo y datos que sean necesarios para la solución del problema. Se realizan las acciones que sean necesarias para que los equipos vuelvan a producción y en mejores condiciones después de pasar por este mantenimiento. En caso muy necesario, considerando la presencia de estudiantes en los laboratorios y público en las oficinas administrativas, los equipos son retirados a la oficina de mantenimiento por seguridad e integridad. El uso continuado de los equipos por diferentes usuarios esquematizan un escenario dónde se producen diferentes dificultades, por ejemplo: Contagio del software residente en el equipo con virus. Ocultación, ubicación y pérdida de información del usuario. Pérdida de conectividad de Internet. Daños producidos en conectores y comportamiento anormal de mouse y teclados. Pérdida de conexión con servidores de impresión. Desinstalación de software. Corrección, reinstalación, modificación de parámetros de configuración, asesoría en el manejo del software. Daños en unidades lectoras ópticas y USB de memorias. 55 Daños en cables de alimentación eléctrica. Inestabilidad de funcionamiento de software. Supresión de software no adecuado de uso de estudiantes. Por lo expuesto percibimos ahora los requisitos necesarios que debe cumplir el sistema. 3.3.2 3.3.2.1 Requisitos. Requisitos Funcionales. 1. Gestión de Usuarios. Ingreso al sistema. Registrarse en el sistema. Acreditación de roles. Olvido de password. 2. Gestión de Inventario. Equipos Base. Partes de Equipo. 3. Gestión de Incidencias. Registrar Incidencia. Gestionar Incidencia. 4. Gestión de Mantenimiento Planificado. Control de Mantenimiento Planificado. Gestionar Mantenimiento Planificado. 56 3.3.2.2 Roles de Usuario. El sistema debe permitir asignar, modificar, suspender perfiles o roles de acuerdo los perfiles definidos en la Tabla 10. Usuario Técnico Administrador Rol Descripción Nivel de Acceso Todos los módulos Administrar Acceso de Usuarios y perfiles Gestión de Inventarios. Administrar equipos. Establecer definiciones de: estados, tipos de equipo, dependencias. Gestión de Incidencias Definir los mantenimientos programados de equipos Administrador de Sistema Persona encargada de dar solución a los incidentes y mantenimiento programado. Reportar incidentes que puedan requerir los usuarios o por observaciones suyas. Persona que hace uso del sistema de incidencias Módulos: Soporte y mantenimiento Reportar incidentes Solucionar incidentes Ejecutar operaciones de mantenimiento programado. Incidencias Reportar incidencias Tabla 10 Roles de Clientes: Administrador, Técnico y Usuario Fuente: Tesista 3.3.3 Análisis y Diseño. En un diagrama de contexto mostramos el flujo de datos y las iteraciones entre los diferentes elementos como agentes internos o externos que intervienen en el sistema que necesitamos modelar, no se requiere realizar una descripción minuciosa de la estructura de cada uno de los procesos que intervienen. En el diagrama de contexto mostraremos el flujo que tienen los procesos como agentes de ingreso y salida del sistema y sus respectivas estaciones de almacenamiento, con ellos definimos el alcance del sistema modelado. 57 Generalmente se acompañan con diagramas de secuencia y de actividades para completarlo, se lo conoce como diagrama de nivel CERO y reflejan las relaciones entre las personas, el software, el hardware, los elementos de control, etc. que serán parte del funcionamiento del sistema. 58 La Figura 19 muestra el diagrama de contexto del sistema a desarrollarse, podemos observar en esta parte los siguientes procesos principales: Gestión de usuarios, gestión de soporte, gestión de inventario, gestión de incidentes Figura 19 Diagrama de Contexto y los Procesos de Gestión de Incidentes y Mantenimiento Fuente: Tesista Autor: Tesista 59 y gestión de mantenimiento controlado. 3.3.3.1 Gestión del Sistema 3.3.3.1.1 Gestión de usuarios. 3.3.3.1.1.1 Ingreso al sistema. El sistema debe permitir ingresar a los usuarios ya registrados independientemente del lugar dónde se encuentren, con cualquier navegador de internet. 3.3.3.1.1.2 Registrarse en el sistema y acreditación de roles. Para registrar usuarios en el sistema requerimos de un proveedor de internet con el cual el usuario pueda comunicarse mediante la dirección IP (Internet Protocol) y ya una vez registrado hacer uso del sistema mediante el enlace que se muestra en el cuerpo del mensaje del correo que el sistema envía. El usuario que requiera participar en la notificación de incidentes deberá registrase en el sistema, llenando la plantilla de datos correspondiente. El Cliente Administrador dará de alta al usuario para que le permita interactuar con el sistema 3.3.3.1.1.3 Acreditación de roles a usuario. El rol dentro del sistema determina el tipo de operaciones que el usuario podrá ejecutar. El cliente Administrador deberá determinar los roles para el usuario y de acuerdo a los señalados en la Tabla 10. El sistema deberá permitir al Cliente Administrador cambiar en cualquier momentos los roles de acuerdo a las circunstancias, como puede ser la prestación de servicios de un estudiante (Cliente Usuario) como Técnico. El sistema deberá permitir al administrador desactivar el acceso a algún usuario por alguna razón que éste considere. 3.3.3.1.1.4 Olvido de password. El sistema deberá dar la oportunidad a los diferentes Clientes que haya perdido u olvidado el password obtener uno nuevo para acceder al sistema. 60 3.3.3.1.2 Gestión de inventario. El responsable del funcionamiento de los equipos es el administrador y los técnicos. El sistema debe permitir gestionar: ingresar, modificar, borrar, trasladar y reportar el inventario de los equipo, notificando a las autoridades y al servicio de almacén. El sistema debe permitir ingresar el detalle de los equipos según las dependencias que el administrador haya definido. 3.3.3.1.2.1 Equipos Base. El Cliente Administrador deberá tener alguna referencia codificada de las dependencias con la finalidad de registrar los equipos. El sistema deberá proveer de un listado de maestro de equipos base. El Cliente Administrador deberá contar con el registro de los equipos base en el sistema. De los equipos base se detallan sus componentes o partes. 3.3.3.1.2.2 Partes de Equipo. Los detalles o partes del equipo denominado base se registran aquí. 3.3.3.1.3 Gestión de soporte. 3.3.3.1.3.1 De Incidencias. Para la gestión de incidentes requerimos la presencia de los sistemas de registro de usuarios, inventario y soporte. Las notificaciones de incidentes son generadas por el Administrador del sistema, el Técnico y los Usuarios. Las notificaciones de las incidencias deben llegar a los correos electrónicos como una manera de comprobar el accionar del técnico. 3.3.3.1.3.2 De Soporte. 61 La corrección de la incidencia para debe ser realizada por el técnico luego de que haya recibido la disposición del administrador al sistema en su rol correspondiente debiendo llegar a su correo electrónico. Además la incidencia se registrará en el correo del usuario que notificó a su correo electrónico con el nombre del técnico que haya realizado el trabajo. 3.3.3.1.4 Gestión de mantenimiento planificado. La gestión de mantenimiento debe permitir tener la información de manera sencilla y efectiva, al mismo tiempo de tener cómo registrar equipos para ejecutar el mantenimiento y las observaciones correspondientes. 3.3.3.2 PROTOTIPOS. 3.3.3.2.1 Interfaz gráfica de gestión de usuario. La construcción de prototipos básicos de interface gráficas de usuario permite tener la visión que el responsable del desarrollo del sistema requiere para facilitar el uso y la eficiencia tanto como sea posible para elaborar los casos de uso, y permitir dar al usuario la visión de la funcionalidad del sistema. Para el diseño de la GUI se necesita de elementos como botones de acción, campos de texto, casillas de verificación, botones de opción y los menús desplegables. Se ha elaborado los prototipos de interfaz correspondientes a los diferentes perfiles de usuario que el sistema manejará. Se ha considerado utilizar la Figura 20 dónde se muestra la plantilla base para distribuir los diferentes componentes del sistema. Cabecera Contenido Pie de Página Figura 20 Plantilla básica para componentes Fuente: Desarrollo de sistema informático . Autor: Tesista 62 Para gestionar los datos de incidencias o de inventarios se ha tomado en cuenta el tipo de reporte maestro-detalle, en esta plantilla se muestran los registros que están vinculados con el registro seleccionado de una tabla maestro. La muestra la plantilla base para gestionar incidencias e inventario, Figura 21 Cabecera Registro seleccionado Registros vinculados con el registro seleccionado Pie de Página Figura 21 Plantilla de reportes maestro-detalle para incidencias e inventario Fuente: Tesista Autor: Tesista 3.3.3.2.1.1 Prototipo de ingreso de usuarios al sistema. La Figura 22 muestra el prototipo de la pantalla de ingreso al sistema de clientes: ADMINISTRADOR, TÉCNICO Y USUARIO dónde se considera lo siguiente: Usuario y Password.- En estos cuadros de texto el usuario se identificará con el sistema luego de seleccionar el botón Ingresar, desde luego si el usuario ya se registró, y el Administrador le dio la acreditación correspondiente. Figura 22 Ingresar al Sistema CMMS.CPP Fuente: Sistema Informático CMMS.CPP Autor: Tesista 63 3.3.3.2.1.2 Prototipo para registrarse como cliente del sistema. Para ser un usuario del sistema se requiere que registre sus datos en la Figura 23, el sistema le solicita llenar los campos de identificación de la persona que requiere comunicarse con el sistema: Los datos requeridos son Nombres, Apellidos, Dirección, Cargo, Unidad a la que pertenece, el correo electrónico y el password de ingreso al sistema CMMS.CPP. Figura 23 Información requerida por el usuario Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.1.3 Prototipo de Acreditación de roles a cliente. La Figura 24 muestra el prototipo de una lista de usuarios registrados en el sistema, aquí mostramos cédula, nombres, apellidos, cargo, correo, dependencia y el alta que nos servirá para modificar o actualizar los credenciales a los usuarios según lo diseñado en la Figura 25 Figura 24 Lista de usuarios registrados en el sistema Fuente: Sistema Informático CMMS.CPP Autor: Tesista 64 Figura 25 Credenciales de usuario Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.1.4 Prototipo para Olvido de Password. En la Figura 26 se muestra el prototipo de la pantalla que se utilizará para solicitar al sistema un nuevo password de ingreso al sistema. El rol del usuario no se ve modificado al cambiar el password, el nuevo password le llegará al correo electrónico que haya sido registrado en el sistema. Figura 26 Prototipo de pantalla para cambio de contraseña Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.2 Gestión de Inventario. 3.3.3.2.2.1 Prototipo de Equipo Base. En la Figura 27 se muestra el prototipo de la interfaz para ingresar la descripción del equipo base, se requiere llenar los siguientes campos: Código del Equipo, Funcionario Responsable, Tipo de 65 Equipo, Fecha de Alta, Fecha de Baja, Fecha, Garantía, Procedencia, Detalle, Estado de Equipo, Ubicación, Avalúo, Proveedor. Figura 27 Prototipo de pantalla para equipo base Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.2.2 Prototipo para inventario de partes de equipos. En la Figura 28 se muestra el prototipo de la interfaz para ingresar la descripción del equipo base, se requiere llenar los siguientes campos: Código del Equipo, Tipo de equipo, Funcionario Responsable, Descripción del Equipo, Cantidad, Fecha, Garantía, Verificador, Serie, Estado del equipo. Figura 28 Prototipo de pantalla de ingreso de partes de equipo Fuente: Sistema Informático CMMS.CPP Autor: Tesista 66 3.3.3.2.3 Gestión de Soporte. 3.3.3.2.3.1 Prototipo de tratamiento de Incidencias. La notificación de incidentes es similar en los tres roles (Administrador, Técnico y Usuario), la pantalla muestra los siguientes campos: Nombre de funcionario, Correo electrónico, Equipo, Reporte del estado de la incidencia, la fecha de la incidencia, si la incidencia ya fue atendida se muestra en el campo atendido, el estado (Atendido, reportado, en trámite), la Figura 29 muestra lo dicho, el botón cerrar y el botón nuevo para generar una nueva notificación de incidencia. Figura 29 Interfaz gráfica para notificar incidencia Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.3.2 Prototipo de tratamiento de Soporte. En la Figura 30 se muestra el prototipo de la pantalla que servirá al ADMINISTRADOR para recibir incidentes, y procederlos a gestionar, en la etiqueta de responsable de soporte el podrá asignar un técnico para esta incidencia. Figura 30 Pantalla para Administrador para gestionar soporte Fuente: Sistema Informático CMMS.CPP Autor: Tesista 67 3.3.3.2.4 Mantenimiento Planificado. 3.3.3.2.4.1 Prototipo de Control de Mantenimiento. El Administrador requiere de una pantalla para observar las actividades de mantenimiento, y presentará la información de Código de equipo, Usuario Solicitante, Fecha planificada, Detalle y las observaciones respectivas, ver la Figura 31 Figura 31 Prototipo de pantalla de control de mantenimiento Fuente: Sistema Informático CMMS.CPP Autor: Tesista 3.3.3.2.4.2 Prototipo para gestionar Mantenimiento Planificado. Figura 32 Gestionar mantenimiento planificado Fuente: Sistema Informático CMMS Autor. Tesista El Administrador ingresa la información que identifica al equipo, ver la Figura 32 68 3.3.3.3 CASOS DE USO, DIAGRAMAS UML. 3.3.3.3.1 Diagramas UML, Caso de Uso Gestión de Usuario. 3.3.3.3.1.1 UML Ingreso de usuarios al sistema. Observe la Figura 33 Figura 33 UML Ingreso de usuarios al sistema Fuente: Sistema Informático CMMS Autor. Tesista 3.3.3.3.1.2 UML Registrarse en el sistema. Vea la Figura 34. Figura 34 UML Registrarse en el sistema Fuente: Desarrollo de sistema CMMS Autor: El Tesista 69 3.3.3.3.1.3 UML Acreditación de roles de usuario. Observe la Figura 35 Figura 35 UML Acreditación de roles a usuarios Fuente: Desarrollo de sistema CMMS Autor: El Tesista 3.3.3.3.1.4 UML Olvido de Password. El usuario acreditado en el sistema solicita, Figura 36 Figura 36 UML olvido de password Fuente: Desarrollo de sistema CMMS Autor: El Tesista 3.3.3.3.2 Diagramas UML, Caso de Uso Gestión de Inventario. 70 3.3.3.3.2.1 UML Equipos Base Observe la Figura 37 Figura 37 UML Tratamiento de equipo base Fuente: Desarrollo de sistema CMMS Autor: El Tesista 3.3.3.3.2.2 UML Partes de Equipo, Observe la Figura 38 Figura 38 UML tratamiento de partes de equipo Fuente: Desarrollo de sistema CMMS Autor: El Tesista 71 3.3.3.3.3 Diagramas UML Caso de Uso de Gestión de Soporte. 3.3.3.3.3.1 UML Tratamiento de incidencias Observe la Figura 39 Figura 39 UML Tratamiento de incidencias Fuente: Desarrollo de sistema CMMS Autor: El Tesista 3.3.3.3.3.2 UML Tratamiento de soporte, Observe la Figura 40 Figura 40 UML Tratamiento de soporte Fuente: Desarrollo de sistema CMMS Autor: El Tesista 72 3.3.3.3.4 Diagramas UML Gestión de Mantenimiento Planificado. 3.3.3.3.4.1 UML de Control de Mantenimiento Planificado Observe la Figura 41 Figura 41 UML Control de mantenimiento planificado Fuente: Desarrollo de sistema CMMS Autor: El Tesista 3.3.3.3.4.2 UML Gestionar Mantenimiento Planificado. Observe la Figura 42 Figura 42 Gestionar orden de mantenimiento Fuente: Desarrollo de sistema CMMS Autor: El Tesista 73 3.3.3.4 DESCRIPCIÓN DE LOS CASOS DE USO. 3.3.3.4.1 Descripción de caso de uso Gestión de usuario. 3.3.3.4.1.1 Ingreso al sistema. CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Precondiciones: Actor Post condiciones Ingreso al Sistema Caso de uso para ingresar al Sistema Usuario y Sistema Terminado por: Actor Actor registrado en el sistema El usuario A, T ó U ingresa al sistema con su rol correspondiente Flujos de Eventos Flujo Principal El usuario escribe la dirección del servidor en un navegador de internet El sistema le presenta la pantalla de ingreso El actor ingresa los datos solicitados El sistema le presenta el mensaje Acceso Permitido Flujo Alterno 1 Si no ingreso los datos correctos el sistema le presenta el mensaje “Acceso No Permitido” 3.3.3.4.1.2 Registrarse en el sistema. CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Precondiciones: Actor Registrarse en el Sistema Caso de uso para ingresar al Sistema Usuario de Equipos y Sistema Terminado por: Sistema Actor espera que el Administrador le Acredite como usuario El usuario recibe en su correo electrónico los datos para ingresar al sistema, desde dónde puede ingresar al sistema Usuario registrado Post condiciones Flujos de Eventos Flujo Principal Conexión de internet Dirección de servidor y dominio Hacer clic en registrarse e ingresar los datos Flujo Alterno 1 Error username ya registrado, error por formato de e-mail incorrecta Botón cancelar 74 3.3.3.4.1.3 Acreditación de usuarios. CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Pre condiciones: Actor Post condiciones Acreditación al Sistema Caso de uso acreditar al usuario Usuario de Equipos, Sistema, Administrador. Terminado por: Administrador El administrado accede a la pantalla y localiza al usuario que solicita activar su cuenta dentro del sistema. El usuario ya puede gestionar el sistema de acuerdo al rol definido por el administrador. Flujos de Eventos Flujo Principal 1. El usuario registra sus datos en la pantalla de ingreso al sistema. 2. Gestiona sus requerimientos en el sistema. Flujo Alterno 1 Borrar ingreso de usuario 3.3.3.4.1.4 Olvido de Password CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Pre condiciones: Actor Olvidó password El usuario olvidó password de ingreso al sistema. Cliente (Administrador, Técnico, Usuario) Terminado por: Sistema Usuario ya registrado. Post-condiciones Actor con nuevo password. Flujos de Eventos Flujo Principal 1. El usuario ejecuta la llamada al sistema mediante el navegador de internet. 2. El sistema le presenta la pantalla y hace clic en olvidó password. 3. El actor ingresa la dirección de correo electrónico. 4. El sistema envía el nuevo password a la dirección de correo del actor. Flujo Alterno 1 Usuario no registrado. 3.3.3.4.2 Descripción de caso de uso de Gestión de Inventario. 3.3.3.4.2.1 Equipo base CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Pre condiciones: Post-condiciones. Administrador Gestión de inventario de equipos base. Caso de uso para ingresar equipos base al inventario. Administrador. Terminado por: Sistema Debe contar con el inventario que va a ingresar El sistema cuenta con el inventario de equipos al cual se va a referir los usuarios para notificar las 75 incidencias. Flujos de Eventos Flujo Principal 1. El actor accede al menú principal y selecciona opción inventarios. 2. Selecciona descripción de equipo. 3. Ingresa la información en los campos correspondientes. 4. Hace clic en botón grabar para guardar lo realizado. Flujo alterno 1 1. Actor: Hace clic en cancelar para no guardar. 2. Actor: Puede seleccionar un registro ya ingresado, insertar una copia de un equipo ya ingresado y proceder a editar con la nueva información. 3.3.3.4.2.2 Inventario de partes de equipos. CASO DE USO Descripción: Actor(es)/Descripción Iniciado por : Pre condiciones: Post condiciones. Administrador Gestión de inventario de partes de equipos Caso de uso para ingresar partes de equipos. Administrador. Terminado por: Sistema Debe contar con el inventario que va a ingresar. El sistema cuenta con el inventario de equipos al cual se va a referir los usuarios para notificar las incidencias. Flujos de Eventos Flujo Principal 5. El actor accede al menú principal y selecciona opción inventarios. 6. Selecciona un equipo al cual lo va a detallar con sus partes. 7. Ingresa la información en los campos correspondientes. 8. Hace clic en botón grabar para guardar lo realizado. Flujo alterno 1 3. Actor: Hace clic en cancelar para no guardar. 4. Actor: Puede seleccionar un registro ya ingresado, insertar una copia de un equipo ya ingresado y proceder a editar con la nueva información. 3.3.3.4.3 Descripción de caso de usos de Gestión de Incidencias. 3.3.3.4.3.1 Tratamiento de incidencias. 76 CASO DE USO Descripción: Actor(es)/Descripción. Iniciado por : Pre condiciones: Actor. Post-condiciones. Gestión de registrar incidencias Caso de uso para registrar incidencias. Usuario (Administrador, Técnico, Usuario de Eqipos). Administrador.- Puede modificar las notificaciones de incidencias. Técnico.- Puede modificar las notificaciones. Usuario de Equipos .- No puede modificar las notificaciones. Terminado por: Sistema. Debe ser actor registrado. Seleccionar equipo. Registrar incidente. El sistema mantiene los incidentes guardados por los actores A, T y U. Flujos de Eventos Flujo Principal 1. El Actor (Administrador, Técnico) selecciona Soporte en el menú de usuario (Administrador, Técnico). 2. El actor Usuario selecciona incidencia en el menú de (Usuario de Equipos, Técnico) 3. Ingresa la información en los campos correspondientes. 4. Hace clic en botón grabar para guardar lo realizado.. Flujo alterno 1. 1. Actor: Hace clic en cancelar para no guardar. 2. Actor: Puede seleccionar salir para abandonar el sistema. 3.3.3.4.3.2 Tratamiento de soporte CASO DE USO Gestionar soporte por Administrador. Descripción: Actor(es)/Descripción. Caso de uso gestionar incidencias . Administrador. Delega la responsabilidad al Técnico dar solución a la incidencia reportada Técnico. – Da solución a la incidencia Usuario de Equipos.- Recibe solución a la incidencia Terminado por: Técnico El administrador tiene en el sistema las incidencias reportadas por los usuarios. Iniciado por : Pre condiciones: Post condiciones. Administrador El técnico tiene en su correo la disposición del Administrador para que dé solución a la incidencia. Flujos de Eventos Flujo Principal 1. El Actor selecciona la incidencia reportada por el cliente y la modifica para seleccionar al técnico que dé solución a la incidencia. 2. El sistema envía la notificación al correo del Usuario de Equipos que notificó la incidencia información de quien le va a dar solución al incidente. 3. El Administrador hace clic en botón grabar para guardar lo realizado. Flujo alterno 1 77 4. Actor: Hace clic en cancelar para no guardar. 5. Actor: Puede seleccionar salir para abandonar el sistema. 3.3.3.4.4 Descripción Gestión de Mantenimiento Planificado CASO DE USO Gestión de Mantenimiento Descripción: Actor(es)/Descripción. Caso de uso gestionar incidencias. El usuario: Administrador, Técnico y Usuario de Equipos solicita mantenimiento del equipo. Administrador. Delega la orden de trabajo para el técnico. El Técnico ejecuta la orden de trabajo. Iniciado por : Pre condiciones: Administrador, Técnico o Usuario de Equipos. Terminado por: Técnico. El administrador califica y planifica la orden de mantenimiento. Post condiciones El técnico ejecuta el mantenimiento. Flujos de Eventos Flujo Principal 1. El Actor Administrador registra la orden de trabajo con fecha y cliente solicitante. 2. El Actor Administrador hace clic en botón grabar para guardar lo realizado. Flujo alterno 1 3. Actor: Hace clic en cancelar para no guardar. 4. Actor: Puede seleccionar regresar para abandonar el sistema de mantenimiento. 78 3.3.3.5 DIAGRAMAS DE SECUENCIA. 3.3.3.5.1 Diagrama de secuencia de Gestión de Usuarios. 3.3.3.5.1.1 Ingreso al sistema. El usuario digita su username y el password para ingresar al sistema, no se le permitirá el acceso mientras no digite correctamente, Figura 43 Figura 43 Diagrama de secuencia de ingreso al sistema Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 79 3.3.3.5.1.2 Registrarse en el sistema. Observe la Figura 44 Figura 44 Diagrama de secuencia para registrarse en el sistema Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 80 3.3.3.5.1.3 Acreditación de usuarios, Observe la Figura 45 Figura 45 Diagrama de secuencia de acreditación de usuarios Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 81 3.3.3.5.1.4 Olvido de password. Si es el caso de que olvidó el password solicitará uno nuevo este será enviado al correo electrónico, desde dónde también podrá ejecutar el sistema, ver la Figura 46 Figura 46 Diagrama de secuencia de olvido de password Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 3.3.3.5.2 Diagrama de secuencia de Gestión de Inventario. 3.3.3.5.2.1 Equipos base. El Administrador es la persona encargada de gestionar el inventario: ingreso, modificación, actualización, entregar reportes, solicitar adquisiciones, reportes de bajas; para esto utiliza el módulo de Inventarios del sistema, Figura 47 82 Figura 47 Diagrama de secuencia de inventario de equipo base Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 3.3.3.5.2.2 Partes de equipo. El Administrador es la persona encargada de gestionar el inventario de las partes de los equipos, para eso selecciona el equipo base a detallar e ingresa la información en partes de equipo del módulo de inventario de equipos, Figura 48 Figura 48 Diagrama de secuencia de inventario de partes de equipo Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 83 3.3.3.5.3 Diagrama de secuencia de Gestión de Incidencias. 3.3.3.5.3.1 Tratamiento de incidencias. El técnico ejecuta la reparación y actualiza el registro de la incidencia en el sistema, simultáneamente se envía un mensaje al correo del usuario o al sistema para que él consulte el estado de su pedido, lo explicado se muestra en la Figura 49. Figura 49 Diagrama de gestión de tratamiento de incidencia Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 3.3.3.5.3.2 Tratamiento de soporte. El sistema debe prever que el administrador genere el reporte de la incidencia encontrada o solicitada en algún equipo, o a través de la comunicación directa con el usuario del equipo. Una vez registrado el incidente en el sistema, consulta la distribución del trabajo que el técnico esté realizando y procede generar una orden de trabajo con el mensaje para que el técnico dé solución, Figura 50 84 Figura 50 Diagrama de secuencia de gestión de soporte Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 3.3.3.5.4 Diagrama de secuencia de Control de Mantenimiento Planificado. Observe la Figura 51 Figura 51 Diagrama de secuencia de control de mantenimiento Fuente: Desarrollo de Sistema informático CMMS Autor: El Tesista 85 3.3.3.6 Diagrama de clases. Ver Anexo B 1 3.3.3.7 Diagrama de la base de datos. Ver Anexo A 2 3.3.3.8 Script de la base de datos. Ver Anexo B 3 3.3.4 Implementación. 3.3.4.1 Listado del directorio de archivos php Observe la Figura 52 , Figura 53 y , Figura 54 Figura 52 Directorio de archivos php Fuente: Sistema informático CMMS Autor: El Tesista 86 Figura 53 Directos de archivos php continuación Fuente: Sistema informático CMMS Autor: El Tesista 87 Figura 54 Directorio de archivos php continuación... Fuente: Sistema informático CMMS Autor: El Tesista 3.3.5 3.3.5.1 Pruebas Tablas de administración de códigos. Ver Anexo B 4.3 3.3.5.2 Test Report Webserver Load Performance Strees Test. Ver Anexo A 1 3.3.6 Despliegue. El resultado que espera es lograr una infraestructura basado en internet que logren cambiar la ubicación in situ de la información y ubicarla de manera tal que se la pueda acceder desde cualquier parte, con las aplicaciones necesarias. La instalación del sistema será responsabilidad de Técnicos con conocimientos que respalden las acciones necesarias a fin de que la solución que ofrece la plataforma sea efectiva. 88 3.3.6.1 Manual Técnico. Ver Anexo B 6 3.4 Flujos de trabajo de soporte. 3.4.1 Gestión de cambios y configuraciones. Los cambios que deban efectuarse se realizarán en los archivos fuente, dónde consta el objetivo, deberá borrarse la base de datos y reinstalarse la aplicación según el manual de instalación. Exportación de la base de datos. Para exportar la base de datos se procede a hacer uso de phmyadmin de Wampserver. Ver Anexo B 5.6 Importación de la base de datos. Para importar la base de datos se procede a hacer uso de phmyadmin de Wampserver. Ver Anexo B 5.7 3.4.2 3.4.2.1 3.4.2.2 Gestión del proyecto. Administrar riesgos. Administrar soluciones a fallos de servidor. Virus. Caídas de sistema. Reinstalaciones del sistema por fallos graves de equipo. Cambio de IP´s de servidor Wamp. Seguridad de datos. Únicamente el administrador tiene acceso al servidor Wamp, desde dónde puede realizar consultas o reparaciones de las tablas de datos del sistema, y es de su responsabilidad el delegar el uso a otros administradores, por eso es preferible no definir más de uno. Al registrarse un nuevo usuario el rol que por defecto se asigna es el de usuario de equipos de computación, y si se requiere un rol de más jerarquía debe solicitarse al administrador el cambio de rol correspondiente. 89 En caso de haber fuga de seguridades de alto nivel o seguridades de administrador, suspender la ejecución del servidor desconectando el equipo de la red y tomar el control mediante el localhost, y; 1. Cambiar el correo que está definido el sistema de sendmail. 2. Cambiar las claves de acceso al sistema. 3. Cambiar el rol de los usuarios a un nivel más bajo. 4. Configurar el nuevo correo electrónico para que sea el que reciba y envíe información de entrada y salida. 3.4.2.3 Medidas de protección del servidor. Mantener el equipo donde está instalado el servidor Wamp en un sitio inaccesible a otros usuarios, se recomienda hacer uso exclusivo del equipo para la plataforma tecnológica, bien protegido de accidentes. Se recomienda contratar un hosting pagado con la finalidad de que la aplicación esté al alcance de cualquier usuario y de manera directa del administrador, las 24 horas. 3.4.2.4 Activación voluntaria de usuarios. El administrador voluntariamente podrá desactivar o activar el uso del sistema a un usuario que no demuestre la consideración y cultura necesaria, pudiendo notificar a las autoridades de la institución el inconveniente. 3.4.2.5 Mantenimiento de bases de datos. Para realizar tareas de mantenimiento de la base de datos se necesitará del administrador, quien previamente deberá obtener un respaldo de la bases de datos Se requieren conocimientos del manejo de servidores Wamp, Redes, Internet, del sistema, el modelado del negocio del presente sistema, componentes PC´s. 3.4.3 . 3.4.3.1 Entorno. Herramientas Adicionales Utilizadas. 90 STARUML. Ver Figura 55 Figura 55 STARUML Fuente: Internet Es una herramienta de modelado de software de código abierto que soporta UML, permite desarrollar diagramas de clases, caso de uso, diagrama de secuencias, diagramas de colaboración, diagramas de actividad, componentes. Los requerimientos para su funcionamiento son básicos, suficiente es Windows desde XP en adelante, desde 256 Mb de memoria RAM, y 150 Mb de disco duro. Evolus Pencil. Esta herramienta, Figura 56 gratuita se distribuye bajo GLP es utilizada para la creación de prototipos de interfaz gráfica de usuario GUI, de código abierto sirva para maquetar en plataformas de escritorio, permite a los desarrolladores diseñar rápida y fácilmente documentos de propuesta para usuarios, permite desarrollar todas las imágenes en un solo archivo ejecutable que se puede exportarlo como PNG, DBF, HTML. Se puede ejecutar en Windows XP/Vista/7, Linux (Fedora, Ubuntu y Arch). Figura 56 Evolus Pencil Fuente: Internet 91 yEd Graphic Editor. "Es una aplicación multiplataforma escrito en Java que se ejecuta en de Windows , Linux , Mac OS, y otras plataformas que apoyan la JVM, yEd se puede utilizar para dibujar diferentes tipos de diagramas, incluyendo diagramas de flujo , diagramas de red , diagramas UML , BPMN diagramas, mapas mentales , organigramas y diagramas de entidad-relación .yEd también permite el uso de vectores de encargo y gráficos de trama como elementos del diagrama, Figura 57 Permite obtener varios formatos de salida y los resultados se pueden guardar en formato PNG, JPGS,SVG,PDF ó SWG, permite organizar automáticamente los elementos del diagrama usando una variedad de diseño gráfico e algoritmos. Figura 57 YEd Graph Editor Fuente: Internet 92 CAPITULO 4 4 CONCLUSIONES Y RECOMENDACIONES 4.1 CONCLUSIONES. A la finalización del presente sistema, se puede observar que es posible que mediante un CMMS podamos ejercer mejor control de los inventarios, incidencias e intervenciones en los equipos, con una herramienta o software a la medida y que mantiene la independencia que muchas veces el cliente termina perdiendo al adquirir un software de arrendamiento, o un software comercial, además de ser propio tanto la documentación como el desarrollo. La utilización de un CMMS es una herramienta corporativa que permite el ingreso de solicitudes de asistencia técnica por cualquier empleado de la organización, de forma oportuna, permitiendo administrar inmediatamente la solución en el plazo inmediato El CMMS se va convirtiendo en un sistema centralizado, automático y a medida que se va utilizando va adquiriendo mayor madurez, y el usuario terminará acoplando a un sistema online en el que permanentemente esté en contacto con los técnicos. 4.2 RECOMENDACIONES. Al tener siempre disponible el CMMS, el inventario de la organización estará permanentemente actualizado con información real de los equipos en producción y la intervención técnicas que se desarrollen en base a las incidencias que los usuarios notifiquen. Se recomienda tener permanente un ingeniero que vigile el buen funcionamiento del equipo dónde está alojada la aplicación CMMS, la supervisión y el control. Con la objetividad del caso es necesaria la construcción de la página web de la Institución, pues centralizando la información la comunidad educativa podrá acceder a consultas de contexto, publicaciones, cronogramas, comunicaciones, etc. y con el funcionamiento de la plataforma tecnológica CMMS.CPP la institución habrá dado un paso importante. 93 GLOSARIO DE TÉRMINOS. Ocultar el Código HTML Con la finalidad de ocultar el código HTML al usuario o a cualquier individuo que requiera ilegalmente copiarlo, procedemos a realizar lo siguiente15: <body oncontextmenu=”return false” onkeydown=”return false”> Esta instrucción inhabilitará el boton derecho del ratón y el teclado si es que así requerimos, nuestro caso es el de inhabilitar el botón derecho del ratón y que el teclado quede activo, para esto dentro del <body> de las páginas HTML configuramos de la siguiente manera: <body oncontextmenu=”return false” onkeydown=”return true”> http://guidalinux.altervista.org/suselinux-manual_es-10.1-10/sec.apache2.modules.html Framework para aplicaciones web. Un framework es un marco para el desarrollo completo de una aplicación web, no están ligados necesariamente a un lenguaje, define una estructura para una aplicación completa. Las ventajas que se obtiene al utilizar un framework son16: El programador no necesita plantearse una estructura global de la aplicación, sino que el framework le proporciona un esqueleto que hay que rellenar. Facilita la colaboración cualquiera que haya tenido que pelearse con el código fuente de otro programador (o incluso con el propio, pasado algún tiempo) sabrá lo difícil que es entenderlo y modificarlo; por tanto, todo lo que sea definir y estandarizar va a ahorra tiempo y trabajo a los desarrollos colaborativos. Es más fácil encontrar herramientas (utilidades, librerías adaptadas al framework concreto para facilitar el desarrollo. DNS. 15 16 www.desarrolloweb.com/articulos/1263.php http://jordisan.net/blog/2006/que-es-un-framework/ 94 No es más que una dirección que facilita la comunicación con un servidor, es una base de datos distribuida y jerárquica que almacena la información de los nombres de los dominios. SMTP17. El protocolo SMTP (Protocolo simple de transferencia de correo) es el protocolo estándar que permite la transferencia de correo de un servidor a otro mediante una conexión punto a punto18. Éste es un protocolo que funciona en línea, encapsulado en una trama TCP/IP. El correo se envía directamente al servidor de correo del destinatario. Funciona con comandos de textos enviados al servidor SMTP (al puerto 25 manera predeterminada)19 . El protocolo POP320. El protocolo POP (Protocolo de oficina de correos), permite recoger electrónico en un servidor remoto (servidor POP). Es necesario para las personas que no están permanentemente conectadas a Internet, ya que así pueden consultar sus correos electrónicos recibidos sin que ellos estén conectados como su nombre. El uso de puertos21. Diversos programas TCP/IP pueden ejecutarse simultáneamente en Internet (por ejemplo, pueden abrirse diferentes navegadores de manera simultánea o navegar por páginas html mientras se descarga de un FTP): Cada uno de estos programas funciona con un protocolo. A veces el equipo debe poder distinguir las diferentes fuentes de datos. Por lo tanto, para facilitar este proceso, a cada una de las aplicaciones puede serle asignada una dirección única en el equipo, codificada 16 bits; un puerto (por consiguiente, la combinación de dirección IP + puerto es una dirección única en el mundo denominada socket). De esta manera. La dirección IP sirve para identificar de manera única un equipo en la red mientras que el número de puerto especifica la aplicación a la que se dirigen los datos. http://es.kioskea.net/contents/279-protocolos-de-mensajeria-smtp-pop3-e-imap4 18 http://es.kioskea.net/contents/279-protocolos-de-mensajeria-smtp-pop3-e-imap4 19 http://es.kioskea.net/contents/279-protocolos-de-mensajeria-smtp-pop3-e-imap4 http://es.kioskea.net/contents/279-protocolos-de-mensajeria-smtp-pop3-e-imap4 21 http://es.kioskea.net/contents/272-puerto-puertos-tcp-ip 20 95 Así, cuando el equipo recibe información que va dirigida a un puerto datos se envían a la aplicación relacionada .Si se trata de una solicitud enviada a la aplicación la aplicación se denomina aplicación servidor. Si se trata de una respuesta, entonces hablamos de una aplicación cliente. Secure Sockets Layer22. Es un protocolo que administra la seguridad de las transacciones que se realizan a través del Internet…..se basa en el cifrado de clave pública que garantizan l seguridad de los datos que se envían a través del Internet. Artefacto. Es la información especializada que obtenemos a través de un proceso de desarrollo de software, generalmente la construimos utilizando el lenguaje UML. Estos artefactos se especifican en forma de diagramas y junto a la documentación del sistema constituyen los artefactos que el modelador construye para el desarrollo del software. 22 es.kioskea.net/contents/141-criptografia-secure-soc 96 BIBLIOGRAFÍA Wikipedia. (28 de Noviembre de 2013). Obtenido de http://es.wikipedia.org/wiki/Proceso_Unificado_de_Rational ESTADO, Contraloría General del. (16 de Noviembre de 2009). Contraloría General del Estado. Recuperado el 27 de Diciembre de 2013, de http://www.contraloria.gob.ec/documentos/normatividad/ACUERDO%20039%20CG%20 2009%205%20Normas%20de%20Control%20Interno.pdf KENDAL, K. Y. (2011). Análisis de Sistemas. MEXICO: SHAUM. LEVIT, Joel. (2013). La Cultura de la Confiabilidad, 50 Preguntas para ayudarle en la búsqueda de su Software para CMMS. Recuperado el 8 de Diciembre de 2013, de Confiabilidad.net: http://confiabilidad.net/articulos/cree-usted-que-un-sistema-computarizado-de-gestiondel-mantenimiento-cmms-s/ OSORIO, F. (2008). Bases de Datos Relacionales Teoría y Práctica. En F. L. Rivera, Bases de Datos Relacionales Teoría y Práctica (págs. 25-25). Medellín, Colombia: Fondo Editorial ITM. SCHMULLER, Joseph. (2001). Aprendiendo UML en 24 horas. Naucalpan de Juárez, Edo. de México: Prentice Hall. TAYLOR, S. (5 de Junio de 2014). Software Advice. Recuperado el 8 de Junio de 2014, de www.softwareadvice.com/cmms/ 97 ANEXO A 1 Report Webserver Load Performance Strees Test 03/05/2015 16:41:10 Project and Scenario Comments, Operator Test Setup Test Type: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) Logging Period: Log every 10 seconds URLs URL Sequencing: Users always click the same URL (to spreads load evenly on all URLs, set number of users to a multiple of the number of URLs!) URLs: Click here Browser Settings Browser Simulation: User Agent: Mozilla/5.0 (compatible; Webserver Stress Tool 8; Windows) Browser Simulation: HTTP Request Timeout: 120 s Options Logging: Write detailed log(s) Timer: not enabled Local IPs: Automatic URL#1: POST localhost/hd/rindex.php POSTDATA=prueba de servidor Click Delay=5 Client System System Windows 7/2008 R2 V6.1 (Build 7600) , CPU Proc. Lev. 686 (Rev. 9477) at 2400 MHz, 98 Memory 993 MB available RAM of 3069 MB total physical RAM, 2667 MB available pagefile Test Software Webserver Stress 8.0.0.1010 Enterprise Edition (Freeware) Tool: Test Type: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) Summary Log ** Test Logfile by Webserver Stress Tool 8.0.0.1010 Enterprise Edition (Freeware) ** © 1998-2012 Paessler AG, http://www.paessler.com Test run on 03/05/2015 16:41:10 ** Project and Scenario Comments, Operator ** Results of period #1 (from 1 sec to 11 sec ): **************************************************************** Completed Clicks: 16 with 0 Errors (=0,00%) Average Click Time for 5 Users: 17 ms Successful clicks per Second: 1,56 (equals 5.619,87 Clicks per Hour) Results of complete test **************************************************************** ** Results per URL for complete test ** URL#1 (GABRIEL IBUJÉS): Average Click Time 17 ms, 16 Clicks, 0 Errors 99 Total Number of Clicks: 16 (0 Errors) Average Click Time of all URLs: 17 ms !! Glossary: !! Click: A simulated mouse click of a user sending a request (one of the URLs from the URL list) to the server and immediately requesting any necessary redirects, frames and images (if enabled). !! Request: A HTTP request sent to the server regardless of an answer. !! Hit: A completed HTTP request (i.e. sent to the server and answered completely). Hits can be the PAGE request of a "click" or its frames, images etc. !! Time for DNS: Time to resolve a URL's domain name using the client system's current DNS server. !! Time to connect: Time to set up a connection to the server. !! Time to first byte (TFB): Time between initiating a request and receiving the first byte of data from the server. !! Click Time: The time a user had to wait until his "click" was finished (including redirections/frames/images etc.). !! User Bandwidth: The bandwidth a user was able to achieve. !! Sent Requests: Number of requests sent to the server during a period. !! Received Requests: Number of answers received from the server during a period. URLs to Test URL# Name Click Delay URL [s] 1 GABRIEL IBUJÉS 5 POST data (or Username @filename@) localhost/hd/rindex.php prueba de servidor Password ADMINISTRADOR b5c015 Results per User User No. Clicks Hits Avg. Click Time [ms] Errors Bytes kbit/s Cookies 1 5 5 0 11 83.680 11.898,71 2 5 5 0 14 83.680 9.652,12 3 5 5 0 17 83.680 7.760,30 4 5 5 0 17 83.680 7.959,82 5 5 5 0 11 83.680 12.452,88 Results per URL 100 URL No. Name Clicks Errors 1 GABRIEL IBUJÉS Time Spent [ms] Errors [%] 16 0 0,00 Avg. Click Time [ms] 272 17 Time [ms] Protocol Times for all URLs 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0 1 2 b c d e f g 3 Click Time 4 5 6 Time Since Start of Test [s] Time to First Byte b c d e f g b c d e f g Time to Connect b c d e f g 7 8 Time for DNS 9 10 Time for local socket b c d e f g Test Ty pe: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) Server and User Bandwidth 200 Server Bandwidth [kbit/s] 160 140 120 100 80 60 40 20 0 0 1 2 3 4 b c d e f g 5 6 Time Since Start of Test [s] Server Bandwidth [kbit/s] b c d e f g 7 8 9 10 Avg. User Bandwidth [kbit/s] 8.000 7.500 7.000 6.500 6.000 5.500 5.000 4.500 4.000 3.500 3.000 2.500 2.000 1.500 1.000 500 0 180 Avg. User Bandwidth [kbit/s] Test Ty pe: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) Transferred Data & System Memory & CPU Load 100% 80% 70% 60% 950 209,009009 50% 40% 30% 20% 10% 0% 5 6 7 b c d e f g System Memory [MB] 8 Time since start of test [s] b c d e f g Network Traffic [kbit/s] g b c d e f 9 Local CPU Load [%] Test Ty pe: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) 101 10 Transferred Data [kbit/s] Local CPU Load [%] Available System Memory [MB] 90% 209,009009 0 Time since start of test [s] Open Requests b c d e f g b c d e f g Sent Requests per second b c d e f g Received Requests per second g b c d e f Network Traffic [kbit/s] Test Ty pe: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) 0 1 2 3 4 b c d e f g Click Time [ms] 5 6 Time Since Start of Test [s] b c d e f g Clicks per Second g b c d e f 7 Hits per Second Test Ty pe: CLICKS (run test until 5 clicks per user) User Simulation: 5 simultaneous users - 10 seconds between clicks (Random) 102 8 9 10 1,5 1,4 1,3 1,2 1,1 1 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,1 0 Hits/s - Clicks/s Click Time [ms] Click Time, Hits/s, Users/s (all URLs) 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Sent/Received Requests/s 3 Bandwidth [kbit/s] Open Requests Open Requests & Transferred Data ANEXO B 1. Diagrama de clases. Figura 58 Diagrama de clases Fuente: Sistema informático CMMS Autor: El Tesista 103 2. Diagrama de la base de datos. Figura 59 Diagrama relacional de la base de datos Fuente: Sistema informático CMMS Autor: El Tesista 104 3. Script de la base de datos. -- MySQL Script generated by MySQL Workbench -- 02/09/15 00:40:23 -- Model: New Model Version: 1.0 -- MySQL Workbench Forward Engineering SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; -- ------------------------------------------------------ Schema DISENORELACIONALCMMS -- ----------------------------------------------------- -- ------------------------------------------------------ Schema DISENORELACIONALCMMS -- ----------------------------------------------------CREATE SCHEMA IF NOT EXISTS `DISENORELACIONALCMMS` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ; USE `DISENORELACIONALCMMS` ; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Procedencia` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Procedencia` ( `clave_procedencia` INT NOT NULL, `procedencia` VARCHAR(45) NULL, PRIMARY KEY (`clave_procedencia`)) ENGINE = InnoDB; 105 -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Tipo_equipo` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Tipo_equipo` ( `tipo_equipo` INT NOT NULL, `nombre` VARCHAR(40) NULL, PRIMARY KEY (`tipo_equipo`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Datos Generales` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Datos Generales` ( `clave_nombres` INT NOT NULL, `cedula` VARCHAR(45) NULL, `nombres` VARCHAR(45) NULL, `apellidos` VARCHAR(45) NULL, `direccion` VARCHAR(45) NULL, `cargo` VARCHAR(45) NULL, `clave_unidad` VARCHAR(45) NULL, `ciudad` VARCHAR(45) NULL, `password` VARCHAR(45) NULL, `user_name` VARCHAR(45) NULL, `rol_helpdesk` VARCHAR(45) NULL, `activado` INT NULL, PRIMARY KEY (`clave_nombres`)) ENGINE = InnoDB; -- ----------------------------------------------------- 106 -- Table `DISENORELACIONALCMMS`.`Mantenimiento` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Mantenimiento` ( `clave` INT NOT NULL, `clave_equipo` INT NULL, `fecha_planificado` DATE NULL, `detalle` VARCHAR(500) NULL, `observaciones` VARCHAR(500) NULL, `fecha_realizado` DATE NULL, `clave_usuario` INT NULL, `Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`clave`, `Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Equipo` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Equipo` ( `clave_equipo` INT NOT NULL, `clave_tipo` INT NULL, `fecha_alta` DATE NULL, `fecha_baja` DATE NULL, `clave_responsable` INT NULL, `detalle` VARCHAR(500) NULL, `clave_estado` INT NULL, `clave_ubicacion` INT NULL, `codigo` VARCHAR(10) NULL, `garantia` DATE NULL, 107 `proveedor` VARCHAR(50) NULL, `Procedencia_clave_procedencia` INT NOT NULL, `tipo_equipo_tipo_equipo` INT NOT NULL, `Datos Generales_clave_nombres` INT NOT NULL, `Mantenimiento_clave` INT NOT NULL, `Mantenimiento_Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`clave_equipo`, `Procedencia_clave_procedencia`, `tipo_equipo_tipo_equipo`, `Datos Generales_clave_nombres`, `Mantenimiento_clave`, `Mantenimiento_Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Acceso` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Acceso` ( `clave` INT NOT NULL, `nivel` VARCHAR(45) NULL, `Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`clave`, `Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Unidad` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Unidad` ( `clave_unidad` INT NOT NULL, `unidad` VARCHAR(80) NULL, `proceso` VARCHAR(80) NULL, `datosgenerales_clave_nombres` INT NULL, 108 `Equipo_clave_equipo` INT NOT NULL, `Equipo_Procedencia_clave_procedencia` INT NOT NULL, `Equipo_tipo_equipo_tipo_equipo` INT NOT NULL, `Equipo_Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`clave_unidad`, `Equipo_clave_equipo`, `Equipo_Procedencia_clave_procedencia`, `Equipo_tipo_equipo_tipo_equipo`, `Equipo_Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Estado_evento` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Estado_evento` ( `clave` VARCHAR(20) NOT NULL, `nombre` VARCHAR(20) NULL, PRIMARY KEY (`clave`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Help_desk` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Help_desk` ( `clave_helpdesk` INT NOT NULL, `clave_nombres` VARCHAR(45) NULL, `clave_equipos` VARCHAR(45) NULL, `clave_receptado` VARCHAR(45) NULL, `reporte` VARCHAR(45) NULL, `accion` VARCHAR(45) NULL, `fecha` VARCHAR(45) NULL, 109 `atendido` VARCHAR(45) NULL, `clave_atendido` VARCHAR(45) NULL, `correo` VARCHAR(45) NULL, `fecha_entrega` VARCHAR(45) NULL, `estado_evento_clave` VARCHAR(20) NOT NULL, PRIMARY KEY (`clave_helpdesk`, `estado_evento_clave`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Stock` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Stock` ( `clave_equipo` INT NOT NULL, `clave_nombres` INT NULL, `Equipo` VARCHAR(500) NULL, `Cantidad` INT NULL, `Fecha` DATE NULL, `Verificador` INT NULL, `tipo_equipo` INT NULL, `serie` VARCHAR(50) NULL, `clave_estado` INT NULL, `parte` INT NULL, `asunto` VARCHAR(45) NULL, `destino` INT NULL, `garantia` DATE NULL, `proveedor` VARCHAR(50) NULL, `Equipo_clave_equipo` INT NOT NULL, `Equipo_Procedencia_clave_procedencia` INT NOT NULL, 110 `Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`clave_equipo`, `Equipo_clave_equipo`, `Equipo_Procedencia_clave_procedencia`, `Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Estado_equipo` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Estado_equipo` ( `tipo_equipo` INT NOT NULL, `nombre` VARCHAR(30) NULL, `stock_clave_equipo` INT NOT NULL, `stock_Equipo_clave_equipo` INT NOT NULL, `stock_Equipo_Procedencia_clave_procedencia` INT NOT NULL, `Equipo_clave_equipo` INT NOT NULL, `Equipo_Procedencia_clave_procedencia` INT NOT NULL, `Equipo_tipo_equipo_tipo_equipo` INT NOT NULL, `Equipo_Datos Generales_clave_nombres` INT NOT NULL, PRIMARY KEY (`tipo_equipo`, `stock_clave_equipo`, `stock_Equipo_clave_equipo`, `stock_Equipo_Procedencia_clave_procedencia`, `Equipo_clave_equipo`, `Equipo_Procedencia_clave_procedencia`, `Equipo_tipo_equipo_tipo_equipo`, `Equipo_Datos Generales_clave_nombres`)) ENGINE = InnoDB; -- ------------------------------------------------------ Table `DISENORELACIONALCMMS`.`Organizacion` -- ----------------------------------------------------CREATE TABLE IF NOT EXISTS `DISENORELACIONALCMMS`.`Organizacion` ( `clave_org` INT NOT NULL, 111 `nombre` VARCHAR(50) NULL, `direccion` VARCHAR(50) NULL, `telefono_casa` VARCHAR(10) NULL, `fax` VARCHAR(10) NULL, `ruc` VARCHAR(13) NULL, `representante_legal` VARCHAR(50) NULL, `cargo` VARCHAR(50) NULL, `correo` VARCHAR(50) NULL, `pagina_web` VARCHAR(50) NULL, `logotipo` VARCHAR(45) NULL, `telefono_celular` VARCHAR(10) NULL, PRIMARY KEY (`clave_org`)) ENGINE = InnoDB; SET SQL_MODE=@OLD_SQL_MODE; SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; 112 4. Diccionario de datos El objetivo del diccionario de datos es presentar detalladamente las características lógicas de los atributos que se encuentran definidos en las tablas donde se guarda la información, se debe incluir el objetivo de las tablas dentro del sistema, los nombres de las tablas, el nombre del atributo y sus características particulares; los nombres de las tablas y los atributos deben tener la respectiva relación con la finalidad hacer fácil el intuir el objetivo. En la tabla se muestra la lista de tablas utilizadas en el desarrollo del sistema con su descripción correspondiente: Tabla Nombre Comentario Tabla 1 datosgenerales Tabla para almacenar los datos del usuario y su rol dentro del sistema Tabla 2 acceso Tabla para almacenar los tipos de rol de los usuarios Tabla 3 equipo Tabla para almacenar los equipos del sistema de inventario Tabla 4 estado_ equipo Tabla para almacenar los tipos de estado de los equipos Tabla 5 stock Tabla para almacenar todo el stock del inventario Tabla 6 tipo-equipo Tabla para guardar el tipo de equipo Tabla 7 unidad Tabla para almacenar las unidades de la Institución Tabla 8 procedencia Tabla para almacenar la procedencia de los equipos Tabla 9 helpdesk Tabla para almacenar la gestión de incidentes de los equipos y usuarios Tabla 10 estado_evento Tabla para almacenar los eventos de las incidencias producidas Tabla 11 mantenimiento Tabla para almacenar la gestión de mantenimiento Tabla 12 organizacion Tabla para almacenar la información relativa a la Organización Tabla 1: datosgenerales Nombre de campo Definición clave_nombres int(10) cedula char(10) nombres char(20) apellidos char(20) dirección char(40) cargo char(40) clave_unidad int(10) ciudad char(40) correo char(30) password char(70) user_name varchar(20) 113 Rol_helpdesk int(11) activado int(11) Clave Primaria: clave_nombres Tabla 11 datosgenerales Nombre de Campo clave nivel Clave Primaria: clave Tabla 2: acceso Definición int(11) varchar(20) Tabla 12 Acceso Tabla 3: equipo Nombre de campo Definición clave_equipo int(11) clave_tipo int(11) fecha_alta date fecha_baja date clave_procedencia int(11) clave_responsable int(11) detalle varchar(500) clave_estado int(11) clave_ubicacion int(11) avaluo double código varchar(10) garantía date proveedor Varchar(40) AUTO_INCREMENT Clave Primaria: clave_equipo Tabla 13 equipo Nombre de Campo tipo_equipo nombre Clave Primaria: tipo_equipo Tabla 4: estado_equipo Definición int(11) varchar(30) Tabla 14 Estado del equipo Nombre de Campo clave_equipo clave_nombres Equipo Cantidad Fecha Tabla 5: stock Definición int(10) int(11) varchar(500) int(11) date 114 AUTO_INCREMENT Verificador tipo_equipo Serie clave_estado Parte Asunto Destino Clave Primaria: Clave_equipo int(11) int(11) int(11) int(11) int(11) int(11) int(11) Tabla 15 Tabla de Stock Nombre de Campo tipo_equipo Tabla 6: tipo_equipo Definición int(11) nombre AUTO_INCREMENT varchar (40) Clave Primaria: tipo_equipo Tabla 16 Tipo de equipo Tabla 7: unidad Nombre de Campo clave_unidad Definición int(10) Unidad char(80) Proceso Clave Primaria: clave_unidad varchar(80) AUTO_INCREMENT Tabla 17 Unidad Nombre de Campo clave_procedencia Procedencia Tabla 8: procedencia Definición int(11) varchar(60) AUTO_INCREMENT Clave Primaria: clave_procedencia Tabla 18 Procedencia de equipos Nombre de Campo clave_helpdesk Tabla 9: helpdesk Definición int(10) clave_nombres int(10) clave_equipos varchar(80) clave_receptado int(11) reporte accion varchar(500) varchar(500) fecha date 115 AUTO_INCREMENT atendido int(11) clave_atendido int(11) correo varchar(80) Fecha_entrega Clave Primaria: clave_helpdesk date Tabla 19 helpdesk Nombre de Campo clave nombre Clave Primaria: clave Tabla 10: estado_evento Definición int(11) varchar(20) AUTO_INCREMENT Tabla 20 Estado de evento Nombre de Campo Clave clave_equipo clave_usuario fecha_planificado Detalle Observaciones fecha_realizado Clave Primaria: clave Tabla 11: mantenimiento Definición int(11) AUTO_INCREMENT int(11) int(11) date varchar(500) varchar(500) date Tabla 21 Mantenimiento Nombre de campo clave_org Tabla 12: organizacion Definición int(11) Nombre varchar(50) Direccion varchar (50) telefono_casa varchar(10) telefono_celular varchar(10) Fax vatchar(10) Ruc varchar(10) representante_legal varchar(50) Cargo varchar(50) Correo varchar(50) pagina_web varchar(50) logotipo varchar (10) 116 Clave Primaria: clave_org Tabla 22 Organización 5. Tabla de Administración de códigos. Tabla 23 Administración de códigos Fuente: Sistema informático CMMS Autor: El Tesista 6. Exportación de la base de datos Marcamos todos los archivos que corresponden a nuestra base de datos cmms: Se exportará la base de datos mediante phmyadmin de Apache para eso marcamos todas nuestras tablas y exportamos mediante el menú exportar: Figura 60 Exportación de la base de datos. Paso 1 Fuente: Sistema informático Autor: Tesista 117 Figura 61 Exportación de la base de datos. Paso 2 Fuente: Sistema informático Autor: Tesista Figura 62 Exportación de la base de datos. Paso 3 Fuente: Sistema informático Autor: Tesista 118 El archivo cmms.sql se guardará en la carpeta de descargas, y ya tendremos nuestro respaldo, nos fijaremos en las características (tamaño, fecha y hora) de modificación) del archivo, para administrar la secuencia de copias de seguridad de nuestra base de datos o sea el historial. 7. Importación de la base de datos Procedemos si es necesario a borrar nuestra base de datos para luego importar .Para eso mediante phmyadmin creamos la base de datos cmms y procedemos a importarla del lugar dónde tenemos el archivo cmms.sql como vemos en la Figura 63 Figura 63 Importación de la base de datos. Fuente: Sistema informático Autor: Tesista Y de realizarla la importación estamos listas a gestionar nuestro sistema, según el manual del usuario: 119 ANEXO C 1 MANUAL DE USUARIO. Este manual constituye una guía de consulta para el usuario, del cual él obtendrá las instrucciones necesarias para tener un control adecuado de las diferentes transacciones que el sistema presenta. Es necesario que tenga ciertos conocimientos básicos que le permitirá obtener los mejores resultados. Este manual contiene ilustraciones e instrucciones que el usuario deberá seguir paso a paso para poder manejar correctamente el Computerized Maintenance Management System Sistema CMMS – Sistema Informático de Administración del Mantenimiento. Luego de leer este manual, el usuario podrá proceder a manejar el sistema de una manera correcta y le permitirá intuir el comportamiento y obtener la información esperada. Los usuarios finales estarán involucrados en la operación del sistema, ellos serán quienes según el perfil podrán comprender el alcance de su accionar, los perfiles definidos son: Administrador: Persona encargada de gestionar la información de: Inventarios. Administración de usuarios. Administración de definiciones de: tipos de equipo, estados de incidencia, estado de equipo, distribución de equipos. Delegar trabajos a los técnicos. Técnico: Persona encargada de atender la incidencia reportada por el Usuario de Equipos, ordenada por el Administrador y debe registrar su actividad, así como el reporte técnicamente expresado; para habilidad del sistema el Técnico también puede reportar los incidentes. Usuario de Equipos: Persona que detecta la incidencia y reporta el inconveniente presentado en su equipo para que un Técnico de solución al problema, el usuario del sistema pude ser un administrativo, un docente o un estudiante. 1.1 Objetivo. El objetivo es dar al usuario la guía necesaria para que pueda tener la asistencia debida y así logre un efectivo manejo de la información mediante del sistema del cual va a ser favorecido. 1.1.1 Identificación de Usuario con el Sistema. Para ingresar al sistema será necesario acceder mediante el navegador a la dirección url www.localhost/hd/rindex.php. 120 Según el perfil que tenga el interesado tendrá acceso a los diferentes niveles de uso permitidos y definidos para cada uno de ellos, los clientes o usuarios definidos en el sistema son: Administrador, Técnico y Usuario de Equipos, esto solo lo determinará el Administrador del Sistema. La Figura 64 muestra la pantalla inicial del sistema CMMS.CPP, en ella tenemos: El cuadro de texto para nombre de usuario y password.- Si el usuario ya se registró con anterioridad podrá acceder al sistema, de lo contrario obtendrá del sistema la negación correspondiente. Figura 64 Pantalla de Inicio CMMS.CPP Fuente: Sistema informático Autor: Tesista Olvidó el Password.- Si el usuario olvidó o requiere cambiar de contraseña el password de ingreso al sistema, requiere de un clic en botón olvidó el Password y deberá seguir el procedimiento de la Figura 65 para obtener un nuevo y deberá consultar en su correo electrónico el nuevo y poder ejecutar desde ahí, entonces ya podrá acceder al sistema identificándose con su username y el password nuevos y el rol correspondiente que tiene (Usuario: Administrador, Técnico o Usuario de Equipos). Figura 65 Obtener un nuevo password Fuente: Sistema informático Autor: Tesista 121 Registrarse.- Le permitirá registrarse como un nuevo usuario del sistema, para lo cual deberá llenar la información que de él se requiere y se muestra en la Figura 66 Figura 66 Pantalla para registro de nuevo usuario Fuente: Sistema informático Autor: Tesista La información que el sistema le solicitará es la siguiente: Nombres. Apellidos. Dirección. Ciudad. Cargo. Dependencia. Correo Electrónico. Password. Hay que considerar que el administrador nunca le solicitará cual es la clave de su correo electrónico, se entiende que esta es muy personal. 122 1.2 USUARIO ADMINISTRADOR DEL SISTEMA. El administrador es el encargado de las tareas de administración del sistema como crear usuarios, gestionar acceso a los usuarios, gestionar la información de inventarios, gestionar asignación de trabajos. El perfil que tiene el usuario Administrador se muestra en el menú definido en la Figura 67, a continuación realizaremos un análisis de cada opción. Figura 67 Menú Principal de Administrador Fuente: Sistema informático Autor: Tesista 1.2.1 Soporte Técnico. El soporte técnico de la infraestructura informática cumple un papel vital dentro de la Institución. La administración de los recursos requiere el correcto funcionamiento de los equipos, en la Figura 68 encontramos el menú de incidencias solicitadas y los soportes técnicos atendidos. Figura 68 Menú de sopporte técnico Fuente: Sistema informático Autor: Tesista 123 1.2.1.1 Incidencias Reportadas. De acuerdo a la selección de Incidencias Reportadas, el Administrador obtiene la siguiente pantalla mostrada en la Figura 69 dónde puede encontrar un reporte de las incidencias que han solicitado los diferentes usuarios del sistema. Figura 69 Reporte de incidencias Fuente: Sistema informático Autor: Tesista Usuarios. El listado muestra el nombre del usuario quién reportó el incidente. Responsable. El listado muestra el nombre del responsable del equipo. Reporte. Muestra el reporte del usuario, dónde con pocas palabras escribe el incidente. Fecha: Muestra la fecha de la emisión del reporte. Acción. Muestra las acciones que el técnico informático ha desplegado en resolver la petición solicitada. Además se acumula la información del diálogo que se da desde el inicio de la incidencia hasta la última que puede venir desde el técnico o administrador. Estado. Muestra el estado de la solicitud de la atención requerida: Reportado. Atendido. En Trámite. El Administrador puede modificar la incidencia tanto en el reporte de la incidencia como en la acción realizada para solucionarla. 124 Puede reportar el estado, así como delegar la atención de la incidencia al técnico que él considere, llegando la notificación al técnico quién podrá observar cuando él ingrese al sistema. En caso de que el usuario de equipos no haya notificado la incidencia, el Administrador también puede ingresarla. 1.2.1.2 Soportes solicitados. Para insertar una nueva incidencia hacemos clic en el botón Insertar de la Figura 70 y obtenemos de resultado la pantalla de la mostrada en la Figura 71 Figura 70 Gestionar incidencia Fuente: Sistema informático Autor: Tesista En esta pantalla recibe la información de: 1. Funcionario que envió la incidencia. 2. El correo del funcionario. 3. El equipo reportado. 4. El nombre del técnico que recibió la incidencia. 5. El reporte de la incidencia. 6. La fecha y hora. 7. El estado de la incidencia. Atendido. Reportado. En trámite. 8. Y deberá asignar el trabajo al técnico que él considere, desde el luego deberá consultar la carga de trabajo que antes le haya entregado, una vez asignada la tarea al técnico, este 125 podrá consultar en la sección de perfil de técnico que le corresponde como se observa en la Figura 71 Figura 71 Asignación de técnico para atender la incidencia Fuente: Sistema informático Autor: Tesista El técnico podrá ver en la información enviada por el Administrador en su espacio definido. 1.2.2 Inventarios. Permite gestionar la información de inventarios, el administrador es el único usuario que tiene esta responsabilidad, él debe ser el responsable de ingresar la información de los equipos, los cambios que puedan ser requeridos en los equipos, entre la información que el encontrará se encuentra: 1. Código del equipo. 2. Funcionario responsable. 3. Tipo de equipo. 4. Fecha de alta. 5. Fecha de baja. 6. Fecha de garantía. 126 7. Precedencia. 8. Detalle del equipo. 9. Estado del equipo. 10. Ubicación del equipo. 11. Avalúo del equipo, y 12. Proveedor. En la Figura 72 se muestra la pantalla de inicio de la gestión de inventarios. Figura 72 Menú principal de gestión de inventarios Fuente: Sistema informático Autor: Tesista Al seleccionar del Menú inventario general obtenemos la salida de la siguiente que corresponde al maestro de información o equipos base. Figura 73 Información de equipo base 127 En este reporte de selección se muestra la información de los equipos base de las distintas dependencias, si queremos mostrar todos seleccionamos Mostrar todos los registros y obtendremos el listado completo de los equipos. Podemos hacer uso de las teclas de ir a inicio, regresar uno, avanzar en uno e ir al final de los registros que se muestran. En esta ubicamos el código del equipo, el nombre del equipo, la procedencia del equipo, el responsable del equipo, el estado del equipo y la dependencia dónde está ubicado el equipo, podemos editar y borrar el equipo seleccionándolo en la correspondiente casilla de selección. 1.2.2.1 Ingresar un nuevo equipo al inventario. Para ingresar un nuevo equipo procedemos a hacer clic en la pantalla de la Figura 74 Figura 74 Ingreso de un nuevo equipo Fuente: Sistema informático Autor: Tesista 1. Seleccionamos el tipo de equipo, hemos denominado EQUIPO BASE al componente principal. 2. Seleccionamos el funcionario que hará uso del equipo. 3. Descripción del equipo, aquí escribiremos características externas del equipo, o alguna información importante que nos permitirá identificarlos. 4. Cantidad. 5. Llenamos el campo de fecha, aquí escribimos la fecha de ingreso al sistema de inventarios, esta fecha puede diferir de la fecha de adquisición del equipo. 6. Escribimos la fecha del límite de la garantía del equipo. 128 7. Verificador. Seleccionamos el nombre de la persona que verificó el equipo, pudiendo ser el técnico. 8. La serie del equipo la llenamos con el número del equipo, para identificar hemos dado un código a la dependencia a la que corresponde el equipo, para observar en detalle este código, revisemos la tabla correspondiente. 9. Seleccionamos el estado del equipo, pudiendo ser excelente, bueno, regular o si se requiere algún otro estado el administrador deberá generar el estado en la figura de la pantalla correspondiente. 10. Hacemos clic en insertar. Codificación del equipo, cómo fue adquirido, quién es el usuario responsable, el estado del equipo, la ubicación del equipo, para esto deberá gestionar el módulo de administración donde fácilmente definirá el nombre de equipo del equipo, el estado del equipo, las dependencias dónde se ubicarán los equipos. 1.2.2.2 Ingresar partes de equipos. Si todavía no se ha ingresado partes de los equipos, el sistema mostrará la siguiente Figura 75 Figura 75 Pantalla inicial de partes de equipo Fuente: Sistema informático Autor: Tesista Para ingresar partes de un equipo seleccionamos un equipo en la casilla de la figura y procedemos a editarlo, procedemos a detallar el equipo mediante el botón de insertar, entonces nos encontramos con la siguiente Figura 76. 129 Figura 76 Pantalla de gestión de partes de equipo Fuente: Sistema informático Autor: Tesista En la cabecera del documento encontramos la información del equipo al cual vamos a modificar. Como vemos en la figura, la información del equipo ya ha sido ingresada, si es que quisiéramos aumentar componentes simplemente debemos seleccionar el botón insertar y continuar. En la misma pantalla, si quisiéramos corregir algún dato procedemos a seleccionar el casillero correspondiente y editamos la información del componente. 1.2.3 Mantenimiento. 1.2.3.1 Control de Mantenimiento Planificado. El Administrador del Mantenimiento o Administración del Sitio puede acceder al menú de mantenimiento del menú principal. La Figura 77 muestra la información concerniente al control de mantenimiento. Figura 77 Control de mantenimiento planificado Fuente: Sistema informático Autor: Tesista 130 1.2.3.2 Gestionar Mantenimiento Planificado. Para realizar esta operación el Administrador únicamente selecciona del menú Mantenimiento la opción detalle, y procede a gestionar seleccionar el equipo, y delegar el técnico responsable, se adjunta le fecha, el detalle y las observaciones pertinentes, Figura 78 Figura 78 Gestionar mantenimiento planificado 1.2.4 Administración. Este menú está disponible únicamente para el Administrador del Sistema, la Figura 79 siguiente despliega la información a tratarse. Figura 79 Menú de administración de códigos Fuente: Sistema informático 1.2.4.1 Codificación de Tipo de Equipo. En la Figura 80 podemos ver cómo administrar los códigos de Tipos de Equipo. Figura 80 Configuración de tipos de equipo Fuente: Sistema informático Autor: Tesista 131 El Administrador gestionará los términos que requiera para referirse a equipos, partes, software, si requiere editarlos o borrarlos únicamente los seleccionará en los casilleros correspondientes. Si se requiere ingresar un nuevo elementos únicamente utilizará el botón nuevo y procederá, ver Figura 81 Figura 81 Definición de tipos de equipo Fuente: Sistema informático Autor: Tesista 1.2.4.2 Codificación de Estados de Incidencias. El administrador podrá definir el estado de incidencia que requiera, para esto debe actuar sobre pantalla mostrada en la Figura 82. Figura 82 Definición de estados de incidencia Fuente: Sistema informático Autor: Tesista 1.2.4.3 Codificación de Estado de Equipo. El administrador podrá definir el estado de los equipos que requiera, para esto debe actuar sobre la pantalla mostrada en la según pantalla que se muestra en la Figura 83 y Figura 84 132 Figura 83 Definición de estados de equipo Fuente: Sistema informático Autor: Tesista Figura 84 Modificar estados de equipo Fuente: Sistema informático Autor: Tesista 1.2.4.4 Codificación de Dependencia o Unidad. El administrador podrá definir las diferentes dependencias de la Institución que requiera para detallar la ubicación del equipo de computación, lo cual se muestra en la los equipos que requiera, para esto debe actuar sobre la pantalla mostrada en la Figura 85 modificarlo según la Figura 86 Figura 85 Definición de unidad o dependencia Fuente: Sistema informático Autor: Tesista 133 Figura 86 Insertar unidad o dependencia Fuente: Sistema informático Autor: Tesista 1.2.4.5 Codificación de Organización. El Administrador deberá llenar la información correspondiente de la Institución, refiérase a la Figura 87 Figura 87 Datos de la institución Fuente: Sistema informático Autor: Tesista 1.2.4.6 Administración de usuarios (Administradores, Técnicos y Usuarios de Equipos). La administración de usuarios es una parte fundamental dentro de la gestión que realiza el sistema CMMS.CPP, en la Figura 88 el administrador puede encontrará un reporte de los usuarios registrados, la información que se despliega mostrará: cédula de identidad, nombres, apellidos, cargo, dependencia en la cual trabaja o se registró y su correo electrónico. Al seleccionar un registro se mostrará la Figura 89 dónde podrá modificar los siguientes campos: 134 Cédula de Identidad, En caso de que el nuevo usuario pueda no ingresar su C.I, el administrador digitarlo o corregirlo si es necesario. Nombres. La explicación es similar al caso de la Cédula de Identidad. Apellidos. Similar al caso de la cédula de Identidad. Dirección. Similar al caso de la cédula de identidad. Correo electrónico. De ser el caso, el usuario puede solicitar cambio de correo electrónico. Username, el nombre o alias con el cual el usuario se registró por primera vez en el sistema. Rol, los roles definidos son Administrador, Técnico y Usuario. Activar, este campo le permitirá habilitar o suspender la relación entre el usuario registrado y el sistema. Figura 89 Credenciales de usuario Fuente: Sistema informático Autor: Tesista 1.2.5 Reportes. El Administrador o el Técnico de Mantenimiento puede acceder a la información del sistema accediendo al menú correspondiente a Administración del menú principal, en la Figura 90 en este puede encontrar información de Incidencias, Reporte de Equipos y el Inventario General. 135 Figura 90 Menú de reportes Fuente: Sistema informático Autor: Tesista 1.2.5.1 Incidencias. En este menú el Administrador puede encontrar la información de las incidencias registradas, Figura 91 pudiendo obtenerlas de manera ordenada, sea por Usuario, Equipo, Receptado, reporte de incidencia, acción realizada, fecha en la cual se solicitó, el estado y Técnico atendió la incidencia. Figura 91 Reporte de incidencias Fuente: Sistema informático Autor: Tesista Puede también obtener este listado hacia un archivo al cual se exporta esta información, pudiendo leerlo en formato de Excel, en formato de Calc de Ubuntu, o el mismo Firefox. 1.2.5.2 Reporte general de incidencias La Figura 92 muestra al Administrador el reporte de incidencias 136 Figura 92 Reporte general de incidencias Fuente: Sistema informático Autor: Tesista 1.2.5.3 Reporte de Equipos. En la Figura 93 se puede observar el reporte de Equipos Base con la información pertinente a código, equipo, Fecha de compra, fecha de baja, procedencia, responsable, el detalle, el estado, la ubicación y el avalúo del equipo, se puede generar esta salida hacia un archivo con formato Excel, PDF, Calc, y Firefox, pidiendo el Administrador obtener de acuerdo al orden que requiera, simplemente pinchando en la cabecera de la columna deseada. Figura 93 Reporte de equipos Fuente: Sistema informático Autor: Tesista 137 1.2.5.4 Inventario General. En la Figura 94 se puede observar el reporte del Inventario General de las partes de cada uno de los equipos, se puede encontrar la información de acuerdo a cualquier criterio pudiendo ser por equipo, por responsable, por cantidad, por fecha, por verificador, por parte, por serie y por estado, se puede generar esta salida hacia un archivo con formato Excel, PDF, Calc de Ubuntu, y Firefox, pidiendo el Administrador obtener de acuerdo al orden que requiera, simplemente pinchando en la cabecera de la columna deseada. 138 Figura 94 Reporte de inventario general Fuente: Sistema informático Autor: Tesista 139 Mantenimiento. 1.3 USUARIO TÉCNICO DE MANTENIMIENTO. El técnico es el encargado de atender las incidencias reportadas por los usuarios y realizar las correcciones necesarias con la finalidad de que se los equipos siempre estén en funcionamiento y con el software necesario. El menú del Técnico se muestra en el menú definido en la Figura 95 a continuación realizaremos un análisis de cada opción. Figura 95 Menú principal de técnico El Técnico puede acceder a las opciones de Soporte y Mantenimiento únicamente. 1.3.1 Soporte Técnico. La Figura 96 se puede observar las incidencias que le fueron enviadas por el ADMINISTRADOR, y a las cuales deberá dar solución. Figura 96 Reporte de incidencias del Administrador Fuente: Sistema informático Autor: Tesista 140 Puede obtener información del Usuario quién reportó la incidencia, el responsable de atender la incidencia, el reporte notificado, la fecha, la acción que se ha efectuado, el estado y puede editar la acción desplegada con el botón correspondiente seleccionando la incidencia requerida, Figura 97 , el técnico es quien emite la solución para que el usuario de equipos pueda observar el estado Figura 97 Modificar una incidencia Fuente: Sistema informático Autor: Tesista La Figura 98 se muestra la interfaz que le permite al técnico insertar también una incidencia, pero deberá ser modificada por el ADMINISTRADOR delegando la responsabilidad. Figura 98 Insertar una incidencia 1.3.2 Mantenimiento. Fuente: Sistema informático 1.3.2.1 Insertar Mantenimiento. El técnico definido en el sistema puede acceder al menú de mantenimiento del menú, la Figura 99 muestra el detalle de cómo inserta una actividad de mantenimiento. 141 Figura 99 Planificación de mantenimiento Fuente: Sistema informático Autor: Tesista 1.3.2.2 Control de Mantenimiento. El técnico puede acceder a efectuar el control del mantenimiento mediante dónde puede editar la información correspondiente, la Figura 100 muestra cómo administrar el control. Figura 100 Control de mantenimiento Fuente: Sistema informático Autor: Tesista 142 1.4 USUARIO DE EQUIPOS. 1.4.1 Insertar una Incidencia El usuario de equipos tiene acceso únicamente a reportar incidentes y revisar sus reportes realizados, puede seleccionar el equipo que quiere reportar encontrar información del listado, escribir en el cuadro de texto explicando la situación y la fecha del reporte será automática de los equipos, Figura 101 Figura 101 Insertar una incidencia Fuente: Sistema informático Autor: Tesista 1.4.2 Reporte de incidencias Igualmente puede acceder a únicamente sus reportes que fueron notificados, en él puede encontrar información de Nombre de Usuario, quien receptó su pedido, el contenido de su incidencia, el estado, pudiendo únicamente consultar mediante el respectivo botón, Figura 102 Figura 102 Reporte de incidentes de usuario de equipos Fuente: Sistema informático Autor: Tesista 143 2 MANUAL TÉCNICO 2.1 Plataforma de desarrrollo WampServer 2.1.1 Instalación del Software La instalación de Wamp es bastaste intuitiva y no requiere mayor esfuerzo, y no se presentarán algunas pantallas de la instalación, y se puede descargar de la dirección web www.wampserver.es ver Figura 103, para el caso particular nuestro encontramos el archivo wampserver2.2e-php5.4.3httpd2.2.22-mysql5.5.24-32b en el cd que se acompaña a la presente tesis. Figura 103 Dirección de descarga wampserver 1. Hacemos dos clic en el archivo wampserver2.2e-php5.4.3-httpd2.2.22-mysql5.5.24-32b y obtenemos la siguiente figura, pulsamos next (siguiente), podemos observar en las siguiente secuencia de imágenes el desarrollo. 144 2. Aceptamos la licencia, haciendo clic en next 3. Seleccionamos la carpeta que por defecto Wamp nos sugiere, pudiendo ser cualquier otras, pero la dejamos mejor así, pues muchas de las aplicaciones la hacen referencia , la instalación se realiza dentro de la carpeta c:\wamp 4. Seleccionamos los casilleros de creación de los iconos de inicio para arrancar nuestro servidor desde el escritorio de Windows. 145 5. Procedemos a instalar presionando el botón Install 6. Procedemos a seleccionar el navegador web, en nuestro caso es Mozilla, que lo encontramos en la carpeta c:\Archivos de Programa\Mozilla Firefox 7. Continuando, procedemos a ingresar los parámetros del mail que vamos a utilizar: SMTP : localhost y Email: [email protected] 8. Y terminamos la instalación. 146 Ahora que tenemos instalado Wampserver en nuestro equipo procedemos a levantar los servicios de Apache: 2.1.2 Activación de los módulos de Apache. Observemos la siguiente secuencia de imágenes: 1. Desde nuestro escritorio hacemos dos clics en el ícono de Wampserver para arrancar el servidor. 2. Buscamos el botón de Mostrar íconos en la barra de tareas. 3. Hacemos clic en el ícono de Wapmserver 147 4. Clic en Módulos de Apache Se mostrará un listado con los módulos, procederemos a habilitar los módulos de Apache que se encuentra en el listado 148 MODULOS DE APACHE 1 actions_module 9 authz_host_module 17 log_config_module 2 alias_module 10 authz_user_module 18 mime_module 3 asis_module 11 autoindex_module 19 negotiation_module 4 auth_basic_module 12 cgi_module 20 setenvif_module 5 authn_default_module 13 dir_modulo 21 ssl_module 6 authn_file_module 14 env_module 22 php5_module 7 authz_default_module 15 include_module 8 authz_groupfile_module 16 isapi_module Tabla 24 Módulos de Apache que deben estar activados 2.1.3 Activación de las extensiones de php. Habiendo ejecutado nuestro servidor Apache desde nuestro escritorio, se procederá a activar las extensiones de php, para lo cual sigamos la siguiente secuencia de imágenes: 1. Al mostrar íconos ocultos, obtenemos la figura siguiente 2. Pinchamos en Wampserver, y obtenemos la figura siguiente 3. Pichamos en PHP y obtenemos la figura siguiente 149 4. Pinchamos en Extensiones de PHP y obtenemos la figura siguiente Procederemos a habilitar los módulos de php de acuerdo a la tabla mostrada a continuación. 150 1 php_bz2 2 Php_gd2 3 Php_mbstring EXTENSIONES DE PHP 4 Php_mysql 5 Php_mysqli 6 Php_openssl 7 Php_pdo_mysql 8 Php_pdosqlite 9 Php_sockets Tabla 25 Extensiones de php Levantar los servicios de Apache. Si el ícono de Wampserver es de color verde, eso muestra que el servidor está activo y los servicios se están ejecutando. Iniciar los servicios. El servidor tratará levantar los dos servicios de Apache y Mysql. Detener los servicios: Detendrá los servicios que están ejecutando, y el color o sea el estado del servidor pasará a ser de color rojo. Reiniciar los servicios. Detendrá los servicios y se reiniciarán inmediatamente, esta acción se utiliza cuando se realiza algún cambio en alguno de los servicios. Por defecto, el servidor casi siempre estará apagado (off-line) esto quiere decir que únicamente desde este equipo se podrá acceder al contenido del localhost. Problemas de funcionamiento de Wamp. Para observar el estado del servidor revisamos el color del ícono de Wampserver (estado el servidor) en el lado derecho de la barra de tareas y podemos encontrar que: Problema Icono Color naranja: Apache no ha sido inicializado correctamente por un problema de configuración, el puerto del servidor Apache ha sido utilizado por otra aplicación u otro servidor web se está ejecutando Solución Quitar Skype u otro servidor IIS por ejemplo que ya se haya apropiado del puerto 80, ejecutar primeramente Wampserver y luego las otras aplicaciones, de esta manera Wampserver se apropia primero del puerto 80. Problema Icono color rojo: Significa que el servidor está activo, pero ninguno de los servicios (php y myqsl) se está ejecutando. 151 Solución Clic en Iniciar los Servicios, y el ícono se mostrará de color verde. Instalación de Software Adicional Instalación de Redistributable Package (x86) Requiera instalarse Microsoft Visual C++ 2010 para lo cual urilizamos la siguiente dirección web www.microsoft.com/es/download/confirmation.aspx?d=55 descargamos el archivo vcredist_x86.exe y lo ejecutamos. Descripción del editor. De Microsoft: el paquete visual de Microsoft C++ 2010 Redistributable instala los componentes de las bibliotecas visuales de C++ requeridas para funcionar los usos desarrollados con C++ visual en una computadora que no tenga C++ visual 2010 instalado. Este paquete instala componentes de ejecución de C Runtime (CRT), Stándar C++, ATL, MFC, OpenMP y bibliotecas MSDIA”. 2.2 Instalación de sendmail. Para realizar la instalación de gmail requerimos una cuenta de correo de Gmail, software al que está asignado el puerto 465. 2.2.1 Configuración. Creamos primeramente la carpeta sendmail dentro de la carpeta C:\wamp En el CD que se acompaña esta tesis se encuentra el paquete sendmail ya descargado de internet e instalamos en la carpeta c:\wamp\ de tal manera que el contenido de esa carpeta quede dentro de C:\wamp\sendmail, puede hacerse uso de winrar para descomprimir el archivo, los cuatro archivos sendmail.exe libreary32.dll ssleay32.dl y sendmail.ini Necesitamos modificar la configuración del SMTP server en el archivo sendmail.ini ubicado en C:\wamp\sendmail, si tenemos una cuenta gmail tendremos que dejarlo el archivo de la siguiente manera: 152 smtp_server=smtp.gmail.com smtp_port=465 smtp_ssl=ssl default_domain=localhost error_logfile=error.log debug-logfile=debug.log auth_username = [email protected] auth_password = nelincpp pop3_server= pop3_username= pop3_password= force_sender= force_recipient= hostname=localhost 2.2.2 Prueba de envío de correo electrónico mediante sendmail. Escribimos el siguiente código en un archivo llamado pruebasendmail.php, habilitamos el servidor Wamp y en la barra de direcciones localhost/hd/hd/pruebasendmail.php, teniendo como resultado. <?php $to = '[email protected]'; $subject = 'Es una prueba de sendmail.exe/Gabriel Ibujés '; $message = 'Hola, ha recibido un correo de prueba de uso de sendmail!'; $headers = 'From: cmms.cpp@@gmail.com’ . "\r\n" . 'Reply-To: cmms.cpp.com' . "\r\n" . 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=iso-8859-1' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if(mail($to, $subject, $message, $headers)) echo "Se envío el correo"; else echo "Error: Correo no fue enviado"; 153 2.3 Instalación del sistema. Necesitamos instalar la base de datos de nuestro sistema, para lo cual debemos: 2.3.1 Crear nuestra base de datos cmms. Importar la base de datos cmms. Instalación del software desarrollado CMMS.CPP Crear la Base de Datos cmms. 1. Luego de haber instalado Wamp y arrancado desde el escritorio de Windows seguimos la siguiente secuencia de figuras: 2. En la barra de tareas de Windows 7 buscamos el botón el mensaje “mostrar íconos ocultos” 3. Ejecutamos WAMPSERVER haciendo clic 4. Ejecutamos phpMyAdmin 154 y lo presionamos, se muestra 5. Ahora la pantalla nos muestra el administrador de base de datos phpMyAdmin, esta pantalla corresponde a la página de inicio y ya podemos continuar con el proceso de definir e instalar nuestra base de datos. 6. Seleccionamos el Botón Base de Datos del menú principal. 7. En el cuadro de diálogo de crear base de datos podemos escribir nuestra base de datos, en nuestro caso cmms, y seleccionamos el cotejamiento utf8_spanish_ ci del listado de 155 cotejamientos que le vamos a dar al juego de caracteres de la base de datos, y botón crear. 8. Un mensaje de Wamp nos dirá que hemos creado la base de datos con éxito. 156 2.3.2 Importar la base de datos. Seguiremos los siguientes pasos: 1. Iniciamos nuestro servidor desde el escritorio de Windows. 2. Pinchamos mostrar íconos ocultos en nuestra barra de tareas. 3. Hacemos clic en phMyAdmin 157 4. Del menú principal seleccionamos Importar. 5. Desde el botón se procederá a importar nuestra base de datos 158 6. En nuestro caso particular buscaremos el archivo cmms.sql dentro del cd y lo importaremos y habremos terminado. Terminado todo este proceso podremos instalar nuestra aplicación 159 2.3.3 Instalación del software CMMS.CPP 1. Nos ubicamos en la dirección física C:\wamp\www (la carpeta www se creó cuando instalamos Apache) y copiamos la carpeta hd (61.3 MB) que se encuentra en el CD. 2. Arrancamos Wamp desde el escritorio de Windows, y 3. Comprobar la ejecución del sistema web cmms digitando en la barra de direcciones del navegador por ejemplo mozilla la dirección localhost/hd/rindex.php, habiéndose definido los siguientes usuarios del sistema: Rol Administrador: ADMINISTRADOR( b5c015) Rol Técnico: Juanito (349fcf) Rol Usuario: Lucita (b922ed) Para cerrar nuestro servidor Wamp únicamente hacemos un clic en el ícono de la barra de tareas y seleccionamos Salida. 2.4 Manual de Organización del sistema de archivos php. El objetivo del presente manual es desplegar los datos técnicos del sistema desarrollado, para facilitar el mantenimiento, modificación o actualización del mismo en caso de ser necesario, si re requieren modificar la programación fuente. La siguiente Tabla 26 muestra los archivos que son comunes a los usuarios: Administrador, Técnico, Usuario de equipos de computación. Tabla 26 Archivos php comunes de Administrador, Técnico y Usuario En las siguientes tablas se muestran los archivos php y el rol que desempeñan dentro del sistema, así como también al rol de usuario que corresponde: Administrador, Técnico y Usuario de Equipos. 160 Tabla 27 Archivos php de Administrador del Sistema 161 Tabla 28 Archivos php de Técnico Tabla 29 Archivos php de usuario 162 3 ANEXO D 3.1 Encuesta, Resultados y Conclusiones Se puede encontrar en la siguiente dirección electrónica. https://docs.google.com/forms/d/1FlRL_PThfiWKWpkiKyBlGejHmzLD5ocIjZ-gqnNBnDQ/edit# Formulación de la encuesta a los usuarios de equipos informáticos del Instituto Tecnológico Consejo Provincial de Pichincha y los resultados obtenidos. UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE INGENIERIA CIENCIAS FISICAS Y MATEMATICA ESCUELA DE CIENCIAS QUITO-ECUADOR Entrevista dirigida a usuarios de equipos tecnológicos informáticos: Autoridades, Docentes, Administrativos y estudiantes del Instituto tecnológico Consejo Provincial de Pichincha. Objetivo: La presente entrevista ser ha planificado con el fin de recabar información referente a la administración del mantenimiento y reparación de hardware y software, administración de incidentes y soporte a los usuarios de equipos informáticos. Esta información será manejada de forma responsable y exclusivamente para desarrollar e implementar una solución informática que le permita al departamento de mantenimiento optimizas su gestión 1. ¿Si Usted conoce que otras instituciones no poseen esta herramienta, estaría de acuerdo que la Institución diera un paso importante en el aspecto propuesto? 2. ¿Cree Usted que el uso de un sistema informático favorece los procesos educativos y administrativos en la institución? 163 3. ¿Cómo cuantos equipos de computación tiene la institución? 4. ¿Cree usted que el uso de equipos genera suficiente información como para requerir el uso de un sistema informático? 5. ¿Conoce si la institución cuenta actualmente con una herramienta que le permita conocer el seguimiento del mantenimiento de los equipos informáticos vía web? 164 6. ¿De qué manera se maneja la información del mantenimiento de los equipos informáticos en la Institución? 7. ¿Le gustaría tener un sistema informático para consultar la situación, el avance de la reparación de su equipo informático vía web? 8. ¿Los datos de los equipos se encuentra almacenada en alguna base de datos automatizada visible, segura, correcta y fácil de usar? 165 9. ¿Propondría Usted el almacenamiento de los datos de los equipos de la manera indicada arriba para consulta de las capacidades de los equipos y vista por los usuarios? 10. ¿Cuenta con un registro de seguimiento actualizado del estado y ubicación de los equipos de la institución? 11. ¿Estaría de acuerdo en que se registre sus requerimientos de asistencia técnica? 166 12. ¿Piensa al automatizar la gestión de mantenimiento, se mejorará la comunicación entre técnicos y usuarios de equipos informáticos? 13. ¿Cree que los usuarios de equipos informáticos colaborarían de buena manera al solicitar ayuda? 167
© Copyright 2024 ExpyDoc