











Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
La planificación y desarrollo del software SICOFENA, diseñado para la pequeña empresa Ferretería Navar dedicada a la venta de materiales de construcción. El software automatizará la gestión y control de inventario, clientes, compras y ventas. Se desarrollará bajo una arquitectura distribuida, con funciones de gestión de clientes, proveedores, compras y ventas, y restricciones como la compatibilidad con Java, Windows y MySQL. El sistema contará con tres niveles de usuario: administrador, analista administrativo y usuario final.
Qué aprenderás
Tipo: Apuntes
1 / 19
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
1 .1.-Planificación del software 1.1.1.- Descripción del entorno operacional (para quien se va a desarrollar el software) La empresa donde se desarrollará el software es una PyME dedicada a la compra y venta de materiales de construcción, denominada Ferretería NAVAR, es una pequeña empresa que cuenta con un local donde comercializa sus productos. La empresa dentro de su local cuenta con una bodega donde almacena los productos.
comercial) La empresa Ferretería Navar necesita de llevar a cabo un registro de todos los productos con los que se cuenta, los clientes frecuentes y los distintos proveedores de dicha ferretería, para ello se va a desarrollar un software que permita llevar un mejor control y que a su vez sea fácil de manejar. El software de denomina: Sistema de control de comercialización de la empresa Ferretería Navar (SICOFENA), cuya función será gestionar de forma automatiza la compra y venta de productos, así como llevar un control de sus clientes y proveedores. 1.1.3.- Descripción del equipo desarrollador.
El equipo de desarrollo del software está conformado como sigue: Líder del proyecto: Sus funciones serán la planificación, asignación de roles, control de la ejecución del proyecto, revisión de código Analista de software: su función será realizar el análisis correspondiente del software Diseñador del software: Desarrolladores del software:, encargados de la codificación de proyecto. Encargado de Pruebas e implementación: 1.1.4.- Descripción de los usuarios. Administrador del sistema: Se encargará del mantenimiento del sistema, así como de la base de datos. Se encargará también de registrar y darle acceso a nuevos usuarios. Vendedor: encargado de las ventas del producto y el registro de clientes al contado. Analista Administrativo: encargado del control de las compras, clientes a crédito y proveedores, así como el control de todas las operaciones administrativas que va a manejar el sistema. 1.1.5.- Cronograma de actividades (fechas en que se realizará cada actividad)
1.1.6.- Estimación de los costos del proyecto. 1.1.7.- Estudio de factibilidad. Factibilidad técnica: Como resultado del estudio técnico efectuado se determinó que en los actuales momentos la empresa posee la infraestructura tecnológica (hardware), así como el equipo de desarrollo cuenta con el software, necesarios para el desarrollo del sistema. Factibilidad Operativa: El equipo de desarrollo cuenta con el personal capacitado para desarrollar el software en todas sus fases, además se cuenta con toda la disposición del personal de la empresa en la colaboración para realizar la labor de búsqueda y recolección de información. Factibilidad económica: Una vez presentado los costos iniciales de desarrollo del software, la empresa garantiza la disponibilidad de los mismos, así como un monto estipulado para contingencia en caso de ser necesaria. 1.2.- Obtención de requerimientos A continuación, se presenta el documento de especificación de requerimientos (SRS) del sistema SICOFENA.
1 Introducción 1.1 Propósito El propósito del presente documento es mostrar los aspectos relacionados al desarrollo del sistema para la gestión y control de inventario y clientes de la empresa Ferretería Navar, con el fin de mejorar el funcionamiento de sus compras, ventas, facturación, proveedores y clientes. 1.2 Alcance El sistema se llamará SICOFENA y registrará cualquier operación, tanto de clientes como de productos, así también como de los proveedores. Es decir, operaciones de altas, bajas, modificaciones, descuentos a clientes frecuentes, clientes con crédito, etc. También contará con un módulo de impresión de notas de remisión y facturas. 1.3 Definiciones, Siglas y Abreviaturas (opcional) SICOFENA: Sistema para la gestión y control de inventario y clientes de la empresa Ferretería Navar. 1.4 Referencias (opcional) Standard IEEE 830 - 1998 2 Descripción Global 2.1 Perspectiva del Producto El sistema será desarrollado bajo una arquitectura distribuida, dividiendo el sistema en módulos. Cada módulo se encargará de gestionar los procesos relacionados con el mismo. Contará con una interfaz gráfica para que su manejo sea más fácil. Funcionará bajo una plataforma con sistema operativo Windows y un sistema manejador de bases de datos.
El sistema será desarrollado con el lenguaje de programación Java y bajo el sistema operativo Windows, el manejador de bases de datos será MySQL, por lo que el hardware y es software deben ser compatible con estos.
3. Los Requisitos Específicos 3.1 Requisitos de la Interface Externa 3.1.1 Interfaz con el Usuario El sistema se desarrollará con una interfaz gráfica tipo ventanas, con pestañas para los diferentes módulos, con botones para las funciones como incluir, modificar, consultar y eliminar. Contará además con un módulo de ayuda y manual del sistema online. 3.1.2 Interfaz con el Hardware Monitor: El sistema deberá mostrar información al usuario a través de la pantalla del monitor. Ratón: El sistema debe interactuar con el movimiento del ratón y los botones del ratón. El ratón se activan las zonas de entrada de datos, botones de comando y seleccione las opciones de los menús. Teclado: El sistema deberán interactuar con las pulsaciones del teclado. Impresora: El sistema imprimirá los reportes en la impresora instalada. 3.1.3 Interfaz con el Software API REST PERSONALIZADA para conexión con la base de datos en el servidor. GOOGLE CLOUD como servidor del sistema manejador de base de datos 3.1.4 Interfaces de Comunicaciones Tarjeta para una red ETHERNET para la comunicación entre clientes y el servidor con puerto PCI. 3.2 Requisitos Funcionales Gestión de clientes:
El sistema almacenará los datos de los clientes de la modalidad de crédito. Para esta función se asignarán datos como: el nombre, la dirección, el teléfono y la clave de la venta. El sistema podrá a través de un menú modificar algún dato ya almacenado del cliente. Con el sistema se podrá en algún momento determinado eliminar los datos de un cliente previa confirmación por parte del sistema. Se puede mediante una opción del menú consultar los datos de un cliente en particular El sistema generará un reporte de los clientes que en determinada fecha posean un crédito con la empresa. Gestión de productos El sistema almacenará los datos de los productos según su clasificación cemento, pisos y azulejos, yeso, de ferretería, herramientas Truper y acero: por cada producto se almacenarán datos como el nombre, la cantidad, el precio, su código. El sistema podrá a través de un menú modificar algún dato ya almacenado del producto. Con el sistema se podrá en algún momento determinado eliminar los datos de un producto previa confirmación por parte del sistema. Se puede mediante una opción del menú consultar los datos de un producto en particular El sistema generará un reporte de los productos que en determinada fecha estén en el inventario de la empresa. Gestión de Proveedores El sistema almacenará los datos de los proveedores como su nombre, una clave de proveedor, clave del producto que suministra según la clasificación, la cantidad de productos y el nombre o la empresa proveedora. El sistema podrá a través de un menú modificar algún dato ya almacenado del proveedor. Con el sistema se podrá en algún momento determinado eliminar los datos de un proveedor previa confirmación por parte del sistema. Se puede mediante una opción del menú consultar los datos de un proveedor en particular. El sistema generará un reporte de los proveedores que en determinada fecha presten el servicio a la ferretería. Gestión de ventas:
3.2.2 Descripciones del proceso El sistema contará con una interfaz gráfica inicial donde se realizará la autenticación del usuario a través de una contraseña de acceso al sistema. Seguidamente de verificar esa contraseña y que sea correcta se dará acceso al sistema que será manejado a través de los diferentes módulos: Clientes, Compras, Ventas, Productos y Proveedores. Cada uno de estos módulos tendrá una interfaz gráfica por medio de íconos y botones para facilitar su uso. En cada módulo se podrá incluir, modificar, eliminar y consultar datos. En el módulo de ventas se podrá generar la factura correspondiente, y en el módulo de compra la nota de remisión. 3.3 Requerimientos del desarrollo Equipo PC de escritorio con monitor, teclado, CPU y mouse Software: Sistema operativo Windows 7 o superior, Java EE2, MySQL El tiempo estimado para desarrollar el sistema será de 2 meses. 3.4 Restricciones del diseño La aplicación será de tipo cliente-servidor. 3.4.1. Acatamiento de estándares La aplicación se desarrollará bajo los estándares de calidad de la IEEE 3.4.2. Limitaciones hardware El sistema será desarrollado para ser utilizado en computadoras PC conectadas a través de una red LAN. La aplicación deberá consumir menos de 500 Mb de memoria RAM. La aplicación no podrá ocupar más de 2 GB de espacio en disco duro. 3.5 Atributos del sistema de software Rendimiento Fiabilidad
Seguridad Usabilidad 3.6. Otros requerimientos El software podrá ser utilizado en los sistemas operativos Windows Los permisos de acceso al sistema podrán ser cambiados solamente por el administrador de acceso a datos El sistema controlará el acceso y lo permitirá solamente a usuarios autorizados. Los usuarios deben ingresar al sistema con un nombre de usuario y contraseña. El sistema permitirá elaborar y emitir una factura, según los requerimientos establecidos en el reglamento y ley aplicable. La base de datos será implementada con trazas de auditoría El sistema debe ser capaz de procesar 5 transacciones por segundo. Esto se medirá por medio de una herramienta de testeo automatizada. Toda funcionalidad del sistema y transacción de negocio debe responder al usuario en menos de 5 segundos. Los datos modificados en la base de datos deben ser actualizados para todos los usuarios que acceden en menos de 2 segundos. Todo el sistema debe respaldarse cada 24 horas. Los respaldos deben ser almacenados en una localidad segura ubicada en un edificio distinto al que reside el sistema. El sistema debe contar con manuales de usuario estructurados adecuadamente. El sistema debe proporcionar mensajes de error que sean informativos y orientados a usuario final. El sistema debe contar con un módulo de ayuda en línea. El sistema contará con características parametrizables lo que permitirá futuros mantenimientos 2.- DISEÑO DEL SOFTWARE El propósito fundamental de este trabajo es el de crear un sistema seguro, fiable y fácil de utilizar que permita gestionar los procesos administrativos de la empresa Ferretería NAVAR a través del control de las compras y ventas de la compañía. La aplicación se diseña para ser flexible y adaptable, características indispensables en la automatización de los procesos.
de los sistemas orientados a objetos. A continuación, se muestra el diagrama de clases de la estructura del sistema SICOFENA donde se pueden apreciar el conjunto de clases y sus relaciones. Fig. 2 Diagrama de clases del sistema SICOFENA 2.3.- DIAGRAMAS DE CASOS DE USO. El diagrama de casos de uso representa la forma en cómo un usuario opera con el sistema en desarrollo. Se define un caso de uso como cada interacción supuesta con el sistema a desarrollar, donde se representan los requisitos funcionales [Ref.]. Un diagrama de casos de uso general representa el contexto de la aplicación. 2.3.1.- Diagrama de casos de uso General El diagrama de casos de uso general muestra una visión de los procesos macros asociados a nuestro sistema, es así como en la próxima figura el diagrama de casos de uso general de nuestra aplicación.
Fig. 3. Diagrama de casos de uso General del sistema SICOFENA 2.3.2.- Diagramas de casos de uso específicos Con respecto a los diagramas de caso de uso para un módulo en particular, a continuación, se presenta el correspondiente al proceso de gestión de productos.
Fig. 5. Diagrama de secuencia para la gestión de ventas del sistema SICOFENA 2.5.- DIAGRAMA DE COLABORACIÓN El diagrama de colaboración presenta una alternativa al diagrama de secuencia para modelar interacciones entre objetos en el sistema. Mientras que el diagrama de secuencia se centra en la secuencia cronológica del escenario que estamos modelando, el diagrama de colaboración se centra en estudiar todos los efectos de un objeto dado durante un escenario. Los objetos se conectan por medio de enlaces, cada enlace representa una instancia de una asociación entre las clases implicadas.[Ref.]. A continuación se presenta el diagrama de colaboración para el caso de uso gestionar productos 2.6.- DIAGRAMA DE DESPLIEGUE Los diagramas de despliegue muestran la disposición física de los distintos materiales (los nodos) que entran en la composición de un sistema y el reparto de los programas ejecutables sobre estos materiales. En la figura siguiente se puede apreciar que el sistema se concentra en una sola máquina que es el servidor del sistema diseñado, las otras máquinas hacen la función de clientes.
Fig.. Diagrama de despliegue del sistema SICOFENA 2.7.- DIAGRAMA DE COMPONENTES Los diagramas de componentes describen los elementos físicos y sus relaciones en el entorno de realización. Ilustran las piezas del software que conformaran un sistema. En un diagrama de componentes se puede apreciar la organización lógica de la implementación de un sistema [20]. A continuación, se muestra el diagrama de componentes del sistema SICOFENA.
Fig. Diagrama de estado del objeto Nota de remisión 3.- Fase de construcción 3.1. Breve descripción de cómo se va a elaborar el software (arquitectura y las partes o módulos) El software a desarrollar se va a implementar bajo una arquitectura distribuida mediante una red local. El sistema funcionará a través de 4 módulos: módulo de clientes, el módulo de ventas, el módulo de compras y el módulo de proveedores, ´por medio de cada uno de estos módulos se llevará el control respectivo de cada funcionalidad asociada a dicho módulo. 3.2.- Descripción del hardware y software a utilizar en la construcción del software Para el desarrollo del sistema que se construirá, es necesario el uso de distintas herramientas tanto de hardware como de software, para así permitir y facilitar la creación de distintas funcionalidades del software que se realizaran a lo largo del proyecto, tales herramientas son: ………………………. 4.- Fase de Pruebas En esta etapa se diseñan los distintos escenarios de prueba para cada una de las funciones con el fin de encontrar algún error dentro de ellas. El enfoque a utilizar será el de la caja negra debido a que lo importante aquí son los datos que utilizamos y los resultados que estos nos dan, sin importar el proceso por el que pasan. Las pruebas serán llevadas a cabo por los desarrolladores, realizando operaciones en el sistema. Se emplearán pruebas unitarias en la mayoría de los casos, tanto en métodos, clases, y en varios casos de uso del sistema.