sábado, enero 13, 2018

SOA Y BPMS La Nueva Generación De La Ingeniería De Software

La Ingeniería de Software es una ciencia que exige estar preparado para enfrentar cualquier reto de solución a las necesidades de las organizaciones, en ese desarrollo se debe buscar la integración con el negocio de tal forma que se satisfagan plenamente los requerimientos de los usuarios. En muchas de la generaciones anteriores de la ingeniería de software la productividad del software no corresponde con la demanda de sus servicios, los recursos tecnológicos no solo requieren dinero, sino capacidad de gestión. Por esto aparece la idea de introducir una metodología que asegure el éxito del proyecto y no estar haciendo retoques sobre el software luego de desarrollarlo porque no cumple las expectativas.
Los procesos del negocio, base para la construcción y desarrollo  de todo proyecto de software se deben integrar y consolidar para obtener un software completo. Para suplir esta necesidad surge una arquitectura[1] que sirve como apoyo al desarrollo de software y que a su vez esta enfocada a servicios, esta arquitectura llamada SOA(Arquitectura orientada a servicios) esta tomando día a día mas fuerza en el mundo y esta logrando que la empresas la tomen para realizar sus proyectos de software y reorientar su procesos actuales hacia esta Arquitectura.
En la arquitectura orientada  a servicios  SOA, los componentes de la red hacen disponibles sus recursos a otros participantes en la red como servicios independientes a los que tienen acceso de un modo estandarizado[2].  Esto permite mayor nivel de interoperabilidad y bajo acoplamiento, la comunicación es independiente de la plataforma y del lenguaje de programación, con esto se pretende el concepto de re- usabilidad.
BPM (Business Process Management), permite un manejo sistemático de todos los procesos de la organización, se enfoca en la administración de los proyectos de negocio, con esta tecnología se puede diseñar, implementar, probar, simular y ejecutar los procesos de negocio de una empresa. Con la ayuda de estas dos herramientas se pueden optimizar y agilizar los procesos de negocio.
BPM, no requiere SOA, pero con SOA se simplifica la implementación de  BPM, y con esto se logra la habilitación de los servicios[3].
SOA,  orientada a proveer servicios une tanto el framework como el marco de implantación; el éxito de los proyectos SOA, radica en la capacidad que tengan los ingenieros de enfocar los procesos y crear servicios que sean comunes.
Al hablar de servicios, se esta haciendo una gran referencia a servicios alojados en Internet o en una Intranet, es ahí donde SOA, se convierte en un gran apoyo, ya que actualmente las organizaciones en su mayoría tienden a crear proyectos orientados a la Web, y con la ayuda de las nuevas tecnologías de la información que han hecho posible el manejo rápido y eficaz de los portales, para lograr una comunicación efectiva entre empresa y cliente, además de potenciar los procesos de negocio.
Existe un juego de estándares que van ligados a los servicios Web, estos conceptos son altamente conocidos entre los profesionales de TI[4], ellos son XML, http, SOAP, entre otros, sin embargo hay que aclarar que un sistema desarrollado en  SOA, no necesariamente necesita de estos estándares para estar enfocado a servicios.
La gran ayuda que presta SOA, sin lugar a duda es la posibilidad de hacer grandes cambios de manera sencilla, ya que al estar enfocado a servicios no debemos estar haciendo retoques en las demás capas de la arquitectura y solo con modificar los servicios del sistema podrá ser adaptado a cualquier necesidad del negocio, siempre y cuando este bien concebido y los procesos de negocio estén bien enfocados.

En esta nueva generación de la ingeniería de software, se hace necesario que antes la comunicación e  integración entre los profesionales de TI y los directivos; esto se convierte mas que antes en un reto para los ingenieros de software. El explicar a los directivos los beneficios que pueden aportar estas dos herramientas y como pueden hacer que los procesos de negocio resulten mas flexibles y eficaces, solo quienes conocen el funcionamiento del negocio, pueden ayudar a los desarrolladores a realizar el proyecto y crear los servicios de manera que sean realmente útiles.
Podemos tener BPM con o sin SOA, BPM resulta provechoso para optimizar el rendimiento del negocio a través de la optimización continua de los procesos  de negocio, pero SOA permite definir la interacción de los sistemas con el BPM, y así se aíslan los procesos vitales de las complejidades de código.

Por todo los expuesto y para conseguir mayor nivel e índices de software exitoso  en el que los actores involucrados se compenetren mejor y se puedan distinguir los procesos de negocio de los tecnicismos propios de los sistemas y sacarle mayor provecho a las tecnologías de la información, es por esto que nosotros como profesionales de TI, debemos proponer a SOA y BPM para su implementación en las empresas ya que han permitido crear organizaciones orientadas a procesos con enfoques de servicios.







[1] f. Inform. Estructura lógica y física de los componentes de un computador.
[2] Tomado de wikypedia.com
[3] Una función sin estado, auto-contenida, que acepta una(s) llamada(s) y devuelve una(s) respuesta(s) mediante una interfaz bien definida
[4] Tecnologías de la información

No hay comentarios.:

Las miserias que se toman el mundo

 Era impensable que un tipo como Donald Trump fuese presidente del país más poderoso del mundo, pero sucedió, luego, su misma forma de gober...