Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Uladech Biblioteca Virtual PDF
Uladech Biblioteca Virtual PDF
UNIVERSIDAD
“Los Ángeles De Chimbote”
FACULTAD : INGENIERIA
TEMA
AUTOR (AS) :
LOMPARTE SAENZ NATALY.
PAREDES LOAYZA JORGE L.
CASMA - PERÚ
2008
1
Complejo turístico Las Poncianas Tesis
INDICE
Carátula…………………………………………………………………………………1
Índice……………………………………………………………………………………2
Dedicatoria…………………………………………………………………………..…3
Agradecimiento……………………………………………………………………...…4
Presentación…………………………………………………………………………...5
Introducción…………………………………………………………………………….6
Capitulo I: generalidades
1.1 Titulo: …………………………………………………………………...............13
1.2 Personal investigador: …………………………………….…………………...13
1.3 Tipo de investigación:……………………………………………………….….13
1.4 Localidad e institución donde se desarrolla el proyecto:…………………...13
1.5 Duración del proyecto...……………………...…………..…………………….13
1.6 Fechas probables de inicio y término………………………………………...13
1.7 Etapas de trabajo:……………………………………………………………...13
1.8 Financiamiento:……………………………………………………………...….14
1.9 Descripción de la empresa…………………………………………………….14
1.10 Antecedentes del problema……………………………………………...…....17
1.11 Situación problemática………………………………………………...……….17
1.12 Enunciado del problema……………………………………………………….18
1.13 Justificación:…………………………………………..…………………...……18
1.14 Objetivos del proyecto:………………………………………………...……....22
1.15 Limitaciones……………………………………………………………………..22
1.16 Hipótesis…………………………………………………………………………23
1.17 Variables:……………………………………….……………………...………..23
2
Complejo turístico Las Poncianas Tesis
DEDICATORIA
3
Complejo turístico Las Poncianas Tesis
AGRADECIMIENTO
4
Complejo turístico Las Poncianas Tesis
PRESENTACIÓN
5
Complejo turístico Las Poncianas Tesis
INTRODUCCIÓN
Bajo el enfoque enunciado y gracias a los avances tecnológicos actuales, hoy por
hoy el Complejo Turístico “Las Poncianas” ha orientado todos sus esfuerzos y
recursos a la sistematización de sus datos, de tal forma que ellos constituyan el
soporte indispensable e inseparable en la toma de decisiones. Para lograr este
objetivo, nada mejor que implementar un excelente sistema de información de
registro de alquiler y control de habitaciones, que permita el control ordenado de la
información de las habitaciones, el registro del alquiler en forma más rápida, la
información más segura y que no tienda a perderse, teniendo como consecuencia
clientes satisfechos.
6
Complejo turístico Las Poncianas Tesis
7
Complejo turístico Las Poncianas Tesis
RESUMEN
8
Complejo turístico Las Poncianas Tesis
ABSTRACT
The first part of this report will range, basing us in the information recopilada
obtained thanks to the interviews with the people involucradas, the Pictograma
respective in which treated of plasmar the current situation that comes giving the
development of the main processes of the Hotel the Poncianas where identified to
the actors that take part in the process, from the cual will locate the main
Processes of Business and to establish our Rules of Business. Beginning like this
with the Diagramas Respective and finding the Model of Command.
Happening to one second part that touches the point of the Models of Requests,
where detected the functional requests of the system, happening like this to
another stage that will commission to resolve the part of Analysis. Here,
commissioned us to develop the Diagramas of Collaboration, applying them to each
case of use that found in the Diagrama of Requests, registers and reportes
respective, afterwards develop the phase of design implementation and proof of the
system, which will give us the results wished by the Hotel.
9
Complejo turístico Las Poncianas Tesis
INDICE DE CUADROS
CUADRO PÁGINA
1 – Cronograma de Trabajo……………………………………………..………….….. 13
2 – Diagrama de Gantt……………………………………….……....………………….. 13
3 – Cuadros del Personal……………………………………………………………….... 15
4 – Bienes de Consumo Disponibles……………………….……….……………... 15
5 – Bienes de Consumo No Disponibles……………………………………....... 16
6 – Bienes de Inversión Disponibles…………….………………………………..… 16
7 – Bienes de Inversión Software…………………………………..……………..… 16
8 – Servicios Básicos……………………………………………….....................… 16
9 – Alquiler del Local…………………………………………..….…..…………………… 17
10 – Capacitaciones…………………………………………….…...…………………..… 17
11 – Presupuesto…………………………………………………..…...................… 17
12 – Planificación de fases…………………………………………………….……..……38
10
Complejo turístico Las Poncianas Tesis
INDICE DE FIGURAS
FIGURA PÁGINA
1 - Vista de un Modelo……………………………………………………………………….… 22
2 - Modelado con UML………………………………..………………………..…........... 23
3 - Arquitectura Cliente / Servidor……………………………….……………...………27
4 - Flujo de trabajo en UML…........................................................35
5 - Ciclo de Vida de UML…………………………….…………………………………....….37
6 - Fase de la Metodología RUP……………………….………………................…38
7 - Flujos de trabajo…………………….……………....………………………………….….41
8 - Flujos de trabajo …………………….……………....……………………..…….……….41
9 - Caso de Uso………………….………………………………………………….…..…..…….46
10 - Actor………………….…………………………………………………….……….…..…..…….46
11 - Metodología Extreme Programing ………………………….………...…….…….49
11
Complejo turístico Las Poncianas Tesis
CAPITULO I: GENERALIDADES
12
Complejo turístico Las Poncianas Tesis
1.2.1. Autores:
- Lomparte Sáenz Nataly Kimberly.
- Paredes Loayza Jorge Luís.
1.2.2. Asesor:
- William Vásquez.
1.2.3. Colaboradores:
- Gerente: Teresa Lázaro Mendiola.
- Administrador: Giuliana Meléndez Lázaro.
- Recepcionista: Karina Velásquez Pérez.
- Ruth Macedo Rojas.
- Manuel Pinto Cáceres.
13
Complejo turístico Las Poncianas Tesis
Se encuentra ubicado dentro del rubro hotelero, brindando en esta parte del país la
mejor infraestructura hotelera, se encuentra calificada con 03 estrellas la cual se
refleja en una satisfactoria y feliz estadía de nuestros clientes.
Se encuentra en uno de los más hermosos parajes del norte del Perú. Rodeado de
áreas verdes, con sol todo el año a solo 376 Km. de la capital – Lima.
En Casma podemos sentirnos Orgullosos de este moderno Complejo Turístico, la
cual brinda una variedad de servicio.
Visitar el Hotel Las Poncianas es agregar confort total a su estadía en medio de la
naturaleza y tranquilidad del valle de Casma. Los circuitos arqueológicos de la zona
solo son conocidos por unos pocos afortunados. Sea ud. uno de ellos y en una
experiencia única encuentre nuestro pasado cultural y sumérjase en las cálidas
aguas de nuestras mejores playas.
En Las Poncianas encontrará el descanso deseado, rodeado de jardines y lejos del
bullicio de la gran ciudad.
Nuestro complejo Turístico posee la mejor infraestructura hotelera de la zona en
medio de 10, 000 metros cuadrados de verde naturaleza.
Contamos con 50 habitaciones con:
- TV – cable.
- Agua caliente.
- Friobar.
- Rom service.
- Excelente iluminación y ventilación.
- Restaurante.
- Snack bar.
- Juegos de salón.
- Loza deportiva.
- Juegos recreativos.
- Gimnasio.
- Sauna.
- Estacionamiento privado.
2 piscinas, una para niños y otra sumí - olímpica de 25. X 12.5 m. son la mejor
respuesta frente al vivo sol casmeño. Para sus eventos y conferencias, UD. dispone
de nuestros amplios salones aptos para recibir más de 1000 invitados.
14
Complejo turístico Las Poncianas Tesis
Poncianas Beach:
EL Balneario de Tortugas está ubicado al norte de Casma, en el Km. 392 de la
Panamericana norte. Su temperatura oscila entre 20º C en invierno y 30º C en
verano. El balneario ofrece recreación y descanso en medio de una bahía apacible y
calurosa, no solo por su clima, sino también por su gente.
Los deportes acuáticos, las caminatas y las tertulias alrededor de una gran fuente
de cebiche son obligaciones diarias en este hermoso rincón del litoral de Casma. En
medio de este paraíso, las Poncianas le ofrece su cálido y detallista servicio en sus
instalaciones "Poncianas Beach Tortugas".
Contamos con 14 habitaciones con agua caliente. Desde nuestras terrazas podrá
contemplar el sunset y el diario espectáculo de las aves marinas y sus danzas
aéreas. Visitar Tortugas, es desconectarse del stress diario y empapar su espíritu
en la tranquilidad de lo simple. Para su relax en medio del mar, una plataforma de
reposo lo espera para tomar baños de sol. Y si quiere correr sobre las olas, puede
rentar nuestro yate y nuestra moto acuática.
Las Poncianas Beach lo espera, la naturaleza y el mar también.
Visión:
Ser el grupo hotelero más rentable en los diferentes segmentos de la hotelería
Casmeña.
Misión:
Crear valor en la hotelería Casmeña para los clientes, a través de nuestra actitud.
Nuestra Filosofía:
- Orientación a la satisfacción del Cliente.
- Decisiones con responsabilidad de los colaboradores.
- Dirección Abierta.
- Trabajo en equipo.
- Productividad.
Valores:
- Trabajo.
- Honestidad.
- Compromiso.
15
Complejo turístico Las Poncianas Tesis
Organigrama
GERENTE
ADMINISTRADOR
Recepción
Asesoría hotelera
16
1
Complejo turístico Las Poncianas Tesis
Los empresarios suele contar con escasa educación formal y la mayor parte de
empresas se ubican en un rendimiento relativamente bajo, pero a falta de
capital humano, han recurrido a distintas estrategias para salir adelante con
sus negocios, haciendo uso de una acentuada ética del trabajo y una amplia
red social; heterogeneidad de las micro y pequeñas empresas. Se puede
observar que la gran mayoría de empresas, las denominadas “microempresas
familiares informales” son ajenas a una gestión moderna de sus procesos y
presentan niveles de productividad laboral bajos.
Muchas empresas del medio por falta de un adecuado control interno nace la
importancia de contar con un eficiente sistema informático.
Como bien se describe anteriormente, se da a notar la necesidad de
implementar tecnología en sistemas de información, que generen mayor
adaptación a los cambio provenientes de un entorno globalizado que afecta a
todos los países y sus sectores económicos, asimismo la importancia que tiene
la gestión administrativa para el manejo eficiente de la información y la toma
de decisiones es otro pilar que dentro del contexto local no se toma la
importancia debida.
El complejo Turístico “Las Poncianas” viene operando bajo este rubro desde la década
de los años 90. La competitividad dio lugar a que se incrementará nuevos servicios
acompañados con los avances tecnológicos. Liderando el sector Hotelero en esta parte
del país, se incrementaron la afluencia de clientes, para lo diferentes servicios que
brinda el Complejo Turístico “Las Poncianas”. Debido a estos cambios se originaron
17
Complejo turístico Las Poncianas Tesis
Consecuencias:
1.13. Justificación:
a) Operativa
El beneficio que traerá realizar este sistema es de agilizar la búsqueda de
información de los clientes. Menor porcentaje de la pérdida de información
y mayor control.
18
Complejo turístico Las Poncianas Tesis
b) Técnica
Brindara al Complejo Turístico “Las Poncianas”, un soporte de información
adecuado para el desarrollo de sus procesos en el control de los alquileres,
en forma eficiente mediante la implementación de un sistema informático.
Se realizaran los procesos con software a medida.
Apoyo para el respaldo de información de las diferentes áreas.
Confiabilidad del sistema informático para una mejor administración de
datos del Complejo Turístico “Las Poncianas”.
REQUERIMIENTO DISPONIBILIDAD
MYSQL SI
POWER BUILDER SI
C#.NET SI
STAR UML SI
c) Económico
Con el desarrollo de este proyecto se mejorará la productiva del personal que
labora en la recepción y reducir costos por sobre tiempo, que se traduce en
utilidades para el Complejo Turístico “Las Poncianas”.
Personal:
Bienes:
Bienes de Consumo:
Disponible:
Descripción Cantidad Costo (s/.)
Papel bond 80 gr. 200 20.00
lapiceros 5 5.00
CD-ROM 3 7.00
Tinta de impresión 1 60.00
Memoria USB 1Gb 1 35.00
Folders 2 10.00
19
Complejo turístico Las Poncianas Tesis
No Disponible:
De Inversión:
Disponible:
No Disponibles:
SERVICIOS:
20
Complejo turístico Las Poncianas Tesis
LOCAL:
CAPACITACIÒN:
Presupuesto General:
Descripción Costo(s/.)
8.1 Personal
Asesor 400.00
Autores 600.00
8.2 Bienes de Consumo disponibles
Bienes de consumo 137.00
8.3 Bienes de consumo no disponibles
Viáticos y Asignaciones 200.00
Bienes de consumo 111.00
8.4 Bienes de Inversión disponibles
Mobiliario 170.00
8.5 Equipos
Computadora e Impresora 0.00
8.6 Software
Software disponible 0.00
8.7 Servicios:
Tarifas de servicios básicos 280.00
Servicios de terceros 30.00
8.8 capacitación 150.00
Total Presupuesto (s/.) 2078.00
d) Justificación Social:
Al mejorar económicamente la Empresa estará en condiciones de mejorar el
nivel económico de sus trabajadores así como en invertir capacitaciones de los
mismos, ambos factores fundamentales para la motivación e identificación del
personal con la empresa, como también factores fundamentales para su
desarrollo personal e intelectual mejorando las relaciones con la sociedad y la
de su familia.
21
Complejo turístico Las Poncianas Tesis
1.15. LIMITACIONES
22
Complejo turístico Las Poncianas Tesis
1.16. Hipótesis
1.17. Variables:
23
Complejo turístico Las Poncianas Tesis
24
Complejo turístico Las Poncianas Tesis
Lenguaje Unificado de Modelado (UML, por sus siglas en inglés, Unified Modeling
Language) es el lenguaje de modelado de sistemas de software; está apoyado por el
OBJETIVOS DE UML
• Describir cualquier tipo de sistema en términos de diagramas orientados a
objetos
• Debe proveer un lenguaje de modelamiento visual que sea común para todos.
• Debe ser independiente de los procesos de desarrollo y los lenguajes de
promoción.
• Debe soportar conceptos de alto nivel de abstracción.
• Debe integrar las mejores prácticas de la industria.
ARQUITECTURA DE UML
Un sistema puede ser visto de diferentes perspectivas y puntos de vista UML, propone
cinco puntos de vista mediante las cuales se puede visualizar un sistema.
• Use Case View
• Design View
• Process View
25
Complejo turístico Las Poncianas Tesis
• Implementación View
• Deployment View
CARACTERISTICAS DE UML
Proporciona a los desarrolladores un lenguaje de modelamiento ampliamente aceptado
y listo para usar.
o Integra las mejores prácticas del desarrollo de software.
o Permite la intercambio de modelos entre las diferentes herramientas de software.
o Es independiente del lenguaje de programación y de métodos y procesos
particulares de desarrollo de software.
o Proporciona sus propios mecanismos de extensión
o Agrupa los conceptos de orientación a objetos definiendo su significado.
VISTAS DE UN MODELO
26
Complejo turístico Las Poncianas Tesis
DIAGRAMAS
En UML 2.0 hay 13 tipos diferentes de diagramas. Para comprenderlos de manera
concreta, a veces es útil categorizarlos jerárquicamente, como se muestra en la figura
de la derecha.
Diagramas de estructura enfatizan en los elementos que deben existir en el sistema
modelado:
• Diagrama de clases
• Diagrama de componentes
• Diagrama de objetos
• Diagrama de estructura compuesta (UML 2.0)
• Diagrama de despliegue
• Diagrama de paquetes
• Diagrama de actividades
• Diagrama de casos de uso
• Diagrama de estados
27
Complejo turístico Las Poncianas Tesis
• Diagrama de secuencia
• Diagrama de comunicación
• Diagrama de tiempos (UML 2.0)
• Diagrama de vista de interacción (UML 2.0)
ASOCIACIÓN
La relación entre clases conocida como Asociación, permite asociar objetos que
colaboran entre si. Cabe destacar que no es una relación fuerte, es decir, el tiempo de
vida de un objeto no depende del otro.
La asociación expresa una conexión bidireccional entre objetos. Una asociación es una
abstracción de la relación existente en los enlaces entre los objetos. Puede
determinarse por la especificación de multiplicidad (mínima...máxima)
AGREGACION
La agregación representa una relación parte_de entre objetos. En UML se proporciona
una escasa caracterización de la agregación. Esta relación puede ser caracterizada con
precisión determinando las relaciones de comportamiento y estructura que existen
entre el objeto agregado y cada uno de sus objetos componentes.
Una agregación se podría caracterizar según:
¿Puede el objeto parte comunicarse directamente con objetos externos al objeto
agregado?
28
Complejo turístico Las Poncianas Tesis
Por Valor: Es un tipo de relación estática, en donde el tiempo de vida del objeto
incluido esta condicionado por el tiempo de vida del que lo incluye. Este tipo de
relación es comúnmente llamada Composición (el Objeto base se construye a
partir del objeto incluido, es decir, es "parte/todo").
Por Referencia: Es un tipo de relación dinámica, en donde el tiempo de vida del
objeto incluido es independiente del que lo incluye. Este tipo de relación es
comúnmente llamada Agregación (el objeto base utiliza al incluido para su
funcionamiento).
GENERALIZACION
Permite gestionar la complejidad mediante un ordenamiento taxonómico de clases, se
obtiene usando los mecanismos de abstracción de Generalización y/o Especialización.
La Generalización consiste en factorizar las propiedades comunes de un conjunto de
clases en una clase más general. Los nombres usados: clase padre - clase hija. Otros
nombres: superclase - subclase, clase base - clase derivada. Las subclases heredan
propiedades de sus clases padre, es decir, atributos y operaciones (y asociaciones) de
la clase padre están disponibles en sus clases hijas. La Generalización y
Especialización son equivalentes en cuanto al resultado: la jerarquía y herencia
establecidas.
29
Complejo turístico Las Poncianas Tesis
• Centralización del control: los accesos, recursos y la integridad de los datos son
controlados por el servidor de forma que un programa cliente defectuoso o no
autorizado no pueda dañar el sistema.
• Escalabilidad: se puede aumentar la capacidad de clientes y servidores por
separado.
Características de un servidor:
Voz pasiva (esclavo) • Espera para las peticiones • Sobre el recibo de peticiones, las
procesa y entonces los servicios son contestados.
Características de un cliente:
Activo (amo) • Envía peticiones • Las esperas para y reciben contestaciones del
servidor
Los servidores pueden ser apátridas o stateful. Un servidor apátrida no guarda
ninguna información entre las peticiones. Un servidor stateful puede recordar la
información entre las peticiones. El alcance de esta información puede ser global o
sesión-específico. Un servidor del HTTP para las páginas estáticas del HTML es un
ejemplo de un servidor apátrida mientras que Apache Tomcat es un ejemplo de un
servidor stateful.
La interacción entre el cliente y el servidor se describe a menudo usando diagramas
de secuencia. Los diagramas de secuencia se estandardizan en el UML.
Otro tipo de arquitectura de red se conoce como arquitectura del par-a-par porque
cada nodo o caso del programa es un “cliente” y un “servidor” y cada uno tiene
responsabilidades equivalentes. Ambas arquitecturas están en uso amplio.
30
Complejo turístico Las Poncianas Tesis
Algunas redes consistirán en tres diversas clases de nodos: cliente, servidores del uso
que datos de proceso para los clientes, y servidores de la base de datos que
almacenan los datos para los servidores del uso. Esta configuración se llama una
arquitectura de la tres-capas.
La ventaja de una arquitectura de la n-capas comparado con una arquitectura de dos
niveles (o una tres-capas con un de dos niveles) es que separa hacia fuera el proceso
eso ocurre para mejorar el balance la carga en los diversos servidores; es más
escalable. Las desventajas de las arquitecturas de la n-capas son: 1.-Pone más carga
en la red 2.-Es mucho más difícil programar y probar software que en arquitectura de
dos niveles porque más dispositivos tienen que comunicarse para terminar la
transacción de un usuario.
Ventajas
Todos los datos se almacenan en los servidores, así que tienen capacidad mejor del
control de la seguridad. El servidor puede controlar el acceso y el recurso al
cerciorarse que dejó solamente ésos accesos de usuarios permitidos y cambia datos. •
Es más flexible que el paradigma del P2P para poner al día los datos u otros recursos.
• Hay las tecnologías maduradas diseñadas para el paradigma de C/S que asegura
seguridad, el usuario-friendliness del interfaz, y la facilidad de empleo. • Cualquier
elemento de la red C/S puede ser aumentado fácilmente.
Desventajas
La congestión del tráfico ha sido siempre un problema desde el primer día del
nacimiento del paradigma de C/S. Cuando una gran cantidad de clientes envían
peticiones al mismo servidor al mismo tiempo, puede ser que cause muchos de los
apuros para el servidor. Más clientes hay más apuros que tiene. Mientras que, el
31
Complejo turístico Las Poncianas Tesis
ancho de banda de la red del P2P se compone de cada nodo en la red, cuanto más
nodos hay, mejor el ancho de banda que tiene. • El paradigma de C/S no tiene la
buena robustez como red del P2P. Cuando el servidor está caído, las peticiones de los
clientes no pueden ser satisfechas. En la mayor parte de redes del P2P, los recursos
están situados generalmente en nodos por todas partes de la red. Aunque algún nodos
salen o abandonan la descarga; otros nodos pueden todavía acabar de descargar
consiguiendo datos del resto de los nodos en la red. • El software y el hardware de un
servidor es generalmente muy terminantes. Un hardware regular del ordenador
personal puede no poder servir sobre cierta cantidad de clientes. Mientras tanto, una
edición casera de Windows XP incluso no tiene IIS a trabajar como servidor. Necesita
software y el hardware específico satisfacer el trabajo. Por supuesto, aumentará el
coste.
ELEMENTOS DE CONSTRUCCIÓN DE LA ARQUITECTURA CLIENTE
/SERVIDOR
CLIENTE
Ejecuta la parte del cliente de la aplicación. Corre en un sistema operativo que ofrece
una interfaz grafica de usuario a una interfaz grafica orientado al objeto y puede
acceder a servicios distribuidos donde quiera que se encuentren. Lo más común es
que el sistema operativo descargue en el elemento del middleware la responsabilidad
de manejar los servicios locales.
SERVIDOR
Ejecuta la parte de la aplicación del servidor la aplicación del servidor suele correr
sobre un paquete comercial de software del servidor. Las cinco plataformas del
servidor que compiten en la creación de la próxima generación de aplicaciones cliente
/servidor son los servidores de base de datos de SQL, los monitores de TP, los
servidores de Groupware los servidores de objetos y el Web. La parte del servidor
depende del sistema operativo para la interfaz.
32
Complejo turístico Las Poncianas Tesis
EAServer de Sybase.
Adicionalmente, Power Builder posee un objeto nativo para la gestión de datos
llamado DataWindow, el cual puede ser usado para crear, editar y visualizar datos
de una base de datos. Este objeto patentado por Sybase da al desarrollador un
conjunto amplio de herramientas para especificar y controlar la apariencia y
comportamiento de la interfaz de usuario, y también brinda acceso simplificado al
C# .Net
VARIABLES
Identificadores son conjuntos de letras y/o números que se utilizan para simbolizar
todos los elementos que en un programa son definibles por el usuario (programador o
ingeniero de software) del mismo, como son las variables donde se almacenan datos,
funciones( pequeños módulos con código), etiquetas, clases, objetos, etc.
En C# Net una variable se define como un identificador que se utiliza para almacenar
todos los datos generados durante la ejecución de un programa.
33
Complejo turístico Las Poncianas Tesis
En particular cada tipo de dato que se menciona aquí es en realidad un OBJETO, que
se deriva a su vez de una clase que provee el framework de microsoft net es por eso
que se incluye la clase de la cual proviene el tipo de dato.
Es decir en un programa se podrá declarar una variable por ejemplo float pi; o
también se podrá declarar y crear un objeto derivado de esa clase, por ejemplo
System.Float alfa = new System.Float(); para este caso observar y tener en cuenta
dos cosas:
Como objeto alfa podrá usar todas las propiedades y métodos asociadas al objeto,
mas adelante se ve un tema donde se analiza mas a fondo el concepto de clases y
objetos.
Por ultimo variables strings o variables cadena, se podrán crear usando la clase
STRING que creara un objeto de dicho tipo.
34
Complejo turístico Las Poncianas Tesis
string ciudad=“tijuana”;
float pi=3.1416;
Recordar que c# net es case-sensitive, es decir reconoce la diferencia que hay entre
mayúsculas y minúsculas, en otras palabras no declarar alfa e intentar capturar o
desplegar ALFA.
Para convertir números a strings no hay problema, solo cargar o asignar el numero o
variable numérica a la variable string, pero para convertir strings a números existen y
deberán usarse los métodos Parse de las clases respectivas ejemplo;
String beta1=“100”;
Las secuencias de escape que reconoce c#(csharp) y que se pueden usar dentro de
una string son:
Escape
Character
Sequence
' \'
” \”
\
Alert \a
Backspace \b
Form feed \f
New Line \n
Carriage Return \r
Horizontal Tab \t
Vertical Tab \v
A unicode character specified by its number e.g. \u200 \u
A unicode character specified by its hexidecimal code e.g.
\x
\xc8
Null \0 (zero)
35
Complejo turístico Las Poncianas Tesis
Introducción.
Query Languaje).
36
Complejo turístico Las Poncianas Tesis
MYSQL
MySQL es un sistema gestor de bases de datos relacionales en SQL, esto significa que
permite la gestión de los datos de una BBDD relacional usando un lenguaje de
consulta estructurado. Y, por tanto, que a partir de una oración, MySQL llevará a cabo
una determinada acción sobre nuestra base de datos.
Código abierto
MySQL es una aplicación de Código abierto y por lo tanto es gratuita, nos permite
redistribuir una aplicación que la contenga y nos permite incluso modificar su código
para mejórala o adaptarla a nuestras necesidades.
Facilidad
MySQL es un sistema fácil de instalar y configurar en servidores Windows, Linux... y
enseguida nos permite ejecutar sencillas consultas de SQL como la siguiente:
37
Complejo turístico Las Poncianas Tesis
Funcionalidad
Quizás, en este apartado, MySQL flaquea un poco frente a sus rivales, pero sin
embargo dispone de muchas funciones vitales para el desarrollo profesional cómo
puede ser el volcado online, la duplicación.
Portabilidad
MySQL puede correr en la inmensa mayoría de sistemas operativos, por lo que junto a
otro lenguaje de programación de lado de servidor de alta portabilidad como Java,
PHP, Perl... nos permite el desarrollo de aplicaciones Web fáciles de migrar y el acceso
y copia de los datos desde cualquier Sistema Operativo.
Velocidad
Por nuestra experiencia con diferentes sistemas de bases de datos y avalados por
estudios recientes, podemos afirmar que MySQL es un sistema con una velocidad
superior a sus rivales, incluido Oracle, a la hora de realizar instrucciones SQL..
INSTALACIÓN DE MYSQL
38
Complejo turístico Las Poncianas Tesis
39
Complejo turístico Las Poncianas Tesis
Principios de desarrollo
El RUP está basado en 6 principios clave:
Adaptar el proceso
Balancear prioridades
El desarrollo de software no lo hace una única persona sino múltiples equipos. Debe
haber una comunicación fluida para coordinar requerimientos, desarrollo,
evaluaciones, planes, resultados, etc.
40
Complejo turístico Las Poncianas Tesis
Este principio dominante motiva el uso de conceptos reutilizables tales como patrón
del software, lenguajes 4GL o esquemas (frameworks) por nombrar algunos. Esto
previene a los ingenieros de software ir directamente de los requisitos a la codificación
de software a la medida del cliente. Un nivel alto de abstracción también permite
discusiones sobre diversos niveles arquitectónicos. Éstos se pueden acompañar por las
representaciones visuales de la arquitectura, por ejemplo con 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
1. Fases
Ciclo de Vida RUP
HITO
Tiempo
Figura 5: Ciclo de Vida de UML
Cada fase concluye con un hito bien definido donde deben tomarse ciertas
decisiones.
El RUP divide el proceso de desarrollo en ciclos, teniendo un producto final al
final de cada ciclo, cada ciclo se divide en fases que finalizan con un hito donde
se debe tomar una decisión importante
Planificación de Fases
Todas las fases no son idénticas en términos de horario y esfuerzo. Aunque
esto varia, considerablemente dependiendo del proyecto, un ciclo de desarrollo
inicial típico para un proyecto, un ciclo de desarrollo inicial típico para un
proyecto mediano debe de anticiparse la siguiente distribución entre el esfuerzo
y el horario:
41
Complejo turístico Las Poncianas Tesis
42
Complejo turístico Las Poncianas Tesis
43
Complejo turístico Las Poncianas Tesis
44
Complejo turístico Las Poncianas Tesis
seguimiento del estado de cada una de sus etapas y la aportación de las herramientas
necesarias para gestionarlo.
Arquitecto
Análisis de Diseño de
Casos de Uso Casos de Uso
Diseñador de
Casos de Uso
Análisis de Diseño de
Objetos Objetos
Diseñador
45
Complejo turístico Las Poncianas Tesis
En RUP se define nueve flujos de trabajo distintos, separados en dos grandes grupos.
Los flujos de trabajo de ‘ingeniería’ son los siguientes:
• Modelado del negocio.
• Requisitos.
• Análisis y diseño.
• Implementación.
• Test.
• Despliegue.
de cómo una compañía planifica servir a sus clientes. Implica tanto el concepto
de estrategia como el de implementación. Comprende el conjunto de las
siguientes cuestiones:
2.2 Requerimientos
Las características de un requerimiento son sus propiedades principales. Un
conjunto de requerimientos en estado de madurez, deben presentar una serie
de características tanto individualmente como en grupo. A continuación se
presentan las más importantes.
Necesario: Un requerimiento es necesario si su omisión provoca una deficiencia
en el sistema a construir, y además su capacidad, características físicas o factor
de calidad no pueden ser reemplazados por otras capacidades del producto o
del proceso.
46
Complejo turístico Las Poncianas Tesis
2.4 Implementación
• Propósito:
– Definir la organización del código
– Implementar clases y objetos en forma de componentes (fuente,
ejecutables, etc.)
– Deben hacer los Test de unidad.
– Probar las componentes desarrolladas
– Integrar las componentes en un sistema ejecutable
47
Complejo turístico Las Poncianas Tesis
2.5 Prueba
Este flujo de Trabajo es el encargado de evaluar la calidad del producto que
estamos desarrollando, pero no para aceptar o rechazar el producto al final del
proceso de desarrollo, sino que debe ir integrado en todo el ciclo de vida.
• Propósito:
– Verificar la interacción entre los objetos
– Verificar la integración apropiada de componentes
– Verificar que se satisfacen los requerimientos
– Identificar los defectos y corregirlos antes de la instalación
2.6 Despliegue
El objetivo de este flujo de trabajo es producir con éxito distribuciones del
producto y distribuciones a los usuarios.
Actividades:
• Testear el producto en su entorno de ejecución final.
• Empaquetar el software para su distribución.
• Distribuir el software.
• Instalar el software.
• Proveer asistencia y ayuda a los usuarios.
• Formar a los usuarios.
• Forma de controlar los artefactos producidos por las personas que trabajan
en el proyecto.
• Algunos problemas habituales:
– Actualizaciones simultáneas
– Múltiples versiones
48
Complejo turístico Las Poncianas Tesis
2.8Gestión de proyectos
El objetivo de la administración de un producto es conseguir equilibrar el
completar los objetivos, administrar el riesgo y superar las restricciones para
desarrollar un producto que sea acorde a los requisitos de los usuarios.
Sus Aspectos:
• Planificar un proyecto iterativo y cada iteración particular.
• Administrar el riesgo.
• Monitorizar el progreso del proyecto a través de métricas.
2.9 Entorno
La finalidad de este workflow es de dar soporte al proyecto con las adecuadas
herramientas, procesos y métodos. Es decir tener a punto las herramientas que
se vayan a necesitar en cada momento, así como definir la instancia concreta
de proceso unificado que se va seguir.
Este flujo trabaja influyendo:
• Selección y adquisición de herramientas.
• Establecer y configurar las herramientas para que se ajusten a la
organización.
• Configuración del proceso.
• Mejora del proceso.
• Servicios técnicos.
3. Iteraciones
Una iteración es una secuencia de actividades con un plan establecido y un
criterio de evaluación, cuyo resultado es una versión de software ejecutable.
Esfuerzo de trabajo en un proyecto que recorre varias etapas de desarrollo (no
necesaria mente todas), y al final del cual se ha incrementado el material
disponible sobre el sistema.
49
Complejo turístico Las Poncianas Tesis
Actores
Un actor es algo con comportamiento, como una persona (identificada por un rol), un
sistema informatizado u organización, y que realiza algún tipo de interacción con el
sistema.. Se representa mediante una figura humana dibujada con palotes. Esta
representación sirve tanto para actores que son personas como para otro tipo de
actores.
DIAGRAMAS DE CLASE:
Un diagrama de clase sirve para visualizar las relaciones entre las clases que
involucran el sistema, las cuales pueden ser asociativas, de herencia y de uso.
Muestra los roles comunes y las responsabilidades de las entidades que proporcionan
el comportamiento del sistema
Un diagrama de clase muestra Clase (grupos de objetos que tienen las mismas
características y comportamiento) y sus relaciones.
Estos diagramas son los más comunes en el modelado de sistemas orientados
a objetos.
Un diagrama de clase esta compuesto por:
Clase
Relaciones entre clase
• nombre de la clase
• atributos de la clase
• operaciones de la clase
50
Complejo turístico Las Poncianas Tesis
DIAGRAMAS DE OBJETOS:
Un Diagrama de Objetos muestra una instancia prototípica de un diagrama de Clase
con el fin de ilustrar los objetos reales participantes en un determinado momento.
Un Diagrama de Objetos tienen los mismos elementos que un Diagrama de Clase pero
los objetos y sus atributos tienen valores desconocidos.
DIAGRAMAS DE SECUENCIA:
Un Diagrama de Secuencia objeto, poniendo énfasis entre objetos.
Un Diagrama de Secuencia esta compuesto por:
Objetos (o actores)
Línea de vida de un objeto
Activación o foco de Control
Mensajes
DIAGRAMA DE COLABORACIÓN:
Un Diagrama de Colaboración muestra la interacción de un conjunto de objetos,
poniendo énfasis en la estructura organizacional de los objetos que envían y recibe
mensajes
Un diagrama de colaboración esta compuesto por:
Objetos
Enlaces
Flujo de Mensajes.
DIAGRAMA DE ESTADOS:
Describe el comportamiento de un elemento del modelo, mostrando la posible
secuencia del estado en los que puede entrar el objeto y como cambia al reaccionar
ante un evento durante el ciclo de vida.
Un diagrama de estado esta compuesto por:
Estados
Eventos
Transiciones
DIAGRAMA DE ACTIVIDAD:
Muestra las operaciones que se realizan para conseguir un objeto. Es un caso especial
de un diagrama de estado donde todos los estados ejecutan una tarea. Se utiliza para
dar detalle a un caso de uso, modelando los flujos de trabajo u operaciones.
Un diagrama de actividad esta compuesto por:
Estados de actividad o simplemente Actividad
Estado de acción o simplemente Acción
51
Complejo turístico Las Poncianas Tesis
Transiciones
DIAGRAMA DE COMPONENTES:
Un diagrama de componentes muestra las dependencias lógicas entre componentes
software, tales como archivos de código fuente: binarios ejecutables, tablas, etc.
Un diagrama de componentes esta compuesto por:
Componentes
Interfase
Relaciones de realización y dependencia
DIAGRAMA DE DESPLIEGUE:
Muestra el hardware en donde será desplegado los componentes de nuestro sistema.
Esto significa que muestra las relaciones físicas entre el software y el hardware.
Un Diagrama de Despliegue esta compuesto por:
Nodos
Conexiones entre nodos
MODELO DE DOMINIO
Representa las clases (entidades) más importantes encontradas en el diagrama del
modelo del negocio de manera relacional, de acuerdo a las siguientes relaciones:
Tipo de Relaciones:
Uno – uno: Representada por el número 1
Cero – uno: Representada por la secuencia 0..1
Uno – muchos: Representada por la secuencia 1..*
Cero – muchos (n - m): Representada por la secuencia n..m, donde m≥n
DIAGRAMA DE COLABORACIONES:
Muestran no los mensajes a través de los cuales se produce la interacción entre los
objetos, como en Diagramas de Secuencia, sino también los enlaces entre los objetos,
se trata pues de una mezcla de Diagrama de Objetos y Diagrama de Secuencia.
Mientras que en el Diagrama de Secuencia se hace énfasis en el tiempo, en el de
colaboración el énfasis está puesto en la estructura (objeto y sus enlaces).
52
Complejo turístico Las Poncianas Tesis
Muestra una secuencia de mensajes que implementan una operación o una transición
es decir los objetos, enlaces y mensajes.
DIAGRAMA DE SECUENCIAS:
Muestra el orden cronológico de la transmisión de mensaje entre los objetos. Un
objeto se representa por un rectángulo con una línea vertical debajo de el, la línea
vertical permite crear los mensajes entre los objetos.
PAQUETE DE SERVICIO:
Un servicio representa un conjunto coherente de funcionalidad relacionado a acciones.
Es decir un paquete de funcionalidad que es empleado en diversos casos de uso.
53
Complejo turístico Las Poncianas Tesis
CAPITULO III:
APLICACIÓN DE LA METODOLOGIA
54
Complejo turístico Las Poncianas Tesis
FASE DE NEGOCIOS
Pictograma
Registrar
Documentos
documento
De alquileres
Alquiler
Registros de Registros de Registros de
Habitación Clientes Alquiler
Registros de
Espacio Ayudante
55
Complejo turístico Las Poncianas Tesis
56
Complejo turístico Las Poncianas Tesis
Modelo de Dominio
Cliente Habitacion
(f rom Business Object Model) (f rom Business Object Model)
1 1..* 1..*
1..* 1 1
Alquiler TipoHabitacion
(f rom Business Object Model)
(f rom Business Object Model)
0..* 0..1
0..* 0..1
Servicios Espacio
(f rom Business Object Model)
(f rom Business Object Model)
57
Complejo turístico Las Poncianas Tesis
FASE DE REQUERIMIENTO.
58
Complejo turístico Las Poncianas Tesis
59
Complejo turístico Las Poncianas Tesis
REGISTRAR CLIENTE
Descripción El Sistema deberá permitir al Recepcionista
Registrar Clientes, verificar si se encuentra
registrado sino se procede al registro.
Según se describe en el siguiente caso de uso:
Precondición Ninguno.
Secuencia Normal Paso Acción
1 Buscar al Cliente
2 Registrar al Cliente
Postcondición Ninguno.
Excepciones Paso Acción
1 En caso de que el cliente a ingresar este
almacenado, el sistema mostrará un
mensaje de advertencia, donde
informará que ya se ha registrado el
dato, y se negará el acceso
Rendimiento El sistema deberá realizar las acciones descritas
en los pasos 1 y 2 en un máximo de ½ minuto.
Frecuencia Este caso de uso se espera que se lleve a cabo
15 veces al día.
Importancia Muy Importante
Urgencia Importante
Comentarios Ninguno
60
Complejo turístico Las Poncianas Tesis
Precondición Ninguno.
Postcondición Ninguno.
Urgencia Importante
Comentarios Ninguno
61
Complejo turístico Las Poncianas Tesis
62
Complejo turístico Las Poncianas Tesis
REGISTRAR HABITACION
Descripción El Sistema deberá permitir al Asistente de
Administración Registrar Habitación, verificar
si se encuentra registrado sino se procede al
registro, según el tipo de la habitación.
Según se describe en el siguiente caso de uso:
Precondición Ninguno.
Secuencia Normal Paso Acción
1 Buscar tipo habitación
2 Registrar habitación
Postcondición Ninguno.
Excepciones Paso Acción
1 En caso de que la habitación a ingresar
este almacenado, el sistema mostrará un
mensaje de advertencia, donde
informará que ya se ha registrado el
dato, y se negará el acceso
Rendimiento El sistema deberá realizar las acciones descritas
en los pasos 1 y 2 en un máximo de ½ minuto.
Frecuencia Este caso de uso se espera que se lleve cada vez
que se construye alguna habitación.
Importancia Muy Importante
Urgencia Importante
Comentarios Ninguno
63
Complejo turístico Las Poncianas Tesis
FASE DE ANALISIS
Diagrama de Colaboración
DC_Registrar Cliente
64
Complejo turístico Las Poncianas Tesis
65
Complejo turístico Las Poncianas Tesis
DC_Registrar Habitación
66
Complejo turístico Las Poncianas Tesis
67
Complejo turístico Las Poncianas Tesis
68
Complejo turístico Las Poncianas Tesis
FASE DE DISEÑO
Interfaces de Usuarios
Acceso Usuario
if st_origen.tip='I' then
n=n+1
messagebox("Error","El usuario se encuentra inhabilitado")
return
end if
69
Complejo turístico Las Poncianas Tesis
if cla=st_origen.pas then
xid_usu=st_origen.id
messagebox("Sistema","Le Damos la Vienvenida Sr(a): "+st_origen.des )
close(w_menu)
openwithparm(w_menu,st_origen)
close(w_acceso)
return
else
n=n+1
messagebox("Error","Error clave Incorrecto")
sle_2.setfocus( )
sle_2.text=""
return
end if
end if
if n=3 then
close(w_acceso)
end if
EVENT MODIFIED;SLE_2.SETFOCUS( )
end event
Menú
70
Complejo turístico Las Poncianas Tesis
FORWARD
global type w_menu from window
end type
type mdi_1 from mdiclient within w_menu
end type
end forward
on w_menu.create
if this.MenuName = "m_menu" then this.MenuID = create m_menu
this.mdi_1=create mdi_1
this.Control[]={this.mdi_1}
end on
on w_menu.destroy
if IsValid(MenuID) then destroy(MenuID)
destroy(this.mdi_1)
end on
71
Complejo turístico Las Poncianas Tesis
Registro Cliente
Consulta Cliente
72
Complejo turístico Las Poncianas Tesis
type variables
oletxnobject ole_cliente
string tip_gra
string xest_cli
end variables
event ue_ingresar_campos();integer f_a
this.tab_1.tabpage_2.dw_1.accepttext( )
f_a=this.tab_1.tabpage_2.dw_1.getrow( )
choose case tip_gra
case 'M'
ole_cliente.id = tab_1.tabpage_2.dw_1.getitemnumber( f_a ,"id")
end choose
ole_cliente.id_per = this.tab_1.tabpage_2.dw_1.getitemnumber( f_a ,"id_per")
ole_cliente.raz_soc = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"raz_soc")
ole_cliente.dir_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"dir_cli")
ole_cliente.tel_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"tel_cli")
ole_cliente.ema_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"ema_cli")
ole_cliente.doc_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"doc_cli")
ole_cliente.cla_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"cla_cli")
ole_cliente.est_cli = this.tab_1.tabpage_2.dw_1.getitemstring( f_a ,"est_cli")
end event
EVENT INACTIVAR_BOTON();
this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
Event Activar_Boton();
This.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
end event
EVENT OPEN;
connect using sqlca;
tab_1.tabpage_1.dw_2.settransobject(sqlca)
if ban_cli=true then
xest_cli='A'
else
73
Complejo turístico Las Poncianas Tesis
xest_cli=''
end if
tab_1.tabpage_1.dw_2.retrieve('%',xest_cli+'%' )
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_cliente=create oletxnobject
rpt=ole_cliente.connecttonewobject("LibHotel.cliente")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
end if
if IsValid(this) then
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
EVENT CLICKED
;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_cliente.triggerevent("activar_boton")
tab_1.selectedtab=2
tab_1.tabpage_2.dw_1.setcolumn( "id_per")
tab_1.tabpage_2.dw_1.setfocus( )
tab_1.tabpage_2.dw_1.setitem(tab_1.tabpage_2.dw_1.getrow( ) ,"est_cli","A" )
end event
EVENT CLICKED;
integer id
id=tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id")
tab_1.tabpage_2.dw_1.retrieve(string( id))
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_cliente.triggerevent("activar_boton")
tab_1.selectedtab=2
74
Complejo turístico Las Poncianas Tesis
end event
EVENT UE_DIGITA;p
arent.dw_2.retrieve( '%'+this.text +'%',xest_cli+'%' )
end event
event doubleclicked;integer id
if ban_cli=true then
id=this.getitemnumber( this.getrow( ), "id")
closewithreturn(w_cliente,id)
else
parent.pb_6.event clicked( )
end if
end event
EVENT CLICKED;
w_cliente.triggerevent("open")
w_cliente.triggerevent("inactivar_boton")
end event
EVENT CLICKED;
string rpt
w_cliente.triggerevent("ue_ingresar_campos")
rpt=ole_cliente.eliminar()
if rpt='1' then
messagebox("Grabar","Los datos Fueron Grabados Correctamente")
else
messagebox("Adventencia","Los datos estan siendo usados o no se puede
eliminar",StopSign!)
end if
disconnect using sqlca;
w_cliente.triggerevent("open")
w_cliente.triggerevent("inactivar_boton")
end event
75
Complejo turístico Las Poncianas Tesis
else
messagebox("Error","Los datos Fueron mal Ingresados o ya Existen",StopSign!)
end if
EVENT UE_ENTER
Send(Handle(this),256,9,Long(0,0))
return 1
end event
end event
Registro de Habitación
76
Complejo turístico Las Poncianas Tesis
Consulta de Habitación
event activar_boton();this.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
77
Complejo turístico Las Poncianas Tesis
end event
event inactivar_boton();this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
if ban_hab=true then
xest_hab='D'
else
xest_hab=' '
end if
tab_1.tabpage_1.dw_2.retrieve('%' ,xest_hab+'%')
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_habitacion=create oletxnobject
rpt=ole_habitacion.connecttonewobject("LibHotel.habitacion")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
78
Complejo turístico Las Poncianas Tesis
end if
if IsValid(this) then
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
event clicked;close(parent)
end event
event clicked;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_habitaciones.triggerevent("activar_boton")
tab_1.selectedtab=2
tab_1.tabpage_2.dw_1.setcolumn( "id_tip")
tab_1.tabpage_2.dw_1.setfocus( )
tab_1.tabpage_2.dw_1.setitem(tab_1.tabpage_2.dw_1.getrow( ) ,"est_hab","A" )
end event
event clicked;string id
id=string(tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id"))
tab_1.tabpage_2.dw_1.retrieve(id)
//messagebox("",id)
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_habitaciones.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
event doubleclicked;integer id
string est_hab
if ban_hab=true then
id=this.getitemnumber( this.getrow( ) , "id")
est_hab=this.getitemstring( this.getrow( ),"est_hab")
if est_hab="I" then
messagebox("Informacion","La Habitacion se encuentra Ocupada")
return
elseif est_hab='R' then
messagebox("Informacion","La Habitacion se encuentra Reservada")
return
79
Complejo turístico Las Poncianas Tesis
end if
xpre_esp=this.getitemnumber( this.getrow( ),"tipo_habitacion_pre_tip")
xdes_hab=this.getitemstring( this.getrow( ),"tipo_habitacion_des_tip")
xnro_hab=string(this.getitemnumber( this.getrow( ),"nro_hab"))
closewithreturn(w_habitaciones,id)
else
parent.pb_6.event clicked( )
end if
end event
event clicked;w_habitaciones.triggerevent("open")
w_habitaciones.triggerevent("inactivar_boton")
end event
end if
disconnect using sqlca;
w_habitaciones.triggerevent("open")
w_habitaciones.triggerevent("inactivar_boton")
end event
event ue_enter;Send(Handle(this),256,9,Long(0,0))
return 1
end event
80
Complejo turístico Las Poncianas Tesis
Registro de Espacio
Consulta de Espacio
81
Complejo turístico Las Poncianas Tesis
type variables
oletxnobject ole_espacio
string tip_gra
string xest_esp
end variables
event activar_boton();this.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
end event
event inactivar_boton();this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
82
Complejo turístico Las Poncianas Tesis
if ban_esp=true then
xest_esp='D'
else
xest_esp=' '
end if
tab_1.tabpage_1.dw_2.retrieve('%',xest_esp+'%' )
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_espacio=create oletxnobject
rpt=ole_espacio.connecttonewobject("LibHotel.espacio")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
end if
if IsValid(this) then
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
event clicked;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_espacios.triggerevent("activar_boton")
tab_1.selectedtab=2
tab_1.tabpage_2.dw_1.setcolumn( "des_esp")
tab_1.tabpage_2.dw_1.setfocus( )
tab_1.tabpage_2.dw_1.setitem(tab_1.tabpage_2.dw_1.getrow( ) ,"est_esp","A" )
83
Complejo turístico Las Poncianas Tesis
on tab_1.destroy
destroy(this.tabpage_1)
destroy(this.tabpage_2)
event rowfocuschanged;this.selectrow( 0, false)
this.selectrow( this.getrow( ) ,true)
end event
event doubleclicked;integer id
string est_esp
if ban_esp=true then
id=this.getitemnumber( this.getrow( ) , "id")
est_esp=this.getitemstring( this.getrow( ),"est_esp")
if est_esp="I" then
messagebox("Informacion","El Espacio se encuentra Ocupada")
return
elseif est_esp='R' then
messagebox("Informacion","El Espacio se encuentra Reservada")
return
end if
event clicked;integer id
id=tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id")
tab_1.tabpage_2.dw_1.retrieve(string( id))
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_espacios.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
event ue_enter;Send(Handle(this),256,9,Long(0,0))
return 1
end event
84
Complejo turístico Las Poncianas Tesis
if rpt='1' then
messagebox("Grabar","Los datos Fueron Grabados Correctamente")
end if
commit using sqlca;
w_espacios.triggerevent("open")
w_espacios.triggerevent("inactivar_boton")
end event
event clicked;w_espacios.triggerevent("open")
w_espacios.triggerevent("inactivar_boton")
end event
Registros de Servicios
85
Complejo turístico Las Poncianas Tesis
Consulta de Servicios
event activar_boton();this.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
end event
86
Complejo turístico Las Poncianas Tesis
event inactivar_boton();this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
end event
tab_1.tabpage_1.dw_2.retrieve('%',xest_ser+'%')
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_servicio=create oletxnobject
rpt=ole_servicio.connecttonewobject("LibHotel.servicios_adicionales")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
end if
if IsValid(this) then
87
Complejo turístico Las Poncianas Tesis
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
event clicked;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_servicio.triggerevent("activar_boton")
tab_1.selectedtab=2
tab_1.tabpage_2.dw_1.setcolumn( "des_ser")
tab_1.tabpage_2.dw_1.setfocus( )
tab_1.tabpage_2.dw_1.setitem(tab_1.tabpage_2.dw_1.getrow( ) ,"est_ser","A" )
end event
event clicked;close(parent)
end event
event doubleclicked;integer id
string est_ser
if ban_ser=true then
id=this.getitemnumber( this.getrow( ) , "id")
est_ser=this.getitemstring( this.getrow( ),"est_ser")
if est_ser="I" then
messagebox("Informacion","EL Servicio se encuentra Ocupada")
return
elseif est_ser='R' then
messagebox("Informacion","El Servicio se encuentra Reservada")
return
end if
88
Complejo turístico Las Poncianas Tesis
event clicked;integer id
id=tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id")
tab_1.tabpage_2.dw_1.retrieve(id)
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_servicio.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
event ue_enter;Send(Handle(this),256,9,Long(0,0))
return 1
end event
end if
commit using sqlca;
w_servicio.triggerevent("open")
w_servicio.triggerevent("inactivar_boton")
end event
event clicked;w_servicio.triggerevent("open")
w_servicio.triggerevent("inactivar_boton")
end event
89
Complejo turístico Las Poncianas Tesis
90
Complejo turístico Las Poncianas Tesis
type variables
oletxnobject ole_persona
string tip_gra
end variables
event activar_boton();this.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
end event
event inactivar_boton();this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
91
Complejo turístico Las Poncianas Tesis
end event
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_persona=create oletxnobject
rpt=ole_persona.connecttonewobject("LibHotel.persona")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
end if
if IsValid(this) then
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
event clicked;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_personas.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
92
Complejo turístico Las Poncianas Tesis
event clicked;integer id
id=tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id")
tab_1.tabpage_2.dw_1.retrieve( id)
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_personas.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
event ue_enter;Send(Handle(this),256,9,Long(0,0))
return 1
end event
event clicked;string rpt
integer f_a
w_personas.triggerevent("ue_ingresar_campos")
if tip_gra='N' then
rpt=ole_persona.grabar()
elseif tip_gra='M' then
rpt=ole_persona.actualizar()
end if
if rpt='1' then
messagebox("Grabar","Los datos Fueron Grabados Correctamente")
end if
disconnect using sqlca;
w_personas.triggerevent("open")
w_personas.triggerevent("inactivar_boton")
end event
93
Complejo turístico Las Poncianas Tesis
w_personas.triggerevent("open")
w_personas.triggerevent("inactivar_boton")
end event
event clicked;w_personas.triggerevent("open")
w_personas.triggerevent("inactivar_boton")
end event
94
Complejo turístico Las Poncianas Tesis
end variables
event activar_boton();this.pb_1.enabled=false
this.tab_1.tabpage_1.pb_6.enabled=false
this.tab_1.tabpage_2.pb_4.enabled=true
this.tab_1.tabpage_2.pb_5.enabled=true
this.tab_1.tabpage_2.pb_3.enabled=true
end event
event inactivar_boton();this.pb_1.enabled=true
this.tab_1.tabpage_1.pb_6.enabled=true
this.tab_1.tabpage_2.pb_4.enabled=false
this.tab_1.tabpage_2.pb_5.enabled=false
this.tab_1.tabpage_2.pb_3.enabled=false
end event
95
Complejo turístico Las Poncianas Tesis
end event
tab_1.tabpage_2.dw_1.settransobject(sqlca)
integer u_f
tab_1.tabpage_2.dw_1.reset( )
tab_1.tabpage_2.dw_1.insertrow( 0)
u_f=tab_1.tabpage_2.dw_1.rowcount( )
tab_1.tabpage_2.dw_1.scrolltorow(u_f)
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=yes")
int rpt
ole_tipoHabitacion=create oletxnobject
rpt=ole_tipoHabitacion.connecttonewobject("LibHotel.tipo_habitacion")
environment lenv_local
int li_retorno
long ll_xUnits,ll_yUnits
li_retorno = GetEnvironment (lenv_local)
if li_retorno <1 then
Return -1
end if
if IsValid(this) then
ll_xUnits = PixelsToUnits(lenv_local.ScreenWidth,XPixelsToUnits!)
ll_yUnits = PixelsToUnits(lenv_local.ScreenHeight,yPixelsToUnits!)
this.x = (ll_xUnits - this.Width) / 2
this.y = ((ll_yUnits - 400) - this.Height) / 2
end if
end event
event clicked;tip_gra='N'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_tipo_habitacion.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
event clicked;integer id
id=tab_1.tabpage_1.dw_2.getitemnumber( tab_1.tabpage_1.dw_2.getrow( ) , "id")
tab_1.tabpage_2.dw_1.retrieve(string( id))
tip_gra='M'
tab_1.tabpage_2.dw_1.modify( "datawindow.readonly=no")
w_tipo_habitacion.triggerevent("activar_boton")
tab_1.selectedtab=2
end event
96
Complejo turístico Las Poncianas Tesis
on tabpage_2.destroy
event clicked;w_tipo_habitacion.triggerevent("open")
w_tipo_habitacion.triggerevent("inactivar_boton")
end event
event clicked;string rpt
w_tipo_habitacion.triggerevent("ue_ingresar_campos")
rpt=ole_tipoHabitacion.eliminar()
if rpt='1' then
messagebox("Grabar","Los datos Fueron Grabados Correctamente")
end if
disconnect using sqlca;
w_tipo_habitacion.triggerevent("open")
w_tipo_habitacion.triggerevent("inactivar_boton")
end event
event ue_enter;Send(Handle(this),256,9,Long(0,0))
return 1
end event
97
Complejo turístico Las Poncianas Tesis
Alquiler de Habitación/Servicios
Alquiler de Espacios
98
Complejo turístico Las Poncianas Tesis
99
Complejo turístico Las Poncianas Tesis
100
Complejo turístico Las Poncianas Tesis
: Recepcionista : Buscar cli ente : Buscar tipo cliente : Grabar cliente : Elim inar cl iente : M odi ficar : Cliente : T ipo cliente
: GUI_Registrar Cliente
Click registrar cliente
Buscar cliente
Lee
Objeto cliente
Leer
Click nuevo
Activa frame
Click grabar
Click modificar
Modificar datos
Actualiza
Msg "Datos modificados correctamente"
Click cancelar
101
Complejo turístico Las Poncianas Tesis
: Grabar habitacion
: Buscar tipo habitacion : Modificar habitacion
: Eliminar habitacion : Habitacion : Tipo habitacion
: Secretaria : GUI_Reg_Habitacion : Buscar habitacion
Administrativa
Seleccionar pagina
Buscar habitacion
Leer
Obj. Habitacion
Click nuevo
Activa frame
Click grabar
Grabar habitacion
Crear
Msg. Datos grabado correctamente
Click modificar
Modificar habitacion
Actualizar
Click eliminar
Eliminar habitacion
Eliminar
Click cancelar
Desactiva frame
102
Complejo turístico Las Poncianas Tesis
: Bus car Espacion : Grabar espacio : Modificar espacio : Elim inar espacio : Espacio
: Secretaria : GUI_Reg_Espacio
Adm inis trativa
Click GUI_Reg_Es pacio
Selecciona pagina
Click nuevo
Activa fram e
Click grabar
Grabar espacio
Crear
Ms g Datos grabados correctam ente
Click m odificar
Modificar es pacio
Actualizar
Click cancelar
Desactiva fram e
103
Complejo turístico Las Poncianas Tesis
Selecciona pagina
Buscar servicio
Leer
Obj. Servicio
Click nuevo
Activa frame
Click grabar
Grabar servicio
Crear
Msg Datos grabados correctamente
Click modificar
Modificar servicio
Actualizar
Click eliminar
Eliminar servicio
Elimina
Click cancelar
Desactiva frame
104
Complejo turístico Las Poncianas Tesis
Selecciona pagina
Buscar THabitac
Leer
Obj. THabitac
Click nuevo
Activa frame
Click grabar
Grabar THabitacion
Crear
Msg Datos grabados correctamente
Click modificar
Modificar TipoHabitacion
Actualizar
Click eliminar
Eliminar TipoHabitacion
Elimina
Click cancelar
Desactiva frame
105
Complejo turístico Las Poncianas Tesis
106
Complejo turístico Las Poncianas Tesis
Diagrama de Estado
Activo Ocupado
Reserva
De baja
Alquiler Reserva
107
Complejo turístico Las Poncianas Tesis
Mantenimiento
Registrar Cliente
Recepcionistas
(f rom Business Object Model)
(from Use-Case Model) Secretaria
Administrador
(f rom Use-Case Model)
Registrar Usuario
Registrar Habitacion
(from Use-Case Model)
(from Use-Case Model)
108
Complejo turístico Las Poncianas Tesis
Proceso
Reporte
109
Complejo turístico Las Poncianas Tesis
110
Complejo turístico Las Poncianas Tesis
FASE DE IMPLEMENTACION
Diagrama de Componentes
Sis_Hotel
LibHotel ADO.NET
DBMyHotel
111
Complejo turístico Las Poncianas Tesis
Componente LibHotel
LibHotel
Cliente
codigo
codigo_persona
razonsocial_nombreapellido
nro_documento_identidad
direccion Espacio Habitacion
Persona telef ono codigo codigo
codigo email descripcion icodigo_tipo_habitacion
descripcion clase_cliente precio numero_habitacion
estado estado estado esrado
Agregar() Agregar()
Modif icar() Modif icar()
Eliminar() Eliminar()
112
Complejo turístico Las Poncianas Tesis
Diagrama de Despliegue
Cli ente
Servi dor Base Datos
113
Complejo turístico Las Poncianas Tesis
114
Complejo turístico Las Poncianas Tesis
115
Complejo turístico Las Poncianas Tesis
TIPO DE DATO
ITEM DATOS RESPUESTA
116
Complejo turístico Las Poncianas Tesis
TIPO DE DATO
ITEM DATOS RESPUESTA
TIPO DE DATO
ITEM DATOS RESPUESTA
117
Complejo turístico Las Poncianas Tesis
TIPO DE DATO
ITEM DATOS RESPUESTA
Seleccionar
1 No dar click Error!
Comprobante
Seleccionar tipo de
2 No dar click Error!
alquiler
Ingresar seri de Error!
3 Ded3
comprobante
Ingresas Nro de Error!
4 De44r
Comprobantes
5 Ingresar Cliente 154/ Error!
118
Complejo turístico Las Poncianas Tesis
TIPO DE DATO
ITEM DATOS RESPUESTA
Seleccionar
1 No dar click Error!
Comprobante
Seleccionar tipo de
2 No dar click Error!
alquiler
Ingresar seri de Error!
3 Ded3
comprobante
Ingresas Nro de Error!
4 De44r
Comprobantes
5 Ingresar Cliente 154/ Error!
119
Complejo turístico Las Poncianas Tesis
120
Complejo turístico Las Poncianas Tesis
Conclusiones
Se obtuvo la información necesaria para el inicio del Proyecto.
Se realizo el Análisis, Diseño, desarrollo y comprobación del Sistema
Informático.
Mediante el proceso sistemático de alquiler de habitaciones y de espacios es
posible realizar registros y búsquedas de la información en forma rápida.
La implantación de este sistema optimizará las tareas operativas de los
trabajadores del Complejo Turístico “Las Poncianas”.
La no disponibilidad o localización de la información provoca costes de
personal, tiempo, recursos y dinero innecesarios.
Para la totalidad del desarrollo del proyecto se a utilizado Power Builder, C# y
MySql como RBMS.
En la fase de análisis se ha utilizado el software RATIONAL ROSE.
Para el diseño de las bases de datos se ha utilizado DBDesigner como
modelador y MySql como RBMS.
El desarrollo del Sistema Informático de proceso de registro y verificación de
los clientes y servicios nos da como resultado la racionalización de los recursos,
facilidad y agilidad en la recuperación de información, disminución de la masa
documental, aumento de la efectividad y eficiencia administrativa.
121
Complejo turístico Las Poncianas Tesis
Recomendaciones
Tomar como base los lineamientos, conceptos y políticas del presente estudio.
Evitar duplicar tareas ya que las buenas decisiones requieren buena
información.
Brindar la capacitación a los usuarios a fin de que puedan operar en forma
adecuada el sistema a implantar.
Ampliar la envergadura de este proyecto proponiendo el desarrollo de un
sistema informático Web para los diversos requerimientos que se plantea el
hotel.
122
Complejo turístico Las Poncianas Tesis
123
Complejo turístico Las Poncianas Tesis
ANEXOS
a. Es rápida.
b. Si toma su tiempo.
c. A veces.
4. ¿A los clientes se les registra sus datos cada vez que asisten a alquilar una
habitación?
a. Es rápida.
b. A veces demora.
c. Es lenta por se tiene que buscar los archivos uno por uno.
a. Si se pierde información.
b. No se pierde información.
c. A veces existe perdida de Información.
124
Complejo turístico Las Poncianas Tesis
c. No tiene conocimiento.
a. Si beneficiará al Hotel.
b. No será de beneficio.
c. Podría beneficiarse pero no es seguro.
a. Si tengo experiencia.
b. Tengo poca experiencia.
c. No tengo experiencia.
125