Arquitecturas Empresariales. Orientación a Servicios (SOA) y Gestión de Procesos de Negocio (BPM)

July 12, 2018 | Author: Alberto Otero García | Category: Service Oriented Architecture, Software, Computer Engineering, Software Engineering, Business
Share Embed Donate


Short Description

Descripción: En este seminario el alumno aprenderá qué es una arquitectura tecnológica empresarial, de qué partes está c...

Description

Arquitecturas Empresariales. Orientación a Servicios (SOA) y Gestión de Procesos de Negocio (BPM) Aulas de empresa 2007

Barcelona. 8, 9 y 12 de febrero de 2007

confidencialidad Aviso: este documento es material confidencial y propiedad de everis. Se prohíbe el uso, reproducción o la divulgación del contenido de este material sin permiso previo y por escrito de la empresa propietaria. Derechos de Autor  © 2007, everis. All rights reserved

índice 1. 2. 3. 4. 5. 6. 7.

Introducción Arqu Ar quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al Servic Ser vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) Ejempl Eje mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al Anexos

índice 1. Introducción

2. 3. 4. 5. 6. 7.

Arquititec Arqu ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al Servic Ser vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) Ejempl Eje mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al Anexos

Introducción Objetivos y conocimientos previos recomendados Objetivos En este seminario el alumno aprenderá qué es una arquitectura tecnológica empresarial, de qué partes está compuesta y qué requisitos debe satisfacer. Los asistentes al seminario estudiarán además dos de las tendencias más presentes actualmente en las arquitecturas empresariales: la orientación a servicios (SOA) y la gestión de procesos de negocio (BPM), viendo ejemplos concretos de arquitecturas empresariales de grandes corporaciones.

Conocimientos Conocimie ntos previos recomendados Programación, estructuras de datos, ingeniería del software, bases de datos, redes de ordenadores.

Introducción Contenido del curso El curso está dividido de 3 sesiones de 3 horas , en las que se desarrollarán los siguientes temas:

Introducción Contenido del curso Arquitectura tecnológica empresarial Se explicará qué es una arquitectura tecnológica empresarial y qué partes la conforman. Servicios de una arquitectura empresarial de ejecución y desarrollo Se estudiará qué funcionalidades debe proveer una arquitectura software en las áreas de ejecución y desarrollo. Arquitectura orientada a servicio (SOA) Se describirá qué es una Service Oriented Architecture (SOA) y qué elementos son habituales en ésta. Gestión de procesos de negocio (BPM) Se describirá qué es el Business Process Management  (BPM) y cómo se integra en una arquitectura software. Ejemplo de arquitectura de referencia empresarial Se propondrá un ejemplo completo de arquitectura software a partir de los conceptos aprendidos en el resto del curso.

índice 1. Introducción 2. Ar Arqu quit itec ectu tura ra te tecn cnol ológ ógic ica a empr empres esar aria iall

3. 4. 5. 6. 7.

Servicios Servic ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) Ejempl Eje mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al Anexos

Arquitectura tecnológica empresarial Qué es una arquitectura tecnológica empresarial Arquitectura Arquitectu ra tecnológica empresarial Definimos arquitectura tecnológica empresarial como el conjunto de componentes, servicios y procedimientos que dirigen y soportan el desarrollo y funcionamiento de una solución de negocio para una organización, garantizando la calidad, completitud y operatividad del resultado.

Arquitectura tecnológica empresarial Porqué es necesaria una arq. tecnológica empresarial Retos En la actualidad, existen diferentes tecnologías (e.g. Java EE, MS .NET) comúnmente extendidas en el mercado IT y en las empresas, si bien su evolución ha provocado la aparición de una serie de problemas y escenarios poco adecuados : Proliferación de aplicaciones departamentales tecnológicamente dispares. Poca uniformidad en la programación y look & feel de las aplicaciones. Entornos de desarrollo y ejecución heterogéneos y poco integrados. Diversidad de productos con diferente cobertura funcional. 







Todo ello hace que sea necesario estructurar y racionalizar los elementos que intervienen en el uso de estas tecnologías. Como respuesta a todos estos problemas, surge el concepto de arquitectura.

Arquitectura tecnológica empresarial Porqué es necesaria una arq. tecnológica empresarial Soluciones Una arquitectura tecnológica empresarial permitirá por ejemplo: Focalizar el desarrollo de aplicaciones en la implementación de soluciones de negocio. Mejorar la calidad del resultado final de los desarrollos reforzando el uso de estándares. ). Reducir la complejidad y los tiempos de desarrollo (time to market ). Optimizar el rendimiento de las aplicaciones, favoreciendo su modularidad y escalabilidad. Simplificar el mantenimiento de aplicaciones. Facilitar la portabilidad entre plataformas. Predecir costes de desarrollo y mantenimiento de manera más precisa. 













