Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

53 Resultados de La Investigación 83-1-10 20201020

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

Revista de la Facultad de Ciencias Naturales e Ingeniería

Revista Matices Tecnológicos Edición 7, 2015. UNISANGIL. ISSN 2027-4408.

Diseño de un software que integre una tienda


online con Openbravo ERP
Software design that integrates an online store with Openbravo ERP
Viviescas Ortiz, Juan Carlos1 y Macías Rodríguez, Néstor Omar1
Fundación Universitaria de San Gil – UNISANGIL, Facultad de Ciencias Naturales e Ingeniería
Programa Ingeniería de Sistemas
San Gil, Colombia

juanviviescas@unisangil.edu.co
nestormacias@unisangil.edu.co
Fecha de Recepción: 13 de febrero de 2016
Fecha de Aceptación: 23 de septiembre de 2016

Resumen — Es indudable que el ambiente competitivo en el Abstract — Undoubtedly, the competitive environment
que se vive en el ámbito empresarial actualmente, requiere where we live nowadays in the business area requires
promover los procesos y actividades de negocio que generan promoting business processes and activities that can generate
ventajas competitivas de las compañías ante sus más fuertes competitive advantages of companies to the strongest
competidores. Es por esto, desde hace ya varios años, que se competitors. For this reason, some years ago, we have given
ha dado mayor importancia a las tecnologías de información more importance to Information Technology and its
y su alineación con las estrategias del negocio, para mejorar alignment with the business strategies to improve their
sus procesos. Los procesos o actividades propias del negocio processes. Since these processes or activities of the business
siguen siendo aislados, ello hace que la información no esté remain isolated, making the information not available at the
disponible en el instante en que se necesita. Es necesario moment it is needed. Processes need to be integrated in real-
integrar procesos, en tiempo real, de forma que haya time, looking for to have efficiency in the activities that they
eficiencia en las actividades que realizan, en lo relativo a do, regarding customers, sales and products. To accomplish
clientes, ventas y productos. Para cumplir este propósito se this purpose an electronic business website was developed
desarrolló un sitio web de comercio electrónico, con el uso using frameworks and making the services integration with
de Frameworks y se construyeron los servicios de ERP Openbravo that allows the communication and
integración con el ERP Openbravo (ERP por sus siglas en collaboration among processes within the business,
Inglés Enterprise Resource Planning, Planeación de regarding products and customers. To do so, a connect
Recursos Empresariales). Esto, con la intención de permitir software was developed that made this task possible, getting
la comunicación y colaboración entre los procesos dentro del as result the integration between that platforms and the
negocio, en lo relativo a productos y clientes. Para lograrlo identification of the advantages of having a tool of this type,
se desarrolló un software conector que hizo posible esta since the company’s information will be updated all time and
tarea, dando como resultado la integración de estas dos it will have a with a good element to be more competitive in
plataformas. El desarrollo del proyecto permitió integrar las the market.
dos plataformas e identificar las ventajas de tener una
herramienta de este tipo, ya que la información de la empresa Key words — Integration, ERP (Enterprise Resource
estaría actualizada en todo momento y contaría con un buen Planning), MySQL, Openbravo, Prestashop, Synchronize.
elemento para competir en el mercado.

Palabras clave — Integración, ERP, Enterprise Resource


Planning, Planeación de Recursos Empresariales, MySQL,
Openbravo, Prestashop, Sincronización.

1
Ingeniero de Sistemas, UNISANGIL.

34

INICIO
Revista de la Facultad de Ciencias Naturales e Ingeniería

Revista Matices Tecnológicos Edición 7, 2015. UNISANGIL. ISSN 2027-4408.

