SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de...

61
1 SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA PLANTA DE BENEFICIO ANIMAL “CARNES Y DERIVADOS LA PRADERA” DEL MUNICIPIO DE PRADERA VALLE. JUAN CAMILO LEYTON VEGA CRISTIAN CAMILO LOZANO VARGAS UNIVERSIDAD CATÓLICA DE PEREIRA FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES PEREIRA, RISARALDA 2015

Transcript of SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de...

Page 1: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

1

SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA PLANTA DE

BENEFICIO ANIMAL “CARNES Y DERIVADOS LA PRADERA” DEL

MUNICIPIO DE PRADERA VALLE.

JUAN CAMILO LEYTON VEGA

CRISTIAN CAMILO LOZANO VARGAS

UNIVERSIDAD CATÓLICA DE PEREIRA

FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA

INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES

PEREIRA, RISARALDA

2015

Page 2: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

2

SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA PLANTA DE

BENEFICIO ANIMAL “CARNES Y DERIVADOS LA PRADERA” DEL

MUNICIPIO DE PRADERA VALLE.

JUAN CAMILO LEYTON VEGA

CRISTIAN CAMILO LOZANO VARGAS

Informe Final de Trabajo de Grado

Director:

Ing. Daniel Felipe Blandón Gómez

UNIVERSIDAD CATÓLICA DE PEREIRA

FACULTAD DE CIENCIAS BÁSICAS E INGENIERÍA

INGENIERÍA DE SISTEMAS Y TELECOMUNICACIONES

PEREIRA, RISARALDA

2015

Page 3: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

3

TABLA DE CONTENIDOS

TABLA DE CONTENIDOS ...................................................................................... 3

LISTA DE FIGURAS ............................................................................................... 6

LISTA DE TABLAS .................................................................................................. 7

RESUMEN .............................................................................................................. 8

INTRODUCCIÓN .................................................................................................... 9

1. FORMULACIÓN DEL PROYECTO ................................................................ 10

1.1. SITUACIÓN PROBLEMA ......................................................................... 10

1.2. OBJETIVOS ............................................................................................. 12

1.2.1. OBJETIVO GENERAL ....................................................................... 12

1.2.2. OBJETIVOS ESPECÍFICOS ............................................................. 12

1.3. JUSTIFICACIÓN ...................................................................................... 13

1.4. CRONOGRAMA DE ACTIVIDADES ........................................................ 14

2. MARCO TEÓRICO ........................................................................................ 15

2.1. ANTECEDENTES .................................................................................... 15

2.1.1. Kais FS de Kais Software .................................................................. 15

2.1.2. Sage ERP X3 Meat de Aritmos.......................................................... 15

2.1.3. LIBRA de EDISA ................................................................................ 16

2.1.4. Sistema de Trazabilidad Ganadera de SONDA ................................. 16

2.1.5. TecnoCarnes ..................................................................................... 17

2.2. MARCO CONTEXTUAL ........................................................................... 18

2.2.1. Municipio de Pradera ......................................................................... 18

Breve historia del Municipio de Pradera ..................................................... 18

Población .................................................................................................... 18

Geografía .................................................................................................... 18

Clima .......................................................................................................... 19

2.2.2. Planta de Beneficio Animal “Carnes y Derivados La Pradera” .......... 19

Ubicación .................................................................................................... 19

Colaboradores ............................................................................................ 20

2.3. MARCO CONCEPTUAL .......................................................................... 21

2.3.1. SOFTWARE ...................................................................................... 21

Page 4: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

4

2.3.2. APLICACIONES WEB ....................................................................... 21

2.3.2.1. Cliente ......................................................................................... 21

2.3.2.2. Servidor ....................................................................................... 22

2.3.3. INGENIERÍA DEL SOFTWARE ......................................................... 23

- Objetivos de la Ingeniería del Software................................................. 23

2.3.4. MODELOS DEL CICLO DE VIDA DEL DESARROLLO DE

SOFTWARE ................................................................................................... 25

- El ciclo de vida en cascada ................................................................... 25

- Los ciclos de vida iterativos e incrementales ........................................ 26

2.3.5. MODELO-VISTA-CONTROLADOR ................................................... 27

- Modelo .................................................................................................. 27

- Vista ...................................................................................................... 27

- Controlador ........................................................................................... 27

2.3.6. DJANGO ............................................................................................ 28

- Diseñar un modelo ................................................................................ 29

- Codificar una vista ................................................................................ 30

- Diseñar una plantilla (Template) ........................................................... 30

2.3.7. SQLITE .............................................................................................. 31

3. ESPECIFICACIÓN DE LA SOLUCIÓN .......................................................... 32

3.1. REQUERIMIENTOS ................................................................................. 32

3.2. DIAGRAMAS DE CASOS DE USO.......................................................... 36

3.3. DICCIONARIO DE CASOS DE USO ....................................................... 39

3.4. DISEÑO DE BASE DE DATOS ................................................................ 42

3.4.1. Diccionario de datos .......................................................................... 42

3.5. DISEÑO DE INTERFACES ...................................................................... 45

3.5.1. Módulo de Autenticación ................................................................... 45

3.5.2. Módulo de Entrada de Ganado .......................................................... 46

3.5.3. Módulo de Consultas ......................................................................... 47

3.6. DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA Y ENTORNO

TECNOLÓGICO ................................................................................................ 48

3.6.1. Arquitectura del sistema .................................................................... 48

3.7. CODIFICACIÓN ....................................................................................... 49

3.7.1. Instalación y configuración del Framework Django ............................ 49

Page 5: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

5

3.7.2. Creación de un proyecto en Django .................................................. 49

3.7.3. Creación de modelos en Django........................................................ 50

3.7.4. Servidor de desarrollo de Django ...................................................... 51

3.8. PRUEBAS ................................................................................................ 52

3.8.1. Pruebas de verificación de requerimientos ........................................ 52

3.8.2. Pruebas de la caja negra ................................................................... 52

3.8.3. Pruebas de visualización y adaptabilidad en dispositivos móviles .... 55

4. CONCLUSIONES .......................................................................................... 58

5. RECOMENDACIONES .................................................................................. 59

6. LISTA DE REFERENCIAS ............................................................................. 60

Page 6: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

6

LISTA DE FIGURAS

Figura 1. Arquitectura común de una aplicación web. ........................................... 22

Figura 2. Ciclo de vida en cascada ....................................................................... 26

Figura 3. Relación entre el Modelo, la Vista y el Controlador ................................ 28

Figura 4. Casos de Uso: Sistema General ............................................................ 36

Figura 5. Casos de Uso: Autenticarse ................................................................... 36

Figura 6. Casos de Uso: Administrar Cuenta ........................................................ 37

Figura 7. Casos de Uso: Consultar ....................................................................... 37

Figura 8. Casos de Uso: Gestionar Entrada de Ganado ....................................... 38

Figura 9. Casos de Uso: Administrar Usuarios ...................................................... 38

Figura 10. Diseño de base de datos ...................................................................... 42

Figura 11. Interfaz Módulo De Autenticación......................................................... 45

Figura 12. Interfaz Módulo de Entrada de Ganado ............................................... 46

Figura 13. Interfaz Módulo de Consultas ............................................................... 47

Figura 14. Arquitectura del Sistema ...................................................................... 48

Figura 15. Codificación de modelos en Django ..................................................... 51

Figura 16. Ejecución del servidor de Django ......................................................... 51

Figura 17. Prueba en móvil: Inicio de sesión ......................................................... 55

Figura 18. Prueba en móvil: página principal ........................................................ 55

Figura 19. Prueba en móvil: ingresar entrada ....................................................... 56

Figura 20. Prueba en móvil: ingresar animales ..................................................... 56

Figura 21. Prueba en móvil: crear usuario ............................................................ 57

Figura 22. Prueba en móvil: creación de grupos ................................................... 57

Page 7: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

7

LISTA DE TABLAS

Tabla 1. Parámetros deseables en un software. ................................................... 24

Tabla 2. Requerimiento No.1: Módulo de autenticación. ....................................... 32

Tabla 3. Requerimiento No. 2: Permisos de usuarios ........................................... 32

Tabla 4. Requerimiento No. 3: Módulo de Administración de Usuarios ................ 33

Tabla 5. Requerimiento No. 4: Imagen corporativa para la aplicación .................. 33

Tabla 6. Requerimiento No. 5: Software Web ....................................................... 33

Tabla 7. Requerimiento No. 6: Interfaz Adaptable ................................................. 34

Tabla 8. Requerimiento No. 7: Formulario Primera Fase ...................................... 34

Tabla 9. Requerimiento No. 8: Registro de Bovino en Primera Fase .................... 34

Tabla 10. Requerimiento No. 9: Impresión de Formularios ................................... 35

Tabla 11. Requerimiento No. 10: Búsquedas y filtros por fechas .......................... 35

Tabla 12. Caso De Uso: Autenticarse ................................................................... 39

Tabla 13. Caso De Uso: Administrar Cuenta......................................................... 39

Tabla 14. Caso De Uso: Gestionar Entrada de Ganado ....................................... 39

Tabla 15. Caso De Uso: Administrar Usuarios ...................................................... 40

Tabla 16. Caso De Uso: Consultar entradas ......................................................... 40

Tabla 17. Caso De Uso: Imprimir entradas ........................................................... 41

Tabla 18. Diccionario de datos: Usuario ................................................................ 42

Tabla 19. Diccionario de datos: Permiso Grupos .................................................. 43

Tabla 20. Diccionario de datos: Grupo .................................................................. 43

Tabla 21. Diccionario de datos: Entrada ............................................................... 43

Tabla 22. Diccionario de datos: Animal ................................................................. 44

Page 8: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

8

RESUMEN

Los Sistemas de Información han permitido a las empresas mejorar sus procesos

optimizando la comunicación, aumentando la seguridad y reduciendo costos. En el

presente trabajo se exponen los procedimientos y pasos llevados a cabo para

diseñar y desarrollar un aplicativo web para la Planta de Beneficio Animal “Carnes

y Derivados La Pradera” que permita el registro digital de la información de los

animales que llegan a esta empresa.

El trabajo abarca la ingeniería de software desde los requerimientos, diagramas de

casos de uso, modelo de datos, elementos específicos de la codificación y

finalmente las pruebas realizadas al software.

Palabras clave: Aplicativo Web, Planta de Beneficio Animal, Django, SQLite,

Modelo-Vista-Controlador.

ABSTRACT

Information Systems have allowed companies to improve their processes optimizing

communication, increasing safety and reducing costs. In this work procedures and

steps taken to design and develop a web application to Benefit Animal Plant “Carnes

y Derivados La Pradera" that allows digital recording of information of the animals

that come to this company are exposed.

The work ranges from engineering software requirements, use case diagrams, data

model, specifics of coding and finally tests the software.

Keywords: Web application, Benefit Animal Plant, Django, SQLite, Model-View-

Controller.

Page 9: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

9

INTRODUCCIÓN

Los procedimientos involucrados en un proceso productivo pueden ser

dispendiosos si se realizan manualmente. Esto puede implicar pérdida de tiempo,

fatiga para el o los operarios y conducir a la ineficiencia. Trabajar de esta manera

puede generar costos ocultos y por supuesto disminución en las utilidades de la

empresa.

El avance de los sistemas de información y las tecnologías de la información y las

comunicaciones (TIC) viene en ayuda de las empresas, al brindarles la oportunidad

de sistematizar los procesos y procedimientos identificados en cada una de sus

áreas. De esta manera, el trabajo se hace más efectivo, menos fatigoso, más

preciso en sus resultados y por lo tanto mejora el nivel de desempeño individual y

colectivo en la empresa y, lo más importante, incrementa sus utilidades.

Carnes y Derivados La Pradera es una planta de beneficio animal, lo que

comúnmente se conoce como "matadero", en donde se sacrifican principalmente

bovinos. Es una empresa que lleva alrededor de un año en operación. Algunos de

sus procesos se realizan manualmente, lo que conlleva a un desperdicio de tiempo,

papelería y recurso humano, haciendo lento el flujo de información.

El presente estudio busca poner en orden la información requerida por la planta en

el proceso de faenado (sacrificio animal), mediante la construcción de un software

que contenga todos los elementos requeridos por el proceso, unificando los

formatos que actualmente se utilizan. El diseño del programa permitirá facilitar el

proceso de la primera etapa en la que se reciben los animales, guardando

información de manera digital y segura para sus posteriores consultas y

estadísticas.

Con el objetivo que pueda ser accedido desde cualquier dispositivo incluyendo

Tablets y celulares el software que se plantea en el proyecto será un aplicativo web

que permita a los operarios poder transportarse dentro de los establecimientos y

zonas de la planta llevando el control de la entrada de los animales sin restricciones

gracias a la red inalámbrica.

Esta información, debidamente sistematizada, será entregada al departamento de

contabilidad en tiempo real, para su correspondiente registro contable, agilizando la

información requerida para la toma de decisiones por parte los directivos de la

empresa.

Page 10: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

10

1. FORMULACIÓN DEL PROYECTO

1.1. SITUACIÓN PROBLEMA

Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el

manejo de la información necesaria para la matanza, el desposte y la distribución

se escribe a mano en papel y posteriormente es digitada y almacenada en

computadores para conservar la información.

Este proceso evidentemente genera retrasos, es inseguro y no permite la

visualización de la información relacionado con los procesos de la planta en tiempo

real. Para entender a fondo las actividades de esta empresa, se procede a detallar

las áreas que componen el proceso por el que pasa el animal desde que llega, hasta

que su carne sale para ser distribuida.

Para el manejo de la información de sacrificio de la res se utilizan alrededor de 5

formatos distintos, esta información es manejada por un operario que debe hacer el

seguimiento en cada área del proceso, cabe resaltar que durante el proceso los

formatos pueden dañarse por el agua u otros fluidos que hay en estas áreas.

Esta información es importante a la hora de realizar el balance general de los lotes

de reses que se sacrifican por jornada, el cual es realizado por el personal del área

contable con la información de reses sacrificadas cada día para obtener los datos

numéricos dentro con los cuales se determinan las ganancias diarias.

Un obstáculo para la operación de la planta, es visible ya que se deja sin información

el área contable y administrativa al tener que esperar que termine la jornada para

poder pasar la información al sistema una vez se hacen todos los sacrificios.

Los formatos que son utilizados están incluidos en las diferentes fases existentes

en el proceso. Iniciando con la fase de entrada No 1, con la recolección de

información de cada res, los operarios deben pesar cada animal (esto se debe hacer

cuando entra y cuando sale la res del corral); se verifica que posean el registro “ICA”

(registro que cada res debe traer donde se muestran las vacunas requeridas, así

como información relevante para la planta). Enseguida se registra información

relevante como la marca de la quemadura, hacienda de donde procede la res y

nombre del propietario, posteriormente se inicia el proceso de recuperación de peso

perdido en el viaje, debido a deshidratación, mareo y estrés en un corral temporal

por un tiempo máximo de tres días.

En la segunda fase, posterior a la preparación de la res para el sacrificio, ésta es

llevada a los corrales de la planta donde será revisada por un veterinario. El

veterinario la evalúa y confirmara que esté libre de fiebre aftosa y pueda ser

sacrificada. Allí se hace el amarre. Se denomina amarre al proceso de selección

Page 11: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

11

que hacen los clientes para escoger las reses que van a comprar en canal. El animal

es pesado nuevamente con el fin de saber en cuánto ha disminuido el peso desde

que llegó a la planta.

Una vez que cae la res, el operario lleva el registro de identificación del animal en

un papel que reparte por cada área de desposte; papel que debe ser compartido

con todas las áreas para que lleven el registro. Como puede notarse en este punto

los operarios deben manejar una gran cantidad de papeles impresos por cada res y

la información debe ser entregada por una persona a cada área, lo que causa que

esta persona no pueda realizar otras labores y que ningún área pueda empezar el

trabajo sin antes tener la información completa.

La fase tres del proceso, comienza con el desposte del animal, se debe hacer

seguimiento para que las partes del animal no se confundan con las de otros

animales, a este proceso se le llama caracterización. El animal empieza su proceso

de desposte y se seleccionan las partes que son del cliente y las que son de la

planta. Se registran las partes que se van a decomiso (partes enfermas del animal

que no son aptas para el consumo), como también las partes sanas que deben ser

pesadas.

Por último, en la cuarta fase, la res es cortada a la mitad con una sierra, a esta parte

final se le llama canal. En esta fase la canal es pesada y se decide si se transporta

en caliente (se despacha en el camión inmediatamente) o si pasa a un cuarto frío

donde la carne madura y recupera algo de peso por el agua. En este proceso se

debe manejar la información de lo que cada camión lleva, además se diligencia una

"guía de transporte de carne en canal", que es la información que exige la ley para

poder transportar la carne.

Finalmente, teniendo las características de cada fase y las necesidades más

urgentes de la empresa, se plantea como principal caso de estudio la fase número

uno que comprende la entrada del animal, por lo que el proyecto de software

presentado en este trabajo facilitará el registro de información y la visualización en

tiempo real de la misma a diferentes áreas de la empresa.

Page 12: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

12

1.2. OBJETIVOS

1.2.1. OBJETIVO GENERAL

Diseñar e implementar un aplicativo para la empresa de Carnes y Derivados La

Pradera que permita la agilización de la gestión de la información en el proceso de

faenado.

1.2.2. OBJETIVOS ESPECÍFICOS

Realizar la recolección de información inherente a la fase del proceso de

faenado con apoyo de las directivas de la empresa.

Diseñar e implementar un sistema de almacenamiento adaptado a las

necesidades especificadas en el proceso de recolección de información.

Desarrollar un aplicativo que permita a los usuarios la gestión de la información para la fase del proceso de faenado.

Ejecutar las pruebas correspondientes al software para comprobar el correcto funcionamiento de cada módulo, y su integración con la base de datos.

Page 13: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

13

1.3. JUSTIFICACIÓN

El proceso de sacrificio animal y todas las actividades que están involucradas a éste

dentro de la Planta “Carnes y Derivados La Pradera” no puede estar ajeno a los

avances tecnológicos y a los beneficios que éstos traen consigo, es por eso que la

implementación de un software que apoye los procesos facilita en gran medida la

reducción de tiempos, la conservación y la seguridad de la información, lo que se

traduce en mayor rendimiento y por ende en mayores beneficios económicos.

El registro de la información en formatos impresos permite al operario transportarse

libremente por las instalaciones, corrales, oficinas y demás áreas de la planta, pero

cada vez es menos eficiente y económico manejar formatos en papel.

Un software que apoye estos procesos no puede ser de escritorio y mucho menos

ser contemplado únicamente para computadores. Por esta razón se presenta en

este proyecto un aplicativo web, que permite desde cualquier dispositivo móvil sin

importar su sistema operativo acceder al sistema para el diligenciamiento de los

formularios o para la realización de consultas.

Al no interponerse la movilidad de los trabajadores, la información registrada a

través del aplicativo estará mucho más segura comparada con el procedimiento

manual, esto se debe a que los datos estarán almacenados y centralizados en un

servidor y habrá una configuración de cuentas y permisos para acceder al sistema,

lo que dará garantía que las personas utilicen el aplicativo para lo que

verdaderamente les corresponde y no tengan oportunidad de entrar en detalles de

procesos que no están comprendidos dentro de sus actividades laborales en la

planta.

Con el clásico proceso en papel y lápiz, los residuos líquidos que tanto se manejan

en una planta de sacrificio animal deterioran los formatos impresos, al punto que no

son legibles los datos o, peor aún, que los procesos tengan que repetirse. Es

evidente que el software puede ser la solución a estos problemas, ya que desde el

inicio del proceso la información es almacenada en un servidor central y no está con

el operario.

Otra razón importante que justifica la realización de este proyecto, es la agilidad que

se genera en los procesos y la reducción de los tiempos debido a que la información

puede ser consultada en tiempo real. Con el aplicativo web no es necesario esperar

que los operarios distribuyan los formatos impresos en las diferentes oficinas, con

este software sólo basta con ingresar al navegador y realizar las consultas

necesarias.

