This post is part of a series. Click here for the ‘home page’
According to OASIS, the execution context of a service interaction is the set of infrastructure elements, process entities, policy assertions and agreements that are identified as part of an instantiated service interactionThe execution context is the foundation of any successful service interaction because:
- It is a collection of all the agreements in place for a given service interaction (e.g. semantics, protocols, policies etc).
- It allows the consumers and providers to distinguish between different instances of the same service.
- It allows providers and consumers to identify each other.
- It provides a mechanism for policy enforcement.
- It provides a mechanism for managing state (yes I know the theory says that services should be stateless but as with everything in technology – compromises sometimes have to be made)
- It provides a context for interpreting data. For example, Amazon provides a ‘recommended books’ feature. A list of recommended books is meaningless unless you log in and tell Amazon who you are. Only then, does the data have meaning to you, the consumer.
It’s also noteworthy that:
An execution context often evolves during a service interaction. The set of infrastructure elements, the policies and agreements that apply to the interaction, may well change during a given service interaction. For example, at an initial point in an interaction, it may be decided by the parties that future communication should be encrypted. As a result the execution context also changes – to incorporate the necessary infrastructure to support the encryption and continue the interaction.”