I. INTRODUCCIÓN o en otros casos manuales (lo que aumenta los costos de


operación), para tener la información actualizada.
Actualmente el desarrollo de software debe ser realizado
considerando tanto la calidad como la reducción de costos. Una vez descubierto esto, el reto que se plantea ahora es el
La calidad está marcada por los estándares con que se de poder sincronizar las dos plataformas de modo que
cuenten y el nivel de cumplimiento de los mismos. puedan compartir información en tiempo real, para que cada
cambio que se haga en un área funcional del negocio, se
Este proyecto se desarrolla al ver que muchas pequeñas y refleje y actualice inmediatamente en todas las demás, sin
medianas empresas tienen problemas de integración, como tener que realizar el mismo procedimiento dos veces. Se
lo son funcionalidad aislada, múltiples instancias de los debe encontrar una manera de unificar las tecnologías de
mismos datos, actividades manuales redundantes, costos más modo que el usuario administrador pueda controlar todo
altos y respuestas ineficientes para sus usuarios. desde una sola aplicación.

Se creía que el problema era la falta de implementación de Ya en contexto, este proyecto buscó desarrollar un sitio
herramientas tecnológicas que permitieran, por un lado, web de comercio electrónico que permita introducir
automatizar los procesos y, por el otro, ampliar sus productos, aceptar registro de clientes que puedan realizar
posibilidades de llegar a más clientes, al ofrecer productos o pedidos. Aparte de eso, se buscó desarrollar servicios de
servicios por internet. Esto, como complemento a los medios integración que hagan posible la sincronización de este sitio
tradicionales, es decir incursionar en el comercio electrónico. con el ERP Openbravo, para permitir la comunicación y
[1] colaboración entre los procesos dentro del negocio. El ERP
(Enterprise Resource Planning) es una aplicación de gestión
En los últimos años internet ha crecido tanto en el número empresarial diseñada para cubrir todas las áreas funcionales
de aplicaciones como en el número de usuarios [2]. Cada vez de la empresa. Se trata de un conjunto de paquetes o
la gente pasa más tiempo en internet y realiza más tareas aplicaciones, cada uno diseñado para cubrir las exigencias de
cotidianas estando online. Han aparecido también múltiples cada área funcional de la empresa, de tal manera que crea un
aplicaciones que permiten realizar muchas tareas, entre ellas flujo de trabajo (workflow) entre los distintos usuarios.
aquellas que nos permiten realizar compras online.
Los servicios de integración se desarrollaron con la ayuda
Prestashop es un software que nos permite precisamente de una herramienta de software que hace posible extraer la
esto último, al ser un medio para crear la versión virtual y información de una base de datos mediante consultas, esta
digital de una tienda física. información se presenta en formato XML, lo que permite que
pueda ser consultada o manipulada desde otra aplicación.
Las tiendas online no son más que la versión digital de una
tienda física, con la ventaja de que se pueden usar como De esta forma se pudo obtener la información de
complemento de la tienda física o montarla directamente, sin Openbravo y mediante una funcionalidad del lenguaje de
necesidad de una tienda física. Esto es el comercio programación PHP, usado en este proyecto, se pudo capturar
electrónico, que busca ampliar el número de clientes de una la información en estructuras de datos tipo vector, para
empresa. finalmente insertarla en la base de datos de Prestashop, así la
información va de una aplicación a otra en tiempo real, sin
Por el lado administrativo, Openbravo permite una necesidad de repetir procesos. Esto dio como resultado la
completa administración de las operaciones diarias de la integración que se buscaba.
empresa. La optimización de los procesos operativos resulta
en un incremento de rentabilidad, fácil implementación, II. METODOLOGÍA
adaptabilidad a las necesidades de la empresa a medida que
lo vaya requiriendo y una reducción en los costos de A continuación, se explica cada una de las etapas realizadas
inversión en equipos y servicios [3]. para la elaboración del proyecto: inicialmente y luego de
escoger detenidamente el tema y el enfoque del proyecto, se
Sin embargo, el problema va más allá de la implementación diseñó la arquitectura del sistema. La arquitectura del
de herramientas tecnológicas, ya que una vez que éstas son sistema se refiere a la estructuración del software que,
puestas en marcha, el usuario final descubre que las idealmente, se crea en etapas tempranas del desarrollo.
plataformas de una y otra tecnología (comercio electrónico y
sistemas de gestión empresarial), funcionan de manera
independiente y que el problema que se creía resuelto sigue
siendo el mismo. No hay integración de la información que
se maneja haciendo que se incurra en actividades repetitivas,

