Mostrando entradas con la etiqueta SOA. Mostrar todas las entradas
Mostrando entradas con la etiqueta SOA. Mostrar todas las entradas

lunes, 24 de octubre de 2011

Identificación de servicios usando SOMA

La metodología define un conjunto de técnicas complementarias para identificación de servicios: descomposición de dominio, análisis de activos existentes, y modelado de metas de servicio (goal service modeling)

Aplicamos estas tres técnicas a nuestro caso de estudio Vehialpes, y así formamos un grupo de servicios candidatos, los cuales componen nuestro portafolio de servicios candidatos.

Descomposición de Dominio:


Esta es una técnica TOP-DOWN, en la cual se descompone el dominio de negocio en áreas funcionales y subsistemas, hasta llegar a procesos, subprocesos y tareas.

Decidimos omitir la fase de análisis de áreas funcionales y apoyarnos en los modelos de proceso de negocio existentes . De esta manera, identificamos los siguientes servicios agrupados según el proceso del cual se originan:

  • Proceso de Garantía
    • Revisar cumplimiento
    • Generar factura consumibles
    • Generar orden de garantía
    • Ingresar vehiculo
    • Asginar orden de revisión
    • Solicitar consumibles
    • Entregar consumibles
    • Entregar vehículo
    • Generar informe de garantía
  • Proceso de mantenimiento
    • Asignar cita
    • Ingresar vehículo*
    • Generar orden de mantenimiento*
    • Asignar mecánico*
    • Registrar mantenimiento
    • Solicitud de parte *
    • Registrar entrega de partes *
    • Facturar mantenimiento *
    • Procesar pago
    • Registrar mantenimiento
    • Generar orden de entrega
    • Hoja de vida del vehículo
Los servicios candidatos marcados con * son servicios comunes a ambos procesos. Evidentemente esta técnica ayuda a identificar servicios comunes a varios procesos. De esta manera decidimos eliminar los servicios redundantes, por lo que nuestro portafolio de servicios en esta etapa, es el siguiente:

Portafolio de Servicios tras análisis TOP-DOWN mediante la técnica de descomposición de domino:
  • Revisar cumplimiento
  • Generar factura consumibles
  • Generar orden de garantía
  • Ingresar vehículo
  • Asginar orden de revisión
  • Solicitar consumibles
  • Entregar consumibles
  • Entregar vehículo
  • Generar informe de garantía
  • Asignar cita
  • Registrar mantenimiento
  • Procesar pago
  • Registrar mantenimiento
  • Generar orden de entrega
  • Hoja de vida del vehículo
Continuamos identificando servicios ahora utilizando al técnica BOTTOM-UP de análisis de activos existentes 

Análisis de Activos Existentes:

Basados en el enunciando del problema y las discusiones en clase, identificamos las siguientes aplicaciones existentes en Vehialpes, y analizamos su funcionalidad a muy alto nivel
  • Aplicación para el control de importación
    • Manejo de tramites importacion de vehiculos
  • Aplicación manejo de garantía
    • Validación de garantía
    • Generar orden de pago de garantía
  • Aplicación utilizada en el callcenter
    • Quejas y reclamos
    • Redirección de quejas
    • Actualización de datos de cliente
  • Aplicación de inventarios y repuestos
    • Alimentar base de datos partes en stock
    • Consultas y reportes de inventario de repuestos
  • CRM
    • Manejo de información de clientes
    • Quejas y reclamos
De la funcionalidad de las aplicaciones existentes decidimos incluir en el portafolio de servicio los siguientes servicios adicionales:

  • Manejo inventario de partes
  • Manejo información cliente
  • Generar orden de pago taller
Una de los aspectos a mencionar es que al utilizar esta tecnica nos dimos cuenta que habiamos pasado por alto servicios necesarios para el manejo de nuestros procesos, e identificamos la necesidad de generar una orden de pago al taller cuando se presenta una reclamacion de garantia

Por ultimo, aplicamos la tercera técnica de la metodología SOMA: Goal Service Modeling.

Para esta técnica decidimos utilizar como meta de negocio la fidelizacion de clientes, descompusimos esta meta hasta llegar a un servicio para utilizar en nuestra aplicacion web, de la siguiente manera:

