ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA DESARROLLO DE UN SISTEMA DE GESTIÓN WEB PARA UN CENTRO DE BUCEO AUTOR: RAMÓN OLALQUIAGA CUBILLO DIRECTOR: ALFONSO VILLAR CHICHARRO Madrid SEPTIEMBRE 2011 UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Agradecimientos A mis padres Ramón y Ana y hermanos Leticia, Ana y Bosco. I UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Resumen del Proyecto Título DESARROLLO DE UN SISTEMA DE GESTIÓN WEB DE UN CENTRO DE BUCEO Autores: Ramón Olalquiaga Cubillo Alfonso Villar Chicharro Resumen El objetivo principal de este proyecto es el desarrollo e implementación de un sistema de gestión Web de un Centro de Buceo que facilite la tarea de administrar las actividades y los recursos del centro de la manera más simple y eficiente posible ya que el entorno será muy limitado. Los recursos informáticos del centro de buceo serán estándar y los usuarios del sistema tendrán un nivel informático básico. El sistema ayudará a los administradores del centro a gestionar a los buceadores, sus “socios” y clientes. También les permitirá gestionar tanto los cursos que se impartirán como las inmersiones subacuáticas organizadas por el centro. A su vez el sistema tendrá una interfaz orientada a los clientes que le permitirá ver la disponibilidad de cursos e inmersiones y les dará la posibilidad de reservar plaza en dichas actividades. El sistema será desarrollado en un entorno gratuito utilizando Java, MySQL y Tomcat y se utilizará el Netbeans como GUI. II UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Palabras Clave Buceo Submarinismo Inmersiones Gestión Cursos Introducción Un centro de buceo se dedica a organizar inmersiones y cursos para los buceadores. También se ocupa del alquiler del material necesario para la práctica del buceo. Con esta aplicación el centro no sólo ganará al automatizar la gestión de los clientes sino que también se verá beneficiado ya que proporcionará a los administradores una herramienta útil para poder mejorar la planificación de las actividades y la gestión del material de alquiler. Al sistema se podrá acceder cómo administrador o cómo buceador. Entrar de una manera u otra permitirá realizar distintas funciones. Al iniciar la aplicación se accederá a una página de autenticación donde el usuario, ya sea administrador o buceador, se podrá identificar con su usuario y contraseña. El administrador de sistema podrá: - Gestionar los buceadores (Alta, Baja, Modificación, Búsqueda). - Gestionar las inmersiones (Alta, Baja, Modificación, Búsqueda). - Gestionar los cursos (Alta, Baja, Modificación, Búsqueda, Añadir/Quitar inmersiones de los cursos). El sistema permitirá al buceador: - Apuntarse a las Inmersiones en las que desee participar, también podrá desapuntarse si por algún motivo no puede acudir. - Ver las Inmersiones en las que ha participado o va a participar. - Seleccionar el material a alquilar para cada inmersión. - Visualizar la factura que se emitirá tras cada inmersión. III UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Resultados Aquí se muestra una serie de ejemplos de el resultado final de la aplicación Web desarrollada en Java, MySQL con servidor Tomcat. Se encuentran ejemplos de las principales funcionalidades del Sistema. Ejemplo de un formulario de búsqueda en la aplicación. Esta pantalla muestra un ejemplo de la generación de facturas. IV UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Un resultado de la búsqueda de inmersiones en las que el usuario se puede apuntar, desapuntar y seleccionar el material. El usuario podrá elegir el material a alquilar par alas distintas inmersiones. V UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Conclusiones - Con un deporte tan a la moda cómo es el buceo submarino, practicado cada día por más y más personas, la apertura y rentabilidad de los centros de buceo en zona costera está creciendo. - La obligatoriedad de realizar cursos oficiales para la obtención de los títulos que permiten practicar este deporte hace que el negocio de abrir un centro de buceo sea factible. - El hecho que el 90% de la población utiliza Internet a diario en España, y sumándole que la gente que practica el buceo suele ser bastante joven hacen que si se implanta este sistema en los centros de buceo de España la mayoría de reservas llegarían a través de internet, aumentaría por lo tanto el volumen de actividad de los centros de buceo que utilicen el sistema. - La simplicidad del interfaz de usuario de la aplicación permite que sea accesible a través de pantallas pequeñas como la del navegador de un Smartphone ya que no hace falta ver con demasiado detalle. - El hecho de que la aplicación no necesite muchos recursos permite a cualquier persona con acceso a internet, por muy lenta que sea la conexión, realizar reservas. VI UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Referencias [WWW01]http://www.viajoven.com/viajoven/submarinismo/titulaciones_buceo/p adi_o_estrellas.php [WWW02]http://www.ehuif-fvas.org/buceo_autonomo/cursos_titulos.htm [WWW03]http://www.bajoelagua.com/centros-buceo/ [WWW10]http://www.divingcenter.com.ar/ [WWW11]http://www.divedivecompany.com/ VII UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Title DEVELOPMENT OF A MANAGEMENT SYSTEM FOR A DIVING CENTER Authors: Ramón Olalquiaga Cubillo Alfonso Villar Chicharro Abstract The main objective of this Project is the development and implementation of a Web Management System for a Diving Center that will make the administration of the resources and activities of the center an easier and more efficient task. The IT resources will be limited to standard equipment and the end users will have basic IT knowledge, therefore it is important to keep it simple. The system will help the Center’s administrators manage the Divers, the main clients. It will also help manage the Courses that will be taught as well as the Diving expeditions organized by the Center. The system will also have a Client oriented interface which will allow them to see the availability of the courses and diving expeditions and will allow them to join these activities by booking them online. The system will be developed in a free environment using Java, MySQL, Tomcat and the GUI Netbeans. VIII UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Key Words Diving Underwater Diving Expedition Management Courses Introduction A diving center organizes immersions and courses for divers. It also handles the rental of equipment for diving. With this application, the center will not only gain by automating the management of clients but will also benefit as it will provide managers with a tool to improve business planning and management of rental equipment. The system can be accessed as an administrator or as a diver. Access the system one way or the other to perform different functions. When started, the application will show a login page where the user, either an administrator or a diver, can identify himself with his username and password. The system administrator can: - Manage divers (Insert, Remove, Modify, Search). - Manage dives (Insert, Remove, Modify, Search). -Manage Courses (Insert, Rmove, Modify, Search, Add / Remove diving courses). The system will allow the diver to: - Sign up for the immersions in which he wants to participate, he can also unsubscribe if for some reason he cannot attend. - See immersions in which he has participated or will participate. - Select the material to hire for each dive. - Display the invoice of every immersion booked. IX UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Results Here are a few screenshots of the Web application developed in Java, MySQL and Tomcat. Below we can see some of the main functionalities of the application developed. An example of a search form in the application. This screen shows how the invoicing functionality looks like. X UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA A search result of immersions where the user can actually book, cancel and choose the material he wants to hire for the expedition. The user will be able to select the kind of material he wants to hire for the immersion. XI UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Conclusions - The increasing popularity of underwater diving, practiced by more and more people each day, makes opening a diving center near the coast a feasible business. - The fact that you must obtain the corresponding diplomas that allow you to practice this sport in certified centers also adds to the feasibility of opening a diving center. - The fact that 90% of the population uses the Internet everyday in Spain, and the fact that people that practice diving are usually quite young and improve this percentage, means that if this system is implemented in a Diving center the majority of the bookings will be done online benefiting the business by increasing the activity considerably. - The simplicity of the user interface of the application allows it to be accessed using the smallest of screens. Due to the fact that the graphical detail is basic the application can be easily used on the explorer of any small device such as a Smartphone. - The fact that the application doesn’t need a lot of resources will allow anyone with even the slowest Internet Access, to access de application and make bookings. XII UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA References [WWW01]http://www.viajoven.com/viajoven/submarinismo/titulaciones_buceo/p adi_o_estrellas.php [WWW02]http://www.ehuif-fvas.org/buceo_autonomo/cursos_titulos.htm [WWW03]http://www.bajoelagua.com/centros-buceo/ [WWW10]http://www.divingcenter.com.ar/ [WWW11]http://www.divedivecompany.com/ XIII UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA Índice de la memoria Capítulo 1 Introducción ................................................................................... 2 1.1 El Mundo del Buceo Submarino .................................................................... 2 1.2 Asociaciones de Buceo ..................................................................................... 4 1.3 Títulos Oficiales ............................................................................................... 6 1.4 Material y Equipamiento de Buceo................................................................ 8 Capítulo 2 Identificación de Necesidades ...................................................... 16 2.1 Organización de un Centro de Buceo .......................................................... 16 2.2 Antecedentes .................................................................................................. 17 2.3 Objetivos del Sistema .................................................................................... 19 2.4 Alcance del Sistema ....................................................................................... 22 2.5 Usuarios Finales ............................................................................................. 23 2.6 Restricciones .................................................................................................. 24 Capítulo 3 3.1 Análisis Funcional ....................................................................... 25 Introducción ................................................................................................... 25 3.1.1 Ámbito del Proyecto y Contexto General del Sistema ................................................. 25 3.2 Lista de Requisitos......................................................................................... 26 3.3 Casos de Uso................................................................................................... 52 3.3.1.1 Casos de Uso Administrador ................................................................................ 52 3.3.1.2 Casos de Uso Buceador ........................................................................................ 58 Capítulo 4 Arquitectura .................................................................................. 67 4.1 Arquitectura Web.......................................................................................... 67 4.2 Herramientas de Software y Tecnologías Utilizadas .................................. 69 4.2.1 Java 1.6 / Java SE 6 ...................................................................................................... 69 XIV UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA 4.2.1.1 Servlets ................................................................................................................. 69 4.2.1.2 JSP ........................................................................................................................ 70 4.2.1.3 JSTL ..................................................................................................................... 70 4.2.1.4 JDBC .................................................................................................................... 71 4.2.2 NetBeans ...................................................................................................................... 71 4.2.3 Tomcat ......................................................................................................................... 72 4.2.4 MySQL ........................................................................................................................ 73 Capítulo 5 5.1 Diseño ........................................................................................... 74 Estructura de Paquetes ................................................................................. 74 5.1.1 Clases DAO.................................................................................................................. 74 5.1.2 Entidades ...................................................................................................................... 75 5.1.3 Servlets ......................................................................................................................... 75 5.1.4 Util ............................................................................................................................... 76 5.1.5 JSPs .............................................................................................................................. 77 5.2 Modelo Lógico y Físico de Bases de Datos .................................................. 78 5.2.1 Buceadores ................................................................................................................... 79 5.2.2 Inmersiones .................................................................................................................. 81 5.2.3 Cursos .......................................................................................................................... 83 5.2.4 Otras Tablas ................................................................................................................. 85 5.2.4.1 Cuentas ................................................................................................................. 85 5.2.4.2 Títulos .................................................................................................................. 86 5.2.4.3 Materiales ............................................................................................................. 87 5.2.4.4 Inmersiones_Buceadores_Materiales ................................................................... 88 5.2.4.5 Cursos_Buceadores_Materiales ........................................................................... 88 5.2.4.6 Cursos_Buceadores .............................................................................................. 89 5.2.4.7 Cursos_Inmersiones ............................................................................................. 90 5.2.4.8 Inmersiones_Buceadores ...................................................................................... 90 5.2.5 Diseño final de la BBDD ............................................................................................. 91 5.3 Diseño de Interfaz .......................................................................................... 92 Capítulo 6 Pruebas ......................................................................................... 93 Capítulo 7 Implantación ................................................................................. 95 7.1 Software a Instalar ........................................................................................ 95 7.1.1 Java SE 6 Update 25 .................................................................................................... 95 7.1.1.1 Documentación ..................................................................................................... 95 XV UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA ÍNDICE DE LA MEMORIA 7.1.2 Netbeans IDE 7.0 y Tomcat 7.0.11 ............................................................................. 95 7.1.3 MySQL ........................................................................................................................ 96 7.1.3.1 MySQL Community Server 5.5.11....................................................................... 96 7.1.3.2 MySQL Workbench (GUI Tool) 5.2.33b ............................................................. 96 7.1.3.3 MySQL Connectors Connector/J 5.1.15 ............................................................... 96 7.2 Configuración de BBDD MySQL................................................................. 97 Capítulo 8 Conclusiones ................................................................................. 98 Capítulo 9 Bibliografía ................................................................................... 99 9.1 Libros.............................................................................................................. 99 9.2 Páginas Web................................................................................................... 99 Anexo A: Planificación y Estudio económico ................................................... 101 Anexo B: Manual de usuario ............................................................................. 107 XVI UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO INDUSTRIAL SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO MEMORIA -1- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 1 INTRODUCCIÓN En esta sección se hará un estudio sobre el mundo del buceo submarino en España. Se hablará sobre la práctica del buceo como deporte 1.1 EL MUNDO DEL BUCEO SUBMARINO ¿Qué es el buceo? El buceo es el acto por medio del cual el hombre se sumerge en cuerpos de agua, ya sea el mar, un lago o un río, con el fin de desarrollar una actividad deportiva, comercial o de investigación científica o militar con o sin ayuda de equipos especiales. El buceo deportivo se practica en dos modalidades: el buceo libre o en apnea (griego: apnoia, 'sin respiración' ), y el buceo autónomo con equipo o con escafandra autónoma, conocido popularmente como SCUBA por el acrónimo inglés Self Contained Underwater Breathing Aparatus. Este proyecto se centrará en la segunda modalidad ya que es la que requiere material especializado y obtención de titulaciones específicas para su práctica. Las técnicas de apnea y con equipo autónomo con aire pertenecen a la categoría deportiva o recreativa. También se considera buceo recreativo el uso de mezclas de aire enriquecido (Nitrox) con porcentajes de O2 hasta el 40%,1 mientras que las técnicas de buceo autónomo con otras mezclas de gases (Nitrox más enriquecido, Heliox, Trimix) o el uso de Rebreathers se consideran dentro de la categoría de buceo técnico o profesional, debido al riesgo y al nivel de preparación requerido por el buzo que las emplea. Según las distintas escuelas y normativas, el buceo deportivo se limita por lo general a los 20-40 m de profundidad, mientras que el buceo profesional con mezclas especiales permite acceder a profundidades superiores a los 100 m. -2- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO En el buceo autónomo el buzo utiliza una botella con aire a presión que le permite ir respirando el aire almacenado, dotándolo de una autonomía considerable (usualmente, en torno a una hora). Además del equipo básico y de la propia botella, se emplea un arnés, un mecanismo de flotabilidad —el arnés y el sistema de flotabilidad integrados reciben el nombre chaleco hidrostático, chaleco de flotabilidad o BCD (acrónimo inglés de Buoyancy Compensation Device)—, un regulador (sistema de válvulas, tubos y boquillas que permiten respirar el aire de la botella), y un sistema de lastre. No obstante, los estándares de seguridad actuales requieren de una serie de "relojes" que permitan al buceador saber a qué profundidad se encuentra y cuánto aire tiene, llamados profundímetro y manómetro, respectivamente. También se están popularizando los ordenadores de buceo, que en función de la profundidad, la mezcla de aire y el tiempo de permanencia bajo el agua, indican al buceador en cada momento los límites de profundidad en los que puede permanecer. El buceo deportivo (libre o autónomo) es una actividad segura, pero que presenta riesgos específicos que exigen conocimiento y responsabilidad por parte de sus practicantes. Una preparación adecuada, la familiaridad con el equipo empleado, el conocimiento y aplicación de las medidas de seguridad, un mínimo de conocimientos técnicos y fisiológicos, y el respeto por los organismos del medio acuático son las condiciones mínimas para realizar satisfactoriamente estas actividades. -3- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 1.2 ASOCIACIONES DE BUCEO Debido a los riesgos que supone un deporte como el buceo, su práctica no se puede realizar sin la obtención de un título homologado. Existen varias asociaciones y federaciones que permiten la obtención de los títulos a través de sus cursos. En España los 2 organismos principales de los que puedes obtener un título oficial son FEDAS y PADI. La Federación Española de Actividades Subacuáticas FEDAS es la máxima autoridad deportiva española en el ámbito de los deportes subacuáticos. Como federación nacional, agrupa a las federaciones autonómicas de todo el país. Por ello mismo realiza todas sus labores y documentación en el idioma oficial del estado: el castellano o español; así como en los idiomas cooficiales en las respectivas comunidades autónomas: gallego, vasco y catalán. Es miembro con derecho a voto de la Confederación Mundial de Actividades Subacuáticas (C.M.A.S.). -4- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO PADI Professional Association of Diving Instructors es la organización más grande a nivel mundial para la preparación de buceadores. Se creó en 1966 con la idea de dividir el hasta entonces único título existente para la práctica del buceo en distintos módulos adaptados al nivel y experiencia de cada buceador. -5- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 1.3 TÍTULOS OFICIALES Los certificados y títulos de distintos niveles los facilitan PADI y FEDAS (CMAS) tras la realización de los cursos homologados pertinentes en los centros de buceo de toda España. Hay títulos de distintos niveles, desde principiante hasta de nivel instructor y son escalables y generalmente compatibles. Aparte de títulos generales también existen títulos específicos para prácticas subacuáticas no tan comunes que necesitan un entrenamiento específico cómo puede ser el buceo con NITROX, el buceo nocturno o el buceo en grutas. Dentro de los principales títulos que te permiten la práctica del buceo en todo el mundo los principales niveles PADI y CMAS que se considerarán equivalentes en el ámbito de este proyecto son los siguientes: PADI CMAS Open Water 1 Estrella * Te permite bucear hasta una profundidad de 20 metros, acompañado por otro buceador de mayor titulación. Cuando lleves 20 inmersiones, podrás acceder al curso de siguiente nivel. Advanced 2 Estrellas ** Para acceder a este curso es necesario haber cumplido los 15 años y tener por lo menos 20 inmersiones registradas y el título anterior. Con este título podrás bajar hasta 30 metros y entrar en descompresión. También, en cuanto tengas cuarenta inmersiones registradas, podrás acompañar a los buceadores de nivel inferior en sus inmersiones. -6- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Dive Master 3 Estrellas *** El acceso a los cursos de este nivel está limitado a los mayores de 18 años, por motivos de posible responsabilidad civil, ya que entre sus competencias figura la de ser jefe de grupo o guía subacuático. Además, es necesario tener registradas 40 inmersiones y el título anterior. Los buceadores de este nivel pueden sumergirse hasta los 40 metros (límite fijado para el buceo deportivo por las normativa legal vigente). También pueden participar en los cursos de buceo como buceadores de apoyo de los instructores en las clases de mar. Instructor Instructor Para poder acceder al título de instructor hay que tener los títulos anteriores además de: - Tener 18 años cumplidos. - Tener "cpr first aid" no caducado. - Título Divemaster o equivalente. - Certificado médico oficial. - Al menos 100 inmersiones registradas. - Antigüedad mayor a un año buceando. - Haber participado en la formación de buceadores en todos los niveles anteriores al Divemaster. -7- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 1.4 MATERIAL Y EQUIPAMIENTO DE BUCEO Para la práctica del buceo hace falta el equipamiento adecuado. A continuación se muestra el material esencial para la práctica de este deporte. El equipo de buceo consta de dos partes: El equipo ligero y el equipo pesado. - El Equipo Ligero consta de los siguientes elementos: o Mask: Son lo que se denomina gafas de bucear. Ayuda al buceador a ver con claridad bajo el agua y a proteger sus ojos. o Neopreno: Es el traje de buceo en sí, existen de distintos grosores y su elección dependerá de la temperatura a la que esté el agua. Estos trajes pueden llevar capucha también adecuada a la temperatura y profundidad a la que se vaya a realizar la inmersión. -8- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Hay 3 tipos principales de trajes de neopreno: Wet Suit Grosor de 3mm: Utilizado en aguas con temperatura que varía entre 21ºC-27ºC. Wet Suit Grosor de 5mm: Utilizado en aguas con temperatura que varía entre 16ºC-21ºC. -9- UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Dry Suit: Proporciona el aislamiento térmico necesario para cuando el agua se encuentra a temperaturas por debajo de los 15ºC. También se utiliza para inmersiones de larga duración. o Aletas: Proporcionan al buceador el impulso necesario para poder desplazarse dentro del agua con mayor facilidad. Ayudan a poder cargar con el peso del equipamiento. - 10 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO o Guantes: A parte de servir de aislante térmico en aguas frías los guantes muchas veces sirven para evitar abrasión con fauna y flora marina. - 11 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO - El Equipo Pesado consta de los siguientes elementos: o Plomos o Lastre: Se trata de una serie de piezas de plomo que se instalan en el cinturón. Gracias a este peso extra, se podrá uno sumergir sin mayores problemas. Proporciona equilibrio hidrostático, es decir, la flotabilidad nula. o Regulador: Sirve para proporcionar aire con fluidez y comodidad a cualquier profundidad. - 12 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO o Profundímetro: Una de las cosas más importantes que se debe saber en todo momento es la profundidad a la que se encuentra un buceador. El profundímetro es un aparato similar a un reloj, que como su nombre indica, marca la profundidad a la que se está. o Reloj de Ordenador de Buceo: Reloj más avanzado que suele llevar el instructor de buceo o el líder de la inmersión que indica todo tipo de información fundamental cómo: Temperatura del agua. Tiempo de la inmersión. Profundidad actual y profundidad máxima. Velocidad de ascenso. Parada de seguridad (cuando se debe realizar). Si se está en descompresión o no. Inmersiones sucesivas. Tiempo durante el cual no se debe volar. Se adapta al tipo de aire que se esté utilizando (Aire, NITROX…). - 13 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO o Jacket: Es el chaleco que sirve para cargar con las botellas de aire. o Botella: Se almacena el aire necesario para poder respirar bajo el agua. Las hay de distinto volumen según la duración de la inmersión (cuanto más larga más volumen), las más comunes son de 12, 15 y 18 litros. Existen 2 tipos principales de botella según la composición del aire que se halla en su interior. - 14 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Aire comprimido: Están compuestas por Oxigeno y Nitrógeno. El aire está compuesto de aproximadamente 21% de oxígeno y 79% de nitrógeno. NITROX: Se denomina Nitrox a una mezcla de oxígeno y nitrógeno utilizada en buceo técnico y recreativo. Nitrox o Aire Enriquecido son términos comúnmente utilizados para referirese a mezclas oxígeno-nitrógeno que contienen más oxígeno que el aire ordinario. - 15 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 2 IDENTIFICACIÓN DE NECESIDADES 2.1 ORGANIZACIÓN DE UN CENTRO DE BUCEO Un Centro de Buceo típico es a quien está orientado esta aplicación de gestión. Normalmente los centros de buceo se encuentran cerca de la costa, instalados en pequeñas naves cerca del puerto. Estos lugares no están diseñados para ser oficinas sino más bien para almacenar el material de buceo. El personal administrativo de un centro de buceo suelen ser los instructores del mismo. Estos serán típicamente los usuarios administradores de la aplicación de gestión que se va a diseñar. Bastará con tener en la nave en la que se encuentra el centro, un PC estándar con acceso a internet instalado en la mesa de recepción. De esta manera cuando vengan los clientes un administrador les podrá dar de alta en el sistema y facilitarles los códigos de acceso. A partir de aquí los usuarios cliente podrán realizar sus reservas desde su casa ya que podrán acceder al sistema de manera remota. El centro de buceo se dedica a organizar inmersiones y cursos para los buceadores. También se ocupa del alquiler del material necesario para la práctica del buceo. Con esta aplicación el centro no sólo ganará en automatizar la gestión de los clientes sino que también se verá beneficiado ya que proporcionará a los administradores una herramienta útil para poder mejorar la planificación de las actividades y la gestión del material de alquiler. - 16 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 2.2 ANTECEDENTES La aplicación DiveforLife 1.0 está diseñada para ser utilizada tanto desde internet por los buceadores cómo en el ordenador de la recepción (también por Internet) de un centro de buceo por los administradores. Existen páginas Web diseñadas para reservar cursos e inmersiones que funcionan estilo tienda online. En España no existe ningún buen ejemplo de Web con este tipo de funcionalidad. Sin embargo mirando más allá de las fronteras nacionales, en Argentina, he encontrado un buen ejemplo de página Web que te permite reservar y comprar cursos e inmersiones desde casa. http://www.divingcenter.com.ar/. El formato de esta página es más parecido al de una agencia de viajes pero tiene aspectos interesantes que aportarán a la hora de diseñar el sistema. Por ejemplo se puede ver que tiene una sección que deja apuntarse a cursos planificados que es una las funcionalidades que incorporará DiveforLife1.0. - 17 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO DiveforLife 1.0, sin embargo, aunque tomará ideas de esta tienda online estará más orientado a la gestión funcional de un centro de buceo en particular. - 18 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 2.3 OBJETIVOS DEL SISTEMA En la tabla a continuación se muestran los objetivos de este proyecto. Estos objetivos se utilizarán posteriormente en el análisis de requisitos para definir los requisitos del sistema. Dan una idea general de lo que se quiere conseguir desarrollando este sistema de gestión. IDENTIFICADOR OBJETIVO OBJ-01 El sistema permitirá gestionar los perfiles de los buceadores que sean miembros centro. OBJ -02 El sistema permitirá gestionar los cursos que impartirá el centro de buceo para la obtención de los títulos oficiales. OBJ -03 El sistema permitirá gestionar las inmersiones planificadas por el centro. OBJ -04 El sistema será multiempresa, se podrá implantar en distintos centros de buceo de España. OBJ -05 Facilidad de uso: El sistema será lo suficientemente intuitivo para que pueda ser utilizado sin formación específica tanto por los administradores del club de buceo cómo por los buceadores miembros del centro. OBJ -06 Escalabilidad el sistema vertical: El sistema será escalable verticalmente. Aumentando la capacidad de la máquina se puede aumentar la capacidad de procesamiento de la aplicación . - 19 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO OBJ -07 El sistema se ocupará de la gestión de un solo centro. No gestionará varios centros a la vez desde la misma aplicación. OBJ -08 El sistema será multinavegador, es decir bastará con tener cualquier navegador típico instalado para poder acceder a la aplicación. Funcionará igual en Internet Explorer, Mozilla Firefox, Opera o Google Chrome. OBJ -09 La aplicación tendrá un sistema de autenticación para los administradores del centro. Los administradores del sistema accederán introduciendo nombre de usuario y contraseña. OBJ -10 La aplicación tendrá un sistema de autenticación para los buceadores miembros del centro. Una vez dados de alta en el sistema los buceadores podrán acceder a la aplicación utilizando su nombre de usuario y contraseña. OBJ -11 La aplicación distinguirá si el usuario es un administrador/gestor o un cliente/buceador al inicio de la sesión teniendo distintas funcionalidades para cada uno de ellos. OBJ -12 La aplicación tendrá un rápido despliegue en el navegador sin la necesidad de instalar ningún software adicional. OBJ -13 Asequible: La aplicación está diseñada para centros de buceo que son por lo general pequeñas empresas que dedican poco presupuesto a la gestión informática. - 20 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO OBJ -14 La aplicación permitirá al buceador apuntarse a los cursos e inmersiones que desee siempre que no estén por encima de su formación. OBJ -15 La aplicación mostrará facturas a los usuarios de las inmersiones contratadas. OBJ-16 La aplicación permitirá al buceador seleccionar material de alquiler para cada inmersión. - 21 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 2.4 ALCANCE DEL SISTEMA Teniendo en cuenta los objetivos descritos en el apartado anterior, el alcance del sistema DiveforLife 1.0 se describirá a continuación. Al sistema se podrá acceder cómo administrador o cómo buceador. Entrar de una manera u otra permitirá realizar distintas funciones. Al iniciar la aplicación se accederá a una página de autenticación donde el usuario, ya sea administrador o buceador, se podrá identificar con su usuario y contraseña. El administrador de sistema podrá: - Gestionar los buceadores (Alta, Baja, Modificación, Búsqueda). - Gestionar las inmersiones (Alta, Baja, Modificación, Búsqueda). - Gestionar los cursos (Alta, Baja, Modificación, Búsqueda, Añadir/Quitar inmersiones de los cursos). El sistema permitirá al buceador: - Apuntarse a las Inmersiones en las que desee participar, también podrá desapuntarse si por algún motivo no puede acudir. - Ver las Inmersiones en las que ha participado o va a participar. - Seleccionar el material a alquilar para cada inmersión. - Visualizar la factura que se emitirá tras cada inmersión. - 22 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 2.5 USUARIOS FINALES Los usuarios finales del Sistema DiveforLife 1.0 para centros de buceo serán principalmente los siguientes. Están claramente divididos en 2 categorías ya que cada uno de ellos tendrá distintos permisos a la hora de utilizar el sistema. 1. Los administradores y empleados del centro de buceo: o Pueden ser tanto los empresarios dueños del centro cómo los empleados administrativos e instructores en nómina del centro. o Tendrán más permisos que los clientes ya que podrán dar de alta buceadores, cursos e inmersiones. o Utilizarán el sistema a través del PC de la recepción del centro de buceo aunque no importa ya que se puede acceder desde cualquier ordenador con un navegador y conexión. 2. Los buceadores que sean miembros del centro de buceo: o Cualquier persona que se inscriba a una inmersión o a un curso en dicho centro tendrá que haberse dado de alta en el sistema. Una vez dado de alta el buceador pasará a ser miembro activo de centro. o El perfil de estos usuarios estará principalmente limitado poder ver los cursos e inmersiones a los que se puede inscribir. - 23 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 2.6 RESTRICCIONES Las restricciones del Sistema DiveforLife 1.0 serán las siguientes: 1. La validación de usuarios es local mediante tablas BBDD (No se utilizará un directorio tipo LDAP, Active Directory) por lo que no habrá gestión de identidades global. No habrá control de concurrencia por lo que si 2 personas modifican a la vez la misma entidad (curso, inmersión o perfil de buceador) permanecerá lo que pusiera el último de ellos. 2. El sistema sólo podrá gestionar un centro. Se podrá implantar en distintos centros para la gestión de cada uno de ellos (multiempresa), pero no tendrá la capacidad de gestión de varios centros desde el mismo sistema (no es multicentro). 3. El ser multiempresa el sistema deberá ser los más genérico posible para poder ser implantado en cualquier centro de España. 4. El sistema debe diseñarse para los centros de buceo que dedican poco presupuesto para la adquisición de software. Se reducirán los costes de desarrollo al máximo eligiendo tecnologías y herramientas software, libres y gratuitas. - 24 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 3 ANÁLISIS FUNCIONAL En este capítulo se analizará a fondo lo que requiere el sistema DiveforLife 1.0 para poder diseñar una solución satisfactoria al problema de la gestión eficiente del Centro de Buceo. 3.1 INTRODUCCIÓN 3.1.1 ÁMBITO DEL PROYECTO Y CONTEXTO GENERAL DEL SISTEMA La aplicación Web utilizará Internet para poder funcionar. El usuario introducirá y consultará los datos a través de Internet. De esta forma será muy cómodo el despliegue de la aplicación ya que los usuarios podrán acceder al sistema de una forma remota de tal manera que se restringirá mucho menos la movilidad de los usuarios. En el ámbito del proyecto el usuario conectará con el sistema hallado en el servidor que a su vez accederá a la Base de Datos. Internet Base de Datos Servidor - 25 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 3.2 LISTA DE REQUISITOS En este apartado se analizarán todos los requisitos necesarios para realizar el diseño más apropiado de la aplicación. La aplicación debe cumplir los siguientes requisitos. IDENTIFICADOR REQUISITO AR-01 Login como Administrador: Usuario/Contraseña. AR-02 Gestión Buceadores: Alta Buceadores. AR-03 Gestión Buceadores: Baja Buceadores. AR-04 Gestión Buceadores: Búsqueda Buceadores. AR-05 Gestión Buceadores: Modificar Buceadores. AR-06 Gestión Inmersiones: Alta Inmersión. AR-07 Gestión Inmersiones: Baja Inmersión. AR-08 Gestión Inmersiones: Búsqueda Inmersión. AR-09 Gestión Inmersiones: Modificar Inmersión. AR-10 Gestión Cursos: Alta Cursos. AR-11 Gestión Cursos: Baja Cursos. AR-12 Gestión Cursos: Búsqueda de Cursos. AR-13 Gestión Cursos: Modificar Cursos. AR-14 Gestión Cursos: Añadir/Quitar Inmersiones a Cursos. AR-15 Login cómo Buceador: Usuario/Contraseña. AR-16 Buscar Inmersiones. AR-17 Apuntarse a Inmersiones de nivel adecuado. AR-18 Buscar Cursos. - 26 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO AR-19 Apuntarse a Cursos de nivel adecuado. AR-20 Ver sus Inmersiones. AR-21 Seleccionar material para cada Inmersión. AR-22 Ver factura de cada Inmersión. AR-23 Desapuntarse de una Inmersión. AR-24 Desapuntarse de un Curso. - 27 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Login como Administrador: Usuario/Contraseña. Identificador AR-01 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Los administradores podrán autenticarse al iniciar la aplicación para poder acceder al sistema como administradores introduciendo su usuario y contraseña. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Usuarios que no tengan perfil de administrador no podrán acceder al sistema como tal proporcionando de esta manera seguridad. COMENTARIOS El alta de administradores sólo se puede hacer directamente desde la base de datos por lo tanto sólo lo podrá realizar manualmente el gerente del centro que tenga el acceso a la base de datos. DOCUMENTOS RELACIONADOS OBJ -09, OBJ-11 REQUISITOS RELACIONADOS - - 28 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Buceadores: Alta Buceadores. Identificador AR-02 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Los administradores podrán dar de alta buceadores dentro del sistema, proporcionándoles un perfil propio y los datos de autenticación. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Un buceador no se puede dar de alta en el sistema por lo tanto se evita intrusismo externo ya que sólo se crearán perfiles de los usuarios que tengan el visto bueno del centro. COMENTARIOS El alta del usuario se realizará cuando el usuario esté en el centro de buceo. DOCUMENTOS RELACIONADOS OBJ-01, OBJ-10 REQUISITOS RELACIONADOS AR-03, AR-04, AR-05 - 29 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Buceadores: Baja Buceadores. Identificador AR-03 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Los administradores podrán dar de baja a los buceadores del sistema, a petición de estos. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Los buceadores que ya no quieran estar inscritos en el centro podrán solicitar a un administrador la baja. COMENTARIOS La baja se realizará a petición del buceador. DOCUMENTOS RELACIONADOS OBJ-01 REQUISITOS RELACIONADOS AR-02, AR-04, AR-05 - 30 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Buceadores: Búsqueda Buceadores. Identificador AR-04 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador puede ver desde la aplicación todos los buceadores miembros del centro. También los puede filtrar por varios campos para ver los buceadores con características similares. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El administrador puede filtrar por varios campos facilitándole la gestión de los buceadores. COMENTARIOS DOCUMENTOS RELACIONADOS OBJ-01 REQUISITOS RELACIONADOS AR-02, AR-03, AR-05 - 31 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Buceadores: Modificar Buceadores. Identificador AR-05 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador puede modificar la información correspondiente al perfil de todos los buceadores miembros del centro. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Permitirá tener los perfiles de los buceadores actualizados. Importante para cuando los usuarios obtengan nuevos títulos de buceo, actualizar el campo de formación. COMENTARIOS Cada vez que un buceador tenga un nuevo título se deberá actualizar en su perfil ya que es lo que permite o no el acceso a las inmersiones de distinto nivel. DOCUMENTOS RELACIONADOS OBJ-01 REQUISITOS RELACIONADOS OBJ-02, OBJ-03, OBJ-04 - 32 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Inmersiones: Alta Inmersión. Identificador AR-06 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Los administradores podrán dar de alta inmersiones en el sistema introduciendo toda la información correspondiente a la misma. De esta manera estarán disponibles para que los buceadores puedan apuntarse. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El centro de buceo podrá planificar sus inmersiones de esta manera. COMENTARIOS Las inmersiones tendrán un título mínimo requerido. Este campo se rellenará bajo el juicio del administrador. DOCUMENTOS RELACIONADOS OBJ-03 REQUISITOS RELACIONADOS AR-07, AR-08, AR-09 - 33 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Inmersiones: Baja Inmersión. Identificador AR-07 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Un administrador podrá dar de baja una Inmersión del Sistema en cualquier momento, por cualquier motivo. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Si en un momento dado una inmersión no tiene suficientes buceadores apuntados se podrá dar de baja. Otro motivo típico sería dar de baja una inmersión por motivos meteorológicos COMENTARIOS Este requisito es indispensable para poder tener en el sistema sólo las inmersiones que se vayan a realizar. DOCUMENTOS RELACIONADOS OBJ-03 REQUISITOS RELACIONADOS AR-06, AR-08, AR-09 - 34 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Inmersiones: Búsqueda Inmersión. Identificador AR-08 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador podrá ver todas las inmersiones que estén dadas de alta en el sistema, la podrá filtrar según sus características. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Permite al administrador agrupar inmersiones de características parecidas o encontrar inmersiones en el sistema a través del sistema de búsqueda. COMENTARIOS Se debe introducir información en los campos de búsqueda. DOCUMENTOS RELACIONADOS OBJ-03 REQUISITOS RELACIONADOS AR-06, AR-07, AR-09 - 35 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Inmersiones: Modificar Inmersión. Identificador AR-09 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador podrá modificar las inmersiones que estén dadas de alta en el sistema. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Si por ejemplo cambia la previsión de la temperatura del agua, se podrá modificar fácilmente. Permite tener las inmersiones actualizadas y con la información lo más exacta posible. COMENTARIOS DOCUMENTOS RELACIONADOS OBJ-03 REQUISITOS RELACIONADOS AR-06, AR-07, AR-08 - 36 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Cursos: Alta Cursos. Identificador AR-10 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador podrá crear los cursos que se vayan a impartir en el centro. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Al igual que la inmersiones ayuda a la planificación del centro en cuanto a la gestión de los cursos. COMENTARIOS Los cursos serán creados para los distintos niveles y títulos que existen. Sólo podrán ser accedidos por buceadores que tengan el título del nivel anterior. DOCUMENTOS RELACIONADOS OBJ-02 REQUISITOS RELACIONADOS AR-11, AR-12, AR-13, AR-14 - 37 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Cursos: Baja Cursos. Identificador AR-11 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador podrá dar de baja los cursos que no se vayan a impartir. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Los cursos que no se vayan a impartir no estarán en el sistema y así no aparecerán en las búsquedas. COMENTARIOS Los motivos más típicos por los que se puede dar de baja un curso pueden ser por falta de buceadores apuntados o, por ejemplo, por motivos meteorológicos. DOCUMENTOS RELACIONADOS OBJ-02 REQUISITOS RELACIONADOS AR-10, AR-12, AR-13, AR-14 - 38 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Cursos: Búsqueda de Cursos. Identificador AR-12 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador del sistema podrá ver todos los cursos existentes en el sistema y filtrarlos por sus características. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Se podrán ver los cursos de características similares y encontrar los cursos deseados a través del buscador. COMENTARIOS DOCUMENTOS RELACIONADOS OBJ-02 REQUISITOS RELACIONADOS AR-10, AR-11, AR-13, AR-14 - 39 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Cursos: Modificar Cursos. Identificador AR-13 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El administrador podrá modificar los cursos dados de alta en el sistema, cambiando los detalles que sean necesarios. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Tener actualizados los cursos existentes con la información más exacta posible. COMENTARIOS DOCUMENTOS RELACIONADOS OBJ-02 REQUISITOS RELACIONADOS AR-10, AR-11, AR-12, AR-14 - 40 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Gestión Cursos: Añadir/Quitar Inmersiones a Cursos. Identificador AR-14 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Los cursos pueden tener distinto número de inmersiones. El administrador podrá añadir o quitar inmersiones del curso. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Permite saber que inmersiones se realizarán en los distintos cursos y modificarlas cuando sea necesario. COMENTARIOS Los cursos pueden tener varias inmersiones asociadas. DOCUMENTOS RELACIONADOS OBJ-02 REQUISITOS RELACIONADOS AR-10, AR-11, AR-12, AR-13 - 41 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Login cómo Buceador: Usuario/Contraseña. Identificador AR-15 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoria Funcional Descripción Los buceadores podrán autenticarse al iniciar la aplicación para poder acceder al sistema como buceadores introduciendo su usuario y contraseña. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Los buceadores acceden únicamente a su perfil particular dónde podrán realizar las acciones que pueda realizar en el sistema un usuario con perfil buceador. COMENTARIOS Los buceadores deben haber sido dados de alta por un administrador que les haya proporcionado los códigos de acceso. DOCUMENTOS RELACIONADOS OBJ-10, OBJ-11 REQUISITOS RELACIONADOS - - 42 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Buscar Inmersiones. Identificador AR-16 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El buceador podrá ver todas las inmersiones disponibles en el sistema. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS A través del buscador podrá seleccionar las inmersiones que tengan las características que está buscando. COMENTARIOS DOCUMENTOS RELACIONADOS OBJ-14 REQUISITOS RELACIONADOS AR-17 - 43 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Apuntarse a Inmersiones de nivel adecuado. Identificador AR-17 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El usuario podrá apuntarse a las inmersiones que correspondan con su formación como buceador. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Tras la búsqueda de inmersiones y encontrar la adecuada el usuario se podrá apuntar a ella sólo si está es de un nivel adecuado a su formación. COMENTARIOS El botón de apuntarse sólo aparecerá cuando el usuario cumpla los requisitos necesarios para acceder a la inmersión. DOCUMENTOS RELACIONADOS OBJ-14 REQUISITOS RELACIONADOS AR-16 - 44 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Buscar Cursos. Identificador AR-18 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El buceador podrá ver todos los cursos disponibles en el sistema. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El usuario podrá encontrar los cursos que cumplan las características que está buscando. COMENTARIOS DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 45 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Apuntarse a Cursos de nivel adecuado Identificador AR-19 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El buceador podrá apuntarse a los cursos que estén adecuados a su nivel. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Sólo le aparecerán como accesibles los cursos que estén en el siguiente nivel al que poseen. COMENTARIOS DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 46 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Ver sus Inmersiones Identificador AR-20 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El usuario podrá ver todas sus inmersiones. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Un usuario podrá ver a que inmersiones está apuntado. COMENTARIOS Además podrá ver la factura de los costes de la inmersión y podrá ver el materia que ha alquilado para la inmersión. DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 47 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Seleccionar material para cada Inmersión Identificador AR-21 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El usuario podrá seleccionar el material que necesitará par a una inmersión. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El usuario podrá elegir el material que alquilará para la inmersión. COMENTARIOS DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 48 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Ver factura de cada Inmersión Identificador AR-22 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El buceador podrá ver sus facturas. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El usuario podrá visualizar la factura correspondiente a cada inmersión. COMENTARIOS Está factura aparte de incluir los costes de la inmersión también tendrá un apartado que mostrar DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 49 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Desapuntarse de una Inmersión Identificador AR-23 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción El usuario podrá desapuntarse de una Inmersión. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS Si en algún momento dado el usuario no puede participar en la inmersión se podrá desapuntar de ella sin problema. COMENTARIOS DOCUMENTOS RELACIONADOS REQUISITOS RELACIONADOS - - 50 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo REQUISITO Titulo Desapuntarse de un Curso Identificador AR-24 Fecha 01/02/2011 Versión 1.0 Prioridad Alta Estado Aceptado Categoría Funcional Descripción Un buceador, podrá en cualquier momento desapuntarse de un curso al que previamente se haya inscrito. MEDICIÓN El sistema deberá incluir está funcionalidad que se validará con su respectiva prueba funcional. BENEFICIOS El buceador si le surge algún inconveniente puede darse de baja de un curso. COMENTARIOS También ayudará al administrador a tener actualizada la gente que está apuntada a los distintos cursos y así ayudar a la planificación. DOCUMENTOS RELACIONADOS OBJ-01 REQUISITOS RELACIONADOS - - 51 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 3.3 CASOS DE USO En este apartado se identificarán todos los casos de uso correspondientes a cada actor. Primero los correspondientes a los administradores del sistema y después los correspondientes a los buceadores. Se dará una descripción detallada de cada caso de uso. 3.3.1.1 Casos de Uso Administrador - 52 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Gestión de Buceadores. Actor Primario: Administrador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Alta buceador Actores Secundarios Baja buceador Buscar buceador Modificar buceador Extensiones: - Descripcion de Datos: Usuario Nombre Apellidos Fecha Nacimiento desde/hasta DNI Título de Buceo - 53 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Gestión de Cursos. Actor Primario: Administrador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Alta curso Actores Secundarios Baja curso Buscar curso Modificar curso Extensiones: - Descripción de datos: Fecha desde/hasta Nombre Instructor Título del Curso Número de Inmersiones desde/hasta Precio desde/hasta Estado del Curso - 54 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Gestión de Inmersiones. Actor Primario: Administrador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Alta Inmersión Actores Secundarios Baja Inmersión Buscar Inmersión Modificar Inmersión Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 55 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Login cómo administrador. Actor Primario: Administrador Precondiciones: El usuario debe ser un administrador y tener los códigos Actores Secundarios correspondientes. Triggers: - Escenario primario: Acceso al sistema cómo administrador: Gestión de Buceadores Gestión de Cursos Gestión de Inmersiones Extensiones: - Descripción de datos: Usuario Administrador Contraseña Administrador - 56 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Añadir/Modificar de Cursos. Actor Primario: Administrador Precondiciones: El usuario debe estar autenticado. Actores Secundarios Debe haber al menos un Curso creado. Triggers: - Escenario primario: Cambiar información de curso Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 57 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 3.3.1.2 Casos de Uso Buceador - 58 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Login cómo Buceador. Actor Primario: Buceador Precondiciones: El usuario debe tener usuario/contraseña Triggers: - Escenario primario: Busqueda de inmersiones Actores Secundarios Mis Inmersiones Busqueda de cursos Mis cursos Extensiones: - Descripción de datos: Usuario buceador Contraseña buceador - 59 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Buscar Inmersiones. Actor Primario: Buceador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Se realiza la búsqueda de inmersiones introduciendo los Actores Secundarios parámetros deseados Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 60 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Apuntarse/Desapuntarse a Inmersiones. Actor Primario: Buceador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Pulsar sobre apuntares Actores Secundarios Pulsar sobre desapuntarse Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 61 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Buscar Cursos. Actor Primario: Buceador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Se realiza la búsqueda de cursos introduciendo los Actores Secundarios parámetros deseados Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 62 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Apuntarse/Desapuntarse a Cursos. Actor Primario: Buceador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Pulsar sobre apuntares Actores Secundarios - Pulsar sobre desapuntarse Extensiones: Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 63 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Ver mis Inmersiones. Actor Primario: Buceador Precondiciones: El usuario debe estar autenticado. Triggers: - Escenario primario: Se pulsa ver mis inmersiones y se ven la inmersiones a Actores Secundarios - las que se está apuntado. Extensiones: - Descripción de datos: Fecha desde/hasta Tipo de Inmersión Instructor Lugar Título requerido Profundidad máxima desde/hasta Duración desde/hasta Precio desde/hasta Temperatura agua desde/hasta Estado de la Inmersión - 64 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Selección de material para Inmersión. Actor Primario: Buceador Precondiciones: El usuario debe estar apuntado en la Inmersión. Triggers: - Escenario primario: Opciones de seleccionar el distinto materia disponible. Extensiones: - Descripción de datos: Material Actores Secundarios Nombre Descripción Precio - 65 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Proyecto Sistema de Gestión de un Centro de Buceo CASO DE USO Nombre: Ver Factura Inmersión. Actor Primario: Buceador Precondiciones: El usuario debe estar apuntado en la Inmersión. Triggers: - Escenario primario: Se pulsa sobre factura y se ve lo que cuesta la Actores Secundarios inmersión con el material incluido. Extensiones: - Descripción de datos: - - 66 - - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 4 ARQUITECTURA En este capítulo se detallará la arquitectura utilizada para el desarrollo del sistema DiveforLife 1.0 4.1 ARQUITECTURA WEB La arquitectura utilizada para esta aplicación es la de una aplicación Web clásica. Una aplicación Web es aquella que los usuarios pueden utilizar directamente accediendo a un servidor Web a través de Internet o de una Intranet mediante un navegador. En el siguiente diagrama se puede ver la arquitectura del sistema en 3 capas: 1. Navegador: Ya puede ser Internet Explorer, Mozilla Firefox, Opera o Google Chrome. Desde aquí se realizan las peticiones y se reciben las respuestas a través de HTTP. 2. Servidor Web: En este caso se utiliza Tomcat, aquí es dónde se encuentra toda la lógica de negocio, las clases Java, las JSPs y los Servlets implementados. Aquí es dónde se procesan las peticiones y se generan las respuestas que se deben devolver a través de HTTP al navegador. 3. Base de Datos: En este caso la base de datos utilizada ha sido MySQL pero debido a la utilización de JDBC, se podría cambiar sin demasiadas complicaciones por SQL Server o cualquier otra base de datos relacional del mercado. - 67 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO HTTP Petición JSP JDBC Clases Java Navegador Servidor BBDD MySQL Servlet Respuesta Servidor Web Tomcat BBDD - 68 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4.2 HERRAMIENTAS DE SOFTWARE Y TECNOLOGÍAS UTILIZADAS A continuación se detalla las diferentes tecnologías y herramientas software utilizadas para el desarrollo de la aplicación Web. El lenguaje de programación elegido para el desarrollo ha sido Java 1.6 en un entorno de desarrollo NetBeans. Se utilizará la base de datos MySQL. 4.2.1 JAVA 1.6 / JAVA SE 6 El lenguaje de programación utilizado en el desarrollo es Java versión 1.6 también conocido como Java SE 6, y es la última Standard Edition del lenguaje. Dentro de esta versión de Java se destacarán las 4 tecnologías esenciales para llevar el desarrollo Web a cabo. Se utilizarán Java Server Pages (JSP), JavaServer Pages Standard Tag Library (JSTL), Java Database connectivity (JDBC) junto con Servlets para crear la aplicación Web. 4.2.1.1 Servlets Los servlets, son objetos que corren dentro del contexto de un contenedor de servlets (ej: Tomcat) y extienden su funcionalidad. La palabra servlet deriva de otra anterior, applet, que se refería a pequeños programas que se ejecutan en el contexto de un navegador web. Por contraposición, un servlet es un programa que se ejecuta en un servidor. El uso más común de los servlets es generar páginas web de forma dinámica a partir de los parámetros de la petición que envíe el navegador web. - 69 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4.2.1.2 JSP JSP puede considerarse como una manera alternativa, y simplificada, de construir servlets. Es por ello que una página JSP puede hacer todo lo que un servlet puede hacer, y viceversa. Cada versión de la especificación de JSP está fuertemente vinculada a una versión en particular de la especificación de servlets. El funcionamiento general de la tecnología JSP es que el Servidor de Aplicaciones interpreta el código contenido en la página JSP para construir el código Java del servlet a generar. Este servlet será el que genere el documento (típicamente HTML) que se presentará en la pantalla del Navegador del usuario. 4.2.1.3 JSTL La tecnología JavaServer Pages Standard Tag Library (JSTL) es un componente de Java. Extiende las ya conocidas JavaServer Pages (JSP) proporcionando cuatro bibliotecas de etiquetas (Tag Libraries) con utilidades ampliamente utilizadas en el desarrollo de páginas web dinámicas. Estas bibliotecas de etiquetas extienden de la especificación de JSP (la cual a su vez extiende de la especificación de Servlet). Su API permite además desarrollar bibliotecas propias de etiquetas. Las bibliotecas englobadas en JSTL son: - core, iteraciones, condicionales, manipulación de URL y otras funciones generales. - xml, para la manipulación de XML y para XML-Transformation. - sql, para gestionar conexiones a bases de datos. - fmt, para la internacionalización y formateo de las cadenas de caracteres como cifras. - 70 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4.2.1.4 JDBC Java Database Connectivity, más conocida por sus siglas JDBC, es una API que permite la ejecución de operaciones sobre bases de datos desde el lenguaje de programación Java, independientemente del sistema operativo donde se ejecute o de la base de datos a la cual se accede, utilizando el dialecto SQL del modelo de base de datos que se utilice. El API JDBC se presenta como una colección de interfaces Java y métodos de gestión de manejadores de conexión hacia cada modelo específico de base de datos. Un manejador de conexiones hacia un modelo de base de datos en particular es un conjunto de clases que implementan las interfaces Java y que utilizan los métodos de registro para declarar los tipos de localizadores a base de datos (URL) que pueden manejar. Para utilizar una base de datos particular, el usuario ejecuta su programa junto con la biblioteca de conexión apropiada al modelo de su base de datos, y accede a ella estableciendo una conexión, para ello provee el localizador a la base de datos y los parámetros de conexión específicos. A partir de allí puede realizar con cualquier tipo de tareas con la base de datos a las que tenga permiso: consulta, actualización, creación, modificación y borrado de tablas, ejecución de procedimientos almacenados en la base de datos, etc. 4.2.2 NETBEANS NetBeans es el entorno de desarrollo que se utilizará en este proyecto. Está diseñado principalmente para el lenguaje de programación Java. Existe además un número importante de módulos para extender el NetBeans IDE. NetBeans IDE es un producto libre y gratuito sin restricciones de uso. NetBeans es un proyecto de código abierto de gran éxito con una gran base de usuarios, una comunidad en constante crecimiento, y con cerca de 100 socios en todo el mundo. Sun MicroSystems fundó el proyecto de código abierto NetBeans en junio de 2000 y continúa siendo el patrocinador principal de los proyectos. - 71 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO La plataforma NetBeans permite que las aplicaciones sean desarrolladas a partir de un conjunto de componentes de software llamados módulos. Un módulo es un archivo Java que contiene clases de java escritas para interactuar con las APIs de NetBeans y un archivo especial (manifest file) que lo identifica como módulo. Las aplicaciones construidas a partir de módulos pueden ser extendidas agregándole nuevos módulos. Debido a que los módulos pueden ser desarrollados independientemente, las aplicaciones basadas en la plataforma NetBeans pueden ser extendidas fácilmente por otros desarrolladores de software. 4.2.3 TOMCAT El servidor web utilizado es Tomcat, ya que es lo suficientemente simple y a su vez lo suficientemente potente cómo para utilizar con una aplicación simple de estas características que no necesita un alto rendimiento. Tomcat es un servidor web con soporte de servlets y JSPs. Tomcat no es un servidor de aplicaciones, como JBoss o JOnAS. Incluye el compilador Jasper, que compila JSPs convirtiéndolas en servlets. El motor de servlets de Tomcat a menudo se presenta en combinación con el servidor web Apache. Tomcat puede funcionar como servidor web por sí mismo. En sus inicios existió la percepción de que el uso de Tomcat de forma autónoma era sólo recomendable para entornos de desarrollo y entornos con requisitos mínimos de velocidad y gestión de transacciones. Hoy en día ya no existe esa percepción y Tomcat es usado como servidor web autónomo en entornos con alto nivel de tráfico y alta disponibilidad. Dado que Tomcat fue escrito en Java, funciona en cualquier sistema operativo que disponga de la máquina virtual Java. (También se puede usar con xampp) - 72 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4.2.4 MYSQL MySQL es el gestor de bases de datos elegido para el desarrollo del sistema DiveforLife 1.0. MySQL es un sistema de gestión de bases de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones.1 MySQL AB —desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual. Las razónes por las cuales se ha elegido MySQL son las siguientes: - El sistema de gestión de BBDD es gratuito para el desarrollo de aplicaciones pequeñas. - Proporciona una alta seguridad. - Gestiona muy bien la concurrencia entre varios usuarios. - Se combina muy bien con Java al ser los 2 de ORACLE. - Hay una gran comunidad que utiliza MySQL por lo tanto existe un gran soporte online tanto oficial como en foros de soporte. - 73 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 5 DISEÑO 5.1 ESTRUCTURA DE PAQUETES Las clases Java de la aplicación estarán separadas en 4 paquetes principales: Clases DAO, Entidades, Servlets y Útil. 5.1.1 CLASES DAO Las clases DAO se ocupan de todo el acceso a la Base de Datos por lo tanto habrá una clase DAO para cada una de la entidades principales. - 74 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.1.2 ENTIDADES Las entidades principales del sistema serán definidas dentro del paquete Entidades. 5.1.3 SERVLETS Los Servlets están separados por funcionalidad del sistema, en cada uno de ellos está implementada la lógica para cada una de las funcionalidades del sistema. De esta manera estará todo muy estructurado y a la hora de realizar cambios en las pruebas será fácil encontrar dónde se encuentran los fallos. - 75 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.1.4 UTIL El resto de clases, las que se utilizarán para validar detalles de la Aplicación estarán recogidas en este último paquete. - 76 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.1.5 JSPS Finalmente están las Java Server Pages que se encuentran en la carpeta de Web fuera de los paquetes. - 77 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2 MODELO LÓGICO Y FÍSICO DE BASES DE DATOS En este apartado se explicarán las principales entidades del sistema y se estudiará en detalle las tablas que contendrán la información del sistema, el cometido de cada una de ellas y de todos los atributos que las componen. Hay 3 entidades fundamentales en este sistema que son las que se gestionan: Buceadores, Cursos e Inmersiones. Además estas entidades están estrechamente relacionadas entre ellas. En un segundo plano se generarán otras tablas que ayudan a que la gestión de Buceadores, Cursos e Inmersiones se realice correctamente. Las tablas utilizadas son las siguientes: - Buceadores. - Inmersiones. - Cursos. - Cuentas. - Títulos. - Materiales. - Inmersiones_Buceadores_Materiales. - Cursos_Buceadores_Materiales. - Cursos_Buceadores. - Cursos_Inmersiones. - Inmersiones_Buceadores. - 78 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.1 BUCEADORES Los Buceadores son todos aquellos practicantes del buceo que han tomado o tomarán parte en alguna actividad del centro, ya sean cursos o inmersiones. Son dados de alta en el sistema la primera vez que se acercan al centro de buceo. El administrador toma sus datos y les crea una cuenta de usuario. También se les proporcionará en ese momento la información de autenticación que le permitirá al buceador acceder al sistema con su usuario y contraseña para realizar sus reservas en cursos e inmersiones Tabla BUCEADORES Descripción Tabla: Tabla que almacena toda la información correspondiente a un buceador del centro. Atributo: IdBuceador Descripción: Cada buceador inscrito en el centro tendrá un identificador Tipo: INT(11) numérico único. Atributo: Nombre Descripción: El nombre de pila del buceador. Atributo: Apellidos Descripción: Los apellidos del buceador. Atributo: FechaNacimiento Descripción: La fecha de nacimiento del buceador, importante ya que Tipo: Tipo: Tipo: VARCHAR(45) VARCHAR(90) DATETIME hay validación de edad. Atributo: DNI Descripción: El documento nacional de identidad del individuo, es de Tipo: VARCHAR(10) tipo VARCHAR ya que debe incluir la letra. - 79 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Atributo: IdTitulo Descripción: El título de buceo más avanzado que posee el buceador. Tipo: INT(11) Solo se le permitirá apuntarse a cursos e inmersiones de su nivel o superiores. Atributo: IdCuenta Descripción: El identificador de la cuenta que se le asocia al buceador. Tipo: INT(11) La cuenta que incluye los datos de acceso al sistema, usuario y contraseña. - 80 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.2 INMERSIONES La actividad esencial del deporte del buceo son las inmersiones. Las inmersiones generalmente se practican en grupo y normalmente son lideradas por el buceador más experimentado o instructor. Las inmersiones serán dadas de alta por los administradores y instructores del centro de buceo ya que son ellos los que las organizan. A estas inmersiones se pueden apuntar los buceadores que tengan el titulo adecuado de forma individual o porque estén incluidas en uno de los cursos. Las inmersiones pueden no estar asociadas a ningún curso Tabla INMERSIONES Descripción Tabla: Tabla que almacena toda la información correspondiente a las inmersiones del centro. Atributo: IdInmersion Descripción: Cada inmersión creada en el centro tendrá un identificador Tipo: INT(11) numérico único. Atributo: Fecha Descripción: Fecha en la que se realizará o se haya realizado la Tipo: DATETIME inmersión. Atributo: Tipo Descripción: Tipo de inmersión que se realizará. Atributo: IdInstructor Descripción: Identificador del instructor de buceo que será responsable Tipo: Tipo: VARCHAR(45) INT(11) de la inmersión. Atributo: Lugar Descripción: Sitio exacto donde se realizará la inmersión. Tipo: - 81 - VARCHAR(200) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Atributo: IdTituloRequerido Descripción: El título de buceo mínimo requerido para participar en la Tipo: INT(11) inmersión. Si el buceador no lo tiene, no podrá apuntarse. Atributo: ProfundidadMaxima Descripción: La profundidad máxima en metro a la que se sumergirán Tipo: INT(11) los buceadores durante el transcurso de la inmersión. Atributo: Duración Descripción: La duración total prevista de la inmersión. Atributo: Precio Descripción: El precio base que cuesta la inmersión. Atributo: TemperaturaAgua Descripción: La temperatura media en ºC a la que estará el agua del Tipo: Tipo: Tipo: INT(11) DECIMAL(10,2) INT(11) lugar de la inmersión. Atributo: Estado Descripción: El estado de la inmersión, si ha sido realizada o no. Tipo: - 82 - VARCHAR(45) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.3 CURSOS Sin los títulos correspondientes oficiales no está permitida la práctica del buceo por eso una de las principales tareas de un centro de buceo es la de impartir cursos que permitan a los clientes adquirir las licencias necesarias para realizar inmersiones. Los cursos te enseñan todo lo necesario para obtener la certificación necesaria y se imparten a base de clases teórica e inmersiones. En un curso se pueden realizar varias inmersiones, las que sean necesarias para el curso en particular. Para realizar un curso siempre debes tener el curso del nivel anterior, al menos, claro, que sea el curso de Iniciación al cual pueden apuntarse los buceadores noveles. Tabla CURSOS Descripción Tabla: Tabla que almacena toda la información correspondiente a los cursos que se impartirán o se hayan impartido en el centro. Atributo: IdCurso Descripción: Cada curso del centro tendrá un identificador numérico Tipo: INT(11) único. Atributo: Nombre Descripción: El nombre del curso creado. Atributo: IdInstructor Descripción: El identificador del Instructor que impartirá el curso. Atributo: FechaInicio Descripción: Indica la fecha en la que se comenzará a impartir el curso. Atributo: FechaFin Tipo: Tipo: Tipo: Tipo: - 83 - VARCHAR(100) INT(11) DATETIME DATETIME UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Descripción: Indica la fecha en la que finalizará el curso. Atributo: IdTituloObtenido Descripción: Identificador del título que se obtiene al realizar este curso. Atributo: NumeroInmersiones Descripción: Indica el número de inmersiones que se realizarán durante Tipo: Tipo: INT(11) INT(11) el curso. Atributo: Precio Descripción: Indica el precio base en € del curso completo. Atributo: Estado Descripción: Indica el estado del curso si se ha realizado o no. Tipo: Tipo: - 84 - DECIMAL(10,2) VARCHAR(45) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4 OTRAS TABLAS 5.2.4.1 Cuentas Las cuentas están asociadas a los buceadores y permiten almacenar el usuario, la contraseña y si el buceador es administrador del centro o no. Tabla CUENTAS Descripción Tabla: Tabla que almacena la información correspondiente a las distintas cuentas de usuario. Atributo: IdCuenta Descripción: Cada cuenta creada en el sistema tendrá un identificador Tipo: INT(11) único de tipo entero. Atributo: Usuario Descripción: El nombre de usuario que utilizará para autenticarse en el Tipo: VARCHAR(45) sistema. Atributo: Contraseña Descripción: Contiene la contraseña correspondiente al usuario que Tipo: VARCHAR(45) servirá para autenticarse en el sistema. Atributo: Administrador Descripción: Este número entero permitirá distinguir las cuentas de Tipo: TINYINT(1) administrador con las de usuario común buceador. - 85 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4.2 Títulos Los títulos indican el nivel del buceador, el nivel que se obtiene en los cursos y el nivel requerido para las inmersiones. Tabla CUENTAS Descripción Tabla: Tabla que almacena la información correspondiente a los títulos existentes con su correspondiente equivalencia PADI/FEDAS. Atributo: IdTitulo Descripción: Un identificador numérico único para cada título distinto. Atributo: Nivel Descripción: Un número entero que hace referencia al nivel de titulo. Tipo: Tipo: INT(11) INT(11) Unifica de esta manera niveles equivalentes PADI/FEDAS. Atributo: NombrePADI Descripción: Nombre del nivel equivalente del título según PADI. Atributo: NombreFEDAS Descripción: Nombre del nivel equivalente del título según FEDAS. Tipo: - 86 - Tipo: VARCHAR(45) VARCHAR(45) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4.3 Materiales Cuando un buceador se apunta a una inmersión en cada una de ellas puede elegir que material alquilar. Hay buceadores que ya tienen la mayoría de material propio y por lo tanto no necesitan seleccionar material. Tabla Materiales Descripción Tabla: Tabla que almacena los distintos tipos de material disponibles. Atributo: IdMaterial Descripción: Un identificador numérico único para cada tipo de material Tipo: INT(11) de buceo. Atributo: Nombre Descripción: El nombre de la pieza de material. Atributo: Descripción Descripción: Permite una breve descripción del material de buceo. Atributo: Precio Descripción: El precio en € que cuesta alquilar ese material. Tipo: Tipo: Tipo: - 87 - VARCHAR(45) VARCHAR(500) DECIMAL(10,2) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4.4 Inmersiones_Buceadores_Materiales Esta tabla relaciona a los buceadores, materiales e inmersiones para poder saber que material ha alquilado cada buceador para cada inmersión. Tabla INMERSIONES_BUCEADORES_MATERIALES Descripción Tabla: Tabla que relaciona los buceadores con inmersiones y materiales. Atributo: IdInmersión Descripción: Identificador numérico de la Inmersión. Atributo: IdBuceador Descripción: Identificador numérico del Buceador. Atributo: IdMaterial Descripción: Identificador numérico del Material. Tipo: Tipo: Tipo: INT(11) INT(11) INT(11) 5.2.4.5 Cursos_Buceadores_Materiales Esta tabla relaciona a los buceadores, materiales y los cursos para poder saber que material ha alquilado cada buceador para cada curso. Tabla INMERSIONES_BUCEADORES_MATERIALES Descripción Tabla: Relaciona buceadores con cursos y materiales. Atributo: IdCurso Descripción: Identificador numérico del Curso. Atributo: IdBuceador Descripción: Identificador numérico del Buceador. Atributo: IdMaterial Descripción: Identificador numérico del Material. Tipo: Tipo: Tipo: - 88 - INT(11) INT(11) INT(11) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4.6 Cursos_Buceadores Esta tabla relaciona los buceadores que están inscritos a los distintos cursos. Tabla CURSOS_BUCEADORES Descripción Tabla: Tabla que relaciona los cursos con los buceadores para saber en qué cursos está apuntado cada buceador Atributo: IdCurso Descripción: Identificador numérico del curso Atributo: IdBuceador Descripción: Identificador numérico del buceador Tipo: Tipo: - 89 - INT(11) INT(11) UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.4.7 Cursos_Inmersiones Esta tabla relaciona las inmersiones que también forman parte de un curso. Tabla CURSOS_INMERSIONES Descripción Tabla: Tabla que relaciona los cursos con las inmersiones para saber que inmersiones forman parte de un curso. Atributo: IdCurso Descripción: Identificador numérico del curso. Atributo: IdInmersion Descripción: Identificador numérico de la inmersión. Tipo: Tipo: INT(11) INT(11) 5.2.4.8 Inmersiones_Buceadores Esta tabla relaciona los buceadores inscritos en las distintas inmersiones. Tabla INMERSIONES_BUCEADORES Descripción Tabla: Tabla que relaciona las inmersiones con los buceadores para saber a qué inmersiones está apuntado cada buceador. Atributo: IdInmersion Descripción: Identificador numérico de la inmersión. Atributo: IdBuceador Descripción: Identificador numérico del buceador. Atributo: FechaInscripcion Descripción: Fecha en la que se apuntan a la inmersión. Tipo: Tipo: - 90 - Tipo: INT(11) INT(11) DATETIME UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.2.5 DISEÑO FINAL DE LA BBDD Así es el diseño final de la BBDD con todas la entidades y relaciones correspondientes. - 91 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5.3 DISEÑO DE INTERFAZ Al ser una aplicación que deberá correr en cualquier PC con un explorador de Internet se ha decidido mantener la apariencia lo más simple y ligera. De esta manera se conseguirá que vaya lo más rápido posible y hasta con las conexiones más lentas la aplicación siga teniendo un tiempo de carga de las páginas bastante reducido Para mostrar el usuario que está navegando en su sesión y con su perfil en todas las pantallas se podrás ver el nombre del usuario al que corresponde la sesión. Se utilizarán un fondo de tonos azules claros para mejor visibilidad y también por inspiración de la temática de la aplicación - 92 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 6 PRUEBAS Se realizarán pruebas unitarias al terminar cada funcionalidad para comprobar el correcto funcionamiento de cada una de ellas. ID PRUEBA UNITARIA PR-01 Login como Administrador: Usuario/Contraseña. ✓ PR-02 Gestión Buceadores: Alta Buceadores. ✓ PR-03 Gestión Buceadores: Baja Buceadores. ✓ PR-04 Gestión Buceadores: Búsqueda Buceadores. ✓ PR-05 Gestión Buceadores: Modificar Buceadores. ✓ PR-06 Gestión Inmersiones: Alta Inmersión. ✓ PR-07 Gestión Inmersiones: Baja Inmersión. ✓ PR-08 Gestión Inmersiones: Búsqueda Inmersión. ✓ PR-09 Gestión Inmersiones: Modificar Inmersión. ✓ PR-10 Gestión Cursos: Alta Cursos. ✓ - 93 - CHECK UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO PR-11 Gestión Cursos: Baja Cursos. ✓ PR-12 Gestión Cursos: Búsqueda de Cursos. ✓ PR-13 Gestión Cursos: Modificar Cursos. ✓ PR-14 Gestión Cursos: Añadir/Quitar Inmersiones a Cursos. ✓ PR-15 Login cómo Buceador: Usuario/Contraseña. ✓ PR-16 Buscar Inmersiones. ✓ PR-17 Apuntarse a Inmersiones de nivel adecuado. ✓ AR-18 Buscar Cursos. ✓ AR-19 Apuntarse a Cursos de nivel adecuado. ✓ AR-20 Ver sus Inmersiones. ✓ AR-21 Seleccionar material para cada Inmersión. ✓ AR-22 Ver factura de cada Inmersión. ✓ AR-23 Desapuntarse de una Inmersión. ✓ AR-24 Desapuntarse de un Curso. - 94 - ✓ UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 7 IMPLANTACIÓN Las siguientes instrucciones son las necesarias para poder instalar el sistema en su totalidad. Al empezar se debe tener instalado en el sistema las siguientes herramientas a ser posible en las versiones indicadas. 7.1 SOFTWARE A INSTALAR 7.1.1 JAVA SE 6 UPDATE 25 - JDK Windows x86 - jdk-6u25-windows-i586.exe - http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25download-346242.html 7.1.1.1 Documentación - jdk-6u25-fcs-bin-b04-apidocs-04_Apr_2011.zip - http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u25-docdownload-355137.html 7.1.2 NETBEANS IDE 7.0 Y TOMCAT 7.0.11 - English, Windows, Java EE. - No instalar Glassfish ni JUnit. - netbeans-7.0-ml-javaee-windows.exe - 95 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO - http://netbeans.org/downloads/index.html 7.1.3 MYSQL 7.1.3.1 MySQL Community Server 5.5.11 - Windows (x86, 32-bit), MSI Installer - Instalación Completa - http://www.mysql.com/downloads/mysql/ - http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.11win32.msi/from/http://mirrors.ircam.fr/pub/mysql/mysql-5.5.11-win32.msi 7.1.3.2 MySQL Workbench (GUI Tool) 5.2.33b - Windows (x86, 32-bit), MSI Installer - Instalación Completa - http://www.mysql.com/downloads/workbench/ - http://dev.mysql.com/get/Downloads/MySQLGUITools/mysqlworkbench-gpl-5.2.33bwin32.msi/from/http://mirrors.ircam.fr/pub/mysql/mysql-workbench-gpl5.2.33b-win32.msi 7.1.3.3 MySQL Connectors Connector/J 5.1.15 - Platform Independent (Architecture Independent), ZIP Archive - http://www.mysql.com/downloads/connector/j/ - http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java5.1.15.zip/from/http://mirrors.ircam.fr/pub/mysql/mysql-connector-java5.1.15.zip - 96 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 7.2 CONFIGURACIÓN DE BBDD MYSQL Para la configuración base de datos MySQL Community Server 5.5.11 - Al instalar mysql-5.5.11-win32.msi, al finalizar la opción permite seleccionar "Launch the MySQL Instance Configuration Wizard", seleccionarlo y "Finish". - Seleccionar "Standard Configuration". - Dejar la configuración del servicio de Windows por defecto. - Deseleccionar "Modify Security Settings". - "Execute". - 97 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 8 CONCLUSIONES - Con un deporte tan a la moda cómo es el buceo submarino, practicado cada día por más y más personas, la apertura y rentabilidad de los centros de buceo en zona costera está creciendo. - La obligatoriedad de realizar cursos oficiales para la obtención de los títulos que permiten practicar este deporte hace que el negocio de abrir un centro de buceo sea factible. - El hecho que el 90% de la población utiliza Internet a diario en España, y sumándole que la gente que practica el buceo suele ser bastante joven hacen que si se implanta este sistema en los centros de buceo de España la mayoría de reservas llegarían a través de internet, aumentaría por lo tanto el volumen de actividad de los centros de buceo que utilicen el sistema. - La simplicidad del interfaz de usuario de la aplicación permite que sea accesible a través de pantallas pequeñas como la del navegador de un Smartphone ya que no hace falta ver con demasiado detalle. - El hecho de que la aplicación no necesite muchos recursos permite a cualquier persona con acceso a internet, por muy lenta que sea la conexión, realizar reservas. - 98 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capítulo 9 BIBLIOGRAFÍA 9.1 LIBROS [CONT09] Contreras Bárcena, David. “Apuntes de Ingeniería del Software II de Ingeniería Superior en Informática”. Universidad Pontificia Comillas de Madrid. Madrid, 2009. [MUÑO10] Muñoz García, Manuel. “Apuntes de Gestión de Proyectos Informáticos de Ingeniería Superior en Informática”. Universidad Pontificia Comillas de Madrid. Madrid, 2010. [BARR01] Jesús Barranco de Areba, “Metodología del análisis estructurado de sistemas”, Publicaciones de la Universidad Pontificia Comillas, Madrid 2001 9.2 PÁGINAS WEB [WWW01]http://www.viajoven.com/viajoven/submarinismo/titulaciones_buceo/p adi_o_estrellas.php [WWW02]http://www.ehuif-fvas.org/buceo_autonomo/cursos_titulos.htm [WWW03]http://www.bajoelagua.com/centros-buceo/ - 99 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO [WWW04]http://es.wikipedia.org/wiki/Aplicaci%C3%B3n_web [WWW05]http://es.wikipedia.org/wiki/JavaServer_Pages_Standard_Tag_Library [WWW06]http://es.wikipedia.org/wiki/NetBeans [WWW07]http://es.wikipedia.org/wiki/Servlets [WWW08]http://es.wikipedia.org/wiki/JavaServer_Pages [WWW09]http://es.wikipedia.org/wiki/JDBC [WWW10]http://www.divingcenter.com.ar/ [WWW11]http://www.divedivecompany.com/ - 100 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO ANEXO A: PLANIFICACIÓN Y ESTUDIO ECONÓMICO - 101 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capitulo 1: Planificación El proyecto ha sido planificado de la siguiente manera en sus principales fases: 1. Lanzamiento del Proyecto: Definir el problema a solucionar y los principales objetivos. 10 días. 04/10/2010-15/10/10 2. Análisis de Requisitos: Detectar cuales son los requisitos principales del proyecto y definir los casos de uso para cada usuario. 20 días. 18/10/10-12/11/10 3. Diseño: Realizar el Diseño de la aplicación acorde con los requisitos definidos. 20 días. 15/11/10-10/12/10 4. Programación: Realizar el Desarrollo del Sistema de Gestión. 75 días. 13/12/10-25/03/11 5. Pruebas: Realizar las pruebas unitarias del sistema. 5 días. 28/03/11-01/04/11 - 102 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 6. Documentación: Redactar la Documentación del Proyecto. 79 días. 04/04/11-21/07/11 7. Cierre del Proyecto: Realizar cambios y correcciones 28 días. 25/07/11-31/08/11 Y cómo se puede ver en el diagrama de Gantt la planificación quedará distribuida de la siguiente manera: - 103 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capitulo 2: Estudio Económico COSTE DE MANO DE OBRA A continuación se estima el coste total del proyecto. Se asumen 3 roles principales que participan en el desarrollo: Jefe de Proyecto, Analista y Programador. A continuación se puede ver cuantas horas trabajará cada rol en el proyecto. ROL Horas Totales Jefe de Proyecto 50 horas Analista 150 horas Programador 200 horas TOTAL 400 horas Salario de los distintos roles que participarán en el proyecto: ROL Horas Totales Jefe de Proyecto 60 €/hora Analista 40 €/hora Programador 25 €/hora - 104 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Finalmente se calcula el coste total de la mano de obra del proyecto: ROL Horas Totales Salario Total Jefe de Proyecto 50 horas 60 €/hora 3000 € Analista 150 horas 40 €/hora 6000 € Programador 200 horas 25 €/hora 5000 € TOTAL 400 horas - 14000 € La mano de obra del proyecto cuesta un total estimado de 14000€. - 105 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO COSTE DE MATERIAL (HARDWARE & SOFTWARE) A continuación se estimará el coste del hardware y software utilizado para el desarrollo, que es el mismo en el que se instalará el sistema. Como todo el SW utilizado es gratuito solo se gastará dinero en el equipo en el que se instalará el sistema. ITEM Precio PC Dell Inspiron 15’ 950 € Windows Vista 0€ MySQL 0€ Java 0€ Apache Tomcat 0€ TOTAL 950€ El coste total de material HW y SW es de 950€. COSTE TOTAL PROYECTO El coste total del proyecto entonces es de 14000€ + 950€ = 14950 € Si se tiene en cuenta que aumentará el volumen de reservas al permitir que se puedan hacer online resulta un proyecto bastante asequible. - 106 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO ANEXO B: MANUAL DE USUARIO - 107 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capitulo 1: Manual de Usuario Administrador En este capítulo se encuentra el manual de instrucciones orientado al perfil de Administrador del Sistema. De forma gráfica se mostrarán los pasos a seguir para la utilización correcta de la aplicación DiveforLife 1.0. Se guiará al usuario a través de las distintas funcionalidades del sistema. 1. Se abre la aplicación en un explorador cualquiera, en este caso, Chrome. Una vez en la pantalla se debe seleccionar el perfil de Administrador. 2. Una vez en la pantalla de login como administrador se debe introducir el usuario y contraseña de administrador. 3. Se accede al menú administrador desde el que se pueden elegir las distintas funcionalidades disponibles para el administrador del sistema. Se elige una de ellas o salir del sistema - 108 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4. Se selecciona Gestión de Buceadores desde esta pantalla se puede buscar a los distintos buceadores existentes en el sistema introduciendo datos personales como el DNI. También existe la opción de realizar un alta de buceador. Al pulsar Buscar aparecen los resultados en la tabla. Desde esta tabla se puede modificar y/o borrar los perfiles que hayan salido en la búsqueda. - 109 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO En el caso que se decida dar de alta a un nuevo buceador se pulsará en el botón Alta. En la siguiente pantalla en la cual se puede crear un nuevo perfil de buceador introduciendo toda la información correspondiente al nuevo usuario. Esta es la única manera de que los buceadores obtengan acceso al sistema con su nuevo usuario y contraseña. - 110 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 5. Se selecciona Gestión de Inmersiones y se accede a la pantalla que permite realizar una búsqueda de las Inmersiones existentes en el sistema introduciendo los distintos atributos. Al igual que en la gestión de buceadores al realizar una búsqueda se pueden modificar y borrar las inmersiones que aparecen en la tabla de resultados. - 111 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Si se pulsa sobre Alta Inmersión se podrá crear una nueva Inmersión en el Sistema introduciendo todos los detalles que sean necesarios para la creación de esta actividad. - 112 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 6. Se selecciona Gestión de Cursos y se accede a la pantalla en la cual se puede, al igual que en buceadores e inmersiones buscar todos los Cursos que ya han sido dados de alta en el sistema. Una vez realizada la búsqueda se podrá ver todos los cursos existentes con los datos de la búsqueda. Cada curso resultante se podrá borrar y modificar. Pero también existe la opción de ver que Inmersiones están asociadas a este curso Como se ha visto a lo largo de este documento los Cursos incluyen una serie de inmersiones. El número de inmersiones que estén incluidas en cada Curso depende totalmente del objetivo de este y serán diseñadas por los instructores administradores del centro. - 113 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Desde la pantalla de Gestión de Inmersiones del Curso el administrador podrá añadir y quitar inmersiones de los cursos según lo desee. Le basta con pulsar el combo Añade Inmersión que le mostrará todas la inmersiones que estén disponibles para asociar al curso. Al igual que en la Gestión de Buceadores e Inmersiones, también se puede crear Cursos accediendo al formulario de Alta de Curso y rellenando los detalles imprescindibles para la creación de un curso. - 114 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Capitulo 2: Manual de Usuario Buceador 1. Se comienza en la pantalla de selección de perfil y hay que elegir acceso con perfil de Buceador. 2. Se debe introducir el usuario y la contraseña del buceador para acceder a las funcionalidades del sistema orientadas a los buceadores. 3. Una vez se haya hecho el login correctamente se accede al menú de buceadores desde el cual se puede: buscar inmersiones, ver las inmersiones reservadas, buscar cursos, ver los cursos reservados y salir al menú principal. - 115 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 4. Si se elige la opción de Busqueda de Inmersiones el usuario podrá buscar las Inmersiones disponibles en el sistema según los criterios que esté buscando. Una vez introducidos los campos deseados se obtendrá una tabla con todas las inmersiones disponibles que cumplen las características deseadas. Desde esta tabla el usuario podrá apuntar y desapuntar de las distintas inmersiones así como elegir el material que va a necesitar alquilar para cada una de ellas. Al apuntarse a una inmersión aparece la siguiente pantalla: - 116 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Si se desea alquilar material se deberá pulsar el botón de material en la inmersión correspondiente. 5. Si se elige la opción de Mis Inmersiones el buceador podrá acceder a todas la inmersiones que haya reservado. Desde la lista de inmersiones se podrá visualizar la factura correspondiente a cada inmersión de tal manera que el usuario podrá ver cuánto le costará dicha inmersión. La factura incluye el nombre del buceador cómo los detalles de la inmersión. También incluye un apartado desde el cual se puede ver el precio del material a alquilar. - 117 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO Pinchando en Materiales se podrá ver que material se ha alquilado para cada inmersión junto con los detalles de la inmersión. - 118 - UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO EN INFORMÁTICA SISTEMA DE GESTIÓN DE UN CENTRO DE BUCEO 6. Si se elige la opción Búsqueda de Cursos al igual que con las inmersiones el usuario podrá buscar los cursos disponibles y apuntarse a ellos. 7. Si se elige la opción Mis Cursos se podrá ver a que cursos está apuntado el buceador. Al elegir un curso el buceador automáticamente se apuntará a todas las inmersiones asociadas a ese curso. 8. Para salir del sistema basta con cerrar la ventana del explorador de Internet. - 119 -