Alejandro Amat Bedmar Jose Antonio Cabrera Calandria D. Miguel Vega López Ingeniería del Software I ESPECIFICACIÓN DE VIDEOCLUB 1. ANÁLISIS DEL SISTEMA Nuestro principal objetivo, lo cual implica que se trata de nuestra mayor meta a conseguir, es desarrollar un sistema software que realice una gestión eficiente de un videoclub obteniendo con ello los siguientes beneficios que se presentan a continuación: • • • • Conseguir una gestión eficiente de clientes y productos. Proporcionara la posibilidad de llevar a cabo una gestión económica adecuada del videoclub citado. Ofrecer un sistema ágil, eficiente y de interfaz amigable e intuitiva. Que el sistema software a desarrollar tenga capacidad incremental, pudiéndose añadir funcionalidad fácilmente en el futuro. Una vez mencionados los objetivos generales, debemos establecer las distintas restricciones que debe cumplir el sistema serán las siguientes: • • El software tiene como única misión la gestión de un videoclub, por lo tanto sólo se puede emplear en establecimientos como el mencionado. El sistema deberá instalarse en un computador central, en casos necesarios (un videoclub que posea un gran volumen de ventas) podrán coexistir varios terminales para obtener una mayor concurrencia. La información que se va a procesar y registrar es: • • • • Datos personales de los distintos clientes del videoclub, tales como nombre, apellidos, dirección, teléfono, documento nacional de identidad y por último un código de cliente que será asignado por el propio programa. Datos de las distintas películas que se van a poseer. Serán los siguientes título, formato (VHS o DVD), categoría (Comedia, Terror,...), director, duración, reparto, nacionalidad y por último un código similar al anterior que identifique unívocamente a cada película. Datos de los distintos alquileres que se realicen, como duración del alquiler, clientes y película alquilada. Datos que describan los ingresos y gastos del videoclub, los ingresos los podremos desglosar en ganancias por alquileres, por ventas de otros productos ya sean alimenticios (palomitas, cacahuetes,....) o promocionales (gorras, posters, ...) y los gastos se dividirán en gastos propios del local(luz, agua, calefacción, ...), nóminas del personal e impuestos( impuestos locales, de bienes e inmuebles, ...). Para el procesamiento de todos los datos arriba mencionados es necesario el siguiente conjunto de interfaces: • Interfaces de entrada 1 Alejandro Amat Bedmar Jose Antonio Cabrera Calandria D. Miguel Vega López Ingeniería del Software I 1. INTRODUCCIÓN DE DATOS NUEVOS: Para la introducción de dichos datos se empleará una interfaz gráfica con el empleo del teclado 2. BÚSQUEDA DE DATOS PROCESADOS: Para facilitar esta tarea se realizará mediante la lectura de un código de barras identificativo. En caso de fallo de este hardware la búsqueda de datos se realizará mediante una interfaz gráfica. 3. FACTURACIÓN: Para la introducción de datos sobre las ventas se hará uso del lector de código de barras descrito anteriormente o en los caso que no sea posible (lectura del código de un póster) se usará una interfaz gráfica. • Interfaces de salida 1. FACTURACIÓN: El usuario que lo requiera recibirá una factura con los datos referentes a la operación realizada, ya sea alquiler, compra de algún producto alimenticio, etc. 2. DISEÑO DEL SISTEMA Aunque hemos considerado distintas alternativas que resuelven nuestro problema, nos hemos decidido por la que vamos a explicar a continuación. Debemos hacer un inciso, de que no hemos tenido tampoco muchas alternativas al tratarse de un problema tan simple. Los elementos característicos de nuestro sistema son los siguientes: • • • • • Se requerirá un computador central en el cual se instalará la base de datos y el sistema software realizado, este computador central actuará de servidor en su caso. Si se necesitan podrán utilizarse distintos terminales para agilizar el trabajo y proporcionar una mayor concurrencia. Si se hace necesaria la presencia de distintos terminales, deberá existir en el sistema una red que interconecte todos los elementos presentes. Cada computador del sistema debe contar con un lector de código de barras para permitir la entrada de datos en el sistema. Una impresora conectada al ordenador central. De forma ilustrativa vamos a establecer en la siguiente figura la estructura del sistema resultante: 2 Alejandro Amat Bedmar Jose Antonio Cabrera Calandria T1 T2 ........... ..... D. Miguel Vega López Ingeniería del Software I Tn En este puntos pasamos a detallar las funciones de cada componente del sistema: El computador central almacenará la base de datos y en su caso actuará de servidor con los terminales. La información leída por las máquinas lectoras de códigos de barras se utilizarán para identificar el producto o cliente en la base de datos. En su caso los terminales mandarán la información al servidor el cual atenderá las distintas peticiones. La introducción de nuevos datos de clientes o de películas se podrá hacer desde el servidor y, en su caso, también desde los terminales. Si se realiza desde estos últimos la información ha de ser transferida al servidor para que este la introduzca en la base de datos. Las peticiones de impresión deben de partir del servidor, en su caso los terminales mandaran la petición a este y no directamente a la impresora. Como nuestro sistema software esta destinado a ser un producto de consumo, no entraremos más en detalle, nos hemos limitado a describir las características técnicas que debe cumplir el sistema para poder usar nuestro software. 3. ANÁLISIS DE LOS REQUERIMIENTOS DEL SOFTWARE Después de haber realizado la evaluación y análisis del sistema debemos establecer los distintos requerimientos que va a disponer nuestro software. Primeramente vamos a establecer los distintos elementos del sistema software. A grandes rasgos serán los siguientes: Una base de datos donde procederemos a almacenar y consultar la distinta información. Un programa que permita la introducción y consulta de los datos pertenecientes a la base de datos que vamos a utilizar. Este programa constará de los siguientes módulos: Filtro de datos: Aseguraremos la corrección y consistencia de los datos que introducimos sobre las distintas películas y clientes. Módulo de procesamiento de alquileres: El cual se encargará de relacionar las distintas películas con la persona que las alquila. Módulo de contabilidad: Se ocupará de todo aquello referente a la contabilidad y se subdividirá en los siguientes módulos: 3 Alejandro Amat Bedmar Jose Antonio Cabrera Calandria D. Miguel Vega López Ingeniería del Software I Módulo de ingresos: Manejará los beneficios obtenidos de los distintos alquileres, de la venta de productos alimenticios y/o promocionales. Módulo de gastos: Controlaremos los distintos gastos derivados del propio local, nóminas de los empleados, impuestos, etc. Módulo de formateo de salida: Este módulo se encarga de dar un correcto formato de la salida por impresora para que contenga la información legal obligatoria y otro tipo de información que pueda llegar a ser útil a los clientes. Módulo de red: Se encargará de la gestión de la red. En caso de no existir dicha red el módulo permanecería inactivo. La información recibida a través de la red deberá ser procesada por el filtro de datos antes de realizar cualquier otra operación. Módulo de seguridad: Nos cercioraremos que el personal que acceda a los datos sea el indicado. Usando un sistema de password. Para obtener una visión global del software vamos a establecer un diagrama que nos represente la interacción de los distintos módulos: "$#%&('*),+.-0/ '2143% 5768:9;/<6'2#,'*) EDF(GH IKJ*L M L NOION P G(QSRUTVFSV ^ =, > ? _ >O`ba c W XZY\[]X @BADC !! 4 Alejandro Amat Bedmar Jose Antonio Cabrera Calandria D. Miguel Vega López Ingeniería del Software I Este sistema como se observa se amolda a las distintas necesidades del usuario ya que se trata de un sistema con un nivel de complejidad muy pequeño, lo que facilita su compresión y entendimiento. Todo lo descrito anteriormente posee una coherencia interna lógica ya que siempre se respeta el mantenimiento de integridad de la información y evitar así la presencia de redundancia de datos e inconsistencia (Filtro de datos). A nuestro entender este puede suponer una especificación válida para la gestión de un videoclub. 5