ESPECIFICACION DE REQUISITOS SOFTWARE 1.- Presentación General.

Este proyecto tiene por objeto crear un sistema informático para llevar el control de la información asociada en la automatización de los proceso de facturación y control de inventario de la empresa Farmacia ³La Principal´.

2.- Clientes.
Farmacia ³La Principal´ de la ciudad de Corinto, municipio de Corinto, departamento de Chinandega, Nicaragua.

3.- Metas.
La meta general de este software es realizar de forma eficiente la automatización de la información relacionada con la facturación y el control de inventario de Farmacia La Principal, más concretamente lo que se desea es:      Almacenar y llevar el control de todos los clientes que solicitan crédito. Llevar el control de los proveedores que abastecen a la farmacia. Realizar y generar el cálculo de la facturación de los productos vendidos. Llevar un control de los clientes que compran al contado. Generación de informes actualizados sobre productos, inventario, ventas, clientes, etc.

4.- Funciones del sistema. Ref. #
R1.1 R1.2 R1.3 R1.4 R1.5 R1.6 R1.7 R1.8 R1.9 R1.10 R1.11 R1.12 R1.13 R1.14 R1.15 R1.16 R1.17 R1.18 R1.19 R1.20

Función
Validar el ingreso del usuario al sistema Ingresar la información de productos en la base de datos Ingresar la información de los proveedores en la base de datos Registrar la información de los clientes al crédito Registrar el detalle de la venta de productos Elaborar factura por la venta de productos Calcular el subtotal, IVA y el total a pagar por factura emitida Consultar datos de los clientes Consultar datos en el catálogo de productos Consultar datos en el registro de proveedores Eliminar proveedores de artículos Anular factura de venta Registrar la remisión de productos Generar informe de venta diaria Generar catálogo de productos Alertar del estado actual de la existencia mínima de productos Decrementar existencia de productos en inventario Incrementar existencia de productos en inventario Generar informe de clientes morosos Imprimir recibo de venta de productos

Categoría
Evidente Evidente Evidente Evidente Evidente Evidente Superflua Evidente Evidente Evidente Evidente Evidente Evidente Evidente Evidente Oculta Oculta Oculta Evidente Evidente

Oblig. Evidente Atributo Interfaz usuario de Detalle y restricciones Vista preliminar que muestre recibo de factura a imprimir 5 segundos como máximo Petición de los datos por 3 veces en caso que fallar al ingresar la contraseña de usuario. Ref.11 R1. Opc. (restricción de frontera) Cuando se genere una factura el recibo de venta se debe imprimir en 5 segundos como máximo. R1.8 Anular factura de venta Eliminar proveedores de artículos Consultar datos de los clientes Evidente Evidente Evidente Tiempo de respuesta Tiempo de respuesta Interfaz de usuario Tiempo de respuesta Interfaz de usuario Tiempo de respuesta Interfaz de usuario Tiempo de respuesta Oblig. # R1. Completado los tres intentos la interfaz se terminará 2 segundos como máximo 2 segundos como máximo Cuadro de dialogo con filtro de información para el usuario 5 segundos Cuadro de dialogo con filtro de información para el usuario 5 segundos Cuadro de dialogo con filtro de información para el usuario 5 segundos Cat. R1. Opc.Atributos del sistema en las especificaciones de funciones. R1. Atributo Detalle y restricciones de frontera Interfaz de usuario Tolerancia a fallos (detalle) Uso de ventanas con el logotipo de la farmacia en todas ellas. así como cuadros de diálogo que contengan ayudas. (detalle) Se utilizará Windows 2003 Server como sistema servidor con estaciones de trabajo ejecutando ya sea Microsoft Windows XP. Opc. Oblig.20 Función Imprimir recibo de venta de productos Cat. Plataforma del sistema operativo Facilidad de uso Tiempo respuesta de b) Atributos del sistema en las especificaciones de funciones. que permita guardar todos los cambios hechos en el último momento.1 Validar el ingreso del usuario al sistema Evidente Tiempo de respuesta Interfaz de usuario Oblig. (restricción de frontera) El sistema deberá contar con un sistema de protección cuando falle la energía del equipo. Opc. (detalle) Cuadros de diálogo interactivos que contengan ayuda sobre el elemento que se está utilizando.. . Windows Vista o Windows 7.5.12 R1. a) Atributos propios del sistema. R1.10 Consultar datos en el registro de proveedores Opc.9 Consultar datos en el catálogo de productos Evidente Opc.

