Escolar Documentos
Profissional Documentos
Cultura Documentos
INSTITUTO TECNOLÓGICO
Del Istmo
PROYECTO:
SISTEMA DE ADMINISTRACIÓN PARA WINGS ARMY SALINA
CRUZ EN LÍNEA
NOMBRE DE LA EMPRESA:
CONSTRUCCIÓN Y SERVICIOS FATO S.A DE C.V
RFC DE LA EMPRESA:
CSF140102HD6
NOMBRE DEL ASESOR INTERNO:
ING.JUVENAL RASGADO SANCHEZ
NOMBRE DEL ASESOR EXTERNO:
ING.EDGAR MARTINEZ SANCHEZ
NOMBRE DEL ALUMNO: N° CONTROL:
RUTH GONZÁLEZ JIMÉNEZ 12190291
ESPECIALIDAD:
ING.SISTEMAS COMPUTACIONALES
CLAVE DE LA ESPECIALIDAD:
ISIC-2010-224
DURACION DE RESIDENCIA:
500 HORAS
FECHA DE INICIO: FECHA DE TERMINCION:
01-FEBRERO-2017 01-AGOSTO-2017
I. Agradecimientos
Agradezco primeramente a Dios por la vida que me da, por haber estado conmigo
en todo este recorrido de mi vida y por darme la oportunidad de poder cumplir uno
de mis más grandes sueños el graduarme de la universidad.
A mis padres por su cariño, guía y apoyo que me han dado para poder lograr a
realizar uno de los anhelos más grandes de mi vida, fruto del inmenso amor,
apoyo y confianza que en mi se depositó, por los grandes esfuerzos y sacrificios
que han hecho, con los cuales eh logrado terminar mis estudios profesionales que
constituyen el legado más grande que pudiera recibir y por el cual les viviré
eternamente agradecidos.
A mis hermanos, novio y amigos que nunca dudaron de mí sino que siempre me
brindaron de su apoyo y me alentaron con sus buenos consejos.
2
II. Resumen
Con las nuevas tecnologías que se tiene hoy en día, muchas empresas tienen la
mejor comodidad con sus negocios, tienen una buena administración de ella y les
facilita acceder a su plataforma desde cualquier lugar, guardando las
informaciones de las empresas de una forma más segura y confiable.
3
Índice
I. Agradecimientos ............................................................................................... 2
Índice ....................................................................................................................... 4
1. Introducción ...................................................................................................... 9
2.1 Historia...................................................................................................... 11
2.4 Valores...................................................................................................... 12
4. Objetivos ......................................................................................................... 17
5. Justificación .................................................................................................... 18
4
6.1.3 Usuarios................................................................................................. 20
6.6.3Ventajas. ................................................................................................. 33
5
6.7.1 Concepto. .............................................................................................. 34
6.8 Php............................................................................................................... 35
6
6.13 Uml............................................................................................................. 46
7
10. Fuentes de información. .............................................................................. 66
Índice de figuras
Figura 1 Cronograma de la empresa ..................................................................... 14
Figura 2 Croquis de la empresa ............................................................................ 15
Figura 3 Diagrama entidad-relación ...................................................................... 51
Figura 4 Diagrama de clases................................................................................. 60
Figura 5 Diagrama de casos de uso ...................................................................... 61
Figura 6 Proceso gestionar datos del menú .......................................................... 62
Figura 7 Proceso realizar venta............................................................................. 63
Figura 8 Proceso gestionar almacén ..................................................................... 64
Índice de tablas
Tabla 1 Tabla normalizada .................................................................................... 53
Tabla 2 Descripción de la tabla usuario ................................................................ 55
Tabla 3 Descripción de la tabla venta ................................................................... 55
Tabla 4 Descripción de la tabla categoría ............................................................. 56
Tabla 5 Descripción de la tabla menú ................................................................... 56
Tabla 6 Descripción de la tabla mesa ................................................................... 57
Tabla 7 Descripción de la tabla producto .............................................................. 57
Tabla 8 Descripción de la tabla muestra ............................................................... 58
Tabla 9 Descripción de la tabla ingrediente .......................................................... 58
Tabla 10 Descripción de la tabla producto- ingrediente ........................................ 59
Tabla 11 Descripción de la tabla cliente ................................................................ 59
8
1. Introducción
Así mismo brinda el acceso a toda variedad de reportes en tiempo real, para
saber la situación de tu restaurante al instante y desde cualquier lugar, donde solo
las personas autorizadas podrán ingresar a la página.
9
y bajas los productos e ingredientes, altas y bajas de usuarios al sistema,
asignación de permisos. El sistema contará con tres tipos de usuarios:
Administrador, cajero y mesero.
10
2. Descripción de la empresa u organización y área donde se
realizó la residencia.
Correo: administración@construccionesfato.com
2.1 Historia.
11
2.2 Misión.
2.3 Visión.
2.4 Valores.
Calidad.
Ética.
Eficiencia.
Seguridad
Compromiso.
Responsabilidad.
12
13
2.5 Organigrama.
ADMINISTRADOR
UNICO (1)
BRENDA G. LUNA SANTIAGO MARIA L. TORAL JOSE LUIS JOSE A. CAMPAN EDGAR MARTINEZ
COORDINADOR DE OBRA RASGADO CORONADO VAZQUEZ SANCHEZ
brenda.luna@construccionesfato.com AREA GONZALEZ COMPRAS INFORMATICA
ADMINISTRATIVA COORDINADOR compras2@constr edgar.martinez@c
marialuisa@constru DE SIST. DE uccionesfato.com onstruccionesfato.
ccionesfato.com GESTION com
luis.coronado@co
JAVIER VELEZ CRUZ JESUS JIMENEZ
nstruccionesfato.c
RESIDENTE DE MORGAN
om SEIGY ADRIAN
OBRA ANALISTA P.U LORENA MENDOZA LOPEZ TORRES
javier.velez@constr jesus.jimenez@cons MARTINEZ COMPRAS
uccionesfato.com truccionesfato.com RECUERSOS almacen@constru
HUMANOS ccionesfato.com
RANGEL NUÑEZ lorena.mendoza@co
LOPEZ EDMUNDO nstruccionesfato.co
RESIDENTEDE OBRA RAMIREZ GUZMAN m
edmundo.ramirez@co ANALISTAP.U
nstruccionesfato.com edmundo.ramirez@ NUÑEZ LORENZO
construccionesfato.c EUGENIA
KARLA M. GARCIA om AUX. CONTABLE
ROSAS eugenia.nuñez@co
MEDIO AMBIENTE WHILSON JIMENEZ nstruccionesfato.co
karla.garcia@constr MARTINEZ
uccionesfato.com ANALISTA P.U
DULCE AZUCENA
whilson.jimenez@c
VICHIDO CARRASCO
onstruccionesfato.c
AUX. CONTAABLE
SALVADOR RAMOS om
azucena.vichido@c
RUIZ
onstruccionesfato.c
CALIDAD
om
salvador.ramos@co
nstruccionesfato.co
14
2.6 Croquis de localización de la empresa “Construcción y Servicios FATO
S.A DE C.V”
15
3. Problemas a resolver priorizándolos.
16
4. Objetivos
17
5. Justificación
18
6. Marco teórico
6.1.1 Concepto.
19
6.1.3 Usuarios.
6.2.1 Concepto.
20
desarrollo, sin entrar en detalles de la parte interna, los cuales se
verán durante el proceso. Sin embargo es importante señalar que
una vez avanzado el paso de análisis, no puede haber vuelta atrás,
pues la metodología para el diseño de software con la cual se trabaja
no lo permitirá.
Diseño del Sistema: Todo lo que conlleva el armado de un diseño
para el sistema que vayas a utilizar, es lo que continua después del
análisis de requisitos. Aquí se elaborará lo que es la estructura del
sistema y se determinarán las especificaciones para cada una de las
partes del sistema que se planea desarrollar. Siendo del mismo
modo, una fase a la cual ya no se podrá volver después de haber
bajado al nivel 3.
Diseño del Programa: En este punto, aún no ingresamos a lo que es
la escritura de código, sin embargo ya se realizan los algoritmos que
se van a utilizar en la programación. Si bien recuerdas, un algoritmo
no necesariamente es código, simplemente tomas una hoja de papel
y escribes el algoritmo que vas a utilizar. Esto es precisamente lo
que se realiza en el paso número 3.
Codificación: Seguramente como programador, esta es la parte que
estabas esperando, pues ahora es momento de empezar a escribir
todo el código que será necesario para el desarrollo del software.
Para este punto, la velocidad y el tiempo que se requiera, dependerá
mucho del lenguaje de programación que vayas a utilizar. Pues
algunos lenguajes de programación permiten utilizar componente,
bibliotecas e incluso algunas funciones para reutilizar código, las
cuales podrán acelerar el proceso de codificación en gran manera.
Ejecución de Pruebas: La codificación ha terminado y ahora es
momento de verificar que nuestro sistema es realmente funciona,
antes de que el cliente empiece a utilizarlo. Este es precisamente el
objetivo de la fase 5 de pruebas. Aquí es recomendable que intentes
mover lo más que se pueda tu software, con el objetivo de dañarlo
21
intencionalmente, de este modo, si supera las pruebas de daño
realizadas por tí, entonces estará listo para el usuario final.
Verificación: Después de haber realizado una gran cantidad de
pruebas en la Fase 5, debemos migrar a la verificación. Esta fase
consiste en la ejecución del Software por parte del usuario final. Si la
fase cinco se realizó correcta y profundamente, el software no tendrá
ningún tipo de problema y el usuario final quedará satisfecho con el
resultado.
Mantenimiento: Seguramente te has dado cuenta, de que las
aplicaciones o el software actual, constantemente se está
actualizando. Esto se debe principalmente a que se le da
mantenimiento al software, se solucionan errores, se quitan algunos
bugs, se añaden funcionalidades, todo después de que el usuario
final ya lo ha probado y utilizado en su fase final. Esta es
posiblemente una de las fases más tediosas del modelo de
desarrollo de software, pues debes estar atento a los comentarios de
los usuarios, para ver qué cosas son las que no funcionan
correctamente y a las cuales hay que darles mantenimiento.
6.3.1 Concepto.
22
columnas y filas. Las columnas guardan una parte de la información sobre
cada elemento que queramos guardar en la tabla, cada fila de la tabla
conforma un registro.
6.3.2 Características.
6.3.3 Ventajas.
23
6.4 Sistemas Gestores Base de Datos (SGBD).
6.4.1 Concepto.
25
sobre el formato de los datos para facilitar su intercambio, pueden
ser estándares de documentación, procedimientos de actualización y
también reglas de acceso.
Mejora en la integridad de datos:
La integridad de la base de datos se refiere a la validez y la
consistencia de los datos almacenados. Normalmente, la integridad
se expresa mediante restricciones o reglas que no se pueden violar.
Estas restricciones se pueden aplicar tanto a los datos, como a sus
relaciones, y es el SGBD quien se debe encargar de mantenerlas.
Mejora en la seguridad:
La seguridad de la base de datos es la protección de la base de
datos frente a usuarios no autorizados. Sin unas buenas medidas de
seguridad, la integración de datos en los sistemas de bases de datos
hace que éstos sean más vulnerables que en los sistemas de
ficheros.
Mejora en la accesibilidad a los datos:
Muchos SGBD proporcionan lenguajes de consultas o generadores
de informes que permiten al usuario hacer cualquier tipo de consulta
sobre los datos, sin que sea necesario que un programador escriba
una aplicación que realice tal tarea.
Mejora en la productividad:
El SGBD proporciona muchas de las funciones estándar que el
programador necesita escribir en un sistema de ficheros. A nivel
básico, el SGBD proporciona todas las rutinas de manejo de ficheros
típicas de los programas de aplicación.
El hecho de disponer de estas funciones permite al programador
centrarse mejor en la función específica requerida por los usuarios,
sin tener que preocuparse de los detalles de implementación de bajo
nivel.
Mejora en el mantenimiento:
26
En los sistemas de ficheros, las descripciones de los datos se
encuentran inmersas en los programas de aplicación que los
manejan.
Esto hace que los programas sean dependientes de los datos, de
modo que un cambio en su estructura, o un cambio en el modo en
que se almacena en disco, requiere cambios importantes en los
programas cuyos datos se ven afectados.
Sin embargo, los SGBD separan las descripciones de los datos de
las aplicaciones. Esto es lo que se conoce como independencia de
datos, gracias a la cual se simplifica el mantenimiento de las
aplicaciones que acceden a la base de datos.
Aumento de la concurrencia:
En algunos sistemas de ficheros, si hay varios usuarios que pueden
acceder simultáneamente a un mismo fichero, es posible que el
acceso interfiera entre ellos de modo que se pierda información o se
pierda la integridad. La mayoría de los SGBD gestionan el acceso
concurrente a la base de datos y garantizan que no ocurran
problemas de este tipo.
Mejora en los servicios de copias de seguridad:
Muchos sistemas de ficheros dejan que sea el usuario quien
proporcione las medidas necesarias para proteger los datos ante
fallos en el sistema o en las aplicaciones. Los usuarios tienen que
hacer copias de seguridad cada día, y si se produce algún fallo,
utilizar estas copias para restaurarlos.
En este caso, todo el trabajo realizado sobre los datos desde que se
hizo la última copia de seguridad se pierde y se tiene que volver a
realizar. Sin embargo, los SGBD actuales funcionan de modo que se
minimiza la cantidad de trabajo perdido cuando se produce un fallo.
27
6.4.4 Desventajas.
Complejidad:
Los SGBD son conjuntos de programas que pueden llegar a ser
complejos con una gran funcionalidad. Es preciso comprender muy
bien esta funcionalidad para poder realizar un buen uso de ellos.
Coste del equipamiento adicional:
Tanto el SGBD, como la propia base de datos, pueden hacer que
sea necesario adquirir más espacio de almacenamiento. Además,
para alcanzar las prestaciones deseadas, es posible que sea
necesario adquirir una máquina más grande o una máquina que se
dedique solamente al SGBD. Todo esto hará que la implantación de
un sistema de bases de datos sea más cara.
Vulnerable a los fallos:
El hecho de que todo esté centralizado en el SGBD hace que el
sistema sea más vulnerable ante los fallos que puedan producirse.
Es por ello que deben tenerse copias de seguridad (Backup).
6.5 Xampp.
6.5.1 Concepto.
28
intérprete de Perl, servidores de FTP como ProFTPD o FileZilla FTP
Serve, etc. entre muchas cosas más.
Si alguna vez has intentado instalar Apache, sabes que no es una
tarea fácil, sin embargo con XAMPP todo es diferente.
6.5.3 Características.
29
licencia es software libre y protegerlo de intentos de apropiación que
restrinjan esas libertades a los usuarios.)
La filosofía de XAMPP, como lo indican en su sitio web, es crear una
distribución fácil de instalar, de tal manera que los desarrolladores
web principiantes cuenten con todo lo necesario ya configurado.
XAMPP solamente requiere descargar y ejecutar un archivo .zip, .tar,
o .exe, con unas pequeñas configuraciones en alguno de sus
componentes que el servidor Web necesitará. XAMPP.
Una de las características sobresalientes de este sistema es que es
multiplataforma, es decir, existen versiones para diferentes sistemas
operativos, tales como: Microsoft Windows, GNU/Linux, Solaris, y
MacOS X. Existen versiones para Linux (testeado para SuSE,
RedHat, Mandrake y Debian), Windows (Windows 98, NT, 2000, XP
y Vista), MacOS X y Solaris (desarrollada y probada con Solaris 8,
probada con Solaris 9).
6.5.4 Ventajas.
30
bastante tiempo. Sin embargo hay ocasiones en que es mejor dejar
atrás la comodidad por las siguientes razones:
No soporta MySQL desde la consola.
Xampp trae PhpMyAdmin para administrar las bases de datos
de MySQL, sin embargo para tareas más específicas es
mejor utilizar la consola (línea de comandos) y Xampp no la
soporta.
No se pueden actualizar individualmente las versiones de los
programas que instala.
Xampp trae las últimas versiones de las aplicaciones que
instala, sin embargo cuando pasa el tiempo y salen nuevas
versiones de las mismas, no queda otra salida que reinstalar
todo Xampp.
Dificultad para configurar aplicaciones de terceros.
Y si queremos instalar una aplicación para manejo de
subversiones en nuestro servidor. Si en Xampp se puede
mediante algún método alternativo (llamesehacks), pero
resultan bastante engorrosos y a veces inservibles.
6.5.5 Desventajas.
31
6.6 Mysql.
6.6.1 Concepto.
6.6.2 Características.
32
BAMP y WAMP (aplicables a Mac, Windows, Linux, BSD, Open
Solaris, Perl y Phyton entre otras).
Se están estudiando y desarrollando nuevas versiones de MySQL
que buscan presentar mejoras y avances para permitir un mejor
desempeño en toda aquella actividad que requiera el uso de bases
de datos relacionales. Entre estas mejoras podemos mencionar un
nuevo dispositivo de depósito y almacenamiento, backup para todos
los tipos de almacenamientos, replicación segura, planificación de
eventos y otras más.
6.6.3Ventajas.
33
6.6.4 Desventajas.
6.7 Apache.
6.7.1 Concepto.
6.7.2 Características.
34
Permite autenticación de base de datos basada en SGBD.
6.7.3 Ventajas.
6.7.4 Desventajas.
Falta de integración
Posee formatos de configuración NO estándar.
No posee un buen panel de configuración.
6.8 Php.
6.8.1 Concepto.
35
directamente en el documento HTML en lugar de llamar a un archivo
externo que procese los datos.
El código es interpretado por un servidor web con un módulo de procesador
de PHP que genera la página web resultante. PHP ha evolucionado por lo
que ahora incluye también una interfaz de línea de comandos que puede
ser usada en aplicaciones gráficas independientes. Puede ser usado en la
mayoría de los servidores web al igual que en casi todos los sistemas
operativos y plataformas sin ningún costo.
Fue desarrollado por el programador de origen danés Rasmus Lerdorf en
1994 con el propósito de facilitar el diseño de páginas web de carácter
dinámico. Actualmente el lenguaje sigue siendo desarrollado con nuevas
funciones por el grupo PHP.
Este lenguaje forma parte del software libre publicado bajo la licencia PHP,
que es incompatible con la Licencia Pública General de GNU debido a las
restricciones del uso del término PHP.
36
5. Capacidad de expandir su potencial utilizando módulos (llamados ext's o
extensiones).
6. Posee una amplia documentación en su sitio web oficial, entre la cual se
destaca que todas las funciones del sistema están explicadas y
ejemplificadas en un único archivo de ayuda.
7. Es libre, por lo que se presenta como una alternativa de fácil acceso para
todos.
8. Permite aplicar técnicas de programación orientada a objetos.
9. No requiere definición de tipos de variables aunque sus variables se
pueden evaluar también por el tipo que estén manejando en tiempo de
ejecución.
10. Tiene manejo de excepciones (desde PHP5).
11. Si bien PHP no obliga a quien lo usa a seguir una determinada metodología
a la hora de programar, aun haciéndolo, el programador puede aplicar en
su trabajo cualquier técnica de programación o de desarrollo que le permita
escribir código ordenado, estructurado y manejable. Un ejemplo de esto son
los desarrollos que en PHP se han hecho del patrón de diseño Modelo Vista
Controlador (MVC), que permiten separar el tratamiento y acceso a los
datos, la lógica de control y la interfaz de usuario en tres componentes
independientes.
12. Debido a su flexibilidad ha tenido una gran acogida como lenguaje base
para las aplicaciones WEB de manejo de contenido, y es su uso principal .
6.8.3 ventajas.
Es un lenguaje multiplataforma.
Completamente orientado al desarrollo de aplicaciones web dinámicas con
acceso a información almacenada en una Base de Datos.
El código fuente escrito en PHP es invisible al navegador y al cliente ya que
es el servidor el que se encarga de ejecutar el código y enviar su resultado
37
HTML al navegador. Esto hace que la programación en PHP sea segura y
confiable.
Capacidad de conexión con la mayoría de los motores de base de datos
que se utilizan en la actualidad, destaca su conectividad con MySQL y
PostgreSQL.
Capacidad de expandir su potencial utilizando la enorme cantidad de
módulos (llamados ext's o extensiones).
6.8.4 Desventajas.
6.9 JavaScript.
6.9.1 Concepto.
38
ser un arme de doble filo porque la simplicidad se basa en una
disponibilidad de objetos limitada, por lo que algunos procedimientos,
aparentemente muy sencillos, requieren script bastante complejos.
6.9.2 Ventajas.
6.9.3 Desventajas.
En el FrontEnd sus códigos son visibles, por lo tanto pueden ser leídos por
cualquier usuario.
Tiende a introducir gran cantidad de fragmentos de código en los sitios web.
Sus opciones 3D son limitadas, si se quiere utilizar este lenguaje de
programación para crear un juego, deben emplearse otras herramientas.
No es compatible en todos los navegadores de manera uniforme.
Los usuarios tienen la opción de desactivar JavaScript desde su navegador.
Sus Script son limitados por razones de seguridad y no es posible realizar
todo con JavaScript, por lo tanto es necesario complementarlo con otros
lenguajes evolucionados y más seguros. Esta es una de las características
39
de JavaScript que algunos expertos lo contemplan como una ventaja y
otros como una desventaja.
6.10 Codeigniter.
6.10.1 Concepto.
6.10.2 Características.
40
compartido, donde sólo tenemos un acceso por FTP para enviar los
archivos al servidor y donde no tenemos acceso a su configuración.
Compatibilidad: Codeigniter, al menos en el momento de escribir este
artículo de desarrolloweb.com, es compatible con la versión PHP 4, lo que
hace que se pueda utilizar en cualquier servidor, incluso en algunos
antiguos. Por supuesto, funciona correctamente también en PHP 5.
Actualizado: Desde la versión 2 de Codeigniter ya solo es compatible con la
versión 5 de PHP. Para los que todavía usen PHP 4 pueden descargar una
versión antigua del framework, como Codeigniter V 1.7.3, que todavía era
compatible. Estas versiones están en la página de descargas de
Codeigniter.
Facilidad de instalación: No es necesario más que una cuenta de FTP para
subir Codeigniter al servidor y su configuración se realiza con apenas la
edición de un archivo, donde debemos escribir cosas como el acceso a la
base de datos. Durante la configuración no necesitaremos acceso a
herramientas como la línea de comandos, que no suelen estar disponibles
en todos los alojamientos.
Flexibilidad: Codeigniter es bastante menos rígido que otros frameworks.
Define una manera de trabajar específica, pero en muchos de los casos
podemos seguirla o no y sus reglas de codificación muchas veces nos las
podemos saltar para trabajar como más a gusto encontremos. Algunos
módulos como el uso de plantillas son totalmente opcionales. Esto ayuda
muchas veces también a que la curva de aprendizaje sea más sencilla al
principio.
Ligereza: El núcleo de Codeigniter es bastante ligero, lo que permite que el
servidor no se sobrecargue interpretando o ejecutando grandes porciones
de código. La mayoría de los módulos o clases que ofrece se pueden
cargar de manera opcional, sólo cuando se van a utilizar realmente.
Documentación tutorializada: La documentación de Codeigniter es fácil de
seguir y de asimilar, porque está escrita en modo de tutorial. Esto no facilita
mucho la referencia rápida, cuando ya sabemos acerca del framework y
41
queremos consultar sobre una función o un método en concreto, pero para
iniciarnos sin duda se agradece mucho.
6.10.3 Ventajas.
6.10.4 Desventajas.
42
Debido a que pretende ser el núcleo de nuestra aplicación y no la
aplicación en sí no vienen integrado con ningún framework de
JavaScript.
6.11.1 Concepto.
6.11.2 Características.
44
6.12 FileZilla.
6.12.1 Concepto.
6.12.2 Características.
45
la edición de archivos remotos.
Keep-alive opción.
Registro en el archivo.
Sincronizada exploración de directorios.
búsqueda de archivos remoto.
6.12.3 Ventajas.
6.13 Uml.
6.13.1 Concepto.
6.13.2 Características.
46
Divide cada proyecto en un número de diagramas que representan las
distintas vistas del proyecto y juntos representan la arquitectura del mismo.
Permite describir un sistema en diferentes niveles de abstracción.
Se quiere convertir en un lenguaje estándar con el que sea posible modelar
todos los componentes del desarrollo de una aplicación, sin definir un
modelo de desarrollo.
6.13.5 Ventajas.
Diseño y documentación.
Código reutilizable.
Descubrimiento de fallas.
Ahorro de tiempo en el desarrollo del software.
Mucho más fáciles las modificaciones.
Más fácil comunicación entre programadores.
48
7. Procedimientos y descripción de las actividades realizadas.
Definir el problema.
El problema del restaurante Wings Army es que lleva el control de todas sus
ventas y compras registradas en un archivo de Excel, así como también lleva los
registros del almacén, de los productos, ingredientes y lleva los datos de sus
empleados de forma manual, esto implica que el encargado del restaurante tiene
que estar capturando todos los días los reportes de las ventas.
Entidades: Representa una “cosa”, "objeto" o "concepto" del mundo real con
existencia independiente, es decir, se diferencia únicamente de otro objeto o cosa,
incluso siendo del mismo tipo, o una misma entidad.
Relaciones: Una relación es una asociación entre dos o varias entidades, es decir
es el vínculo que existe entre dos o más entidades. Un conjunto de relaciones es
un conjunto de relaciones del mismo tipo. La asociación entre conjunto de
entidades se conoce como participación. La función que desempeña una entidad
en una relación se denomina rol de esa entidad. Una relación puede tener
atributos llamados atributos descriptivos.
Atributos: Los atributos son las características que definen o identifican a una
entidad. Estas pueden ser muchas, y el diseñador solo utiliza o implementa las
que considere más relevantes.
50
51
Figura 3 Diagrama entidad-relación
Para pasar a tablas todos los datos sin dejarnos nada, nos basaremos en la
siguiente regla del modelado entidad relación.
Para este modelo de entidad-relación del sistema de Wings Army el paso a tablas
quedaría de la siguiente forma; ver Tabla 1. Tabla Normalizada.
52
8. Resultados, planos, gráficas, prototipos, manuales,
programas.
Tabla Normalizadas
53
8.2 Diccionario de datos
El diccionario de datos de este sistema es para definir con precisión sobre los
datos que se manejan en estas tablas, evitando así malas interpretaciones o
ambigüedades. Las características de este dicionario de datos son:
Campo: Son los nombres de los atributos que componen cada tabla.
Tipo: Se refiere al tipo de datos que sera cada atributo entre ellos estan
Longitud: Se refiere a la longitud máxima que puede llegar a tener un tipo de dato
de cada uno de los campos de las tablas.
Llave:
o Primaria (Se refiere a una clave primaria que hará identificar de manera
única los registros de una tabla o bien las campos de cada tabla.)
o Foránea (La llave foránea es para poder relacionar una tabla con otra, a
través de sus llaves primarias).
54
Usuario
Campo Tipo Longitud Descripción Llave
Primaria Foránea
id_usu I 11 Id del usuario
nombre V 50 Nombre del usuario
Cajero TI 1 Es cajero
Mesero TI 1 Es mesero
Tabla Venta
Campo Tipo Longitud Descripción Llave
Primaria Foránea
id_venta I 11 Id del la venta
55
Tabla categoría
Campo Tipo Longitud Descripcion Llave
Primaria Foránea
Id_categ I 11 Id de la categoria
Tabla Menú
Campo Tipo Longitud Descripción Llave
Primaria Foránea
id_menu I 11 Id del tipo de operación
prepara V 50 Preparacion
cantid I 11 Cantidad
Tabla Mesa
Campo Tipo Longitud Descripcion Llave
Primaria Foránea
Id_mesa I 11 Id de las mesas
56
Nombre V 50 Nombre
Descrip V 50 Descripcion
Tabla Producto
Campo Tipo Longitud Descripción Llave
Primaria Foránea
Id_prod I 11 Id del producto
Tabla Muestra
Campo Tipo Longitud Descripción Llave
Primaria Foránea
id_muestra I 11 Id del la operation
57
Q I 11 Cantidad
id_menu I 11 Id del menu
id_coman I 11 Id de la comanda
id_venta I 11 Id de la venta
Tabla ingrediente
Campo Tipo Longitud Descripción Llave
Primaria Foránea
Id_ing I 11 Id del ingrediente
Tabla Prod_Ing
Campo Tipo Longitud Descripción Llave
Primaria Foránea
Id_prod_ing I 11 Id del prod-ingr
58
Cantid F Cantidad del ingrediente
-
que ocupa el menu
Requer TI 1 Si se requiere
id_prod I 11 Id del producto
id_ing I 11 Id del ingrediente
id_menu I 11 Id del tipo de la operacion
Tabla Cliente
Campo Tipo Longitud Descripción Llave
Primaria Foránea
59
8.3 Diagrama de clases.
60
Figura 5 Diagrama de casos de uso
61
En este proceso los usuarios que ingresan al sistema podrán gestionar las
opciones del menú que tiene la página. Las opciones mostradas depende del tipo
de usuario que inicie sesión, si es el administrador podrá visualizar el menú
completo, si es el cajero y el mesero tendrán algunas excepciones con dicho
menú.
62
63
8.5.3 Proceso Gestionar almacén.
Este proceso consiste en gestionar todos los productos que hay en el almacén, de
los productos e ingredientes que se registran y de lo que salen de la empresa.
Obteniendo así un buen manejo del almacén.
64
9. Conclusiones de proyecto, recomendaciones y experiencia
personal profesional adquirida.
Además este proyecto no plantea una mera herramienta funcional que ayude en
las tareas de gestión al negocio, sino que al mismo tiempo es una invitación a los
clientes para participar en una nueva forma de tecnología, donde podrán contar
con mayor información y control, y por consiguiente, se busca producir
interiormente la satisfacción del placer intelectual, lúdico y estético de sus
usuarios, esto implica el uso de la tecnología bien diseñada y aplicada.
65
10. Fuentes de información.
http://cidecame.uaeh.edu.mx/lcc/mapa/PROYECTO/libro14/24_conversin_d
e_un_diagrama_entidad__relacin_en_tablas_relacionales.html
https://desarrolloweb.com/articulos/paso-tablas-entidad-relacion.html
https://definicion.de/sistema-de-informacion.pdf
http://www.frlp.utn.edu.ar/materias/info2/SI-
Sistemas%20de%20Informacion.pdf
http://moodle2.unid.edu.mx/dts_cursos_mdl/lic/TI/FB/AM/02/Gestores_de_b
ases_de_datos.pdf
http://www.aprenderaprogramar.com/index.php?option=com_content&view=
article&id=492:ique-es-php-y-ipara-que-sirve-un-potente-lenguaje-de-
programacion-para-crear-paginas-web-cu00803b&catid=70&Itemid=193
https://www.uv.es/jac/guia/jscript/javascr01.htm
66
11. Anexos.
67
SISTEMA DE ADMINISTRACIÓN
PARA EL RESTAURANTE
“WINGS ARMY SALINA CRUZ”
EN LINEA
Ruth Gonzalez
68
I. Resumen
Las nuevas tecnologías que existen actualmente, hacen que muchas empresas
tengan la mejor comodidad con sus negocios, una buena administración de ella y
les facilite acceder a su plataforma desde cualquier lugar, guardando las
informaciones de las empresas de una forma más segura y confiable, sin ninguna
pérdida de información.
69
Índice
I. Resumen ........................................................................................................ 69
Índice....…………………………………………………………………………………. 68
Índice de figuras .................................................................................................... 73
Tabla1. ..................................................................................................... 77
Tabla2. ..................................................................................................... 78
a) Buscar ...................................................................................................... 84
70
3.5 Vista Productos. ........................................................................................... 92
Editar. ....................................................................................................... 95
71
Agregar producto ................................................................................... 111
72
Índice de figuras
73
Figura 31 Vista ingrediente ................................................................................... 97
Figura 32 Agregar ingrediente ............................................................................... 98
Figura 33 Abastecer ingrediente ........................................................................... 99
Figura 34 Lista de reabastecimiento ................................................................... 100
Figura 35 Inventario de ingrediente ..................................................................... 100
Figura 36 Historia de inventario........................................................................... 101
Figura 37 Vista categoría .................................................................................... 102
Figura 38 Categoría inactiva ............................................................................... 103
Figura 39 Reporte de la venta ............................................................................. 104
Figura 40 Reportes de la venta ........................................................................... 104
Figura 41 Vista de usuarios ................................................................................. 105
Figura 42 Nuevo cajero ....................................................................................... 106
Figura 43 editar usuario ...................................................................................... 106
Figura 44 Vista configuración .............................................................................. 107
Figura 45 Vista Cajero ......................................................................................... 108
Figura 46 vista monitor del cajero ....................................................................... 109
Figura 47 vista vender ......................................................................................... 109
Figura 48 Resultados de la búsqueda ................................................................. 110
Figura 49 Lista de ventas .................................................................................... 110
Figura 50 Resumen de la venta .......................................................................... 111
Figura 51 Vista venta .......................................................................................... 112
Figura 52 Vista Resumen .................................................................................... 113
Figura 53 Finalizar venta ..................................................................................... 113
Figura 54 Vista mesero ....................................................................................... 114
Figura 55 Vista venta y resultado ........................................................................ 116
Figura 56 Resumen ............................................................................................. 117
Figura 57 Resumen de la venta .......................................................................... 117
Figura 58 Ventas ................................................................................................. 118
Figura 59 Venta pendiente .................................................................................. 119
74
Guía de utilización del sistema
Para poder subir el sistema al servidor se puede ocupar el programa FileZilla, este
programa facilita y ayuda a subir de forma segura el programa, si aún no se tiene
instalado el programa se descarga desde https://filezilla-project.org/download.php
Inicio.
Monitor.
Vender.
Ventas.
Productos.
Ingredientes.
Categorías.
Reportes.
Usuarios.
76
3.1 Vista Inicio.
Si se hace clic en el botón inicio del menú, mostrará la siguiente vista. Fig3.
Tabla1.
Muestra el número de las mesas totales que tiene el restaurante, si las mesas
están ocupadas se muestra el id de la venta en el lado derecho de la tabla, como
se muestra en la imagen con el contorno rojo de la Fig3.
Si el usuario hace clic en el botón del id, le mostrará la siguiente vista, Fig4.
77
Figura 12 Resumen de la venta
Tabla2.
Muestra los nombre de los meseros que están trabajando y el total de ventas que
llevan realizando. Si se hace clic en el icono “>” mostrará el historial del mesero, si
el mesero no tiene historial no habrá datos que mostrar, como se muestra en la
Fig5.
78
Figura 13 Historial del mesero
3.2 Vista Monitor
2.- En la segunda fila se especificaran cuáles son las mesas que están siendo
ocupadas, mostrando así el id de la venta, la descripción del producto que se está
consumiendo, la cantidad, el tiempo en que tardará su pedido en salir y el nombre
del mesero que los está atendiendo.
80
Figura 16 Vista vender
81
Figura 17 Resultados de la búsqueda
Ejemplo: En este caso escribimos buscar producto Pepsi y nos aparecen en los
resultados de la búsqueda dos refrescos Pepsi, pero con diferentes descripción,
como precio y unidad. Escribimos la cantidad del producto que se está solicitando
y le damos clic en el botón Agregar a la venta, nos mostrará la siguiente vista
Fig10.
82
Figura 18 Lista de venta
1.- En la tabla nos muestra el código del producto, la cantidad, unidad, el nombre,
el precio unitario y el precio total del producto.
La Fig10. Tiene como función 4 botones, buscar, cancelar producto, aplicar venta
y cancelar venta.
83
a) Buscar
Si el cliente solicita un producto más podemos hacer nuevamente la búsqueda del
nombre del producto y le damos agregar a la venta y se agregará en la lista el
producto que estamos solicitando. En este caso hacemos un ejemplo como la
fig11. Como se puede ver en la imagen la vista de la lista de venta sigue
apareciendo debajo de los resultados de la búsqueda.
Agregar a la venta.
Al momento de hacer clic en agregar a la venta nos aparecerá la siguiente vista
Fig12. Como podemos visualizar en la imagen, el producto hamburguesa ya fue
agregado a la lista de ventas, ahora tenemos 2 productos solicitados por el cliente
84
Figura 20 Lista de venta anexando un producto más
b) Cancelar producto.
En este proceso, si hacemos clic en el botón cancelar que está marcado con un
contorno color amarillo en la Fig13.
85
Si hacemos clic en el botón cancelar, el producto Pepsi se eliminará en automático
de la lista de ventas y quedaría solo el producto hamburguesa Fig14.
86
d) Aplicar Venta.
Si el usuario hace clic en el botón aplicar venta marcado con un contorno rojo
como muestra la Fig16.
Cuando se le dé clic en el botón aplicar venta una vez que ya estén rellenados
todos los Select, nos mostrará la siguiente vista Fig17.
87
3.4 Vista Ventas.
Si el usuario hace clic en el botón ventas del menú que está marcado con un
contorno color rojo en la Fig18. En esta imagen se visualizan todas las ventas
realizadas, las que están pendientes y las que ya están finalizadas.
88
3.4.1 Resumen de la venta pendiente
Esta vista muestra la descripción del producto que el cliente de la mesa este
consumiendo, tiene como procesos 4 botones que están marcados con un
contorno amarillo:
Agregar producto.
Finalizar venta
Cancelar y editar.
Cancelar
Agregar Producto
Si el cliente desea un producto más para consumir, se hace clic en el botón
agregar producto y mostrará una ventanita en la misma vista Fig20.
89
Figura 28 Agregar producto
90
Finalizar venta
Cuando el cliente pase a pagar, el cajero finalizará la venta. Y nos mostrará la
siguiente Fig22. Esta función solo lo puede realizar el administrador y el cajero.
En este caso el administrador está realizando operaciones de venta en el sistema.
Una vez que el cliente pague mostrará un mensaje en color azul, que la venta ya
está completada.
Cancelar venta
Si la venta ya fue finalizada y el cajero quiere cancelarlo por algún motivo. Solo el
administrador tendrá la opción de cancelar la venta.
91
3.5 Vista Productos.
Al hacer clic en el botón productos del menú mostrará un submenú Productos
como muestra en la Fig23. Marcado con un contorno color rojo, mostrará una tabla
con los datos de todos los productos que tiene el restaurante.
Los procesos que se pueden realizar en esta vista son los siguientes están
marcados con un contorno amarillo en la Fig23.
Agregar producto.
Activar producto.
Ingrediente.
Editar.
Desactivar.
92
Figura 32 Agregar producto
Nos aparece unos rectángulos que tenemos que rellenar con los datos que se le
pide del producto y tenemos que seleccionar una categoría al que pertenecerá el
producto. Cuando se haga clic en el botón de la Figura 24. Agregar producto le
mandará a la vista del producto pero ya con un producto más en la tabla.
3.5.2 Ingrediente
Si se hace clic en el botón ingredientes de la Figura 24. Mostrará la siguiente vista
Figura 25.
93
Figura 33 Producto ingrediente
En esta vista se ven los ingredientes que se ocupan en los productos, ejemplo;
seleccionamos el producto hamburguesa de la lista Fig24., y se hace clic en el
botón ingredientes y muestra la Fig25. En esta vista nos mostrará los ingredientes
que ocupa el producto hamburguesa, en este caso sería Jamón.
94
Seleccionamos el ingrediente que agregaremos en este caso sería quesillo y la
cantidad del ingrediente y se hace clic en el botón agregar producto. Como se
puede ver en la Figura 27, ya se tiene el ingrediente quesillo agregado dentro del
producto hamburguesa.
95
El producto quesillo tenía como cantidad 1, ahora se fue editado por la cantidad de
3, al hacer clic en el botón actualizar de la Figura 28, actualizará automáticamente
los datos del ingrediente y quedará de la siguiente manera Figura 29.
96
El producto al desactivarlo aparecerá en la vista de productos inactivos en una
tabla con su descripción correspondiente, si queremos regresar nuevamente a la
vista de productos, hacemos clic en el apartado del recuadro que dice productos
Figura 30.
97
Ingredientes
Abastecer
Inventario.
3.6.1 Ingredientes
Si se hace clic en el botón ingredientes del submenú mostrará la siguiente vista
Figura 32, Contiene una tabla con todos los datos de los ingredientes que se tiene
en el almacén. El administrador podrá agregar un nuevo ingrediente y podrá editar
los ingredientes.
Agregar ingrediente
Editar ingrediente
Si se hace clic en editar producto, mandará una vista con los datos del ingrediente
en donde se podrá editar o actualizar los datos del ingrediente
98
3.6.2 Abastecer
Si se hace clic en el botón Abastecer del submenú de ingrediente mostrará una
vista con una opción de búsqueda. Para poder reabastecer el ingrediente, se hace
una búsqueda con el nombre del ingrediente, con el código o con las primeras
letras del ingrediente y nos mostrará la siguiente vista Figura 33.
99
Figura 42 Lista de reabastecimiento
Si se hace clic en el botón procesar reabastecimientos de la vista Figura 34,
mostrará la siguiente vista Figura 35, la cantidad del ingrediente fue aumentado en
existencia.
100
3.6.3 Inventario.
En la parte de debajo de la Figura 36, se muestra una tabla con los datos y fechas
de las entradas y salidas que se han tenido del ingrediente.
101
3.7 Vista Categorías.
En esta vista se visualiza una tabla con el nombre de las categorías que tenemos,
el administrador podrá eliminar una categoría pero siempre y cuando la categoría
no se esté ocupando en un producto vendido.
102
Figura 46 Categoría inactiva
Para volver a la vista categoría, se hace clic en categorías, y si el usuario desea
volver activar la categoría, hace clic en el botón Activar Categoría Figura 35 y
nuevamente la categoría desactivado se activará.
Al hacer clic en el botón de reportes del menú mostrará la siguiente vista Figura
39. En esta vista se muestran los reportes del día, se tiene como opciones,
seleccionar las fechas y el producto que se quiera ver su reporte total.
103
Figura 47 Reporte de la venta
En este caso se selecciona todas las ventas, con la fecha del 08 de junio del 2017.
104
3.9 Vista Usuarios.
Si se hace clic en el botón Usuario del menú, mostrarán la siguiente vista Figura
41, una tabla con todos los usuarios que están registrado en la empresa.
105
Figura 50 Nuevo cajero
Editar Usuarios.
Si se hace clic en editar los datos del usuario Figura 42, mostrará la siguiente
ventana Fig43.
106
3.10 Otros
En la parte de arriba se muestra el nombre del usuario que inicio sesión, tendrá
como opción;
Configuración.
Cerrar sesión.
Cerrar sesión.
Si hace clic en cerrar sesión saldrá del sistema y le mostrará nuevamente la vista
de acceso.
Configuración.
Si hace clic en configuración le mostrará la siguiente ventana Figura 44. En esta
opción solo podrá cambiar la contraseña del usuario por una nueva.
107
4.- Cajero
Si el usuario acceso al sistema como cajero le mostrará la siguiente vista Figura
45.
o Inicio.
o Monitor.
o Vender.
o Ventas.
108
4.2 Vista Monitor
En esta vista se muestra la pantalla de las mesas que están ocupadas y
desocupadas. Las ocupadas los muestra con un id de la venta, mostrando los
descripción de los productos que están consumiendo en esa mesa y el mesero
quien los está atendiendo, Figura 46.
Agregar producto
Si el cliente quisiera ordenar un producto más se hace clic en el botón Agregar
producto de la Figura 50 y se agrega a su cuenta.
Finalizar venta.
Cuando el cliente pase a pagar el cajero hace clic en Finalizar venta, si por alguna
razón el cliente ya no quiera llevarse el producto, para poder cancelar la venta o el
producto, el cajero tendrá que pedir la autorización del administrador para que
cancele la venta.
111
4.4 Vista Ventas.
En la vista ventas el cajero podrá ver las ventas pendientes y finalizadas Figura51.
112
Figura 60 Vista Resumen
Cuando el cliente pase a pagar el cajero podrá finalizar la venta. Si el cliente
quiere cancelar la venta, el cajero le notifica al administrador que una venta se
quiere eliminar, y el administrador autoriza la cancelación.
113
4.5 Otros
En la parte de arriba se muestra el nombre del usuario que inicio sesión, tendrá
como opción;
Configuración.
Cerrar sesión.
Cerrar sesión.
Si hace clic en cerrar sesión saldrá del sistema y le mostrará nuevamente la vista
de acceso.
Configuración.
Si hace clic en configuración le mostrará la siguiente ventana Figura 45. En esta
opción solo podrá cambiar la contraseña del usuario por una nueva.
5.- Mesero
Si el usuario acceso como mesero, le mostrará la siguiente vista de inicio.
o Inicio.
o Monitor.
o Vender.
o Ventas.
115
5.2 Vista Monitor
En esta vista se muestran en la pantalla las mesas que están ocupadas y
desocupadas. Las ocupadas los muestra con un id de la venta, mostrando los
descripción de los productos que están consumiendo en esa mesa y el mesero
quien los está atendiendo.
116
Figura 64 Resumen
Le mostrará una vista de resumen de ventas y seleccionamos la mesa, el mesero
que los está atendiendo. Si el cliente en ese momento no solicita ningún otro
producto le da clic en aplicar venta. La venta se registra como pendiente Figura
57.
Figura 66 Ventas
118
Si hace clic en ver una venta pendiente le mostrará el resumen de la venta.
Solo podrá agregar un producto más pero no podrá finalizar, tampoco eliminar la
venta.
5.5 Otros
En la parte de arriba se muestra el nombre del usuario que inicio sesión, tendrá
como opción;
Configuración.
Cerrar sesión.
119
Cerrar sesión.
Si hace clic en cerrar sesión saldrá del sistema y le mostrará nuevamente la vista
de acceso.
Configuración.
Si hace clic en configuración le mostrará la siguiente ventana Figura 45. En esta
opción solo podrá cambiar la contraseña del usuario por una nueva.
120