Customization of process logic in a software system
View Patent ↗The present invention facilitates customization of a process in a software system without modifying the process source code. The process can be customized by customizing a metadata description of the process, by handing the process agent a customized service identifier or by handling an event propagated by the process agent or its service factory.
1. A method of customizing a software implemented business process, comprising:
providing an agent that instantiates and calls a service, based on a service identifier in response to a request to perform an operation, wherein the service identifier is stored as service identifier metadata in a metadata store associated with the service, and wherein the business process includes a service factory invoked by the agent, wherein the service factory is configured to access the metadata and call the service identified by the service identifier; and
customizing the service identifier metadata, used by the agent, to identify a customized service by storing a delta value indicative of the customized service identifier metadata in a customization store, and when the agent is subsequently invoked, customizing the service identifier with the delta value prior to the service factory accessing the metadata.
2. The method of claim 1 wherein storing a delta value comprises:
storing a delta value indicative of adding a service identifier to the metadata.
3. The method of claim 1 wherein storing a delta value comprises:
storing a delta value indicative of a change to an existing service identifier in the metadata.
4. The method of claim 1 wherein the business process includes a service factory invoked by the agent and wherein customizing comprises:
configuring the service factory to propagate an event when it is invoked by the agent; and
providing an event handler configured to return a service identifier to the service factory in response to the event.