programación avanzada tema: sistema de compra y reservación de

Anuncio
PROGRAMACIÓN AVANZADA
TEMA: SISTEMA DE COMPRA
Y RESERVACIÓN DE
TICKETS DE VUELOS
Datos Informativos del Componente Educativo:
UTPL-ECTS
CICLO
4
TITULACIÓN
CREDITOS
Ingeniería Sistemas
Informáticos y
Computación.
4
Datos informativos:
Autores:
Carchi Ludeña Katherine Mishell.
Arteaga Maza Sleyder Daniel.
Maurad Juela Jonathan Andres.
C.I.
1104811300
1103967715
1105060469
Docente:
Ing. Quezada Sarmiento Pablo Alejandro
Fecha:
2013-04-19
LOJA-ECUADOR
OBJETIVOS
General:
-
Desarrollar un sistema de reservaciones de vuelos que permita al usuario hacer
consultas y reservaciones de vuelos, además de poder comprar los tickets aéreos
de forma remota, sin la necesidad de recurrir a un agente de viajes.
Específicos:
-
Brindar un sistema que permita la reservación y compra de boletos de forma
eficiente y segura
-
Crear un sistema flexible a modificaciones y mejoras
-
Poner en práctica los conocimientos que día a día vamos adquiriendo dentro de la
materia en especial UML.
JUSTIFICACIÓN:
Para una agencia de viajes brindar un mejor servicio es una prioridad no solo para ellos
sino para todas las empresas de cualquier clase. Muchas de las veces a las personas les
disgustan el hecho de que un agente de viajes esté constantemente llamándolo a
ofrecerle sus ofertas turísticas.
Conforme la tecnología ha ido avanzando todas las actividades se han ido
automatizando es por ello que las empresas facilitan al usuario el acceso a su
información a través de la web.
Es necesario que las empresas de boletos aéreos brinden al usuario la facilidad de que
desde cualquier punto en el que se encuentren puedan realizar una reservación de
vuelo o comprar un boleto sin la necesidad de acudir a dicha agencia. El proceso de
pago de los boletos será también una ventaja para el usuario ya que tan solo con su
tarjeta de crédito podrá pagar los boletos antes reservados.
Si bien es cierto muchas de las reservaciones pueden ser mal logradas o realizadas con
malas intenciones por lo que deben existir políticas y un código de ética por parte de la
agencia de viajes.
Con un sistema de reservación de boletos la empresa podrá utilizar este sistema como
una herramienta para conocer cuáles han sido los destinos más solicitados, de acuerdo
a la temporada de viajes conocer cómo están los precios y sobre todo la situación de su
agencia si están siendo productivas o no.
Este sistema permite al usuario registrarse, consultar los destinos de los vuelos, las
reservaciones y el pago de cualquier tipo de boleto.
El objetivo de este sistema es cumplir con lo antes mencionado brindando al usuario
una forma ágil de reservaciones, búsquedas, etc. Y a la agencia de viajes para que
pueda optimizar su trabajo crecer y ser más competitiva.
ALCANCE
El presente proyecto está diseñado en un sistema de reservación y compra de boletos
de avión que permitan a una empresa mantener un registro de sus clientes y destinos
más solicitados.
Debido a que el programa servirá para la reservación de boletos tanto de cliente como
de los demás procesos que tiene una empresa vamos a considerar las siguientes
características:



Permitirá al usuario el ingreso de datos
Permitirá la búsqueda de datos de tickets de avión mediante el uso de una base
de datos
El programa generará una factura con los datos del cliente
Estas son las características que poseerá la aplicación. A más de ello podemos decir que
esta aplicación constara de máximo 4 interfaces en donde el usuario podrá navegar a
través de la aplicación. A continuación se realizará una breve descripción de las
interfaces que componen la aplicación:
La primera ventana que se le presentara al usuario será una ventana en donde el
usuario podrá observar una pequeña historia de la empresa y tendrá una opción en
donde se pueda registrar y acceder al siguiente módulo.
Luego de haberse logueado puede realizar las búsquedas de los boletos y destinos
disponibles, una vez seleccionado el destino podrá realizar la reservación y
confirmarla.
Para realizar el pago deberá ingresar su información personal junto con su usuario y
contraseña. Una vez confirmados los términos del contrato se habilitara la opción de
reservaciones para su posterior viaje.
LIMITACIONES
Entre las limitaciones que presentará la aplicación tenemos las siguientes:

Fallos en la base de datos

Fallos en la escritura de sentencias sql

Excepciones debido a la utilización de base de datos e interfaces graficas