Arquitectura tecnológica empresarial Qué áreas cubre una arq. tecnológica empresarial Áreas Desde esta perspectiva, una arquitectura debería contemplar: Los componentes software orientados a satisfacer requerimientos de negocio o tecnológicos (arquitectura de ejecución). Las herramientas, estándares y metodologías para el óptimo desarrollo de software (arquitectura de desarrollo). La infraestructura técnica (HW y SW) para soportar el proceso de desarrollo y operación del sistema (arquitectura técnica). Los mecanismos, técnicas y componentes que garanticen la operación, nivel de servicio , mantenimiento y seguridad de la solución software (arquitectura de operación). 







índice 1. Introducción 2. Ar Arqu quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al 3. Serv Servicios icios de una arqui arquitectu tectura ra empre empresaria sariall en ejecu ejecución ción y desa desarrollo rrollo

4. 5. 6. 7.

Arquititec Arqu ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) Ejempl Eje mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al Anexos

Servicios arq. emp. en ejecución y desarrollo Arquitectura de ejecución Componentes Una arquitectura de ejecución provee principalmente a las aplicaciones de los siguientes tipos de componentes:

Servicios arq. emp. en ejecución y desarrollo Arquitectura de ejecución Ejemplos de componentes Algunos ejemplos de los diferentes tipos de componentes son los siguientes: Componentes de soporte a la lógica de aplicación : base para la implementación de lógica de aplicación y los procesos de negocio, soporte multiorganización. Componentes core : gestión de sesión de usuario, logging , persistencia, transaccionalidad. Componentes de comunicación : sistemas de mensajería, emulación local. Componentes de integración : acceso a backends , uso de gestores de contenido, uso de email, uso de periféricos. Componentes de presentación : perfiles de usuarios, validación de datos, internacionalización, módulos de creación de user interfaces . Componentes de seguridad : autenticación, autorización, firma. 











Servicios arq. emp. en ejecución y desarrollo Arquitectura de desarrollo Procesos Una arquitectura de desarrollo contempla principalmente los siguientes procesos:

Servicios arq. emp. en ejecución y desarrollo Arquitectura de desarrollo Ejemplos de procesos Algunos ejemplos de las diferentes tareas y productos incluidos en los procesos de desarrollo son los siguientes: Proceso de adquisición : gestión de la demanda, plan de proyectos. Proceso de desarrollo : análisis funcional y técnico, construcción. Proceso de gestión : plan de proyecto, plan de iteración. Proceso de gestión de la configuración : versionado de código fuente. Proceso de documentación : normativa, generación automática. Proceso de infraestructura: entornos, extracción de juegos de datos. Proceso de gestión de la calidad : normativa, tests de calidad. Proceso de formación : material de formación, cursos. Proceso de mejora : identificación de buenas prácticas, evaluación periódica. 

















índice 1. Introducción 2. Ar Arqu quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al 3. Ser Servic vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo 4. Ar Arqu quit itec ectu tura ra or orie ient ntad ada a a serv servic icio io (SO (SOA) A)

5. Gest Gestió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) 6. Eje Ejempl mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al 7. Anexos

Arquitectura orientada a servicio (SOA) En qué consiste una arquitectura orientada a servicios SOA 





El concepto de SOA (Service Oriented Architecture ) ofrece un marco de trabajo para alinear los procesos de negocio con los sistemas de IT. Plataforma de servicios que representan procesos de negocio y que se combinan entre sí (flexibilidad) para ofrecer soluciones adecuadas a las diferentes necesidades de negocio (agilidad). Existen multitud de definiciones del término. “SOA es un modelo de componentes que interrelaciona las diferentes unidades funcionales de

las aplicaciones, denominadas servicios, a través de interfaces y contratos bien definidos entre esos servicios. La interfaz se define de forma neutral, y debería ser independiente de la plataforma hardware, del sistema operativo y del lenguaje de programación utilizado. Esto permite a los servicios, construidos sobre sistemas heterogéneos, interactuar entre ellos de una manera uniforme y universal.” *

Arquitectura orientada a servicio (SOA) Por qué aparecen las arq. orientadas a servicios Retos 







Actualmente las empresas dependen completamente de sus IT, de las que esperan flexibilidad, agilidad y eficiencia en los costes. Las IT de las empresas están compuestas por un gran número de sistemas interdependientes, heterogéneos y muchas veces redundantes. La rapidez con que las IT pueden adaptarse a los cambios en las necesidades del negocio no siempre es suficiente (falta de agilidad y flexibilidad). La estructura actual de las IT puede hacer que los cambios introducidos cuesten más que los beneficios que aportan (baja eficiencia de costes).

Arquitectura orientada a servicio (SOA) Por qué aparecen las arq. orientadas a servicios Soluciones 









