domingo, 31 de marzo de 2013

SOA, la última Innovación Tecnológica


En los 70:

Al principio, usted gestionaba su negocio con métodos manuales y basados 100% en procedimientos que realizaban personas. Con la llegada de los ordenadores y los programas informáticos, usted empezó a resolver partes de la operativa de su negocio de forma mecanizada y por tanto recicló a su personal para que en lugar de procesar datos, los introdujera en una máquina de tarjetas perforadas y el ordenador realizará los cálculos correspondientes. Más tarde, se evolucionó a las aplicaciones informáticas. Con este gran paso, le gestionábamos de forma mecanizada su cartera de clientes con la aplicación Gestión de clientes, sus proveedores con Gestión de Proveedores, su stock con Gestión de Almacén, su Contabilidad con una aplicación de Financiera y así un largo etcétera.

Dichas aplicaciones se desarrollaban a gusto y medida del cliente, pero encarecían notablemente los costes de mantenimiento y evolución de dicho software, ya que cada cliente debía pagar de forma individual sus propias adaptaciones a normativas, regulaciones, mercado, nuevas  líneas de negocio…Además, las empresas invirtieron de nuevo en formación y/o reciclaje de sus empleados: Operaciones, Finanzas, Almacén….todos debían ser capaces de utilizar las aplicaciones que les correspondían e intercambiarse la información necesaria entre los distintos departamentos que la requerían. Resultado: montañas y montañas de papel pijama que paseaban en carritos de una mesa a otra. Sólo les habíamos cambiado las herramientas de trabajo y aunque el circuito y el proceso era el mismo, el negocio ganaba en rapidez de gestión y por tanto de respuesta al mercado y a sus clientes.  Un nuevo reto para los CI y una nueva solución tecnológica.

Los 80:

Desarrollamos aplicaciones estándar para todos los clientes e integramos dicha aplicación con el resto de las existentes. Así conseguimos que el intercambio de información sobre un medio físico como el papel se transformara en intercambio de datos de forma automática entre las aplicaciones. ¡Bravo, señores informáticos¡. Conseguimos reducir costes de mantenimiento, ya que los posibles errores del software, las mejoras y evoluciones se distribuyeron a todos los clientes que habían adquirido dichas licencias por un módico porcentaje anual sobre el precio inicial de las mismas. Pero no olvidemos los costes de adaptación a las particularidades de los grandes clientes, que lógicamente exigían.

Y respecto a la integración, otro ¡bravo¡ Ya habíamos creado el famoso ¡¡¡spaghetti!!! Cada aplicación recibía información del resto para procesar y entregar otra tanta cantidad de la misma para todas las demás. Esto implicaba un nuevo sin fin de programas que tratasen y generasen respectivamente dichos datos. Consecuentemente, la ventana horaria del tratamiento batch se ampliaba, se complicaba la dependencia entre aplicaciones y creamos los equipos de guardia para resolver lo que pudiera ocurrir fuera del horario establecido de trabajo. Además, se ahorraba en costes de gestión, ya no era preciso tanto personal administrativo, se necesitaban informáticos de desarrollo, de técnica de sistemas, de explotación, bases de datos,….Pero tranquilos señores clientes, los CI somos fundamentalmente “solucionadores”.

Los 90 (principios):

Les creamos los ERP – y seguimos con las siglas -Enterprise Resource Planning ó Planificación de Recursos Empresariales. Una solución global y completa para gestionar todo el negocio de su Compañía, incluyendo las áreas comunes de cualquier negocio (Financiero, Recursos Humanos, Provisión,…) con las específicas de su sector de mercado. Paralelamente, introducimos el concepto de modularidad, es decir, desarrollamos aplicaciones más sofisticadas y que cubrían más operativa, pero independizando partes de la misma que llamaríamos módulos y que pueden ser reutilizadas desde distintos programas. Así creamos el “súper paquete de software” con un conjunto de módulos comunes y otro conjunto con aquellos específicos que componían la vertical del negocio y consiguiendo tener todo integrado desde el punto de vista de datos. ¿Pero la naturaleza del sector de negocio es tan distinta entre unos y otros? (un Banco vs una Operadora de Telecomunicaciones, por ejemplo) y la competencia de mercado tan alta, que pasa por ofrecer productos propios de cada Compañía a sus clientes finales. Ahí es donde el ERP empieza a no encajar del todo, porque cada empresa tiene necesidades diferentes y objetivos propios. Incluso perteneciendo al mismo sector, debe diferenciarse de la competencia y aportar su propio valor añadido, sus propios productos y soluciones; y claro, sus sistemas de información no pueden ser los mismos que los de la competencia. Bien, adoptamos el ERP para los procesos de gestión y administración de la Compañía y seguimos con nuestras aplicaciones específicas del negocio. ¿Reducimos integración? Poca cosa. Ahora teníamos que comunicar las aplicaciones propietarias con el ERP que nos exigiría unos formatos concretos e incluso unos desarrollos con un lenguaje de programación concreto formatos concretos e incluso unos desarrollos con un lenguaje de programación concreto. Fuimos modularizando y nuestras aplicaciones pasaron a ser multi-país, multi-entidad, multi-moneda, …, pero el spaghetti crece y crece. No olvidemos a las personas. Formamos a los de negocio para que se adapten a las nuevas tecnologías y evolucionamos a los informáticos con nuevos lenguajes y técnicas de programación.