No se podrá mostrar informes de ningún tipo referentes a la información que
posee la base de datos
MARCO TEÓRICO
AGENCIA DE VIAJES:
Es una empresa turística dedicada a la intermediación, organización y realización de
proyectos, planes e itinerarios, elaboración y venta de productos turísticos entre sus
clientes y determinados proveedores de viajes: como por ejemplo: transportistas
(aerolíneas, cruceros), servicio de alojamiento (hoteles) con el objetivo de poner los
bienes y servicios turísticos a disposición de quienes deseen y puedan utilizarlos.
La agencia de viajes esta encargada de informar claramente al viajero sobre las
características de los destinos, los servicios que obtendrá así como quien se los
proveerá y los viajes existente.
Se le debe ayudar al cliente en la selección del viaje más adecuado de acuerdo a sus
necesidades específicas.
Es esencial la adecuada comunicación de la agencia con el viajero, así sabrá con mayor
exactitud las necesidades y expectativas que el cliente ha puesto en el viaje.Por lo tanto
la agencia debe contar con gente profesional y experta en destinos y viajes, que tenga
una adecuada preparación cultural y técnica y además con la capacidad de poder
captar las necesidades de los clientes.
CLIENTE:
El cliente es muy importante dentro de una empresa ya que sin usuario no se produce
una actividad comercial pues se necesita una persona que compre los productos que se
están ofreciendo. Así mismo se busca satisfacer la necesidad de las personas y para la
empresa es indispensable tener una estrategia de venta, haciendo que el usuario
encuentre el producto que está buscando, obtenga un buen servicio y transforme al
usuario en CLIENTE.
Es por ello que este proyecto está destinado a ser una herramienta que aporte al
desarrollo de las actividades de la empresa. La base de nuestro programa es que la
reservación de vuelos vía online facilite y brinde mayor comodidad a los usuarios o
clientes y puedan reservar o comprar tickets de vuelo desde cualquier punto que posea
acceso a internet, evitando que los usuarios deban acudir físicamente a alguna
instalación u oficina de agencia de viajes.
LENGUAJE DE PROGRAMACIÓN JAVA
Dentro de nuestro programa se utilizará el lenguaje Java.
Java fue diseñado por James Gosling, de Sun Microsystems, en 1990, como software
para dispositivos electrónicos de consumo, como calculadoras y microondas.
Inicialmente se llamó Oak (roble en inglés), aunque tuvo que cambiar debido a que
dicho
nombre
ya
estaba
registrado
por
otra
empresa.
(http://java.ciberaula.com/articulo/que_es_java)
Java es un lenguaje moderno, de alto nivel, que recoge los elementos de programación
que típicamente se encuentran en todos los lenguajes de programación, permitiendo la
realización de programas profesionales.
Java se dice orienta a objetos pues, los objetos son los elementos básicos para modelar
los datos sobre los que trabaja un programa. es un lenguaje sencillo , o todo lo sencillo
que puede ser un lenguaje orientado a objetos, eliminando la mayor parte de los
problemas de C++. Es un lenguaje independiente de plataforma, por lo que un
programa hecho en Java se ejecutará igual en un PC con Windows que en una estación
de trabajo basada en Unix. También hay que destacar su seguridad, desarrollar
programas que accedan ilegalmente a la memoria o realizar caballos de troya es una
tarea propia de titanes.
NETBEANS
Es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje de
programación Java. Existe además un número importante de módulos para
extenderlo. 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. SunMicroSystems fundó el proyecto de código abierto NetBeans en junio de
2000 y continúa siendo el patrocinador principal de los proyectos.
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. http://es.wikipedia.org/wiki/NetBeans
BASE DE DATOS
Una base de datos o banco de datos es un conjunto de datos pertenecientes a un mismo
contexto y almacenados sistemáticamente para su posterior uso.
Componentes de una Base de Datos:

Hardware: constituido
tambores, cintas, etc.

Software: que es el DBMS o Sistema Administrador de Base de Datos.

Datos: los cuales están almacenados de acuerdo a la estructura externa y van a
ser procesados para convertirse en información.
por
dispositivo
de almacenamiento como
discos,
Conceptos Básicos de Base de datos



Archivo: son conjuntos de registros.
Registros: son conjuntos de campos.
Campos: es la mínima unidad de referencia.
http://www.monografias.com/trabajos34/base-de-datos/base-de-datos.shtml#base
XAMPP
Es un paquete formado por un servidor web Apache, una base de datos MySQL y los
intérpretes para los lenguajes PHP y Perl. Es de plataforma independiente y tiene
licencia GNU GPL.
Una de las ventajas de XAMPP es que de una forma muy sencilla y rápida te puedes
montar en tu máquina un entorno de desarrollo de cualquier aplicación web que use
PHP y base de datos. La configuración por defecto de XAMPP tiene algunas
deficiencias de seguridad por lo que no es recomendable usarla como una herramienta
para producción, sin embargo con algunas modificaciones es lo suficientemente seguro
para ser usada como servidor de sitios web en internet.
COMUNICACIÓN CON LA BASE DE DATOS
Para comunicarnos con la base de datos, primero nos conectamos con la base de datos
(como hemos explicado antes) y después crearemos un objeto Statement con el que
realizaremos las consultas a la base de datos. Para realizar una consulta podemos usar,
alguno de los siguientes métodos: 1.ExecuteUpdate(sentenciaSQL); : Sera usada para
los casos en los que usemos instrucciones SQL de manipulación de datos tales como
INSERT, DELETE o UPDATE. 2.ExecuteQuery(sentenciaSQL); : Sera usada para los
casos en los que usemos instrucciones SQL de tipo SELECT. Para este último caso
deberemos usar una variable de tipo ResultSet o ResultSetMetaData para almacenar
los valores obtenidos con la consulta.
CREAR UNA BDD
En el apartado Crear nueva....
Ingrese en nombre de su BDD y presiones
Crear
CREAR TABLAS
Puede hacerlo inmediatamente creada la BDD o encualquiera desde Estructura o del
SQL.
Ingrese el nombre de la tabla y la cantidad decampos que ud. cree necesitará.
Crear Tabla
PANTALLA PARA LA CREACIÓN DE CAMPOS Y DEFINICIÓN DE TIPOS.
ENFOQUES DEL CONTROL DE EXCEPCIONES
Siempre se deben crear controladores de excepción para responder a cualquier
circunstancia excepcional, es decir, no prevista en la ejecución de un programa.
El enfoque más práctico para detectar excepciones de base de datos es probar la
aplicación en los diferentes escenarios de excepción. Determinar las excepciones
posibles que pueden producirse para una operación del código pertinente y provocar
su aparición. Después, se debe examinar los resultados del seguimiento para ver qué
excepción se inicia, o examinar la información del error devuelto en el depurador. Esto
permite saber qué códigos devueltos se obtendrán para los escenarios de excepción
utilizados.
EXCEPCIONES EN LA BASE DE DATOS
EN el paquete java.sql Se encuentra la clase Sqlexception Que captura las excepciones
ocurridas en el manejo de la base de datos. Su uso no difiere del resto de excepciones,
pero incorpora nuevos métodos interesantes:
Getsqlstate:. Describe el error según las convenciones xopen.
Getmessage. El método típico de excepciones, salvo que éste recoge el texto que envía
el controlador jdbc según lo informado por el gestor de bases de datos, lo que le hace
muy efectivo
getErrorCode. Devuelve el código de error ocurrido (según lo informado por el gestor
de la base de datos)
getNextException. Que permite ver la siguiente excepción ocurrida, ya que a veces
ocurren
varias
a
la
vez
(especialmente
en
transacciones
y
operacionescomplejas).Ejemplo:
try{
//instrucciones de manejo de la base de datos
}catch(
SQLException
sqle
){while(e!=null){
System.err.println("Estado:"+e.getSQLState());System.err.println("Código:
"+e.getErrorCode());System.err.println("Mensaje:
"+e.getMessage());e.getNextException();}}
SQLWarning
Otras veces, ocurre que la base de datos provoca excepciones, sino advertencias(
warnings
)
Los objetos que las provocan (sobre todo los ResultSet) las van almacenando en
objetos de tipo SQLWarning. Para ver los errores basta con llamar repetidamente al
método getSQLWarning. En cada llamada obtendremos un nuevo objeto SQLWarning
hasta que, finalmente no haya más (devolverá entonces el valor null).Los métodos que
permiten observar el contenido de la advertencia son los mismos que los de la clase
SQLException, ya que esta clase es heredera suya. Añade el método getNextWarning
que funciona de forma similar a getNextException, pero que en esta clase no se suele
utilizar ya que las sucesivas llamadas al método getSQLWarnings provocan el mismo
resultado. El método clearWarnings de la clase ResultSet permite borrar las
advertencias almacenadas hasta ese momento.
INTERFAZ GRAFICA EN JAVA
La interfaz de usuario es la parte del programa que permite al usuario interaccionar
con él. La API de Java proporciona una biblioteca de clases para el desarrollo de
Interfaces gráficas de usuario (en realidad son dos). La biblioteca proporciona un
conjunto de herramientas para la construcción de interfaces gráficas que tienen una
apariencia y se comportan de forma semejante en todas las plataformas en las que se
ejecuten. La estructura básica de la biblioteca gira en torno a componentes y
contenedores. Los contenedores contienen componentes y son componentes a su vez,
de forma que los eventos pueden tratarse tanto en contenedores como en
componentes. La API está constituida por clases, interfaces y derivaciones. AWT y
Swing.
COMPONENTES DE AWT
SWING
Paquete de Java para la generación del GUI en aplicaciones reales de gran tamaño.
Disponible como paquete externo en Java 1.1 e integrado desde Java 1.2. Es una de las
API de JFC (Java FoundationClasses): AWT, Java 2D, Accessibility, Drag and Drop,
Swing, ETC. Escrito totalmente en Java. No reemplaza a AWT. Se apoya sobre AWT y
añade JComponents. Utiliza el modelo de eventos de Java 1.1. Elección entre
diferentes aspectos (look &feel). Arquitectura Model-View-Controller (MVC). Nuevos
componentes (árboles, tablas, frames internos, iconos, bordes, tooltips, beans,
etcétera).
JERARQUIA DE CLASES
CONTENEDORES
Contenedores de alto nivel:
JFrame: Habitualmente la clase JFrame se emplea para crear la ventana principal de
una aplicación en Swing.
JDialog: Ventanas de interacción con el usuario.
Contenedores intermedios:
JPanel: Agrupa a otros componentes.
JScrollPanel: Incluye barras de desplazamiento.
ESQUEMA DE APLICACIÓN EN SWING
importjavax.swing.*;
public class Gui00 extends JFrame {
// Constantes y componentes (objetos)
public Gui00(){
super("Ejemplo 00");
// Configurar Componentes ;
// Configurar Manejadores Eventos ;
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
} // Terminar la aplicación al cerrar la ventana.
public static void main(String args[]){
Gui00 aplicacion = new Gui00();
}
}
INTERACCIÓN CON EL USUARIO
Al interactuar con la aplicación, el usuario:
Acciona componentes (ActionEvent).
El usuario pulsa un botón.
El usuario termina de introducir un texto en un campo y presiona Intro.
El usuario selecciona un elemento de una lista pulsando el preferido (o de un menú).
Pulsa o suelta botones del ratón (MouseEvent).
Minimiza, cierra o manipula una ventana (WindowEvent).
Escribe con el teclado (KeyEvent).
Descubre porciones de ventanas (PaintEvent).
Cuando el usuario de un programa o applet mueve el ratón, presiona un pulsador o
pulsa una tecla, genera un evento (actionEvent).
Los eventos son objetos de ciertas clases. Normalmente un objeto de alguna subclase
de EventObject que indica:
El elemento que accionó el usuario.
La identificación del evento que indica la naturaleza del evento.
La posición del ratón en el momento de la interacción.
Teclas adicionales pulsadas por el usuario, como la tecla. Control, la tecla de Cambio a
mayúsculas, etcétera.
METODOLOGÍA
La metodología que se va a implementar en nuestro proyecto se basará en el Proceso
Unificado de Rational (RationalUnifiedProcess en inglés, habitualmente resumido
como RUP) es un proceso de desarrollo de software desarrollado por la
empresa Rational Software, actualmente propiedad de IBM. Junto con el Lenguaje
Unificado de Modelado UML, constituye la metodología estándar más utilizada para el
análisis, diseño, implementación y documentación de sistemas orientados a objetos.
El RUP está basado en 6 principios clave que son los siguientes:
Adaptar el proceso
El proceso deberá adaptarse a las necesidades del cliente ya que es muy importante
interactuar con él. Las características propias del proyecto u organización, el tamaño
del mismo, así como su tipo o las regulaciones que lo condicionen, influirán en su
diseño específico. También se deberá tener en cuenta el alcance del proyecto en un
área subformal para hacer un proceso de satisfacción del software.
Equilibrar prioridades
Los requisitos de los diversos participantes pueden ser diferentes, contradictorios o
disputarse recursos limitados. Debe encontrarse un equilibrio que satisfaga los deseos
de todos. Gracias a este equilibrio se podrán corregir desacuerdos que surjan en el
futuro.
Demostrar valor iterativamente
Los proyectos se entregan, aunque sea de un modo interno, en etapas iteradas. En cada
iteración se analiza la opinión de los inversores, la estabilidad y calidad del producto, y
se refina la dirección del proyecto así como también los riesgos involucrados.
Colaboración entre equipos
El desarrollo de software no lo hace una única persona sino múltiples equipos. Debe
haber una comunicación fluida para coordinar requisitos, desarrollo, evaluaciones,
planes, resultados, etc.
Elevar el nivel de abstracción
Este principio dominante motiva el uso de conceptos reutilizables tales como patrón
del software, lenguajes 4GL o marcos de referencia (frameworks) por nombrar
algunos. Esto evita que los ingenieros de software vayan directamente de los requisitos
a la codificación de software a la medida del cliente, sin saber con certeza qué codificar
para satisfacer de la mejor manera los requisitos y sin comenzar desde un principio
pensando en la reutilización del código. Un alto nivel de abstracción también permite
discusiones sobre diversos niveles y soluciones arquitectónicas. Éstas se pueden
acompañar por las representaciones visuales de la arquitectura, por ejemplo con el
lenguaje UML.
Enfocarse en la calidad
El control de calidad no debe realizarse al final de cada iteración, sino en todos los
aspectos de la producción. El aseguramiento de la calidad forma parte del proceso de
desarrollo y no de un grupo independiente.
RUP divide el proceso de desarrollo en cuatro fases dentro de las cuales se realizan
varias iteraciones.
El ciclo de vida de la metodología RUP se lo realiza en cada una de las fases:
Inicio
En esta fase es donde se reúne todos los requisitos o requerimientos del usuario.
Elaboración
Aquí en esta fase de desarrollo, es donde se construyen los diagramas (casos de uso,
actividad, secuencia, etc.), para posteriormente construir la base de datos.
Construcción
En esta fase es donde pasamos a moldear el producto que vamos a mostrar al usuario
con todos sus requerimientos, además de que en esta etapa se realiza la implantación y
las pruebas del mismo.
Transición
Durante esta fase de transición busca garantizar que se tiene un producto preparado
para su entrega al usuario.
ANÁLISIS Y DISEÑO DE LA PROPUESTA DE TRABAJO
Análisis
Es importante para una empresa brindar diferentes medios para acceder a sus
servicios y son las tecnologías de la información las que actúan como una gran
herramienta para la comunicación y difusión de actividades comerciales.
Es por ello que el presente sistema se enfoca en las agencias de viajes y aerolíneas
brindándoles un medio por el cual sus clientes hagan uso de sus servicios como:
reservaciones, pagos y consultas de todos los vuelos a través de la web sin la necesidad
de intermediarios, simplemente el usuario y el computador. Logrando así una manera
más ágil para realizar sus procesos, y brindando un entorno cómodo y agradable para
el usuario.
Planteamiento del Problema
El problema de:
Afecta a:
Cuyo impacto es:
Una buena solución:
Desarrollar un Software de Reservación de
Vuelos, el mismo que permitirá al usuario hacer
consulta, reservaciones y pagos a través del
internet.
-A los usuarios o clientes quienes van a adquirir
los servicios que la Empresa de Reservación de
vuelos ofrece.
-Al grupo de profesionales que laboran en la
agencia de viajes que a través de su sistema
ofrecen sus servicios.
No tener los servicios disponibles que ofrece la
empresa al instante para que el usuario tome su
mejor decisión.
Desarrollar una aplicación, con una base de
datos en donde se muestre los servicios
disponibles para los clientes, creando una
interfaz que sea fácil de manejar con las que
acceder a dicha base de datos.
Posicionamiento del Producto
Para
-Gerente o representante de la Empresa de Agencia
de Viajes
Quienes
Nombre del Producto
Que
Diferente a:
Nuestro Producto
-Usuarios que tengan tarjeta de crédito y solvencia
suficiente para poder comprar su boleto.
Controlan las solicitudes de los diferentes servicios
que presta la empresa con su equipo de trabajo.
Software de Reservación de vuelos
Permite a los usuarios consultar, reservar Vuelos así
como también permite cancelar sus boletos de viaje
Recurrir a una agencia de viaje
Consiste en una aplicación que cuenta con una
interfaz accesible para los usuarios en donde tendrá
disponible información acerca de las distintas ofertas,
consultas y reservaciones de vuelo
Necesidades y Características
Necesidad
Característica
Tener información cuando
el usuario requiera.
Esta aplicación estará disponible las
24 horas del día.
Tener información
actualizada.
El sistema contará con información
confiable.
Ética y Seguridad en las
Transacciones.
Base de datos segura para posibles
ataques informáticos.
Fácil manejo de la
aplicación
Interfaz gráfica entendible para
usuarios
Es necesario analizar los casos de uso que se presentarán dentro de la aplicación es por
ello que a continuación se detallan las plantillas de casos de uso establecidas por la
herramienta RUP.
Caso de Uso: Registro de Información del Usuario
Breve Descripción
Permite al usuario registrarse en el sistema para poder hacer uso de todos sus servicios
de manera continua.
Breve Descripción de los Actores
Los principales actores de este caso de uso es el usuario que cumple con su registro de
información personal y el sistema que brinda la interfaz para que el usuario pueda
hacer uso de la aplicación. Internamente también se interactúa con la Base de datos del
usuario que es en donde se almacenará todos los datos brindados por el usuario.
Precondiciones
El usuario debe tener acceso a internet.
Flujo Básico de Eventos
1. Se presenta al usuario un panel de inicio de sesión con dos casilleros y dos botones
2. En el primer casillero ingresar su nombre de usuario
3. En el segundo casillero ingresar su contraseña
4. Click en el botón ingresar.
4.1 Se ejecuta el caso de Uso Validar Usuario
Flujo Alternativo
Si el usuario aun no posee una cuenta de Usuario:
5. Se presenta al usuario un panel de inicio de sesión con dos casilleros y dos botones
6. Click en el botón crear cuenta de Usuario.
6.1 Se ejecuta el subflujo Crear Cuenta de Usuario (S-1)
Subflujos
S-1 Crear Cuenta de Usuario
1. Se presenta una pantalla que contiene la información de registro.
2. El usuario debe llenar todos los campos de información como son: nombre, apellido,
país, ciudad, dirección, teléfono, correo electrónico, nombre de usuario y contraseña.
El nombre de usuario y contraseña serán utilizados por el sistema para validar al
usuario.
4. El usuario deberá elegir entre guardar o cancelar.
4.1 La opción guardar, el sistema valida los datos, los almacena y crea la nueva
cuenta de usuario.
4.2 La opción cancelar hace que el usuario abandone el registro. Si el usuario
no ha guardado los datos estos no se almacenarán.
S-2 Configurar Cuenta de Usuario
1. Se presenta una pantalla al usuario con toda su información distribuida en casilleros
2. El usuario podrá elegir si desea modificar sus datos, eliminar cuenta, registrar tarjeta
o salir.
3. Si el usuario desea modificar sus datos estos se guardan y se actualiza la información
en la base de datos.
4. Si el usuario desea eliminar su cuenta se borrará su registro de la base de datos.
5. Si el usuario desea salir se cerrará la pantalla si no ha guardado los cambios estos
quedarán como la última actualización.
6. Si el usuario desea registrar su tarjeta se realizará el caso de uso Registrar tarjeta.
Escenarios Claves
Este caso se lleva a cabo cuando el usuario desea ingresar al sistema ya sea con su usuario
y contraseña si ya posee una cuenta activa o cuando se registra por primera vez para hacer
uso del sistema.
Postcondiciones
Para que el usuario pueda continuar con el uso de la aplicación sus datos deben haber
sido registrados en la base de datos y haber llenado todos los campos de información.
Información Adicional
Una vez registrado el usuario deberá iniciar su sesión para iniciar con el uso de la
aplicación.
Caso de Uso:Registro de Validacion del Usuario
Breve Descripción
El sistema debe permitir validar y analizar los datos ingresados por el usuario como lo son
el usuario y contraseña deben ser verificados en el registro del sistema.
Flujo Básico de Eventos
1. Se presenta al usuario un panel de inicio de sesión con dos casilleros y dos botones
2. En el primer casillero ingresar su nombre de usuario
3. En el segundo casillero ingresar su contraseña
4. Click en el botón ingresar.
5. El sistema empieza valida la información proporcionada.
6. El sistema autentifica el acceso y le permite al usuario ingresar y hacer uso de los
servicios de la aplicación.
Flujo Alternativo
1. Si el usuario ingresa incorrectamente el usuario y contraseña, el sistema notificará que
no existe es información.
2. El sistema no permitirá ingresar a su cuenta y utilizar los servicios, si su usuario es
incorrecto.
Subflujos
1. Cuando ingresa al sistema al momento de logear, el sistema verifica si los datos
ingresados son correctos.
2. Se verifican los datos mediante una base de datos.
3. Una vez verificados, el sistema permite ingresar al usuario hacer uso de la aplicación
Postcondiciones
Para usar los servicios, se analizarán que los datos ingresados sean los mismos que los
que se registró anteriormente en la base de datos.
Información Adicional
Para que su información sea validada se requiere haber registrado sus datos, en el caso de
uso anteriormente mencionado.
Caso de Uso: Registro de Tarjeta
Breve Descripción
Permite al usuario registrar su tarjeta de crédito o sus tarjetas con las cuales realizar el
pago de sus reservaciones de manera remota evitando así acudir a la agencia a registrar su
pago.
Breve Descripción de los Actores
Los principales actores de este caso de uso son el usuario que brinda la información de
sus tarjetas y el sistema que permite que el usuario realice ese registro. Internamente
actúa la base de datos de registro de usuarios que es en donde se almacenarán los datos
de la tarjeta.
Precondiciones
El usuario debe tener acceso a internet.
Debe tener una cuenta de usuario registrada y válida
Tener la sesión de usuario activa
Flujo Básico de Eventos
1. Se presenta al usuario un panel con casilleros a llenar sobre la información de la tarjeta
como es: nombre de la tarjeta, institución financiera a la que pertenece, número de la
tarjeta, fecha de vencimiento, monto de pago máximo.
2. Guardar
3. Salir
Escenarios Claves
Se ejecuta este caso de uso cuando el usuario registra toda su información por primera
vez y cuando el usuario desea hacer un pago de alguna reserva que es donde necesita
tener previamente registrada su tarjeta.
Postcondiciones
Para que el usuario pueda continuar con el uso de la aplicación sus datos deben haber
sido registrados en la base de datos y haber llenado todos los campos de información.
Información Adicional
El usuario a través de este proceso puede registrar otra tarjeta a su mismo registro.
Caso de Uso: Consulta de Información
Breve Descripción
Este caso de uso permite al usuario realizar todas las consultas sobre los servicios de
vuelos disponibles. Ya sean estas consultas por horarios tarifas y estados de los vuelos.
Breve Descripción de los Actores
Los principales actores de este caso de uso es el usuario que es quien realiza las consultas
y el sistema que muestra la información al usuario sobre sus consultas realizadas.
Internamente encontramos a la base de datos de Reservaciones que es donde se
encuentran las disponibilidades de los vuelos.
Precondiciones
El usuario debe tener acceso a internet.
Debe estar registrado en el sistema y ser válido
Tener la sesión de usuario activa
Flujo Básico de Eventos
1. Se presenta una pantalla con las consultas con diferentes opciones de consultas:
Horarios, Tarifas, Estados y Salir.
2. Si el usuario selecciona la opción de consulta por horarios se ejecutará el subflujo de
consulta por horarios S-1
3. Si el usuario selecciona la opción de consulta por tarifas se ejecutará el subflujo de
consulta por tarifas S-2
2. Si el usuario selecciona la opción de consulta por estados se ejecutará el subflujo
deconsulta por estados S-3
Flujo Alternativo
Se presenta una pantalla con las consultas con diferentes opciones de consultas: Horarios,
Tarifas, Estados y Salir.
El usuario no desea hacer consultas y selecciona la opción de salir El
usuario sale del sistema.
Subflujos
S-1 Consulta por Horarios
1. Se presenta una pantalla con los casilleros de ciudad de origen y destino, aerolínea,
consultar y salir
2. Ingresar el nombre de la ciudad desde la que se va a partir
3. Ingresar el nombre de la ciudad a llegar
4. Seleccionar el nombre de la aerolínea por la cual se desea realizar el viaje
5. Click en el botón consultar
6. Despliegue de las aerolíneas que poseen ese destino junto con sus horarios de vuelos.
7. Selección del vuelo preferido
8. Marcar opción de Reservar Vuelo
9. Guardar
10. Salir
S-2 Consulta por Tarifas
1. Se presenta una pantalla con los casilleros de ciudad de origen, destino, aerolínea,
costo, consultar y Salir
2. Ingresar el nombre de la ciudad desde la que se va a partir
3. Ingresar el nombre de la ciudad a llegar
4. Seleccionar el nombre de la aerolínea por la cual se desea realizar el viaje
5. Seleccionar el rango de costos
5. Click en el botón consultar
6. Despliegue de las aerolíneas que poseen el destino y su costo se encuentre dentro del
rango establecido
7. Selección del vuelo preferido
8. Marcar opción de Reservar Vuelo
9. Guardar
10. Salir
S-3 Consulta por Estado
1. Se presenta una pantalla con los casilleros de ciudad de origen, destino, fecha de vuelo,
aerolínea, código de vuelo, consultar y salir.
2. Ingresar el nombre de la ciudad desde la que se va a partir
3. Ingresar el nombre de la ciudad a llegar
4. Ingresar la fecha de partida
5. Seleccionar el nombre de la aerolínea por la cual se desea realizar el viaje
6. Ingresar el código de vuelo que realiza esa trayectoria
5. Click en el botón consultar
6. Despliegue del estado del vuelo junto con fecha y hora de salida, fecha y hora de
llegada, código del vuelo, destino, número de asientos, disponibilidad.
7. Selección del vuelo preferido
8. Marcar opción de Reservar Vuelo
9. Guardar
10. Salir
Escenarios Claves
Este caso se presenta cuando el usuario desea realizar una reserva y no posee
conocimiento del vuelo que la lleva a ese destino y si los costos están al alcance de su
presupuesto.
Postcondiciones
El usuario debe guardar en el código de vuelo para que no deba hacer otra consulta para
hacer su reserva.
Información Adicional
Las consultas son el medio más óptimo para que el usuario realice sus reservas.
Para el subflujo de consulta por tarifas los resultados se muestran en orden ascendente se
presentarán desde el costo más bajo hasta el más alto que se encuentre en el rango fijado
por el usuario.
Caso de Uso: Reservaciones
Breve Descripción
El caso de uso de reservaciones permite al usuario crear, modificar y eliminar una
reservación dentro del sistema.
Actor Breve Descripción
En este caso de uso interviene el usuario y el sistema como actores principales. El usuario
que es quien realiza la reservación y todas las actividades dentro de este proceso y el
sistema que brinda la visibilidad y el medio para que el usuario actúe con la base de datos
de reservaciones que actúa internamente.
Precondiciones
Tener Acceso a internet
Poseer una cuenta de usuario y ser válida
Tener la sesión de usuario activa
Flujo Básico de Eventos
1. Se presenta al usuario un panel con las opciones de crear reserva, modificar Reserva y
Eliminar Reserva
2. Si el usuario desea crear una reserva se ejecuta el subflujo Crear Reserva (S-1)
3. Si el usuario desea modificar una reserva se ejecuta el subflujo Modificar Reserva (S-2)
4. Si el usuario desea eliminar una reserva se ejecuta el subflujo Eliminar Reserva (S-1)
Subflujos
S-1 Crear Reserva
1. Se presenta una pantalla que contiene la información de registro de la reserva junto
con las opciones de crear reserva y salir.
2. El usuario debe llenar todos los campos de información como son: nombres, apellidos,
número de cédula, teléfono, código de vuelo, número de personas.
3. Click en el botón crear reserva
4. Se despliega toda la información de la reserva creada. Se debe verificar la información
arrojada que esté correcta
4.1 Si desea pagar en línea se selecciona la opción proceder a pagar y se ejecuta el
caso de uso Pago de Reserva
5. Se crea la reserva del usuario con todo su registro en la base de datos
6. Salir
S-2 Modificar Reserva
1. Se presenta una pantalla al usuario con toda su información distribuida en casilleros y
las opciones de guardar cambios y cancelar
2. El usuario podrá modificar los datos directamente en los casilleros
3. No se podrá dejar casilleros en blanco
3. Si el usuario selecciona la opción guardar cambios estos datos se guardarán y se
actualiza la información en la base de datos de reservaciones.
4. Si el usuario desea cancelar se cerrará la pantalla si no ha guardado los cambios estos
quedarán como la última actualización.
S-2 Eliminar Reserva
1. Se presenta una pantalla con los datos de la reserva registrada junto con las opciones
de eliminar reserva
2. Click en el botón eliminar reserva
3. Presentación de mensaje de confirmación de eliminación de reserva
4. Eliminación de reserva en la base de Datos de Reservas
Escenarios Claves
Este caso se lleva a cabo cuando el usuario ha realizado una consulta sobre los vuelos
según tarifas, horarios o estado y desea seleccionar para hacer su reserva.
Postcondiciones
El usuario debe proceder a pagar la reserva
Registrar su tarjeta en caso de realizar el pago en línea.
Requerimientos Especiales
Para hacer una reserva el usuario debe comprobar que el vuelo aún tiene cupos
disponibles
Todos los datos deben ser registrados
Caso de Uso: Pago de Reserva
Breve Descripción
El caso de uso de pago de Reserva permite al usuario al usuario proceder a pagar sus
reservas de manera online sin necesidad de acudir a la agencia de viajes.
Actor Breve Descripción
En este caso de uso interviene el usuario y el sistema como actores principales. El usuario
que es quien realiza el pago de la la reservación y todas las actividades dentro de este
proceso y el sistema que brinda la visibilidad y el medio para que el usuario actúe con la
base de datos de reservaciones que actúa internamente.
Precondiciones
Tener Acceso a internet
Poseer una cuenta de usuario y ser válida
Tener la sesión de usuario activa
Tener la tarjeta de crédito registrada
Flujo Básico de Eventos
1. Se presenta al usuario un panel con las reservaciones registradas por el usuario
2. Click en el botón proceder a pagar
3. Seleccionar la tarjeta con la cual realizar el pago
3.1 Registrar tarjeta caso de uso Registrar tarjeta
4. Escoger el tipo de pago corriente o diferido
4. Click en el botón de pagar.
5. Presentación de mensaje de confirmación de pago
6. Confirmar
7. Se actualiza el estado de pagado en el registro de la base de datos
7. Salir.
Flujo Alternativo
1. Se realiza la reservación
2. El pago se lo realiza en efectivo en las oficinas de la agencia
Escenarios Claves
Este caso de uso se lleva a cabo cuando el usuario desea comprar el boleto y paga su
reserva para realizar su viaje.
Requerimientos Especiales
Tener registrada su tarjeta.
Información Adicional
El pago de la reserva se la debe hacer con su tarjeta de crédito preferida y puede realizar
el pago con tarjetas. En el caso de varias reservas el pago se lo hace por reservaciones más
no por costo total.
Diseño
El producto a desarrollar es un sistema en que el usuario va a poder agilizar su compra,
reservación, estado, horarios, etc. de un vuelo en una aerolínea, desde la comodidad de
su casa o trabajo, en donde tenga acceso a internet. Los encargados de esto serán los
técnicos del sistema y los administradores de la base de datos.
Entorno del Usuario
Los usuarios entrarán al sistema si están registrados a través de su usuario y contraseña si
no se han registrado tendrán la opción de hacerlo. Después tendrán disponibles toda la
información acerca de consultas, reservaciones y pago de boletos para sus vuelos a través
de una interfaz gráfica, la misma que es fácil de entender para no crear conflictos de
manipulación del sistema. En la consulta de vuelos se presentarán horarios, tarifas y
estados de vuelo. La consulta según horarios muestra los horarios de las diferentes
aerolíneas que dan servicios entre dos ciudades, la consulta según tarifas muestra los
diferentes vuelos entre dos ciudades que dan prioridad a su costo y la información por
estados de vuelo se utiliza principalmente para consultar si se encuentran disponibles los
vuelos y si están cancelados, incluyendo información de disponibilidad de asientos y en el
caso de un vuelo para el mismo día, si está a tiempo.
La reservación de vuelo permite al cliente hacer una reservación para un vuelo particular,
especificando la fecha y horario, bajo una tarifa establecida. Es posible reservar un
itinerario compuesto de múltiples vuelos, para uno o más pasajeros, además de poder
reservar asientos.
El pago permite al cliente, dada una reservación de vuelo previa y una tarjeta de crédito
válida, adquirir los boletos aéreos.
Además de los servicios de vuelo, el usuario podrá, en cualquier momento, modificar o
cancelar su propio registro, todo esto después de haber sido validado en el sistema.
DIAGRAMAS UML
DIAGRAMA DE CASOS DE USO
DIAGRAMA DE CLASES
DIAGRAMA DE OBJETOS
DIAGRAMA DE COMPONENTES
DIAGRAMA DE PAQUETES
DIAGRAMA DE SECUENCIA
DIAGRAMA DE INTERACCIÓN
DIAGRAMA DE DESPLIEGUE
DIAGRAMA DE ACTIVIDADES
DIAGRAMA DE COMUNICACIÓN
ARQUITECTURA DE LA APLICACIÓN
BASE DE DATOS
APLICACIÓN
USUARIO
PROTOTIPOS DE LA APLICACIÓN
Fig 1. Inicio de Sesión de Usuario
Fig 2. Pantalla de creación de nueva cuenta de usuario
Fig 3. Pantalla de configuración cuenta de usuario
Fig 4. Pantalla de consulta de vuelos por horarios
Fig 5. Pantalla de consulta de vuelos por tarifas
Fig 6. Pantalla de consulta de vuelos por estado
Fig 7. Pantalla de creación de reserva de vuelos
Fig 8. Pantalla de modificación de reservas
Fig 9. Pantalla de eliminación de reservas
Fig 10. Pantalla de pago de reservas
Fig 11. Pantalla de registro de tarjeta de crédito
ESTUDIO COMPARATIVO
El papel que tienen las Tecnologías de Información y Comunicación (TIC) dentro de las
organizaciones es, que son un elemento de éxito de cualquier negocio pues propician
una mejor adaptación tecnológica de las organizaciones y dan como resultado mayor
rentabilidad y productividad de las mismas.
El hecho de implementar un sistema de Reservación de vuelos que se vincula con el
sector turístico representa la difusión de sus servicios favoreciendo a la innovación por
parte de la empresa ya que poseen una herramienta externa que abre las puertas a sus
usuarios, consumidores y proveedores brindando un mejor servicio, comodidad y una
interfaz amigable.
Este tipo de empresas necesitan implementar un sistema tecnológico ya que posee
demasiada información, y es importante hacer uso de este tipo de tecnologías
específicas que permitan su recolección, almacenamiento e interpretación, y que el uso
de dichas tecnologías lleguen a generar efectos tales como el mejoramiento de la
calidad, creación del valor para el cliente y sobre todo un incrementos en la
productividad.
Las agencias de viajes deben conocer de qué forma están implementando las
tecnologías por su cercana competencia, por sus clientes y sus proveedores, de igual
forma es importante que conozcan, qué valor les están dando estos actores de
referencia, a la tecnología que están aplicando las demás aerolíneas.
Dentro de las agencias de viajes como en cualquier empresa, se han implementado
sistemas informáticos de forma generalizada, dentro del sector turístico el 90% de las
agencias poseen un sistema informáticos para su gestión pero, dependiendo de la
categoría de la agencia de viajes será el nivel de informatización de las diferentes áreas
que integren los sistemas informáticos, ya que es lógico que las agencias de viajes de
mayor categoría puedan tener una mayor inversión en tecnología. Un buen sistema
ayuda a los hoteles a controlar sus operaciones internas además de la automatización
de sus procesos para la prestación de los servicios de viajes.
CONCLUSIONES
Podemos concluir que la implementación de un sistema que ayuda a la reservación
compra y consulta de vuelos dentro de una empresa turística resulta una gran
herramienta dentro de sus labores puesto que automatiza sus procesos, facilita al
usuario el uso de sus servicios y es una innovación dentro de la empresa que le brinda
una mayor ventaja frente a la competencia.
Considerando la automatización, permite la optimización de los tiempos de ejecución y
reducción de costos de todas las actividades dentro de una agencia turística, ya que este
sistema realiza todas las funciones de ventas de boletos aéreos básicos dentro de una
agencia.
En el presente proyecto hemos intentado dar una visión general del papel que cumplen
los sistemas de reservas onlinedentro de las empresas turísticas. Dichos sistemas tienen
como finalidad, por un lado, prestar servicios de información, comunicación y
distribución de productos turísticos, soportados por las últimas y más avanzadas
tecnologías de la información. Y por otro lado, ofrecer un servicio de asistencia técnica
personalizada en tecnologías de la información así como ofrecer valor añadido a los
procesos de toma de decisiones de las compañías aéreas.
RECOMENDACIONES
Es necesario para la empresa tener convenios con varias instituciones financieras para
que cuando el cliente registre su tarjeta no exista ningún inconveniente al realizar la
transacción.
BIBLIOGRAFÍA
AECE (2002). “Uso de Internet en el sector Agencias de Viajes en España”, estudio realizado
por la Asociación Española de Comercio Electrónico. Disponible en:
http://www.aece.org/docs/INFORMEFINAL.pdf, [24/10/2002]
MACÍAS, M. (1999). “Nuevas tecnologías aplicadas a la gestión turística”, Turitec 99. Disponible
en: http://www.turismo.uma.es/turitec/turitec99/pdf/c3.pdf, [4/11/2002]
AVANTUR (2000). “Posibilidades del Turismo en Internet”. Disponible en:
http://avantur.com/espanol/documentos/download/Comercializacion%20del%20turismo%20
en%20Internet_oct-2000.pdf, [24/10/2002]
DOCUMENTO REQUERIMIENTOS
Proyecto: Sistema de reservación de vuelos.
id
Descripcion
Necesidad
Prioridad
Tipo
Riesgo
1
Realizar un sistema que permita hacer consultas y
reservaciones de vuelos a través del internet.
Facilitar la consulta y
reservacion de boletos.
Alta
No
funcional
Alto
2
La aplicación deberá permitir a los usuarios
acceder las 24 horas del días y los 365 días del año.
Tener información
cuando el usuario
requiera.
Alta
No
funcional
Alto
3
El sistema permite realizar la compra de los boletos
de forma online.
Ética y Seguridad en las
Transacciones
Alta
No
funcional
Alto
4
Al ingresar se presenta un mensaje de bienvenida,
describiendo los servicios ofrecidos, junto con la
opción para registrarse por primera vez.
Fácil manejo de la
aplicación.
Alta
Funcional
Alto
5
Para acceder a los servicios, el usuario debe
ingresar su login y password previamente
obtenidos.
Tener información
actualizada, asi como
privacidad de la
información.
Alta
Funcional
Alto
6
El usuario al momento de ingresar al sistema
puede realizar: la consulta de vuelos, reservaciones
de vuelos y pago de boletos.
Tener información
cuando el usuario
requiera.
Alta
Funcional
Medio
7
La consulta de vuelos se puede hacer de tres
maneras: por horarios de vuelos, tarifas de vuelos y
estado de vuelo.
Tener información
cuando el usuario
requiera.
Media
Funcional
Medio
8
Al realizar la consulta por horario, el sistema
mostrará los horarios de las diferentes aerolíneas
que dan servicios entre dos ciudades.
Tener información
cuando el usuario
requiera.
Media
Funcional
Medio
9
Al realizar la consulta por tarifas el sistema
mostrará los vuelos entre dos ciudades dando
prioridad su costo.
Tener información
cuando el usuario
requiera.
Media
Funcional
Bajo
10
Al realizar la consulta por estado, mostrará la
información del vuelo incluyendo la disponibilidad
de asientos y en el caso de haber un vuelo para el
mismo día, ver si está a tiempo.
Tener información
cuando el usuario
requiera.
Media
Funcional
Bajo
11
Se debe incluir preferencias en las búsquedas
como: la fecha, categoría de asiento, aerolínea y
vuelos directos.
Tener información
cuando el usuario
requiera.
Media
Funcional
Bajo
12
Al hacer una reservación el usuario debe
especificar la fecha, horario y tarifa establecida,
además puede reservar un itinerario compuesto de
múltiples vuelos, para uno o más pasajeros.
Tener información
cuando el usuario
requiera.
Baja
Funcional
Medio
13
El usuario debe contar con una tarjeta de crédito
con fondos, para poder acceder a la compra de
boletos.
Facilitar la consulta y
reservacion de boletos.
Media
No
funcional
Bajo
14
El usuario debe estar previamente registrado con
un número de tarjeta de crédito válida para poder
adquirir los boletos aéreos, o de lo contrario
proveerla en el momento de la compra.
Tener información
actualizada, asi como
privacidad de la
información.
Alta
Funcional
Medio
15
El usuario podrá acceder, modificar o cancelar su
propio registro en cualquier momento.
Tener información
cuando el usuario
requiera.
Baja
Funcional
Bajo
16
El sistema se desarrollará en el Lenguaje de
Programación Java a través de la plataforma
NetBeans
Baja
No
funcional
Bajo
IMAGEN DEL PRODUCTO
Descargar