Meta: Fidelización de clientes
Submeta: Aumentar el uso de talleres autorizados

Descomponiendo esta submeta en: Fomentar la comunicación entre VehiAlpes y red de talleres.

En este punto alcanzamos el "aha factor", al encontrar que esta submeta la podemos alcanzar ofreciendo un servicio de hoja de vida del vehículo. Capacidad que podemos ofrecer mediante una aplicación de hoja de vida para dispositivos móviles, exponiendo un servicio web el cual adicionamos a nuestro portafolio de servicios.

Nuestro catalogo de servicio tras aplicar las tres técnicas es:
  • Revisar cumplimiento
  • Generar factura consumibles
  • Generar orden de garantía
  • Ingresar vehículo
  • Asginar orden de revisión
  • Solicitar consumibles
  • Entregar consumibles
  • Entregar vehículo
  • Generar informe de garantía
  • Asignar cita
  • Registrar mantenimiento
  • Procesar pago
  • Registrar mantenimiento
  • Generar orden de entrega
  • Hoja de vida del vehículo
  • Servicio consulta dispositivos móviles
  • Manejo inventario de partes
  • Manejo información cliente
  • Generar orden de pago taller

domingo, 16 de octubre de 2011

Integración de Aplicaciones Empresariales a través de Patrones de Mensajería

La creciente interconexión entre los sistemas de información y la integración de aplicaciones se ha convertido en un importante tema que va más alla de los aspectos técnicos. Las consecuencias financieras y de negocios de integración de aplicaciones puede ser inmensa. La comunidad informática está generalmente más interesada ​​en el desarrollo e implementación de arquitecturas empresariales que en los mecanismos de integración entre las aplicaciones.  En esta ocasión nos enfocamos en la integración a través de mensajes. La mensajería es la clave para la integración y es el enfoque predominante en los servicios web en los próximos años.

La mensajería es una tecnología que permite la comunicación entre programas con una entrega confiable. La comunicación entre programas se hace mediante el envío de paquetes de datos llamados mensajes a través de canales que son las vías lógicas que se conectan los programas y transmiten los mensajes.

Las funciones de mensajería son provistos por un sistema de software independiente denominado sistema de mensajería o middleware orientado a mensajes (MOM) por medio de estándares de integración como RPC, CORBA o DCOM. Un sistema de mensajería gestiona mensajes de la forma en que un sistema de base de datos maneja la persistencia de datos. Al igual que un administrador debe rellenar la base de datos con el esquema de los datos de una aplicación, el administrador debe configurar el sistema de mensajería con los canales que definen las rutas de comunicación entre las aplicaciones. 

Orquestación de Procesos a través de Mensajería

Los servicios Web son apoyados por una pila de estándares de Internet (HTTP, XML, SOAP, WSDL y UDDI), que debía ser complementada por una capa de procesos, ya que son escenarios de negocio basados en procesos. En el nivel de ejecución, estos modelos se utilizan para la orquestación de procesos. Orquestación, en este contexto describe la composición de los objetos de negocio en un flujo de proceso. En detalle, se define una compleja interacción entre los objetos de negocio, incluyendo la lógica de negocio para la ejecución de las interacciones.

Sin objetos de negocio a orquestar, el contexto general entre los pasos del proceso se perdería. Los colaboradores del proceso deben tener la posibilidad de acceso a datos y aplicaciones de una manera fácil y segura. Coreografías por otro lado definen la colaboración entre las partes que interactúan. Tanto la orquestación como coreografías en la interacción  de objetos de procesos de negocio se puede lograr mediante la implementación de funciones de un sistema de mensajería a nivel de middleware.

 
Patrón de Orquestación de Procesos

Como ejercicio académico y partiendo de la notación de coreografía de BPMN 2.0 se diseñó un nuevo patrón de orquestación de procesos. Luego se modeló el proceso con BPEL integrando OpenESB.

Continuando con el modelamiento de la arquitectura empresarial incorporamos patrones de mensajería a nivel de integración que nos permita posteriormente incorporar o diseñar patrones de mensajeria SOA.

 
Modelo Proceso BPEL: Solicitud de Garantía