35

INICIO
Revista de la Facultad de Ciencias Naturales e Ingeniería

Revista Matices Tecnológicos Edición 7, 2015. UNISANGIL. ISSN 2027-4408.

A. Identificación de los requerimientos del aplicativo web y que el servidor desee poner a disposición del resto del
los servicios de integración mundo: Web services científicos, geográficos, de negocios,
validación, clima, compras, etc. [7]
Se realizaron consultas en diferentes páginas Web
especializadas y se probaron herramientas de software libre Los servicios web poseen enormes ventajas que se ajustan
disponibles en la red. a la medida con las necesidades de este proyecto tales como
estándares y protocolos abiertos (software libre), son fáciles
Después de este paso, se realizó la especificación de de crear y es posible consumirlos con cualquier lenguaje de
requerimientos, que básicamente consisten en determinar lo programación y desde cualquier sistema operativo. [7]
que hará el sistema y definir las restricciones de su operación
e implementación. Se buscó dejar claro los alcances e Para crear los servicios web de manera más focalizada, se
introducir al usuario en la herramienta de software. usó el software WSO2 [8] que es también software libre, y
se obtuvo como resultado la información en formato XML,
B. Procedimiento realizado para la integración de las dos [9] que es estándar, mucho más fácil de manipular y
plataformas garantiza que esta información esté disponible en cualquier
plataforma. Esto resolvió el problema de la interoperabilidad
Después de la especificación de requerimientos, se y portabilidad entre sistemas. Usando este programa se
procedió a realizar el análisis y diseño, donde se modelaron obtuvo la información de la base de datos de Openbravo
los diagramas de colaboración y secuencia. Finalmente, se (para ser más precisos, solo se consultaron las tablas que
llegó a la etapa de desarrollo y despliegue, donde se realizó contienen la información de los clientes y los productos que
el diagrama de despliegue, como se describe en la sección de son los temas de interés), como servicios Web en formato
resultados. XML. La integración se realizó por medio de un software o
programa hecho en PHP que, gracias a una de sus
C. Herramientas tecnológicas implementadas funcionalidades, almacenó los servicios Web y los dispuso
en estructuras de datos tipo vector, para que estuvieran
Una vez determinada la metodología se usaron disponibles. El siguiente paso fue insertar estos datos en la
herramientas, en este caso es software, que permitieron base de datos de Prestashop mediante consultas SQL.
llevar a cabo la ejecución del proyecto.
La comunicación por el momento fue unidireccional, ya
Una de las principales herramientas usadas para llevar a que se tomó como origen de datos Openbravo y el destino
cabo el desarrollo y despliegue de la aplicación fue la fue la tienda online. En síntesis, por medio de la aplicación
máquina virtual, proporcionando el entorno usado para desarrollada se capturaron los datos de Openbravo y después
montar el software de la parte de gestión empresarial (el se insertaron en la base de datos de Prestashop.
software Openbravo) corriendo bajo la plataforma de Linux.
Para realizar el diseño de la tienda en línea se llevó a cabo la III. RESULTADOS
instalación de Php, MySQL [4] y Apache, todo en un paquete
de software más conocido como XAMPP, que permite A. Integración de los servicios del aplicativo web con
convertir un computador en un pequeño servidor bajo el planeación de recursos empresariales Openbravo.
entorno de Windows, con el fin de instalar con éxito
Prestashop y poder continuar el proceso de configuración e Las funciones principales de la aplicación se resumen en
integración. diagrama de casos de la figura 1.

Es conveniente tener en cuenta que Prestashop usa el