6.. 5.El vendedor acepta el mensaje presentado... Vendedor.9 Curso normal de los eventos: Acción del actor 1. 6. El vendedor accede a la interfaz de inicio de la aplicación e ingresa los datos del nombre de usuario y la contraseña. cotejando la contraseña ingresada con la almacenada en la base de datos.1 Curso normal de los eventos: Acción del actor 1. Primario. Primario. Validarse ante el sistema para poder acceder a las funcionalidades del mismo..El sistema valida los datos ingresados por parte del usuario. Ingresar la información correspondiente de un producto en la base de datos..2.6..Se muestra el mensaje de aceptación de los datos o el mensaje de error en caso contrario. 3. Respuesta del sistema 4.. funciones: R1. 6.El vendedor ingresa en los campos usuario y contraseña lo datos correspondiente a su nombre de usuario ante el sistema y su clave de acceso respectivamente.Casos de usos. utilizando el formato expandido de la Farmacia La Principal. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Registrar datos en el maestro de productos.Caso de uso: Registrar datos en el maestro de productos. Se especifican los casos de uso. El vendedor al recibir un nuevo producto registra la información general de dicho producto en la base de datos. Respuesta del sistema .Cada vez que se recibe un nuevo producto el vendedor apunta los datos generales del mismo para proceder a su alta en el sistema.. Vendedor. y accede a la aplicación en caso que los datos hayan sido validados de manera satisfactoria. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Iniciar sesión en el sistema..El vendedor acepta el ingreso de los datos. en caso contrario debe reingresar los datos de usuario y contraseña.2. 2..1.Caso de uso: Iniciar sesión en el sistema. funciones: R1. R1.El caso de uso comienza cuando el actor inicia la interfaz para ingresar al sistema.

4. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Registrar datos en el maestro de clientes.3. 3.Cada vez que se debe ingresar un nuevo proveedor el vendedor apunta los datos generales del mismo para proceder a su alta en el sistema.. Primario. funciones: R1. Si el proceso de validación falla.Caso de uso: Registrar datos en el maestro de proveedores. 6.4. Respuesta del sistema 5. se muestra el mensaje correspondiente al error. caso contrario se confirma la alta del nuevo producto. 3. El vendedor registra la información de un nuevo proveedor en la base de datos. 6.El vendedor accede a la interfaz del maestro de proveedores..2.El vendedor accede a la interfaz del maestro de productos. 6.El usuario acepta el mensaje mostrado. 6.. 4. Ingresar la información correspondiente de un proveedor en la base de datos.. 2. El vendedor registra la información de un nuevo cliente en la base de datos. Vendedor. caso contrario se confirma la alta del nuevo producto.El usuario acepta el mensaje mostrado.4 Curso normal de los eventos: . se muestra el mensaje correspondiente al error. Ingresar la información correspondiente de un cliente en la base de datos..3. funciones: R1. Si el proceso de validación falla..Caso de uso: Registrar datos en el maestro de clientes. Primario.10 Curso normal de los eventos: Acción del actor 1.El vendedor acepta la entrada de datos al sistema. 5. Vendedor....El vendedor registra los datos del nuevo proveedor.El vendedor registra los datos del nuevo producto.El sistema valida los datos ingresados por el usuario...El sistema valida los datos ingresados por el usuario..El vendedor acepta la entrada de datos al sistema. R1. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Registrar datos en el maestro de proveedores..

6.El vendedor registra los datos del nuevo cliente.. Elaborar factura de venta de productos.7. R1. Si el producto existe muestra la información del producto.El vendedor acepta la entrada de datos al sistema.. caso contrario muestra mensaje de error.9.. funciones: R1.5.6.Cada vez que se debe ingresar un nuevo cliente el vendedor apunta los datos generales del mismo para proceder a su alta en el sistema.20 Curso normal de los eventos: Acción del actor 1. R1.El vendedor en caso de que la búsqueda se haya completado con éxito ingresa la cantidad a vender caso contrario acepta el mensaje de error. Primario. 4. R1.Caso de uso: Registrar detalle de venta. el subtotal general. 6. R1.20.. el IVA y el total a pagar y decrementa la cantidad vendida del producto en inventario.Cada vez que se debe elaborar una nueva Respuesta del sistema .. R1. 3. El vendedor registra la información de la venta de productos.7. Vendedor.El sistema valida los datos ingresados por el usuario. El vendedor registra la información de la venta de un producto de la farmacia. 6. Si el proceso de validación falla. R1.Cada vez que se debe ingresar un nuevo producto a vender el vendedor establece la información del producto.. 3.. Respuesta del sistema 2.El usuario acepta el mensaje mostrado.9. 6. Primario. se muestra el mensaje correspondiente al error.El sistema busca en la base de datos la información del producto. R1.17. Respuesta del sistema 5.5. Ingresar la información correspondiente al detalle de venta de una factura. funciones: R1.. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Registrar detalle de venta.El sistema calcula el monto de la venta. R1. 4.Caso de uso: Elaborar factura de productos..El vendedor accede a la interfaz del maestro de clientes..5. Vendedor. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Elaborar factura de productos..8 Curso normal de los eventos: Acción del actor 1. caso contrario se confirma la alta del nuevo producto. R1. 2..Acción del actor 1..6. R1.

. 7.factura de venta de productos el vendedor accede a la interfaz correspondiente.9 Curso normal de los eventos: Acción del actor 1.El sistema registra en la base de datos la información de la factura.El sistema retorna la información del producto.El sistema establece la fecha de venta.El vendedor especifica la cantidad a vender.. 9. el subtotal general.El vendedor especifica el(los) productos a vender. 13. 12.. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Consultar datos de cliente.. 2.. Buscar información de un producto en el sistema.Caso de uso: Consultar datos de cliente. 4. Buscar información de un cliente en el sistema.. 10. el IVA y total a pagar. mostrando todos los datos requeridos del producto..El vendedor solicita la información de un producto... El vendedor consulta la información de un producto en la base de datos. mostrando todos los datos requeridos del cliente. 8... funciones: R1. 5.. Vendedor. Secundario. Respuesta del sistema 2.El sistema calcula el total del monto. Respuesta del sistema 2. 6.En caso de haber dado la orden de impresión de la factura.El vendedor especifica o busca el nombre del cliente.El sistema retorna la información del producto junto con su precio venta.El vendedor inicia una nueva factura en la pantalla.El vendedor acepta la entrada de datos de la nueva factura. 6.. el sistema genera el recibo de impresión.7..En caso de buscar al cliente el sistema devuelve los datos del cliente. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Consultar datos de productos..El vendedor solicita la información de un cliente.. 11. Secundario. 3.El sistema pregunta si se desea imprimir el recibo de factura..El sistema retorna la información del cliente.El sistema genera un nuevo número de factura. 6. funciones: R1.. Vendedor. 15..Caso de uso: Consultar datos de productos..8 Curso normal de los eventos: Acción del actor 1. 14.El vendedor decide si imprimir o no el recibo de factura.8. El vendedor consulta la información de un cliente en la base de datos. .

12 Curso normal de los eventos: Acción del actor 1. Vendedor.El vendedor eliminar la información de un proveedor. funciones: R1.Caso de uso: Consultar datos de proveedor.El sistema elimina toda la información del proveedor de la base de datos actualizando la información de todo el sistema.11 Curso normal de los eventos: Acción del actor 1.. El vendedor anula la información de una factura en la base de datos.. 6.El vendedor a petición del usuario y previa autorización del administrador anula la factura de venta.10 Curso normal de los eventos: Acción del actor 1. El vendedor elimina la información de un proveedor en la base de datos. revirtiéndose todos los valores tanto en inventario como en el subsistema de venta.. Eliminar la información de un proveedor en el sistema. Vendedor..Caso de uso: Anular factura de venta. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Eliminar proveedor. Respuesta del sistema 2. Secundario. Secundario. 6.. mostrando todos los datos requeridos del proveedor.El sistema retorna la información del proveedor. funciones: R1. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Anular factura de venta. Respuesta del sistema 2. Respuesta del sistema . Buscar información de un proveedor en el sistema..6. El vendedor consulta la información de un proveedor en la base de datos.11.El vendedor solicita la información de un proveedor.9. Anular la emisión de una factura.10.Caso de uso: Eliminar proveedor. Vendedor... Primario. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Consultar datos de proveedor. funciones: R1.

