Está en la página 1de 68

1

UNIVERSIDAD NACIONAL ........................

FACULTAD DE ..............

CARRERA PROFESIONAL ...................................

SISTEMA DE INFORMACIÓN DE COMPRA Y VENTA PARA LA


BOTICA CHASKAFARMA

Presentada por:

Integrantes

Docente: M.Sc. Willian Zamalloa Paro.

CUSCO – PERÚ

2021
2

ÍNDICE

CAPITULO I................................................................................................................................. 6
1. Aspectos Generales............................................................................................................... 2
1.1. Identificación del Problema.............................................................................................................2
1.2. Objetivos.......................................................................................................................................... 4
1.2.1. Objetivo General....................................................................................................4
1.2.2. Objetivos Específicos............................................................................................. 4
1.3. Límites del proyecto........................................................................................................................ 4
1.4. Alcances............................................................................................................................................5
1.4.1. Gestión de Medicamentos y/o Productos............................................................ 5
1.5. Metas................................................................................................................................................5
1.6. Justificación......................................................................................................................................5
1.7. Metodología.....................................................................................................................................6
1.8. CRONOGRAMA.................................................................................................................................6
CAPÍTULO II.................................................................................................................................... 7
2.1. ANTECEDENTES................................................................................................................................ 8
2.1.1. Antecedentes Organizacionales............................................................................8
2.1.2. Trabajos relacionados............................................................................................8
2.2. GLOSARIO DE TÉRMINOS GENERALES............................................................................................ 9
2.3. GLOSARIO DE TÉRMINOS INFORMÁTICOS ()................................................................................. 13
CAPÍTULO III................................................................................................................................. 18
3.1. ORGANIGRAMA............................................................................................................................. 19
3.2. PROCESOS DE NEGOCIO................................................................................................................ 20
3.2.1. Proceso de atención de consulta........................................................................ 20
3.2.2. Proceso General de Venta...................................................................................21
3.2.3. Proceso de Registro de Compra.......................................................................... 22
CAPÍTULO IV.................................................................................................................................23
4.1. FASE DE INICIO............................................................................................................................... 24
4.1.1. Identificación de Requerimientos.......................................................................24
4.1.2. Identificación de Actores.....................................................................................24
4.1.3. Lista de Casos de Uso...........................................................................................25
4.1.4. Matriz de Trazabilidad de Requerimientos y Casos de Uso...............................25
4.1.5. Diagrama de Casos de Uso.................................................................................. 26
4.1.6. Casos de Uso Expandido......................................................................................27
4.2. FASE DE ELABORACIÓN..................................................................................................................35
3

4.2.1. Diagrama de Clases de Análisis........................................................................... 35


Registrar Producto...............................................................................................................35
4.2.2. Diagramas de Secuencia......................................................................................37
4.2.3. Diagrama de Clases..............................................................................................40
4.2.3.1. Descripción de Clases.......................................................................................... 41
4.3. FASE DE CONSTRUCCIÓN............................................................................................................... 44
4.3.1. Diagrama de la base de datos............................................................................. 44
4.3.2. Diseño Físico de la Base de Datos....................................................................... 45
4.3.2.1. Descripción de la Base de Datos......................................................................... 45
4.3.2.2. Código del Esquema de la Base de Datos........................................................... 49
4.3.3. DIAGRAMA DE COMPONENTES.......................................................................... 54
4.3.4. DIAGRAMA DE DESPLIEGUE................................................................................ 54
4.4. FASE DE TRANSICIÓN..................................................................................................................... 55
4.4.1. PRUEBAS DE SISTEMA......................................................................................... 55
RECOMENDACIONES................................................................................................................... 56
BIBLIOGRAFÍA.............................................................................................................................. 57
ANEXOS........................................................................................................................................ 58
INSTALACIÓN DEL SISTEMA........................................................................................................................ 58
Manual de Usuario – Procedimientos........................................................................................................ 59

ÍNDICE DE FIGURAS
Figura 1: Organigrama (5) de la botica “Chaskafarma”.............................................................. 19
Figura 2: Diagrama del proceso de negocio “Atender consulta”................................................20
Figura 3: Diagrama del proceso general de “Venta”...................................................................21
Figura 4: Diagrama del proceso general de “compra”................................................................ 22
Figura 5: Diagrama General de Casos de Uso............................................................................. 26
Figura 6: Prototipo de formulario de “Iniciar Sesión.................................................................. 27
Figura 7: Prototipo para el caso de uso Registrar Venta.............................................................28
4

Figura 8: Prototipo del formulario "Registrar Compra".............................................................. 29


Figura 9: Prototipo del formulario "Registrar Cliente"............................................................... 30
Figura 10: Prototipo del formulario para "Registrar Usuario".................................................... 31
Figura 11: Prototipo del formulario para "Registrar Proveedor"................................................32
Figura 12: Prototipo del formulario para "Registrar Producto"..................................................33
Figura 13: Prototipo del formulario para "Emitir Reporte"........................................................ 34
Figura 14: Diagrama de clases de análisis: iniciar sesión............................................................ 35
Figura 15: Diagrama de clases de análisis: Registrar Trabajador................................................ 35
Figura 16: Diagrama de clases de análisis: Registrar Cliente...................................................... 35
Figura 17: Diagrama de clases de análisis: Registrar Venta........................................................ 36
Figura 18: Diagrama de clases de análisis: Registrar Compra.....................................................36
Figura 19: Diagrama de secuencia de Registrar Producto.......................................................... 37
Figura 20: Diagrama de secuencia de Registrar Trabajador....................................................... 37
Figura 21: Diagrama de secuencia de Registrar Cliente..............................................................38
Figura 22: Diagrama de secuencia de Registrar Venta................................................................38
Figura 23: Diagrama de secuencia de Registrar Compra............................................................ 39
Figura 24: Diagrama general de clases........................................................................................40
Figura 25: Diagrama de la base de datos.................................................................................... 44
Figura 26: Diagrama de componentes........................................................................................ 54
Figura 27: Diagrama de despliegue............................................................................................. 54
Figura 28: Formulario de “Inicio de Sesión"................................................................................59
Figura 29: Formulario “Consultar Articulo”.................................................................................59
Figura 30: Formulario “Definir pedido de venta”........................................................................60
Figura 31: Formulario "Consultar Cliente".................................................................................. 60
Figura 32: Formulario "Registrar Compra"..................................................................................61
Figura 33: Formulario "Consultar Proveedor".............................................................................61
Figura 34: Formulario "Actualizar Stock de Artículo"..................................................................62
Figura 35: Formulario "Registrar Cliente"................................................................................... 63

ÍNDICE DE TABLAS
Tabla 1: Lista de requerimientos identificados............................................................................ 24
Tabla 2: Lista de actores identificados......................................................................................... 24
Tabla 3: Lista de Casos de Uso..................................................................................................... 25
Tabla 4: Matriz de trazabilidad (casos de uso 01 al 11)............................................................... 25
Tabla 5: Caso de uso expandido “Iniciar Sesión”......................................................................... 27
5

Tabla 6: Caso de Uso Registrar Venta.......................................................................................... 28


Tabla 7: Caso de Uso expandido "Registrar Compra"..................................................................29
Tabla 8: Caso de Uso expandido "Registrar Cliente"................................................................... 30
Tabla 9: Caso de Uso expandido "Registrar trabajador"..............................................................31
Tabla 10: Caso de uso expandido "Registrar Proveedor"............................................................ 32
Tabla 11: Caso de uso expandido "Registrar producto".............................................................. 33
Tabla 12: Caso de uso expandido " Emitir Reporte”.................................................................... 34
Tabla 13: Descripción de la clase proveedor................................................................................41
Tabla 14: Descripción de la clase "Persona natural"....................................................................41
Tabla 15: Descripción de la clase trabajador............................................................................... 42
Tabla 16: Descripción de la clase Usuario.................................................................................... 42
Tabla 17: Descripción de la clase Artículo....................................................................................42
Tabla 18: Descripción de la clase Venta....................................................................................... 43
Tabla 19: Descripción de la clase Compra....................................................................................43
Tabla 20: Descripción de la tabla laboratorio.............................................................................. 45
Tabla 21: Descripción de la tabla proveedor............................................................................... 45
Tabla 22: Descripción de la tabla Trabajador...............................................................................45
Tabla 23: Descripción de la tabla Usuario....................................................................................46
Tabla 24: Descripción de la tabla Artículo....................................................................................46
Tabla 25: Descripción de la tabla Cliente..................................................................................... 46
Tabla 26: Descripción de la tabla Compra....................................................................................47
Tabla 27: Descripción de la tabla Detalle_Compra...................................................................... 47
Tabla 28: Descripción de la tabla Venta.......................................................................................48
Tabla 29: Descripción de la tabla Detalle_Venta......................................................................... 48
6

CAPITULO I
ASPECTOS GENERALES
2

1. Aspectos Generales

1.1. Identificación del Problema

La Botica “ChasKafarma” con RUC: 10478337359, en adelante LA BOTICA, tiene algunos años en
el rubro de la venta de medicamentos y productos de perfumería en general. Inicia sus
operaciones el 01 de julio 2017, su local se encuentra en: calle Concepción s/n Cercado Plaza de
Armas del distrito de Chamaca, provincia Chumbivilcas, departamento del Cusco, la propietaria
técnica farmacéutica Yesica Vizarreta Correa, cuenta con un personal para la compra y venta y
un Químico Farmacéutico.

Misión: ofrecer atención de calidad y rapidez a los clientes en el distrito de chamaca


proporcionando siempre una experiencia extraordinaria.
Visión: ser la mejor botica en el distrito de chamaca. Ser el mejor significa brindar calidad de
atención al cliente, sistematizado y celeridad.

La principal actividad de LA BOTICA, es la venta de medicamentos y productos de perfumería


en general. Esta actividad no cuenta con soporte digital y se realiza todo de forma manual,
aunque por supuesto, con la correspondiente emisión de los comprobantes de venta y en
dichos procesos se han determinado los siguientes problemas:
 Se tiene un cuaderno con la lista de medicamentos y sus respectivos precios pero es difícil
de consultar debido a que la búsqueda es complicado, a su vez retrasa la atención al
público.
 No se tiene el stock actualizado de los medicamentos, lo cual es un problema debido a
que en algunos tratamientos que se atienden, se les da los medicamentos incompletos o
se completa con medicamentos similares.
 Ineficiencia en cuanto a la verificación de las fechas de vencimiento.
 Demora en los cálculos de los totales y el IGV, al ser un proceso manual no exento de
errores de cálculo.

