NIH | National Cancer Institute | NCI Wiki  

Contents of this Page
Summary
Description of the profile

Service orchestration and choreography allows both application developers and non-developers to discover service "building blocks" that can be composed dynamically to provide business capabilities. Special cases include the orchestration of multiple services for a distributed query, or for a transactional workflow. Service orchestration and choreography will leverage static and behavioral semantics from the Semantic Infrastructure 2.0.

The Semantic Infrastructure provides the behavioral semantics required for dynamic composibility of services or generation of distributed queries. This includes runtimenegotiation to determine composibility of services based on service capabilities and constraints.

Capabilities
Requirements traceability

Requirement

Source

Capability

Service orchestration and choreography allows both application developers and non-developers to discover service "building blocks" that can be composed dynamically to provide business capabilities. Special cases include the orchestration of multiple services for a distributed query, or for a transactional workflow. Service orchestration and choreography will leverage static and behavioral semantics from the Semantic Infrastructure 2.0. The Semantic Infrastructure provides the behavioral semantics required for dynamic composibility of services or generation of distributed queries. This includes runtime contract discovery and negotiation to determine composibility of services based on service capabilities and constraints. Another use case is dynamic retrieval and enforcement of the policies that are in effect for a service interaction in the areas of logging, validations, data transformation, or routing. This information can be used either during the design of the orchestration or during the execution of the defined flow. Link to use case satisfied from caGRID 2.0 Roadmap: Federated query over the TCGA data and other data sets is performed using a service orchestration.

Semantic Infrastructure Requirements::caGRID 2.0 Platform and Terminology Integration::Service Orchestration and Choreography

serviceInteractionModel,

serviceInteractionModel
Description

Service Composition Model create, destroy, edit, maintain.

Service orchestration and choreography allows both application developers and non-developers to discover service "building blocks" that can be composed dynamically to provide business capabilities. Special cases include the orchestration of multiple services for a distributed query, or for a transactional workflow. Service orchestration and choreography will leverage static and behavioral semantics from the Semantic Infrastructure 2.0.

The Semantic Infrastructure provides the behavioral semantics required for dynamic composibility of services or generation of distributed queries. This includes runtime negotiation to determine composibility of services based on service capabilities and constraints.

Composition of services is the act of aggregating or “composing” a single service from one or more other services.

Interacting with Services has the following architectural implications on mechanisms that facilitate service interaction:

  • A well-defined service Information Model that:
  • describes the syntax and semantics of the messages used to denote actions and events;
  • describes the syntax and semantics of the data payload(s) contained within messages;
  • documents exception conditions in the event of faults due to network outages, improper message/data formats, etc.;
  • is both human readable and machine processable;
  • is referenceable from the Service Description artifact.
  • A well-defined service Behavior Model that:
  • characterizes the knowledge of the actions invokes against the service and events that report real world effects as a result of those actions;
  • characterizes the temporal relationships and temporal properties of actions and events associated in a service interaction;
  • describe activities involved in a workflow activity that represents a unit of work;
  • describes the role(s) that a role player performs in a service-oriented business process or service-oriented business collaboration;
  • is both human readable and machine processable;
  • is referenceable from the Service Description artifact.
  • Service composition mechanisms to support orchestration of service-oriented business processes and choreography of service-oriented business collaborations such as:
  • Declarative and programmatic compositional languages;
  • Orchestration and/or choreography engines that support multi-step processes as part of a short-lived or long-lived business transaction;
  • Orchestration and/or choreography engines that support compensating transactions in the presences of exception and fault conditions.
  • Infrastructure services that provides mechanisms to support service interaction, including but not limited to:
  • mediation services such as message and event brokers, providers, and/or buses that provide message translation/transformation, gateway capability, message persistence, reliable message delivery, and/or intelligent routing semantics;
  • binding services that support translation and transformation of multiple application-level protocols to standard network transport protocols;
  • auditing and logging services that provide a data store and mechanism to record information related to service interaction activity such as message traffic patterns, security violations, and service contract and policy violations
  • security services that abstract techniques such as public key cryptography, secure networks, virus protection, etc., which provide protection against common security threats in a SOA ecosystem;
  • monitoring services such as hardware and software mechanisms that both monitor the performance of systems that host services and network traffic during service interaction, and are capable of generating regular monitoring reports.
  • A layered and tiered service component architecture that supports multiple message exchange patterns (MEPs) in order to:
  • promote the industry best practice of separation of concerns that facilitates flexibility in the presence of changing business requirements;
  • promote the industry best practice of separation of roles in a service development lifecycle such that subject matter experts and teams are structured along areas of expertise;
  • support numerous standard interaction patterns, peer-to-peer interaction patterns, enterprise integration patterns, and business-to-business integration patterns.
    Requirements addressed
Overview of possible operations
  • No labels