viernes, 26 de abril de 2013

Diseño de un Sistema Información para control y seguimiento del hotel “Diamante Azul”

1.1 Introducción

Hoy en día el manejo de la información es de vital importancia, por ello los sistemas de información son los pilares fundamentales de las actividades de una organización, ya que una empresa requiere de información correcta y oportuna.
En el caso de las empresas hoteleras que brindan servicios, manejan una gran cantidad de información en diferentes procesos como la administración, gerencia, recepción, contabilidad, almacén, etc. Toda esta información debe ser organizada y clasificada de modo que la gerencia pueda realizar una mejor toma de decisiones.

El presente trabajo tomara como caso de estudio al Hotel “Diamante Azul”. El hotel contaba, hace más de un año, con un sistema automatizado de control de seguridad con cámaras de vigilancia, que en la actualidad no se encuentra en funcionamiento por problemas técnicos.

Fuera de eso no cuenta con ningún otro sistema, es por ello que el presente trabajo intenta poner en marcha la construcción de un prototipo de seguimiento y control de la información para el mencionado hotel, de manera que el prototipo cumpla características de usabilidad y eficiencia utilizando metodologías adecuadas para el desarrollo de producto software.

1.2 Antecedentes

El hotel “Diamante Azul”, se encuentra establecido en el medio hace ya 4 años, prestando a todos sus clientes el servicio de hospedaje en habitaciones acordes a sus necesidades, incluyendo baño privado, desayuno buffet, TV cable, salón de eventos, atención médica, acceso a Internet entre otros servicios.

El Hotel acoge principalmente a visitantes extranjeros, que llegan con bastante afluencia al hotel, esto debido a la variada publicidad que realiza en coordinación con las agencias de viajes internacionales.

En la carrera de Informática existen proyectos de grado similares al trabajo que se propone, los cuales han sido desarrollados en semestres anteriores alcanzando los objetivos planteados.

Sistema de Información Hotelera [Cabero, 2000], cuyo propósito es mejorar los procesos administrativos y operativos para una atención más eficiente al huésped.

Sistema de Seguimiento y Control para la Hotelería Boliviana [Loza, Mendoza, 2001], cuyo propósito es resolver las dificultades y deficiencias que se presentan en algunos procesos del hotel.

Sistema de Seguimiento y Control, Caso: Hotel Sagárnaga [Cuela, 2007], cuyo propósito es automatizar los procesos administrativos y operativos de un hotel.

Los proyectos mencionados brindan una clara idea de la importancia de la información para una empresa hotelera.

1.3 Problema de la Investigación

Planteamos un listado con los problemas que pudimos encontrar en el hotel “Diamante Azul”.

  1. El registro de huésped es manual
  2. El registro de bienes del hotel es manual.
  3. El servicio de reserva de habitación es manual
  4. La planilla de sueldos de empleados es elaborado manualmente
  5. Libro de ingreso y salidas de los empleados manual
  6. Control administrativo se realiza manualmente
  7. El hotel registra a sus huéspedes solo  con nombre y no con documento.
  8. El hotel no guarda datos de información 
  9. Perdida de información administrativa
  10. El rendimiento de personal no es óptimo
  11. La información de servicios del hotel no es accesible al huésped
  12. Demora en los servicios de atención al huésped
  13. El pago es al contado y no con tarjetas de crédito
  14. El hotel está ubicado en una zona poco transitada
  15. Poca publicidad del hotel

Problema
Causa
Efecto
Solución
Se tarda mucho en el registro de los huéspedes El registro del libro de ingreso y salidas de huéspedes se lo realiza en forma manual El proceso resulta moroso al momento de realizar reportes Automatizar el registro de huéspedes
Perdida de la planilla de sueldos La planilla de sueldos de empleados es elaborado manualmente En muchos casos se puede pagar doble al mismo empleado Llevar un Control Automatizado de la planilla de sueldos
No es posible determinar en forma inmediata, si una habitación está disponible El servicio de reserva de habitación es manual Molestia en los posibles huéspedes al momento de registrarse Mostrar en forma grafica ,mediante el prototipo el estado de cada habitación
La información de servicios que el hotel presta no es accesible a un posible cliente que este en línea No se cuenta con un sitio Web Pérdida de clientes Diseñar un sitio Web que detalle los servicios que brinda el hotel


1.3.1 Formulación del problema

¿Cómo se puede hacer que los procesos manuales de control y seguimiento del Hotel “Diamante Azul” sean automatizados y que brinden información actualizada, confiable y oportuna a los administrativos del hotel?

1.4 Objetivo


1.4.1 Objetivo General

Diseñar el prototipo de un sistema informático para control y seguimiento del hotel “Diamante Azul”, que brinde información confiable y oportuna para una buena toma de decisiones.