Por las razones antes descritas es que se hace necesario implementar un sistema de
seguimiento de control de compra y ventas, que dé solución a los problemas antes
identificados.
3

Conclusiones
 Se identifican los requerimientos mediante. el uso de técnicas de recopilación de
información como la entrevista.
 Se analizaron los procesos que se sigue durante la venta de medicamentos y productos
afines, y se modelaron en BPMN.
 Se diseña los modelos del negocio utilizando UML.
 Se diseñó y se implementó una base de datos de acuerdo a los medicamentos del
sistema.
 Se utilizó una arquitectura adecuada en este caso MVC para un desarrollo adecuado
del proyecto.
 Se realizó pruebas para verificar el buen funcionamiento del sistema.
4

1.2. Objetivos

1.2.1. Objetivo General

Desarrollar un Sistema de Información de compra y venta para la botica Chaskafarma.

1.2.2. Objetivos Específicos

 Identificar los requerimientos mediante el uso de técnicas de recopilación de


información como entrevista.
 Analizar los procesos que se siguen durante la venta de medicamentos y
productos afines y modelarlos en BPMN.
 Diseñar los modelos del negocio utilizando UML.
 Diseñar e implementar una base de datos, acorde a los requerimientos del sistema.
 Utilizar una arquitectura adecuada al desarrollo del sistema
 Realizar pruebas para verificar el buen funcionamiento del sistema.

1.3. Límites del proyecto

El Sistema de Información para el Control de Compra y Ventas, no abarcará los siguientes


puntos:

 Control de asistencia del personal que trabaja en LA BOTICA.


 Módulos o interfaces a sistemas vía web
 Procesamiento de ventas al crédito
 No podrá accederse vía web.
 No se comunicara con sistemas de la SUNAT.
5

1.4. Alcances

El sistema de información propuesto, comprende los siguientes aspectos:

1.4.1. Gestión de Medicamentos y/o Productos

 Registro de medicamentos y/o productos comercializados.


 Registro de laboratorios.
 Registro de proveedores
 Registro de clientes
 Control de existencias (stock), y fechas de vencimiento.
 Registro de ventas.
 Registro de compras.
 Reportes variados.
 Registro del personal que labora en LA BOTICA.
 Registro de usuarios del sistema

1.5. Metas

El proyecto generará los siguientes entregables:

 Documentación técnica.
 Manual de usuario.
 Código del esquema de la base de datos.
 Código fuente de la aplicación

1.6. Justificación

El presente trabajo se justifica por las siguientes razones:

 Se resolverá el problema de la demora en la obtención de los datos de los


medicamentos: precios, cantidad disponible, unidad de medida o formato de
comercialización, lo que evitará la demora en la atención al público.

 Permitirá la actualización del stock en forma automática después de cada proceso de


venta o de compra.

 Permitirá verificar las fechas de vencimiento y controlará la vigencia de las mismas.

 Evitará la demora en los cálculos de los subtotales, el IGV y los totales, además de
hacerlo con certeza.

 Se dispondrán de datos actualizados de todos los medicamentos y productos.


6

Por estas razones se justifica la realización de un sistema de información para el control de


ventas y seguimiento de lotes de medicamentos y productos afines en LA BOTICA ChaskaFarma.

1.7. Metodología

La metodología elegida como referencia en el presente trabajo es el PUDS (Proceso Unificado


de Desarrollo de Software) el cual transformará los requerimientos de los usuarios en un
producto software (Jacobson, Booch, & J); para el modelamiento de los procesos se utilizará el
BPMN (Notación para el Modelado de Procesos de Negocio).

1.8. CRONOGRAMA

MESES MARZO ABRIL MAYO JUNIO


SEMANAS 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Nombre de la tarea
Fase inicio
Descripción del problema
Lista de requerimientos
Estudio de factibilidad
Análisis de riesgo
Fase elaboración
Elaborar diagrama de clases
Elaborar diagrama de colaboración
Diseñar arquitectura candidata
Fase construcción
Diseño e implementación de la
base de datos del sistema
Desarrollo del sistema
Fase transición
Realizar pruebas del sistema
7

CAPÍTULO II
MARCO REFERENCIAL
8

2. MARCO REFERENCIAL

2.1. ANTECEDENTES

2.1.1. Antecedentes Organizacionales

La botica chaskafarma, no indica tener un proyecto similar implementado con


anterioridad.

2.1.2. Trabajos relacionados

 “SISTEMA DE CONTROL DE FARMACIA PARA UN CENTRO DE SALUD DE NIVEL I-3”,


previo a la obtención del título de Ingeniero de Software, autores: José Carlos Rivera
Olivera y Antony Jaime Veliz, asesora: Amanda Sánchez Larriega, Universidad de
Ciencias Aplicadas, Perú 2013.

 “ANÁLISIS DE LA ROTACIÓN DE MEDICAMENTOS, PARA GARANTIZAR UN STOCK


PERMANENTE DE LOS MISMOS, A TRAVÉS DE LA IMPLEMENTACIÓN DE LA HOJA DE
KÁRDEX, EN LA FARMACIA DEL HOSPICE SAN CAMILO DEL SECTOR COMITÉ DEL PUEBLO
DMQ 2015-2016”, proyecto de investigación previo a la obtención del título en
Tecnólogo en Administración de Boticas, autora: Marjorie Lizbeth Taipe Lema, tutora:
Dra. Estela Montes, Tecnológico Superior Cordillera, Ecuador 2016.

 “GESTIÓN DEL SUMINISTRO DE MEDICAMENTOS EN EL DEPARTAMENTO DE FARMACIA


DEL HOSPITAL BELÉN DE TRUJILLO EN EL PERIODO MAYO 2006 – MARZO 2007”; autora:
Victoria del Pilar Cueva Cachay, asesor: Mgt. Q.F. Percy Cruzado Lescano, previo a la
obtención del título de Químico Farmacéutico en la Universidad Nacional de Trujillo,
Perú 2007.
9

2.2. GLOSARIO DE TÉRMINOS GENERALES

AUTOMEDICACIÓN (1). - Es la situación en la que los pacientes consiguen y utilizan los medicamentos sin
ninguna intervención del médico u otro profesional autorizado para prescribir; incluye la adquisición de
medicamentos de venta con receta médica en establecimientos farmacéuticos (farmacias y boticas) sin
presentación de la prescripción médica, la recepción de medicamentos a través de otras fuentes y el uso
de medicamentos disponibles en el hogar que quedaron de prescripciones previas.

CONTRAINDICACIONES (*).- Indicación del peligro o inconveniencia de emplear un medicamento.

DENOMINACIÓN COMÚN INTERNACIONAL (DCI) (*). - Nombre común para los medicamentos
recomendada por la Organización Mundial de la Salud, con el objeto de lograr su identificación
internacional.

DISPENSACIÓN (*). - La dispensación es el acto en que el farmacéutico entrega la medicación prescrita


junto a la información necesaria para su uso racional.

DISTRIBUCIÓN (*). - Reparto de un medicamento desde la circulación general a distintos tejidos.

DOSIFICACIÓN (*). - Describe la dosis de un medicamento, los intervalos entre las administraciones y la
duración del tratamiento.

DOSIS (*). - Cantidad total de medicamento que se administra de una sola vez. Puede ser expresada
como dosis absoluta (la cantidad de medicamento administrada a un paciente) o como dosis relativa. En
este caso la dosis se expresa con relación a alguna característica del sujeto. Por ejemplo, en función del
peso corporal (mg/kg) o del área de superficie corporal (mg/m2 sc).

EFECTO ADVERSO (*). - Cualquier suceso médico desfavorable que puede aparecer durante el
tratamiento con un producto farmacéutico pero que no necesariamente tiene una relación causal con el
tratamiento.

EFECTO FARMACOLÓGICO (*). - Es el efecto ocasionado por un medicamento en el organismo, el cual


involucra:
 Efecto terapéutico
 Efectos secundarios.

EFECTOS SECUNDARIOS (*). - Efecto adicional producido por un fármaco, bien sea positivo o negativo.
Una sensación o síntoma indeseable causado por una opción de tratamiento para una enfermedad o
dolencia, que sin embargo generalmente no tiene nada que ver con el propósito del tratamiento.

(1)
(Arias, 1999)
(*)
La fuente es la misma que para la nota a pie de página (1).
10

EFECTO TERAPÉUTICO (*). - Los efectos positivos que producen los medicamentos para tratar una
enfermedad o condición, es decir, el efecto deseado por la cual la droga fue introducida en el cuerpo.

ESTABLECIMIENTO FARMACÉUTICO (*). - Se refiere a las farmacias, boticas, botiquines, laboratorios y


droguerías. Las farmacias y boticas son establecimientos dedicados a la dispensación y expendio de los
productos farmacéuticos, galénicos, dietéticos y edulcorantes, y de recursos terapéuticos naturales de
venta bajo receta médica. También donde se comercializan insumos, instrumental y equipo de uso
médico quirúrgico y odontológico, productos cosméticos y de higiene personal y productos sanitarios.
Las farmacias y boticas deben contar con la presencia permanente de un profesional químico-
farmacéutico durante todo su horario de atención, siendo este profesional responsable de la
dispensación y de la información y orientación al usuario sobre la administración, uso y dosis del
producto farmacéutico, su interacción con otros medicamentos, sus reacciones adversas y sus
condiciones de conservación. Así mismo, este profesional está facultado para ofrecer al usuario
alternativas de medicamentos química y farmacológicamente equivalentes al prescrito en la receta, en
igual forma farmacéutica y dosis.

EXCIPIENTE (*). - Sustancia por lo común inactiva, que se mezcla con los medicamentos para darles la
consistencia, forma, sabor, etc. para facilitar su utilización.

EXPENDIO (*). - El expendio es el acto en que personal de farmacia no profesional (es decir no químico-
farmacéutico) entrega la medicación prescrita.

FORMA FARMACÉUTICA (*). - Es la forma como se ofrece un producto para su comercialización con
relación al tipo de envase y contenido en volumen y número de unidades.

FORMULARIO DE MEDICAMENTOS (*). - Documento que reúne la lista de los medicamentos que han
sido seleccionados para ser utilizados en el país, con información farmacológica para promover el uso
seguro y efectivo de los mismos.

INDICACIONES MÉDICAS (*). - Denominación genérica de la actuación que el médico estima más
conveniente en una situación dada; puede tratarse de una prueba diagnóstica o de un tratamiento.

