Вы находитесь на странице: 1из 30

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Tercera Unidad: Arquitecturas


Distribuidas Empresariales
Sumario
La siguiente unidad presenta las arquitecturas distribuidas que las
organizaciones estn seleccionando para la integracin de sus procesos y
aplicaciones, adems se describen y caracterizan los ERP, se realiza una
comparacin con el software de gestin y se describe brevemente sobre las
principales soluciones de ERP Libres basadas en Software Libre.
Luego se define y explica la Gestin de Procesos de Negocios (BPM), sus
componentes, tecnologas, estndares que utiliza, su lenguaje XPDL para la
definicin de procesos, su notacin BPMN y se describe la herramienta Intalio
Designer y Server como solucin BPMS para alinear la tecnologas y los
procesos de negocios.
Al final de esta unidad se presenta la Arquitectura Orientada a Servicios como
una alternativa para integrar procesos y sistemas informticos en las
organizaciones, adems se hace una descripcin del Enterprise Service Bus
(ESB) y la relacin de SOA y BPM.

85

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Objetivos
Al finalizar esta unidad el estudiante ser capaz de:

Conceptuar, describir y caracterizar las soluciones ERP.

Comprender y diferenciar las soluciones ERP y BPM en las


organizaciones.

Comprender, analizar y evaluar las diferentes alternativas y soluciones


de ERP y BPMS basadas en Software Libre.

Entender las arquitecturas ERP, BPM y SOA adems de describir sus


componentes que lo integran.

Conocer y experimentar con una solucin ERP de Software Libre para la


integracin de procesos empresariales.

Conocer una herramienta BPMS que permita modelar, diagramar,


ejecutar, monitorear y mejorar procesos de negocios.

86

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Leccin 7: ERP
7.1 Qu es un ERP?
"Definimos el ERP (Enterprise Resource Planning o Sistema de Planificacin
de Recursos Empresariales) como un sistema de planificacin de los recursos
y de gestin de la informacin que, de una forma estructurada, satisface la
demanda de necesidades de la gestin empresarial." (Muiz, 2000, p.27),
Este tipo de sistemas empresariales son arquitecturas de software distribuido
que integra la informacin de distintas funciones de la empresa, tienen gran
capacidad de adaptacin, modularidad, universalidad con otro tipo de software.
"..., un gran sistema de informacin utilizado para integrar las actividades de
todas las unidades de una compaa. Esta apoyando por una gran base de
datos a travs de la cual todos comparten la misma informacin cuando ocurre
una transaccin". (Griffin y Ronald, 2005, p.160).

Figura 7.1: Integracin de procesos con un ERP


Fuente: Adaptacin propia

7.2 Objetivos de un ERP


Con este tipo de herramientas los negocios esperan:
- Mejorar su productividad

87

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

- Mejorar la calidad en los servicios con sus proveedores y clientes