Ahorro de dinero, tiempo y esfuerzo mediante la reutilización de "componentes" y gracias a la flexibilidad de SOA. Elimina "frustraciones" con IT gracias a las soluciones flexibles y los tiempos más cortos de despliegue de soluciones. Permite justificar más claramente las inversiones en IT, ya que éstas están más alineadas con el negocio . Proporciona a los ejecutivos del negocio una visión clara de lo que hace IT y su valor asociado. Permite la creación y cambio de servicios de forma incremental , evitando proyectos de larga duración y alto coste.

Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Los principales componentes de una arquitectura orientada a servicios son:

Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Servidores Un servicio de negocio es un componente reutilizable de software, con significado funcional completo, y que está compuesto por: Contrato: especificación de la finalidad, funcionalidad, forma de uso y restricciones del servicio. Interfaz: mecanismo de exposición del servicio a los usuarios. Implementación: debe contener la lógica o el acceso a datos. 





Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Tipos de servicios 







Servicios básicos : pueden estar centrados en datos o en lógica y encapsulan

funcionalidades como cálculos complejos, acceso a datos y reglas complejas de negocio. Servicios intermediarios : servicios adaptadores, façades , etc. Suelen ser servicios sin estado. Servicios de proceso : servicios de negocio que encapsulan la lógica de proceso. Suelen conservar estado y pueden residir en herramientas BPM. t erceros (fuera de la organización). Servicios públicos : servicios accesibles por terceros

Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Repositorio de servicios 



Un repositorio de servicios proporciona facilidades para descubrir servicios y adquirir la información necesaria para su uso, en particular fuera del alcance temporal y funcional del proyecto en el que se crearon. Además de la propia información de contrato, los repositorios pueden proporcionar información acerca de: Localización. Personas de contacto. Restricciones técnicas. Service Level Agreements (SLAs). 







Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Bus de servicios El bus de servicios es el elemento de las arquitecturas SOA que conecta los servicios con sus consumidores y que proporciona: Conectividad: el propósito principal de un bus de servicios es interconectar a los participantes de una arquitectura SOA. Soporte a la heterogeneidad de tecnologías : debe ser capaz de conectar a participantes basados en distintos lenguajes de programación, sistemas operativos, entornos de ejecución y protocolos de comunicación. 





Soporte a la heterogeneidad de paradigmas de comunicación: debe ser capaz de mantener distintos

modos de comunicación (por ejemplo comunicaciones síncronas y asíncronas).

Arquitectura orientada a servicio (SOA) Qué elementos constituyen una arq. orient. a servicios se rvicios Consumidoress de servicios Consumidore Definimos consumidores de servicios como aquellos elementos de una arquitectura SOA que: Pueden descubrir servicios a través de un repositorio. Realizan llamadas a los mismos de acuerdo al contrato y a través del interfaz definido a tal efecto. 



índice 1. 2. 3. 4.

Introducción Arqu Ar quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al Servic Ser vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A)

5. Ge Gest stió ión n de pr proc oces esos os de ne nego goci cio o (BP (BPM) M)

6. Ejempl Ejemploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al 7. Anexos

Gestión de procesos de negocio (BPM) Qué es un BPM BPM 











El concepto Business Process Management (BPM) se aplica tanto desde un punto de vista tecnológico como de gestión. Desde una perspectiva de gestión es un enfoque estructurado que emplea métodos, políticas y métricas para gestionar y optimizar de manera continua las actividades y procesos de una organización. Desde el punto de vista tecnológico, agrupa una serie de herramientas software para el modelado, ejecución y monitorización de los procesos de negocio. Estandariza las interfaces entre componentes tecnológicos, reduce los costes de integración de los sistemas, y provee de lógica de negocio a nivel de proceso interconectando servicios reutilizables. Permite encadenar los procesos para ganar en eficiencia y asegurar la mejora continua de los mismos. Permite la modificación rápida en función de la demanda cambiante y reduce los

Gestión de procesos de negocio (BPM) Qué problemática solucionan los BPMs Retos 







Solucionar el problema de la distribución de procesos en múltiples aplicaciones construidas sobre diversas plataformas tecnológicas. Traducir la lógica de negocio de una organización definiendo sus flujos de interacciones manuales y automáticas de forma completa. Dotar de dinamismo, respondiendo a la demanda de los clientes y a los cambios en las condiciones de mercado. Soportar la larga duración , una instancia de un proceso puede permanecer activa durante meses o incluso años.

Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Soluciones Una suite BPM debe dar soporte al modelado, ejecución y monitorización de procesos.

Expertos funcional

Expertos técnico

Usuarios