INTERACCIONES (*). - Cualquier interacción entre uno o más medicamentos, entre un medicamento y un
alimento y entre un medicamento y una prueba de laboratorio. En general, las dos primeras categorías
de interacciones tienen importancia por el efecto que ellas producen en la actividad farmacológica del
medicamento: aumentan o disminuyen los efectos deseables o los efectos adversos.

MEDICAMENTO (*). - Es aquel preparado farmacéutico obtenido a partir de uno o más principios activos,
que puede o no contener excipientes, que es presentado bajo una forma farmacéutica definida,
dosificado y empleado para la prevención, diagnóstico o tratamiento de una enfermedad o estado
patológico o para modificar sistemas fisiológicos en beneficio de la persona a quien le fue administrado.

(*)
(Arias, 1999)

MEDICAMENTO ANALGÉSICO (*). - Medicamento que calma o quita el dolor físico

MEDICAMENTO ANTIINFLAMATORIO (*). - Medicamento utilizado para disminuir o inhibir la inflamación.


11

MEDICAMENTO DE MARCA (*). - Es aquel producto farmacéutico que se comercializa bajo un nombre o
una marca que el fabricante registra para asegurar su uso exclusivo.

MEDICAMENTO ESENCIAL (*). - Este concepto fue propuesto por la OMS con el fin de optimizar los
recursos financieros limitados de un sistema de salud. El concepto se refiere a un conjunto de
medicamentos que son básicos, indispensables, con valor terapéutico significativo, seguros, de bajo
costo y que satisfagan necesidades médicas de la gran mayoría de la población, al dar respuesta a los
problemas de mayor relevancia en el perfil de morbimortalidad de una comunidad.

MEDICAMENTO GENÉRICO (*). - Es el producto farmacéutico cuyo nombre corresponde a la


Denominación Común Internacional del principio activo, recomendado por la Organización Mundial de
la Salud (OMS) y no es identificado con el nombre de marca. Por lo común se fabrica sin licencia de la
empresa innovadora y se comercializa tras haber vencido la patente y otros derechos de exclusividad”.
En el Informe 34º del Comité de Expertos de la OMS en especificaciones para las preparaciones
farmacéutica (Ginebra 1996), establece que el término “producto genérico” tiene significados diferentes
en distintas jurisdicciones. Los productos genéricos se pueden comercializar ya sea bajo el nombre
común aprobado o bajo un nuevo nombre comercial (de patente). En ocasiones se comercializan bajo
formas farmacéuticas o concentraciones distintas a las de los productos innovadores.

NUTRIENTES (*). - Un nutriente es un producto químico interior que necesita la célula para realizar sus
funciones vitales. Los nutrientes son cualquier elemento o compuesto químico necesario para el
metabolismo de un ser vivo. Para los seres vivos, los principales nutrientes se encuentran en los
alimentos y son: Proteínas, Hidratos de carbono, Lípidos y Micronutrientes (vitaminas, minerales,
oligoelementos y antioxidantes).

PATOLOGÍA (*). - Enfermedad que padece una persona. / Parte de la medicina que estudia las
enfermedades.

PETITORIO NACIONAL DE MEDICAMENTOS ESENCIALES (*). - Basado en la Lista Modelo de


Medicamentos Esenciales de la OMS, considera los criterios técnicos fundamentales de eficacia, riesgo,
costo y beneficio, lo que conduce a la selección de un grupo determinado de medicamentos
indispensables para atender las necesidades sanitarias prioritarias del país.

POLIFARMACIA (*). - Según la OMS, Polifarmacia es consumir más de 3 medicamentos simultáneamente.

PRESCRIPCIÓN (*). - Nota escrita por un médico en la que se indica el medicamento que debe
proporcionarse a un paciente, así como las normas para su correcta administración. También se
denomina receta.
PRINCIPIO ACTIVO (*). - Es la materia prima, sustancia o mezcla de sustancias dotadas de un efecto
farmacológico determinado.

(*)
(Arias, 1999)

PSICÓTROPOS (*). - Principio activo que tiene efecto sobre las funciones psíquicas. Esta denominación
puede referirse a un principio activo de un medicamento en general utilizado con finalidad terapéutica o
a principios activos de productos que no son medicamentos como bebidas alcohólicas (etanol), tabaco
(nicotina), opio (heroína, morfina y otros opiáceos). Están sometidas a fiscalización internacional,
pueden producir dependencia física o psíquica y figuran en las listas I, II, III y IV del Convenio de las
Naciones Unidas sobre Sustancias Psicotrópicas de 1971.

REACCIONES ADVERSAS A MEDICAMENTOS (*). - Reacción nociva o no intencionada que ocurre a las
dosis habituales empleadas en el ser humano para la profilaxis, diagnóstico o tratamiento de
enfermedades o para modificar las funciones fisiológicas.
12

REGISTRO SANITARIO (*). - Autorización expedida por la autoridad reguladora nacional para producir o
vender un determinado medicamento. Esta autorización se expide una vez que la solicitud de registro
del producto es evaluada por expertos y se encuentre satisfactoria, desde el punto de vista de la calidad
farmacológica del producto y en algunos países, de la necesidad que se tenga del mismo. Constituye un
pre-requisito para introducir el producto en el mercado

SHOCK ANAFILÁCTICO (*). - Se llama shock anafiláctico a una reacción alérgica extrema. Habitualmente
no sucede en la primera exposición del organismo al alérgeno, sino que sucede después de que la
persona que ya se ha expuesto, ha quedado sensibilizada a esa sustancia en particular. Los síntomas
principales incluyen comezón extrema, edema facial, y espasmos musculares que aunados al edema
pueden causar obstrucción de las vías respiratorias, náusea, vómito, dolor abdominal, y una baja muy
brusca de la presión arterial causada por la dilatación de los vasos sanguíneos capilares. Toda esta serie
de eventos, puede provocar la muerte del paciente, si éste no es atendido rápida y adecuadamente.

SOBREDOSIS (*). - Administración de dosis mayores que lo usual o de dosis usuales administradas a
intervalos de dosificación menores que las corrientes, la cual resulta en la producción de efectos tóxicos
del medicamento.

SUPLEMENTACIÓN (*)
. - Medida que sirve para completar, aumentar o reforzar una cosa en algún
aspecto.

TOXICIDAD (*). -Capacidad de cualquier sustancia o microorganismo para inducir efectos perjudiciales o
la muerte.

TRATAMIENTO (*). - Aplicación de medidas técnicas encaminadas a la recuperación de la salud.

USO RACIONAL DE MEDICAMENTOS (*).- El uso racional de medicamentos requiere que los pacientes
reciban los medicamentos apropiados a sus necesidades clínicas, a una dosificación que satisfaga sus
requerimientos individuales por un período adecuado de tiempo y al costo más bajo para ellos y su
comunidad (Definición dada por la Conferencia de Expertos sobre Uso Racional de Medicamentos
convocados por la OMS en l985 en la ciudad de Nairobi).

(*)
(Arias, 1999)
13

2.3. GLOSARIO DE TÉRMINOS INFORMÁTICOS (2)

ABSTRACCIÓN. – Acción y efecto de “separa por medios de una operación intelectual las cualidades de
un objeto para considerarlas aisladamente o para considerar el mismo objeto en su pura esencia o
noción”.

ACCESIBILIDAD. – Aspecto fundamental de la información (y de los datos), que expone lo disponible que
se encuentra (la información).

ACTOR. – Usuario externo al sistema, para el que se provee información y/o algún servicio que le resulta
de valor.

ACCIÓN DE CREACIÓN. – Produce la instanciación y creación de un objeto a partir de las


especificaciones de una clase.

AISLAMIENTO. – Propiedad de las transacciones de las bases de datos, especifica que una transacción
no muestra los cambios que produce hasta que no finaliza su ejecución.

ANÁLISIS DEL SISTEMA. - El análisis de sistemas es la ciencia encargada del análisis de sistemas grandes
y complejos y la interacción entre esos sistemas. Esta área se encuentra muy relacionada con la
Investigación de operaciones. Los analistas de sistemas utilizan la metodología matemática para obtener
los detalles de los sistemas a los cuales se encuentran analizando.

ASOCIACIÓN. – Conexión discreta entre objetos u otras instancias de un sistema.

ASOCIACIÓN DE AGREGACIÓN. – Representa una relación todo – parte. Utiliza como símbolo un rombo
(diamante) vacío que está en el lado de la clase agregada.

ASOCIACIÓN DE COMPOSICIÓN. – Forma más fuerte de asociación que la de agregación, en este caso el
símbolo del rombo se muestra relleno en color oscuro.

ATOMICIDAD. – Propiedad de las transacciones de bases de datos, por la que, dado un conjunto de
operaciones por ejecutar, o bien se ejecutan todas las operaciones dentro de la transacción o no se
completa ninguna ejecución.

ATRIBUTO. – Campo o propiedad que describe una característica común en un conjunto de objetos.

BASE DE DATOS. – Colección o depósito de datos integrados, almacenados en soporte secundario (no
volátil) y con redundancia controlada. Los datos están interrelacionados y estructurados de acuerdo con
un modelo capaz de recoger el máximo contenido semántico.

CLASE. – Concepto discreto que describe un componente (o conjunto de componentes similares en


características, relaciones y comportamiento) que es parte de un sistema en estudio.
CLAVE CANDIDATA. – Conjunto de atributos (de una relación en bases de datos) que identifica unívoca y
mínimamente cada tupla de la relación.

(2 )
Diccionario de Términos Informáticos Logman, 3ra Ed., 2010
14

CLAVE PRIMARIA. – Aquella clave candidata, elegida por el usuario para identificar las tuplas de la
relación.

CAMPO. – En bases de datos relacionales, columna de una relación cuyo conjunto posible de valores
pertenece a un dominio.

CASO DE USO. – Una especificación del comportamiento de una entidad y su interacción con los agentes
externos.

CONFIDENCIALIDAD. – Aspecto de la información y de los datos que establece que no deben ser
revelados a usuarios no autorizados, comprende a los datos personales.

COMPONENTE. – Una pieza percibible de un sistema. Es una unidad física de implementación con
interfaces bien definidas.

DATO. - Flujos de elementos en bruto que representan los eventos que ocurren en las organizaciones o
en el entorno físico antes de ordenarlos e interpretarlos en una forma que las personas puedan
comprender y usar.

DIAGRAMA DE SECUENCIA. – Representa una interacción como un gráfico bidimensional, que divide en
columnas el espacio de acción de diferentes roles los cuales envían mensajes entre ellos. Cada columna
tiene su línea de vida, cuanto más abajo se sitúe un mensaje, más tarde ocurre en el tiempo.

DISPARADOR. – Conocido por su término en inglés “trigger”, es un tipo especial de procedimiento