Page 14: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

14

1.4. CRONOGRAMA DE ACTIVIDADES

MES Junio Julio Agosto Septiembre Octubre

SEMANA 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

ACTIVIDADES Subactividades

Requerimientos

Entrevistas

Documentación de requerimientos

Revisión y aprobación de los requerimientos

Análisis y diseño

Diagramas de casos de uso

Diccionario de casos de uso

Modelo de datos

Modelo de interfaces

Definición de arquitectura y entorno tecnológico

Codificación

Base de datos

Módulo Administración de usuarios

Módulo Entradas

Módulo Consultas

Pruebas

Pruebas de verificación de requerimientos

Pruebas de la caja negra

Pruebas de adaptabilidad en dispositivos móviles

Page 15: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

15

2. MARCO TEÓRICO

2.1. ANTECEDENTES

A continuación se mencionan algunos desarrollos de software ya existentes en el

mercado que permiten la sistematización de los procesos propios de la industria del

sacrificio o beneficio de animales. Entre estas aplicaciones se exponen algunas

realizadas fuera y dentro del país.

2.1.1. Kais FS de Kais Software

La empresa española Kais Software ofrece dentro de sus diferentes soluciones, un

software que permite controlar la trazabilidad en productos y procesos de empresas

en el sector de la alimentación. La empresa ha diseñado un producto enfocado a

este control para mataderos y salas de despiece llamado Kais FS, el cual funciona

en una base de datos SQL y ofrece una conexión con los sistemas más comunes

en este tipo de organizaciones tales como los de báscula de pesaje, equipos de

identificación o terminales Wireless.

Kais FS es un software de gestión empresarial especializado en la industria cárnica

que ofrece una múltiple variedad de módulos totalmente adaptables a las empresas,

con implantaciones en toda España. El software cubre diferentes tipologías de

empresa, desde granjas y cebaderos hasta mataderos, salas de despiece,

almacenes, embutidos, ibéricos, curados y elaborados.

La empresa española ofrece diferentes servicios involucrando Kais FS, como el

análisis de procedimientos para confeccionar auditorías del estado de la información

de la empresa cliente, preparación de entornos y desarrollo personalizados para el

diseño de las fichas técnicas.

El programa permite el registro y actualización centralizada de los datos de

matanza, trazabilidad y gestión de calidad, permitiendo guardar un histórico

permanente, de imprimir y consultar desde cualquier punto del sistema según

privilegios de usuarios, acceso web con ingreso restringido para clientes y consulta

de partidas propias, y posee un analizador estadístico y flexibilidad en la definición

de formatos propios como etiquetas, albaranes, facturas, entre otros (KaisFS, 2014).

2.1.2. Sage ERP X3 Meat de Aritmos

Aritmos es una compañía de soluciones tecnológicas para empresas, con sede

central en Lérida, España y oficinas en Tarragona, Barcelona, Madrid, Zaragoza e

Igualada del mismo País, y disponen de una solución para Industrias Cárnicas

llamado Sage ERP X3 Meat que contempla el ciclo completo de mantanza, despiece

y elaboración, el cual ha sido desarrollado para trabajar en entornos como Windows

Page 16: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

16

2000 hasta Windows Vista y UNIX), con base de datos SQL Server y Oracle, y está

disponible en modo cliente/servidor o en modo web (Intranet/Internet).

Dentro de sus funciones para la Gestión de Matanza, permite la gestión de especies

porcinas, vacunas y ovinos, gestionar el tipo de compras (peso vivo, peso canal),

conexión con báscula, información de transporte, información de origen, gestión de

costes y generación de los resultados del matadero.

“Gracias al módulo de desarrollo se puede adaptar la aplicación a las exigencias de

la actividad particular de las empresas, permitiendo integrar la información de los

procesos de elaboración (básculas, lectores, terminales táctiles, etc) con la base de

datos corporativa.” (Aritmos Global Technology Solutions, 2014)

2.1.3. LIBRA de EDISA

Grupo EDISA es una empresa que dentro de su portafolio posee un software

llamado LIBRA, el cual es un software de gestión ERP para empresas del sector de

la Alimentación y Agroalimentario, y su adaptación para productos cárnicos permite

mejorar los procesos de sala de elaboración, permitiendo llevar la trazabilidad del

producto y el cumplimiento de las normativas sanitarias y de calidad aplicables.

LIBRA permite llevar una multiproducción, que facilita el obtener múltiples productos

a partir de una misma orden de producción, gestionando los procesos de

producción-despiece, integrando con los sistemas de toma de datos en planta.

LIBRA cuenta con más de 3.000 tablas de datos y parámetros que permiten adaptar

el producto a las necesidades específicas de cada actividad y empresa sin

necesidad de llevar a cabo desarrollos específicos. El nivel de parametrización llega

hasta el interface del usuario, pudiendo personalizar los formularios de entrada,

listas de valores, alertas, idiomas, automatización de procesos y otros aspectos que

contribuyen a optimizar el manejo del sistema (Grupo Edisa, s.f.).

2.1.4. Sistema de Trazabilidad Ganadera de SONDA

El Sistema de Trazabilidad Ganadera desarrollado por SONDA es una herramienta

que permite a los productores un desempeño competitivo en el mercado bovino

global, con la potencialidad de extenderse a otras especies y mercados que exijan

contar con un sistema de trazabilidad para controlar y monitorear diversos aspectos

de un proceso productivo desde el origen hasta la entrega al potencial cliente y/o

distribuidor (SONDA, s.f.).

Este sistema da la posibilidad de generar y mantener la trazabilidad de la cadena

productiva bovina, permitiendo la integración de la información en una base de datos

centralizada, con actualización en línea y respuestas en tiempo real, mediante el

uso de las tecnologías de comunicaciones y redes. Igualmente ésta solución unifica

la información de la comercialización del producto, según la empresa, con el fin de

proveer a los consumidores un producto confiable, de origen conocido y obtenido a

Page 17: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

17

través de un proceso eficaz, y de esta manera fortalecer la imagen de un producto

seguro y de calidad.

SONDA es una empresa Chilena pioneros en el desarrollo de soluciones de

trazabilidad bovina con soluciones que actualmente certifican la trazabilidad de

productos bovinos en Uruguay y Colombia, los cuales se encuentran entre los

principales productores y exportadores de carne en la región, Igualmente cuentan

con sedes en Argentina, Brasil, Costa Rica, Ecuador, México, Panamá, Perú y

Uruguay.

2.1.5. TecnoCarnes

Es un software diseñado para la Administración de la Industria cárnica que incorpora

un control del proceso productivo, de plantas de sacrificio, salas de desposte,

centros de acopio y puntos de venta.

TecnoCarnes dispone de las funciones necesarias para realizar el control y

trazabilidad de cada animal desde el momento del ingreso a las plantas de sacrificio

y faenado hasta su salida para los diferentes centros de consumo.

Permite el control de inventarios, compras, cuentas por cobrar, cuentas por pagar,

caja y bancos, órdenes de compra y venta, despacho de productos, facturación a

crédito y la implementación de un sistema POS (TecnoCarnes, s.f.).

La empresa TecnoCarnes tiene su sede principal en Medellín, Colombia, y cuenta

con una segunda sede en Bogotá.

Page 18: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

18

2.2. MARCO CONTEXTUAL

La Planta de Beneficio Animal llamada “Carnes y Derivados La Pradera” está

ubicada en el Valle del Cauca, en el municipio Pradera, establecido en la zona sur

de este departamento. Para tener conocimiento del contexto en el que se

implementa el sistema, se proporciona la siguiente información descriptiva.

2.2.1. Municipio de Pradera

Breve historia del Municipio de Pradera

Aunque no se tiene una fecha definida, sobre el arribo y asentamiento de los

primeros habitantes del caserío de El Bolo, como se llamó inicialmente a Pradera,

los primeros asentamientos de población se mencionan en un juicio que por linderos

se adelantó entre el juzgado segundo de Florida, pero con residencia en el Bolo,

donde un señor Adriano Arroyo decía tener posesión de unos terrenos hacia 1.835

en el mencionado fundo

En el siglo XIX, el caserío del Bolo dependía de Palmira, su cabecera de Distrito y

para 1.860 se propone elevarla a la categoría de Aldea, sugiriendo varios nombres

