Educational Workflow Management System Based on Database

By designing a database-based academic affairs workflow management system, using the workflow engine's caching mechanism and load balancing module, the existing academic affairs management system's slow response is solved, and the response speed of workflow query and modification is significantly improved.

CN114240354BActive Publication Date: 2025-02-07WUHAN UNIV
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202111521468.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-13
Publication Date
2025-02-07
Estimated Expiration
2041-12-13

AI Technical Summary

Technical Problem

The existing academic affairs management system responds slowly when processing workflow modification instructions and query instructions, resulting in poor system performance.

Method used

A database-based academic workflow management system is designed, including access terminal, middleware server, workflow engine, main database, application server and load balancing module. Through the caching mechanism of the workflow engine and the support of the load balancing module, the query and modification operations of the workflow are optimized.

Benefits of technology

Through the caching mechanism of the workflow engine and the support of the load balancing module, the response speed of workflow query and modification is significantly accelerated, and the performance of the academic management system is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114240354B_ABST
    Figure CN114240354B_ABST
Patent Text Reader

Abstract

The present invention provides a database-based educational affairs workflow management system. In the present invention, various workflows in educational affairs management run on a workflow engine. Based on the cache mechanism of the workflow engine, after a user triggers a workflow query instruction based on an access terminal, the workflow details can be fed back to the access terminal more quickly; and when a user triggers a workflow modification instruction based on the access terminal, the workflow is first modified in the workflow engine, and then the workflow is persisted in the main database, thereby speeding up the response speed to the workflow modification instruction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of management technology, and in particular to a database-based educational affairs workflow management system. Background Art

[0002] Academic administration is the most basic task of a university and is also what distinguishes a university from general education.

[0003] With the development of computer technology, academic management is generally carried out through an academic management system. Since academic management is for the entire school, the amount of data in the workflow managed by the academic management system will be very large. In this case, the academic management system responds slowly to workflow modification instructions and workflow query instructions. Summary of the invention

[0004] The present invention provides a database-based educational affairs workflow management system, aiming to solve the technical problem in the prior art that the educational affairs management system responds relatively slowly to workflow modification instructions and workflow query instructions.

[0005] The present invention also provides a database-based educational workflow management system, which includes an access terminal, a middleware server, a workflow engine, a main database, an application server and a load balancing module, wherein:

[0006] The access terminal is used to implement information interaction with the user;

[0007] The middleware server is used to implement data interaction between the access terminal, the workflow engine and the main database, and the middleware server is signal-connected to both the access terminal and the workflow engine;

[0008] The workflow engine provides a service environment for the execution of the workflow, and the workflow engine is connected to the main database by signal;

[0009] The main database is used to store data, and the main database is connected to the middleware server by signal;

[0010] The application server is used to perform business processing on the received request, and the application server is signal-connected to the main database;

[0011] The load balancing module is used to implement the interaction between the access terminal and the application server.

[0012] Optionally, the database-based educational workflow management system further includes a standby database, which is signal-connected to the main database, and persistent storage of data is achieved through the main database and the standby database.

[0013] Optionally, both the primary database and the standby database are Oracle databases.

[0014] Optionally, the workflow engine is connected to external application program signals.

[0015] Optionally, the workflow engine includes a data access module, a workflow management service module, a workflow instance management service module and a task management service module, wherein:

[0016] The data access module is used to implement data interaction between the main database and the workflow engine;

[0017] The workflow management service module instantiates the process according to the process definition, and the workflow management service module is signal-connected with the data access module;

[0018] The workflow instance management service module is used to provide management of creation, operation and termination of workflow instances, and the workflow instance management service module is signal-connected to the workflow management service module and the data access module;

[0019] The task management module service module is used to perform task management on the workflow, and the task management module service module is signal-connected with both the data access module and the workflow instance management service module.

[0020] Optionally, the workflow engine further includes a data query service module, and the data query service module is signal-connected to the data access module.

[0021] Optionally, the access terminal includes a client, a web page, and an application program.

[0022] Optionally, the client is signal-connected to the middleware server.

[0023] Optionally, the web page end and the application end are connected to the load balancing module signal.