Los 90 (mediados):

Diseñamos una solución software y de arquitectura de sistemas (“middleware”), que permitiese que las aplicaciones heterogéneas, en distintas máquinas y ubicaciones físicas pudieran intercambiarse información tanto en tiempo real (on line) como diferido (batch),
comunicándose con un único intercambiador de información y no directamente entre ellas una a una. Bienvenido el EAI – Enterprise Application Integration ó Integración de Aplicaciones de Empresa. Las aplicaciones requerían y suministraban información a partir de este gestor que funcionaba como una “cola de peticiones” o “cola de mensajes”. Ya no teníamos comunicación spaghetti, ahora nuestro formato era en estrella. No obstante, seguimos realizando una entrega por cada petición.

Los 90 (finales):

Los Grupos empresariales, la internacionalización de las Compañías y la inmediatez de los servicios, requería la apertura de nuevos canales (telefonía, Internet,..) que permitiese a los clientes finales contactar en cualquier momento y desde cualquier lugar.  Las redes de computadores cada vez se hacen más amplias y están más deslocalizadas. Necesitábamos de un dispositivo software que actuase como Application Server ó Servidor de Aplicaciones, que gestionara la mayor parte de la lógica de negocio y acceso a los datos de la aplicación. Los clientes finales van utilizando cada vez más los servicios que ponen a su disposición las Compañías a través de los distintos canales de acceso, el negocio crece y crecen exponencialmente las peticiones de información, y el cliente requiere inmediatez. El formato “cola de mensajes” ya no es suficiente y se evoluciona al “bus de datos” y concepto “publicación –suscripción”. Ahora, la aplicación origen sólo entrega la información una vez al “bus” y desde ahí, la captura cada aplicación que la requiera. Los CI tenemos mucho trabajo adaptando los Sistemas de Información a las nuevas tecnologías.

El 2000 y su efecto:

Falsos profetas, malos augurios, el fin del mundo….Los CI hemos dedicado mucho tiempo y esfuerzo, pensando, diseñando y desarrollando soluciones que redunden en mejorar los Sistemas de Información de las Compañías y por tanto su negocio. Hemos ido cubriendo con capas y capas de tecnología a esos “viejos” programas Cobol de los 70, a esos millones y millones de líneas de código que siguen ejecutándose día tras día, utilizando los mismos modelos de Base de Datos. Datos que costaba mucho almacenar en los 70 y que los CI reducíamos al máximo, empaquetándolos, no guardando datos calculables, definiendo la longitud mínima….Grabando los datos de fecha con las dos últimas posiciones y realizando los cálculos entre fechas con el mismo formato. ¿Quién pensaba que 30 años después estos “programas dinosaurios” seguirían funcionando?.
A las puertas del siglo XXI, batallones de becarios recién titulados con la ilusión puesta en las nuevas tecnologías, hijos de la Playstation y de los CI de los 70, ampliaron los modelos de datos y revisaron línea por línea los programas de sus progenitores adaptándolos al “efecto 2000”.¿Frustrante? Nada que no arregle el dinero. Así que paguemos a los becarios lo que nos pidan que lo trasladaremos a las empresas. A fin de cuentas, gracias a nosotros, los CI, el negocio cada vez va mejor y las Compañías no van a escatimar en gastos con todo lo que se juegan. El 31 de diciembre de 1999, millones de CI en todo el mundo hicimos guardia al pie del ordenador con todo el dispositivo posible de contingencia activado. La suerte y como no, nuestro buen trabajo, nos permitió que tras las 12 campanadas respiráramos con alivio: las comunicaciones, la electricidad, el gas,…., hasta los cajeros automáticos funcionaban. Con los ordenadores a salvo, los CI podíamos centrarnos de nuevo en la evolución de la Tecnología.


2000-2001:

Con el siglo recién estrenado, creamos los Portales de Internet, donde el Servidor de Aplicaciones y el middleware son piezas fundamentales; y que permite a las empresas gestionar y divulgar su información, desde un único punto de acceso a usuarios internos (empleados) y externos (clientes, proveedores, organismos reguladores,…). Señores de negocio, hemos inventado el e-Business y con él más siglas: B2B (Business to Business ó negocio entre empresas); el B2C (Bussines to Customer ó a Clientes) ó B2G (Business to Goverment ó con Organismos gubernamentales). Su negocio, antes local, está ahora abierto a la globalización. Ha transformado su empresa en una e-Communitie.

