Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Página 1 de 33
INTRODUCCIÓN
Página 2 de 33
Abstrac
The project will be developed according to the methodology of the course (database design
and object-oriented design), it will be developed using Xampp and PHPmyadmin and the
topics seen in class which are: use case, class diagram. This project will be carried out for a
better functioning and control of an inventory, with the database that will be developed.
The main feature of this program is to facilitate the work those people who keep a count of
the products, so it will be easier to know what products they have and what they need
Página 3 de 33
Contenido
INTRODUCCIÓN..................................................................................................................................2
Abstrac...............................................................................................................................................3
Planteamiento Del Problema.............................................................................................................5
Descripción Del Proyecto.............................................................................................................5
Objetivos............................................................................................................................................5
Objetivos General.........................................................................................................................5
Objetivos Específicos....................................................................................................................6
Justificación Del Proyecto..................................................................................................................6
Marco De Referencia..........................................................................................................................6
Marco Contextual.........................................................................................................................6
Marco Teórico............................................................................................................................11
Metodología.....................................................................................................................................14
Diseño..........................................................................................................................................16
Implementación..........................................................................................................................17
Pruebas.......................................................................................................................................18
Desarrollo ingenieril.........................................................................................................................21
Requerimientos Funcionales......................................................................................................21
Modelado.........................................................................................................................................22
Diagrama De Casos De Usos...........................................................................................................22
Referencias.......................................................................................................................................32
Página 4 de 33
CAFÉ INTERNET DANUBIO (DISEÑO ORIENTADO A OBJETOS)
Alrededor del mundo existen muchos métodos de cómo llevar una base de datos, y
uno de ellos y de los más comunes hasta el día de hoy es llevar todo en cuaderno o una
agenda destinada para apuntar todos los artículos que salen, también usan la
herramienta Excel.
hacer este tipo de procedimientos, por eso se diseñará una base de datos para el local (Café
internet Danubio), para mejorar el control del almacenamiento de todos los productos que
se tienen.
El proyecto propone optimizar aquellos procesos que hace demorar al administrador del
local y al dueño, el proyecto se realizara con el lenguaje java, para realizar la interfaz y
Objetivos
Página 5 de 33
Objetivos General
• Crear y diseñar una base de datos que facilite llevar todo lo que se ingrese y sale del
Objetivos Específicos
• Ahorrar tiempo a la hora de contar los productos que ingresan así mismo con los
que se salen.
La principal causa de llevar a cabo este proyecto es que no se tiene un buen manejo
del inventario de todos los productos que sé que se encuentran el establecimiento, ya que
todo lo que sale se apunta en un cuaderno; los productos que llegan se apuntan en un
Marco De Referencia
este proyecto se basa en agilizar la atención a los clientes y mejorar la parte del conteo de
Marco Contextual
Softwares relacionados:
Siigo®
Página 6 de 33
Siigo. Software contable y administrativo.
Funcionalidades: Facturación, Inventario, Compras y gastos, Gestión de cobranza,
Cotizaciones, Movimientos bancarios, Flujo de caja, Nómina, Sistema Los y
Facturación electrónica.
Características (enfoque Inventarios):
Manejo de Bodegas. Revisa los saldos de cada una de las bodegas que manejas,
para que la Gestión de Inventario sea más efectiva. Ten siempre el control sobre
las cantidades disponibles y las ya vendidas, podrás abastecer tu inventario a
tiempo, entendiendo los costos que esto genera tu conteo físico siempre igual al
del sistema.
Rentabilidad del Producto. No compres pan para vender pan, con Siigo puedes
conocer en tiempo real la rentabilidad que generan los productos en tu
inventario y su rotación, esto te permite tomar decisiones importantes en tu
empresa y hacerla crecer con rapidez.
Kardex. Una vez ingresas el producto al software, se empezará a escribir su
historia, registrando cada uno de sus movimientos, olvídate del método manual
para calcular entradas y salidas, ahora Siigo lo hace por ti, generando un reporte
agradable y fácil de entender.
Costo promedio. Siigo suma el valor de todo tu inventario y lo divide en las
unidades que posees para obtener el costo promedio del producto que estas
comercializando, así al vender tendrás claridad sobre tu margen de ganancias y
hace tu empresa más rentable.cita de la fuente
Página 7 de 33
Ilustración 1. Siigo - Software contable
Tomado de: https://www.siigo.com/lp-administrativo/?source=An2-Siigo&medio_virtual=Adwords&tit=Siigo%20Software%20Contable%20y%20Administrativo%20100%25%20en
%20Linea&ppc=1&utm_source=adwords&utm_medium=ppc&utm_campaign=%5BS%5D+-+SIIGO+BRANDING&utm_term=siigo&hsa_ver=3&hsa_ad=296192339493&hsa_net=adwords&hsa_kw=siigo&hsa_mt=p&hsa_grp=58714858255&hsa_tgt=kwd-
296798716784&hsa_cam=1534162950&hsa_src=g&hsa_acc=4512101301&gclid=Cj0KCQjw_r3nBRDxARIsAJljleErhAe_QtRI0-QUHaab-flciiwop0e7NU9py6WHwZUV9M5-neVGMwAaApAjEALw_wcB
Square
inventario desde
Ahorre tiempo
Inventario Square está diseñado para ayudarlo a estar menos tiempo enfrente de la
Administre el inventario
Página 8 de 33
de forma masiva
artículos se agoten
Reciba una alerta diaria por correo electrónico para conocer la existencia detallada
Características
Configuración Rápida.
Informes descargables
cuando lo necesite.
Alertas de artículos
Reciba un correo electrónico diario para saber cuándo hay baja existencia de
Página 9 de 33
Ilustración 2. •SQUARE- Software contable
Tomado de: https://squareup.com/us/en
Ilustración 3.
•SQUARE- Software
contable
Tomado de: https://squareup.com/us/en
Marco Teórico
Página 10 de 33
Atributo. Es una característica de una entidad. Cada entidad puede tener muchos
atributos. [ CITATION Ken051 \l 9226 ]
Base de datos. es un conjunto de datos pertenecientes a un mismo contexto y
almacenados sistemáticamente para su posterior uso.[CITATION Wik19 \l 9226 ]
Clases. Una plantilla para crear objetos e implementar un comportamiento en un
sistema. En UML, una clase representa un objeto o un conjunto de objetos que
comparte una estructura y un comportamiento comunes. [ CITATION luc19 \l 9226 ]
CRUD. es el acrónimo de "Crear, Leer, Actualizar y Borrar", que se usa para
referirse a las funciones básicas en bases de datos o la capa de persistencia en un
software. [CITATION Wik19 \l 9226 ]
Página 11 de 33
Mensaje. Una comunicación dirigida a un objeto, que le ordena que ejecute uno de
sus métodos con ciertos parámetros asociados al evento que lo generó.[ CITATION
Wik191 \l 9226 ]
Método. Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecución
se desencadena tras la recepción de un "mensaje". Desde el punto de vista del
comportamiento, es lo que el objeto puede hacer. Un método puede producir un
cambio en las propiedades del objeto, o la generación de un "evento" con un nuevo
mensaje para otro objeto del sistema.[ CITATION Wik192 \l 9226 ]
Metodología de desarrollo de sistemas. Una Metodología para el Desarrollo de
Sistemas de Información es un conjunto de actividades llevadas a cabo para
desarrollar y poner en marcha un Sistema de Información.[ CITATION tha11 \l 9226 ]
Modelado. Describe completamente aquellos aspectos del sistema que son
relevantes al propósito del modelo y a un apropiado nivel de detalle. Es una
representación abstracta de la combinación de un software y un hardware. Se utiliza
para describir el comportamiento del sistema en su totalidad. [ CITATION Ken051 \l
9226 ]
Normalización. es un proceso que consiste en designar y aplicar una serie de reglas
a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo
relacional.[ CITATION Wik193 \l 9226 ]
Polimorfismo. Comportamientos diferentes, asociados a objetos distintos, pueden
compartir el mismo nombre; al llamarlos por ese nombre se utilizará el
comportamiento correspondiente al objeto que se esté usando. O, dicho de otro
modo, las referencias y las colecciones de objetos pueden contener objetos de
diferentes tipos, y la invocación de un comportamiento en una referencia producirá
el comportamiento correcto para el tipo real del objeto referenciado[ CITATION
Wik194 \l 9226 ]
Programación orienta a objetos. es un paradigma de programación que viene a
innovar la forma de obtener resultados. Los objetos manipulan los datos de entrada
para la obtención de datos de salida específicos, donde cada objeto ofrece una
funcionalidad especial.[ CITATION Wik195 \l 9226 ]
Página 12 de 33
Requerimiento funcional. Un requisito funcional define una función del sistema de
software o sus componentes. Una función es descrita como un conjunto de entradas,
comportamientos y salidas.[ CITATION Wik197 \l 9226 ]
Requerimiento no funcional. Un requisito no funcional o atributo de calidad es, en
la ingeniería de sistemas y la ingeniería de software, un requisito que sabe bien y
especifica criterios que pueden usarse para juzgar la operación de un sistema en
lugar de sus comportamientos específicos, ya que éstos corresponden a los
requisitos funcionales.[ CITATION Wik18 \l 9226 ]
Servidores. una aplicación en ejecución capaz de atender las peticiones de un
cliente y devolverle una respuesta en concordancia. Los servidores se pueden
ejecutar en cualquier tipo de computadora, incluso en computadoras con bombillo
dedicadas a las cuales se les conoce individualmente como «el servidor».[ CITATION
Wik198 \l 9226 ]
Página 13 de 33
Metodología
Características:
Simplicidad: el desarrollo busca un enfoque simple, práctico y preciso en el
diseño y la codificación del sistema.
Agilidad. Tiene una duración promedio de tres a cuatro meses en el desarrollo
del sistema.
Relación directa Cliente – Analista – Desarrollador. La comunicación con el
cliente es vital durante todo el proceso, desde la planeación hasta las pruebas.
Se basa en el Ciclo de vida de desarrollo de sistemas. Consta de cuatro fases, las
cuales permiten dar una solución eficaz y efectiva al objetivo del sistema.
Fases
Página 14 de 33
1ª Fase: Planificación del proyecto.
• Historias de usuarios: Las historias de usuario tienen la misma finalidad que
los casos de uso, pero con algunas diferencias: Constan de 3 ó 4 líneas escritas
por el cliente en un lenguaje no técnico sin hacer mucho hincapié en los detalles;
no se debe hablar ni de posibles algoritmos para su implementación ni de
diseños de base de datos adecuados, etc.
• Velocidad del proyecto: La velocidad del proyecto es una medida que
representa la rapidez con la que se desarrolla el proyecto; estimarla es muy
sencillo, basta con contar el número de historias de usuario que se pueden
implementar en una iteración; de esta forma, se sabrá el cupo de historias que se
pueden desarrollar en las distintas iteraciones.
• Programación en pareja: La metodología X.P. aconseja la programación en
parejas pues incrementa la productividad y la calidad del software desarrollado.
El trabajo en pareja involucra a dos programadores trabajando en el mismo
equipo; mientras uno codifica haciendo hincapié en la calidad de la función o
método que está implementando, el otro analiza si ese método o función es
adecuado y está bien diseñado.
• Reuniones diarias: Es necesario que los desarrolladores se reúnan
diariamente y expongan sus problemas, soluciones e ideas de forma conjunta.
Las reuniones tienen que ser fluidas y todo el mundo tiene que tener voz y voto.
2ª Fase: Diseño.
• Diseños simples: La metodología X.P sugiere que hay que conseguir diseños
simples y sencillos. Hay que procurar hacerlo todo lo menos complicado posible
para conseguir un diseño fácilmente entendible e implementable que a la larga
costará menos tiempo y esfuerzo desarrollar.
3ª Fase: Codificación.
• La codificación debe hacerse ateniendo a estándares de codificación ya
creados. Programar bajo estándares mantiene el código consistente y facilita su
comprensión y escalabilidad.
Crear test que prueben el funcionamiento de los distintos códigos
implementados nos ayudará a desarrollar dicho código. Crear estos test antes
Página 15 de 33
nos ayuda a saber qué es exactamente lo que tiene que hacer el código a
implementar y sabremos que una vez implementado pasará dichos test sin
problemas ya que dicho código ha sido diseñado para ese fin.
4ª Fase: Pruebas.
• Uno de los pilares de la metodología X.P es el uso de test para comprobar el
funcionamiento de los códigos que vayamos implementando.
El uso de los test en X.P es el siguiente:
Se deben crear las aplicaciones que realizarán los test con un entorno de
desarrollo específico para test.
Hay que someter a test las distintas clases del sistema omitiendo los métodos
más triviales.
Se deben crear los test que pasarán los códigos antes de implementarlos; en el
apartado anterior se explicó la importancia de crear antes los test que el código.
Un punto importante es crear test que no tengan ninguna dependencia del código
que en un futuro evaluará. Hay que crear los test abstrayéndose del futuro
código, de esta forma aseguraremos la independencia del test respecto al código
que evalúa.
Diseño
tablas de normalización
Página 16 de 33
Ilustración 6. • Base de datos XAMPP
Fuente: Elaboración propia
Implementación
Ilustración 7. •Código
Fuente: Elaboración propia
Página 17 de 33
Pruebas
Funcionamiento del programa garantizando que funcione de manera eficaz.
Página 18 de 33
Historias de Usuario
Se realizan las Historias de Usuario para la definición de los requisitos
funcionales del sistema a crear:
Historia de usuario
Numero: 1
Nombre: Creación de usuarios
Usuario: Administrador
Modificación de historia número: Iteración:
Prioridad en Negocio: Alta Puntos estimados:
Riesgo en desarrollo: Puntos reales:
Desarrollador encargado: Steven Herrera
Descripción: El administrador creara cada usuario dándoles un rol especifico a
cada uno.
Observaciones:
Historia de usuario
Numero: 2
Nombre: Creación de clientes
Usuario: Administrador y vendedor
Modificación de historia número: Iteración:
Prioridad en Negocio: Alta Puntos estimados:
Riesgo en desarrollo: Puntos reales:
Desarrollador encargado: Leandro Martínez
Página 19 de 33
Historia de usuario
Numero: 3
Nombre: Manejo de productos
Usuario: Administrador
Modificación de historia número: Iteración:
Prioridad en Negocio: Alta Puntos estimados:
Riesgo en desarrollo: Puntos reales:
Desarrollador encargado: Steven Herrera
Descripción: Los productos deben ser ingresados correctamente en el sistema
para un buen uso de su venta.
Observaciones: En caso de no existir o querer modificar algún producto se debe
cumplir todos los requisitos por el mismo
Historia de usuario
Numero: 4
Nombre: Generar recibo
Usuario: vendedor
Modificación de historia número: Iteración:
Prioridad en Negocio: Alta Puntos estimados:
Riesgo en desarrollo: Puntos reales:
Desarrollador encargado: Isai Aranda
Descripción: Se debe entregar un recibo al cliente a la hora de comprar sus
productos
Observaciones: El recibo debe tener fecha y id del vendedor para algún reclamo
Historia de usuario
Numero: 5 Nombre: Modificar y eliminar
usuario
Usuario: Administrador
Modificación de historia número: Iteración:
Prioridad en Negocio: Alta Puntos estimados:
Riesgo en desarrollo: Puntos reales:
Desarrollador encargado: Steven Herrera, Isai Aranda, Leandro Martínez
Página 20 de 33
Descripción: Modificar y eliminar los usuarios ya existentes
Observaciones: Únicamente cuando se necesita actualizar información o cuando
ya no trabaje mas
Desarrollo ingenieril
Requerimientos Funcionales
No Funcionales.
Se necesita una conexión a internet para la base de datos.
Dispositivos como un monitor, Reuter, teclado, ratón, y una torre.
Conexión de ethernet para mayor funcionamiento.
Televisor
Cámaras
Página 21 de 33
Modelado
Página 22 de 33
Especificación De Cada Caso De Uso
Tabla 1. Descripción de caso de uso Iniciar sesión
Caso de usos Iniciar sesión
Identificador 1
Descripción para ingresar a la base de datos
Actor principal Administrador
Actor secundario
Precondiciones Estar registrado con usuario y contraseña
Flujo principal 1- digitar usuario
2- digitar contraseña
Post condiciones Estar en la sesión del usuario
Flujos alternativos Equivocarse en el usuario y contraseña
Fuente: elaboración propia
Página 24 de 33
Tabla 7. Descripción de caso de uso Generar reporte de ventas
Caso de usos Generar reporte de ventas
Identificador 9
Descripción Muestra el diario de ventas
Actor principal dueño
Actor secundario
Precondiciones Diario de venta
Flujo principal 1- ingresar para saber cuál es diario
2- ver el diario de venta
Post condiciones Rectificar
Flujos alternativos Que el sistema falle u olviden registrar la
venta
Fuente: elaboración propia
Tabla 8. Descripción de caso de uso Crear administrador
Caso de usos Crear administrador
Identificador 3
Descripción va agregar los nuevos empleados
Actor principal dueño
Actor secundario
Precondiciones Tener nuevos empleados
Flujo principal 1- registrar el nuevo cliente
2- confirmar el registros
Post condiciones Se llenó el formulario de registro de nuevo
administrador
Flujos alternativos Equivocarse al crear el nuevo
administrador
Fuente: elaboración propia
Tabla 9. Descripción de caso de uso Modificar administrador
Caso de usos Modificar administrador
Identificador 4
Descripción Cambiará a los viejos administradores por
los nuevos
Actor principal dueño
Actor secundario
Precondiciones Estar registrado como administrador
Flujo principal 1- buscar administrador
2- actualizar administrador
Post condiciones Actualizar los nuevos administradores
Flujos alternativos Equivocarse al crear el nuevo
administrador
Fuente: elaboración propia
Página 25 de 33
Tabla 10. Descripción de caso de uso Eliminar administrador
Caso de usos Eliminar administrador
Identificador 5
Descripción Eliminará a los administradores de la base
de datos
Actor principal dueño
Actor secundario
Precondiciones Estar registrado como administrador
Flujo principal 1- buscar administrador
2- eliminar administrador
Post condiciones Eliminar los administradores
Flujos alternativos no eliminar al administrador correcto
Fuente: elaboración propia
Página 26 de 33
Tabla 12. Descripción de caso de uso Generar factura
Caso de usos Generar factura
Identificador 11
Descripción Al realizar alguna venta, el administrador
generara la factura
Actor principal Administrador
Actor secundario
Precondiciones Haber vendido algún producto
Flujo principal 1- buscar producto
2- vender producto
3- actualizar producto
Post condiciones Imprimir la factura
Flujos alternativos Equivocarse al no registrar la venta en la
factura
Fuente: elaboración propia
Página 27 de 33
Diagrama De Clases
Página 28 de 33
Diagrama General
Ilustración 11. Diagrama General
Página 29 de 33
Anexos
Así se lleva un manejo de todos los productos que salen del establecimiento, los
productos que se ingresan al establecimiento se llevan en formato Excel.
Anexo #1. Fotografía de factura de recargas
Página 30 de 33
Anexo #3. Fotografía de la tienda Danubio y sus productos
Página 31 de 33
Referencias
Página 32 de 33
Wikipedia. (22 de mayo de 2019). Obtenido de https://es.wikipedia.org/wiki/Programaci
%C3%B3n_orientada_a_objetos
Wikipedia. (14 de febrero de 2019). Obtenido de
https://es.wikipedia.org/wiki/Requisito_(sistemas)
Wikipedia. (24 de marzo de 2019). Obtenido de
https://es.wikipedia.org/wiki/Requisito_funcional
Wikipedia. (13 de abril de 2019). Obtenido de https://es.wikipedia.org/wiki/Servidor
Página 33 de 33