- Mejorar el nivel de servicio con los clientes internos y externos
- Reducir los costes de integracin
Adems permiten:
- Optimizar e integrar los procesos
- Ayudar a gestionar y toma de decisiones
- Acceder a informacin de forma precisa en la fuente de datos
- Compartir informacin entre las diferentes reas
- Converger e integrar en una sola base de datos
- Reducir los tiempos en los procesos involucrados con los proveedores y
clientes.
7.3 Caractersticas
Son muchas las razones por las cuales se debe elegir una solucin para
integrar procesos, aqu se muestra las caractersticas tcnicas ms
importantes:
- Simulacin de la realidad
- Bases de datos centralizadas
- Los datos se aaden una sola vez
- Da soporte a las funciones bsicas del sistema
- Interaccionabilidad
- Integrabilidad
- Flexibilidad
- Modularidad
- Adaptabilidad
- Comprensivo
7.4 Mdulos bsicos de un ERP
Algunos ERPs poseen una gran cantidad de mdulos y paquetes pero en la
mayora coincide estos mdulos bsicos:
- SCM (Mdulo para la gestin de cadena de suministros)
- MPR (Mdulo para la gestin del proceso de produccin)
- CRM (Mdulo para la fidelizacin de los clientes)
- Ventas (Mdulo para la gestin de puntos de venta del negocio- CRM
(Procesos de Negocio)
7.5 Implantacin de un ERP en un Negocio
Existen diferentes esquemas para implementar y poner en marcha este tipo de
sistemas, a continuacin presentamos este modelo desarrollado en fases:
Fase I: Anlisis y diseo:
- Define el proyecto
- Definicin de requisitos

88

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

- Identificar diferentes soluciones ERP


- Elegir la solucin eficiente de acuerdo con las caractersticas tcnicas,
operativas y econmicas
Fase II: De desarrollo de la solucin
- Desarrollo de adaptaciones de los mdulos o componentes
- Instalacin y Configuracin del ERP en el negocio
- Conversin de datos e integracin con los mdulos del ERP
Fase III: De implementacin
- Capacitacin y formacin de los mdulos para los usuarios
- Puesta en explotacin de mdulos del ERP
7.6 Factores crticos de xito
Para que este tipo de software distribuido tenga un gran xito es necesario que:
- La gerencia general tiene que liderar la implantacin
- Los usuarios deben estar adecuadamente capacitados
- La organizacin debe tener definido su arquitectura de negocios integrada con
su arquitectura tecnolgica
- La organizacin debe definir claramente los objetivos frente a este tipo de
sistemas de informacin
- Definir e identifiquen los recursos tcnicos
- Elegir el correcto ERP en funcin de las necesidades y adaptacin al negocio
- Evaluar y analizar los requisitos, requerimientos y necesidades de la
organizacin.
7.7 Factores crticos para el fracaso
Aqu algunos factores que determinan el fracaso en la puesta en marcha e
implementacin de los ERPs en los negocios:
- La alta gerencia no entiende las prestaciones que ofrece este tipo de
sistemas
- No entiende las necesidades y requerimientos de los sistemas actuales
- Carencia de comunicacin y cooperacin
- Relacin poco fluida con los responsables de su implementacin
- Usuarios mal capacitados
- Proyecto de implementacin no controlado

7.8 Ventajas de los ERP


Existe una lista por las cuales se elige el software ERP, entre las que podemos
citar:
- Seguimiento de los procesos de la organizacin de manera efectiva
- Reducir los costes de integracin
- Mejorar el servicio al cliente y los proveedores
- Mejorar la comunicacin entre las diferentes reas o unidades de negocio

89

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

- Integra los procesos de negocios de una organizacin


- Capacidad para racionalizar procesos y flujos de trabajo.
- Capacidad para compartir datos a travs de las reas de los departamentos.
- Mejoran la eficiencia continua.

7.9 Comparativa ERP versus Software de gestin


Existes muchas diferencias entre un ERP y un Software de Gestin el cual
describimos a continuacin:
ERP

Software de Gestin

Aplicacin
desarrolladas, Costes de implantacin elevados.
estandarizadas, existentes y con
costes fijos de implantacin.

Documentacin para los usuarios ya Manuales


y
desarrollados.
personalizada.

documentacin

Mantenimiento y desarrollo de los Mantenimiento y desarrollo depende


mdulos lo ofrecen diferentes solo de la empresa desarrolladora del
empresas.
software de gestin.

Un modelo estndar respecto a su El anlisis y diseo depende de los


diseo y programacin.
requerimientos de los negocios, hecho
a medida.

Modelo
adaptado
para
necesidades de los usuarios

las Su desarrollo depende de


necesidades del negocio y
usuarios.

las
sus

Integrado y puede interoperar con Hay que preparar su integracin con


otros sistemas externos
otros sistemas y desarrollar un mdulo
para interoperar con otros software

90

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

7.10 ERP basados en tecnologa de Software Libre


Existen una gran cantidad de productos ERP en el mercado entre software
libre, software ERP por suscripcin y software ERP propietario, aqu algunos
productos basados en Software Libre y Open Source:
Adempiere: Es un proyecto desarrollado por la comunidad de software libre,
posee mdulos para la gestin de relacin con los clientes (CRM) y
administracin de la cadena de suministro (SCM). Basado originalmente en
Compiere, es un ERP desarrollado con tecnologa Java y completamente libre
bajo la licencia GPLv2 y trabaja con base de datos PostgreSQL. Tiene un
soporte comunitario y comercial. (http://www.adempiere.com)
AbanQ: Es un ERP desarrollado modularmente estn disponible para
plataformas GNU/Linux, Windows y MAC OS. Posee mdulos integrados para
facturacin, gestin de almacenes, gestin de tesorera, contabilidad financiera,
control de produccin (MRP) y adems tiene soporte completo para cdigos de
barras. Esta trabajando bajo licencia GPL y orientado a pequeas empresas.
(http://www.infosial.com/)
Compiere: Es un ERP de software libre destinada para las empresas de
pequeo y mediano tamao. Compiere est desarrollado bajo la licencia
pblica Compiere (CPL). Es una solucin desarrollada en el lenguaje de
programacin Java, trabaja con la base de datos Oracle y con un servidor de
aplicaciones JBoss. (http://www.compiere.com)
OasisERP: Es un ERP orientado para las pymes basado ntegramente en
herramientas de software libre, trabaja bajo la licencia pblica GPL.
Desarrollado con los lenguajes de programacin PHP y GTK y trabaja con la
base de datos PostgreSQL. (http://www.oasis-clm.es/)
Openbravo: Desarrollado como software libre y basado ntegramente en
entorno web. Basado en una versin antigua de Compiere. Dispone de soporte
para bases de datos PostgreSQL y Oracle. Se encuentra disponible en espaol
y actualmente se preparan localizaciones en varios otros idiomas, licenciado
bajo Openbravo Public License Version 1.1. (http://www.openbravo.com)
OpenERP: Este ERP esta basado ntegramente desarrollado en Python,
PyGTK y trabaja con la base de datos PostgreSQL. Posee mdulos para CRM,
contabilidad, gestin de compras, gestin de almacenes, inventario, gestin de
ventas y mdulos para configurar puntos de venta. Actualmente esta bajo la
licencia pblica General GPL y es libre su descarga. OpenERP est orientado
al uso de las pequeas y medias empresas internamente usa un modelo de
flujos de trabajo desarrollado con arquitectura en tres capas.
(http://www.openerp.com)
openXpertya: Es un ERP es otra solucin ERP liberada con Licencia Pblica
de openXpertya, esta integrado con mdulos CRM, servicios B2B o B2C,
adems incluye mdulos para la gestin de proyectos, marketing y puntos de
venta. El sistema ha sido desarrollado ntegramente en la plataforma J2EE y el

91

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

cdigo fuente de openXpertya


(http://www.openxpertya.org)

Daniel Yucra Sotomayor

se

puede

descargar

libremente.

Xendra: Este ERP liberado bajo la licencia pblica general (GPL) por lo tanto
tambin es software libre, actualmente esta disponible para sistemas
operativos de windows, adaptado a la legislacin y el mercado peruano. Ofrece
una gran cantidad de mdulos funcionales desde CRM, SCM, contabilidad,
entre otros. Trabaja con el servidor de aplicaciones Jboos y base de datos
PostgreSQL. (http://www.xendra.org)

Leccin 8: BPM
8.1 Procesos de Negocio
Es un conjunto de actividades relacionadas dentro de una organizacin que
tienen como objetivo conseguir un determinado resultado.
"...son los procesos utilizados en los negocios para lograr algn objetivo del
negocio. Un ejemplo de un proceso de negocios es una compaa de seguros
sera emitir una poltica de seguros; en una fabrica, un proceso de negocios
sera aceptar un pedido para los productos y estipular el proceso de fabricacin
asociado. Los procesos de negocio pueden ser diseados alrededor de un
sistema heredado y restringidos por la funcionalidad que ste proporciona"
(Sommerville, 2006, p. 36)
Los procesos de negocios son una secuencia de actividades que tiene
entradas predeterminadas y producen salidas resultados, adems generan
valor para un cliente.
Ordenacin lgicamente interrelacionada de tareas desarrolladas en tiempo y
espacio (con comienzo y fin, con entradas y salidas definidas) y que se orienta
al logro de un objetivo de negocio, generando un output de valor (total o
parcial) para el cliente del proceso (Davenport y Short, 1990).
Esta coleccin organizada de comportamientos de negocio satisfacen los
propsitos del negocio, actuando conforme a las reglas de negocio de la
organizacin.
8.2 Qu es BPM?
La gestin de procesos de negocio ha dado origen a una nueva etapa en la
gestin de procesos denominada Business Process Management (BPM).
BPM (Business Process Management) Gestin de Procesos de Negocios es
un conjunto de mtodos, herramientas y tecnologas utilizados para disear,
representar, analizar y controlar los procesos de negocio de una organizacin
(Garimella, Lees y Williams, 2008, p. 5).

92

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Tiene un enfoque centrado en los procesos para mejorar el rendimiento de los


procesos de negocio, abarca sistemas, funciones, negocios, proveedores y
clientes.
"BPM es una tecnologa que soporta todo el proceso de gestin y desarrollo de
negocio de una organizacin. En este contexto, se entiende que un proceso de
negocio consiste en una secuencia de actividades a realizar y los ejecutores de
dichas actividades, que definen los flujos de trabajo y de conocimiento. BPM
permite la representacin explcita de la lgica de los procesos de negocio de
forma orientada al proceso, y se utiliza cada vez ms como una solucin que
integra los procesos de fabricacin e ingeniera" (Reza-Balay, 2010, p. 62).
Combina la gestin de procesos conjuntamente con tecnologas de informacin
para modelar, disear, automatizar, ejecutar y monitorear procesos de negocio.
"El corazn de una plataforma BPM es el motor de ejecucin de procesos al
ofrecer mecanismos de control transaccional para ejecutar procesos de
negocio de principio a fin, estos motores pueden usarse para gestionar
actividades internet y complejos procesos B2B" (Munilla y Garca, 2003, p. 114)
Permite integrar con otras tecnologas como SOA, ERP, Web Services,
sistemas heredados y aplicaciones de Comercio Electrnico.
Es la disciplina de modelar, automatizar, manejar y optimizar procesos para
incrementar la rentabilidad de un negocio. En esta ptica, el objetivo de la
gestin de procesos esta concentrada en el aumento de la rentabilidad (Khan
2003).
Podemos entender BPM como el mejoramiento continuo de la gestin de los
procesos de negocio de una organizacin, de una manera integral, colaborativa
con el uso de la tecnologa en este sentido BPM permite la alineacin de los
procesos, tecnologas con los objetivos y visin del negocio.

8.3 BPM en las Organizaciones


Los siguientes son beneficios identificados en la aplicacin de soluciones BPM:

Mejor y mayor flexibilidad para la adaptacin y cambio de procesos.


Integracin de la informacin del negocio dispersa en diferentes
aplicaciones y sistemas.
Permite adquirir habilidad para disear, simular, implementar, poner en
marcha y supervisar procesos de manera automtica.
Permite organizar la organizacin de una manera planeada y alineada a
la visin y objetivos del negocio.
Visibilidad de los procesos de negocios en las organizaciones
Reducir posible costos de integracin y mantenimiento al adoptar
tecnologa preparadas para abordar el cambio.

93

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

8.4 Tecnologas de Informacin para BPM


En la actualidad existen empresas de la industria del software que estn
proporcionando las tecnologas que permiten la implementacin y adopcin de
los procesos de negocios utilizando BPM, que constituye una nueva categora
de sistemas de informacin denominada Business Process Management
System (BPMS).
El modelo planteado de este tipo de herramientas implica un ciclo de vida
basada en la figura

Figura 8.1: Arquitectura de trabajo de los Business Process Management


Systems (BPMS)
Fuente: Adaptado de Howard, S,. & Fingar, P. (2003) Business Process
Management: the third wave.
Este tipo de sistemas permiten definir, modelar, implementar y mejorar el
proceso durante su operacin. Los sistemas BPMS tiene una gran capacidad
de: modelar, simular, integrar, automatizar y desplegar procesos de negocios.
Todo ello integrado en un nico entorno que realiza todas las funciones de la
tecnologa BPM.
Podemos citar diferentes Suites BPMS propietarios y basadas en software
libre:
- Oracle SOA Suite
- IBM BPMS
- Bizagi BPMS
- Aural Portal
- BEA AquaLogic BPMS
- Process Maker
- Intalio BPMS
- BonitaSoft
8.5 Componentes Tpicos de un BPMS
Los componentes mnimos que trabajan este tipo de tecnologas son:
94

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Modelado de Procesos
- Diseo grfico de los procesos de negocio
- Sin necesidad de conocimientos tcnicos
Motor de Orquestacin
- Toma modelos de un repositorio de procesos
- Gestiona y controla el estado de cada una de las instancias de las diferentes
tareas
- Gestiona el estado de los procesos
- Ofrece mecanismos de recuperacin y reanudacin de procesos ya
automatizados
Monitorizacin y Anlisis
- Analiza en tiempo real los datos de la ejecucin de los procesos ya
automatizados
- Ofrece indicadores de gestin y cuadros de mando
- Identifica problemas con cuellos de botella y fallos del proceso
Simulacin y Optimizacin
- Ejecucin de los procesos en ambientes no reales y con datos reales
- Soporte para metodologas de optimizacin
Motor de Reglas
- Define las reglas de negocio asociadas a condiciones basadas en parmetros
- Integrado en el motor BPM
Servidor de Integracin
- Implementa la interfaz del proceso de negocio.
- Ofrece conectores, mensajera, reglas de transformacin y enrutamiento.
8.6 Estndar BMPN para Modelar Procesos de Negocio
The Business Process Management Initiative (BPMI), desarroll una notacin
para modelos de los procesos de negocios denominado Business Process
Modeling Notation (BPMN) cuyo objetivo es proveer una notacin que sea
entendida por todos los usuarios tcnicos o no tcnicos y pueda ser
visualmente expresado por una notacin comn.

Figura 8.2: Notacin BPMN


Fuente: Layna Fischer (2010) BPMN 2.0 Handbook

95

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

8.7 Lenguaje para la definicin de procesos


Existe el formato XPDL (XML Process Definition Language), un lenguaje para
la definicin de un Flujo de trabajo (WorkFlow), creado por la organizacin
WfMC, actualmente en una versin 2.0.
XPDL forma parte de la interfaz para definir los procesos de negocios basados
en XML que puede ser usado para intercambiar modelos de procesos de
negocio entre distintas BPMS.
XPDL es el formato de archivo que representa el dibujo o modelo del proceso
de negocios, utilizado para la automatizacin de los procesos.

Figura 8.3: Representacin del proceso con BPMN

Figura 8.4: Cdigo generado en XPDL

96

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

8.8 Intalio BPMS


Es un Suite de BPM para modelar, automatizar y poner en marcha procesos de
negocios, desarrollado en Java y es software libre (utilizacin gratuita).
Contiene las componentes tpicos de una suite BPMS, actualmente se cuenta
con una versin Intalio|Works Community y una solucin de Intalio |Works
Enterprise Edition, el cual incluye mdulos empresariales que le dan un valor
aadido al producto.
8.8.1 Intalio Designer
La herramienta Intalio Designer, permite modelar y parametrizar los procesos
con notacin BPMN adems de la notacin extendida
Ofrece un conjunto de conectores a diversos sistemas, como bases de datos,
Servicios web y funcionalidades SOA.
Permite integracin y despliegue de los procesos con Intalio Server a travs de
su entorno de desarrollo.
Adems es una herramienta que permite la transformacin automtica de la
notacin BPMN a BPEL ms el Workflow.

Figura 8.5: Intalio diseador de procesos

97

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

8.8.2 Intalio Server


Permite la ejecucin de los procesos creados con Intalio Designer, esta basado
en J2EE y una arquitectura SOA del tipo Axis 2.
Integra dos componentes de Software Libre interconectados (Apache ODE:
Motor de BPEL 2.0 e Intalio Tempo: Motor de Workflow con soporte tareas
humanas).
Ofrece 2 interfaces visuales a nivel administrador y usuarios finales de los
procesos.
Permite publicar los procesos de negocio como Servicios Web y llamarlos con
servicios web externos.

Figura 8.6: El motor de procesos Intalio Server

Leccin 9: SOA
9.1 Concepto de Servicio
Se puede considerar como un "contrato" en el cual se hacen las prestaciones
que se entregaran al usuario.

98

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

"Los servicios son funcionalidades especficas que pueden ser descubiertas y


describen tanto lo que puede hacer como el modelo de interactuar con l"
(W3C, 2004)

Por ejemplo: Devolver los datos personales de un cliente comunicar a cada


cliente de la empresa una nueva promocin comercial.
9.2 Qu es SOA?
"Una aplicacin SOA es una coleccin de servicios, un servicio es la unidad
atmica de una SOA, los servicios encapsulan procesos de negocios, los
proveedores de servicios se registran solos, un servicio involucra: Find, Bind,
Execute y las instancias ms conocidas son los web services" (Brooks, 2008).
La arquitectura orientada a servicios (SOA), es un marco de trabajo conceptual
que permite a las organizaciones unir los objetivos de negocio con la
infraestructura de TI integrando los datos y la lgica de negocio de sus
sistemas separados.
"Permite la creacin de sistemas altamente escalables que reflejan el negocio
de la organizacin, brinda una forma estndar de exposicin e invocacin de
servicios (comnmente pero no exclusivamente con web services), lo cual
facilita la interaccin entre diferentes sistemas propios o de terceros"
(Bieberstein, 2003).
Con SOA, una empresa puede mantener sus inversiones en los sistemas
heredados y a la gente necesaria para mantenerlos, es una solucin
prometedora para los problemas de integracin de sistemas de informacin y
aplicaciones.
Esta propuesta SOA implica, descomponer la lgica de negocio de una
organizacin en partes ms pequeas. Donde cada una de ellas contiene su
propia unidad lgica.
SOA es un enfoque para disear y desarrollar soluciones de negocio, a partir
de componentes independientes que exponen funciones como servicios
accesibles por otros componentes a travs de interfaces estndares.
SOA permite alinear las capacidades de TI con los objetivos de negocio y
visin del negocio, donde provee una infraestructura tcnica para responder a
los cambios de requerimientos del negocio.
A continuacin la tabla 9.1, donde describe las diferencias sobre las diferentes
tecnologas distribuidas y su comparacin con SOA.

99

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Tabla 9.1 Tabla comparativa de las caractersticas de las soluciones


distribuidas
Caractersticas

SOA

DCOM

CORBA

RMI

Protocolo

SOAP

RPC

IIOP

IIOP o JRMP

NDR

CDR

Java
Serialization
Format

Descubrimiento UDDI

Registry

Naming
Service

RMI Registry o
JNDI

Descripcin

WSDL

IDL

OMG IDL

Java

Enfocado

Integracin
de Procesos
de Negocio

Componente Objetos
Invocacin de
s distribuidos Distribuidos Mtodos
Remotos

Formato
mensaje

de XML

9.2.1 SOA en las empresas y organizaciones


Para la industria del software SOA es considerada la solucin para la
integracin de datos, aplicaciones y procesos, donde interoperan sistemas de
manera independiente a la tecnologa y plataforma.
SOA es la prxima ola de desarrollo de aplicaciones. Es ms rpida, mejor y
ms barata (Pallos, 2001, p.350)
Algunos gobiernos para la implementacin de aplicaciones de gobierno
electrnico han considerado viable implementar este tipo de soluciones. En el
caso peruano SUNAT, Aduanas, Reniec han comenzado a implementar web
services y el siguiente paso ser la integracin de sus sistemas utilizando un
SOA gubernamental.
Recomiendan a los arquitectos de tecnologas de informacin considerar SOA
como la prioridad nmero uno en sus esfuerzos de planeamiento
arquitectnico (Giga IT Trendsm, 2003: Application architecture and design).

100

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

9.3 Comparacin con otros enfoques de desarrollo


Existen diferencias concretas entre el modelo de servicios con otras soluciones
distribuidas, tal como se presenta en la siguiente tabla:
Tabla 9.2 Tabla comparativa con otros enfoques de desarrollo
Fuente: Mitchell, K. (2002) A matter of style: Web Services architectural
patterns. XML Conference & Exposition, Baltimore
Relacion entre
Proveedor y
Consumidor
Granularidad

Programacin
Estructurada
Muy fina

Programacin
Orientada a
Objetos
Fina

Programacin
por
Componentes
Intermedia

Desarrollo
Orientado a
Servicios
Gruesa

Contrato

Definido

Privado/Publico

Publico

Publicado

Reusabilidad

Baja

Baja

Intermedia

Alta

Acoplamiento

Fuerte

Fuerte

Dbil

Muy dbil

Dependencias

Tiempo de
Compilacin

Tiempo de
Compilacin

Tiempo de
Compilacin

Tiempo de
Ejecucin

mbito de
Comunicacin

Intra-Aplicacin

IntraAplicacin

InterAplicaciones

Inter-Empresas

9.4 Enterprise Service Bus (ESB)


Enterprise Service Bus (ESB) Bus de servicios de empresa (BSE) consiste en
un combinado de arquitectura de software que proporciona servicios
fundamentales para arquitecturas complejas a travs de un sistema de
mensajes (el bus) basado en las normas y que responde a eventos.
El uso de la palabra "bus" viene del bus que transporta los bits entre los
distintos dispositivos de un ordenador.
Software de infraestructura que posibilita el acceso a los servicios de negocio
reutilizables por parte de usuarios, aplicaciones, procesos de negocio, y otros
servicios [].
Infraestructura software que posibilita SOA, al actuar como una capa de
middleware de intermediacin a travs del cual se puede acceder a un conjunto
de servicios de negocio reutilizables (Vollmer y Gilpin, 2006)
Infraestructura middleware que soporta web services y aporta comunicacin
de valor aadido entre programas, y mediacin para componentes de negocio
orientados a servicios y guiados por eventos (Schulte, 2005).

101

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Figura 9.1 Integracin de sistemas con ESB en una Arquitectura


Orientada a Servicios
Fuente: Adaptado de Microsoft (2007) A high-level example of the connectivity
provided the Enterprise Service Bus architecture

9.5 SOA y BPM


La adopcin de SOA y BPM estn muy relacionadas. Un reciente estudio de
Forrester (2009) mostr que el 92% de los encuestados que estaban
implantando SOA tambin consideraban BPM importante para el futuro de su
organizacin.
La generacin actual de los productos de gestin de BPM estn centrados en
funcionalidades SOA. Los ltimos aos los lderes de BPM han transformado el
mercado en soluciones basado en SOA y tecnologa de integracin basada en
estndares.
La prxima generacin de soluciones de integracin de sistemas y ejecucin de
procesos de negocio estar basada en arquitecturas orientadas a servicios.
SOA permitiendo de esta manera maximizar el rendimiento de las inversiones
en TI.

102

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

BPM y SOA van juntos, adems ambos permiten optimizar los procesos de
negocio con ms flexibilidad y rapidez. Ambos convergen y permiten el
alineamiento del rea de negocio con rea de Tecnologas de Informacin.

103

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

RESUMEN
La unidad desarrollada nos proporciona las principales arquitectura distribuidas
empresariales como son los ERPs, soluciones basadas en la gestin de
procesos (BPM) y la Arquitectura Orientada a Servicios.
Se describen y detallan los objetivos, caractersticas y mdulos que ofrecen los
sistemas de planificacin de recursos empresariales (ERP), adems se
especifica su implementacin, factores crticos para el xito y fracaso, adems
de una comparacin de las principales ERP basadas en software libre.
Luego se definen y se describe la Gestin de Procesos de Negocios (BPM),
desde un enfoque de gestin y tecnolgico adems de describir sus
componentes, la notacin BPMN y el lenguaje para la definicin de procesos
(XPDL). Se finaliza esta leccin describiendo Intalio Designer e Intalio Server
como solucin BPMS para modelar, automatizar, ejecutar y mejorar procesos
de negocio.
Luego se describe y define la Arquitectura Orientada a Servicios (SOA) como
una solucin para integrar procesos de negocios, sistemas heredados, y
componentes reutilizables del negocio. Luego se define Enterprise Service Bus
(ESB), como el principal componente de las soluciones SOA que permite
articular los servicios y vistos como web services para este tipo de soluciones.

104

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

L E CTURA
SOI (Service Oriented Integration) *
SOI o Servicio Orientado a la Integracin es la forma de integrar servicios de
una arquitectura SOA, ensamblndolos en pequeas partes hasta alcanzar el
mximo nivel de granularidad. Hace que la integracin sea una tarea ms
sencilla al ensamblar componentes de bajo nivel. Los resultados son similares
a los de las soluciones propietarias EAI: ambas pueden integrar aplicaciones y
publicar servicios Web para que sean consumidos por otras aplicaciones, pero
existen algunas diferencias.
La tecnologa SOI es complementaria a la tecnologa MOM (Message Oriented
Middleware) que utilizan las soluciones EAI, pero no la necesita para realizar la
integracin, lo que reduce los costes y la complejidad del proyecto. Cuando en
un proyecto es necesario implantar tecnologas MOM (normalmente en grandes
empresas) SOI puede reducir los costes de configuracin en el punto donde los
mensajes se convierten en lgica de aplicacin o datos, con la tecnologa EAI
se puede alcanzar una infraestructura de mensajera escalable y multitud de
conexiones con las aplicaciones, pero es en la ltima milla donde se hacen
necesarios los adaptadores de aplicacin y donde la precisin en su desarrollo
eleva los costes. No slo es ms sencillo construir adaptadores con SOI sino
que los es toda la metodologa de integracin en s misma ya que separa el
desarrollo de la lgica de integracin del adaptador, donde sera necesario
desarrollar cdigo cliente, y lo lleva a un repositorio central donde resulta ms
sencillo trabajar con las API. Desde este repositorio se puede visualizar los
distintos componentes de las aplicaciones de empresas y bases de datos para
ser ensamblados en forma de servicios.

SOI utiliza adaptadores ligeros

105

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Los servicios de aplicaciones estn evolucionando. BEA, por ejemplo, ofrece


nuevos servicios de integracin, que incluyen BPM y B2Bi, los cuales se
ejecutan en su servidor de aplicaciones ofreciendo servicios de runtime, como
seguridad, escalabilidad, pool de conexiones, etc. IBM ha cambiado su
estrategia de integracin desde MQ Series a WebSphere y sigue una estrategia
similar. Al mismo tiempo, la tecnologa de los brokers de integracin tambin
evoluciona, y estn adaptando los servicios web, incluso soportan
programacin Java, ms adaptadores de aplicaciones, soluciones verticales
para reducir tiempos de implantacin.
Mientras que los brokers de integracin fueron utilizados para las aplicaciones
crticas, los servidores de aplicaciones permitieron a las empresas desarrollar
sus aplicaciones para la web. Un mercado como el de los brokers de
integracin, dominado por herramientas propietarias, no resulta operativo para
los requerimientos actuales en cuanto a interoperabilidad del e-business.
Aunque funcionara en las primeras etapas de una estrategia e-business con
aplicaciones simples que tan solo necesitaban de un servidor de aplicaciones y
una base de datos relacional, actualmente, y para beneficiarse del e-business
colaborativo, los procesos de negocio de la empresa deben ser integrados con
los procesos de sus socios, lo que requiere una plataforma de integracin que
conecte todas las aplicaciones que formen parte del sistema de informacin.

Estructura con brokers de integracin

Si una empresa ya ha invertido en un broker de integracin capaz de


gestionar sus procesos globales. lo lgico ser conectarlo con un
servidor de aplicaciones J2EE para la gestin de la seguridad y la capa
de presentacin.

Si no ha realizado esta inversin, puede utilizar un estndar comoJCA


(desarrollado por Sun, IBM y BEA), que permiten al servidor acceder a

106

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

las aplicaciones de empresas de igual modo que JDBC lo hace con las
bases de datos relacionales. Si la empresa quiere conectar su ERP con
una aplicacin especfica que se ejecuta en el servidor de aplicaciones.
Solo necesitara el conector JCA apropiado. El mercado camina hacia la
integracin basada en Internet y los servidores de aplicaciones parecen
estar mejor posicionados. J2EE se ha convertido en un estndar en el
mercado de los servidores web, mientras que JCA ofrece conexin
estndar con mltiples sistemas de back-office. La combinacin de
integracin web con aplicaciones existentes en la empresa ofrece el
entorno imprescindible para consolidar una estrategia de e-business a
nivel global.
Las empresas deben basar cada vez ms su tecnologa en estndares para
obtener ventajas, como: disponibilidad de recursos, capacidad de reaccin,
proteccin de la inversin, escalabilidad, independencia del vendedor, etc. Bien
es verdad que todava queda por resolver problemas como el soporte JCA para
la comunicacin asincrnica o que la portabilidad de complejos desarrollos EJB
no es completa.
Para conformar una plataforma de integracin, se necesita estndares y
herramientas, los servicios web representan un conjunto de estndares y
gracias a la amplia adopcin de stos por la industria casi todas las
herramientas y plataformas los soportan. Hoy existen herramientas de
desarrollo, como VisualStudio.NET o Borland Jbuilder, o plataformas que
soportan servicios web, como WebSphere, BEA WebLogic o los
servidores.NET. Tambin se pueden ampliar las herramientas creadas en la
empresa empleando tecnologas abiertas, como Microsoft SOAP Toolkit o
Apache SOAP. Las opciones son ilimitadas. Aparte de plataformas y
herramientas, los fabricantes de soluciones empaquetadas anuncian soporte
para los servicios web, lo que significa que se integrarn directamente con la
plataforma de integracin desarrollada con los servicios web sin cdigo en el
cliente, algo imposible con las plataformas propietarias.
Los servicios web permiten construir una plataforma de integracin basada en
estndares en cualquier tipo de empresa. Con las herramientas actuales puede
ser desarrollada incrementalmente, proyecto a proyecto, sin la necesidad de
realizar una inversin inicial grande, empezando por utilizarlos en integracin
punto a punto y escalar hacia una plataforma completa.

* Fuente: (Valcrcel, I. y Munilla, 2003, pp. 97-100)

107

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

AUTOEVALUACIN 3
1. Un ERP permite:
a. Planificar recursos tecnolgicos
b. Gestionar solo los clientes y proveedores
c. Gestionar usuarios y recursos de los proveedores
d. Gestionar la contabilidad, proveedores, clientes y procesos de negocio
e. Gestionar la demanda tecnolgica
2. Uno de los mdulos no es parte de un ERP:
a. Mdulo de Compras
b. Mdulo de Recursos Humanos
c. Mdulo de CRM
d. Mdulo de ETL
e. Mdulo de Contabilidad
3. Uno de los factores crticos de xito en la implementacin de un ERP,
no corresponde
a. Gerencia lidera la implementacin
b. Se elige un correcto ERP
c. Evaluar requisitos correctamente
d. La organizacin tiene definido su arquitectura de negocios
e. Carencia de Comunicacin
4. Un software de gestin es:
a. Un sistema de informacin estndar
b. Un sistema de informacin con documentacin ya desarrollado
c. Un sistema de informacin utilizable para determinados negocios
d. Un sistema integrado que puede interoperar con otros sistemas
e. Un sistema de informacin desarrollado a medida
5. Openbravo es un ERP desarrollado con las siguientes tecnologas:
a. Java + Oracle
b. Java + Mysql
c. php + Oracle
d. Mysql + .Net

108

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

e. PosgreSQL + php
6. Openbravo es una implementacin ERP basada en:
a. Compire
b. Xendra
c. OpenERP
d. AbanQ
e. Adempiere
7. Con BPM las organizaciones pueden:
a. Solo modelar procesos de negocios
b. Disear, controlar procesos con el proveedor y sus socios
c. Visualizar los procesos de negocios
d. Solo diagramar procesos de negocios
e. Aumentar los costos de integracin y mantenimiento
8. Las herramientas de BPMS permiten
a. Solo modelar procesos de negocios
b. Solo automatizar procesos de negocios
c. Definir, Modelar, Implementar y Mejorar procesos de negocios
d. Solo monitorear procesos de negocios
e. Identificar procesos de negocios
9. El lenguaje XML que permite definir los procesos de negocio se
denomina:
a. XSD
b. XMLSchema
c. DTD
d. XPDL
e. XMLNS
10. Una de las afirmaciones es incorrecta acerca de SOA:
a. Integrar web services y aplicaciones
b. Integrar datos, aplicaciones y procesos.
c. Recomendado para alinear las tecnologas y el negocio

109

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

d. Un sistema distribuido cliente/servidor


e. Un enfoque para disear y desarrollar soluciones de negocio

RESPUESTAS DE CONTROL
1. d 2. d

3. e

4. a

5. a

6. a

110

7. c

8. c

9. d

10. d

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

EJERCICIOS PROPUESTOS
Caso ERP para la empresa FarmaPer
La cadena de farmacias FarmaPer, ha decidido implementar una solucin
ERP para integrar sus procesos ms importantes que tiene con sus
proveedores y clientes, adems conocen que la plataforma funcional es la
muestra en la figura siguiente:

Plataforma OpenBravo ERP


Se pide:
a. Configurar, instalar, personalizar y poner en marcha el ERP en una
plataforma GNU/Linux y personalizar los mdulos de Gestin de Datos
Maestros y Gestin de Contabilidad.
b. Describir la arquitectura tecnolgica del ERP
c. Describir 10 funcionalidades tcnicas del ERP OpenBravo
d. Mencionar los requisitos tcnicos para poner en marchar OpenBravo
e. Personalizar el mdulo para la gestin de ventas y puntos de venta
f. Ingresar informacin al mdulo de logstica y gestionar los productos por
categora y cantidad en stock.
g. Presentar informes y reportes en PDF sobre las ventas mensuales.

111

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

EXPLORACIN ON LINE

URL:http://sisbib.unmsm.edu.pe/bibvirtualdata/publicaciones/risi/n3_2005/a0
4.pdf
En este artculo del Sistema de Bibliotecas de la UNMSM
implementacin de un sistema ERP en una organizacin

describe la

URL: http://www.openbravo.com/es/product
Sitio oficial del ERP OpenBravo en espaol donde muestra las
funcionalidades, experiencias incluso un centro de demostracin de esta
solucin gil.

URL: www.openbravo.com/es/product
Sitio oficial del ERP OpenBravo en espaol donde muestra las
funcionalidades, experiencias incluso un centro de demostracin de esta
solucin gil.

URL: http://www.bpmi.org
Sitio oficial de la organizacin estndar que define a BPM denominada
Business Process Management Initiative

URL: http://wiki.bizagi.com/es/index.php?title=BPMN
En este sitio se muestra y describe cada uno de los smbolos de la notacin
BPMN, fundamental para disear y modelar procesos de negocio, adaptado
para el BPMS bizagi.

URL: http://www.oracle.com/lad/products/middleware/soa/index.html
Sitio oficial de Oracle, donde describe su solucin y productos para adoptar
SOA en los negocios.

URL: http://www.estebanf.com/bpm/2009-08-26/intaliobpm-mas-alla-de-soa/
En este artculo se demuestra la relacin BPM y SOA. Adems se describe
como la solucin Intalio BPM necesita una arquitectura distribuida como
SOA

112

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

REFERENCIA BIBLIOGRFICA
Brooks, M.

(2008) Service Oriented Architecture and Grid


Computing, Victoria RMIT University Australia

Bieberstein, N.

(2003) SOA Project Planning Aspects. SOA &


WOA Magazine.

Davenport, T.H. & Short, J.E.

(1990). The New Industrial Engineering:


Information Technology and Business Process
Redesign, Sloan Management Review.

Fischer, L.

(2010)
BPM and Workflow Handbook.
City of Lighthouse Point: Future Strategies Inc.

Forrester Research

(2006)
The
Forrester
IntegrationCentric
Business
Management Suites.

Garimella, K., Lees, M., y Williams, B. (2008) Introduccin a


Dummies. Wiley Publishing, Inc

Wave:
Process

BPM

para

Giga IT Trendsm

(2003) Application architecture and design.


Giga Taps 10 Key IT Trends for 2003.

Griffin, R. y Ronald, E.

(2005) Negocios. D.F.


Edicin de Mxico, S.A.

Howard, S,. & Fingar, P.

(2003) Business Process Management: the


third wave

Khan, R.

(2003) Evaluating BPM Software, Business


Integration Journa

Mitchell, K.

(2002) A matter of style: Web Services


architectural patterns. XML Conference &
Exposition, Baltimore.

Microsoft

(2007) A high-level example of the


connectivity provided the Enterprise Service
Bus architecture, Microsoft ESB Guidance for
BizTalk Server 2006 R2. Publicado
Noviembre del 2007. Obtenido 14 de Marzo
del
2011.
http://msdn.microsoft.com/enus/library/bb931189.aspx

Munilla, E. y Garca, I.

(2003) E-Bussiness Colaborativo.


Editorial Confemetal

Muiz, L.

(2000) ERP, gua prctica para la seleccin e


implantacin. Madrid: Ediciones Gestin 2000

Pallos, M.

(2001) WebShere Application


Database Performance tuning

Reza-Balay

(2010) Hacia la excelencia.Alicante: Editorial


Club Universitario

113

Mxico:

Pearson

Madrid:

Server

&

Sistema a Distancia

Sistemas Distribuidos II - Unidad III

Daniel Yucra Sotomayor

Schulte, R.

(2005) Application
Gartner Group.

Integration

and

WS,

Sommerville, I.

(2006) Ingeniera del Software 7ma edicin.


Madrid: Addison-Wesley

Valcrcel, I. y Munilla, E.

(2003) E-Business Colaborativo. Madrid: FC


Editorial

Vollmer, K. & Gilpin, M.

(2006) Forrester Reseach

W3C

(2004) W3C Workshop on Constraints and


Capabilities for Web Services. Publicado 12 y
13 de Octubre 2004. Obtenido 16 de Marzo
del
2011,
desde
http://www.w3.org/2004/06/ws-cc-cfp.html

BIBLIOGRAFA COMENTADA
-

Coulouris, G., Dollimore, J., & Kindberg, Tim (2007) Sistemas


Distribuidos Conceptos y Proyecto 4ta. Madrid: Addison Wesley.
Puede revisar la unidad 19, sobre los Web services y SOA.

Muiz, L. (2000) ERP, gua practica para la seleccin e implantacin.


Madrid: Ediciones Gestin 2000.
Se recomienda revisar los captulos 1, 2 y 3 sobre las caractersticas,
tareas y anlisis de los mdulos de los Sistemas de Planificacin de
Recursos Empresariales (ERP).

Krafzig, D., Banke, K. & Slama, D. (2005) Enterprise SOA, ServiceOriented Architecture: Best Practices.
Se recomienda revisar el captulos 4 sobre la arquitectura de Software
de SOA, adems del captulo 7 sobre la relacin SOA y Business
Process Management (BPM).

114

Sistema a Distancia

Вам также может понравиться