1.4.2 Objetivos Específicos

  • Integrar todos los procesos que el hotel necesita para un mejor control de los mismos como ser los procedimientos de registro de los huéspedes, registro de reservaciones en línea, etc.
  • Estudiar métodos y metodologías para el desarrollo de software.
  • Estudiar estrategias de prueba.
  • Estudiar técnicas de prueba.
  • Estudiar métricas de prueba.

1.5 Justificación


1.5.1 Justificación Económica

El presente proyecto se justifica económicamente al proponer un software de aplicación como producto final, para mejorar el procesamiento y manejo de la información el cual disminuirá las pérdidas económicas al no contar con un sistema automatizado.

1.5.2 Justificación Técnica

El presente proyecto se justifica técnicamente por la utilización de tecnología informática avanzada como las redes de computadoras, Bases de Datos y Modelo Cliente/Servidor.

1.5.3 Justificación Social

La implantación del sistema ayudara al personal involucrado al mejor desenvolvimiento de sus funciones ya que al hotel acuden huéspedes de diferentes estratos sociales de Bolivia y del Extranjero.

1.6 Alcances

Para desarrollar el prototipo propuesto es necesario realizar un diagnostico de la estructura y funcionamiento del hotel resolviendo las dificultades y deficiencias más importantes.
  • Implementar los módulos de registro de huéspedes y registro de habitaciones.
  • Desarrollar un módulo que permita imprimir reportes de huéspedes alojados en cualquier momento.
  • Desarrollar un módulo de reservas en línea.
  • Elaborar un manual para el manejo del prototipo.

Si te gustó esta publicación no olvides compartirlo. Espero sus comentarios.



jueves, 18 de abril de 2013

Instalar UniFi Controller en Linux Ubuntu/Zentyal

Si contamos con productos de Ubiquiti Networks, en este caso UniFi, tendremos la necesidad de instalar UniFi Controller para administrar nuestros puntos de acceso. El CD de instalación que viene junto con los puntos de acceso UniFi cuenta con el instalador pero solo esta disponible para Windows.
Uno de los aspectos a destacar de esta empresa es que brinda soporte para entornos GNU/Linux a través de repositorios (familia Debian) o por medio de binarios y su instalación no tiene ninguna complejidad para quienes conocen un poquito de Linux.

A continuación se detallan los pasos a seguir.

Ingresemos a nuestra consola virtual y pasemos a ser superusuarios:

$ sudo -s

Editemos el archivo sources.list agregando los repositorios para nuestra distribución y versión.

# nano /etc/apt/sources.list

deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
deb http://www.ubnt.com/downloads/unifi/distros/deb/precise precise ubiquiti

Añadamos las claves publicas de los repositorios añadidos anteriormente

apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
apt-key adv --keyserver keyserver.ubuntu.com --recv C0A52C50


Actualizamos nuestros repositorios

apt-get update

E instalamos unifi controller.

apt-get install unifi

Y punto final.

La verdad es muy pero muy simple y no hay donde perderse.

Como comentario, Ubuntu Precise 12.04 es la version base para Zentyal 3.0.2. Zentyal entre muchas de sus funciones nos permite realizar control de tráfico, monitoreo de red, proxy, autenticación, portal cautivo y muchos otros servicios mas.

En los posteriores post estaré configurando esos servicios integrando UniFi Controller y Zentyal para tener mayor control de mi red WiFi.

Saludos.

Si te gustó esta publicación no olvides compartirlo. Espero sus comentarios.



miércoles, 17 de abril de 2013

Configurar sitios virtuales e implementar Web Hosting en Apache 2 bajo GNU/Linux CentOS 6.4

Si queremos alojar mas de un website en nuestro servidor Web necesitamos configurar hosts virtuales dentro de Apache (httpd). Cada uno de los VirtualHost es independiente del otro. Lo mas común es que cada sitio sea gestionado por un usuario diferente.
Siguiendo esa lógica creemos un usuario al que se le asignará nuestro sitio.

# useradd vhuser01 -s /sbin/nologin
# passwd vhuser01


Dentro de la carpeta personal de vhuser01 adicionemos un directorio denominado public_html

# mkdir /home/vhuser01/public_html
# chown vhuser01.vhuser01 /home/vhuser01/public_html
# chmod 755 /home/vhuser01/public_html
# chmod 755 /home/vhuser01


Ahora que tenemos el directorio base es hora de configurar httpd. Primero realizamos una copia de seguridad a nuestro archivos de configuración:

# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.back

Abrimos el archivo httpd.conf

# vi /etc/httpd/conf/httpd.conf

Y buscamos las siguientes lineas comentadas:

#NameVirtualHost *:80

#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>


Descomentamos esas sentencias y realizamos las modificaciones pertinentes:

NameVirtualHost *:80

