Claims
- 1. A method for process-based computing, comprising:
transmitting a request for a step of a pre-defined process, wherein said request is transmitted from a client computer to a server computer; accessing a process database to retrieve process data for said request, wherein said accessing is performed by said server computer; transmitting said process data from said server computer to said client computer; and rendering one or more screens on a display as indicated by said process data for accomplishing said step, wherein said rendering is performed by said client computer.
- 2. The method as recited in claim 1, further comprising
said server computer accessing data from an application or data store in response to said request; said server computer transmitting said data to said client computer; and said client computer rendering said data in said one or more screens as indicated by said process data.
- 3. The method as recited in claim 2, wherein said server system accessing data from an application or data store comprises accessing an application or data store computer over a network.
- 4. The method as recited in claim 2, wherein said server computer accessing data from an application or data store comprises calling a businesses object, wherein said business object provides the functionality to interface to said application or said data store.
- 5. The method as recited in claim 4, wherein said business object and other business objects for interfacing to different applications and data stores are stored in a business object repository.
- 6. The method as recited in claim 5, wherein said business object repository is included within said process database.
- 7. The method as recited in claim 5, wherein said business objects are reusable objects.
- 8. The method as recited in claim 1, wherein said server computer accessing a process database is performed over a network.
- 9. The method as recited in claim 1, wherein all steps of said predefined process are defined by process data stored within said process database as metadata.
- 10. The method as recited in claim 9, wherein said process database is an OBDC-compliant (Open DataBase Connectivity compliant) relational database.
- 11. The method as recited in claim 9, wherein said process data stored in said process database is formatted in an extensible markup language (XML).
- 12. The method as recited in claim 1, wherein said process data transmitted from said server computer to said client computer comprises extensible markup language (XML) formatted data.
- 13. The method as recited in claim 1, wherein said process data is transmitted from said server computer to said client computer over an intranet
- 14. The method as recited in claim 1, wherein said process data is transmitted from said server computer to said client computer over the Internet.
- 15. The method as recited in claim 1, wherein said rendering comprises displaying said one or more screens as indicated by said process data within a navigational framework.
- 16. The method as recited in claim 1, further comprising:
receiving user input on said client computer to complete said step; and said client computer requesting a next step from said server computer.
- 17. The method as recited in claim 16, further comprising repeating said receiving user input and said requesting a next step to complete said pre-defined process.
- 18. The method as recited in claim 1, further comprising said server providing process data to accomplish the steps of said pre-defined process, wherein said server computer provides said process data for one step at a time, wherein process data for a next step is not provided until a current step is completed.
- 19. The method as recited in claim 1, further comprising launching said pre-defined process from said client computer.
- 20. The method as recited in claim 19, wherein said launching comprises requesting a first step of said pre-defined process from said server computer.
- 21. The method as recited in claim 1, further comprising transmitting navigational control data from said client computer to said server computer.
- 22. The method as recited in claim 21, wherein said transmitting navigational control data comprises requesting a next step of said pre-defined process from said server computer.
- 23. The method as recited in claim 21, wherein said transmitting navigational control data comprises requesting a previous step of said pre-defined process from said server computer.
- 24. The method as recited in claim 21, wherein said transmitting navigational control data comprises assigning said pre-defined process to a different user.
- 25. The method as recited in claim 21, wherein said transmitting navigational control data comprises pausing said pre-defined process, wherein the current step of said predefined process is saved by said server computer.
- 26. The method as recited in claim 21, wherein said transmitting navigational control data comprises canceling a current step of said pre-defined process.
- 27. The method as recited in claim 1, wherein said rendering comprises displaying a target screen as indicated by said process data, wherein said target screen provides for manipulating a single row or record of data in a remote data store.
- 28. The method as recited in claim 1, wherein said rendering comprises displaying a list screen as indicated by said process data, wherein said list screen provides for manipulating rows of data in a remote data store.
- 29. The method as recited in claim 1, wherein said rendering comprises displaying a tree screen as indicated by said process data, wherein said tree screen provides for presenting hierarchically related data.
- 30. The method as recited in claim 1, wherein said rendering comprises displaying a spreadsheet screen as indicated by said process data, wherein said spreadsheet screen provides for populating or manipulating data in a spreadsheet format.
- 31. The method as recited in claim 30, wherein said server computer interfaces said spreadsheet screen on said client computer to a spreadsheet application.
- 32. The method as recited in claim 1, wherein said rendering comprises displaying a document screen as indicated by said process data, wherein said document screen provides for populating or editing formatted documents.
- 33. The method as recited in claim 32, wherein said server computer interfaces said document screen on said client computer to a document application.
- 34. The method as recited in claim 1, wherein said rendering comprises displaying a browser screen as indicated by said process data, wherein said browser screen provides for viewing and navigating among information resources.
- 35. The method as recited in claim 1, wherein said rendering comprises displaying a report screen as indicated by said process data, wherein said report screen provides for viewing an information resource.
- 36. The method as recited in claim 1, wherein said rendering comprises displaying a calendar screen as indicated by said process data, wherein said calendar screen provides for manipulating data from a remote data store in a calendar format.
- 37. The method as recited in claim 1, wherein said rendering comprises displaying a launch pad screen as indicated by said process data, wherein said launch pad screen list pre-defined processes available to be launched from said client computer.
- 38. The method as recited in claim 1, wherein said rendering comprises displaying instruction for each of said one or more screens on how to complete a step of said pre-defined process associated with said one or more screens.
- 39. The method as recited in claim 38, wherein said instructions are displayed within a framework common to said one or more screens for each step of said pre-defined process.
- 40. The method as recited in claim 39, wherein said framework includes navigational controls for advancing or regressing steps in said pre-defined process.
- 41. The method as recited in claim 1, wherein said request transmitted from said client computer to said server computer is transmitted using a protocol comprising hypertext transport protocol (HTTP).
- 42. The method as recited in claim 1, wherein said request is transmitted from said client computer to said server computer over an intranet.
- 43. The method as recited in claim 1, wherein said request is transmitted from said client computer to said server computer over the Internet.
- 44. The method as recited in claim 1, further comprising:
defining said pre-defined process as a series of steps to accomplish an objective; and storing process data representing said series of steps in said process database.
- 45. The method as recited in claim 44, wherein said defining comprises indicating one or more standard screens to be used for each of said series of steps, wherein said standard screens are selected from a limited number of said standard screens.
- 46. The method as recited in claim 45, wherein said defining further comprises specifying a purpose for each of said one or more screens.
- 47. The method as recited in claim 45, wherein said defining further comprises specifying a business object for each of said one or more screens, wherein said business object specifies data to be displayed by the screen.
- 48. The method as recited in claim 47, wherein said business object provides an interface to a remote data store.
- 49. The method as recited in claim 44, wherein said pre-defined process is defined in metadata.
- 50. The method as recited in claim 49, wherein said metadata is formatted in an extensible markup language (XML).
- 51. The method as recited in claim 49, wherein said storing process data representing said series of steps in said process database comprises transmitting said metadata to said server computer and said server computer inserting said metadata in said process database.
- 52. The method as recited in claim 1, further comprising downloading a client application to said client computer from said server computer, wherein said request for a step and said rendering are performed by said client application.
- 53. The method as recited in claim 52, wherein said client application comprises platform independent code, wherein said method further comprises running said client application on a virtual machine on said client computer.
- 54. The method as recited in claim 53, wherein said virtual machine is part of a web browser on said client computer.
- 55. A computer system, comprising:
at least one central processing unit (CPU); a storage medium accessible by said at least one CPU, wherein said storage medium comprises program instructions operable to implement a client interface configured to:
receive process data indicating a first screen to be used for accomplishing a first step of a pre-defined process; render said first screen within a navigational framework on a user display; following user input to said navigational framework, receive process data indicating a next screen to be used for accomplishing another step of said pre-defined process; render said next screen within said navigational framework on said user display; and continue to receive process data and render screens indicated by said process to complete said pre-defined process.
- 56. The computer system as recited in claim 55, further comprising a communication link coupled to said CPU, wherein said client interface is further configured to receive said process data from a process server across said communication link.
- 57. The computer system as recited in claim 55, wherein said screens rendered by said client interface and the functionality of said screens are determined by said process data received by said client interface.
- 58. The computer system as recited in claim 57, wherein said process data is stored in a process database remote from the computer system on which the client interface is implemented.
- 59. The computer system as recited in claim 55, wherein said program instructions operable to implement the client interface are downloaded to said storage medium from said process server.
- 60. The computer system as recited in claim 55, wherein said screens rendered by said client interface to accomplish the steps of said pre-defined process are selected from a limited number of standard screens that are specified by the process data.
- 61. The computer system as recited in claim 60, wherein the definition of said pre-defined process comprises a series of said screens indicated to said client interface by said process data.
- 62. The computer system as recited in claim 60, wherein said limited number of standard screens includes a target screen for interfacing to a database.
- 63. The computer system as recited in claim 62, wherein a target screen rendered by the client interface allows the user to perform at least one function on data in a database, wherein said at least one function is selected from the group comprising view, create, update, or delete.
- 64. The computer system as recited in claim 62, wherein said database is remote from the client interface computer system.
- 65. The computer system as recited in claim 60, wherein said limited number of standard screens includes a list screen for presenting rows of data to the user.
- 66. The computer system as recited in claim 65, wherein a list screen rendered by the client interface allows the user to perform at least one function on data in a data store, wherein said at least one function is selected from the group comprising view, maintenance, create, update, delete, or select.
- 67. The computer system as recited in claim 66, wherein said data store is remote from the client interface computer system.
- 68. The computer system as recited in claim 60, wherein said limited number of standard screens includes a tree screen for presenting hierarchically arranged data to the user.
- 69. The computer system as recited in claim 65, wherein a tree screen rendered by the client interface allows the user to perform at least one function on hierarchically arranged data, wherein said at least one function is selected from the group comprising view and select.
- 70. The computer system as recited in claim 69, wherein said client interface is further configured to render a launch pad screen which presents processes for a user to initiate or continue, wherein said tree screen is used to render said launch pad screen.
- 71. The computer system as recited in claim 60, wherein said limited number of standard screens includes a spreadsheet screen for viewing or maintaining data in a spreadsheet format.
- 72. The computer system as recited in claim 71, wherein said spreadsheet screen interfaces to a spreadsheet application separate from said client interface.
- 73. The computer system as recited in claim 60, wherein said limited number of standard screens includes a document screen for viewing or maintaining formatted documents.
- 74. The computer system as recited in claim 73, wherein said document screen interfaces to a document application separate from said client interface.
- 75. The computer system as recited in claim 60, wherein said limited number of standard screens includes a browser screen for viewing and navigating among information resources.
- 76. The computer system as recited in claim 60, wherein said limited number of standard screens includes a report screen for viewing a single information resource.
- 77. The computer system as recited in claim 60, wherein said limited number of standard screens includes a calendar screen for presenting data in a calendar format to the user.
- 78. The computer system as recited in claim 77, wherein a calendar screen rendered by the client interface allows the user to perform at least one function on data in a data store, wherein said at least one function is selected from the group comprising view, maintenance, create, update, delete, or select.
- 79. The computer system as recited in claim 78, wherein said data store is remote from the client interface computer system.
- 80. The computer system as recited in claim 60, wherein said limited number of standard screens includes a launch pad screen which presents processes for a user to initiate or continue.
- 81. The computer system as recited in claim 80, wherein said launch pad screen is specific to each user of said client interface.
- 82. The computer system as recited in claim 55, wherein each screen rendered by said client interface as part of said pre-defined process is rendered within said navigational framework.
- 83. The computer system as recited in claim 81, wherein said navigational framework comprises one or more graphical controls for a user to control the flow of said pre-defined process.
- 84. The computer system as recited in claim 83, wherein said one or more graphical controls include a next control to advance to a next step of said pre-defined process.
- 85. The computer system as recited in claim 83, wherein said one or more graphical controls include a previous control to return to a previous step of said pre-defined process.
- 86. The computer system as recited in claim 83, wherein said one or more graphical controls include an assign control to assign said pre-defined process at its current stage to another user.
- 87. The computer system as recited in claim 83, wherein said one or more graphical controls include a pause control to stop said pre-defined process and save it at its current step.
- 88. The computer system as recited in claim 83, wherein said one or more graphical controls include a cancel control to stop said pre-defined process without saving it at its current step.
- 89. The computer system as recited in claim 82, wherein said navigational framework comprises an instruction component for displaying instructions on completing the current step of said pre-defined process.
- 90. The computer system as recited in claim 55, wherein said client interface is further configured to send results of a completed step to a process server across a communication link and receive process data from said process server indicating the next screen for the next step of said pre-defined process.
- 91. The computer system as recited in claim 55, wherein said client interface is configured to communicate with said process server using a protocol comprising hypertext transport protocol (HTTP).
- 92. The computer system as recited in claim 55, wherein said client interface is launched within a web browser.
- 93. The computer system as recited in claim 92, wherein said client interface is launched within the web browser as an application downloaded from a server.
- 94. The computer system as recited in claim 93, wherein said program instructions to implement a client interface comprise Java instructions.
- 95. The computer system as recited in claim 55, wherein said program instructions to implement a client interface comprise platform-independent instructions that execute in a virtual machine.
- 96. The computer system as recited in claim 55, wherein said process data is formatted in an extensible markup language (XML).
PRIORITY INFORMATION
[0001] Benefit of priority is claimed under 35 U.S.C. 119(e) of U.S. provisional application No. 60/060,512 filed Sep. 30, 1997.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60060512 |
Sep 1997 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09164226 |
Sep 1998 |
US |
Child |
10428658 |
May 2003 |
US |