lenguaje php y el servidor de base de datos MySQL, mientras
que Openbravo ERP está desarrollado en Java y usa el
servidor de base de datos Postgres. MySQL es un sistema
gestor de base de datos relacional que facilita la búsqueda
ágil y rápida de datos. Por su parte POSTGRES es un sistema
de bases de datos similar a MySQL que además es software
libre, por último y quizás el argumento más importante, se
usaron servicios Web [5]. A través de un servicio web, se
pueden ofrecer servicios de forma pública para que otras
personas los puedan consumir. Básicamente, se puede
solicitar a quien publica el servicio que ejecute cierta tarea
(operación), indicando sus parámetros y el servidor da el
resultado [6]. Un servicio web puede hacer cualquier cosa Fig. 1 Diagrama de casos de uso.

36

INICIO
Revista de la Facultad de Ciencias Naturales e Ingeniería

Revista Matices Tecnológicos Edición 7, 2015. UNISANGIL. ISSN 2027-4408.

Aquí se puede ver como la aplicación solo involucra un Esta es una típica estructura Modelo, Vista, Controlador,
actor que puede sincronizar categorías, productos y clientes. en donde el modelo, que se encuentra en la capa de negocio,
El caso de uso sincronizar producto extiende a otros casos de lo representan las bases de datos, de Prestashop y de
uso, aunque en la práctica, estas extensiones solo reescriben Openbravo, el conector de XML hace las veces de puente de
al caso de uso principal. comunicación. En el controlador, que se ubica en la capa de
servicios, está el WSO2 que, mediante sus interfaces y
Los métodos o funciones de cada actividad usadas para funcionalidades, es el software encargado de realizar las
llevar a cabo la integración se muestran en la figura 2. peticiones a las bases de datos y de retornar los resultados en
formato XML. En la capa de presentación se encuentra la
página principal del sincronizador que provee la interfaz al
usuario final, para que este pueda interactuar con el sistema.

La figura 4 presenta la apariencia de la aplicación lista para


ejecutarse.

Fig. 2 Diagrama de secuencia “Sincronizar Categorías”.


Fig.4. Página principal del Sincronizador.
En primer lugar, el sincronizador usa al método
getCategorias quien se encarga de hacer la petición al Después de tener instalados tanto Openbravo como
servicio. Este a su vez consulta la base de datos de Prestashop, se procedió a registrar categorías, productos y
Openbravo, quien devuelve el resultado de la consulta al clientes en Openbravo, llenando la información requerida.
servicio y éste al sincronizador. Este procesa los datos y
nuevamente ejecuta otra consulta, esta vez a Prestashop, para Acto seguido se crearon las consultas a las tablas de
insertar estos datos en su base de datos. Openbravo y se obtuvo como resultado la información en
forma de servicios Web.
En lo que respecta a la arquitectura de la aplicación, en la
figura 3 se presentan sus componentes. Se obtuvo la información de los campos de nombre,
descripción y referencia. De los productos se obtuvieron los
campos de nombre, descripción, referencia y precio. De los
clientes se obtuvo el identificador, el nombre y la fecha de
registro.

Con los servicios Web activos se hizo la conexión desde el


lenguaje de programación PHP. Con la clase de PHP llamada
SoapClient fue posible procesar los servicios web, recuperar
la información encapsulada y mediante consultas SQL se
insertaron estos datos en la base de datos de Prestashop, más
exactamente a las tablas que guardan la información de
categorías, productos y clientes, todas relacionadas entre sí.

B. Validación de la integración de los servicios

Posteriormente se procedió a realizar diferentes pruebas,


para finalmente llevar a cabo la integración. Así, se
Fig. 3 Diagrama de componentes de la aplicación. obtuvieron los resultados esperados al iniciar el proyecto y
se cumplió con los objetivos que se propusieron. Estos eran

37

INICIO
Revista de la Facultad de Ciencias Naturales e Ingeniería