<VirtualHost *:80>
    ServerAdmin webmaster@initwebsite.com
    DocumentRoot /home/vhuser01/public_html
    ServerName initwebsite.com
    ServerAlias www.initwebsite.com
</VirtualHost>


En esencia, la configuración anterior nos indica donde almacenaremos nuestras páginas web (/home/vhuser01/public_html), el nombre de nuestro dominio (initwebsite.com) y el puerto de escucha para nuestro sitio (80).
Por defecto, SElinux bloquea todo intento de acceso a los directorios personales. Por eso ahora debemos permitir que httpd pueda leer archivos del directorio personal

# setsebool -P httpd_enable_homedirs 1

Para que nuestro dominio "initwebsite.com" sea traducido a una dirección IP  necesitaremos añadir este dominio a nuestro cliente web.

Modifiquemos el archivo hosts:

# vi /etc/hosts

192.168.40.24   www.initwebsite.com


Y por fin podemos ejecutar nuestro navegador web favorito y colocar la URL initwebsite.com para ver nuestro sitio.

Pagina de inicio por defecto de httpd centos 6.4 - host virtuales - webhosting

Si te gustó esta publicación no olvides compartirlo. Espero sus comentarios.



jueves, 11 de abril de 2013

Instalar UniFi Controller en CentOS 6.6 y Red Hat 6

Para instalar UniFi Controller en nuestro servidor debemos realizar los siguientes pasos:

Primero añadimos el repositorio del servidor de base de datos no relacional MongoDB creando el archivo 10gen.repo dentro del directorio /etc/yum.repos.d/ con el siguiente contenido:

# vi /etc/yum.repos.d/10gen.repo

- Para sistemas CentOS o Red Hat de 64 bits (x86_64):


[10gen]
name=10gen Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0
enabled=1

- Para sistemas CentOS o Red Hat de 32 bits (i686):


[10gen]
name=10gen Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686
gpgcheck=0
enabled=1

Ahora instalamos todos los paquetes necesarios para que UniFi Controller funcione adecuadamente

# yum install mongo-10gen mongo-10gen-server java-1.7.0-openjdk

Paralelamente podemos descargar la última versión del instalador de la aplicación Unifi Controller (UniFi.unix.zip).

Suponiendo que el archivo comprimido se descargó en el directorio "Descargas", entonces ejecutamos el siguiente comando para descomprimir el archivo zip:

# unzip /home/tu_usuario/Descargas/UniFi.unix.zip -d /usr/local/

Para ejecutar el servicio UniFi Controller debemos escribir la siguiente sentencia:

# java -jar /usr/local/UniFi/lib/ace.jar start

Ahora accedamos a nuestra aplicación localmente a través de la URL https://127.0.0.1:8443
Si deseamos administrar remotamente nuestro servidor UniFi es necesario abrir el puerto 8443 en el cortafuegos. Para esto modifiquemos la configuración del firewall del sistema operativo.

# vi /etc/sysconfig/iptables

Debajo de la linea

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

Añadimos la linea

-A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT

Guardamos el archivo y reiniciamos el cortafuegos.

# service iptables restart

Ahora podremos acceder desde cualquier navegador web remoto a través de la dirección IP configurada en el servidor, por ejemplo, https://192.168.40.1:8443
Ahora bien, como Unifi Controller debe estar siempre activo y además debe tener la posibilidad de ejecutarse en cuanto arranque el sistema, debemos asociarlo al sistema operativo como un servicio realizando los siguientes pasos:

Creamos el archivo unifi

# vi /etc/init.d/unifi

#!/bin/bash
# chkconfig: 2345 95 20
# Provides: UniFi Control Software
# Description: Use Java to start /usr/local/UniFi/lib/ace.jar
# to allow the wireless access point controlling
# software and provide device management
# to UniFi wireless network.

case "$1" in
  start)
    echo -n "Starting UniFi controller...   "
    java -jar /usr/local/UniFi/lib/ace.jar start &
    echo " [ OK ]"
    ;;

  stop)
    echo -n "Stopping UniFi controller...   "
    java -jar /usr/local/UniFi/lib/ace.jar stop &
    echo " [ OK ]"
    ;;

  restart)
    echo -n "Restarting UniFi controller... "
    java -jar /usr/local/UniFi/lib/ace.jar stop &
    sleep 1
    java -jar /usr/local/UniFi/lib/ace.jar start &
    echo " [ OK ]"
    ;;

  *)
    echo "usage: service unifi {start|stop|restart}"
    ;;
esac

exit 0

Asignamos el atributo de ejecución al archivo creado:

# chmod a+x /etc/init.d/unifi

Añadimos el script como un servicio para que inicie al arrancar el sistema operativo:

# chkconfig unifi on

Y con ello terminamos la instalación completa de Unifi Cotroller en CentOS o RedHat 6.

Si te gustó esta publicación no olvides compartirlo. Espero sus comentarios.