[0024] In the present invention, the database-based academic affairs workflow management system includes an access terminal, a middleware server, a workflow engine, a main database, an application server and a load balancing module, wherein: the access terminal is used to realize information interaction with users; the middleware server is used to realize data interaction between the access terminal and the workflow engine and the main database, and the middleware server is signal-connected with the access terminal and the workflow engine; the workflow engine provides a service environment for the execution of the workflow, and the workflow engine is signal-connected with the main database; the main database is used to store data, and the main database is signal-connected with the middleware server; the application server is used to perform business processing on received requests, and the application server is signal-connected with the main database; the load balancing module is used to realize interaction between the access terminal and the application server. Through the present invention, various workflows in academic management run on the workflow engine. Based on the cache mechanism of the workflow engine, after the user triggers the workflow query instruction based on the access terminal, the workflow details can be fed back to the access terminal more quickly; and when the user triggers the workflow modification instruction based on the access terminal, the workflow is first modified in the workflow engine, and then the workflow is persisted in the main database, thereby speeding up the response to the workflow modification instruction. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 It is a schematic diagram of the architecture of an embodiment of a database-based teaching workflow management system of the present invention;

[0026] Figure 2 is a detailed schematic diagram of the workflow engine 300;

[0027] Figure 3 A schematic diagram of the elements that define the process;

[0028] Figure 4 This is a schematic diagram of the performance management process.

[0029] The realization of the purpose, functional features and advantages of the present invention will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0030] It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.

[0031] The embodiment of the present invention provides a database-based educational affairs workflow management system.

[0032] Reference Figure 1 , Figure 1 FIG. 1 is a schematic diagram of the architecture of an embodiment of a database-based teaching workflow management system of the present invention. Figure 1As shown, the database-based teaching workflow management system includes an access terminal 100, a middleware server 200, a workflow engine 300, a main database 400, an application server 600 and a load balancing module 700, wherein:

[0033] The access terminal 100 is used to implement information interaction with the user;

[0034] The middleware server 200 is used to implement data interaction between the access terminal 100, the workflow engine 300 and the main database 400. The middleware server 200 is signal-connected to the access terminal 100 and the workflow engine 300.

[0035] The workflow engine 300 provides a service environment for the execution of the workflow, and the workflow engine 300 is signal-connected to the main database 400;

[0036] The main database 400 is used to store data, and the main database 400 is connected to the middleware server 200 by signal;

[0037] The application server 600 is used to perform business processing on the received request, and the application server 600 is signal-connected with the main database 400;

[0038] The load balancing module 700 is used to implement the interaction between the access terminal 100 and the application server 600 .

[0039] In this embodiment, various workflows in academic management run on the workflow engine. Based on the caching mechanism of the workflow engine, after the user triggers a workflow query instruction based on the access terminal, the workflow details can be fed back to the access terminal more quickly; and when the user triggers a workflow modification instruction based on the access terminal, the workflow is first modified in the workflow engine, specifically, the workflow is modified in the memory database running in the workflow engine, and then the workflow is persisted to the main database, thereby speeding up the response to the workflow modification instruction.

[0040] Further, in one embodiment, continue to refer to Figure 1 The database-based educational workflow management system also includes a backup database 500, which is signal-connected to the main database 400, and the data is persistently stored through the main database 400 and the backup database 500.

[0041] Furthermore, in one embodiment, both the primary database and the standby database are Oracle databases.

[0042] Further, in one embodiment, continue to refer to Figure 1The access terminal 100 includes a client, a web page and an application program.

[0043] Further, in one embodiment, continue to refer to Figure 1 , the client is signal connected with the middleware server.

[0044] Further, in one embodiment, continue to refer to Figure 1 , the web page end and the application end are connected with the load balancing module signal.

[0045] In this embodiment, if the client needs to call a workflow service, it accesses the workflow engine 300 through the middleware server 200, and then the workflow engine 300 calls data from the main database 400; if the application server 600 needs to call a workflow service, it directly calls data from the main database 400.

[0046] Furthermore, in one embodiment, the workflow engine is connected to external application signals.

[0047] Further, in one embodiment, referring to Figure 2 , Figure 2 FIG. 3 is a detailed schematic diagram of the workflow engine 300. Figure 2 As shown, the workflow engine 300 includes a data access module 310, a workflow management service module 320, a workflow instance management service module 330 and a task management service module 340, wherein:

[0048] The data access module 310 is used to implement data interaction between the main database 400 and the workflow engine 300;

[0049] The workflow management service module 320 instantiates the process according to the process definition, and the workflow management service module 320 is signal-connected with the data access module 310;

[0050] The workflow instance management service module 330 is used to provide management of creation, operation and termination of workflow instances. The workflow instance management service module 330 is signal-connected to the workflow management service module 320 and the data access module 310.

[0051] The task management module service module 340 is used to perform task management on the workflow. The task management module service module 340 is signal-connected to both the data access module 310 and the workflow instance management service module 330 .