Revista Matices Tecnológicos Edición 7, 2015. UNISANGIL. ISSN 2027-4408.

el diseño de una tienda en línea funcional, es decir que REFERENCIAS


permitiera ofrecer productos y servicios, registrar clientes
[1] (2015) Dinero.com. Cinco razones para que las pymes inviertan en
que pudieran realizar pedidos de productos y facturar los tecnología. [en línea]. Disponible en: http://bit.ly/1tXTtI8
pedidos, después diseñar una aplicación que permitiera [2] (2015) Ministerio de tecnologías de la información y comunicaciones.
sincronizar la tienda en línea con el ERP Openbravo, La locomotora de internet a todo vapor. [En línea]. Disponible en:
http://www.mintic.gov.co/portal/604/w3-article-8597.html
conectando las dos plataformas, teniendo como base la zona
[3] (2011) Universidad del Cauca. Metodologías para la implementación
administrativa del ERP Openbravo y usando la tienda en de sistemas ERP. [en línea]. Disponible en: http:
línea para ofrecer sus productos en ella. //fccea.unicauca.edu.co/old/erp.htm
[4] (2012) Máster magazine. Definición de MySQL. [en línea].
Sin embargo, en lo referente a los clientes hubo Disponible en: http://www.mastermagazine.info/termino/6051.php
[5] TEDESCHI, N. Web Services, un ejemplo Práctico. [en línea].
inconvenientes y no fue posible traer los clientes registrados
Disponible en:https://msdn.microsoft.com/es-
en Openbravo hasta Prestashop, por un error desconocido. es/library/bb972248.aspx
[6] IBM, DEVELOPERS WORK. Introducción a SOA y servicios web.
IV. CONCLUSIONES [en línea]. Disponible en:http://ibm.co/1X8dru5
[7] IBM, DEVELOPERS WORK. Comprender los servicios web, Parte
2: Web Services Description Language (WSDL). [en línea].
Se diseñó y construyó un sitio Web de comercio Disponible en: http://ibm.co/1PESe9F
electrónico y se integró mediante servicios Web con [8] WSO2, WSO2 CARBÓN. [en línea]. Disponible en:
Openbravo ERP (Planeación de Recursos Empresariales). http://bit.ly/20wMVjy
[9] Manual de XML. XML ¿qué es? [en línea]. Disponible en:
Dicho sitio se creó usando el software libre Prestashop que http://bit.ly/1PbaNRl
usa el servidor de base de datos MySQL y los servicios de
integración se desarrollaron con el software WSO2. El
software del ERP Openbravo fue instalado y configurado en
una máquina virtual bajo el entorno de Linux.

Se sincronizaron exitosamente, mediante el software


conector desarrollado, categorías y productos creados desde
Openbravo hasta la tienda en línea. Se mostró en la página
de la tienda en línea la información de las categorías traídas
desde Openbravo como nombre, descripción y referencia. De
los productos se mostraron los campos de nombre,
descripción, referencia, precio y cantidad disponible en
Stock.

V. RECOMENDACIONES

Este proyecto solo funciona con las versiones de


Prestashop 1.6 y la versión de Openbravo 2.40, en versiones
diferentes cambia la estructura de las bases de datos y, por
ende, no se garantiza el funcionamiento.

Se debe estudiar cuidadosamente las tablas de las bases de


datos que serán tomadas como referencia para extraer la
información de una y otra aplicación, pues si bien es cierto
que las tablas de la base de datos de Openbravo contienen
campos en común con las tablas de la base de datos
Prestashop, también contienen campos muy diferentes. En el
caso del campo identificador, el identificador del origen no
debe tomarse en cuenta, pues las tablas destino, tienen su
propio identificador y siempre es automático y secuencial.

Para la implementación de la herramienta se debe contar


con una conexión a internet en todo momento, así como tener
los servicios web activos, de lo contrario la comunicación
será fallida.

38

INICIO

También podría gustarte