almacenado, pero que, a diferencia de este último, no se activa por invocación de usuario u otro módulo
sino en respuesta a un evento insert, update o delete, o una combinación de éstos.

DOMINIO. – Conjunto finito de valores homogéneos y atómicos V1, V2, . . ., Vn; caracterizado por un
nombre.

ENTRADA. - Captura o recolecta los datos en crudo desde el interior de la organización o a través de su
entorno externo.

ESQUEMA. – Descripción de una parte de la realidad en términos de un modelo de datos.

ESQUEMA CONCEPTUAL. – Describe la visión global de los datos (a nivel de la organización y desde su
punto de vista), contiene la descripción de los datos, sus interrelaciones, restricciones de integridad y
confidencialidad.

ESQUEMA EXTERNO. – Describe la visión que tiene un usuario en particular de la base de datos.
Contiene las especificaciones de restricciones de uso (lectura, escritura, por ejemplo) para el usuario.

ESQUEMA INTERNO. – Estructura física de la base de datos, es altamente dependiente del sistema
gestor de base de datos, define tres aspectos: estrategia de almacenamiento, caminos de acceso y
misceláneas (seguridad, ajuste y optimización).

INFORMACIÓN. - Datos que se han modelado (procesado) en una forma significativa y útil para los seres
humanos.
15

INTEGRIDAD. – Aspecto de los datos e información que establece que dichos elementos no deben ser
“falseados”.

INTEGRIDAD REFERENCIAL. – Restricción semántica del modelo relacional, que se define sobre dos
relaciones R1 y R2, con R1 la relación referenciada y R2 la relación que referencia. Todo valor del
descriptor en R2 debe tener un valor asociado en R1 (que es clave candidata), por lo que el descriptor en
R2 es clave ajena.

INTERFAZ. – Un conjunto de operaciones con nombre que caracterizan un comportamiento, suele


usarse como un “contrato” de implementación.

LENGUAJE DE CONSULTAS ESTRUCTURADAS. – Lenguaje especializado del contexto de las bases de


datos, cuenta con su propio conjunto de instrucciones, estructuras de control, estructuras de datos;
permite interactuar como lenguaje interactivo o lenguaje embebido, se le conoce por sus siglas en inglés
(SQL).

MODELO. – Una representación gráfica y simbólica de una cosa atendiendo solo a sus líneas o
características más significativas.

MODELO DE DATOS. – Son componentes que proporcionan mecanismos de abstracción que permiten la
representación de una parte de la realidad (tema en estudio) cuyos datos son de interés registrarlos.

NODO. – Un recurso computacional identificable dentro de la infraestructura de un sistema.

OBJETO. - Entidad discreta con identidad, estado y comportamiento invocable construido a partir de las
especificaciones descritas en la clase a la que pertenece.

OBLIGATORIEDAD. – Restricción semántica del modelo relacional, señala que no se admiten valores
nulos para los atributos que sean referidos por dicha restricción.

PAQUETE. – Una parte del modelo del sistema, actúa como un contenedor u organizador ya que
almacena conjuntos de componentes que son estructurados de acuerdo a una arquitectura previamente
definida.

PERSISTENCIA. – Propiedad de las transacciones de bases de datos, especifica que una vez que la
transacción finaliza con éxito, sus efectos perduran en la base de datos.

PRESERVACIÓN DE LA CONSISTENCIA. - Propiedad de las transacciones de bases de datos, especifica


que la ejecución de una transacción debe dejar a la base de datos en un estado consistente.
PROCESAMIENTO. – Conjunto de actividades que convierten las entradas en bruto en un formato
significativo (salida).

PROCEDIMIENTO ALMACENADO. – Módulo ejecutable almacenado en la misma base de datos, contiene


instrucciones (escritas en algún lenguaje de script que por lo general es el SQL o una variante).

RELACIÓN. – Estructura básica del modelo relacional, es un conjunto de filas (tuplas) con determinadas
características. En el contexto de bases de datos es equivalente al término tabla.

RELACIÓN DE ASOCIACIÓN. – Una descripción de una conexión entre instancias de clases.


16

RELACIÓN DE DEPENDENCIA. – Una relación entre dos elementos del modelo.

RELACIÓN DE EXTENSIÓN. – Define la inserción de comportamiento adicional en un caso de uso base


que no tiene conocimiento sobre él.

RELACIÓN DE FLUJO. – Una relación entre versiones de un objeto sucesivas veces.

RELACIÓN DE GENERALIZACIÓN. – Relación entre una especificación y su implementación. Es una


relación taxonómica entre una descripción más general y otra más específica.

RELACIÓN DE HERENCIA. – Vínculo entre una clase que define características y comportamiento que se
transfieren a otra clase denominada “clase hija” en la que ya no se requiere definir nuevamente dichos
descriptores.

RELACIÓN DE INCLUSIÓN. – Define la inserción de comportamiento adicional en un caso de uso base


que describe explícitamente la inserción.

RELACIÓN DE REALIZACIÓN. – Conecta un elemento del modelo, tal como una clase con otro elemento
tal como una interfaz.

RELACIÓN ENTRE CLASIFICADORES. – Vínculo entre distintos tipos de clasificadores, por ejemplo, la
asociación, generalización, flujo.

RELACIÓN DE CASOS DE USO. – Vínculo entre clasificadores de casos de uso.

ROL. – Clasificador restringido a un uso particular en una colaboración.

SALIDA. – Resultado del procesamiento de las entradas, transfiere la información procesada a las
personas que harán uso de ella, o a las actividades para las que se utilizará.

SISTEMA. – Conjunto de cosas que relacionadas entre sí ordenadamente contribuyen a un determinado


objetivo.

SISTEMA DE BASE DE DATOS (3). – Conjunto de componentes integrados, conformado por el sistema de
gestión de base de datos, la base de datos misma y los usuarios.

SISTEMA DE INFORMACIÓN. - Conjunto de componentes interrelacionados que recolectan (o


recuperan), procesan, almacenan y distribuyen información para apoyar los procesos de toma de
decisiones y de control en una organización.

SISTEMA DE GESTIÓN DE BASES DE DATOS (SGBD). – Conjunto de programas que permite la


implantación, acceso y mantenimiento de la base de datos.

RETROALIMENTACIÓN. – Parte o la totalidad de la salida que se devuelve a los componentes apropiados


de la organización para ayudarles a evaluar o corregir la etapa de entrada.

TECNOLOGÍA DE INFORMACIÓN (4). - hardware y software que necesita usar una empresa para poder
cumplir con sus objetivos de negocios.

(3)
(Piattini, Marcos, Calero, & Vela, 2012)
(4)
(Laudon & Laudon, 2012)
17

TIPO DE DATO. – Un descriptor de un conjunto de valores primitivos que carecen de identidad.

TRANSACCIÓN. – Secuencia de operaciones en la base de datos que han de ejecutarse en forma atómica
(como una sola unidad) para asegurar que después de cualquier actualización el contenido de la base de
datos quede en un estado consistente.

UNICIDAD. – Restricción semántica del modelo relacional mediante la cual se indica que los valores de
atributos (uno o más) no pueden repetirse en una relación.

VALOR NULO. – Una señal utilizada para representar información desconocida, inaplicables, inexistente,
no válida, no proporcionada, indefinida.

VISTA DE CASOS DE USO. – Captura el comportamiento de un sistema, un subsistema, una clase, tal
como lo percibe un usuario exterior (actor).

VISTA DE INTERACCIÓN. - Describe la dinámica entre los componentes de un sistema desde el punto de
vista de algún usuario externo (actor), por ejemplo, las colaboraciones, las secuencias.

VISTA DE GESTIÓN DEL MODELO. – Representación de espacios de trabajo en los que se implementará
el sistema, el espacio está dividido por paquetes.
18

CAPÍTULO III
PROCESOS DEL NEGOCIO
19

3. PROCESOS DE NEGOCIO

3.1. ORGANIGRAMA

Figura 1: Organigrama (5) de la botica “Chaskafarma”.

Administrador (5). - Personal a cargo de la Botica (Farmacéutico), dirige la gestión integral de la misma.

Vendedor . - Personal a cargo de atender a los clientes y público en general, absuelve consultas,
(5)

verifica la disponibilidad de los productos farmacéuticos, procesa los pedidos de ventas hechas por los
potenciales clientes, gestiona los pedidos de venta para que sean procesados en caja y entrega los
paquetes a los clientes que hayan realizado el respectivo pago.

Cajero (5). - Procesa las ventas de los productos farmacéuticos, de ser el caso puede anular la operación
de venta, se encarga de la gestión directa de los bienes dinerarios que corresponden a caja, realiza el
arqueo diario y mensual de las operaciones de caja.

Almacenero (5)
. - Personal a cargo de la gestión de existencias, inventario y rotación de los productos
farmacéuticos, realiza la verificación de las existencias, control y seguimiento de lotes, emite los pedidos
de reposición para aquellos productos con riesgo de stock, da de baja aquellos lotes que hayan
superado las fechas de vencimiento.

(5)
Fuente: Manual de Organización y Funciones
20

3.2. PROCESOS DE NEGOCIO

3.2.1. Proceso de atención de consulta

Descripción:
(a) El usuario, solicita información de algún producto
(b) El vendedor proporciona la información solicitada si está disponible
(c) Si el usuario desea consultar sobre otro producto, el flujo regresa al punto (a),
en caso contrario termina y se retira (o pasa a otro proceso).

Figura 2: Diagrama del proceso de negocio “Atender consulta”


21

3.2.2. Proceso General de Venta

Descripción:

(a) El usuario ingresa al local de la botica y solicita atención


(b) El encargado (vendedor), atiende la consulta, si corresponde, atiende el caso como
un pedido:
i. Por cada ítem solicitado por el usuario, se verifica si puede ser expendido o
reemplazado por un artículo sustituto o simplemente no puede ser surtido.
Se acumula su importe (el total de unidades pedidas por su precio
unitario).
(c) Cuando el usuario ya no pide más artículos (o su receta no lo indica), el vendedor le
notifica el total acumulado y si está de acuerdo con proceder a la compra.
(d) Si el usuario está de acuerdo, el vendedor expide una comanda con el monto total
a pagar con copia a caja.
(e) El usuario se apersona a caja, donde entrega su comanda al cajero, quien lo verifica
con su copia, si procede solicita al usuario el pago del importe total.
(f) El cliente, procede a realizar el pago.
(g) El cajero registra la venta, el importe pagado, genera el comprobante que entrega
al cliente (si procede junto al cambio).
(h) El cliente recibe su comprobante (y el cambio) y solicita al vendedor la entrega de
su paquete.
(i) El vendedor verifica el comprobante, si procede entrega el paquete al cliente.
(j) El cliente se retira de la botica.