Efecto crisis 11M – 2001:

…y efecto de la globalización, los siguientes tres años serán duros para la economía mundial. El sector Servicios, y por tanto los CI arrastrados por ella ven como se reduce la inversión en Tecnología. Imposible soportar los salarios inflados de los junior en un momento donde las Compañías que tanto negocio nos han dado para así potenciar y desarrollar el suyo, reducen sus necesidades y reclaman que bajemos nuestras tarifas. Resultado, EREs -expedientes de regulación de empleo (las siglas no sólo las usamos los CI) y a apretarse el cinturón. Ya se sabe cuando el hambre aprieta da alas a la imaginación. Las crisis se remontan y los buenos tiempos vuelven. Nuevo reto para los CI, aprovechemos para pensar en la siguiente evolución Tecnológica.

2004 y siguientes:

Y aquí estamos, inventando de nuevo la rueda y hablando de BPM - Business Process Management ó Gestión de Procesos de Negocio y SOA - Service-Oriented Architecture ó Arquitectura Orientada a Servicios.

Recordemos la introducción:
  • BPM es la metodología empresarial cuyo objetivo es mejorar la eficiencia a través de la gestión sistemática de los procesos de negocio.
  • SOA es un concepto de arquitectura de software que define la utilización de los servicios para dar soporte a los requisitos del negocio.

 Veamos como aterrizamos los CI este discurso a los no CI. Hasta aquí el negocio se había adaptado a las limitaciones que le forzaba la tecnología. Nótese que en los últimos 30 años nuestro discurso había sido que la tecnología ayudaba a gestionar mejor y por tanto hacía prosperar al negocio. Ahora es el negocio quien define las actividades y procesos a través de un modelado, lográndose un mejor entendimiento y la oportunidad de mejorarlos. Claro, antes los requisitos nos los inventábamos los CI en lugar de proporcionarlos el usuario de negocio. La automatización, administración y monitorización de los procesos, reduce errores, asegura una ejecución eficiente y permite explotar la información que de ello se obtiene para optimizarlos.

¿Hasta aquí algo nuevo?.

Evidentemente, para desarrollar una estrategia de BPM es necesario contar con una suite de soluciones y herramientas denominadas BPMS – Business Process Management System ó Sistema de Gestión de Procesos de Negocio -, que nos permitan construir aplicaciones bajo esta metodología. El negocio puede definir paso a paso los procesos utilizando una herramienta WFM – Workflow Management ó Gestión de Procesos – donde bajo un entorno totalmente gráfico y amigable para el usuario, éste define los pasos a seguir o actividades a realizar, los puntos de control, las alertas a emitir, los roles asignados a cada actividad, las personas asociadas a dichos roles y el nivel de escalado de información y autorizaciones correspondiente. Complementado con una herramienta BAM – Business Activity Monitoring ó Monitorización de Actividades de Negocio – podemos medir los tiempos dedicados a cada acción, la carga de trabajo asignada, la eficiencia de los empleados, etc. Por supuesto, una herramienta BAM nos permitirá documentar los procesos para su mejora y así poder definir, seguir y cumplir un SLA – Service Level Agreement ó Acuerdo de Nivel de Servicio; y nos ofrecerá en múltiples formatos de gráficos y agrupaciones de datos, la información relevante para mejorar el negocio. Además, facilitará la visualización de las alertas definidas según grado de criticidad y al nivel de dirección y gestión adecuado. De forma que un usuario de negocio pueda “orquestar” las actividades y “modelar” sus procesos y que ello se traduzca en un software que se ejecute y realice las acciones requeridas, para lo que es preciso una nueva arquitectura que nos permita diseñar estas aplicaciones. Y aquí entra SOA que define las siguientes capas de software o para entendernos, que “trocea” nuestras antiguas aplicaciones en programas o “servicios” cada vez más concretos, limitados y específicos:

  • Básicos: Programas desarrollados bajo cualquier tecnología, geográficamente dispersos y bajo cualquier figura de propiedad. Por ejemplo, validación lógica de una fecha.
  • Funcionales: Las funcionalidades del negocio se exponen como servicios.
  • Integración: Facilitan el intercambio de datos entre aplicativos.
  • Composición de Procesos: Define el proceso en términos de negocio adaptados a sus particularidades.
  • Entrega: Despliegue de los servicios a los usuarios finales.

Y son esos pequeños “servicios” los que se asocian en el workflow y generan una aplicación BPM.


Fuente:
CCB – Octubre 2008
Para MorellConsultor.es

No hay comentarios:

Publicar un comentario

Oracle ACE Director Award - Deiby Gómez

Thanks #OracleACE Program for this awesome certificate recognizing the work I have done in the community for the last year. Looking forwa...