tales como Mosquera y Nazaret: (el primero en relación con Tomás Cipriano de

Mosquera quien en varias ocasiones asumió la presidencia de la República en la

década de 1.860 al 70 y finalmente en 1.871 cuando fue elegido presidente del

estado soberano del Cauca.

En 1.867 se acoge el nombre de Pradera “Tierra de Prados”, y en diciembre de

1.870 por ordenanza municipal se erige en Distrito con veredas que tenían comisario

o alguacil y en 1.871 se instala y entra en funcionamiento la primera destilería oficial

del municipio (Alcaldía Municipal Pradera, s.f.).

Población

El municipio cuenta con una población estimada de 52.493 habitantes, según

proyecciones de población para el año 2011 realizadas por el DANE. Lo que

representa el 1,19% (4.411.176) de la población total del Departamento del Valle.

Su cabecera municipal concentra el 87,01% (45.674) del total de su población y el

12,99% (6.819) restante son habitantes de Zona Rural (Concejo Municipio Pradera,

2012).

Geografía

El departamento del Valle del Cauca es un sector caracterizado por sus extensas

planicies, y la mayoría de municipios no se salen de este esquema, por lo que

Pradera cuenta con superficies planas donde se siembra la famosa caña de azúcar,

Page 19: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

19

pero cuenta también con algunas zonas montañosas, y algunos ríos por sus

alrededores.

Pradera limita al norte con Palmira (Quebrada Flores Amarillas), al sur con Florida

(Rio Parraga), al oriente con el departamento del Tolima (Cordillera Central de los

Andes) y al Occidente con Candelaria (Rio Parraga)

Además cuenta con las siguientes características (Alcaldía Municipal Pradera, s.f.):

- Extensión total: 407 km2

- Extensión área urbana: 152 km2

- Extensión área rural: 255 km2

- Altitud de la cabecera municipal (metros sobre el nivel del mar): 1.070 m

- Distancia de referencia: 50 km de Cali

Clima

Pradera posee un clima cálido con una temperatura promedio de 23 grados

centígrados, lo que la hace muy atractiva a los turistas o personas que desean

disfrutar de centros vacacionales, balnearios y sus sitios turísticos, además de

contribuir provechosamente a la agricultura.

2.2.2. Planta de Beneficio Animal “Carnes y Derivados La Pradera”

Es una planta de beneficio animal y una instalación privada en la que se sacrifican

animales para procesar y comercializar las carnes extraídas. Este establecimiento

está dotado con instalaciones y equipos necesarios para el beneficio de animales

de abasto público para consumo humano, así como para tareas complementarias

de elaboración e industrialización. Para realizar esta actividad la empresa está

dividida en diferentes áreas, por lo que uno de sus procesos internos varía

dependiendo del contexto de trabajo.

Todos los procesos internos están de conformidad con la normatividad sanitaria y

ambiental vigente que para estos fines son otorgadas por entidades nacionales

como el INVIMA y el Ministerio de Ambiente y Desarrollo Sostenible.

Carnes y derivados La Pradera plantea seguir siendo una productora y

comercializadora de ganado y sus derivados con altos índices de calidad, buenos

precios y la apropiación de la experiencia que el mercado necesita, teniendo una

gran variedad de productos que permitan obtener los resultados que el cliente

espera.

Ubicación

A la fecha Carnes y Derivados La Pradera se encuentra ubicado en la Calle 9 No.

12-56, Barrio San José, Pradera, Valle del Cauca.

Page 20: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

20

Colaboradores

Esta empresa cuenta con alrededor de 30 colaboradores, la gran mayoría de ellos

son hombres mayores de 30 años.

Estos colaboradores están distribuidos en las diferentes áreas que esta actividad

requiere. En el área específica de recepción de ganado, donde está el software

directamente involucrado, están a cargo 12 personas.

Page 21: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

21

2.3. MARCO CONCEPTUAL

2.3.1. SOFTWARE

El software es la parte inmaterial o lógica de un sistema informático. Son los

programas y los datos necesarios para que el componente tangible o físico de un

dispositivo (computador, celular, etc.) funcione y genere respuestas. Para que un

dispositivo puede realizar una tarea es necesario que haya algo que le indique qué

y cómo debe hacerla. Estas órdenes se materializan en instrucciones elementales

y a cada conjunto de instrucciones se las denomina programa. Entonces, de manera

general, el software es un conjunto de programas diseñados por expertos o usuarios

que conocen los elementos apropiados que permitan controlar la actividad de un

dispositivo y para convertir información de entrada en resultados (De Pablos, López,

Romo, & Medina, 2004).

El software se clasifica de manera general, como componente de un dispositivo, en

cinco áreas:

1. Sistemas operativos

2. Lenguajes de programación

3. Utilidades o programas utilitarios

4. Aplicaciones o software de aplicación específico

5. Software de apoyo al usuario o software de aplicación general

Dentro de estas cinco áreas se encuentran como tal el software de aplicación que

son aquellos programas que se escriben para y por los usuarios, con el objetivo de

utilizar o instruir a un dispositivo para hacer una tarea específica (Amaya, 2009).

2.3.2. APLICACIONES WEB

Una aplicación web (en inglés: web-based application) es una herramienta que

puede ser utilizada a través de internet o intranet mediante un navegador. Es un tipo

especial de aplicación cliente-servidor, donde tanto el cliente, que puede ser el

navegador, como el servidor (servidor web) y el protocolo mediante el que se

comunican (HTTP) están estandarizados y por tanto no son creados por el

programador de aplicaciones.

El HTTP forma parte de la familia de protocolos de comunicaciones TCP/IP, que

son los empleados por Internet. Estos protocolos permiten la conexión de sistemas

heterogéneos, lo que permite el intercambio de datos entre distintos dispositivos.

HTTP está en el nivel de aplicación (nivel siete) del modelo OSI (Luján, 2002).

2.3.2.1. Cliente

Page 22: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

22

El cliente web es un programa con el que interactúa el usuario para solicitar a un

servidor web el envío de los recursos que desea recibir mediante HTTP. Estos

clientes son, principalmente, los navegadores web como Google Chrome, Mozilla

Firefox, Opera, entre otros.

La parte cliente de las aplicaciones web también está formada por código HTML

que forma la página web más algo de código ejecutable realizado en lenguaje de

script del explorador como por ejemplo JavaScript.

La misión de los clientes es la interpretación de las páginas HTML y los diferentes

recursos provenientes como respuesta del servidor web (imágenes, sonidos, video,

etc.)

Algunos de los lenguajes y tecnologías utilizadas para programar el cliente web son:

HTML, CSS, DHTML, JavaScript, VBScript, entre otros.

2.3.2.2. Servidor

Un servidor web es un programa corriendo en un equipo que está escuchando y

esperando permanentemente las solicitudes de conexión mediante el protocolo

HTTP por parte de los clientes web.

De forma general, la parte servidor de una aplicación web está formada por:

documentos HTML (páginas estáticas), recursos multimedia, documentos y demás

que pueden ser empleados dentro de las páginas o estar disponibles para ser

descargados y ejecutados en el cliente.

Figura 1. Arquitectura común de una aplicación web. Fuente: Luján, S. (2002). Programación de aplicaciones web. Alicante: Editorial Club Universitario.

Como lo detalla Luján (2002) el proceso completo, desde que un usuario solicita

una página web, hasta que el navegador se la muestra con el formato apropiado es

el siguiente:

Page 23: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

23

1. El usuario especifica en el explorador la dirección de la página que desea

consultar. El usuario puede escribir en el navegador la dirección URL de la

página que desea visitar.

2. El cliente establece una conexión con el servidor web.

3. El cliente solicita la página o el recurso deseado.

4. El servidor envío el recurso o página. En caso de no existir devuelve un

código indicando el error.

5. Si el recurso solicitado es una página HTML, el navegador inicia su proceso

de interpretación de los códigos HTML. Si el cliente web encuentra

instrucciones que hacen referencia a otros recursos que se deben mostrar

(imágenes, animaciones, etc.) establece automáticamente comunicación con

el servidor web para solicitar dichos objetos.

6. Se cierra la conexión entre el cliente y el servidor.

7. Se muestra la página al usuario.

2.3.3. INGENIERÍA DEL SOFTWARE

Pressman (2002) define la Ingeniería del Software como “una disciplina o área de

las Informática o Ciencias de la computación, que ofrece métodos y técnicas para

desarrollar y mantener software de calidad que resuelven problemas de todo tipo”.

Por su parte, Bohem (1976) dice que la Ingeniería del Software es la aplicación

práctica del conocimiento científico en el diseño y construcción de programas de

computadora y la documentación asociada requerida para desarrollar, operar y

mantenerlo.

En otras palabras, la Ingeniería del Software no es más que un conjunto de

herramientas, métodos y procedimientos que son creados con el objetivo de hacer

software eficiente, de calidad y que satisfaga las necesidades o requerimientos para

los que fue desarrollado.

- Objetivos de la Ingeniería del Software

El objetivo primario de la Ingeniería del Software, que puede ser una síntesis y

deducción de las definiciones dadas anteriormente, es construir una solución de

software eficiente que satisfaga las necesidades requeridas por un cliente, para esto

entonces pueden mencionarse algunos objetivos específicos (Cortés, 1998):

a) Promover estándares y modelos que faciliten la comunicación, tanto

para clientes como para especialistas en la elaboración de un

proyecto de software. Las herramientas de la Ingeniería del Software

deben ofrecen medios para la modelización gráfica del producto que se

Page 24: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

24

desarrolla, para que todos los involucrados tengan una representación

clara y poco ambigua que ayude a entender el trabajo realizado.

b) Proveer los métodos, herramientas y procedimientos para la

“construcción” eficiente del software. La elaboración de un proyecto

de software debe ser a través de un proceso adecuado.

o Los métodos indican cómo construir técnicamente el software.

o Las herramientas proporcionan un soporte automático o

semiautomático para los métodos. Un ejemplo son las herramientas

asistidas por computadora para la Ingeniería del Software CASE

(Computer Assisted Software Engineering).

o Los procedimientos son la unión que junta los métodos y las

herramientas y facilita el desarrollo racional del software. Éstos

definen la secuencia en la que se aplican los métodos, las entregas y

los controles.

c) Proveer parámetros y criterios de evaluación de la calidad del

software. Existen varias normas y modelos en el software que tratan de

evaluar y medir cómo se presenta la calidad en un producto. Por ejemplo,

los que son generados por organizaciones como la ISO o la IEEE. En la

Tabla 1, se presentan algunos parámetros de calidad del software.

Tabla 1. Parámetros deseables en un software.

PARÁMETRO DETALLE

Compatibilidad Es la facilidad por la cual el software puede ser combinado con otro software

Corrección es la facilidad con la cual los errores latentes pueden ser encontrados y corregidos en el software

Eficiencia Es el grado en que el software utiliza los recursos de hardware de manera efectiva. A menudo la eficiencia se sobre-enfatiza a expensas de otras metas.

Flexibilidad Es la facilidad con la cual el software puede ser modificado para cumplir cambios en los requerimientos.

Mantenibilidad Es una combinación de corrección y flexibilidad

Portabilidad Es la facilidad por la cual un software puede ser transferido de una plataforma de hardware o de software distinta

Confiabilidad Es el grado en que el software funciona correctamente a través del tiempo

Reusabilidad Es la facilidad con que el software puede ser usado para propósitos distintos al original

Robustez Es el grado con que el software sigue funcionando de manera correcta en condiciones anormales.

Salvedad (safety)

Es el grado con el que el software funciona sin daños accidentales

Seguridad Es el grado con el cual el software se protege así mismo de accesos o modificaciones no autorizadas.

Page 25: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

25

Testability Es el grado y la facilidad por la cual el software puede ser examinado para su corrección, eficiencia, confiabilidad y robustez.

Comprensión Es la facilidad con la cual los humanos pueden comprender el software y su documentación.

Uso-amigable Es la facilidad con que los humanos pueden usar u operar el software.

Validez Es la facilidad por la cual el software puede demostrar ser correcto.