.Caso de uso: Generar catálogo de productos.El sistema muestra un mensaje para confirmar la anulación de la factura.. 6.Caso de uso: Registrar remisión de producto.El sistema muestra la información de la factura.. 6.El vendedor especifica el número de factura.El vendedor solicita el reporte impreso de la venta realizada en el día... Secundario... Generar el informe impreso de la venta diaria de producto.El sistema genera e imprime el reporte en papel físico la información de la venta diaria de productos.. Caso de uso: Actores: Generar catálogo de productos. revierta los datos aplicados por la factura. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Generar informe de venta diaria. 4.12. Respuesta del sistema 2. 3.14 Curso normal de los eventos: Acción del actor 1.. 5.. funciones: R1. Secundario.. Vendedor. .El vendedor acepta la remisión del (los) producto(s).13. 3.13 Curso normal de los eventos: Acción del actor 1. 4.2. Respuesta del sistema 2.El vendedor ingresa la información de cada producto a remitir.El sistema en caso de una confirmación de la anulación de la factura..El vendedor acepta o cancela la operación.. Registrar el traslado de producto de un centro de costo a otro..El vendedor remite la información de un producto de un centro de costo a otro centro de costo. actualizando el inventario de productos.14. El vendedor traslada la información de un producto de un centro de costo hacia otro centro de costo. 6.. El vendedor solicita el informe de la venta de productos realizada en el día. 6.El sistema solicita la información del producto(s) a remitir. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Registrar remisión de productos. 2.El vendedor acepta la anulación de la factura.El sistema registra los datos de la remisión en la base de datos. funciones: R1. 7.Caso de uso: Generar informe de venta diaria. Vendedor.. Vendedor.

funciones: R1.15.16..El vendedor acepta el mensaje mostrado.15 Curso normal de los eventos: Acción del actor 1. Respuesta del sistema 2... El vendedor solicita el informe del catálogo de productos.16 Curso normal de los eventos: Acción del actor 2. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Generar informe de clientes morosos.Caso de uso: Generar informe de clientes morosos. Secundario. 6.. Mostrar mensaje de advertencia de existencia mínima de productos. Respuesta del sistema 2.19 Curso normal de los eventos: Acción del actor 1.El vendedor solicita el informe de los clientes morosos.. Respuesta del sistema 1.. Secundario. Imprimir el reporte de clientes morosos.. . Generar el informe de clientes morosos y que tienen saldos no cancelados. funciones: R1. Sistema. Caso de uso: Actores: Propósito: Resumen: Tipo: Referencias cruzadas: Alertar existencia mínima de productos. 6. Alertar de la existencia mínima de productos en el inventario Secundario.Propósito: Resumen: Tipo: Referencias cruzadas: Generar el informe impreso del catálogo de productos en inventario.El sistema genera e imprime el reporte en papel físico de los clientes morosos.El sistema muestra el mensaje de alerta de la existencia mínima de productos. Vendedor.Caso de uso: Alertar existencia mínima de productos. funciones: R1..El sistema genera e imprime el reporte en papel físico la información del catálogo de productos.El vendedor solicita el reporte impreso del catálogo de productos.