[0052] Further, in one embodiment, continue to refer to Figure 2The workflow engine also includes a data query service module 350 , and the data query service module 350 is signal-connected to the data access module 310 .

[0053] In this embodiment, the workflow engine 300 is deeply embedded in the teaching work, and can generate corresponding workflows for teaching staff of different roles in different colleges, and can automatically adapt to the adjustments of workflows and work permissions brought about by the adjustment of personnel roles. Among them, the process definition is read from the main database 400 (Oracle database) by the data access module 310, and the process definition is sent to the workflow management service module 320. The workflow management service module 320 interprets the process definition (i.e., instantiates the process according to the process definition). The interpretation of the process definition is to translate the process definition stored in the Oracle database into a graph and store it in the workflow engine 300. Specifically, all nodes and edges are traversed in a breadth-first manner, and the translation process is as follows:

[0054] Step 1: Get all nodes and edges of the workflow, find the start node from all nodes, use the start node as the starting point of the graph, and record the current node as the P node;

[0055] Step 2: Find the set of edges with P as the source node, denoted as L;

[0056] Step 3: Find the nodes corresponding to each edge in L, which is the set of subsequent nodes of node P, denoted as S;

[0057] Step 4: Take each node in S as a P node and repeat step 2 until all edges in the process definition are traversed.

[0058] Among them, refer to Figure 3 , Figure 3 A schematic diagram of the elements that define the process. Figure 3 As shown, the process definition elements include nodes and edges. Nodes include start nodes, end nodes, task nodes, decision nodes, parallel branch nodes, and parallel import nodes. Among them, decision nodes, parallel branch nodes, and parallel import nodes are related to the flow of business logic.

[0059] Edges: Nodes are connected by edges, and the connections between edges form business processes. Edges can not only connect business logic in series, but also input data to the next node, and output edges also contain decision conditions.

[0060] Start and end nodes: The start node indicates the entry of the process, with only input edges and no output edges. The start node is not directly related to the specific business and is only responsible for the flow to the next node. The end node indicates the end of the process, with only input edges and no output edges. The end node is also not related to the specific business and is only responsible for controlling the end of the process.

[0061] Task node: directly associated with the activities in the business, the task node defines the participants of the task, the address where the business activity is executed, and other information. After the task node is completed, the process flow can be transferred to a node.

[0062] Decision node: also called selection node, decision conditions are defined on the decision node. After the parameters are calculated in the decision node, the process is determined from which edge flow according to the calculation result. Decision node represents the conditional selection mode in the workflow mode.

[0063] Parallel branch node: The task nodes following the parallel branch node are completed in parallel, which means that the execution order of the subsequent task nodes is not distinguished. The parallel branch node represents the parallel branch mode in the workflow mode.

[0064] Parallel import node: After all the task nodes before the parallel import node are completed, the process can flow out of the parallel import node. The parallel import node represents the synchronous mode in the workflow mode.

[0065] In one embodiment, the client requests the workflow engine 300 to create a workflow instance. The workflow instance management service module 330 determines the workflow based on the business and the college to which the creator belongs, inserts a record into the workflow instance table, generates a number for the workflow instance, and saves the creator, the college that created the instance, and the primary key value of the document.

[0066] The client calls the workflow engine 300 to execute the task according to the execution path of the task in the task list. When executing the task, the status of the task is changed to "completed". If it is an approval task, the approval status is returned. After the task is completed, the workflow flow is not triggered immediately. If it is a parallel task, the workflow can continue to flow only after all parallel tasks are completed.

[0067] There are "pre-review status" and "post-review status" in the approval node. The pre-review status is the status returned to the client when the workflow instance just enters the approval node, that is, the status field of the approval node. The post-review status is the status returned to the client after the workflow instance leaves the approval node, that is, the review result. For better explanation, Figure 4 As shown, in the grade management process, the process instance enters the "grade department review and approval" node, and the client obtains the pre-review status of "grade department reviewing". If the client then passes in "review passed", the workflow engine 300 returns the post-review status of "grade department review passed" through the status field of the task node. Figure 4The solid-line frame represents a common task node, and the dotted-line frame represents an approval task node. Assuming that the initial status of the transcript is "pending submission", if it is only in the pre-review status, that is, entering the approval node, the workflow engine returns to the status. When entering the grade department review node, the workflow engine 300 returns the status of "grade department reviewing". If the review fails, it enters the "transcript submission" node through the "no" path. At this time, the status of the transcript is still "grade department reviewing", which is obviously unreasonable. To avoid this situation, in this embodiment, when the workflow engine 300 returns to the pre-review status, and returns to the post-review status during the review, there are mainly the following three situations:

[0068] Case 1: The workflow flows between two consecutive approval nodes and returns the previous approval status of the subsequent node. Figure 4 In the "yes" path, after the score department review is passed, the post-review status of the score department review node is "score department review passed". After selecting the node, it automatically flows into the score department review node. The pre-review status of the score department review node is "score department reviewing". At this time, there are two states, and it is reasonable to return to the pre-review status of the subsequent node.

[0069] Case 2: The subsequent node of the approval node is a common task node, and the post-approval status of the approval node is returned, such as Figure 4 In the "No" path, the score department approval fails, and the post-review status of the score department review node is "score department review failed". It is reasonable for the workflow engine 300 to return the post-review status of the score department review node when entering the transcript submission node.

[0070] Case 3: The subsequent node of the ordinary task node is an approval node, and the pre-approval status of the approval node is returned. Figure 4 In the "A" path, after the transcript is submitted, it enters the score department review node, and the pre-review status is "score department reviewing". It is reasonable for the workflow engine 300 to return the pre-review status of the score department review node.

[0071] In one embodiment, the teacher of the School of Computer Science completes the grade and submits it on the web page. After receiving the request, the background program first saves the grade sheet to the main database 400, and then calls the function of creating a process in the workflow engine 300. According to the business number of the grade management and the college where the teacher who submitted the grade is located, the process model of the grade management can be obtained, and a record is inserted into the workflow instance table, saving that the creating college is the School of Computer Science and the primary key is the course number of the course.

[0072] The teacher logs in on the web page, enters and submits the grade of a course. After submission, the workflow engine 300 creates a workflow instance, creates and executes the task of entering the grade, then creates a grade college review task, and sends a to-do item to the teaching secretary of the School of Computer Science.

[0073] To flow to the next node, which is the teacher reporting grades task node, you need to create an initial task. The first task node is a special node because the task has been executed but the process instance has not been created. Therefore, when creating the task, directly specify the task executor as the user who created the process. Insert a record into the task table to save the executor and execution path. The task belongs to the teacher reporting grades node.

[0074] The background program calls the function of the workflow engine 300 to execute the task. The task first determines whether the user has execution authority, then modifies the task status to completed, and the workflow instance flows to the next node, returning that the task is completed.

[0075] Audit task creation: The instance in the work flows to the college's grade audit node, which is an audit node, so it is necessary to return the pre-review status "College grades under review" to the client. According to the instance creation, the college is the School of Computer Science, the role is the college grade reviewer, and the department category to which the task belongs is college-level. It can be determined that the executor is the grade reviewer of the School of Computer Science. Insert a record into the task table to save information such as the executor, the task node, and the execution path. After the task is created, the workflow engine 300 returns the status "College grades under review" to the background, and the background then modifies the status of the transcript based on the returned status.

[0076] Task execution: The teaching secretary of the School of Computer Science queries the task list and opens the task of grade review. The review page will be opened according to the execution path of the task. After the review is passed, the review result will be passed to the workflow engine 300. The workflow engine 300 first changes the review task to completed, and generates the post-review status "College grade review passed" according to the review result. At this time, the status will not be returned to the client, but the type of subsequent task node will be determined.

[0077] Execution of decision nodes: The workflow instance flows from the approval node to the decision node for whether the college has passed the review. The expression of the decision node is "#status#". First check whether there is a status field in the parameters submitted by the customer. If not, query from the Oracle database. Here, status is replaced with "College score review passed". Traverse the path names of all output paths of the decision node and find the path that matches the string "College score review passed". This path is the flow path. The process instance flows to the undergraduate college score review node, creates a task, and assigns an executor. Since this node is an audit node, the post-review status is replaced, and the pre-review status of the current node "school-level scores under review" is returned to the client. The client modifies the status of the transcript based on the returned status.

[0078] The teaching secretary of the School of Computer Science opens the client program of the teaching management system and receives a to-do item for the school grade review from the teacher, and performs the review operation. After the review is passed, the client obtains the status returned from the workflow engine 300, and modifies the status of the transcript to "school-level grade review" according to the returned status. The workflow engine 300 generates a school-level grade review task and sends a to-do message to the school-level grade reviewer.

[0079] The process instance flows to the end node, and the status of the process instance is changed to completed. Since there is an approval node before and the end node is a non-approval node, the post-review status "school-level score review passed" is returned to the client. The client modifies the status of the transcript based on the returned status.

[0080] When the school-level grade reviewer opens the client of the academic affairs system, he will receive a grade review to-do item from the School of Computer Science. After the review is passed, the review result will be displayed.