Figura 3: Diagrama del proceso general de “Venta”


22

3.2.3. Proceso de Registro de Compra

(a) El Proveedor entrega los productos y el comprobante.


(b) El almacenero recibe los productos y el comprobante verifica si está conforme.
(c) Almacena los medicamentos si no hay inconvenientes caso contrario informa
Los faltantes.

Figura 4: Diagrama del proceso general de “compra”


23

CAPÍTULO IV
DESARROLLO DEL SISTEMA
24

4. DESARROLLO DEL SISTEMA

4.1. FASE DE INICIO

4.1.1. Identificación de Requerimientos

Código Requerimiento
REQ01 Sólo los usuarios autorizados pueden acceder al sistema
REQ02 Registrar la compra de productos
REQ03 Registrar la venta de productos
REQ04 Registrar producto
REQ05 Registrar cliente
REQ06 Registrar proveedor
REQ07 Registrar trabajador
REQ08 Emitir reporte de ventas
REQ09 Emitir reporte de productos
REQ10 Emitir reporte de clientes
REQ11 Emitir boleta
REQ12 Emitir factura
REQ13 Emitir reporte de compra
Tabla 1: Lista de requerimientos identificados

4.1.2. Identificación de Actores

Código Nombre Descripción


ACT01 Vendedor Personal que labora en la farmacia ‘San Juan’, encargada de
atender las consultas, pedidos y compras de los clientes.
ACT02 Almacenero Personal que labora en la farmacia ‘San Juan’, encargada de la
gestión de existencias y rotación de los productos
farmacéuticos ofrecidos por la farmacia ‘San Juan’.
ACT03 Administrador Persona que tiene el control del sistema y ostenta la mayor
responsabilidad con respecto a ésta. Puede tratarse de alguien
del personal o eventualmente el propietario (titular de la
personería jurídica de la Farmacia ‘San Juan’).
Tabla 2: Lista de actores identificados
25

4.1.3. Lista de Casos de Uso

Referencia Código Caso de uso


REQ01 CU01 Iniciar sesión
REQ04 CU02 Registrar producto
REQ07 CU03 Registrar trabajador
REQ06 CU04 Registrar proveedor
REQ02 CU05 Registrar compra
REQ05 CU06 Registrar cliente
REQ03 CU07 Registrar venta
REQ08 CU08 Emitir reporte de ventas
REQ09 CU09 Emitir reporte de productos
REQ10 CU10 Emitir reporte de clientes
REQ11, CU11 Emitir comprobante
REQ12
REQ13 CU12 Emitir reporte de compra
Tabla 3: Lista de Casos de Uso

4.1.4. Matriz de Trazabilidad de Requerimientos y Casos de Uso

Casos de
CU01

CU02

CU03

CU04

CU05

CU06

CU07

CU08

CU09

CU10

CU11

CU12
Uso
Reqs.
REQ01 X
REQ02 X
REQ03 X
REQ04 X
REQ05 X
REQ06 X
REQ07 X
REQ08 X
REQ09 X
REQ10 X
REQ11 X
REQ12 X
REQ13 X
Tabla 4: Matriz de trazabilidad (casos de uso 01 al 11)
26

4.1.5. Diagrama de Casos de Uso

Figura 5: Diagrama General de Casos de Uso


27

4.1.6.Casos de Uso Expandido

4.1.6.1. CU Iniciar Sesión

Figura 6: Prototipo de formulario de “Iniciar Sesión

Caso de uso: Iniciar sesión


Actores Usuario (y actores derivados)
Propósito Acceder al sistema a través de una cuenta y contraseña válidos
Tipo Primario y evidente
Pre condición El usuario está registrado en el sistema y conoce sus datos
El usuario ingresa el nombre de su cuenta y la contraseña
Descripción asociada a ella, el sistema validará los datos ingresados; si
corresponde el sistema le permitirá el acceso.
Pos condición El usuario (ya autenticado) ingresa al sistema.
Referencia REQ01
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[1] Ingresa su nombre de cuenta y la [2] Se verifica el adecuado ingreso de datos
respectiva contraseña (formato)
[4] Captura los datos ingresados y procede a
[3] Solicita el acceso al sistema con los datos
validarlos con los almacenados en la base de
ingresados en [1], haciendo clic en el botón
datos; de ser datos correctos, despliega un
“Iniciar sesión”
mensaje de bienvenida.
[5] Acepta el mensaje [6] Despliega la interfaz principal del sistema
Curso alterno
[2] Si los datos no tienen el formato apropiado, se despliega un mensaje de error y se
solicita al usuario el reingreso de datos.
[4] Si los datos del usuario no pueden ser autenticados, se despliega un mensaje de error y
se solicita (hasta en dos oportunidades) el reingreso adecuado de los mismos.
Tabla 5: Caso de uso expandido “Iniciar Sesión”
28

4.1.6.2. CU Registrar Venta

Figura 7: Prototipo para el caso de uso Registrar Venta

Caso de uso: Registrar Venta


Actores Cajero
Propósito Registrar los datos de una determinada venta, en el sistema
Tipo Primario y evidente
Pre condición La venta se ha realizado
El usuario ingresa los datos de la venta y sus detalles,
Descripción
posteriormente lo registra en la base de datos
Pos condición La venta ha sido registrada.
Referencia R03
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica el correcto formato de los
[1] Ingresa los datos generales de la venta
valores ingresados
[4] Valida que los datos sean pertinentes y
[3] Ingresa los detalles de la venta
válidos.
[5] Solicita el registro de la venta, haciendo [6] Registra la venta en la base de datos y
clic en “Guardar” muestra un mensaje de confirmación.
Curso alterno
[2] y/o [4] Si los datos no tienen el formato apropiado, se despliega un mensaje de error y se
solicita al usuario el reingreso de datos.
Tabla 6: Caso de Uso Registrar Venta
29

4.1.6.3. CU Registrar Compra

Figura 8: Prototipo del formulario "Registrar Compra"

Caso de uso: Registrar Compra


Actores Almacenero
Propósito Registrar los datos de una determinada compra en el sistema
Tipo Primario y evidente
Pre condición La compra se ha realizado y está representada por su documento
El usuario ingresa el nombre de su cuenta y la contraseña
Descripción asociada a ella, el sistema validará los datos ingresados; si
corresponde el sistema le permitirá el acceso.
Pos condición El usuario (ya autenticado) ingresa al sistema.
Referencia R02
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica el correcto formato de los
[1] Ingresa los datos generales de la compra
valores ingresados
[4] Valida que los datos sean pertinentes y
[3] Ingresa los detalles de la compra
válidos.
[5] Solicita el registro, haciendo clic en [6] Registra la compra en la base de datos y
“Guardar” muestra un mensaje de confirmación.
Curso alterno
[2] y/o [4] Si los datos no tienen el formato apropiado, se despliega un mensaje de error y se
solicita al usuario el reingreso de datos.
Tabla 7: Caso de Uso expandido "Registrar Compra"
30

4.1.6.4. CU Registrar Cliente

Figura 9: Prototipo del formulario "Registrar Cliente"

Caso de uso: Registrar Cliente


Actores Administrador
Propósito Registra los datos de un nuevo cliente
Tipo Primario y evidente
Pre condición El cliente no está registrado en el sistema
Descripción El Administrador, ingresa los datos de un nuevo cliente al sistema.
Pos condición Los datos del nuevo cliente han sido registrados.
Referencia REQ05
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica que los datos cumplan con los
[1] Ingresa los datos del nuevo cliente
formatos adecuados
[4] Inserta los datos del nuevo cliente en la
[3] Solicita el registro, haciendo clic en el
base de datos y presenta un mensaje de
botón “Insertar”
confirmación
[5] Acepta el mensaje de confirmación
Curso alterno
[2] Si los datos no tienen el formato apropiado, se presenta un mensaje de error.
Tabla 8: Caso de Uso expandido "Registrar Cliente"
31

CU REGISTRAR TRABAJADOR

Figura 10: Prototipo del formulario para "Registrar Usuario"

Caso de uso: Registrar Trabajador


Actores Administrador
Propósito Registra los datos de un nuevo trabajador
Tipo Primario y evidente
Pre condición El usuario no está registrado en el sistema
El Administrador, ingresa los datos de un nuevo usuario al
Descripción
sistema.
Pos condición Los datos del nuevo personal han sido registrados.
Referencia REQ01 y REQ07
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica que los datos cumplan con los
[1] Ingresa los datos del nuevo trabajador
formatos adecuados
[4] Inserta los datos del nuevo trabajador en
[3] Solicita el registro, haciendo clic en el
la base de datos y presenta un mensaje de
botón “Guardar”
confirmación
[5] Acepta el mensaje de confirmación
Curso alterno
[2] Si los datos no tienen el formato apropiado, se presenta un mensaje de error.
Tabla 9: Caso de Uso expandido "Registrar trabajador"
32

CU REGISTRAR PROVEEDOR

Figura 11: Prototipo del formulario para "Registrar Proveedor"

Caso de uso: Registrar Proveedor


Actores Administrador
Propósito Registra los datos de un nuevo proveedor
Tipo Primario y evidente
Pre condición El proveedor no está registrado en el sistema
El Administrador, ingresa los datos de un nuevo proveedor al
Descripción
sistema.
Pos condición Los datos del nuevo proveedor han sido registrados.
Referencia REQ06
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica que los datos cumplan con los
[1] Ingresa los datos del nuevo proveedor
formatos adecuados
[4] Inserta los datos del nuevo proveedor en
[3] Solicita el registro, haciendo clic en el
la base de datos y presenta un mensaje de
botón “Guardar”
confirmación
[5] Acepta el mensaje de confirmación
Curso alterno
[2] Si los datos no tienen el formato apropiado, se presenta un mensaje de error.
Tabla 10: Caso de uso expandido "Registrar Proveedor"
33

CU REGISTRAR PRODUCTO

Figura 12: Prototipo del formulario para "Registrar Producto"

Caso de uso: Registrar Producto


Actores Vendedor o Almacenero
Propósito Registra los datos de un nuevo producto
Tipo Primario y evidente
Pre condición El producto no está registrado en el sistema
El Administrador, ingresa los datos de un nuevo producto al
Descripción
sistema.
Pos condición Los datos del nuevo producto han sido registrados.
Referencia REQ04
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[2] Verifica que los datos cumplan con los
[1] Ingresa los datos del nuevo producto
formatos adecuados
[4] Inserta los datos del nuevo producto en
[3] Solicita el registro, haciendo clic en el
la base de datos y presenta un mensaje de
botón “Guardar”
confirmación
[5] Acepta el mensaje de confirmación
Curso alterno
[2] Si los datos no tienen el formato apropiado, se presenta un mensaje de error.
Tabla 11: Caso de uso expandido "Registrar producto"
34

CU EMITIR REPORTE

Figura 13: Prototipo del formulario para "Emitir Reporte"

Caso de uso: Emitir Reporte


Actores usuario
Propósito Emitir Reportes
Tipo Primario y evidente
Pre condición El Reporte no está emitido.
Descripción El Vendedor o Almacenero, emite reportes.
Pos condición Los reportes han sido emitidos.
Referencia REQ11, REQ12
Curso normal de los eventos
Acción del Actor Respuesta del sistema
[1] El usuario selecciona [2] el sistema votara dicho reporte.
[3] El usuario lo visualiza
Curso alterno
[2] Si los datos no tienen el formato apropiado, se presenta un mensaje de error.
Tabla 12: Caso de uso expandido " Emitir Reporte”
35

4.2. FASE DE ELABORACIÓN

4.2.1.Diagrama de Clases de Análisis

Registrar Producto

Figura 14: Diagrama de clases de análisis: iniciar sesión

Registrar Trabajador

Figura 15: Diagrama de clases de análisis: Registrar Trabajador

Registrar Cliente

Figura 16: Diagrama de clases de análisis: Registrar Cliente


36

Registrar Venta

Figura 17: Diagrama de clases de análisis: Registrar Venta

Registrar Compra

Figura 18: Diagrama de clases de análisis: Registrar Compra


37

4.2.2.Diagramas de Secuencia

DIAGRAMA DE SECUENCIA: REGISTRAR PRODUCTO

Figura 19: Diagrama de secuencia de Registrar Producto

DIAGRAMA DE SECUENCIA REGISTRAR TRABAJADOR

Figura 20: Diagrama de secuencia de Registrar Trabajador


38

DIAGRAMA DE SECUENCIA REGISTRAR CLIENTE

Figura 21: Diagrama de secuencia de Registrar Cliente

DIAGRAMA DE SECUENCIA DE REGISTRAR VENTA

Figura 22: Diagrama de secuencia de Registrar Venta


39

DIAGRAMA DE SECUENCIA DE REGISTRAR COMPRA

Figura 23: Diagrama de secuencia de Registrar Compra


40

4.2.3.Diagrama de Clases

Figura 24: Diagrama general de clases


41

4.2.3.1. Descripción de Clases

Clase Proveedor
Categoría Abstracta
Definición Entidad que participa de diferentes procesos enmarcados en el contexto de la botica
‘Chaskafarma’

CLASE PROVEEDOR

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Nombre Nombre o razón social del proveedor
- Documento Número de RUC
- Dirección Ubicación del domicilio legal del proveedor
- Teléfono Número telefónico de la proveedor
- Cargo El cargo que ocupa
- CorreoElectrónico Dirección del correo electrónico del proveedor
- Tipo de documento Tipo de documento (natural , jurídica)
Tabla 13: Descripción de la clase proveedor

CLASE CLIENTE

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Nombre Nombre del cliente
- Apellidos Apellido paterno y/o materno del cliente
- Documento Numero de documento de identidad del cliente
- Sexo Masculino ó Femenino
- Teléfono Número telefónico del cliente
- Dirección Ubicación del domicilio legal del cliente
- CorreoElectrónico Dirección del correo electrónico del cliente
- Tipo de documento Tipo de documento del cliente (natural , jurídica)
Tabla 14: Descripción de la clase "Persona natural"
42

CLASE PERSONA : TRABAJADOR

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Persona Instancia de Persona a la que está asociada
- Cargo Rol desempeñado por el trabajador
- FechaIngreso Fecha en el que inicia sus labores el trabajador
- Estado Condición del trabajador (Habilitado, Inhabilitado)
Tabla 15: Descripción de la clase trabajador

CLASE TRABAJADOR : USUARIO

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Trabajador Instancia de Trabajador a la que está asociado
- Cuenta Identificador de la cuenta del usuario
- Contraseña Palabra o clave de acceso al usuario
- NivelAcceso Nivel de acceso al sistema
- Estado Condición del Trabajador (Habilitado, Inhabilitado)
Tabla 16: Descripción de la clase Usuario

CLASE ARTÍCULO

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Nombre Nombre del Artículo
- Código Código del Artículo
- Descripción Descripción del artículo
Tabla 17: Descripción de la clase Artículo
43

CLASE VENTA

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Numero de operación Numero de operación de venta
- Fecha de veta La fecha que se realiza la venta
- Numero de operación Numero de operación de la venta realizada
- Correlativo Numero correlativo de (boleta ó factura) realizada.
- Serie Número de serie de (boleta ó factura) venta realizada.
- igv Impuesto General a la venta
- Tipo de comprobante Boleta ó Factura
Tabla 18: Descripción de la clase Venta

CLASE COMPRA

ATRIBUTOS
NOMBRE DE ATRIBUTO DESCRIPCIÓN
- Serie Número de serie de (boleta ó factura) compra realizada.
- Correlativo Numero de operación de compra
- igv Impuesto General a la venta
- Fecha de compra La fecha que se realiza la compra
- Tipo de comprobante Boleta ó Factura
- Estado Estado de la compra
Tabla 19: Descripción de la clase Compra
44

4.3. FASE DE CONSTRUCCIÓN

4.3.1.Diagrama de la base de datos

Figura 25: Diagrama de la base de datos


45

4.3.2.Diseño Físico de la Base de Datos

4.3.2.1. Descripción de la Base de Datos

Tabla laboratorio

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idlaboratorio int 11 No Primaria autoincrementado
nombre varchar 45 No - -
contacto varchar 45 No - -
telefono varchar 45
Tabla 20: Descripción de la tabla laboratorio

Tabla proveedor

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idproveedor int 11 No Primaria autoincrementado
razon_social varchar 45 No - -
ruc varchar 11 No - -
direccion varchar 45 No - -
telefono int 45 No
email varchar 45 No - -
cargo varchar 45 Si - -
url varchar 45 Si - -
Tabla 21: Descripción de la tabla proveedor

Tabla Trabajador

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idTrabajador int 11 No Primaria autoincrementado
idPersona int 11 No Foránea tPersonas
Cargo varchar 20 No - -
FechaIngreso Date - No - -
Estado varchar 10 No - -
Tabla 22: Descripción de la tabla Trabajador
46

Tabla USUARIO

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idtrabajador int 11 No Primaria autoincrementado
password varchar 45 No - -
habilitado varchar 45 No - -
Tabla 23: Descripción de la tabla Usuario

Tabla ARTÍCULO

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idarticulo int 11 No Primaria autoincrementado
codigo varchar 45 No - -
nombre varchar 100 No - -
descripcion varchar 45 No - -
stock_total int 11 No - -
precio_compra Decimal 7,2 - -
stock_minimo int 11 No - -
precio_venta decimal 7,2 Si - -
idlaboratorio int 11 Si Foránea tTiposDocumento
Tabla 24: Descripción de la tabla Artículo

Tabla CLIENTE

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idcliente int 11 No Primaria autoincrementado
nombres varchar 45 No
sexo varchar 10 Si - -
tipo_documento varchar 11 Si - -
num_documento varchar 45 No - -
direccion varchar 45
telefono varchar 45
email varchar 45

Tabla 25: Descripción de la tabla Cliente


47

Tabla Compra

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idcompra int 11 No Primaria autoincrementado
fecha_compra date
tipo_comprobante varchar 45 No
serie varchar 45 No - -
correlativo varchar 45 No - -
igv decimal 7,2 No - -
estado varchar 45 No - -
idproveedor int 11 No Foránea idproveedor
idtrabajador int 11 No Foránea idtrabajador
Tabla 26: Descripción de la tabla Compra

Tabla Detalle_Compra

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
iddetalle_compra int 11 No Primaria autoincrementado
precio_compra int 7,2 No
cantidad int 11 No
lote int 10 No - -
fecha_vencimiento date 40 No - -
idarticulo int 11 No Foránea idarticulo
idcompra int 11 No Foránea idcompra
Tabla 27: Descripción de la tabla Detalle_Compra
48

Tabla Venta

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
idventa int 11 No Primaria autoincrementado
fecha_venta Datetime No - -
tipo_comprobante varchar 45 No - -
serie varchar 4 No - -
correlativo varchar 7 No - -
igv decimal 7,2 No - -
estado varchar 45 No - -
nro_operacion varchar 10 No - -
iddetalle_venta int 11 No Foránea -
idcliente int 11 No Foránea -
idtrabajador int 11 Foránea
Tabla 28: Descripción de la tabla Venta

Tabla Detalle_Venta

Tipo de Permite
Atributo Longitud Es clave Observación
dato null
iddetalle_venta int 11 No Primaria autoincrementado
cantidad int 11 No - -
precio_venta decimal 7,2 No - -
descuento decimal 7,2 No - -
idarticulo int 11 No Foránea -
PrecioVenta decimal (10,2) No - -
Estado varchar 20 No - -
Tabla 29: Descripción de la tabla Detalle_Venta
49

4.3.2.2. Código del Esquema de la Base de Datos

Creación de la base de datos


/*
Script de Creación de la base de datos "dbbotichaskafarma"
--------------------------------------------------------
Versión : 2.30
Fecha última actualización : C.04.01.2019
Propósito : Implementar la base de datos de la Botica Chaskafarma
Autor : Eloy Huamani s.
*/
Drop database if exists bdventasqf;
Create database bdventasqf;
-- Seleccionar la base de datos bdventasqf
Use bdventasqf;

-- Creación de tablas
-- -------------------------------------------------------------
-- Tabla ` bdventasqf`.`ttiposdocumento`
-- -------------------------------------------------------------
DROP TABLE IF EXISTS ` bdventasqf`.` bdventasqf` ;
CREATE TABLE IF NOT EXISTS ` bdventasqf`.` bdventasqf` (
`idTipoDocumento` INT (11) NOT NULL AUTO_INCREMENT,
`Nombre` VARCHAR(30) NOT NULL,
`Aplicación` VARCHAR(20) NOT NULL,
PRIMARY KEY (`idTipoDocumento`)
);

-- -----------------------------------------------------
-- Table ` bdventasqf`.` articulo `
-- -----------------------------------------------------
DROP TABLE IF EXISTS `articulo`;
CREATE TABLE `articulo` (
`idarticulo` int(11) NOT NULL AUTO_INCREMENT,
`codigo` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`nombre` varchar(100) COLLATE utf8_spanish2_ci DEFAULT NULL,
`descripcion` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`stock_total` int(11) DEFAULT NULL,
`stock_minimo` int(11) DEFAULT NULL,
`precio_compra` decimal(7,2) DEFAULT NULL,
`precio_venta` decimal(7,2) DEFAULT NULL,
`idlaboratorio` int(11) NOT NULL,
PRIMARY KEY (`idarticulo`,`idlaboratorio`),
KEY `fk_articulo_laboratorio_idx` (`idlaboratorio`),
CONSTRAINT `fk_articulo_laboratorio` FOREIGN KEY (`idlaboratorio`) REFERENCES `laboratorio` (`idlaboratorio`)
ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;--
50

Table ` bdventasqf`.` cliente `


-- -----------------------------------------------------
DROP TABLE IF EXISTS `cliente`;
CREATE TABLE `cliente` (
`idcliente` int(11) NOT NULL AUTO_INCREMENT,
`nombres` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`sexo` varchar(10) COLLATE utf8_spanish2_ci DEFAULT NULL,
`tipo_documento` varchar(11) COLLATE utf8_spanish2_ci DEFAULT NULL,
`num_documento` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`direccion` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`telefono` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`email` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
PRIMARY KEY (`idcliente`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;
-- -----------------------------------------------------

-- Table ` bdventasqf`.` compra `


-- -----------------------------------------------------
DROP TABLE IF EXISTS `compra`;
CREATE TABLE `compra` (
`idcompra` int(11) NOT NULL AUTO_INCREMENT,
`fecha_compra` date DEFAULT NULL,
`tipo_comprobante` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`serie` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`correlativo` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`igv` decimal(7,2) DEFAULT NULL,
`estado` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`idproveedor` int(11) NOT NULL,
`idtrabajador` int(11) NOT NULL,
PRIMARY KEY (`idcompra`,`idproveedor`,`idtrabajador`),
KEY `fk_compra_proveedor1_idx` (`idproveedor`),
KEY `fk_compra_trabajador1_idx` (`idtrabajador`),
CONSTRAINT `fk_compra_proveedor1` FOREIGN KEY (`idproveedor`) REFERENCES `proveedor` (`idproveedor`) ON
DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_compra_trabajador1` FOREIGN KEY (`idtrabajador`) REFERENCES `trabajador` (`idtrabajador`) ON
DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;
-- -----------------------------------------------------

-- Table ` bdventasqf`.` detalle_compra `


-- -----------------------------------------------------

DROP TABLE IF EXISTS `detalle_compra`;


CREATE TABLE `detalle_compra` (
`iddetalle_compra` int(11) NOT NULL AUTO_INCREMENT,
`precio_compra` decimal(7,2) DEFAULT NULL,
`cantidad` int(11) DEFAULT NULL,
`lote` varchar(10) COLLATE utf8_spanish2_ci DEFAULT NULL,
`fecha_vencimiento` date DEFAULT NULL,
`idarticulo` int(11) NOT NULL,
`idcompra` int(11) NOT NULL,
PRIMARY KEY (`iddetalle_compra`,`idarticulo`,`idcompra`),
KEY `fk_detalle_compra_articulo1_idx` (`idarticulo`),
KEY `fk_detalle_compra_compra1_idx` (`idcompra`),
51

CONSTRAINT `fk_detalle_compra_articulo1` FOREIGN KEY (`idarticulo`) REFERENCES `articulo` (`idarticulo`) ON


DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_detalle_compra_compra1` FOREIGN KEY (`idcompra`) REFERENCES `compra` (`idcompra`) ON
DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;

-- -----------------------------------------------------

-- Table ` bdventasqf`.` detalle_venta `


-- -----------------------------------------------------
DROP TABLE IF EXISTS `detalle_venta`;
CREATE TABLE `detalle_venta` (
`iddetalle_venta` int(11) NOT NULL AUTO_INCREMENT,
`cantidad` int(11) DEFAULT NULL,
`precio_venta` decimal(7,2) DEFAULT NULL,
`descuento` decimal(7,2) DEFAULT NULL,
`idarticulo` int(11) NOT NULL,
PRIMARY KEY (`iddetalle_venta`,`idarticulo`),
KEY `fk_detalle_venta_articulo1_idx` (`idarticulo`),
CONSTRAINT `fk_detalle_venta_articulo1` FOREIGN KEY (`idarticulo`) REFERENCES `articulo` (`idarticulo`) ON
DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;

-- -----------------------------------------------------

-- Table ` bdventasqf`.` proveedor `


-- -----------------------------------------------------

DROP TABLE IF EXISTS `proveedor`;

CREATE TABLE `proveedor` (

`idproveedor` int(11) NOT NULL AUTO_INCREMENT,

`razon_social` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,

`ruc` varchar(11) COLLATE utf8_spanish2_ci DEFAULT NULL,

`direccion` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,

`telefono` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,

`email` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,

`url` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,

PRIMARY KEY (`idproveedor`)

) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;


52

-- -----------------------------------------------------
-- Tabla ` bdventasqf`.` trabajador `
-- -----------------------------------------------------
DROP TABLE IF EXISTS `trabajador`;
CREATE TABLE `trabajador` (
`idtrabajador` int(11) NOT NULL AUTO_INCREMENT,
`nombres` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`sexo` varchar(10) COLLATE utf8_spanish2_ci DEFAULT NULL,
`dni` varchar(8) COLLATE utf8_spanish2_ci DEFAULT NULL,
`direccion` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`telefono` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`email` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`cargo` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
PRIMARY KEY (`idtrabajador`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci; -- --------------------------
---------------------------
-- Table ` bdventasqf`.`tventas`
-- -----------------------------------------------------
DROP TABLE IF EXISTS ` bdventasqf`.`tventas` ;

CREATE TABLE IF NOT EXISTS ` bdventasqf`.`tventas` (


`idVenta` INT(11) NOT NULL AUTO_INCREMENT,
`idPersonal` INT(11) NOT NULL,
`idCliente` INT(11) NOT NULL,
`FechaVenta` DATE NOT NULL,
`FechaRegistro` DATE NOT NULL,
`idTipoDocumento` INT(11) NOT NULL,
`Serie` VARCHAR(4) NOT NULL,
`Correlativo` VARCHAR(5) NOT NULL,
`IGV` DECIMAL(5,2) NOT NULL,
`Estado` VARCHAR(20) NOT NULL,
PRIMARY KEY (`idVenta`),
INDEX `idPersonal` (`idPersonal` ASC),
INDEX `idCliente` (`idCliente` ASC),
INDEX `idTipoDocumento` (`idTipoDocumento` ASC),
CONSTRAINT `tventas_ibfk_1` FOREIGN KEY (`idPersonal`)
REFERENCES ` bdventasqf`.`tpersonal` (`idPersonal`),
CONSTRAINT `tventas_ibfk_2` FOREIGN KEY (`idCliente`)
REFERENCES ` bdventasqf`.`tclientes` (`idCliente`),
CONSTRAINT `tventas_ibfk_3` FOREIGN KEY (`idTipoDocumento`)
REFERENCES ` bdventasqf`.`ttiposdocumento` (`idTipoDocumento`)
);

-- -----------------------------------------------------

-- Table ` bdventasqf`.` usuario `


-- -----------------------------------------------------

DROP TABLE IF EXISTS `usuario`;


CREATE TABLE `usuario` (
`idtrabajador` int(11) NOT NULL,
`usuario` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`password` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`habilitado` bit(1) DEFAULT NULL,
PRIMARY KEY (`idtrabajador`),
53

KEY `fk_usuario_trabajador1_idx` (`idtrabajador`),


CONSTRAINT `fk_usuario_trabajador1` FOREIGN KEY (`idtrabajador`) REFERENCES `trabajador` (`idtrabajador`) ON
DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;
-- -----------------------------------------------------
-- Table ` bdventasqf`.`tusuario`
-- -----------------------------------------------------
DROP TABLE IF EXISTS ` bdventasqf`.`tusuario` ;

CREATE TABLE IF NOT EXISTS ` bdventasqf`.`tusuario` (


`idUsuario` INT(11) NOT NULL AUTO_INCREMENT,
`idPersonal` INT(11) NOT NULL,
`CuentaUsuario` VARCHAR(40) NOT NULL,
`Contraseña` VARCHAR(20) NOT NULL,
`NivelAcceso` VARCHAR(20) NOT NULL,
`Estado` VARCHAR(20) NOT NULL,
PRIMARY KEY (`idUsuario`),
INDEX `idPersonal` (`idPersonal` ASC),
CONSTRAINT `tusuario_ibfk_1` FOREIGN KEY (`idPersonal`)
REFERENCES ` bdventasqf`.`tpersonal` (`idPersonal`)
);
-- Table ` bdventasqf`.` venta `

---------------------------------------------------------------------------------
DROP TABLE IF EXISTS `venta`;
CREATE TABLE `venta` (
`idventa` int(11) NOT NULL AUTO_INCREMENT,
`fecha_venta` datetime DEFAULT NULL,
`tipo_comprobante` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`serie` varchar(4) COLLATE utf8_spanish2_ci DEFAULT NULL,
`correlativo` varchar(7) COLLATE utf8_spanish2_ci DEFAULT NULL,
`igv` decimal(7,2) DEFAULT NULL,
`estado` varchar(45) COLLATE utf8_spanish2_ci DEFAULT NULL,
`nro_operacion` varchar(10) COLLATE utf8_spanish2_ci DEFAULT NULL,
`iddetalle_venta` int(11) NOT NULL,
`idcliente` int(11) NOT NULL,
`idtrabajador` int(11) NOT NULL,
PRIMARY KEY (`idventa`,`iddetalle_venta`,`idcliente`,`idtrabajador`),
KEY `fk_venta_detalle_venta1_idx` (`iddetalle_venta`),
KEY `fk_venta_cliente1_idx` (`idcliente`),
KEY `fk_venta_trabajador1_idx` (`idtrabajador`),
CONSTRAINT `fk_venta_cliente1` FOREIGN KEY (`idcliente`) REFERENCES `cliente` (`idcliente`) ON DELETE NO
ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_venta_detalle_venta1` FOREIGN KEY (`iddetalle_venta`) REFERENCES `detalle_venta`
(`iddetalle_venta`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `fk_venta_trabajador1` FOREIGN KEY (`idtrabajador`) REFERENCES `trabajador` (`idtrabajador`) ON
DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;
54

4.3.3.DIAGRAMA DE COMPONENTES

Figura 26: Diagrama de componentes

4.3.4.DIAGRAMA DE DESPLIEGUE

Figura 27: Diagrama de despliegue


55

4.4. FASE DE TRANSICIÓN

4.4.1. PRUEBAS DE SISTEMA

4.4.1.1. Objetivo

Establecer el cumplimiento de los requerimientos definidos durante la fase de inicio por


parte del software desarrollado, así como la no existencia de errores o falencias en el
desempeño del mismo durante su operación.

4.4.1.2. Acciones realizadas

[Evaluación N° 1] Validación de Requerimientos y especificaciones


Realizado por el grupo de trabajo y la parte interesada, se completa y acepta
por común acuerdo después de reuniones realizadas al culminar la fase de inicio.
[Evaluación N° 2] Validación de Casos de Uso
Realizado por el grupo de trabajo y representante de parte interesada, se
acepta y completa después de una reunión en conjunto al finalizar la fase de
inicio.
[Evaluación N° 3] Validación del modelo estático del sistema
Realizado por el grupo de trabajo utilizando matrices de trazabilidad y en
concordancia a los requerimientos, especificaciones y casos de uso ya definidos,
con la finalidad de verificar que las clases y sus relaciones sean congruentes al
sistema analizado.
[Evaluación N° 4] Validación del modelo dinámico del sistema
Realizado por el grupo de trabajo, al verificar la concordancia de los diagramas
de secuencia y de clases de análisis con la forma como funciona el sistema en
estudio.
[Evaluación N° 5] Pruebas de unidad
Aplicadas a cada módulo desarrollado a partir de una muestra de datos de
entrada y resultados pre establecidos, con la finalidad de determinar la calidad
funcional del sistema para cada uno de los componentes.
[Evaluación N° 6] Pruebas de integración
Aplicadas al sistema, con la finalidad de verificar la capacidad de trabajo en
conjunto por parte de los diversos módulos de interface (formularios), ya sea
entre ellos o con los componentes de lógica y de base de datos.
[Evaluación N° 7] Pruebas de usuario
Realizadas como parte de un despliegue piloto del sistema, realizada por un
representante de la parte interesada bajo monitoreo del equipo de trabajo, con
el propósito de determinar la funcionalidad del sistema por parte de los posibles
usuarios cuando esté instalado.
56

RECOMENDACIONES

1. Se recomienda que, desde el comienzo del proyecto se debe asegurar la participación y


apoyo que corresponde a la parte interesada.
2. Se recomienda que, dentro de una estrategia de reducción de costos, el uso de
herramientas y componentes con fuente pública o de libre disponibilidad debe estar
acompañada de un adecuado proceso de selección de dichos elementos.
3. Se recomienda que, si bien PUDS y UML plantean una documentación basada en
artefactos de diversa índole, solo se recomienda el uso de una parte de ellos (los
necesarios para un adecuado modelamiento y comprensión).
4. Se recomienda que, la gestión de la fase de transición por parte de del equipo de
desarrollo puede alinearse con la gestión de personal del lado de los interesados.
5. Se recomienda que, la generación de los manuales de usuario puede verse fortalecida si
se refina durante la capacitación al trabajador de la Botica
6. Se recomienda que, debe quedar definido un plan de revisión y mantenimiento
preventivo del sistema una vez entregado a la parte interesada, así como asegurar las
formas de contacto y la aplicación de protocolos apropiados en caso de algún incidente.
57

BIBLIOGRAFÍA

Andes, U. d. (2016). Modelado de Procesos con BPMN. Universidad de los Andes.

Ceballos, F. J. (2010). Enciclopedia de Microsoft Visual C#. Alfaomega RA-MA.

Colin, C. (2016). The Complete MariaDB Server Tutorial. Amsterdam, Holanda: Percona Inc.

Departamento de Organización y Métodos, E. d. (2014). Guia para Modelar Procesos y Procedimientos


Bajo el Estandar BPMN 2.0. Jalisco, México: Gobierno del Estado de Jalisco.

Hernández Gonzáles, A. (2017). Aplicación del Proceso Unificado de Desarrollo de Software a Proyectos
de Software. ResearchGate.

Inc, O. (2010). Mysql Query Browser Tutorial. México D.F., México: Oracle Press.

Inc., O. (2018). Mysql 5.7 Reference Manual. Oracle Press.

Inc., O. (2018). Mysql(TM) Workbench Reference Manual. Oracle Press.

Jacobson, Booch, & Rumbaught. (2000). El Proceso Unificado de Desarrollo de Software. Madrid, España:
Addison & Wesley.

Laudon, K. C., & Laudon, J. P. (2012). Sistemas de Información Gerencial. México: Pearson.

Piattini, M., Marcos, E., Calero, C., & Vela, B. (2012). Tecnología y Diseño de Base de Datos. Alfaomega
RA-MA.

Pressman, R. S. (2006). Ingeniería del Software. MC Graw Hill.

Rumbaugh, J., Jacobson, I., & Grady, B. (2008). El Lenguaje Unificado de Modelado. Manual de
Referencia. addison Wesley.

Schmuller, J. (2004). Aprendiendo UML en 24 Horas. Prentice Hall.

Suite, B. (2014). BPMN 2.0. Bizagi.

White, S. A., & Miers, D. (2009). BPMN Guía de Referencia y Modelado. Lighthouse Point, Florida USA:
Future Strategies Inc.
58

ANEXOS

Manual de Usuario

INSTALACIÓN DEL SISTEMA


Requisitos de red

 01 Switch no administrable con 8 puertos ethernet 1000BaseT


 Cableado UTP: 04 Patch Cord Cat. 06 (con 2 RJ-45 1000BaseT c/u)
 01 impresora de red con conector RJ-45 1000BaseT

Requisitos Hardware (mínimo)

 Computador PC-AT (o laptop) con procesador I3 (Intel) o A4 (AMD) o equivalente.


 Memoria RAM instalada: 04 Gb.
 Monitor 15.6”
 Teclado PC-AT Español – Perú.
 Dispositivo apuntador (mouse)
 Impresora (láser o inkjet, conectado al equipo) tipo punto de venta

Son en total 03 PCs de este tipo o equivalente: Caja, vendedor, almacenero.

Requisitos Software (mínimo)

 Sistema operativo: Windows 7


 Java Runtime Kit versión 8
 Librerías:
o Conector de MaríaDB para Java o equivalente
o Librerías de impresión “Jasper Report”/”iReport”
o Lector de fechas JDateChooser

Procedimiento de instalación

Copiar la carpeta “dist” en la ubicación destino, por ejemplo “D:\SisChaskafarma”. Ingrese a la carpeta
“dist” y haga clic derecho sobre el archivo “Sischaskafarma”, elija la opción “Enviar …”, la sub opción
“Escritorio (crear acceso directo)”.

Cierre toda ventana y diríjase al “Escritorio de Windows”, ubique el icono de “Sischaskafarma” y actívelo
con doble clic.
59

Manual de Usuario – Procedimientos

Como Iniciar Sesión


Para iniciar la sesión de trabajo, abrir la ventana de “Inicio de Sesión”, la que se muestra como la
siguiente figura:

Figura 28: Formulario de “Inicio de Sesión"

Siga los pasos a continuación:

[1] Ingresa su nombre de cuenta y la respectiva contraseña

[2] Solicite el acceso al sistema con los datos ingresados en [1], haciendo clic en el botón “Iniciar
sesión”.

El sistema la dará la bienvenida y activará el formulario principal

Cómo Consultar los Artículos

Figura 29: Formulario “Consultar Articulo”

Para consultar los datos de los artículos, abrir el formulario de la opción “Consultas”, elija luego
“Consultas de Articulo” y siga los pasos a continuación:

[1] Ingrese la cadena de búsqueda (nombre del Articulo)


60

[2] Para que el sistema realice la búsqueda haga clic en el botón con el icono de la lupa

Como Registrar una Venta

Figura 30: Formulario “Definir pedido de venta”

Para registrar una venta, abrir el formulario de la barra principal, haciendo clic en la opción “Ventas”, se activará el
formulario de compras (imagen superior), siga los pasos a continuación:

[1] Ingresa los datos de venta: fecha, cliente, los detalles de la venta, el sistema calcula los datos restantes
y los presenta en el formulario.

[2] Solicite el registro de la venta, haciendo clic en el botón “Guardar”.

Como Consultar Clientes

2
1

Figura 31: Formulario "Consultar Cliente"

Abrir la ventana de “Consultar clientes”, haciendo clic en el botón “Consultas” de la barra principal,
luego en la opción “Consulta de clientes”, continúe con los pasos siguientes:

[1] Ingresa el nombre del cliente a buscar.

[2] Haga clic en el botón con el icono de la lupa, de acuerdo a lo ingresado el sistema le muestra los
resultados.
61

Como Registrar Compra

Figura 32: Formulario "Registrar Compra"

Para registrar una compra, abrir el formulario de compras: En la barra principal seleccione “Procesos”,
en la sub opción “Compras” (figura en la imagen superior). En el formulario:

[1] Ingresar los datos de la compra: fecha datos proveedor y detalles de la compra [D]; el
sistema realizará los cálculos pertinentes y los muestra en el formulario.

[3] Para registrar todos los datos, haga clic en el botón “Terminar Compra”.

Como Consultar

2
1

Proveedor
Figura 33: Formulario "Consultar Proveedor"

Abrir el formulario de “Consultar Proveedor”, desde la opción “Consultas” en la barra principal, continúe
con los siguientes pasos:

[1] Ingresa el nombre del proveedor en el buscador


[2] Haga clic en el botón con icono de lupa, el sistema presentará los resultados
62

Como Actualizar Stock de Artículo

2 1

Figura 34: Formulario "Actualizar Stock de Artículo"

Abrir el formulario “Actualizar Stock de Artículo”, desde la opción “Procesos” de la barra principal,
continúe con lo siguiente:

[1] Ingresa el nombre del producto en el buscador, clic en el botón con icono de lupa

[2] Confirme que el sistema ha seleccionado el artículo correcto (se muestra el detalle en los
controles del sector izquierdo), verificar que requiere actualizar el valor del “stock”.

[3] Elija si quiere aumentar o descontar al valor del stock actual: haga clic en el botón
correspondiente e ingrese la cantidad respectiva, para finalizar haga clic en el botón “Guardar”.
63

Como Registrar un Cliente

Figura 35: Formulario "Registrar Cliente"

[1] Ingresar los datos del nuevo cliente

[2] Para registrar los datos, clic en el botón “Guardar”

También podría gustarte