Familias (from Gestión de Inventario) Periodos (from Gestión de Inventario) codigo : string descripcion : string 1 1.n 1 Estados (from Gestión de Inventario) numero_estado descripcion Figura 2.....n iva : double descuento : double 1..n Requisas (from Gestión de Inventario) requisa_numero : string tipo_requisa : string fecha : DateTime total : double comentario : string estado_requisa : string 1 item : int cantidad : int monto : double 1 OrdenesCompra (from Gestión de Inventario) 1 numero_oc fecha subtotal iva descuento total estado GuardarOrdenCompra() ModificarOrdenCompra() CambiarEstado() ConsultarOrdenCompra() Proveedores (from Gestión de Inventario) codigo : string nombre : string alias : string contacto : string cargo_contacto : string direccion : string e_mail : string telefono : string fax : string codigo_postal : int poblacion : string provincia : string 1 pais : string Guardar() Modificar() Eliminar() 1 1 1..n total_pagar : double observacion : string GuardarFactura() CalcularSubotal() CalcularIVA() CalcularDescuento() CalcularTotalPagar() Vendedores (from Gestión de Venta) codigo : string nombres : string apellidos : string 1 e_mail : string activo : bool Productos (from Gestión de Inventario) codigo : string descripcion : string 1 precio : double tipo_producto : string Guardar() Modificar() Eliminar() ModicarPrecio() DetalleVenta (from Gestión de Venta) cantidad_venta : int monto : double GuardarDetalleVenta() Figura 1....Modelo Conceptual. Modelo Conceptual Subsistema de Inventario.n codigo agrupacion UnidadesMedida (from Gestión de Inventario) codigo : string descripcion_corta : string descripcion : string 1 Articulo_Inventario (from Gestión de Inventario) cantidad_apertura : int entrada : int salida : int cantidad_cierre : int cantidad_fisica : int 1 Productos (from Gestión de Inventario) codigo : string descripcion : string precio : double tipo_producto : string Guardar() Modificar() Eliminar() ModicarPrecio() 1.. A continuación se muestra el modelo conceptual del sistema de la Farmacia La Principal.7. Facturas (from Gestión de Venta) numero : string cliente : string tipo_factura : string fecha_venta : DateTime subtotal : double 1. Modelo Conceptual Subsistema de Ventas.n Articulo_OC (from Gestión de Inventario) 1 Empleados (from Gestión de Inventario) codigo : string cedula : string nombres : string apellidos : string sexo : string fecha_nacimiento : DateTime direccion : string estado_civil : string telefono : string e_mail : string activo : bool 1..n Servicios (from Gestión de Inventario) Articulos (from Gestión de Inventario) existencia_actual : int existencia_minima : int 1 Articulo_Requisa (from Gestión de Inventario) item : int cantidad_requerida : int monto : double 1.n codigo_famila : string descripcion : string ic : string it : string Agrupaciones (from Gestión de Inventario) 1 1.n 1 1.n DecremetarExistencia() IncrementarExistencia() 1 1.n 0.n 1....n 1. ..n Inventarios (from Gestión de Inventario) numero : string fecha_apertura : DateT ime fecha_cierre : DateTime estado : string GuardarInventario() ModificarInventario() CambiarEstado() 1.

7. R1. Ninguna. 8. R1. R1.Además se presenta el diagrama de secuencia para la elaboración de una factura.Contrato para iniciar una factura.Contratos... Sistema. 3. funciones: R1.6.  Se crea un nuevo número de factura único.1. R1. A continuación se especifican los contratos que se emplean en el diagrama de secuencia anterior. . 8.9. NOTA: No se definieron en cada uno de los mensajes los parámetros. Crear un nuevo número de factura para la venta de productos. El diagrama es el siguiente: Fig. Nombre: Responsabilidades: Tipo: Referencias cruzadas: Excepciones: Precondiciones: Poscondiciones: generarNumeroFactura().8.20 Ninguna. Diagrama de secuencia para la elaboración de una factura. esto no significa que no deben de definírsele en modelos posteriores para dar mayor nivel de detalle.

Generar un nuevo número de factura para la venta. 8.Contrato para buscar un cliente.6.8. Existe información de clientes.3..Contrato para generar un número de factura. funciones: R1.  Se crea una nueva instancia de la entidad cliente. avisar a través de un mensaje. funciones: R1.8. Sistema.9. Iniciar la búsqueda de la información de un cliente.20 Ninguna. R1.  Se retorna la información pertinente a un cliente. Nombre: Responsabilidades: Tipo: Referencias cruzadas: Excepciones: Precondiciones: Poscondiciones: buscarCliente()..  Se crea una nueva instancia de la entidad Facturas. R1. . Sistema.2. R1. Ninguna. R1.8 Si no hay información de cliente. Nombre: Responsabilidades: Tipo: Referencias cruzadas: Excepciones: Precondiciones: Poscondiciones: iniciarFactura().7.