Expertos negocio

Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Soluciones Un proceso consta de diversas tareas ejecutadas en un flujo controlado:

Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Modelado de procesos Las soluciones BPM de modelado de procesos deben proveer a los expertos funcionales de por ejemplo: Capacidad para capturar procesos ya existentes de manera estructurada mediante algún tipo de notación (e.g. BPMN) que permita representar las relaciones existentes entre distintos departamentos y/o sistemas involucrados en los mismos. Capacidad para definir nuevos procesos , o realizar modificaciones sobre los ya existentes utilizando la misma notación que en el caso anterior. ), Simulación de parámetros de proceso (tiempo de ejecución, costes, throughput ), en función de las variables independientes del mismo. Automatización de la documentación del proceso modelado en formato fácilmente exportable. Plantillas de procesos predefinidos . 









Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Modelado de procesos Desde el punto de vista de los expertos técnicos, las soluciones BPM de modelado de procesos deben proveer por ejemplo de: Facilidades para agilizar la importación y exportación de modelos analíticos creados por expertos funcionales a modelos aplicativos ejecutables. Capacidades de control de flujo (e.g. instanciación de subprocesos, toma de decisiones en base a reglas predefinidas). Soporte a eventos. Gestión de excepciones. Definición de alarmas. Adecuación a lenguajes estándares de definición de procesos como BPEL. 











Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Ejecución de procesos Habitualmente, un motor de ejecución de procesos: Ofrece diversos mecanismos de invocación de procesos de manera síncrona , por ejemplo vía web services (publicando el WSDL), RMI. Ofrece diversos mecanismos de invocación de procesos de manera asíncrona, por ejemplo vía colas (IBM MQSeries, JMS), recepción de emails. Permite la invocación de procesos desde otros procesos (subprocesos). Hace posible la definición de transacciones (definición de nodos o conjuntos de nodos de un proceso como recursos XA). Permite el versionado de procesos. Tiene en cuenta la escalabilidad (e.g. posibilidad en crecimiento en número de usuarios y recursos), el rendimiento (e.g. permite la ejecución de miles de procesos diferentes de manera concurrente) y la fiabilidad (e.g. soluciones 24x7). 











Gestión de procesos de negocio (BPM) Cómo se integra un BPM en una arq. tec. empresarial Monitorización Monitorizaci ón de procesos La monitorización de procesos permite obtener información de negocio (Business  Activity Monitoring , BAM) y técnica, con el fin de identificar patrones de utilización, situaciones de riesgo, indicadores de desempeño, etc. Además del almacenamiento y agregación de datos a partir de key performance  indicators (KPIs), las soluciones de monitorización deben tener en cuenta: La usabilidad de la aplicación de consulta para expertos de negocio. El perfilado según tipos de usuarios. Los métodos de envío de alertas (e.g. email). Los mecanismos de captura de información, ofreciendo la capacidad de procesar datos generados por diversas fuentes, incluidas aquéllas ajenas al propio BPM (e.g. otras aplicaciones no BPM). El rendimiento de la solución, minimizando el impacto en la escalabilidad y consumo de recursos en entornos de producción. 





índice 1. 2. 3. 4. 5.

Introducción Arqu Ar quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al Servic Ser vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM))

6. Eje Ejempl mplo o de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al

7. Anexos

índice 1. 2. 3. 4. 5. 6.

Introducción Arqu Ar quititec ectu tura ra tec tecno noló lógi gica ca emp empre resa saririal al Servic Ser vicios ios de de una arqui arquitec tectur turaa empre empresar sarial ial en en ejecuc ejecución ión y desar desarrol rollo lo Arqu Ar quititec ectu tura ra or orie ient ntad adaa a serv servic icio io (SO (SOA) A) Gest Ge stió iónn de de pro proce ceso soss de de neg negoc ocio io (B (BPM PM)) Ejempl Eje mploo de arq arquit uitect ectura ura de refe referen rencia cia emp empres resari arial al

7. Anexos

Anexos Referencias 













ISO 12207 (http://www.12207.com/). The Open Group Architecture Framework (http://www.opengroup.org/). OASIS Reference Model for Service Oriented Architecture (http://www.oasisopen.org/committees/tc_cat.php?cat=soa). Enterprise SOA: SOA: Service-Oriented Architecture Best Best Practices. Dirk Krafzig, Karl Karl Banke, Banke, Dirk Dirk Slama. Slama. Prenti Prentice ce Hall Hall PTR. PTR. Novem November ber 09, 2004. 2004. ISBN ISBN 0131465759. IBM SOA (http://www-306.ibm.com/softwar (http://www-306.ibm.com/software/solutions/soa/). e/solutions/soa/). BEA SOA (http://www.bea.com/framework.jsp?CNT=index.htm&FP=/content/solutions/soa/). Oracle SOA (http://www.oracle.com/technolo (http://www.oracle.com/technologies/soa/index.html). gies/soa/index.html).

Alberto Otero García [email protected]

everis.com

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF