System architecture for business process development and execution with introspection and generic components
First Claim
Patent Images
1. A system for designing and executing processes, said system comprising:
- an introspection module in a generic introspection framework that automatically generates a catalog of generic components by introspecting a set of exposed application programming interfaces (APIs) of a plurality of heterogeneous applications created in different programming languages and transforming a plurality of implementation-specific components of said heterogeneous applications into the generic components of said catalog by binding identifiers of the generic components with identifiers of the implementation-specific components wherein the catalog contains a series of entries in a binding table automatically created during the introspection of the APIs, each entry representing a generic component which, when invoked, is bound to at least one of the implementation-specific components of said heterogeneous applications upon execution of the processes, the catalog further containing a module comprising the generic components associated with a folder comprising an XML file when the implementation-specific components are saved in the catalog as the generic components;
an implementation module that includes procedures to access the APIs and maps the implementation-specific components to the generic components by using its own introspection mechanism and sends the mapped implementation-specific components to the generic introspection framework;
a component manager coupled to the introspection module and configured to manage said catalog automatically generated by the introspection module by defining and organizing the generic components in said catalog; and
a process designer coupled to the component manager and configured to;
select at least one of the generic components from said catalog managed by the component manager; and
graphically construct a process definition for the processes that includes a series of graphically represented activities linked by one or more transitions and associated with abstract roles specified for the activities wherein at least one activity of said process definition invokes the selected generic component from said catalog;
whereby a single process is assembled from the implementation-specific components of the different programming languages, the implementation-specific components being compiled modular routines of the heterogeneous applications that have been previously created in different programming languages; and
a repository for storing the process definition; and
one or more process engines that execute said process definition to instantiate a process instance, wherein the process instance interacts with the plurality of heterogeneous applications by invoking the generic components in said catalog and wherein the process instance integrates the plurality of heterogeneous applications into the single process by invoking services from the plurality of heterogeneous applications during execution of the activities of said processes;
wherein during execution of the process instance, the compiled modular routines of the heterogeneous applications are invoked in order to complete the activities of said process instance.
3 Assignments
0 Petitions
Accused Products
Abstract
A system for designing a business process includes an introspection module that transforms implementation-specific components into generic components. The implementation-specific components are associated with a number of implementations. A component manager defines the generic components. A process designer selects at least one of the generic components from the component manager, and generates a business process that uses the at least one of the generic components.
-
Citations
20 Claims
-
1. A system for designing and executing processes, said system comprising:
-
an introspection module in a generic introspection framework that automatically generates a catalog of generic components by introspecting a set of exposed application programming interfaces (APIs) of a plurality of heterogeneous applications created in different programming languages and transforming a plurality of implementation-specific components of said heterogeneous applications into the generic components of said catalog by binding identifiers of the generic components with identifiers of the implementation-specific components wherein the catalog contains a series of entries in a binding table automatically created during the introspection of the APIs, each entry representing a generic component which, when invoked, is bound to at least one of the implementation-specific components of said heterogeneous applications upon execution of the processes, the catalog further containing a module comprising the generic components associated with a folder comprising an XML file when the implementation-specific components are saved in the catalog as the generic components; an implementation module that includes procedures to access the APIs and maps the implementation-specific components to the generic components by using its own introspection mechanism and sends the mapped implementation-specific components to the generic introspection framework; a component manager coupled to the introspection module and configured to manage said catalog automatically generated by the introspection module by defining and organizing the generic components in said catalog; and a process designer coupled to the component manager and configured to; select at least one of the generic components from said catalog managed by the component manager; and graphically construct a process definition for the processes that includes a series of graphically represented activities linked by one or more transitions and associated with abstract roles specified for the activities wherein at least one activity of said process definition invokes the selected generic component from said catalog; whereby a single process is assembled from the implementation-specific components of the different programming languages, the implementation-specific components being compiled modular routines of the heterogeneous applications that have been previously created in different programming languages; and a repository for storing the process definition; and one or more process engines that execute said process definition to instantiate a process instance, wherein the process instance interacts with the plurality of heterogeneous applications by invoking the generic components in said catalog and wherein the process instance integrates the plurality of heterogeneous applications into the single process by invoking services from the plurality of heterogeneous applications during execution of the activities of said processes; wherein during execution of the process instance, the compiled modular routines of the heterogeneous applications are invoked in order to complete the activities of said process instance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer implemented method for designing and executing processes, said method comprising:
-
automatically generating a catalog of generic components in a generic introspection framework by introspecting a set of exposed application programming interfaces (APIs) of a plurality of heterogeneous applications implemented in multiple different programming languages and transforming implementation-specific components of the plurality of heterogeneous applications into the generic components of said catalog by binding identifiers of the generic components with identifiers of the implementation-specific components, wherein the catalog contains a series of entries in a binding table automatically created during the introspection of the APIs, each entry representing a generic component which, when invoked, is bound to at least one of the implementation-specific components of said heterogeneous applications upon execution of the processes, the catalog further containing a module comprising the generic components associated with a folder comprising an XML file when the implementation-specific components are saved in the catalog as the generic components; providing an implementation module that includes procedures to access the APIs and maps the implementation-specific components to the generic components by using its own introspection mechanism and sends the mapped implementation-specific components to the generic introspection framework; selecting at least one of the generic components from the catalog; graphically constructing one or more processes definitions for the processes, each process definition including a series of graphically represented activities linked by one or more transitions and associated with abstract roles specified for the activities wherein at least one activity of said processes invokes the at least one generic component selected from said catalog, whereby a single process is assembled from the implementation-specific components of the multiple different programming languages, the implementation-specific components being compiled modular routines of the heterogeneous applications that have been previously created in the multiple different programming languages; and executing the constructed one or more process definitions at one or more process engines in order to instantiate a process instance, wherein the process instance interacts with the plurality of heterogeneous applications by invoking the generic components of said catalog and wherein the process instance integrates the plurality of heterogeneous applications into the single process by invoking services from the plurality of heterogeneous applications during execution of the activities of said processes. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer having one or more processors to design and execute processes, wherein instructions executed by the one or more processors cause the computer to perform the steps of:
-
automatically generating a catalog of generic components in a generic introspection framework by introspecting a set of exposed application programming interfaces (APIs) of a plurality of heterogeneous applications implemented in multiple different programming languages and transforming implementation-specific components of the plurality of heterogeneous applications into the generic components of said catalog by binding identifiers of the generic components with identifiers of the implementation-specific components, wherein the catalog contains a series of entries in a binding table automatically created during the introspection of the APIs, each entry representing a generic component which, when invoked, is bound to at least one of the implementation-specific components of said heterogeneous applications upon execution of the processes, the catalog further containing a module comprising the generic components associated with a folder comprising an XML file when the implementation-specific components are saved in the catalog as the generic components; providing an implementation module that includes procedures to access the APIs and maps the implementation-specific components to the generic components by using its own introspection mechanism and sends the mapped implementation-specific components to the generic introspection framework; selecting at least one of the generic components from the catalog; graphically constructing one or more processes definitions for the processes, each process definition including a series of graphically represented activities linked by one or more transitions and associated with abstract roles specified for the activities wherein at least one activity of said processes invokes the at least one generic component selected from said catalog, whereby a single process is assembled from the implementation-specific components of the multiple different programming languages, the implementation-specific components being compiled modular routines of the heterogeneous applications that have been previously created in the multiple different programming languages; and executing the constructed one or more process definitions at one or more process engines in order to instantiate a process instance, wherein the process instance interacts with the plurality of heterogeneous applications by invoking the generic components of said catalog and wherein the process instance integrates the plurality of heterogeneous applications into the single process by invoking services from the plurality of heterogeneous applications during execution of the activities of said processes.
-
Specification