3 BIBLIOTECA ALFONSO BORRERO CABAL, S.J.
DESCRIPCIÓN DE LA TESIS O DEL TRABAJO DE GRADO FORMULARIO
TÍTULO COMPLETO DE LA TESIS O TRABAJO DE GRADO
Sistema de Información para el Ingreso, Mantenimiento y Salida de Estibas
SUBTÍTULO, SI LO TIENE
SIBOX
AUTOR O AUTORES
Apellidos Completos Nombres Completos
García Rodríguez Jeyson Andrés
Lancheros Suescún Mario Sergio
DIRECTOR (ES) TESIS O DEL TRABAJO DE GRADO
Apellidos Completos Nombres Completos
Franky De Toro María Consuelo
FACULTAD
Ingeniería
PROGRAMA ACADÉMICO
Tipo de programa ( seleccione con “x” )
Pregrado Especialización Maestría Doctorado
X
Nombre del programa académico
Ingeniería de Sistemas
Nombres y apellidos del director del programa académico
Germán Alberto Chavarro Flórez
TRABAJO PARA OPTAR AL TÍTULO DE:
4 PREMIO O DISTINCIÓN (En caso de ser LAUREADAS o tener una mención especial):
CIUDAD AÑO DE PRESENTACIÓN DE LA
TESIS O DEL TRABAJO DE GRADO
NÚMERO DE PÁGINAS
Bogotá 2013 80
TIPO DE ILUSTRACIONES ( seleccione con “x” )
Dibujos Pinturas Tablas, gráficos y
diagramas Planos Mapas Fotografías Partituras X
SOFTWARE REQUERIDO O ESPECIALIZADO PARA LA LECTURA DEL DOCUMENTO
Nota: En caso de que el software (programa especializado requerido) no se encuentre licenciado por la Universidad a través de la Biblioteca (previa consulta al estudiante), el texto de la Tesis o Trabajo de Grado quedará solamente en formato PDF.
MATERIAL ACOMPAÑANTE
TIPO DURACIÓN
(minutos) CANTIDAD
FORMATO
CD DVD Otro ¿Cuál?
Vídeo Audio Multimedia Producción electrónica Otro Cuál?
DESCRIPTORES O PALABRAS CLAVE EN ESPAÑOL E INGLÉS
Son los términos que definen los temas que identifican el contenido. (En caso de duda para designar estos descriptores, se recomienda consultar con la Sección de Desarrollo de Colecciones de la Biblioteca Alfonso Borrero Cabal S.J en el correo [email protected], donde se les orientará).
5
Aplicación web Web Application
Framework Seam Seam Framework
Quartz Quartz
Estiba Stowage
JavaEE JavaEE
RESUMEN DEL CONTENIDO EN ESPAÑOL E INGLÉS
(Máximo 250 palabras - 1530 caracteres)
El propósito de este documento es presentar el proceso de desarrollo de una aplicación web que
provee el servicio de registrar la información de lotes y estibas. Esta herramienta fue desarrollada
mediante el uso de un servidor de aplicaciones, seguridad por roles finos, agendamiento de tareas por
Quartz Seam y generación de reportes y códigos de barra en PDF con iText en tecnología Java
EE5-SEAM2. Todas las compañías nacionales que tienen como objetivo estratégico seleccionar los envases
de los productos de mercado pueden utilizar esta aplicación, dado que se puede adaptar la
información en el modelo de datos.
The purpose of this document is to present the development process of a web Application that
provides a service for register the information about trucks and stowages. This tool was developed by
using an application server and the Java EE5 technology – SEAM 2. Also this application makes use of roles fines security, scheduling task with Quartz seam, generation of PDF files reporting and
generation of Barcode type 128 with iText. All national companies that have as its objective choose
containers for market products, can use this application, because can be adapted to the information
7
SISTEMA DE INFORMACIÓN PARA EL INGRESO, MANTENIMIENTO Y
SALIDA DE ESTIBAS
Código: 6843Jeyson Andrés García Rodríguez
Mario Sergio Lancheros Suescún
PONTIFICIA UNIVERSIDAD JAVERIANA DE BOGOTÁ D.C.
FACULTAD DE INGENIERÍA
CARRERA DE INGENIERÍA DE SISTEMAS
BOGOTÁ D.C.
9
Tabla de contenido
INTRODUCCIÓN ...14
1. OPORTUNIDAD, PROBLEMÁTICA, ANTECEDENTES ...16
1.1. Descripción del contexto ...16
1.2. Formulación del problema que se resolvió ...16
1.3. Justificación ...16
1.4. Impacto esperado ...16
2. DESCRIPCIÓN DEL PROYECTO ...18
2.1. Visión global ...18
2.2. Objetivo general ...18
2.3. Objetivos específicos ...18
2.4. Método que se propuso para satisfacer cada objetivo ...19
2.4.1. Programación extrema ...19
2.4.2. Etapa 1: Modelamiento de los procesos de negocio ...19
2.4.3. Etapa 2: Análisis y diseño del sistema de información para el ingreso, mantenimiento y salida de estibas ...20
2.4.4. Etapa 3: Construcción y pruebas al sistema de información para el ingreso, mantenimiento y salida de estibas ...20
2.4.5. Validación del cliente ...21
3. MARCO TEÓRICO ...22
3.1. Marco Contextual ...22
3.1.1. Procesos del negocio ...22
A. Proceso de ingreso de estibas ...22
B. Proceso de mantenimiento de estibas ...22
C. Proceso de salida de estibas ...23
10
3.2.1. Aplicaciones empresariales web ...24
A. Aplicación web ...24
B. Servidores web y Servidores de aplicaciones ...25
C. Tecnologías que utilizan servidor de aplicaciones ...27
D. Comparación entre tecnologías para el desarrollo web con servidor de aplicaciones29 3.2.2. Seguridad de la información ...30
A. Descripción ...30
4. DESARROLLO DEL TRABAJO ...32
4.1. Descripción de la compañía tomada como caso de estudio ...33
4.2. Modelamiento de procesos de negocio ...33
4.2.1. Diseño As-Is de la empresa tomada como caso de estudio ...33
A. Organización ...33
B. Descripción de los roles ...33
C. Flujo de secuencia de los procesos de negocio ...34
D. Conceptos relevantes de los procesos de negocio ...34
E. Proceso de Ingreso de estibas ...37
F. Proceso de mantenimiento de estibas ...39
G. Proceso de salida de estibas ...41
H. Debilidades del sistema actual de la compañía de estibas ...42
4.2.2. Diseño To-Be de la empresa tomada como caso de estudio ...43
A. Organización ...43
B. Descripción de los roles ...44
C. Flujo de secuencia de los procesos de negocio ...44
D. Conceptos relevantes de los proceso de negocio ...44
E. Proceso de ingreso de estibas ...44
11
G. Proceso de salida de estibas ...49
H. Análisis de las debilidades ...50
4.2.3. Resultados del modelamiento de los procesos de negocio ...51
4.3. Análisis y diseño del sistema de información: SIBOX ...52
4.3.1. Módulos ...53
4.3.2. Requerimientos del sistema de información por módulos ...54
4.3.3. Casos de uso del sistema de información por módulos ...56
4.3.4. Perfiles de seguridad ...57
4.3.5. Modelamiento de entidades ...58
4.3.6. Arquitectura de la aplicación ...60
A. Descripción ...60
B. Diagrama de componentes ...61
C. Diagrama de despliegue ...63
4.4. Construcción y pruebas del sistema de información ...63
4.4.1. Generación inicial de la aplicación mediante el uso de los generadores seam y taylor 63 4.4.2. Módulo de seguridad basado en roles finos y perfiles ...65
A. Objetivo ...65
B. Descripción ...65
C. Procedimiento ...66
D. Con respecto a la seguridad de la información ...68
4.4.3. Módulo de auditoría mediante métodos callback ...70
A. Objetivo ...70
B. Descripción ...70
C. Procedimiento ...71
12
A. Objetivo ...72
B. Descripción ...73
C. Procedimiento ...73
4.4.5. Módulo de reportes ...78
A. Objetivo ...78
B. Descripción ...78
C. Procedimiento ...78
4.4.6. Pruebas del sistema de información para el ingreso, mantenimiento y salida de estibas SIBOX...85
4.4.7. Validación del sistema de información para el ingreso, mantenimiento y salida de estibas SIBOX...85
5. RESULTADOS ...86
5.1. Validación de la aplicación ...88
6. CONCLUSIONES Y TRABAJOS FUTUROS ...89
6.1. Conclusiones ...89
6.2. Recomendaciones ...90
6.3. Trabajos futuros ...90
6.4. Post-Mortem ...90
6.4.1. Metodología propuesta Vs. Metodología realmente utilizada ...90
6.4.2. Tiempo del proyecto planeado Vs. Tiempo del proyecto ejecutado ...92
7. REFERENCIAS Y BIBLIOGRAFÍA ...94
8. ANEXOS ...103
8.1. Anexo 1: Documentos del modelamiento de procesos ...103
8.2. Anexo 2: Requerimientos del sistema ...103
8.3. Anexo 3: Inventario de módulos y casos de uso ...103
13
8.5. Anexo 5: Manual del usuario ...103
8.6. Anexo 6: Cronograma del proyecto ...103
8.7. Anexo 7: Glosario ...104
8.8. Anexo 8: Diagrama de entidades ...104
8.9. Anexo 9: Carta de satisfacción por parte del cliente ...104
8.10. Anexo 10: Encuesta de validación por parte del cliente ...104
8.11. Anexo 11: Manual de instalación ...104
8.12. Anexo 12: Manual de mantenimiento ...104
8.13. Anexo 13: Entrevistas realizadas al cliente ...104
8.14. Anexo 14: Test de pruebas de CRUDS ...104
8.15. Anexo 15: Test de pruebas de casos de uso de negocio ...104
14
INTRODUCCIÓN
Las empresas productoras y comercializadoras necesitan de una compañía encargada del proceso
de selección de envases de buena calidad que puedan servir como empaque para sus productos
finales. Estas compañías muchas veces no cuentan con los recursos económicos necesarios para
realizar la compra o arrendamiento de sistemas de información de inventarios y producción.
El objetivo de este trabajo de grado es el de diseñar y construir un sistema de información que
brinde soporte a las organizaciones para el registro del ingreso y salida de estibas, asignación de
trabajo de mantenimiento y generación de reportes en un tiempo específico.
Actualmente existen aplicaciones que modelan los procesos de inventario por medio de suites de
BPM (Ber12), archivos excel (Fer10) y controles de inventario, pero no tienen como objetivo
específico los procesos de ingreso, mantenimiento y salida de estibas. SIBOX (aplicación que dio
como resultado este trabajo de grado) es una aplicación que está orientada a la web que permite
centralizar la información en un servidor y acceder a esta desde cualquier computador a través de
un navegador web sin necesidad de realizar instalaciones adicionales. Cabe anotar que los
usuarios que acceden a la aplicación deben contar los permisos de seguridad necesarios.
SIBOX fue desarrollada utilizando la tecnología Java EE5 –Seam 2 (Sal09) que proporciona un
conjunto de frameworks de infraestructura Java para la construcción de aplicaciones
empresariales entre los cuales se encuentran log4j (Sam05), seguridad por roles (Mar111),
anotaciones, JavaServer Faces (Ken09), agendamiento de tareas por Quartz (Qua), generación de
códigos de barras y reportes en PDF por iText (Bru11), generación y envíos de correos electrónicos
por JavaMail (Ser) y un módulo dedicado a la persistencia de los datos de este tipo de aplicaciones
web.
Existen actividades adicionales que se realizaron para poder cumplir adecuadamente con el
15 (Rob02) de la compañía tomada como caso de estudio, el levantamiento de requerimientos, el
diseño de los casos de uso y el modelamiento de entidades.
Para la validación del producto final que va ser entregado al cliente se cuenta con la compañía
Distribuidora JJ, empresa que se dedica a realizar la selección de envases en buen estado, mal
estado y de reciclaje para diferentes plantas de producción en Colombia. Adicionalmente se
realizaran validaciones parciales con respecto a las herramientas tecnológicas utilizadas con la
ayuda de la directora de trabajo de grado, la ingeniera María Consuelo Franky.
En este documento se describe el proceso detallado de todo lo que fue utilizado para el desarrollo
del producto final y se describe el modo en que fueron utilizadas cada una de las herramientas y
las razones por las cuales fueron utilizadas. El producto principal lo constituye la aplicación
funcional la cual se anexa en un CD con sus respectivos manuales de usuario, instalación y
mantenimiento.
Por último se muestran las conclusiones que se obtuvieron durante el desarrollo de este trabajo
de grado y que pueden ser útiles para aquellas personas que tengan algún tipo de interés por este
tema. También se presentan posibles extensiones para nuevas versiones del sistema de
16
1.
OPORTUNIDAD, PROBLEMÁTICA, ANTECEDENTES
1.1.
D
ESCRIPCIÓN DEL CONTEXTOEl trabajo de grado “sistema de información para el ingreso, mantenimiento y salida de estibas” está orientado a las empresas que se dedican a clasificar las cajas en buen estado, mal estado y de reciclaje provenientes de las sucursales y distribuidoras de una planta de producción. Actualmente algunas de estas compañías no tienen recursos para solucionar problemas como pérdidas de la información, datos inconsistentes, problemas de comunicación entre las empresa remitentes y la compañía de estibas, deficiencia en auditoría, generación ineficiente de reportes, seguridad de la información y licenciamiento de programas de software.
1.2.
F
ORMULACIÓN DEL PROBLEMA QUE SE RESOLVIÓ¿Cómo puede una empresa dedicada al ingreso, mantenimiento y salida de estibas solucionar los problemas de pérdidas de información, datos inconsistentes, control y supervisión, seguridad de la información y auditoria en acciones de usuarios?
1.3.
J
USTIFICACIÓNEl trabajo de grado parte del interés de autores de la presente propuesta en el área de ingeniería de software, sistemas de información, programación en la web y desarrollo de aplicaciones empresariales. Además de la importancia de la sistematización de una empresa que requiere gran cantidad de almacenamiento para el ingreso, mantenimiento, y salidas de estibas.
Con el software libre que será producto del trabajo propuesto, las empresas podrán gozar de una herramienta que permite el ingreso de estibas, el mantenimiento de cada una de las cajas y la información resultante. Además de poder obtener reportes y datos históricos desde cualquier parte del mundo con conexión a internet.
1.4.
I
MPACTO ESPERADO18
2.
DESCRIPCIÓN DEL PROYECTO
2.1.
V
ISIÓN GLOBALEl motivo principal de la realización de este trabajo de grado es el de automatizar los procesos de ingreso, mantenimiento y salida de estibas. En el desarrollo de este trabajo de grado se realizó una aplicación de modo que los usuarios puedan ingresar información sobre los lotes provenientes de las empresas remitentes, realizar tareas de mantenimiento y almacenar las salidas de la bodega a la planta de producción. Posteriormente los usuarios pueden obtener reportes con la información de los lotes y las estibas que fueran registradas en el sistema.
2.2.
O
BJETIVO GENERALEl trabajo de grado tiene como objetivo desarrollar un sistema de información para el ingreso, mantenimiento y salidas de estibas, por medio de un software libre orientado a la web con el fin de garantizar una mejora en la toma decisiones y seguridad en la información de la empresa tomada como caso de estudio.
2.3.
O
BJETIVOS ESPECÍFICOSLos objetivos específicos del presente trabajo de grado son:
1. Realizar el modelamiento de los procesos actuales en la compañía tomada como caso de estudio (Diseño As-Is (Jak11)).
2. Realizar el modelamiento de los procesos esperados en la compañía tomada como caso de estudio (Diseño To-Be (Jak11)).
3. Realizar un análisis de las debilidades de la compañía tomada como caso de estudio con el fin de darle una solución con tecnologías de información.
4. Realizar el análisis y el diseño del sistema de información para el ingreso, mantenimiento y salida de estibas.
5. Realizar la construcción del sistema de información para el ingreso, mantenimiento y salida de estibas.
6. Realizar pruebas de caja negra al sistema de información para el ingreso, mantenimiento y salida de estibas.
19
2.4.
M
ÉTODO QUE SE PROPUSO PARA SATISFACER CADA OBJETIVOCada uno de los objetivos específicos mencionados en la sección anterior tiene enmarcadas las siguientes etapas, actividades y tareas bajo la metodología ágil de programación de software: programación extrema.
2.4.1.
P
ROGRAMACIÓN EXTREMALa programación extrema, XP por sus siglas en inglés (xtreme programming), es una metodología la cual propone un proceso de desarrollo de software ágil y a su vez disciplinado http://www.k-jahn.de/files/bibtex.xsl .
La metodología XP consiste básicamente en un proceso evolutivo el cual se basa en retroalimentar un sistema mediante una serie de iteraciones que ocurren a lo largo del tiempo de vida de desarrollo del producto. Existe una variedad de beneficios y ventajas que otorgan a XP un valor agregado sobre las demás metodologías:
Simplicidad: Se busca siempre encontrar el camino más ligero para el desarrollo en cada una de las iteraciones y si es necesario en un futuro agregar funcionalidad extra http://www.k-jahn.de/files/bibtex.xsl.
Programación en parejas: Consiste en que la tarea de desarrollo se lleve a cabo por dos personas en un mismo puesto, esto garantiza que se discuta cada una de las líneas de código que se escriban y de esta manera generar código de mayor calidad (Cao04).
Rápida corrección de errores: Debido a que la metodología se compone de pequeñas iteraciones es mucho más fácil corregir errores de cortos fragmentos de código a corregir grandes módulos desarrollados http://www.k-jahn.de/files/bibtex.xsl.
Frecuente retroalimentación por parte del cliente: Por lo general se muestra cada una de las iteraciones al cliente y este retroalimenta al equipo de trabajo informando los cambios que hayan que realizarse (Art02).
Este proyecto presenta las siguientes etapas basados en la metodología ágil XP:
2.4.2.
E
TAPA1:
M
ODELAMIENTO DE LOS PROCESOS DE NEGOCIO20 estudio. Estas actividades están sujetas a los objetivos específicos 1, 2 y 3 mencionados en la sección Objetivos específicos de este documento.
Las tareas que se realizaran en esta etapa son:
Realizar entrevistas y reuniones al administrador de la compañía tomada como caso de estudio.
Realizar el análisis del estado inicial de la compañía tomada como caso de estudio (Diseño As-Is (Jak11)).
Realizar el análisis del estado esperado en la compañía tomada como caso de estudio (Diseño To-Be (Jak11)).
Presentar el análisis al administrador de la compañía tomada como de estudio.
Realizar un análisis de las debilidades con el fin de darle una solución por medio de tecnologías de información.
2.4.3.
E
TAPA2:
A
NÁLISIS Y DISEÑO DEL SISTEMA DE INFORMACIÓN PARA EL INGRESO,
MANTENIMIENTO Y SALIDA DE ESTIBAS
En esta etapa del trabajo de grado se realizaran las actividades de análisis y diseño del sistema de información SIBOX. Estas actividades están sujetas al objetivo específico 4 mencionado en la sección Objetivos específicos de este documento.
Las tareas que se realizaran en esta etapa son:
Realizar el levantamiento de requerimientos.
Realizar el registro de los requerimientos en la plantilla hacer – usos. Realizar el inventario de módulos y casos de uso.
Realizar el modelamiento de las entidades.
2.4.4.
E
TAPA3:
C
ONSTRUCCIÓN Y PRUEBAS AL SISTEMA DE INFORMACIÓN PARA EL INGRESO,
MANTENIMIENTO Y SALIDA DE ESTIBAS
En esta etapa del trabajo de grado se realizaran las actividades de construcción y pruebas de caja negra del sistema de información SIBOX. Estas actividades están sujetas a los objetivos específicos 5 y 6 mencionados en la sección Objetivos específicos de este documento.
21 Realizar una investigación de herramientas tecnologías necesarias para el desarrollo del
producto final.
Realizar la construcción del sistema de información en tecnología JavaEE5 – Seam 2. Realizar pruebas de caja negra al sistema de información SIBOX.
2.4.5.
V
ALIDACIÓN DEL CLIENTEEn esta etapa del trabajo de grado se realizan las actividades de validación del sistema de información para el ingreso, mantenimiento y salida de estibas SIBOX. Estas actividades están sujetas al objetivo específico 7 mencionado en la sección Objetivos específicos de este documento.
Las tareas que se realizaran en esta etapa son:
22
3.
MARCO TEÓRICO
3.1.
M
ARCOC
ONTEXTUALA continuación se describen los procesos de negocio:
3.1.1.
P
ROCESOS DEL NEGOCIOA.
P
ROCESO DE INGRESO DE ESTIBASEl objetivo de este proceso es registrar el ingreso de los lotes (camiones) y las estibas (hileras de cajas) a la compañía de estibas.
Este procedimiento inicia con el envío de un lote y sus estibas por parte del despachador de una empresa remitente (empresa que trabaja para la compañía de estibas y puede ser sucursal, distribuidora local o distribuidora foránea) y la recepción del mismo por parte del operario de la compañía de estibas. El proceso finaliza con la creación de una tarea de mantenimiento para cada estiba. A continuación se presenta una foto de la compañía tomado caso de estudio en el proceso de ingreso de estibas:
Ilustración 1: Foto 1 - Proceso de ingreso de estibas
El diseño As-Is y To-Be del proceso de ingreso de estibas se encuentra en la sección Modelamiento de procesos de negocio de este documento.
B.
P
ROCESO DE MANTENIMIENTO DE ESTIBASEl objetivo de este proceso es registrar el número de cajas reportadas como buenas, en reparación y de reciclaje que contiene cada una de las estibas.
Lote
23 Este procedimiento inicia con la finalización del proceso de ingreso de estibas y finaliza con la validación de la información suministrada por un empleado de mantenimiento por parte del coordinador de estibas.
A continuación se muestra una foto de la compañía tomada como caso de estudio en el proceso de mantenimiento de estibas:
Ilustración 2: Foto 2 - Proceso de mantenimiento de estibas
El diseño As-Is y To-Be del proceso de mantenimiento de estibas se encuentra en la sección Modelamiento de procesos de negocio de este documento.
C.
P
ROCESO DE SALIDA DE ESTIBASEl objetivo de este proceso es registrar la salida de los paquetes de la compañía a la planta de producción.
Este procedimiento inicia con la finalización del proceso de mantenimiento de estibas y finaliza con la entrega de una cantidad de paquetes en la planta de producción.
A continuación se muestra una foto de la compañía tomada como caso de estudio en el proceso de salida de estibas:
Estiba seleccionada
24 Ilustración 3: Foto 3 - Proceso de salida de estibas
El diseño As-Is y To-Be del proceso de salida de estibas se encuentra en la sección Modelamiento de procesos de negocio de este documento.
3.2.
M
ARCO CONCEPTUAL3.2.1.
A
PLICACIONES EMPRESARIALES WEBA continuación se explican los conceptos relevantes del proyecto de grado sobre las aplicaciones empresariales web como: protocolo HTTP, cliente web, servidor web, servidores de aplicaciones, y tecnologías que utilizan servidores de aplicaciones como Java EE y .NET.
A.
A
PLICACIÓN WEBUna aplicación web es un tipo especial de aplicación cliente/servidor, donde tanto el cliente (el navegador, explorador o visualizador) como el servidor (el servidor web) y el protocolo mediante el que se comunican (HTTP) están estandarizados y no han de ser creados por el programador de aplicaciones (Ser02).
El protocolo HTTP forma parte de la familia de protocolos de comunicaciones TCP/IP, que son empleados en Internet. Estos protocolos permiten la conexión de sistemas heterogéneos, lo que facilita el intercambio de información entre distintos ordenadores. HTTP se sitúa en el nivel 7 del modelo OSI (Ser02).
El cliente web es un programa con el que interacciona el usuario para solicitar a un servidor web el envío de los recursos que desea obtener mediante HTTP. La parte cliente de las aplicaciones web
Resultados de las tareas de
25 suele estar formada por el código HTML que forma la página web más algo de código ejecutable en lenguaje de script del navegador. El servidor web es un programa que está esperando permanentemente las solicitudes de conexión mediante el protocolo HTTP por parte de los clientes web (Ser02). Los mensajes más comunes entre los clientes y los servidores web son GET, que se usa para obtener páginas del servidor identificado por el URL; HEAD, para conseguir información sólo del encabezamiento: título, descripción, relación con otros documentos del nodo y el URL del documento; y POST, que le señala a un servidor que debe tomar nota de un recurso existente, enviar un mensaje enviar un formulario de datos para su procesamiento, o añadir información a una base datos http://www.k-jahn.de/files/bibtex.xsl.
B.
S
ERVIDORES WEB YS
ERVIDORES DE APLICACIONESLa típica interacción entre un cliente y un servidor en una aplicación web, es que el cliente solicite, a través del URL, una página inicial. En tal página el usuario invoca alguna opción, originando un requerimiento por una nueva página al servidor. Esta se genera en el servidor (implementando alguna lógica que produce los resultados que pide el cliente y la presentación) y se envía al cliente, el cual despliega al usuario (Esta versión es conocida como servicio web) http://www.k-jahn.de/files/bibtex.xsl.
En casos donde se requiere procesar transacciones de venta de productos o servicios (registro de lotes, registro de estibas, generación de tareas de mantenimiento y códigos de barra, registro de salidas de paquetes de bodega) y hay que implementar una lógica compleja de negocio, se requiere un servidor que complemente o reemplace a un servidor web, denominado servidor de aplicaciones http://www.k-jahn.de/files/bibtex.xsl.
Un servidor de aplicaciones sirve como plataforma para desarrollar e implementar servicios web y Enterprise Java Beans (EJBs), y como un motor de transacciones y de mensajería al tiempo que ofrece la lógica de negocio para los usuarios finales (IBM09).
En el mercado existen cuatro servidores de aplicaciones conocidos:
Oracle Glassfish Server: Oracle Glassfish Server es un servidor de aplicaciones de código
26 (contenedor web), el cual permite: trabajar con tecnologías como Enterprise JavaBeans (EJB), Java Persistence API (JPA), Java Message Service (JMS), entre otras (Ora10).
Oracle WebLogic Server: Oracle WebLogic Server es un servidor de aplicaciones no
gratuito construido por Oracle, el cual soporta el despliegue de diferentes tipos de aplicaciones distribuidas (basados en la construcción de aplicaciones basadas en SOA) (Ora11).
IBM Webshere: WebSphere es un servidor de aplicaciones no gratuito y creado por IBM
que ejecuta aplicaciones empresariales y soporta los estándar de J2EE y servicios web (Tim03).
Jboss Red Hat: Jboss Application Server (Jboss AS) es un servidor de aplicaciones para
Java Enterprise Edition (Java EE5). Este servidor estandariza la arquitectura del desarrollo de las aplicaciones mediante la definición de varios modelos de componentes (JavaBeans, Java Server Faces, Java Server Pages, Servlets, entre otros) e implementados por un modelo estándar. Cuando los componentes están ejecutándose en el servidor, este provee un conjunto de servicios que están a disposición de los componentes (Jam09).
Entre las características que tiene un servidor de aplicaciones, las cuáles fueron relevantes en la toma de decisión de la tecnología a utilizar, se encuentran:
La inclusión de un middleware que facilita la comunicación entre varios servicios.
Soporte a diferentes estándares como HTML, XHMTL y XML permitiendo el funcionamiento en ambientes web.
Alta disponibilidad de sus aplicaciones, además garantiza seguridad y confiabilidad de las mismas.
Brinda escalabilidad y mantenibilidad en tal caso de que la carga de trabajo incremente. Brinda un módulo de autenticación y autorización (JAAS) por medio de roles, identity, y
permisos sobre métodos EJB http://www.k-jahn.de/files/bibtex.xsl.
Brinda un módulo de administración de transacciones cumpliendo con las propiedades ACID http://www.k-jahn.de/files/bibtex.xsl.
Provee un módulo estándar de Entity Beans por medio de Hibernate http://www.k-jahn.de/files/bibtex.xsl.
27
C.
T
ECNOLOGÍAS QUE UTILIZAN SERVIDOR DE APLICACIONES Las siguientes tecnologías usan un servidor de aplicaciones son:.NET
Microsoft .NET es una plataforma de lenguaje abierto para la construcción de aplicaciones empresariales y desarrollo web. El objetivo es proporcionar una maquina abstracta para los desarrolladores profesionales que abarcan aplicaciones tradicionales cliente servidor, aplicaciones n-capas y aplicaciones orientadas a la web (Mey01). Esta plataforma integra múltiples tecnologías que han ido apareciendo en los últimos años como ASP.NET, ADO.NET, LINQ, WPF, Silverlight, entre otros (Jor10).
.NET permite desarrollar múltiples tipos de aplicaciones como líneas de comandos, servicios de Windows, aplicaciones de escritorio, aplicaciones web, aplicaciones distribuidas SOA, y aplicaciones para dispositivos móviles (Jor10). Esta plataforma tiene un papel central en la estrategia de Microsoft para integrar el internet y numerosas herramientas para desarrolladores como servicios web, seguridad, modelo de componentes (COM), entre otros (Mey01).
Las principales ventajas de .NET son el fácil desarrollo de aplicaciones, la mejora de infraestructura de componentes, el soporte de múltiples lenguajes y el despleguésencillo e aplicaciones (Jor10).
JAVAEE
SIBOX fue desarrollado en Java EE5 por la facilidad que nos brindó el framework SEAM2, el cuál no está disponible para JavaEE6.
28 Java EE está diseñado para soportar aplicaciones que implementan servicios de la empresa para los clientes, empleados, proveedores, socios y otros que hacen demandas o contribuciones. Este modelo define una arquitectura para la implementación de servicios que ofrecen escalabilidad, accesibilidad, y facilidad de gestión que son necesarias en las aplicaciones empresariales (Jen06) .
Esta tecnología ofrece los siguientes APIs:
Java Persistence API (JPA): Este servicio ofrece una API estándar de mapeo objeto-relacional (ORM) (Ant10).
JavaMail: Este servicio ofrece una API que permite el envió de correos electrónicos (Ant10).
Enterprise JavaBeans (EJB): un componente EJB es un cuerpo de código que tiene campos y métodos para implementar módulos de lógica de negocios (Jen06). Hay tres tipos de EJB: EJB de entidades, EJB de sesión y EJB de mensajería. Un EJB de entidad es una entidad JPA en Java EE5. Un EJB de sesión representa una conversación transitoria con el cliente, y un EJB de mensajería combina características de un EJB de sesión y un oyente de mensajes (Jen06).
JavaServer Faces (JSF): JSF es el estándar oficial en la capa web para la plataforma Java EE que incluye un conjunto de componentes predefinidos para la interfaz gráfica (UI), un modelo de programación basado en eventos y la habilidad para añadir componentes desarrollados por terceros (EdB10).
Java Database Conectivity API (JDBC): Esta API permite invocar comandos SQL desde los métodos de programación en lenguaje java (Jen06).
Java Authentication and Authorization Service (JAAS): Este servicio proporciona una autenticación y autorización a un usuario o grupo de usuarios dentro de la aplicación java EE (Jen06).
iText: iText es el líder mundial de creación y manipulación de archivos PDF. Esta librería ha sido publicada bajo la licencia pública general de affero (AGPL) y está disponible en dos versiones: java y C# (Bru11).
29 Seam 2.2 : Seam es un framework de aplicaciones java EE que permite: definir un modelo de componentes uniforme para toda la lógica de la aplicación, integrar las páginas JavaServer Faces (JSF) con EJB3.0, integrar las páginas JavaServer Faces (JSF) con AJAX por medio de JBoss RichFaces, entre otros http://www.k-jahn.de/files/bibtex.xsl.
JBoss EL: Seam utiliza JBoss EL, la cual que proporciona una extensión al lenguaje de expresión unificada estándar (EL) http://www.k-jahn.de/files/bibtex.xsl.
JBoss RichFaces: RichFaces es un framework de código abierto que añade capacidades AJAX en aplicaciones JSF existentes sin recurrir a JavaScript (JBo13).
D.
C
OMPARACIÓN ENTRE TECNOLOGÍAS PARA EL DESARROLLO WEB CON SERVIDOR DE APLICACIONES Hoy en día existe una variedad de plataformas de desarrollo de aplicaciones empresariales. Dentro de este grupo existen dos que se encuentran a la vanguardia y son las más populares: JavaEE y NET.Java es un lenguaje de programación orientado a objetos, que además incluye una máquina virtual, y una serie de desarrollos básicos que pueden ser empleados por los programadores para simplificar sus nuevos desarrollos; además permite la inclusión de porciones de código ejecutables en las páginas que se pueden publicar en internet a través de WWW Fuente especificada no válida..
Desde la aparición de Java, Microsoft ha querido ser su competencia, para ello inicialmente firmo
algunos convenios con Sun Microsystems, para trabajar con Java igual que lo estaban haciendo IBM y Oracle, pero en realidad trato de crear su versión propia de este lenguaje denominado J++, la cual no era completamente compatible con la versión estándar Fuente especificada no válida..
.NET es una plataforma, o un conjunto de lenguajes de programación todos ellos orientados a objetos donde se puede citar a C# .NET, C++ .NET y VisualBasic .NET; más el API de acceso a la base de datos ADO.NET. Las herramientas para el desarrollo de aplicaciones empresariales en internet, ASP.NET y el conjunto de facilidades para construir servicios web están integradas dentro de un entorno completo llamado VisualStudio.NET Fuente especificada no válida..
A continuación se presenta un cuadro comparativo entre estas dos tecnologías (Mig04):
30
Plataforma Multiplataforma Solo Windows
Lenguajes de Programación Java VB, C#, C++, C, entre otros.
Estrategia de construcción de
aplicaciones Capas Capas
Acceso a Datos JDBC ADO.Net
Máquina virtual JVM CLR
Tecnología de páginas web dinámicas
JavaServerFaces (JSF),
JavaServerPages (JSP) ASP.Net
[image:30.612.110.556.83.270.2]Interprete JRE CLR
Tabla 1: Comparación entre JavaEE y .NET (Mig04)
De acuerdo a este cuadro es visible que tanto una tecnología como la otra cubren con satisfacción cada uno de los puntos necesarios en cuanto a la construcción de aplicaciones web; sin embargo para el desarrollo de este trabajo de grado se eligió de JavaEE por diferentes motivos. Uno de ellos es el lenguaje de programación, debido a que el equipo de trabajo posee un mayor conocimiento en el lenguaje java en comparación con los lenguajes soportados por .NET; otro motivo es la independencia del sistema operativo y el hecho de ser software libre ya que por su lado .NET está ligado a plataformas Windows y se necesita de la compra de licencias para trabajar con este; y como tercer motivo el uso del módulo de seguridad de CincoSecurity y el framework de Seam 2 http://www.k-jahn.de/files/bibtex.xsl los cuales fueron diseñados únicamente para funcionar con JavaEE5.
3.2.2.
S
EGURIDAD DE LA INFORMACIÓNA.
D
ESCRIPCIÓNLa seguridad de los sistemas de información es una disciplina en continua evolución. La meta final de la seguridad es permitir que una organización cumpla con todos sus objetivos de negocio o misión, implementando sistemas que tengan un especial cuidado y consideración hacia los riesgos relativos a las TIC de la organización, a sus socios comerciales, clientes, administración pública, suministradores, entre otros (Jav08).
31 Disponibilidad y accesibilidad del sistema y los datos: Es un requisito necesario para
garantizar que el sistema trabaje puntualmente, con prontitud y que no se deniegue el servicio a ningún usuario autorizado (Jav08).
Integridad: Se encarga de garantizar que la información del sistema no haya sido alterada
por usuarios no autorizados, evitando la perdida de consistencia. Presenta dos facetas (Jav08):
o Integridad de datos: Es la propiedad de que los datos no hayan sido alterados de forma no autorizada, mientras se almacenan, procesan o transmiten (Jav08).
o Integridad del sistema: Es la cualidad que posee un sistema cuando realiza la función deseada, de manera no deteriorada y libre de manipulación no autorizada (Jav08).
Confidencialidad de datos y de la información del sistema: Es el requisito que intenta que
la información privada o secreta no se revele a individuos no autorizados. La protección de la confidencialidad se aplica a los datos almacenados durante su procesamiento, mientras que se transmiten y se encuentran en tránsito (Jav08).
Responsabilidad a nivel individual (Registro de auditoría): Es el requisito que permite que
puedan trazarse las acciones de una entidad de forma única. A menudo, es un requisito de la política de la organización y soporta de forma directa el no repudio, la disuasión, el aislamiento de fallos, la detección y la prevención de intrusiones, entre otros (Jav08). Confiabilidad: Es la garantía que en los cuatro objetivos anteriores se han cumplido
32
4.
DESARROLLO DEL TRABAJO
A continuación se explican las estrategias utilizadas para el cumplimiento de los objetivos específicos de este trabajo de grado:
Contexto de la compañía tomada como caso de estudio: En esta sección se describe la
compañía tomada como caso de estudio y sus procesos de negocio.
Modelamiento de los procesos de negocio: En esta sección se desarrolla el modelamiento
de los procesos de ingreso, mantenimiento y salida de estibas por medio de la suite de BPM (Ber12) Oracle 11g. Para esto se realizará el diseño As-Is y el diseño To-Be con el fin de encontrar las debilidades y las posibles soluciones por medio de tecnologías de información de la compañía tomada como caso de estudio.
Análisis y diseño de sistema de información para el ingreso, mantenimiento y salida de
estibas: Basados en las observaciones del modelamiento de los procesos de ingreso,
mantenimiento y salida de estibas se decidió realizar un sistema de información en tecnología Java EE5 – SEAM2 por la experiencia que tienen los autores del presente trabajo de grado en esta área. En esta sección se realizaron los procesos de levantamiento de requerimientos, inventario de módulos y casos de uso y modelamiento de entidades. Construcción y pruebas del sistema de información: Basados en el análisis y diseño del
sistema de información para el ingreso, mantenimiento y salida de estibas se realizó la construcción y pruebas del sistema de información para el ingreso, mantenimiento y salida de estibas SIBOX en tecnología Java EE5 – SEAM2.
Validación por parte del cliente: Basados en la construcción del sistema de información
33
4.1.
D
ESCRIPCIÓN DE LA COMPAÑÍA TOMADA COMO CASO DE ESTUDIOLa compañía tomada como caso de estudio “Distribuidora JJ” está ubicada en la carrera 5 #99-81, Ibagué – Tolima. Esta empresa es la encargada de realizar el proceso de selección de productos como cartón, acero, aluminio, cobre rojo, entre otros. Actualmente la organización brinda el proceso de ingreso, mantenimiento y salida de estos productos a plantas de producción en diferentes ciudades de Colombia.
4.2.
M
ODELAMIENTO DE PROCESOS DE NEGOCIOA continuación se muestra el diseño As-Is y To-Be (Jak11) de los procesos de ingreso, mantenimiento y salida de estibas.
4.2.1.
D
ISEÑOA
S-I
S DE LA EMPRESA TOMADA COMO CASO DE ESTUDIOA.
O
RGANIZACIÓNLos roles que están involucrados en el modelamiento de los procesos de ingreso, mantenimiento y salida de estibas son:
Ilustración 4: Diseño As-Is: Organización y roles
B.
D
ESCRIPCIÓN DE LOS ROLESA continuación se explica detalladamente la funcionalidad de cada rol dentro de la organización:
ROL DESCRIPCIÓN
Gerente
Represente de la compañía de estibas y encargado de tomar decisiones con respecto a toda la organización.
Gerente
Administrador de estibas
Coordinador de estibas
Empleado de mantenimiento
Operario de estibas
Contador Relacionista
34 Administrador de estibas
Encargado de tomar decisiones con respecto a los procesos de negocio y empleados de la compañía de estibas.
Contador Encargado de llevar un registro de salidas y nóminas de la compañía de estibas.
Relacionista
Encargado de llevar un registro de los despachadores de las empresas remitentes y conductores.
Coordinador de estibas
Encargado de validar la información suministrada por el empleado de mantenimiento.
Operario de estibas Encargado de registrar las llegadas de los lotes y estibas a la bodega de la compañía de estibas.
Despachador del remitente Encargado de enviar los lotes a la bodega de la compañía de estibas.
Empleado de mantenimiento Encargado de realizar la selección de las cajas de una estiba en la compañía de estibas.
Conductor
[image:34.612.109.557.72.504.2]Encargado de transportar los lotes desde la empresa remitente hasta la bodega de la compañía de estibas.
Tabla 2: Diseño As-Is - Descripción de los roles
C.
F
LUJO DE SECUENCIA DE LOS PROCESOS DE NEGOCIOLos procesos de ingreso, mantenimiento y salida de estibas son dependientes entre ellos, es decir, el proceso de mantenimiento de estibas inicia cuando finaliza el proceso de ingreso de estibas y el proceso de salida de estibas inicia cuando finaliza el proceso de mantenimiento de estibas.
D.
C
ONCEPTOS RELEVANTES DE LOS PROCESOS DE NEGOCIOLos conceptos relevantes de los procesos de ingreso, mantenimiento y salida de estibas son:
PROCESO CONCEPTO DEFINICIÓN
35 de un lote a la bodega de la compañía de estibas. Esta empresa puede ser sucursal, distribuidora local o distribuidora foránea.
Sucursal
Empresa que lleva el nombre de la ciudad en la que se encuentra y tiene dentro de sus instalaciones una planta de producción.
Distribuidora Foránea
Empresa que se encuentra fuera de la ciudad de Bogotá y no tiene dentro de sus instalaciones una planta de producción.
Distribuidora Local
Empresa que se encuentra dentro de la ciudad de Bogotá y no tiene dentro de sus instalaciones una planta de producción.
Lote
Vehículo por el cual se transporta una cantidad de estibas.
Estiba Hilera de 1 a 500 cajas.
Tarea de mantenimiento Creación de una tarea de selección de cajas.
Stickers
36 Mantenimiento de estibas
Cajas en buen estado
Cajas que no tienen defectos y pueden servir como envase de los productos.
Cajas en mal estado
Cajas que tienen defectos y no sirven como envase de los productos. Estos defectos son llamados motivos del rechazo.
Paquete Hilera de 25 cajas de un color específico.
Color del paquete
Color representativo del paquete. Cada color representa una serie de productos que pueden ser llevados según su dimensión y peso.
Motivo del rechazo
Motivo por el cual, el empleado de mantenimiento selecciono una caja en mal estado. Estos motivos de rechazo pueden ser mariposas muertas dentro de la caja, pisones, vidrios, excremento de animales, desgaste, entre otros.
Salida de estibas Planta de producción
[image:36.612.111.564.81.607.2]Planta que contrata a la compañía de estibas para realizar la selección de las cajas.
Tabla 3: Conceptos relevantes de los procesos de negocio
37
E.
P
ROCESO DEI
NGRESO DE ESTIBASEl resultado del diseño As-Is del proceso de ingreso de estibas es:
Ilustración 5: Diseño As-Is - Proceso de Ingreso de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
ROL ACTIVIDAD TIPO DE
ACTIVIDAD DESCRIPCIÓN
Despachador del remitente
Realizar él envió del lote a la bodega de la compañía de estibas.
Tarea manual
38 Esta actividad genera un documento con la información del envió del lote explicado en el
Anexo 1:
Documentos del modelamiento de procesos.
Conductor
Transporta las estibas hasta la bodega de la compañía de estibas.
Tarea manual
El conductor del lote transporta las estibas desde la empresa remitente hasta la bodega de la compañía.
Operario de estibas
Registra la información
del envió del lote. Tarea de usuario
El operario de estibas registra la información del lote y estibas.
Genera las tareas de mantenimiento y stickers por cada estiba
Tarea de servicio
El sistema genera las
tareas de
mantenimiento y stickers por cada estiba.
Crea un recibo con información de llegada del lote.
Tarea manual
39 explicado en el
Anexo 1:
[image:39.612.115.576.296.521.2]Documentos del modelamiento de procesos.
Tabla 4: Diseño As-Is: Roles y Actividades del proceso de ingreso de estibas
Las posibles mejoras del proceso de ingreso de estibas están contenidas en la sección Debilidades del sistema actual de la compañía de estibas de este documento.
F.
P
ROCESO DE MANTENIMIENTO DE ESTIBASEl resultado del diseño As-Is del proceso de mantenimiento de estibas es:
Ilustración 6: Diseño As-Is - Proceso de mantenimiento de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
ROL ACTIVIDAD TIPO DE
ACTIVIDAD DESCRIPCIÓN
Empleado de mantenimiento
Realizar la selección
de cajas Tarea manual
40 de una estiba.
Registra la información de la
tarea de
mantenimiento
Tarea manual
El empleado de mantenimiento debe registrar la información de la selección de las cajas.
Esta actividad genera un documento explicado en el Anexo 1: Documentos del modelamiento de procesos
Crea la tarea de mantenimiento y la asocia al empleado de mantenimiento
Tarea de servicio
El sistema crea una
tarea de
mantenimiento y la asocia al empleado que la realizó.
Coordinador de estibas
Valida la información
suministrada Tarea manual
El coordinador de estibas valida la información
suministrada por el empleado de mantenimiento.
Elimina la tarea de
mantenimiento. Tarea de servicio
El sistema elimina la
tarea de
41 mantenimiento no coloco validación verídica.
Tabla 5: Diseño As-Is - Roles y Actividades del proceso de mantenimiento de estibas
Las posibles mejoras del proceso de mantenimiento de estibas están contenidas en la sección Debilidades del sistema actual de la compañía de estibas de este documento.
G.
P
ROCESO DE SALIDA DE ESTIBASEl resultado del diseño As-Is del proceso de salida de estibas es:
Ilustración 7: Diseño As-Is - Proceso de salida de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
ROL ACTIVIDAD TIPO DE
ACTIVIDAD DESCRIPCIÓN
Operario de estibas
Recibe la solicitud de una cantidad de paquetes
Tarea manual
42 paquetes que solicitan.
Esta actividad genera un documento explicado en el Anexo 1: Documentos del modelamiento de procesos
Valida la existencia de
los paquetes Tarea manual
El operario de estibas valida que exista la cantidad de paquetes solicitada por la planta de producción.
Contador
Agrega información de la solicitud al sistema contable
Tarea manual
[image:42.612.110.561.78.481.2]El contador debe ingresar la información entregada por el operario de estibas sobre la salida de la bodega de una cantidad de paquetes.
Tabla 6: Diseño As-Is - Roles y Actividades del proceso de salida de estibas
Las posibles mejoras del proceso de mantenimiento de estibas están contenidas en la sección Debilidades del sistema actual de la compañía de estibas de este documento.
H.
D
EBILIDADES DEL SISTEMA ACTUAL DE LA COMPAÑÍA DE ESTIBASLas debilidades del sistema actual de la compañía tomada como caso de estudios son:
Con respecto a la accesibilidad e integridad:
- No existe un nombre de usuario y contraseña para cada usuario del sistema.
- Cualquier persona puede ingresar al sistema sin pertenecer a la compañía de estibas y se encuentre dentro de la bodega.
Con respecto al registro de auditoría:
- No hay auditoría de datos por parte de los usuarios del sistema.
43 - En la actualidad, la compañía tiene 2 sistemas diferentes que no comparten recursos ni información. El sistema de ingreso y salida de estibas y el sistema de mantenimiento de estibas.
- Los sistemas no comparten información ni recursos por lo que es muy costoso mantenerlo. - La lógica de negocio esta mezclada con las interfaces gráficas por lo que es muy costoso
mantenerlo.
- Toca realizar dos back-ups sobre cada una de las bases de datos por lo que es muy costosa mantenerlas.
Con respecto a la portabilidad:
- Actualmente cuentan con un sistema de información creado en Microsoft Access, pero la empresa no tiene licenciamiento de software.
Con respecto a la disponibilidad:
- Se deben utilizar los computadores de la compañía para ingresar al sistema.
Con respecto a la confidencialidad
- Las empresas remitentes no tienen acceso a la información suministrada por los despachadores y obtenida por los operarios de estibas.
El análisis de las debilidades para darle una solución por medio de tecnologías de la información se encuentra en la sección Análisis de las soluciones de las debilidades de este documento.
4.2.2.
D
ISEÑOT
O-B
E DE LA EMPRESA TOMADA COMO CASO DE ESTUDIOBasados en la sección Debilidades del sistema actual de la compañía de estibas se realizó el siguiente diseño To-Be (Jak11) de la compañía tomada como caso de estudio:
A.
O
RGANIZACIÓN44 Ilustración 8: Diseño To-Be - Organización de los roles
B.
D
ESCRIPCIÓN DE LOS ROLESSe mantienen las funcionalidades de los empleados de la compañía de estibas, despachadores de las empresas remitentes y conductores. El administrador de estibas es el encargado de gestionar la creación de los usuarios dentro del sistema y el administrador de seguridad es el encargado de gestionar la seguridad de la aplicación y de mantenerla con respecto a los cambios de los procesos de negocio.
C.
F
LUJO DE SECUENCIA DE LOS PROCESOS DE NEGOCIOEl flujo de secuencia de los procesos de negocio no presento alteraciones con respecto al explicado en el diseño As-Is.
D.
C
ONCEPTOS RELEVANTES DE LOS PROCESO DE NEGOCIOLos conceptos relevantes de los procesos de negocio no presentaron alteraciones con respecto al explicado en el diseño As-Is.
E.
P
ROCESO DE INGRESO DE ESTIBASEl proceso de ingreso de estibas solo presento alteraciones con respecto al diagrama de modelamiento de procesos de negocio con respecto al diseño As-Is, explicado a continuación:
Gerente
Administrador de estibas
Coordinador de estibas
Empleado de mantenimiento
Operario de estibas
Despachador
del remitente Conductor Contador Administrador
45 Ilustración 9: Diseño To-Be - Proceso de ingreso de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
ROL ACTIVIDAD TIPO DE
ACTIVIDAD DESCRIPCIÓN
Despachador del remitente
Registra información
del envió del lote. Tarea de usuario
El despachador del remitente genera un nuevo envió de un lote por medio del sistema SIBOX.
Genera recibo de
envió del lote. Tarea de servicio
El sistema SIBOX genera un documento con información de envió del lote explicado en el Anexo 1: Documentos del modelamiento de procesos.
46 protegido sus documentos generados por medio de una contraseña.
Conductor
Transporta las estibas hasta la bodega de la compañía de estibas
Tarea manual
El conductor transporta por medio del lote una cantidad de estibas desde la empresa remitente hasta la bodega de la compañía de estibas.
Operario de estibas
Actualiza información
de llegada del lote Tarea de usuario
El sistema SIBOX le permite al operario de estibas actualizar la cantidad de estibas que llegan a la bodega y la cantidad de cajas por estiba.
Genera cambios en el registro de envió del lote.
Tarea de servicio
El sistema SIBOX realiza la actualización de la información suministrada por el despachador del remitente y el operario de estibas.
Crea una tarea de mantenimiento y genera stickers
Tarea de servicio
47 Genera recibo de
llegada del lote. Tarea de servicio
El sistema SIBOX genera un documento con información de llegada del lote explicado en el Anexo 1: Documentos del modelamiento de procesos.
[image:47.612.110.558.94.422.2]Los documentos de la compañía de estibas están protegidos con una contraseña.
Tabla 7: Diseño To-Be: Roles y Actividades del proceso de ingreso de estibas
F.
P
ROCESO DE MANTENIMIENTO DE ESTIBASEl proceso de mantenimiento de estibas solo presento alteraciones con respecto al diagrama de modelamiento de procesos de negocio con respecto al diseño As-Is, explicado a continuación:
Ilustración 10: Diseño To-Be - Proceso de mantenimiento de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
48 ACTIVIDAD
Empleado de mantenimiento
Realiza la selección de
cajas Tarea manual
El empleado de mantenimiento debe seleccionar cada una de las cajas de una estiba.
Registra información de la tarea de mantenimiento.
Tarea de usuario
El sistema SIBOX permite actualizar la información de una
tarea de
mantenimiento por parte de los empleados de mantenimiento.
Coordinador de estibas
Valida la información
suministrada Tarea de usuario
El sistema SIBOX le permite al coordinador validar la información suministrada por el empleado de mantenimiento.
Actualiza la tarea de mantenimiento en el empleado de mantenimiento.
Tarea de servicio
El sistema SIBOX actualiza la información
[image:48.612.110.561.81.671.2]suministrada por el empleado de mantenimiento y le permite obtener los datos sobre la cantidad de paquetes que ha seleccionado durante un rango de fechas.
49
G.
P
ROCESO DE SALIDA DE ESTIBASEl proceso de salida de estibas solo presento alteraciones con respecto al diagrama de modelamiento de procesos de negocio con respecto al diseño As-Is, explicado a continuación:
Ilustración 11: Diseño To-Be - Proceso de salida de estibas
La especificación de las actividades que deben realizar los roles involucrados en este proceso son:
ROL ACTIVIDAD TIPO DE
ACTIVIDAD DESCRIPCIÓN
Operario de estibas
Recibe la solicitud de
cantidad de paquetes Tarea manual
El operario de estibas recibe la solicitud de la cantidad de paquetes.
Registra la salida de la cantidad de paquetes de la bodega
Tarea de usuario
El sistema SIBOX genera una salida de paquetes de la bodega.
Valida existencia de
paquetes Tarea de servicio
El sistema SIBOX valida la cantidad solicitada versus la cantidad existente.
Disminuye la cantidad de paquetes de un color de la bodega.
Tarea de servicio
50 Genera recibo de
salida de la bodega Tarea de servicio
[image:50.612.108.563.79.183.2]El sistema SIBOX genera un recibo con información de la salida de los paquetes de la bodega.
Tabla 9: Diseño To-Be - Roles y Actividades del proceso de salida de estibas
H.
A
NÁLISIS DE LAS DEBILIDADESPara cada una de las debilidades encontradas en la empresa en el diseño As-Is (Sección Debilidades del sistema actual de la compañía de estibas) tomada como caso de estudio se realizó el siguiente análisis:
DEBILIDAD SOLUCIÓN
Con respecto a la accesibilidad e integridad
No existe un nombre de usuario y contraseña para cada usuario del sistema.
Se solucionará por medio del módulo de seguridad CincoSecurity (Fra09), el cual permite proteger los componentes UI de las páginas, las páginas y los EJB por medio de un usuario y contraseña.
Cualquier persona puede ingresar al sistema sin pertenecer a la compañía de estibas y se encuentre dentro de la bodega
Con respecto al registro de auditoría
No hay auditoría de datos por parte de los usuarios del sistema.
Se solucionará por medio del módulo de auditoría, el cual permite conocer qué tipo de alteración fue realizada sobre la base de datos por un usuario dentro del sistema.
Con respecto a la mantenibilidad
En la actualidad, la compañía tiene 2 sistemas diferentes que no comparten recursos ni información. El sistema de ingreso y salida de estibas y el sistema de mantenimiento de estibas.
El sistema de información para el ingreso, mantenimiento y salida de estibas contendrá dentro de sí mismo los procesos de ingreso, mantenimiento y salida de estibas. Este sistema de información está construido en tecnología Java EE5 por lo que usa el meta patrón MVC (Ian05); igualmente se hará uso de un solo motor de base de datos: PostgreSQL (aunque la Los sistemas no comparten información ni
recursos por lo que es muy costoso mantenerlo
51 interfaces gráficas por lo que es muy costoso
mantenerlo.
misma tecnología no es dependiente del motor de base de datos).
Toca realizar dos back-ups sobre cada una de las bases de datos por lo que es muy costosa mantenerlas.
Con respecto a la portabilidad
Actualmente cuentan con un sistema de información creado en Microsoft Access, pero la empresa no tiene licenciamiento de software.
El sistema de información para el ingreso, mantenimiento y salida de estibas esta realizado en tecnología JAVA (código libre).
Con respecto a la disponibilidad
Se deben utilizar los computadores de la compañía para ingresar al sistema.
El sistema de información para el ingreso, mantenimiento y salida de estibas puede ser desplegado en un servidor de aplicaciones contenido en un servidor en la nube y accedido desde cualquier equipo conectado a internet.
Con respecto a la confidencialidad
Las empresas remitentes no tienen acceso a la información suministrada por los despachadores y obtenida por los operarios de estibas.
[image:51.612.106.556.81.575.2]El sistema de información para el ingreso, mantenimiento y salida de estibas tiene dentro de sus roles finos un despachador del remitente, el cual podrá acceder al sistema y generar el envío de un lote a la compañía de estibas. Cada una de las empresas remitentes generará un archivo PDF con información del envío protegida con una contraseña única para cada una de ellas.
Tabla 10: Análisis de las soluciones a las debilidades
4.2.3.
R
ESULTADOS DEL MODELAMIENTO DE LOS PROCESOS DE NEGOCIOBasados en el análisis de las soluciones de las debilidades del diseño As-Is de la compañía tomada como caso de estudio se realizaron las siguientes observaciones con respecto a que área de la compañía estaba involucrada:
52 Controlar el acceso a los usuarios del sistema Seguridad
Controlar el acceso a las funcionalidades del sistema a los usuarios que pertenezcan a un determinado perfil de seguridad
Seguridad
Controlar las modificaciones que realizan los
usuarios a los datos del sistema de información. Auditoría
Llevar un registro de los lotes y estibas provenientes de las empresas remitentes a la compañía de estibas
Gestión de lotes y estibas
Llevar un registro de la selección de cajas de los empleados de mantenimiento de la compañía de estibas
Gestión de mantenimiento de estibas
Llevar un control de la selección de las cajas
por medio de stickers Gestión de mantenimiento de estibas
Validar la información suministrada por el
empleado de mantenimiento Gestión de mantenimiento de estibas
Llevar un registro de la salida de paquetes de la bodega de la compañía de estibas a la planta de producción
Gestión de salidas de paquetes de la bodega
[image:52.612.107.559.81.489.2]Generar reportes en PDF Generación de reportes
Tabla 11: Resultados del modelamiento de los procesos de negocio
Basados en las anteriores observaciones se realizaron varias entrevistas con el gerente de la empresa tomada como caso de estudio (Sr. Joaquín Bautista Torres) (Anexo 13: Entrevistas realizadas al cliente). En estas entrevistas se dio como solución a las debilidades encontradas, la creación de un sistema de información encargado de realizar los procesos de ingreso, mantenimiento y salida de estibas con nombre SIBOX en tecnología JavaEE5- SEAM2 (esta decisión se tomó por la experiencia que tiene los autores de este presente proyecto de grado en el lenguaje JAVA y el framework SEAM). Los procesos de análisis, diseño, construcción y pruebas son explicados en las siguientes secciones.
4.3.
A
NÁLISIS Y DISEÑO DEL SISTEMA DE INFORMACIÓN:
SIBOX
53 Los módulos del sistema de información para el ingreso, mantenimiento y salida de
estibas.
Los requerimientos más relevantes del sistema de información para el ingreso, mantenimiento y salida de estibas.
Los casos de uso más relevantes por módulo del sistema de información para el ingreso, mantenimiento y salida de estibas.
La descripción del diagrama de modelamiento de entidades del sistema de información para el ingreso, mantenimiento y salida de estibas.
Los perfiles de seguridad del sistema de información para el ingreso, mantenimiento y salida de estibas.
La descripción de la arquitectura del sistema de información para el ingreso, mantenimiento y salida de estibas.
4.3.1.
M
ÓDULOSLos módulos del sistema de información para el ingreso, mantenimiento y salida de estiba son:
MÓDULO DESCRIPCIÓN
Módulo de seguridad
El módulo de seguridad presta todos los
servicios a los usuarios que controlan los
permisos de ingreso a la aplicación y donde se
definen a que opciones del sistema tiene
acceso un determinado usuario de acuerdo con
su perfil de seguridad.
Módulo de auditoría
El módulo de auditoria es el encargado de
registrar las actividades realizadas por los
usuarios sobre la base de datos cuando se
altera la información que contiene.
Módulo de gestión de estibas
El módulo de gestión de estibas está dividido
en tres sub módulos: ingreso de estibas,
mantenimiento de estibas y salida de estibas. El
sub módulo de ingreso de estibas se ocupa de