Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SENA
RUTA (606153)
2016
Tutor
SENA
RUTA (606153)
2016
Plantilla Diseo del Sistema
1. Introduccin
Este sistema permitir a los clientes realizar reservas y pedidos sobre la carta,
y a los meseros conocer el estado de cada mesa y saber los platos a servir en
cada momento.
El principal objetivo de este software es permitir a los clientes de un
restaurante obtener una mejor atencin y a los camareros facilitarles y
organizarles el trabajo.
Entre las ventajas de la implantacin de este sistema destacan entre otras que
los clientes no debern sufrir esperas para realizar su pedido (en cuanto
lleguen podrn comenzar a pedir y cuando confirmen el pedido podrn pagar
con la tarjeta si lo desean), lo que agilizar el servicio y permitir conseguir una
mayor satisfaccin del cliente.
e) Funcin de pedidos
Tipos de usuario:
Clientes:
Aplicacin Web. Aplicacin que los usuarios utilizan desde un servidor web
a travs de Internet o una intranet. La facilidad para actualizar y mantener
aplicaciones sin la necesidad de instalar programas en los millones de
clientes potenciales es una de las principales causas de su popularidad.
1.4. Referencias
Gua del IEEE std. 830 1998 para la especificacin de requisitos del Software.
2. Representacin de la arquitectura.
Limitaciones hardware
Para que la aplicacin funcione correctamente y que los tiempos de espera sean
aceptables, es recomendable una buena conexin a Internet. En cuanto a la
instalacin del servidor web con soporte de ASP.NET y el de la base de datos, se
podr realizar en un computador de prestaciones medias, pero para soportar una
mayor carga de usuarios es recomendable un ordenador de mayores prestaciones.
3. Vista lgica
Modelo
En esta capa, se representa la informacin sobre la cual el sistema operar.
Para este sistema, recordando la figura 2.6 "Diagrama de Clases", las
entidades como Quejas, Comentarios, Usuarios, Solicitudes, entre otros,
seran accedidas por esta capa para poder manejar su informacin.
Vista
Esta capa se encarga de ilustrar los elementos de la capa de modelo en
formas adecuadas para que el usuario pueda interactuar con la informacin
del sistema. En este sistema, lo usual ser renderizar pginas HTML con
informacin cargada dinmicamente por cdigo.
Controlador
Esta capa define el comportamiento del sistema. Esta se encarga de
procesar y responder a eventos que los usuarios realizan, por lo que se
encarga de modificar los modelos y vistas.
Detalles Men. Sucede algo parecido. Es necesario mostrar informacin del men
seleccionado, y, adems, todos los productos que no forman parte del men, con la
posibilidad de filtrarlos por tipo de producto. De nuevo tenemos que mostrar
informacin independiente del men seleccionado.
Reservas. Este contexto muestra un listado de las reservas del cliente autenticado
en el sistema, tan slo tiene una relacin de dependencia contextual con Mesa,
para recuperar el nmero de la misma, y permite realizar las operaciones creacin
y cancelacin de una reserva.
4. Vista de datos
Tabla Usuario
Tipo de usuario:
G. Gerente
Tipousuari
o char(1)
C. Cliente
M. Mesero
Tabla Cliente
Varchar
nombre (45) Nombre del cliente.
Varchar
telefono (20) Telfono de contacto del cliente.
Varchar
Apellidos (45) Apellido del cliente.
Varchar
email (20) Direccin de correo del cliente.
Usuario_IdUsuari
o int Clave ajena al atributo id de la tabla usuario.
Tabla Pedido
pagado tinyint
0: Pedido sin pagar.
1: Pedido pagado.
Indica si el pedido ha sido confirmado por el
confirmado tinyint
0: Pedido sin confirmar.
1: Pedido confirmado.
Indica si todos los consumos del pedido han
sido ya servidos:
servido tinyint
0: Quedan productos por servir.
1: Todo el pedido est servido.
pasado al histrico:
estado Tinyint
0: Pedido inactivo.
1: Pedido activo.
Cliente_idClient
e Int Clave ajena a la tabla cliente.
Mesero_idMese
ro int Clave ajena a la tabla mesero.
Tabla Mesa
puestos int
Mesa
.
Tabla Mesero
Varchar(
nombre 45) Nombre del camarero.
Varchar(
apellido1 45) Primer apellido del camarero.
Varchar(
foto 45) Fotografa en la que aparece el camarero.
Tabla Reserva
Cliente_idClien
te int Clave ajena a la tabla cliente.
Tabla
comentario
idComentari
o int Identificador de la tabla.
Varchar(4
asunto 5) Explicacin breve del comentario.
Varchar(2
Observaciones 55) Comentario del usuario.
Tabla Consumo
cantidad int
forman la consumicin.
servida int
servidas.
Pedido_idPedi
do int Clave ajena a la tabla pedido.
Itemconsumo-
IdItemconsumo int Clave ajena a la tabla itemconsumo.
Tabla Itemconsumo
idItemConsu
mo int Identificador de la tabla.
tipo char
P: Producto
M: Men
Tabla Men
Nombr
e Tipo Descripcin
ItemConsumo_IdInten
consumo int Clave ajena a la tabla itemconsumo.
Tabla Producto
TipoProducto_idTipo
Producto int Clave ajena a la tabla tipoproducto.
ItemConsumo_IdInt
enconsumo int Clave ajena a la tabla itemconsumo.
Tabla Productosmenu
Interfaces de usuario
Invitado. Tendr acceso a consultar informacin general y productos del
restaurante as como enviar comentarios.
Cliente. Tendr el mismo acceso que el usuario invitado y adems
podr realizar reservas de mesas va web, consultar sus pedidos
anteriores, realizar y modificar pedidos en el restaurante.
Camarero. Podr ver las mesas que hay libres, asignarlas a clientes y
ver el estado de los pedidos de todas las mesas, modificar pedidos y
marcarlos como servidos.
Gerente. Podr realizar tareas de gestin: aadir, modificar y eliminar
tipos de producto, productos, mens y empleados.
Interfaces hardware
Para poder utilizar la aplicacin, el usuario necesitar un dispositivo que
tenga instalado un navegador web; no tendr importancia la plataforma
utilizada.
Tambin ser necesario una conexin a Internet, ya sea mediante un
mdem de marcado, tarjeta Ethernet, inalmbrica, etc.
Interfaces software
Todos los contextos a los que pueden acceder los usuarios annimos son de
exploracin, como se puede ver su mapa navegacional es muy sencillo, con slo
un nivel. Ninguno de los contextos tiene acceso a la base de datos as que
omitimos el apartado de Contextos navegacionales.
As que tenemos una biblioteca de clases formada por tantos ficheros como
tablas hay en la base de datos, cada fichero con las operaciones necesarias
para la aplicacin web. Lo podemos ver en la siguiente imagen donde
aparece el explorador de soluciones del proyecto:
6. Vista de Implementacin
Se considera que las tecnologas adecuadas para realizar el Proyecto son las
siguientes: Base de Datos Como servidor de Bases de Datos se usar MySQL,
ya que est ampliamente extendido, es de cdigo abierto y fcil de administrar.
Adems est muy bien integrado con PHP que es el lenguaje de programacin
elegido para el lado del servidor.
Servidor Web Como servidor Web se elige Apache HTML que es de libre
distribucin y es tambin muy ampliamente utilizado.
Lenguaje de Programacin Para programar la aplicacin en el servidor se elige
PHP, que es un lenguaje sencillo, potente, desarrollado precisamente para
pginas Web dinmicas, con interfaz sencilla para acceder a Base de Datos
(muy integrado con MySQL) y que adems es de libre distribucin.
Como alternativa interesante al uso de PHP se tiene el lenguaje Perl, pero no
se considera su utilizacin debido a que el cdigo no se integra en el fichero
HTML sino que est en ficheros separados, lo que dificultara el desarrollo y el
mantenimiento
6.1 Herramientas de Desarrollo e implementacin
Nuestra aplicacin ser construida sobre tres servidores, dos de cdigo abierto: un
servidor HTTP Apache y un servidor de base de datos MySQL, y un servidor de
correo Mercury que no es libre ni de cdigo abierto, pero que s dispone de una
versin gratuita siempre que su uso sea privado y sin fines comerciales, que es
nuestro caso.
Utilizamos el lenguaje ASP.NET (con VISUAL BASIC), AJAX y javascript para
crear pginas web dinmicas. Resulta importante destacar tambin la utilizacin
del protocolo HTTPS, que permite enviar informacin entre pginas de manera
segura mediante cifrado SSL, as que cuando nos autentificamos en la aplicacin
web ya sea como cliente, camarero o gerente las pginas se muestran utilizando
este protocolo seguro. A continuacin describiremos dichos componentes, as
como tambin las tecnologas en las que se sustentan.
Xampp. Es un servidor independiente de plataforma, software libre, que
consiste principalmente en la base de datos MySQL, el servidor Web Apache y los
intrpretes para lenguajes de script: PHP y Perl. No obstante, nosotros lo hemos
utilizado con el lenguaje ASP.NET, gracias al mdulo modaspnet. Incluye mdulos
como OpenSSL y phpMyAdmin para la gestin de las bases de datos.
MySQL. Es uno de los SGBD ms empleados del mercado para aplicaciones web
debido a su sencillez. Es relacional, multihilo y multiusuario. Pertenece a Sun
Microsystems.
Los protocolos https son utilizados por navegadores como: Safari (navegador),
Internet Explorer, Mozilla Firefox, Opera,... entre otros.
Es utilizado principalmente por entidades bancarias, tiendas en lnea, y cualquier
tipo de servicio que requiera el envo de datos personales o contraseas.
El puerto estndar para este protocolo es el 443.
Para conocer si una pgina web que estamos visitando, utiliza el protocolo https y
es, por tanto, segura en cuanto a la transmisin de los datos que estamos
transcribiendo, debemos observar si en la barra de direcciones de nuestro
navegador, aparece https al comienzo, en lugar de http.
Algunos navegadores utilizan un icono (generalmente un candado) en la parte
derecha de la barra de direcciones para indicar la existencia de un protocolo de
comunicaciones seguro e incluso cambian el color del fondo de la barra de
direcciones por amarillo (Firefox) o verde (Internet Explorer) para identificar
pginas web seguras.
6.2 Paquetes/Componentes
DAO Este ltimo componente, brinda los mecanismos necesarios para poder
interactuar con la base de datos sin necesidad de usar SQL directamente. A travs
del Entity Framework, esto es posible por el mapeo que se realiza entre las clases
del sistema y las tablas de la base de datos.