Fulfillment Orchestration Functional Component

id EAID 95C0EF66 86C0 470e 8219 7F00608F9B05
Figure 1. Fulfillment Orchestration Functional Component Model

Purpose

The Fulfillment Orchestration functional component orchestrates the delivery of various Orders across one or more Fulfillment functional components in order to fulfill the service orders (such as the provision of VMs, modification of resource allocation, addition/removal of capacity, patches installation, modification of access rights, etc.) that are triggered by:

  • Release Composition to deploy new Product Releases received from the Integrate value stream

  • Order (e.g., end-user request from the portal, application access request, password reset, etc. )

  • Change (e.g., provision of the test environment, deployment of bug-fix, deployment of the patch, etc. )

  • Pipeline (for continuous deployment)

The Fulfillment Orchestration may orchestrate through multiple internal and/or external Fulfillment functional components to automatically execute a fulfillment process workflow. To be able to engage the fulfillers, the Fulfillment Orchestration functional component needs to:

  • Manage a registry of the available fulfillers; this registry captures:

    • What each fulfiller does (capabilities)

    • How to engage each fulfiller (where they are located and how to invoke them)

  • Take the released Offer template deployment recipe from Release Composition and update the change request (for fulfillment) and also the Desired Product Instance data object that represents the service model in its preconfigured state

  • Get the resources allocated that are required to fulfill the service order

  • Update the resource pool inventory as resources are provisioned

  • Based on the new or updated Desired Product Instance and the result of fulfilling the Change (Change data object), inform the Configuration functional component (if needed)

The Fulfillment Orchestration functional component can be used via two paradigms:

  • Consumer-driven

    In this paradigm, a consumer request results in a bound catalog item that is broken down into the necessary Change Orders needed to fulfill the originating request; typically, this is for delivering the consumption of service from an existing product/service system that has previously been deployed.

  • Pipeline-driven

    In this paradigm, the Fulfillment Orchestration functional component is directly engaged by the Pipeline functional component; this paradigm is used when the Development team is ready to transition a product into the production environment and wants to deploy a service system for the product.

The Fulfillment Orchestration functional component supports the value streams:

Functional Criteria

The Fulfillment Orchestration functional component:

  • Shall orchestrate the implementation of the various Change Orders across the fulfillment systems, or track and manage manual change task implementation to fulfill the Orders

  • Update the resource inventory as resources are ordered

  • May manage a registry of the available fulfillers to include what each fulfiller does (capabilities) and how to engage each fulfiller (where they are located and how to invoke them)

  • May take the bound Offer template from the Change functional component and generate both the relevant Fulfillment Orders to realize/fulfill the originating consumer request and the Desired Product Instance data object, which represents the system in its preconfigured state

  • Shall get the technology resources (such as license, IP, VMs, etc.) allocated to fulfill the service order from the Resource functional component

  • Shall select the appropriate fulfillment mechanism

  • Shall coordinate if multiple fulfillment mechanisms are needed, and manage the dependencies required to fulfill the digital service orders

  • Shall create a Desired Product Instance based on a template in the Product Release package if the Order is a request for a new product system

  • Should modify the associated Desired Product Instance for all consumer Subscriptions to the service in order to track service delivery

  • Shall provide the Subscription status to the Order functional component

  • Shall create the Actual Product Instance as a copy of the Desired Product Instance within the Configuration functional component

  • May update the resource pool inventory as resources are provisioned

  • May trigger the Order functional component to order the appropriate dependent services, to fulfill a service order

  • Can create a new Service Monitor or modify an existing one for the service provided in the Order as part of fulfillment

  • Can create/route an Order to an external service provider to fulfill a part or all of the service

  • Can create an Order if a given Digital Product is to be delivered as a service from another product system (enabling product)

  • Can trigger fulfillment automation systems to enable fulfillment of (parts of) the service