Method and apparatus for building and running workflow process models using a hypertext markup language
First Claim
1. A computer implemented method for building a workflow or process definition statement from a process definition or workflow statement, respectively, comprising the steps of:
- operating a front end processor to scan in an input code string;
parse said code string to identify lexical tokens; and
, issue modeler input calls based upon said tokens;
operating a modeler responsive to said modeler input calls to build a dynamic process module and restructure the model for easier access; and
operating a back end processor to issue modeler output calls to build output pages, executable as hyperlink text by a web browser, from said module.
1 Assignment
0 Petitions
Accused Products
Abstract
Apparatus and computer implemented method for process modeling using both a web server and a workflow server in process definition. During buildtime, a process definition in the language of some workflow process modeler is fed to transform f(p), which provides a translate process definition into a hypertext markup language (HTML) representation of the workflow process. A user utilizing the facilities of an HTTP server may operate a web browser to request that HTTP server provide the HTML process definition to enable the user to create, or read and modify, the process definition as desired. The result is then fed through an inverse transform f'"'"'(p) to a workflow server in the language of that server, for invocation and execution during runtime of the programs defined during buildtime.
294 Citations
29 Claims
-
1. A computer implemented method for building a workflow or process definition statement from a process definition or workflow statement, respectively, comprising the steps of:
-
operating a front end processor to scan in an input code string;
parse said code string to identify lexical tokens; and
, issue modeler input calls based upon said tokens;operating a modeler responsive to said modeler input calls to build a dynamic process module and restructure the model for easier access; and operating a back end processor to issue modeler output calls to build output pages, executable as hyperlink text by a web browser, from said module. - View Dependent Claims (2)
-
-
3. A method for automating the translation of workflow representations, comprising the steps of
generating a collection of processes defining a business workflow in the language of a workflow representation selected from a first set of workflow representations; -
transforming said collection to a set of hypertext pages representing said processes in the language of a workflow representation selected from a second set of workflow representations; operating a web browser to access said hypertext pages via a web flow server; and selectively editing or executing said processes. - View Dependent Claims (4, 5, 6, 7)
-
-
8. A workflow processing method, comprising the steps of
describing a workflow process in the language of a first workflow process modeler to provide a first process definition; -
translating said first process definition into a hypertext markup representation of said workflow process in the language of a second workflow process modeler; and responsive to a web browser request, selectively providing said hypertext markup representation to a user for access and selective modification. - View Dependent Claims (9, 10, 11)
-
-
12. A workflow processing method, comprising the steps of
describing a workflow process in the language of a first workflow process modeler to provide a first process definition; -
translating said first process definition into a hypertext markup representation of said workflow process; responsive to a web browser request, selectively providing said hypertext markup representation to a user for access and selective modification; inverse translating said hypertext markup representation, selectively as modified, into the language of a second workflow process modeler; invoking and executing said workflow process in accordance with said second workflow process modeler; and wherein the languages of said first workflow process modeler and said second workflow process modeler are dissimilar.
-
-
13. A computer implemented method for building a workflow or process definition statement from a process definition or workflow statement, respectively, comprising the steps of:
-
operating a front end processor to scan in an input code string;
parse said code string to identify lexical tokens; and
, issue modeler input calls based upon said tokens;operating a modeler responsive to said modeler input calls to build a dynamic process module and restructure the model for easier access; operating a back end processor to issue modeler output calls to build output pages from said module; modifying said output pages to generate a modified code string; operating said front end processor, modeler and back end processor to generate from said modified code string a set of modified output pages in the syntax of said input code string; operating a web server responsive to actuation of a first button to invoke said front end processor; and operating said web server responsive to actuation of a second button to execute the workflow process defined by said modified output pages.
-
-
14. A computer implemented process for operating a web flow server and at least one workflow server for defining and executing a workflow process, comprising the steps of:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, identify said language as one of a plurality of languages capable of parsing by said front end processor, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; and operating a back end processor to build from said module objects defining said workflow process in the language of one of a plurality of workflow servers.
-
-
15. A computer implemented process for operating a web flow server and at least one workflow server for defining and executing a workflow process, comprising the steps of:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; operating a back end processor to build from said module objects defining said workflow process in the language of a workflow server; and operating within said front end processor grammars for process, structure, program, location, person, role, organization, level and network node.
-
-
16. A process for executing a workflow process, comprising the steps of:
-
submitting a process language statement of said workflow process; translating said process language statement into an HTML statement of said workflow process; inverse transforming said HTML statement into a modified process language statement of said workflow process; and executing said workflow process in accordance with said modified process language statement.
-
-
17. A process for executing a workflow process, comprising the steps of:
-
submitting a process language statement of said workflow process; translating said process language statement into an HTML statement of said workflow process; modifying said HTML statement of said workflow process; inverse translating said HTML statement into a modified process language statement of said workflow process; and executing said workflow process in accordance with said modified process language statement.
-
-
18. A computer implemented process for operating a web flow server and at least one workflow server for defining and executing a workflow process, comprising the steps of:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; and operating a back end processor to build from said module objects defining said workflow process in the language of a workflow server; said calls including at least one call from the set of calls including build process, build datastructure, build activity, build node settings, build program, build description, build attribute, build organization, build person, build role, build subentity, build connector, build block, build subprocess, and build level.
-
-
19. A computer implemented process for operating a web flow server and at least one workflow server for defining and executing a workflow process, comprising the steps of:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; operating a back end processor to build from said module objects defining said workflow process in the language of a workflow server; operating said front end processor initially to instantiate a process builder object; and
responsive thereto,operating said modeler to create a process object for receiving subsequent attributes. - View Dependent Claims (20, 21, 22)
-
-
23. A method for viewing, editing, translating and executing a workflow process, comprising the steps of
starting a web browser; -
pointing to the URL of a HTTP server hosting a hypertext representation of at least one workflow process; selecting from said browser a workflow process to view, edit or execute; if viewing, then examining the selected process; if editing, then running a script to modify the selected process; if executing, then running a script to transform the selected process from said hypertext representation to a selected workflow server representation selected from a set of a plurality of workflow server representations, and execute said selected process on said selected workflow server.
-
-
24. A workflow server, comprising:
-
a transformation mechanism responsive in a first pass to an input code string representation of a workflow process represented in one of a plurality of languages capable of parsing by a front end to provide an intermediate workflow process representation, the transformation mechanism including; said front end for scanning and parsing said input code string to generate therefrom a first set of class methods; a middle end for dynamically constructing from said first set of class methods a process model represented by a second set of class methods; a back end responsive to said second set of class methods for extracting process information in the syntax of said intermediate workflow process representation; and said transformation mechanism being responsive in a second pass to a second input code string representative of said intermediate workflow process representation for generating a workflow process representation in the syntax of a workflow server. - View Dependent Claims (25)
-
-
26. A workflow server on the internet, comprising:
-
a transformation mechanism for transforming a first workflow process representation to an intermediate representation, said transformation mechanism including; a front end for scanning and parsing a process definition language string represented in one of a plurality of languages capable of parsing by said front end; a middle end responsive to said front end for representing an internal model of the processes represented in the process definition language, said middle end including a first set of class definitions that represent generic process characteristics, a second set of class definitions that define relationships among the first set of class definitions; and
a set of utility classes that provide for ease of generation of the hypertext representation;
said middle end further including a set of class methods for dynamically constructing the model as the scanning and parsing occurs in said front end; anda back end including a second set of class methods for navigating and extracting process information from said model and for generating an output representation of said workflow process based upon the model; and an inverse transformation mechanism for translating said output representation to a further process representation that a workflow server can use;
the inverse transformation mechanism being implemented as a second pass through said transformation mechanism.
-
-
27. A computer readable medium for storing electrical signals for controlling the operation of a digital computer according to the steps of:
-
operating a front end processor to scan in an input code string;
parse said code string to identify lexical tokens; and
, issue modeler input calls based upon said tokens;operating a modeler responsive to said modeler input calls to build a dynamic process module and restructure the model for easier access; and operating a back end processor to issue modeler output calls to build output pages executable as hyperlink text by a web browser from said module.
-
-
28. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for operating a web flow server and at least one workflow server for defining a workflow process, said method steps comprising:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; and operating a back end processor to build from said module objects defining said workflow process in the language of a workflow server; said calls including at least one call from the set of calls including build process, build datastructure, build activity, build node settings, build program, build description, build attribute, build organization, build person, build role build subentity, build connector, build block, build subprocess, and build level.
-
-
29. A program storage device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for operating a web flow server and at least one workflow server for defining a workflow process, said method steps comprising:
-
providing a first representation of a workflow process in the language of a workflow server; operating a front end processor to scan in said first representation, parse said first representation to identify lexical units, and issue calls based on said lexical units; operating a modeler to build from said calls a dynamic process module; operating a back end processor to build from said module objects defining said workflow process in the language of a workflow server; operating said front end processor initially to instantiate a process builder object; and
responsive thereto,operating said modeler to create a process object for receiving subsequent attributes.
-
Specification