Proyecto Contable Licorera JF Programacion
Proyecto Contable Licorera JF Programacion
Integrantes:
El proyecto es una licorera llamada “Licorera JF” el cual se quiere realizar un sistema
contable para tener todas las cuentas del local digitalmente ya que todos los datos
tomados del negocio son a mano en un cuaderno y se basa en la palabra del trabajador a
cargo del turno de trabajo lo cual puede ocasionar inconsistencias o tambien fraudes a la
hora del pago de cada trabajador. Por esto el dueño decidió implementar una solución a
partir de algún metodo que pueda ayudar con las cuentas diarias de su negocio.
Para esto se decidió hacer una recolección de información, encuestas y metodologías de
investigación con el propósito de obtener datos concretos y bases específicas para la
implementación del sistema.
Con el propósito de obtener un buen resultado se hizo un estudio de las tecnologías
existentes en el mercado actual, sus características, procesos y las diferentes
herramientas que ofrecen, las cuales generan un beneficio para el usuario aumentando la
eficiencia y velocidad en sus procesos; en base a esto se determinaron los requisitos, las
posibles tareas y características para hacer del sistema una aplicación única y funcional.
1
2. Planteamiento del problema
La empresa JF es una licorera cuyos objetivos se basan en el corto plazo, con planes
para obtener resultados en un termino de diez o mas años, de cualquier manera, para
lograr una visión mas amplia en este aspecto, se debe saber hacia dónde se va y actuar
buscando constantemente el cumplimiento de las metas propuestas, su mayor ventaja se
debe a que no tiene una competencia cercana ya que la próxima licorera queda a seis
cuadras de licores JF.
Durante los últimos dos años licores JF ha ido aumentado notablemente su volumen de
ventas respecto a años anteriores, para poder continuar de esta forma se necesita ayuda
con la contabilidad del negocio ya que en la parte de la contabilidad se tienen
documentos en los que registra los activos tangibles que posee, como equipos de
transporte, computadores, etc. Estas empresas saben que constantemente deben
adaptarse a nuevas situaciones que les impone la realidad y no solo las crisis, sino
también los periodos de éxito los que provocan cambios a los que necesariamente habrá
que adaptarse según sea la necesidad. Las necesidades no son las de antes, la tecnología
se vuelve obsoleta, los trabajos importantes se retiran y la imagen de la empresa pasa a
deteriorarse gradualmente.
2
2.1 Descripción del proyecto.
3
3. Justificación
4
4. Objetivos.
5
5. Marco de referencia.
• Datos estructurados
• Java (Netbeans)
• Clases
• Herencia
• Polimorfismo
• Programación orientada a objetos
• Archivo de objetos
• Interfaces
6
5.2 Marco contextual.
7
Metodología de desarrollo de sistemas. Cualquier enfoque aceptado
para analizar, diseñar, implementar, probar, mantener y evaluar un sistema de
información. [ CITATION Ken051 \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 ]
Polimorfismo: Propiedad por la que es posible enviar mensajes
sintácticamente iguales a objetos de tipos distintos. El único requisito que
deben cumplir los objetos que se utilizan de manera polimórfica es saber
responder al mensaje que se les envía. [CITATION Des18 \l 9226 ]
Proceso. Las actividades que transforman o cambian datos en un sistema
de información. Pueden ser manuales o automatizados. Se denotan mediante un
rectángulo redondeado en los diagramas de flujos de datos. [ CITATION Ken051 \l
9226 ]
Programación Orientada a Objetos. Paradigma de programación que
usa objetos y sus interacciones para diseñar aplicaciones y programas de
computadora. [ CITATION Ecu18 \l 9226 ]
Requerimiento. Característica que el sistema debe tener, o restricción
que el sistema debe satisfacer para ser aceptado por el cliente. [ CITATION
Ken052 \l 9226 ]
Requisito funcional. Describe la iteración entre el sistema y su ambiente
independientemente de su implementación. [ CITATION Ken052 \l 9226 ]
Requisito no funcional. Describe aspectos del sistema que son visibles
por el usuario que no incluyen una relación directa con el comportamiento
funcional del sistema. [ CITATION Ken052 \l 9226 ]
Salida. Información distribuida a los usuarios mediante los sistemas de
información, a través de intranets, extranet o la Web, ya sea en informes
impresos, pantallas o audio. [ CITATION Ken051 \l 9226 ]
Sistema. Colección de subsistemas interrelacionados e interdependientes,
que trabajan de manera conjunta para llevar a cabo metas y objetivos
8
predeterminados. Todos los sistemas cuentan con entradas, procesos, salidas y
retroalimentación. [ CITATION Ken051 \l 9226 ]
Atributo. Una característica de una entidad. Cada entidad puede tener
muchos atributos. [ CITATION Ken051 \l 9226 ]
Caso de uso. En UML, secuencia de transacciones en un sistema. El
propósito del caso de uso es producir algo de valor para un actor del sistema. El
modelo de casos de uso se basa en las interacciones y relaciones de los casos
de uso individuales. En un caso de uso, un actor que utiliza el sistema inicia un
evento que desencadena una seria de interacciones relacionadas en el sistema.
Un caso de uso se enfoca en lo que hace el sistema más que en la forma como
lo hace. [ CITATION Ken051 \l 9226 ]
Clase. Plantilla común para un grupo de objetos individuales con
atributos y comportamientos similares en el análisis y diseño orientado a
objetos y UML. [ CITATION Ken051 \l 9226 ]
Dato. La unidad más pequeña en un archivo o base de datos. Usado de manera
indistinta con el término atributo. [ CITATION Ken051 \l 9226 ]
Proceso Contable
9
5.3 Marco Legal
ENTIDADES REGULADORAS DE LAS TICS
Diseñar, adoptar y
promover las http://www.mintic.gov.co
Ministerio de políticas, planes,
tecnologías de la programas y
información y las proyectos del sector
comunicaciones de las tecnologías de
la información
Encargado de
Comisión de promover la www.crcom.gov.co
regulación de competencia, evitar
comunicación (CRC) el abuso de posición
dominante y regular
los mercados de las
redes y los servicios
de comunicaciones
Brindar el soporte
Agencia nacional del técnico para la
espectro gestión y la
planeación, la www.ane.gov.co
vigilancia y control
del espectro
radioeléctrico
Administrador de los www.cointernet.com.co
Co internet dominios CO
Protección de datos
Superintendencia de (páginas web) http://www.sic.gov.co/
industria y comercio
Protección de datos
Superintendencia (transacciones www.superfinanciera.gov.co
financiera online)
10
LEGISLACION INFORMATICA
LEY TEMA
11
¿Cómo está protegido el software?
Disponer de su obra a título gratuito bajo las condiciones licitas que su libre
criterio le dicte;
De aprovechar la obra con fines de lucro o sin él, por medio de la imprenta,
grabado, copias.
12
6. Estado del Arte
13
etc.), es decir, que mediante la elaboración de éstos directamente en el computador
se actualizan en línea y tiempo real todos los registros de la Empresa en lo referente a:
Cartera, Cuentas por Pagar, Inventarios, Costos de Producción, Activos Fijos, Pedidos,
Compras, Presupuesto, Contabilidad, Nómina y Ventas, por lo cual no se requiere de
expertos para que se empiece a utilizar.
14
7. Metodología
Ventajas:
Da lugar a una programación sumamente organizada.
Ocasiona eficiencias en el proceso de planificación y pruebas.
Cuenta con una tasa de errores muy pequeña.
Propicia la satisfacción del programador.
Fomenta la comunicación entre los clientes y los desarrolladores.
Facilita los cambios.
Permite ahorrar mucho tiempo y dinero.
Puede ser aplicada a cualquier lenguaje de programación.
El cliente tiene el control sobre las prioridades.
Se hacen pruebas continuas durante el proyecto.
La XP es mejor utilizada en la implementación de nuevas tecnologías.
Desventajas:
Es recomendable emplearla solo en proyectos a corto plazo.
En caso de fallar, las comisiones son muy altas.
Requiere de un rígido ajuste a los principios de XP.
Puede no siempre ser más fácil que el desarrollo tradicional.
Características:
Desarrollo iterativo e incremental: pequeñas mejoras, unas tras otras.
Pruebas unitarias continuas, frecuentemente repetidas y automatizadas,
incluyendo pruebas de regresión. Se aconseja escribir el código de la prueba
antes de la codificación. Véase, por ejemplo, las herramientas de prueba JUnit
orientada a Java, DUnit orientada a Delphi, NUnit para la plataforma.NET o
PHPUnit para PHP. Estas tres últimas inspiradas en JUnit, la cual, a su vez, se
insipiró en SUnit, el primer framework orientado a realizar tests, realizado para
el lenguaje de programación Smalltalk.
Programación en parejas: se recomienda que las tareas de desarrollo se lleven a
cabo por dos personas en un mismo puesto. La mayor calidad del código escrito
de esta manera -el código es revisado y discutido mientras se escribe- es más
importante que la posible pérdida de productividad inmediata.
15
Frecuente integración del equipo de programación con el cliente o usuario. Se
recomienda que un representante del cliente trabaje junto al equipo de
desarrollo.
Corrección de todos los errores antes de añadir nueva funcionalidad. Hacer
entregas frecuentes.
Refactorización del código, es decir, reescribir ciertas partes del código para
aumentar su legibilidad y mantenibilidad, pero sin modificar su comportamiento.
Las pruebas han de garantizar que en la refactorización no se ha introducido
ningún fallo.
Propiedad del código compartida: en vez de dividir la responsabilidad en el
desarrollo de cada módulo en grupos de trabajo distintos, este método promueve
el que todo el personal pueda corregir y extender cualquier parte del proyecto.
Las frecuentes pruebas de regresión garantizan que los posibles errores serán
detectados.
Simplicidad en el código: es la mejor manera de que las cosas funcionen.
Cuando todo funcione se podrá añadir funcionalidad si es necesario. La
programación extrema apuesta que es más sencillo hacer algo simple y tener un
poco de trabajo extra para cambiarlo si se requiere, que realizar algo complicado
y quizás nunca utilizarlo.
La simplicidad y la comunicación son extraordinariamente complementarias.
Con más comunicación resulta más fácil identificar qué se debe y qué no se debe
hacer. Cuanto más simple es el sistema, menos tendrá que comunicar sobre éste,
lo que lleva a una comunicación más completa, especialmente si se puede
reducir el equipo de programadores.
16
El ciclo de vida ideal de XP consiste de seis fases:
Exploración
En esta fase, los clientes plantean a grandes rasgos las historias de usuario que son de
interés para la primera entrega del producto. Al mismo tiempo el equipo de desarrollo se
familiariza con las herramientas, tecnologías y prácticas que se utilizarán en el proyecto.
Se prueba la tecnología y se exploran las posibilidades de la arquitectura del sistema
construyendo un prototipo. La fase de exploración toma de pocas semanas a pocos
meses, dependiendo del tamaño y familiaridad que tengan los programadores con la
tecnología.
Iteraciones
Esta fase incluye varias iteraciones sobre el sistema antes de ser entregado. El Plan de
Entrega está compuesto por iteraciones de no más de tres semanas. En la primera
iteración se puede intentar establecer una arquitectura del sistema que pueda ser
utilizada durante el resto del proyecto. Esto se logra escogiendo las historias que fuercen
17
la creación de esta arquitectura, sin embargo, esto no siempre es posible ya que es el
cliente quien decide qué historias se implementarán en cada iteración (para maximizar
el valor de negocio). Al final de la última iteración el sistema estará listo para entrar en
producción. Los elementos que deben tomarse en cuenta durante la elaboración del Plan
de la Iteración son: historias de usuario no abordadas, velocidad del proyecto, pruebas
de aceptación no superadas en la iteración anterior y tareas no terminadas en la iteración
anterior. Todo el trabajo de la iteración es expresado en tareas de programación, cada
una de ellas es asignada a un programador como responsable, pero llevadas a cabo por
parejas de programadores.
Producción
Mantenimiento
Es cuando el cliente no tiene más historias para ser incluidas en el sistema. Esto requiere
que se satisfagan las necesidades del cliente en otros aspectos como rendimiento y
confiabilidad del sistema. Se genera la documentación final del sistema y no se realizan
más cambios en la arquitectura. La muerte del proyecto también ocurre cuando el
sistema no genera los beneficios esperados por el cliente o cuando no hay presupuesto
para mantenerlo.
18
Historias de usuario
A continuación, se enseñarán las historias de usuario las cuales nos ayudan a definir
requisitos para la creación del sistema:
Historia de usuario
Número: 1 Nombre: Registro de empleados
Usuario: Administrador o empleado
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 1
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Crear y registrar nuevos empleados del local.
Observaciones: -----
Historia de usuario
Número: 2 Nombre: Registro de proveedores
Usuario: Administrador
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 1
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Crear y registrar nuevos proveedores del local.
Observaciones: -------
Historia de usuario
Número: 3 Nombre: Registro de productos
Usuario: Administrador
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 1
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Crear y registrar nuevos productos ingresados al local.
Observaciones: ------
Historia de usuario
Número: 4 Nombre: Modificar productos
Usuario: Administrador o empleado
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 2
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Modificar los datos de los productos ya registrados en la base de
datos.
Observaciones: -------
19
Historia de usuario
Número: 5 Nombre: Registrar ventas
Usuario: Administrador o empleado
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 3
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Tener registro de todas las ventas realizadas.
Observaciones: -------
Historia de usuario
Número: 6 Nombre: Consultar productos
Usuario: Administrador o empleado
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 2
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Consultar un producto en su totalidad.
Observaciones: ---------
Historia de usuario
Número: 7 Nombre: Actualizar inventario
Usuario: Administrador o empleado
Modificación de historia: 0 Iteración asignada: 3
Prioridad de negocios: Alta Puntos estimados: 3
Desarrollador encargado: Carlos Andrés Sánchez Cobaleda.
Descripción: Actualizar todos los datos existentes en el inventario ya sea cuando
se realiza una compra o llega nueva mercancía.
Observaciones: --------
20
8. Diseño
Clase: Loguin
Tipo de clase: Inicio de Sección
Características: intangible , Guardar, permanente
Responsabilidades Colaboradores
Clase: VentasJF
Tipo de clase: Venta
Características: Intangible , guardar
Responsabilidades Colaboradores
21
Clase: Comprar
Tipo de clase: Comprar Productos a Franquicias
Características: Intangible, guardar
Responsabilidades Colaboradores
Insertar () Código
Eliminar () Nombre del Producto
Eliminar Todo () Fecha
Guardar Archivo () Precio
Total a Pagar
Cajas
Unidades
Clase: MCaja_R
Tipo de clase: Menú Principal
Características: Intangible , Seleccionar
Responsabilidades Colaboradores
Vender () Seleccionar ()
Comprar ()
Inventario ()
22
Clase: Inventario
Tipo de clase: Inventario
Características: Intangible , Guardar, Actualizar
Responsabilidades Colaboradores
8.2 Interfaz
23
Login
Menú Principal
Ventas
24
Compras
Inventario
25
9. Análisis
26
9.1 Requerimientos
Registro de Proveedores
27
11. Conclusiones y Recomendaciones
Las metas que se quieren alcanzar con este programa son muy claras las cuales
son de tener un programa contable para la licorera JF.
Llevar una mejor rendición de cuentas diarias y un sistema seguro para que el
negocio pueda crecer económicamente seguro.
El programa será realizado en el lenguaje de programación Java.
El usuario quede satisfecho y quede perfectamente capacitado para el buen uso
del programa.
El programa facilitara futuros procesos como lo sería una expansión o
adaptaciones nuevas exigidas por el usuario.
28
12.Bibliografía
Compara software
https://www.comparasoftware.com/nextar/
[22/03/2019]
SIIGO S. A.
http://portal.siigo.com/docs/DocView.aspx?DocumentID=%7B2CF85410-7F68-4081-
A701-EE2913E0A5F1%7D&NoHeader=1&NoSubject=1
[22/03/2019]
29
13.Anexo
Anexo a
Anexo b
30
Anexo c
Anexo d
31