Patent ID: 7519976

Claim:
A system that includes a computer and a processor, and that provides a plug-in framework for integrating business processes, comprising: a process engine operating on the computer that includes a workflow stored and executing thereon, wherein the process engine allows applications to interact with business processes, and triggers notifications to the business processes when events occur within the workflow; and a plug-in framework operating on the computer that provides an interface for the applications to interact with the process engine, and that allows an existing workflow to be dynamically modified by plug-ins at run-time, wherein said plug-in framework includes a database store that includes plug-in configuration information and allow plug-ins to be deployed as session beans to the plug-in framework, a plurality of plug-ins defined by the database store as session beans, for use with the process engine, that when packaged and deployed to the process engine as a plug-in at run-time are automatically discovered by the plug-in framework and dynamically modify the workflow process that is currently running on the process engine, by registering listeners for specific notifications, and then executing a workflow functionality when the specific notifications are triggered, and wherein each plug-in communicates with the process engine using context passing to provide an instance of the plug-in component run-time interface and pass the context to that instance, to allow the plug-in to introduce plug-in instance data into the current workflow run-time, a plug-in manager that provides meta-data about deployed plug-ins including the deployed session beans, enables access to plug-in design and run-time components, registers the plug-ins with the workflow, handles the notifications to and from the plug-ins, and provides loading and unloading of plug-ins as necessary to dynamically modify the workflow, and a plug-in API that enables design, development and configuration of the plug-ins and the managing of run-time interactions between the process engine and the deployed plug-ins.