Verificación Es la facilidad con la que el software puede demostrar cumplir el estándar de desarrollo de procedimientos.

Fuente: Cortés, R. (1998). Introduccion al Análisis de Sistemas y la Ingeniería de Software. San José:

Editorial Universidad Estatal a Distancia.

2.3.4. MODELOS DEL CICLO DE VIDA DEL DESARROLLO DE SOFTWARE

El desarrollo de software es algo más que la simple codificación o programación.

Dentro de todo el proceso hay etapas que deben llevarse a cabo, generalmente, en

un orden específico.

Se denomina entonces ciclo de vida del software al conjunto de estas etapas. Los

métodos y técnicas de la Ingeniería del Software se realizan dentro de las

delimitaciones dadas por este ciclo y las fases que hacen parte de él.

Es indispensable que todo proyecto se desarrolle dentro del marco de un ciclo de

vida bien establecido para garantizar el cumplimiento de los tiempos y recursos

asignados. Además las garantías y certificaciones de calidad también presuponen

que el proceso de producción de software se desarrolle según un ciclo de vida con

etapas bien definidas (Campderrich, 2012).

- El ciclo de vida en cascada

En esta propuesta, en cada etapa se obtienen documentos que son la base para

empezar la siguiente etapa, por lo que no se puede empezar una etapa si no se ha

terminado la anterior. En este ciclo nunca se regresa a etapas pasadas.

Page 26: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

26

Figura 2. Ciclo de vida en cascada Fuente: Elaboración propia

Como muestra la Figura 2, esta propuesta presenta las siguientes etapas:

a) Análisis previo

b) Análisis de requisitos

c) Diseño

d) Programación

e) Pruebas

f) Mantenimiento

- Los ciclos de vida iterativos e incrementales

El ciclo de vida en cascada presenta algunos inconvenientes y por esta razón se

han presentado modelos alternativos que sean iterativos debido a que el ciclo de

vida en cascada no es realista y el cálculo de la duración y el costo de un proyecto

es muy poco sólido y presenta un gran margen de error.

Además hay un inconveniente mayor, y es que generalmente es muy difícil definir

al inicio de un proyecto los requerimientos de manera tan precisa que garantice que

al paso del tiempo no habrá cambios en ellos.

Entre las propuestas puntuales que presentan esta filosofía incremental está el

Ciclo de vida con prototipos que consiste en un software provisional que prioriza

la facilidad y rapidez en la modificación sobre la funcionalidad; solo sirve para que

los usuarios puedan ver cómo sería el contenido y el posible funcionamiento y

apariencia del software, sin realizar realmente estas funciones. Así por

comparación, los futuros usuarios podrán definir más exactamente qué es lo que

Análisis previo

Análisis de requisitios

Diseño

Programación

Pruebas

Mantenimiento

Page 27: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

27

quieren; y por supuesto se puede volver a fabricar otro prototipo y otro más hasta

afinar exactamente en el resultado que buscamos (Campderrich, 2012).

El ciclo de vida del Rational Unified Process también es iterativo e incremental y

se distinguen las siguientes cuatro etapas:

1. Inicio: Se establece la justificación económica y el alcance del proyecto.

2. Elaboración: Se estudia el alcance del software, a quién debe dar cobertura

y se realiza una planificación del proyecto.

3. Construcción: Se desarrolla todo el proyecto de forma iterativa e incremental.

4. Transición: Se entrega el producto al cliente y comprende todo el comienzo

de su utilización, realizando los cambios necesarios y oportunos.

2.3.5. MODELO-VISTA-CONTROLADOR

Es un patrón de arquitectura de software ampliamente usado creado en 1979 por

Tryhve Reenskaug. En este patrón los datos son separados de la lógica de negocio

y de la interfaz de usuario, por lo que se propone la construcción de tres

componentes distintos: el modelo, la vista y el controlador (ver Figura 3).

- Modelo

Es la representación de los datos y reglas de negocio (mundo del problema). Es el

encargado de manejar un registro de las visitas y de los controladores que existen

en el sistema. No tiene conocimiento específico de la Vista ni de los controladores

pero envía a la Vista aquella parte de la información que en cada momento se le

solicita para que sea mostrada. Las peticiones de acceso o manipulación de

información llegan al Modelo a través del Controlador.

- Vista

Permite mostrar la información del modelo en un formato adecuado que permita que

se dé la interacción. Además de poseer un registro acerca del controlador asociado.

En otras palabras es la interfaz de usuario y por tanto no tiene conocimiento del

modelo (Jaramillo, Cardona, & Villa, 2008).

- Controlador

Responde a los eventos provocados por el usuario (se da un clic, se digita un texto,

etc.) que implican cambios en el modelo y la vista, dando una correcta gestión de

las entradas del usuario. También puede enviar comandos la Vista asociada si se

solicita un cambio en la forma en que se presenta el Modelo, podría decirse que el

Controlador es un intermediario entre la Vista y el Modelo.

Page 28: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

28

Figura 3. Relación entre el Modelo, la Vista y el Controlador Fuente: Elaboración propia

2.3.6. DJANGO

Django es un framework web de Python de alto nivel que fomenta el desarrollo

rápido, limpio y pragmático. Es construido por desarrolladores con experiencia, y se

encarga de gran parte de la molestia del desarrollo Web, para que quien lo utilice

pueda centrarse en la escritura de su aplicación sin necesidad de reinventar la

rueda. Es gratuito y de código abierto (Django, 2015).

Los creadores de Django defienden la idea que este framework presenta,

principalmente, las siguientes cinco características:

1. Fácil: Django fue diseñado para ayudar a los desarrolladores a realizar las

aplicaciones desde el concepto hasta su finalización lo antes posible.

2. Completo: Django incluye docenas de extras que se pueden utilizar para

manejar tareas comunes de desarrollo Web. Django se encarga de la

autenticación de usuarios, administración de contenidos, mapas del sitio,

canales RSS, y muchas tareas más.

3. Seguro: Django toma en serio la seguridad y le ayuda a los desarrolladores

a evitar muchos errores comunes de seguridad, tales como la inyección SQL,

cross-site scripting, cross-site solicitud falsificación y clickjacking. Su sistema

de autenticación de usuario ofrece una manera segura para administrar

cuentas de usuario y contraseñas.

4. Escalable: Algunos de los sitios más concurridos del planeta utilizan la

capacidad de Django para escalar con rapidez y flexibilidad y satisfacer las

demandas de tráfico más pesado.

5. Versátil: Empresas, organizaciones y gobiernos han usado Django para

construir todo tipo de cosas - desde sistemas de gestión de contenidos para

redes sociales hasta plataformas de computación científica.

A pesar de que Django está robustamente inspirado en la arquitectura de software

Modelo-Vista-Controlador, sus creadores defienden públicamente que no se sienten

atados a definir estrictamente ningún paradigma particular, y en cambio prefieren

hacer "lo que les parece correcto". Como resultado, por ejemplo, lo que se llamaría

"controlador" en un "verdadero" framework MVC se llama en Django "vista", y lo que

Controlador

VistaModelo

Page 29: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

29

se llamaría "vista" se llama "plantilla". Esto genera una arquitectura que es llamada

Modelo-Vista-Template.

- Diseñar un modelo

Django puede ser utilizado sin una base de datos específica ya que viene con un

mapeador objeto-relacional en el que se puede describir el diseño de la base de

datos en código Python.

Si no se especifica otra, Django automáticamente trabaja con el sistema gestor de

bases de datos relacional SQLite del que se habla de manera más detallada más

adelante en este documento.

La sintaxis del modelo de datos ofrece varias maneras de representar los modelos

lo que representa una solución a los problemas en la definición de los esquemas de

bases de datos. Los modelos se codifican en un archivo llamado “modelos.py” que

está presente en una de las carpetas que se crean cuando se inicia un nuevo

proyecto en Django.

Ejemplo codificado en Python 3:

from django.db import models

class Reporter(models.Model):

full_name = models.CharField(max_length=70)

def __str__(self):

return self.full_name

class Article(models.Model):

pub_date = models.DateField()

headline = models.CharField(max_length=200)

content = models.TextField()

reporter = models.ForeignKey(Reporter)

def __str__(self):

return self.headline

Page 30: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

30

- Codificar una vista

Cada vista es responsable de hacer una de dos cosas: devolver un objeto

HttpResponse que representa el contenido de una página asociada, o lanzar una

excepción como Http404. Es resto depende del desarrollador.

Generalmente, una vista recupera los datos de acuerdo con los parámetros, carga

una plantilla y renderiza la plantilla con los datos recuperados. Aquí está una vista

de relacionada al ejemplo mostrado anteriormente:

from django.shortcuts import render

from .models import Article

def year_archive(request, year):

a_list = Article.objects.filter(pub_date__year=year)

context = {'year': year, 'article_list': a_list}

return render(request, 'news/year_archive.html', context)

- Diseñar una plantilla (Template)

Django tiene una ruta de búsqueda de plantillas, lo que le permite minimizar la

redundancia ente las plantillas. En la configuración de Django, se especifica una

lista de directorios para comprobar si hay plantillas con directorios. Si una plantilla

no existe en el primer directorio, Django comprueba el segundo y así

sucesivamente.

Así luce una plantilla de Django:

{% extends "base.html" %}

{% block title %}Articles for {{ year }}{% endblock %}

{% block content %}

<h1>Articles for {{ year }}</h1>

{% for article in article_list %}

<p>{{ article.headline }}</p>

<p>By {{ article.reporter.full_name }}</p>

<p>Published {{ article.pub_date|date:"F j, Y" }}</p>

{% endfor %}

Page 31: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

31

{% endblock %}

2.3.7. SQLITE

SQLite es el nombre dado a un SBD (Sistema de base de datos) de código abierto

cuya principal diferencia es que en lugar de ser un SBD estándar, está contenido en

una biblioteca escrita en lenguaje C. Un SBD clásico es un programa que crear y

gestiona los datos de una base de datos al que se accede externamente por

programas que requieren este tipo de datos. SQLite, sin embargo, no es un

programa, sino una biblioteca de código que implementa una base de datos y es