[0081] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or system including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or system. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or system including the element.

[0082] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0083] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for a terminal device to execute the methods described in each embodiment of the present invention.

[0084] The above are only preferred embodiments of the present invention, and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A database-based teaching workflow management system, characterized in that: The database-based educational workflow management system includes an access terminal, a middleware server, a workflow engine, a main database, an application server and a load balancing module, wherein: The access terminal is used to implement information interaction with the user, and the access terminal includes a client, a web page, and an application program. The client is connected to the middleware server by signal, and the web page and the application program are connected to the load balancing module by signal. The middleware server is used to implement data interaction between the access terminal, the workflow engine and the main database, and the middleware server is signal-connected to both the access terminal and the workflow engine; The workflow engine provides a service environment for the execution of the workflow, and the workflow engine is connected to the main database signal; the workflow engine includes a data access module, a workflow management service module, a workflow instance management service module and a task management service module, wherein: The data access module is used to implement data interaction between the main database and the workflow engine; The workflow management service module instantiates the process according to the process definition, and the workflow management service module is connected with the data access module by signal; wherein the process definition is read from the main database by the data access module, and the process definition is sent to the workflow management service module, and the workflow management service module translates the process definition into a graph form and stores it in the workflow engine, and the translation process is as follows: Step 1: Get all nodes and edges of the workflow, find the start node from all nodes, use the start node as the starting point of the graph, and record the current node as the P node; Step 2: Find the set of edges with P as the source node, denoted as L; Step 3: Find the nodes corresponding to each edge in L, which is the set of subsequent nodes of node P, denoted as S; Step 4: Take each node in S as a P node and repeat step 2 until all edges in the process definition are traversed; Process definition elements include nodes and edges; nodes include start nodes, end nodes, task nodes, decision nodes, parallel branch nodes and parallel import nodes, among which decision nodes, parallel branch nodes and parallel import nodes are related to the flow of business logic; nodes are connected by edges, and the connection of edges constitutes a business process. Edges can not only connect business logic in series, but also input edges can input data to the next node, and output edges also contain decision conditions; the start node represents the entrance of the process, with only output edges and no input edges. The start node is not directly related to the specific business and is only responsible for the flow to the next node; the end node represents the end of the process, with only input edges and no output edges. The end node is not related to the specific business and is only responsible for controlling the end of the process; the task node directly The task node is directly associated with the activities in the business. The task participants and the address information of the business activity execution are defined on the task node. The process can be transferred to a node only after the task node is completed. The decision condition is defined on the decision node. After the parameters are calculated in the decision node, the process is determined from which edge to flow out according to the calculation result. The decision node represents the conditional selection mode in the workflow mode. The task nodes behind the parallel branch node are completed in parallel, that is, the execution order of the subsequent task nodes does not distinguish between the first and the last. The parallel branch node represents the parallel branch mode in the workflow mode. After all the task nodes before the parallel import node are completed, the process can flow out from the parallel import node. The parallel import node represents the synchronous mode in the workflow mode. The workflow instance management service module is used to provide management of creation, operation and termination of workflow instances, and the workflow instance management service module is signal-connected to the workflow management service module and the data access module; The task management module service module is used to perform task management on the workflow, and the task management module service module is signal-connected to both the data access module and the workflow instance management service module; The main database is used to store data, and the main database is connected to the middleware server by signal; The application server is used to perform business processing on the received request, and the application server is signal-connected to the main database; The load balancing module is used to implement the interaction between the access terminal and the application server.

2. The database-based educational affairs workflow management system according to claim 1, characterized in that: The database-based educational workflow management system also includes a standby database, which is signal-connected to the main database, and the persistent storage of data is achieved through the main database and the standby database.

3. The database-based educational affairs workflow management system according to claim 2, characterized in that: The primary database and the standby database are both Oracle databases.

4. The educational affairs workflow management system based on a database as claimed in claim 1, characterized in that: The workflow engine is connected with external application program signals.

5. The database-based educational affairs workflow management system according to claim 1, characterized in that: The workflow engine also includes a data query service module, and the data query service module is signal-connected to the data access module.

Citation Information

Patent Citations

  • Workflow integration platform system capable of managing and controlling deterministic and nondeterministic flows

    CN101673370A

  • Multitask concurrent executive system and method for hybrid network service

    CN101741850A

  • Three-layer server architecture applied in B / S (browser / server) structure

    CN102118452A

  • Intelligent configurable workflow engine and implementation method therefor

    CN104850405A