Otro aspecto clave del Artefacto: Modelo de servicio que debe desarrollarse durante la
especificación es la captura de las dependencias entre servicios. Como parte del modelo de servicio, se capturan de forma natural una serie de
dependencias. Éstas pueden ser tan obvias como la relación entre un servicio y su especificación, o más complejas, como
la relación lógica entre dos servicios independientes ya que ambos implementan la misma especificación. Estas
dependencias (descritas en Artefacto: Modelo de servicio e Informe: Dependencias de servicio) son importantes para entender la posibilidad de
desplegar un servicio como unidad autónoma y afectará a su evolución en el tiempo a medida que las dependencias se
vuelvan restricciones en posibilidad del servicio de cambiar.
Las dependencias de servicio describen las relaciones entre servicios que surgen en el contexto más amplio de cómo se
utilizarán. Cuando un servicio se forma a partir de una composición de otros servicios, el servicio componente depende
de los servicios compuestos. Cuando se utilizan servicios en el contexto de un proceso empresarial, existe una
dependencia relacionada con el proceso que surge de la secuencia inherente de pasos en el proceso empresarial que dicta
el orden en que se utilizarán los servicios.
-
Dependencia compuesta/dependencias funcionales que surgen de la composición de varios servicios.
-
-
Ejemplo: Reservar vehículo dependerá de Comprobar tarifas y Realizar reserva para su funcionalidad
-
Dependencia temporal en la que hay una condición previa o posterior o o un requisito de proceso que deberá
tenerse en cuenta en composiciones o coreografías.
-
-
Dependencia de condición previa: por ejemplo, otra invocación de servicio debe haberse ejecutado
correctamente antes de que la invocación actual pueda iniciar su ejecución.
-
Dependencia de procesos: por ejemplo, se necesita otra invocación de servicio para llevar a cabo la
ejecución correcta del servicio actual.
-
Dependencia de condición posterior: aparece en casos en los que un servicio necesita otra invocación
de servicio tras su ejecución.
Estas dependencias a menudo pueden formar parte del proceso de decisiones que un cliente de servicio debe atravesar en
la elección de reutilización de un servicio, particularmente si hay varias implementaciones entre las que elegir.
Los tipos de dependencias/asociaciones en el modelo de servicio que son importantes se enumeran a continuación.
-
La relación entre un servicio y los proveedores de servicio que implementa.
-
La relación entre un servicio y la especificación de servicio que implementa.
-
La relación entre un servicio y las especificaciones de servicio que necesita.
-
La relación entre un servicio y cualquier canal de servicio que lo conecte con otros servicios y, por lo tanto, el
servicio en el otro extremo del canal.
-
La relación entre un servicio y cualquier partición de servicio en la que aparezca el servicio.
Es por tanto importante que todas las especificaciones de servicio sean completas, no sólo con respecto a las
operaciones y los mensajes que proporciona sino también con dependencias como las interfaces necesarias para
operaciones de devolución de llamada. El informe Dependencias de servicio proporciona una visión general de las dependencias
importantes para el modelo de servicio.
|