manipulada por el programa mediante llamadas a funciones (Benítez & Arias, 2015).

Por lo general, SQLite no requiere instalación, basta con integrarlo de forma

convencional como una biblioteca de código escrita para el programa, lo que permite

incorporarlo al sistema. Esto es muy útil en un sistema con base de datos donde no

hay posibilidad de organizar un servidor de bases de datos para acceso.

SQLite es especialmente utilizado en aplicaciones que requieren almacenar y

acceder a datos de forma rápida, pero que no pueden acceder a una base de datos

externa como navegadores, clientes de correo electrónico, Android y sitios web.

Este SBD es compatible con los comandos que permiten crear, actualizar y eliminar

tablas, así como consultas y triggers.

Page 32: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

32

3. ESPECIFICACIÓN DE LA SOLUCIÓN

3.1. REQUERIMIENTOS

El primer paso para el desarrollo de la aplicación web que permite la sistematización

de la entrada de bovinos en la Plata de Beneficio Animal fue la recolección y

documentación de requerimientos. Esta elicitación se hizo a través de procesos de

entrevista con encargados del área de recepción y directivos de la empresa. En total

fueron realizadas 3 reuniones.

A continuación se muestra el detalle de cada uno de los requerimientos tanto

funcionales como no funcionales que la plataforma debe satisfacer.

Tabla 2. Requerimiento No.1: Módulo de autenticación.

Número 1

Nombre Módulo de Autenticación

Versión 1.0

Descripción

Se requiere la realización de un módulo de autenticación

que discrimine entre tipo de usuarios (Administradores Y

Operarios) para gestionar las interfaces y permisos que

pueden tener cada grupo de usuarios.

Clasificación Funcional, Seguridad

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 3. Requerimiento No. 2: Permisos de usuarios

Número 2

Nombre Permisos de Usuarios

Versión 1.0

Descripción

El sistema deberá tener un módulo para que el

administrador cree y gestione grupos de usuarios.

A continuación se detallan las funciones generales que

puede realizar cada grupo de usuarios.

Administradores: Acceso total a todo el sistema.

Operarios: Entrada de Bovinos, edición de sus entradas.

Clasificación Funcional, Seguridad

Estado Aprobado

Creado en 12 de junio de 2015

Fuente: Elaboración propia

Page 33: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

33

Tabla 4. Requerimiento No. 3: Módulo de Administración de Usuarios

Número 3

Nombre Módulo de Administración de Usuarios

Versión 1.0

Descripción

Realizar un módulo para la administración de usuarios, de

manera que el usuario de perfil ‘Administrador’ pueda

crear, listar, editar y eliminar usuarios (CRUD)1

Clasificación Funcional, Seguridad

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 5. Requerimiento No. 4: Imagen corporativa para la aplicación

Número 4

Nombre Imagen corporativa para la aplicación

Versión 1.0

Descripción

La interfaz gráfica del software debe incluir en un lugar

visible el logo de Carnes y Derivados La Pradera, así como

utilizar los colores institucionales en los elementos gráficos.

Clasificación No funcional, Interfaz

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 6. Requerimiento No. 5: Software Web

Número 5

Nombre Software Web

Versión 1.0

Descripción

El software debe ser desarrollado en un ambiente web, de

tal manera que pueda ser accedido desde cualquier

dispositivo, y el almacenamiento de la información debe

estar de igual manera centralizado en un servidor, para que

cualquier cambio o actualización que se realice pueda ser

consultada por cualquier tipo de usuario al instante.

Clasificación No Funcional

Estado Aprobado

Creado en 12 de junio de 2015

Fuente: Elaboración propia

1 Es el acrónimo de Crear, Obtener, Actualizar y Borrar (del original en inglés: Create, Read, Update and Delete)

Page 34: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

34

Tabla 7. Requerimiento No. 6: Interfaz Adaptable

Número 6

Nombre Interfaz Adaptable

Versión 1.0

Descripción

La interfaz del software debe contener una estructura

adaptable, de manera que en cualquier resolución de

pantalla pueda ser visualizada toda la información sin

inconvenientes.

Clasificación No Funcional, Interfaz

Estado Aprobado

Creado en 12 de junio de 2015

Fuente: Elaboración propia

Tabla 8. Requerimiento No. 7: Formulario Primera Fase

Número 7

Nombre Formulario Primera Fase

Versión 1.0

Descripción

Es requerida la creación de un formulario para la primera

fase del proceso de faenado en la empresa, el cual permita

ingresar los datos: identificador del formulario, guía ICA, lista

de bovinos, cantidad de animales, persona que recibe,

dirección de procedencia y nombre del proveedor. Revisar

el formato físico que se utiliza actualmente en la empresa

para verificar que se contengan todos los datos y en el orden

especificado en el mismo.

Clasificación Funcional

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 9. Requerimiento No. 8: Registro de Bovino en Primera Fase

Número 8

Nombre Registro de Bovino en Primera Fase

Versión 1.0

Descripción

En el registro realizado en el formulario de la primera fase,

deben incluirse unos datos específicos sobre cada bovino,

en el siguiente orden: Número del bovino, quemadura, peso

factura, peso entrada, peso salida y fecha de salida. La

cantidad máxima de bovinos que se pueden registrar por

Page 35: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

35

cada formulario es de 16, ya que en una entrega caben

máximo 16 bovinos en el transporte.

Clasificación Funcional

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 10. Requerimiento No. 9: Impresión de Formularios

Número 9

Nombre Impresión de Formularios

Versión 1.0

Descripción

Cuando un operario haya finalizado total o parcialmente un

formulario, tendrá la opción de imprimir para poder tener una

copia física del mismo cuando sea requerido. Igualmente el

administrador podrá solicitar impresiones de cualquier

formulario.

Clasificación Funcional

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Tabla 11. Requerimiento No. 10: Búsquedas y filtros por fechas

Número 10

Nombre Búsquedas y filtros por fecha

Versión 1.0

Descripción

El sistema deberá proporcionar una herramienta para

buscar y filtrar por rangos de fechas las entradas de bovinos

registradas en el sistema

Clasificación Funcional

Estado Aprobado

Creado en 22 de junio de 2015

Fuente: Elaboración propia

Page 36: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

36

3.2. DIAGRAMAS DE CASOS DE USO

Figura 4. Casos de Uso: Sistema General Fuente: Elaboración propia

Figura 5. Casos de Uso: Autenticarse Fuente: Elaboración propia

Page 37: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

37

Figura 6. Casos de Uso: Administrar Cuenta Fuente: Elaboración propia

Figura 7. Casos de Uso: Consultar Fuente: Elaboración propia

Page 38: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

38

Figura 8. Casos de Uso: Gestionar Entrada de Ganado Fuente: Elaboración propia

Figura 9. Casos de Uso: Administrar Usuarios Fuente: Elaboración propia

Page 39: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

39

3.3. DICCIONARIO DE CASOS DE USO

Tabla 12. Caso De Uso: Autenticarse # 1

Caso de Uso: Autenticarse

Actores: Operario, Administrador

Resumen: El usuario introducirá su usuario y contraseña para ser validado por el sistema

Pre condiciones : El usuario debe estar registrado en la base datos.

Post condiciones: El usuario habrá sido validado y se remitirá a la interfaz respectiva para cada tipo de usuario.

Flujo principal: Se presenta la pantalla login en donde el usuario debe ingresar el nombre de usuario y la contraseña. El sistema valida los datos introducidos, se presenta la pantalla según el rol del usuario.

Sub flujos: Si el usuario no se encuentra registrado en la base de datos, o su contraseña ha sido incorrecta se mostrará un mensaje de error.

Fuente: Elaboración propia

Tabla 13. Caso De Uso: Administrar Cuenta # 2

Caso de Uso: Administrar Cuenta

Actores: Operario, Administrador

Resumen: El usuario gestiona la información de su cuenta.

Pre condiciones : El usuario debe haber iniciado sesión.

Post condiciones: Se informa la usuario si los cambios han sido realizados satisfactoriamente o no.

Flujo principal: Se muestra una pantalla con la información editable del usuario la cual es su nombre, y contraseña. El usuario no podrá editar su identificador, ni estado, ni tipo de usuario (permisos).

Sub flujos: Si ocurrió algún error al intentar actualiza la información, se debe informar al usuario que ha ocurrido un error.

Fuente: Elaboración propia

Tabla 14. Caso De Uso: Gestionar Entrada de Ganado

# 3

Caso de Uso: Gestionar Entrada de Ganado

Actores: Operario, Administrador

Resumen: El usuario gestiona los registros del formulario de Entrada de Ganado, registra nuevas entradas. El administrador puede consultar registros de entrada almacenados por su número consecutivo, editar e imprimir.

Pre condiciones : El Operario o Administrador debe haber iniciado sesión

Page 40: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

40

Post condiciones: Se confirma al usuario que el nuevo registro ha sido realizado satisfactoriamente, o si sucedió lo contrario, comunicar el error.

Flujo principal: Se muestra una pantalla con los campos editables: Propietario, cantidad, guía ICA (adjuntar scan de guía), procedencia, proveedor, y los datos de cada res (quemadura, peso factura, peso entrada, peso salida y fecha salida). Para posteriormente guardar el registro e imprimir si es necesario. El Administrador podrá editar el campo número (consecutivo) y cargar en la interfaz la información correspondiente a dicho registro para poder editarlo, o imprimir.

Sub flujos: Si ocurrió algún error al intentar actualiza la información, se debe informar al usuario.

Fuente: Elaboración propia

Tabla 15. Caso De Uso: Administrar Usuarios # 6

Caso de Uso: Administrar Usuarios

Actores: Administrador

Resumen: El administrador podrá crear usuarios nuevos ingresando la información requerida (nombre, identificación, contraseña, estado y tipo de usuario). Igualmente podrá editar alguna información de los usuarios ya creados (contraseña, tipo, estado y nombre).

Pre condiciones : El Administrador debe haber iniciado sesión

Post condiciones: Se confirma al usuario que el nuevo registro ha sido realizado satisfactoriamente, o si sucedió lo contrario, comunicar el error.

