Intermediate Milestones Dependencies
For a plan item to reach its completion state, the status of all intermediate milestones must be in COMPLETE
state.
For example, if a plan item (PI-1) has a sequence of START-M1-END, both M1 and END milestones must must be in COMPLETE
state for PI-1's status to be marked as COMPLETE
. Otherwise, the plan item status remains in the EXECUTION
state. This ensures that all necessary steps are fully completed before a plan item is considered finished.
The actual fulfillment of a product is done by orchestrating the back-end process components. By default, any process component has two milestones:
- START
- END
These milestones represent the starting and the end parts of it. There is a direct dependency between the process components due to sequencing of the products in the catalog. This dependency is of type END-to-START, or once a process component is completely run, then only the dependent process component can start its execution as shown in the following figure:
The process component EP_DEVICE_PROV can start only when EP_SERVICE_PROV is completed and EP_TARIFF_PROV can start only when EP_DEVICE_PROV is completed.
TIBCO Order Management also supports the following complex types of dependencies between the running process components:
- Milestone to START Dependency
- END to Milestone Dependency
- Milestone to Milestone Dependency
- Milestone without Dependency
- Conditional Milestones Dependency
These dependencies are supported with the implementation of Intermediate Milestones within the process component in addition to the START and END.
The functionality provides a base behavior that permits plan items to be sequenced corresponding to products related by MDO when:
- MDO-related product instances have no LINKID defined.
- MDO-related product instances have LINKID defined and have the same LINKID value.
This feature can extend the base behavior and sequence additionally plan items corresponding to products related by MDO when:
- MDO-related parent product instance has LINKID defined and child product instances have no LINKID defined.
- MDO-related parent product instance has no LINKID and child product instances have a LINKID defined.
An MDO-related parent product instance can relate to multiple child product instances using base and extended cases so that the following use cases are possible:
- An MDO-related parent product that has a LINKID defined and is related to a child instance that has the same LINKID defined can be also related to MDO-related child product instances that have no LINKID defined.
- An MDO-related parent product that has no LINKID defined and is related to a child product instance that has no LINKID defined can be also related to MDO-related child product instances that have a LINKID defined.
For a plan item to reach its completion state, the status of all intermediate milestones must be in COMPLETE
state.
For example, if a plan item (PI-1) has a sequence of START-M1-END, both M1 and END milestones must must be in COMPLETE
state for PI-1's status to be marked as COMPLETE
. Otherwise, the plan item status remains in the EXECUTION
state. This ensures that all necessary steps are fully completed before a plan item is considered finished.