Flujo principal: Se muestra una pantalla para crear usuarios con los campos (Nombre, identificación, contraseña, estado y tipo de usuario), y un segundo formulario igual, con autocompletado en los campos, nombre, e identificación para así cargar usuarios ya almacenados y poder editar los campos (contraseña, tipo, estado y nombre).

Sub flujos: Si ocurrió algún error al intentar actualizar la información, se debe informar al usuario.

Fuente: Elaboración propia

Tabla 16. Caso De Uso: Consultar entradas # 7

Caso de Uso: Consultar

Actores: Operario, Administrador

Resumen: Podrá visualizarse el registro de reses ingresadas al sistema perteneciente a un cliente en específico.

Pre condiciones : El Operario o Administrador deberá haber iniciado sesión.

Post condiciones: Se muestra un listado con las entradas y reses registradas

Flujo principal: El usuario selecciona un rango de fechas y da clic en “buscar”.

Page 41: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

41

Se muestra una tabla al usuario con todas las reses registradas en el intervalo seleccionado, y su respectiva fecha de entrada, quemadura, peso de factura y peso de entrada.

Sub flujos Si no hay entradas en el rango de fecha seleccionado debe informarse al usuario.

Fuente: Elaboración propia

Tabla 17. Caso De Uso: Imprimir entradas # 7

Caso de Uso: Imprimir entradas

Actores: Operario, Administrador

Resumen: Después de realizar una búsqueda o estando en el formulario de una entrada, podrá imprimirse los datos de ésta.

Pre condiciones : El Operario o Administrador deberá haber iniciado sesión y estar dentro del formulario de una entrada

Post condiciones: Hoja(s) impresa(s) con la información de la entrada

Flujo principal: Después que el usuario está dentro del detalle de una entrada éste da clic en “imprimir” configura la impresora y obtiene la información en papel.

Sub flujos: Si hay un error en la impresión, debe informarse al usuario.

Fuente: Elaboración propia

Page 42: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

42

3.4. DISEÑO DE BASE DE DATOS

Figura 10. Diseño de base de datos Fuente: Elaboración propia

3.4.1. Diccionario de datos

Tabla 18. Diccionario de datos: Usuario

Fuente: Elaboración propia

Usuario

Column name DataType PK NN UQ Default Comment

idUsuario INT ✔ ✔ Identificador único de cada usuario

nombreUsuario VARCHAR(45) Nombre del usuario para el inicio de sesión

nombre VARCHAR(45) Nombre(s) del usuario

apellidos VARCHAR(45) Apellidos

email VARCHAR(45) Dirección de correo electrónico

Page 43: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

43

Tabla 19. Diccionario de datos: Permiso Grupos Fuente: Elaboración propia

Tabla 20. Diccionario de datos: Grupo

Fuente: Elaboración propia

Tabla 21. Diccionario de datos: Entrada

Entrada

Column name DataType PK NN UQ Default Comment

idEntrada INT ✔ ✔ Identificador único de la entrada

guiaIca VARCHAR(45) Número de la guía del ICA

propietario VARCHAR(45) Nombre del propietario

Fecha DATE Fecha de entrada del ganado

Hora TIME Hora de entrada del ganado

procedencia VARCHAR(45) Nombre de la finca o sitio de donde provienen los bovinos

proveedor VARCHAR(45) Nombre del proveedor

recepcion VARCHAR(45) Persona que recibe

operario INT ID del operario que recibe

Fuente: Elaboración propia

esActivo BOOLEAN(1) Identifica si el usuario está activo o no

esAdministrador BOOLEAN(1) Identifica si el usuario es administrador

idGrupo INT ID del grupo al que pertenece

fechaUltimoInicioSedion DATE Fecha del último inicio de sesión

fechaCreacion DATE Fecha en que se creó la cuenta

PermisoGrupos

Column name DataType PK NN UQ Default Comment

idPermisosGrupo INT ✔ ✔ Identificador único de cada permiso de grupo

nombrePermiso VARCHAR(45) Nombre del permiso

Grupo

Column name DataType PK NN UQ Default Comment

idGrupo INT ✔ ✔ Identificador único del grupo

nombreGrupo VARCHAR(45)

Nombre del gurpo

Page 44: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

44

Tabla 22. Diccionario de datos: Animal

Animal

Column name DataType PK NN UQ Default Comment

idAnimal INT ✔ ✔ Identificador único del animal

numeroQuemadura VARCHAR(45) Número de la quemadura

peroFactura DECIMAL Peso descrito en la factura

pesoEntrada DECIMAL Peso al momento de entrar al corral

pesoSalida DECIMAL Peso al momento de salir del corral

entrada INT ID de la entrada a la que pertenece el animal

Fuente: Elaboración propia

Page 45: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

45

3.5. DISEÑO DE INTERFACES

3.5.1. Módulo de Autenticación

Figura 11. Interfaz Módulo De Autenticación Fuente: Elaboración propia.

Page 46: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

46

3.5.2. Módulo de Entrada de Ganado

Figura 12. Interfaz Módulo de Entrada de Ganado Fuente: Elaboración propia

Page 47: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

47

3.5.3. Módulo de Consultas

Figura 13. Interfaz Módulo de Consultas Fuente: Elaboración propia.

Page 48: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

48

3.6. DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA Y ENTORNO

TECNOLÓGICO

3.6.1. Arquitectura del sistema

Debido al requerimiento número 5 (ver Tabla 6) que indica que el software a realizar

debe ser un aplicativo web, se considera una arquitectura cliente - servidor. Como

puede apreciarse en la Figura 14, en esta arquitectura es necesario contar con un

servidor web y de base de datos, un sistema de comunicaciones inalámbrico y

terminales móviles como tablets y celulares con navegadores web.

Se utiliza la red de la empresa y no es necesaria la contratación de un hosting con

dominio público debido a que el aplicativo será utilizado únicamente dentro de la

organización.

Figura 14. Arquitectura del Sistema Fuente: Elaboración propia

Para el proceso de entrada de bovinos, los operarios utilizarán tablets en las que

podrán interactuar con el aplicativo web para el registro de nuevas entradas y para

realizar consultas en el sistema. Por su parte los funcionarios encargados del área

contable y demás sectores administrativos podrán utilizar sus computadores

portátiles o de escritorio para hacer también consultas.

Se utilizará el servidor web que por defecto proporciona Django corriendo en el

sistema operativo Ubuntu Server.

Page 49: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

49

3.7. CODIFICACIÓN

3.7.1. Instalación y configuración del Framework Django

Antes de poder usar Django, es necesario instalarlo. Para esto es importante tener

en cuenta que Django es un Framework web de Python por tanto éste debe estar

instalado en el sistema.

La última versión de Python puede ser descargada desde el sitio oficial

https://www.python.org/download/ o con el paquete del sistema operativo

respectivo. Puede verificarse si Python está instalado escribiendo la palabra

“Python” en la consola (Shell). En Linux debe aparecer algo como esto:

Python 3.3.3 (default, Nov 26 2013, 13:33:18)

[GCC 4.8.2] on linux

Type "help", "copyright", "credits" or "license" for more

information.

>>>

Es posible que se quiera instalar una base de datos robusta como PostgreSQL o

MySQL. En el caso del presente proyecto, como se ha mencionado, se hará uso de

SQLite. Este SBD no debe ser instalado.

La instalación de Django se realizó, inicialmente, en un sistema operativo Windows

7 a través de pip2. Para esto en una ventana de Símbolo del Sistema se ejecuta la

siguiente línea:

pip install Django

3.7.2. Creación de un proyecto en Django

En el Shell, y después de estar ubicado en la carpeta donde quiere crearse el

proyecto, se ejecuta la línea:

django-admin startproject <nombreDelProyecto>

Esto crea un conjunto de elementos como sigue:

<nombreDelProyecto>/

manage.py

<nombreDelProyecto>/

__init__.py

settings.py

urls.py

2 Pip es un acrónimo que puede referirse a “Pip Installs Python” o “Pip Installs Packages”.

Page 50: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

50

wsgi.py

Cada aplicación que se escribe en Django consiste de un paquete de Python que

sigue una cierta convención. Django viene con una utilidad que automáticamente

genera una estructura de directorios básica de una aplicación.

Para crear una aplicación, es importante desde la consola estar ubicado en el mismo

directorio del archivo “manage.py”, posteriormente se ejecuta el siguiente comando:

python manage.py startapp <nombreApp>

Esto crea una estructura de directorio así:

<nombreApp>/

__init__.py

admin.py

migrations/

__init__.py

models.py

tests.py

views.py

3.7.3. Creación de modelos en Django

Dentro del archivo “models.py” se crean el modelo de base de datos que contendrá

la aplicación. La Figura 15, muestra algunas de los modelos creados para el caso

del aplicativo software desarrollado para la Planta de Beneficio Animal “Carnes y

Derivados La Pradera”.

Page 51: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

51

Figura 15. Codificación de modelos en Django Fuente: Elaboración propia

Después de realizar esto se corre el siguiente comando:

python manage.py makemigrations <nombreApp>

y posteriormente, este otro:

python manage.py migrate

3.7.4. Servidor de desarrollo de Django

Django cuenta con un servidor escrito completamente en python que permite

ejecutar pruebas de manera rápida sin tener que configurar servidores en

producción como Apache.

El comando para ejecutarlo es el siguiente:

python manage.py runserver <IP>:<puerto>

en <IP> es posible especificar la dirección IP donde corre el servidor como también

el puerto, escribiéndolo en el comando en el lugar de <puerto>. La , muestra la

ejecución del servidor de Django, además se pueden observar dos solicitudes GET

HTTP. También puede notarse que la dirección IP donde corre el servidor es

192.168.0.4 y el puerto es 8000.

Figura 16. Ejecución del servidor de Django Fuente: Elaboración propia

Page 52: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

52

3.8. PRUEBAS

3.8.1. Pruebas de verificación de requerimientos

Requerimiento general

Requerimiento específico Cumplimiento

Sí No

Administración de usuarios

Crear usuario X

Editar usuario X

Eliminar usuario X

Listar usuarios X

Administración de grupos de usuarios

Crear grupo X

Editar grupo X

Eliminar grupo X

Listar grupos X

Administración de entradas

Crear entrada X

Editar entrada X

Eliminar entrada X

Listar entradas X

Imprimir entrada X

Administración de animales

Crear animal X

Editar animal X

Listar animales X

Consultas Consulta de entradas por rango de fechas X

Autenticación Autenticación de administradores X

Autenticación de operarios X

3.8.2. Pruebas de la caja negra

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Crear usuario

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación crea correctamente los usuarios

Personal Requerido: Usuario administrador

Datos de Prueba: Parámetros para crear un usuario

Procedimiento de Prueba: Se ejecuta la aplicación y se ingresan los datos necesarios para crear un usuario.

Resultado Esperado: Crear correctamente un usuario.

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. Los datos están ingresados correctamente en la base de datos, y al terminar el proceso se muestra la consulta del usuario.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Editar usuario

Responsables: Camilo Leyton

Page 53: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

53

Objetivo: Determinar si la aplicación edita correctamente un usuario e impide la duplicación del nombre de usuario

Personal Requerido: Usuario administrador

Datos de Prueba: Parámetros para editar un usuario

Procedimiento de Prueba: Se ejecuta la aplicación y se ingresan los datos necesarios para editar un usuario.

Resultado Esperado: Mensaje de advertencia indicando que se no se puede editar el usuario porque el nombre de usuario ya existe

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. El sistema validó y mostró el mensaje de error.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Eliminar usuario

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación elimina correctamente los usuarios

Personal Requerido: Usuario administrador

Datos de Prueba:

Procedimiento de Prueba: Se ejecuta la aplicación, busca al usuario y se da clic en eliminar

Resultado Esperado: Eliminar correctamente un usuario.

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. Los datos están ingresados correctamente en la base de datos y se muestra un mensaje indicando que la acción fue correcta.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Crear grupos de usuarios

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación crea correctamente los grupos de usuarios

Personal Requerido: Usuario administrador

Datos de Prueba: Parámetros para crear un grupo

Procedimiento de Prueba: Se ejecuta la aplicación y se ingresan los datos necesarios.

Resultado Esperado: Crear correctamente un grupo de usuarios

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. Los datos están ingresados correctamente en la base de datos, y al terminar el proceso se muestra la consulta del grupo.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Eliminar grupo de usuarios

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación elimina correctamente un grupo de usuarios

Page 54: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

54

Personal Requerido: Usuario administrador

Datos de Prueba:

Procedimiento de Prueba: Se ejecuta la aplicación, se busca el grupo y se da clic en eliminar

Resultado Esperado: Eliminar correctamente un grupo

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. Los datos están ingresados correctamente en la base de datos y se muestra un mensaje indicando que la acción fue correcta.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Crear entradas de animales

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación crea correctamente entrada de animales y cuenta correctamente la cantidad de animales.

Personal Requerido: Usuario administrador

Datos de Prueba: Parámetros para crear una entrada

Procedimiento de Prueba: Se ejecuta la aplicación y se ingresan los datos necesarios.

Resultado Esperado: Crear correctamente una entrada

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. Los datos están ingresados correctamente en la base de datos, y al terminar el proceso se muestra la consulta del grupo donde puede verse que el número de animales coincide.

Nombre del Proyecto: Sistema de Información “Carnes y Derivados La Pradera”

Módulo: Autenticar un operario

Responsables: Camilo Leyton

Objetivo: Determinar si la aplicación valida una contraseña incorrecta al momento de iniciar sesión

Personal Requerido: Usuario operario

Datos de Prueba: Parámetros para iniciar sesión

Procedimiento de Prueba: Se ejecuta la aplicación y se ingresan los datos necesarios.

Resultado Esperado: Advertir que la contraseña es incorrecta y NO permitir el inicio de sesión

Resultado Obtenido: Prueba exitosa SI(X) NO()

Comentarios: Prueba OK. La aplicación muestra un mensaje advirtiendo que la contraseña es incorrecta.

Page 55: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

55

3.8.3. Pruebas de visualización y adaptabilidad en dispositivos móviles

Figura 17. Prueba en móvil: Inicio de sesión Fuente: Elaboración propia

Figura 18. Prueba en móvil: página principal Fuente: Elaboración propia

Page 56: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

56

Figura 19. Prueba en móvil: ingresar entrada Fuente: Elaboración propia

Figura 20. Prueba en móvil: ingresar animales Fuente: Elaboración propia

Page 57: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

57

Figura 21. Prueba en móvil: crear usuario Fuente: Elaboración propia

Figura 22. Prueba en móvil: creación de grupos

Page 58: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

58

4. CONCLUSIONES

Las empresas de todo tipo, inclusive aquellas que pareciera que no tienen relación

como las Plantas de Beneficio Animal deben aprovechar los beneficios de las TIC

para sus procesos. Con la implementación de este software en la Planta de

Beneficio Animal “Carnes y Derivados La Pradera” se mejorará notablemente el

tiempo de ejecución de las actividades, la seguridad de la información y la

trazabilidad en la entrada de bovinos.

El proceso llevado a cabo permitió el reconocimiento y uso de los elementos de la

Ingeniería del Software y todos los procedimientos óptimos para realizar un

aplicativo web. Además este proyecto posibilitó descubrir otros sectores de actividad

económica donde el uso de herramientas TIC tiene grandes beneficios y puede ser

un mercado potencial para los desarrolladores de software.

En el desarrollo de aplicativos web, el uso de un framework como Django no sólo

facilita el trabajo sino que permite la creación de sitios más seguros, escalables, con

una administración más sencilla y en general de mayor calidad. Esto se debe a que

ya traen implementadas muchas funcionalidades probadas y capaces de soportar

desde las aplicaciones más sencillas hasta las más robustas.

Se pudo comprobar una de las mayores recomendaciones en el desarrollo de

software a la que comúnmente se refiere con la frese “no reinventar la rueda”, pues

con la utilización de Django no fue necesaria la codificación de elementos que a

simple vista son fáciles pero que generan gran trabajo como la encriptación de las

contraseñas, inicio de sesión, módulo administrador, entre otras cosas.

Page 59: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

59

5. RECOMENDACIONES

.

El proceso de Elicitación o Levantamiento de requerimientos en la medida de lo

posible debe realizarse con ayuda de las personas que verdaderamente están

involucradas en los procesos en los que el software va a interactuar puesto que el

detalle del conocimiento de estos elementos es fundamental para que el producto

final satisfaga todas las necesidades para las que es creado.

Para que el Sistema de Información desarrollado en el presente proyecto pueda ser

verdaderamente útil dentro de la Plan de Beneficio Animal “Carnes y Derivados La

Pradera” son necesarios algunos procesos de capacitación en el uso de dispositivos

móviles y además en la utilización del aplicativo web con el fin de que para los

operarios y administrativos sea entendible y fácil el uso de este software.

Los sistemas de comunicaciones inalámbricos son otro punto clave en el despliegue

de este sistema, por lo que esta empresa debe realizar una revisión y mejora, de

ser necesario, de todos sus equipos y red inalámbrica para garantizar que en las

áreas donde se recibe el ganado haya cobertura suficiente para que el aplicativo

funcione de manera correcta.

Page 60: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

60

6. LISTA DE REFERENCIAS

Alcaldía Municipal Pradera. (s.f.). Nuestro municipio. Recuperado el 4 de noviembre

de 2015, de Pradera: http://www.pradera-

valle.gov.co/informacion_general.shtml

Amaya, J. (2009). Sistemas de Información. Bogotá: Ecoe Ediciones.

Aritmos Global Technology Solutions. (2014). Aritmos. Recuperado el 31 de Marzo

de 2015, de Sage X3 Enterprise Industrias Cárnicas:

http://aritmos.com/uploads/Sage-ERP-X3-meat-carnicas-aritmos.pdf

Benítez, M., & Arias, Á. (2015). Curso de Introducción a la Administración de Bases

de datos. CreateSpace Independent Publishing Platform.

Bohem, B. (1976). Software Engineering. IEEE Transactions(12), 1226-1241.

Campderrich, B. (2012). Ingeniería del Software. Catalunya: UOC.

Concejo Municipio Pradera. (2012). Plan de Desarrollo Municipio Pradera.

Recuperado el 4 de noviembre de 2015, de http://pradera-valle.gov.co/apc-

aa-

files/34353136316661336639366562633534/ACUERDO_No.006_PLAN_D

ESARROLLO_2012_2015.pdf

Cortés, R. (1998). Introduccion al Análisis de Sistemas y la Ingeniería de Software.

San José: Editorial Universidad Estatal a Distancia.

De Pablos, C., López, J. J., Romo, S., & Medina, S. (2004). Informática y

comunicaciones en la empresa. Madrid: ESIC Editorial.

Django. (2015). Meet Django. Recuperado el 4 de octubre de 2015, de Django:

https://www.djangoproject.com/

Grupo Edisa. (s.f.). Software de gestión ERP para el sector: Productos cárnicos.

Recuperado el 28 de Marzo de 2015, de

http://www.edisa.com/clientes/sectores/sector-agroalimentario/productos-

carnicos/

Jaramillo, S., Cardona, S., & Villa, D. (2008). Programación avanzada en Java.

Armenia: Ediciones Elizcom.

KaisFS. (2014). Software para empresas de alimentación. Recuperado el 6 de

noviembre de 2015, de http://kaisfs.com/descargas/KaisFSWEB.pdf

Luján, S. (2002). Programación de aplicaciones web. Alicante: Editorial Club

Universitario.

Page 61: SISTEMATIZACIÓN DEL PROCESO DE FAENADO EN LA ......Carnes y Derivados La Pradera es una planta de sacrificio animal, en donde el manejo de la información necesaria para la matanza,

61

Pressman, R. (2002). Ingeniería del Software: un enfoque práctico (Quinta ed.).

Madrid: McGraw Hill.

SONDA. (s.f.). Gobierno y Sector Público. Recuperado el 2 de Abril de 2015, de

Trazabilidad Ganadera: http://www.sonda.com/trazabilidad-ganadera/

TecnoCarnes. (s.f.). Software especializado para la industria carnica. Recuperado

el 5 de Abril de 2015, de http://www.tecnocarnes.com/trazabilidad.html