Construction method of business process management system and electronic equipment
By designing a business process management system construction method, the prefabricated management system is used to solve the scenario conflict problem in the Unity engine's multi-person collaborative development, improving the development efficiency and project delivery cycle, and ensuring the stability and correctness of the workflow.
Patent Information
- Application Number
- CN202411215310.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2025-03-07
Smart Images

Figure CN119576390A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of system development technology, and in particular to a method for constructing a business process management system and an electronic device. Background Art
[0002] In the demand development of virtual reality (VR) training projects, there are many process-based step developments. These process-based operations may have similar operation processes, and there are also a large number of interactive operations with 3D scenes. Usually, the Unity engine is used to develop VR training projects.
[0003] Therefore, the training process is more complex and the development is more complicated, requiring multiple developers to collaborate in parallel development. However, due to the particularity of the Unity engine, when multiple people develop in parallel in the same scene, if the scene is changed, it is difficult to resolve scene conflicts when submitting the Kaiyuan distributed version control system Git, resulting in a long development cycle for multiple people. Summary of the invention
[0004] In an exemplary embodiment of the present application, a method for constructing a business process management system and an electronic device are provided to construct a lightweight business process development system to improve the efficiency of multiple people developing training projects.
[0005] According to a first aspect of an exemplary implementation, a method for constructing a business process management system is provided, comprising:
[0006] Obtaining demand information for building a business process management system; wherein the demand information includes scenario information, description information of at least one object in each scenario, and part or all of the business process information;
[0007] Construct at least one prefab according to the demand information; wherein each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object;
[0008] Establishing a binding relationship between at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene;
[0009] In response to a development request of a target user, determining a target prefab matching the target user, so that the target user processes a target workflow and a target object in a target scene indicated by the target prefab;
[0010] Determine the processing results of multiple users and build a business process management system.
[0011] According to a second aspect of the exemplary implementation, there is provided an electronic device, including a processor and a memory;
[0012] The memory is configured to execute:
[0013] Stores demand information from system users for building business process management systems;
[0014] The processor is configured to execute:
[0015] Acquire demand information; wherein the demand information includes scene information, description information of at least one object in each scene, and part or all of the business process information;
[0016] Construct at least one prefab according to the demand information; wherein each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object;
[0017] Establishing a binding relationship between at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene;
[0018] In response to a development request of a target user, determining a target prefab matching the target user, so that the target user processes a target workflow and a target object in a target scene indicated by the target prefab;
[0019] Determine the processing results of multiple users and build a business process management system.
[0020] According to a third aspect of an exemplary implementation, there is provided a device for constructing a business process management system, including:
[0021] A data acquisition module is used to: acquire demand information for building a business process management system; wherein the demand information includes scenario information, description information of at least one object in each scenario, and part or all of the business process information;
[0022] A prefab generation module, used to: construct at least one prefab according to the demand information; wherein each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object;
[0023] A relationship establishment module is used to: establish a binding relationship between at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene;
[0024] A processing module is used to: in response to a development request of a target user, determine a target prefab matching the target user, so that the target user processes a target workflow indicated by the target prefab and a target object in a target scene;
[0025] The system building module is used to: determine the processing results of multiple users and build a business process management system.
[0026] According to a fourth aspect of the exemplary implementation, a computer storage medium is provided, in which computer program instructions are stored. When the instructions are executed on a computer, the computer executes the method for constructing a business process management system as described in the first aspect.
[0027] In the embodiment of the present application, each training project corresponds to a set of demand information, and the demand information is used to build a business process management system that matches the training project. Therefore, after obtaining the demand information, at least one prefabricated body is constructed according to the demand information, and each prefabricated body includes the description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object. Through the prefabricated body, the workflow is managed and the universal function is encapsulated, allowing multiple people to develop in parallel in the same scene to avoid conflicts. Establish a binding relationship between at least one prefabricated body and each workflow, so that when the development request of the target user is detected, the target prefabricated body matching the target user is determined in response to the development request of the target user, so that the target user processes the target workflow indicated by the target prefabricated body and the target object in the target scene, and finally, the processing results of multiple users are determined to build a business process management system. Applying the business process management system, the corresponding training project can be automatically operated. Therefore, when dealing with more and more complex process-based work, a lightweight business process management system is designed through the prefabricated body, and the correct determination and stability of the workflow operation are guaranteed on the basis of allowing multiple people to develop in parallel in the same scene. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0029] Figure 1 An exemplary diagram of the operation architecture of a Unity engine provided in an embodiment of the present application is shown;
[0030] Figure 2 A schematic diagram exemplarily shows a storage format of a scene file provided in an embodiment of the present application;
[0031] Figure 3 A flowchart of a method for constructing a business process management system provided by an embodiment of the present application is exemplified;
[0032] Figure 4 A schematic diagram of a Prefab structure provided in an embodiment of the present application is exemplarily shown;
[0033] Figure 5 The following is a schematic diagram showing the working process of a binder BpmsBinder provided in an embodiment of the present application;
[0034] Figure 6 A schematic diagram of generating and dynamically loading a Prefab provided in an embodiment of the present application is exemplified;
[0035] Figure 7 A schematic diagram of a workflow of an IWorkflowAction provided in an embodiment of the present application is exemplified;
[0036] Figure 8 A schematic diagram of a workflow of a WorkflowSystem provided in an embodiment of the present application is exemplified;
[0037] Fig. 9 A schematic diagram exemplarily shows a complete BPMS usage process provided by an embodiment of the present application;
[0038] Fig.10 A schematic diagram of the structure of a device for building a business process management system provided by an embodiment of the present application is exemplarily shown;
[0039] Fig.11 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is exemplarily shown. DETAILED DESCRIPTION
[0040] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0041] For ease of understanding, the terms involved in the embodiments of the present application are explained below:
[0042] (1) Business Process Management System (BPMS), through modern workflow software and other technical means, normalizes and standardizes these management lines and automates the processes, thereby effectively improving business operation efficiency, reducing costs, and providing guarantees for achieving the company's strategic goals. BPMS not only covers the entire process of process customization, release, management configuration, operation, and monitoring, but also provides a process KPI interface to facilitate the collection of the five elements of the process (time, quality, quantity, risk, cost) and other KPI indicators, providing a basis for the management, supervision, assessment and optimization of business processes. In the embodiment of the present application, a lightweight BPMS system is designed to overcome the conflict problem of parallel development by multiple people when developing practical training projects.
[0043] (2) Unity: Unity is an engine that is widely used in games. Taking games as an example, as a game engine, it is a real-time 3D interactive content creation and operation platform. All creators, including game developers, art, architecture, car design, and film and television, use Unity to turn their ideas into reality. In the embodiment of this application, a lightweight BPMS system can be built based on the Unity engine to automate the implementation of corresponding training projects.
[0044] (3) Workflow: It is also called training process or workflow. Each training process includes multiple business processes.
[0045] (4) Prefab: Taking games as an example, Unity's prefab is a reusable combination of game objects. It is a mechanism that combines game objects into a whole and saves them as an independent resource. By combining one or more game objects into a prefab, multiple game objects based on the same properties can be quickly created. In an embodiment of the present application, a prefab is a special asset in Unity that is used to create, configure, and reuse predefined configurations of objects. Prefab allows developers to save a group of objects and their properties, components, and sub-objects as a separate asset, and instantiate and reuse them multiple times in application scenarios. Among them, the object can be an object in a training project, and the aforementioned game object is only used as an example.
[0046] In the embodiment of the present application, a VR training project is developed using the Unity engine to obtain a business process management system corresponding to the training project.
[0047] In the VR industry, due to the slow development of ToC, ToB is still one of the mainstream businesses. In the ToB industry, virtual simulation training and education business is one of the mainstream demand businesses, especially in practical training businesses with higher costs in reality, such as firefighting, welding, and large-scale equipment operation. Using VR for simulation training and education can greatly reduce training costs and learning costs. At the same time, compared with practical training education in a real environment, it can reduce the risk of practical training while achieving the goal of reducing costs and increasing efficiency. At present, most applications in the fields of virtual reality, augmented reality, and mixed reality are created and developed using the Unity engine.
[0048] In the related technology, there are usually the following problems:
[0049] (1) Scene conflict problem
[0050] In the multi-person collaborative development of the Unity engine, especially when multiple developers modify the same scene at the same time, scene conflicts often occur. Since the Unity scene file is essentially a complex binary file, when multiple developers modify the same file and try to merge it, conflicts are likely to occur and are difficult to resolve manually. The scenes here mainly refer to different functions or different stages in the development process.
[0051] (2) The existing business process management system is imperfect
[0052] In the development environment of the Unity engine, there is a lack of available process management solutions. As a result, in the development process of VR training projects, there are too many VR training steps, making the development process difficult to manage and maintain.
[0053] (3) Low efficiency of multi-person parallel development
[0054] Although the existing Unity collaborative development tool can support parallel development by multiple people, due to scene conflicts and lack of process management, it will cause high communication and coordination costs, easily lead to misoperations and conflicts, resulting in low development efficiency, long project delivery cycle and increased risks.
[0055] To this end, the embodiment of the present application provides a method for constructing a business process management system, in which the concept of prefab (prefab or structure) is introduced by designing a business process management system that matches the training items to be developed, managing the training process and encapsulating the universal functions. The prefab exists in the form of a pointer, so that each developer can be assigned a different structure, and then process the training process, scene and object pointed to by the structure. The problem of low development efficiency when multiple people are developing is overcome.
[0056] After introducing the design ideas of the embodiments of the present application, the following briefly introduces the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limited. In specific implementation, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.
[0057] refer to Figure 1 , shows a running architecture diagram of the Unity engine, where for the scene file part, Figure 2 A schematic diagram of a scene file storage format. Figure 1 and Figure 2 It can be seen that in the related art, the scene file itself exists in binary form, including all serialized data of the Gameobject (object), and cannot be edited and saved at the same time during parallel development by multiple people.
[0058] To further illustrate the technical solution provided by the embodiment of the present application, this is described in detail below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiment of the present application provides the method operation steps shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or no creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided in the embodiment of the present application.
[0059] Combine the following Figure 1 and Figure 2 The application scenario shown is shown in Figure 3 A flowchart of a method for constructing a business process management system is shown to illustrate the technical solution provided in an embodiment of the present application.
[0060] S301: Obtaining requirement information for building a business process management system.
[0061] The demand information includes scene information, description information of at least one object in each scene, and part or all of the business process information.
[0062] S302: Construct at least one prefabricated body according to the demand information.
[0063] Each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code, and animation of the object.
[0064] S303: Establishing a binding relationship between at least one prefab and each workflow.
[0065] Each workflow includes at least one business process, and each business process includes an operation process of a set object in a set scenario.
[0066] S304: In response to the development request of the target user, determine a target prefab matching the target user, so that the target user processes the target workflow indicated by the target prefab and the target object in the target scene.
[0067] S305: Determine the processing results of each of the multiple users and build a business process management system.
[0068] In the embodiment of the present application, each training project corresponds to a set of demand information, and the demand information is used to build a business process management system that matches the training project. Therefore, after obtaining the demand information, at least one prefabricated body is constructed according to the demand information, and each prefabricated body includes the description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object. Through the prefabricated body, the workflow is managed and the universal function is encapsulated, allowing multiple people to develop in parallel in the same scene to avoid conflicts. Establish a binding relationship between at least one prefabricated body and each workflow, so that when the development request of the target user is detected, the target prefabricated body matching the target user is determined in response to the development request of the target user, so that the target user processes the target workflow indicated by the target prefabricated body and the target object in the target scene, and finally, the processing results of multiple users are determined to build a business process management system. Applying the business process management system, the corresponding training project can be automatically operated. Therefore, when dealing with more and more complex process-based work, a lightweight business process management system is designed through the prefabricated body, and the correct determination and stability of the workflow operation are guaranteed on the basis of allowing multiple people to develop in parallel in the same scene.
[0069] In relation to S301, each business process management system not only has general functions, but also integrates the special needs of different system users, which is the part corresponding to the practical training project. The system users here refer to users (enterprises) who use the business process management system. System users can be users in the fields of fire protection, welding, and large-scale equipment operation, and practical training projects can also be projects in these fields.
[0070] Taking the field of large-scale equipment operation as an example, when building a corresponding business process management system, the corresponding demand information is first obtained. The demand information may include scene information, description information of at least one object in each scene, and part or all of the business process information. For example, scenes refer to different stages in a training project, objects may be 3D virtual characters or 3D virtual devices, etc., and description information may be models, materials, codes, animations or textures, etc.
[0071] Regarding S302, in multi-person collaborative development based on the Unity engine, the difficulty in maintaining and managing projects mainly focuses on the particularity of scene files. This particularity comes from the complexity of scene files and their dependencies with other resources. Unity scene files are stored in binary format (.unity) by default, which makes them difficult to version control and merge. The complexity of asset dependencies during multi-person development means that merging and resolving conflicts through git will take up a lot of development time, affecting development efficiency and delivery time. Prefab is a special asset in Unity that is used to create, configure, and reuse predefined configurations of objects. Prefab allows developers to save a group of objects and their properties, components, and sub-objects as a separate asset, and instantiate and reuse them multiple times in application scenarios. Figure 4 A schematic diagram of a Prefab structure provided in an embodiment of the present application.
[0072] Since the demand information includes scene information, description information of at least one object in each scene, and part or all of the business process information, combined with the concept of the aforementioned prefab, it can be known that in the embodiment of the present application, at least one prefab can be constructed according to the demand information, so that each prefab includes description information of at least one object in at least one scene.
[0073] Optionally, in the Unity engine, the prefab is stored in the form of a pointer (reference), and the pointer points to the scene or object corresponding to the corresponding prefab. Prefab can store the logic code, scene assets, audio, etc. of the corresponding process. Prefab assets can be generated by GameObject, and after generation, they are used as a special variant of Gameobject, supporting dynamic loading and use. Since Prefabs exist in the form of references in the Unity engine, and Prefabs are independently developed by developers, there will be no conflicts when uploading the code through git.
[0074] In S302, since each workflow includes at least one business process, and each business process includes the operation process of the set object in the set scene, in order to ensure that different developers handle different workflows or business processes respectively during the development process, a binding relationship between at least one prefab and each workflow can be established. This process can be implemented through the BPMS binder BpmsBinder, and the prefab Prefab of the business process of the training project in Unity is bound to the workflow Workflow.
[0075] In an optional implementation, a binding relationship between at least one prefab and each workflow may be established in the following manner:
[0076] Method 1: Establish a binding relationship between a single prefab and each workflow.
[0077] This method can be called Single Prefab To Bind All Workflow, that is, a single prefab is bound to the entire training process.
[0078] Method 2: Establishing a binding relationship between a single prefab and the workflow of the first setting identifier.
[0079] This method can be called Single Prefab To Bind Workflow ID, that is, a single prefab is bound to multiple workflows with corresponding IDs (first setting identifiers).
[0080] Method 3: Establish a step binding relationship between a single prefab and the second setting identifier.
[0081] This method may be called Single Prefab To Bind Step ID. Since a business process includes multiple steps, a binding relationship between a single prefab and a step corresponding to StepID (second setting identifier) may be established here.
[0082] Method 4: Establish binding relationships between multiple prefabs and various workflows.
[0083] This method can be called Multi Prefab To Bind All Workflow, that is, multiple prefabs are bound to the entire training process.
[0084] Method 5: Establishing a binding relationship between multiple prefabricated bodies and the workflow of the third setting identifier.
[0085] This method can be called Multi Prefab To Bind Workflow ID, that is, multiple prefabs are bound to workflows with multiple corresponding IDs (third setting identifiers).
[0086] Method 6: Establish a step binding relationship between multiple prefabricated bodies and the fourth setting identifier.
[0087] This method may be called Multi Prefab To Bind Step ID. Since a business process includes multiple steps, a binding relationship between a single prefab and a step corresponding to StepID (fourth setting identifier) may be established. Figure 5 A schematic diagram of the working process of a binder BpmsBinder provided in an embodiment of the present application.
[0088] Therefore, by using the characteristics of Prefab, you can create Prefabs associated with all asset codes in the process. At the same time, you can bind Prefabs to the Workflow in BPMS through BpmsBinder. After entering the corresponding scene, you can dynamically load and instantiate Prefabs into the scene through BpmsBinder to achieve decoupling from the scene. In a specific example, Figure 6 A schematic diagram of the generation and dynamic loading of a Prefab is provided for an embodiment of the present application.
[0089] In S304, multiple developers can split the requirements according to the training process and develop the Prefabs bound to the corresponding training processes. Each developer is responsible for developing an independent Prefab and saves the code and assets in the Prefab.
[0090] Therefore, when a development request from a target user is detected, a corresponding prefab can be matched for the target user, which is called a target prefab. In this way, the target user can update, edit, and maintain the target workflow and target objects in the target scene indicated by the target prefab during construction, solving the conflict problem of merging during multi-person collaborative development.
[0091] Regarding S305, since different users update, edit and maintain the workflows or objects in the scenes indicated by their respective matching prefabricated bodies, the processing results of multiple users can construct a business process management system.
[0092] As shown above, after assigning matching prefabricated objects to different developers, each developer independently develops his or her own workflow, business process or scenario to build a business process management system. However, during the development process of each developer, a decoupled design can also be used to decouple the BPMS from the business logic class. The specific process can be seen in steps A1-A4:
[0093] A1: Parse the demand information, record the parsed demand information in a form, and convert the form into JSON format.
[0094] Among them, the data format of the demand information is not limited. For the sake of unification, the training process table can be set according to the needs of the training project. In other words, the key data information of each work process in the training project is extracted and recorded in an Excel form.
[0095] For example, referring to Table 1, the Excel form specifically includes the following information:
[0096] (1) ID: The unique ID of the training process (hereinafter referred to as Workflow). The training process can also be called a workflow;
[0097] (2)Step Code: The workflow number, including the Step and SubStep IDs.
[0098] (3)Title: The title of the Workflow.
[0099] (4)StepText: The text of the step in the workflow.
[0100] (5)SubStepText: The sub-step text of the Workflow. It will be empty if there is no sub-step.
[0101] (6) TopicBox: Workflow training topic, used for UI display.
[0102] (7) TrainingBox: Workflow training points, used for UI display.
[0103] (8) ExamBox: The key points of the Workflow, used for test questions. Option is each option, and Answer is the correct answer.
[0104] (9) AudioRes: The audio played when the workflow starts.
[0105] (10) Score: The score obtained by completing the workflow.
[0106] Table 1 Excel sheet
[0107]
[0108]
[0109]
[0110] The Excel form can be handed over to the product manager so that the product manager can modify it according to the changes in requirements. Since the Excel form is directly recognized and read by Unity, it needs to be converted into a standard JSON data format that can be parsed by Unity through a tool. The code of the standard JSON data format is not shown.
[0111] A2: Create the structure of each workflow based on the requirement information in JSON format.
[0112] Each workflow corresponds to the data in the Excel form, storing the key information of the training data. For easy calling, the structure of each workflow can be created through WorkflowSystem. The structure of a workflow provided in the embodiment of the present application is as follows:
[0113]
[0114] A3: Based on the structure of each workflow, abstract the action behavior of each workflow and define the interface class of each action behavior.
[0115] Optionally, define the interface class for each action of the Workflow, adopt a loosely coupled design, and abstract the various actions of the Workflow.
[0116] A4: For each interface class, configure a business logic class that implements the action behavior of the interface class, so that the business logic class executes the corresponding action behavior according to the event notification corresponding to the corresponding action behavior.
[0117] Among them, event notification is performed for the business logic class that implements the interface, so that the business logic class can process the corresponding business logic according to the corresponding event notification. Therefore, this design decouples BPMS from the business logic class. When multiple people are developing in parallel, developers do not need to care about how the workflow operates automatically, but only need to process the notifications of each action behavior of the workflow received.
[0118] In a specific example, the action behaviors abstracted by the IWorkflowAction interface class for the management operations of each training process are defined as follows:
[0119] / / Start the workflow
[0120] void StartWorkflow(Workflow workflowStep);
[0121] / / Restart the workflow
[0122] void RestartWorkflow(Workflow workflowStep);
[0123] / / Abort the workflow
[0124] void AbortWorkflow(Workflow workflowStep);
[0125] / / Successfully completed the workflow
[0126] void CompleteWorkflow(Workflow workflowStep);
[0127] / / The workflow is not completed
[0128] void FailWorkflow(Workflow workflowStep);
[0129] / / Complete all workflows successfully
[0130] void AllWorkflowCompleted(Workflow workflowStep);
[0131] / / The Step to which the workflow belongs has been completed
[0132] void StepCompleted(Workflow workflowStep)
[0133] Figure 7 A schematic diagram of a workflow of IWorkflowAction provided in an embodiment of the present application.
[0134] After the business process management system is built, if a training instruction is detected, each workflow can be executed in the order of the workflow identification configured by the business process management system. In addition, corresponding notification events are generated for unfinished workflows, restarted workflows, workflows that restart the current step, and workflows that forcibly jump to a specified identification. In this way, based on the notification event, the processing status and action behavior of the corresponding workflow are notified to the corresponding business logic class, so that the business logic class processes the logic corresponding to the current workflow.
[0135] In addition, the business process management system also obtains the currently running workflow through the workflow identifier; or obtains the currently running workflow through the step identifier; or determines the execution order of the current workflow.
[0136] Optionally, during the automated operation of the business process management system, the WorkflowSystem is responsible for handling the core management tasks of the BPMS process management system, including three core modules: BPMS initialization and reset, Workflow addition, deletion, modification, and query, and automated operation of the process system. Figure 8 A schematic diagram of the workflow of a WorkflowSystem provided in an embodiment of the present application.
[0137] (1) Initialization and reset of BPMS:
[0138] WorkflowSystem.GetInstance().InitWorkflowSystem(WORKFLOW_CONFIG_RES); According to the JSON path address of the passed WORKFLOW_CONFIG_RES, BPMS is initialized and the process table is parsed. After the parsing is completed, the Workflow data class will be generated according to the training process table and saved in List and Distionary.
[0139] If you need to reset the WorkflowSystem and process table analysis in the operation project, the analysis process is as follows:
[0140] WorkflowSystem.GetInstance().ResetWorkflowSystem(WORKFLOW_CONF IG_RES)
[0141] After InitWorkflowSystem or ResetWorkflowSystem, the JSON of the process table will be re-parsed and the data will be reset.
[0142] (2) Add, delete, modify, and check Workflow:
[0143] WorkflowSystem can dynamically add, delete, modify and query Workflow:
[0144] / / / Add Workflow
[0145] public void AddWorkflow(Workflow workflow)
[0146] / / / Remove Workflow
[0147] public void RemoveWorkflow(Workflow workflow)
[0148] / / / Remove Workflow
[0149] public void RemoveWorkflow(int id)
[0150] / / / Get the current running Workflow
[0151] public Workflow GetCurrentWorkflow()
[0152] / / / Get the Workflow of the last operation
[0153] public Workflow GetPreviousWorkflow()
[0154] / / / Get Workflow by ID
[0155] public Workflow GetWorkflowByID(int id)
[0156] / / / Get the StepID where the Workflow is located
[0157] public int GetStepIDByWorkflow(Workflow workflow)
[0158] / / / Get the corresponding Workflows according to StepID
[0159] public List <workflow>GetWorkflowsByStepID(int stepID)
[0160] / / / Get the StepID of the currently operating Workflow
[0161] public int GetCurrentStepID()
[0162] / / / Get the SubStepID of the currently operating Workflow
[0163] public int GetCurrentSubStepID()
[0164] / / / Get the ID of the current Workflow
[0165] public int GetCurrentWorkflowID()
[0166] / / / Get all workflows of the current StepID
[0167] public List <workflow>GetWorkflowsByCurrentStepID()
[0168] / / / Get all the workflow steps WorkflowSteps
[0169] public List <workflow>GetAllWorkflowSteps()
[0170] / / / Determine whether it is the first workflow
[0171] public bool IsFirstWorkflow(Workflow workflow)
[0172] / / / Determine whether it is the last workflow
[0173] public bool IsLastWorkflow(Workflow workflow)
[0174] / / / Determine whether the current workflow is the first workflow in Step
[0175] public bool IsFirstWorkflowInStep()
[0176] / / / Determine whether the current workflow is the last workflow in Step
[0177] public bool IsLastWorkflowInStep()
[0178] (3) Automated operation of process systems:
[0179] WorklowSystem will perform various process operations on the Workflow, and notify the bound business logic class of the status and behavior of the current Workflow. After receiving the notification, the business logic class processes the corresponding logic.
[0180] / / / Start the workflow and notify the corresponding event. After calling, start execution from the Workflow with ID 1
[0181] public void StartWorkflow()
[0182] / / / Complete the current Workflow workflow
[0183] / / / After completion, the variable isAutoNext will automatically enter the next workflow, the default value is true
[0184] / / / After all workflows are completed, AllWorkflowCompleted() will be notified
[0185] public void CompleteWorkflow(bool isAutoNext=true)
[0186] / / / The current Workflow is not completed and the corresponding event is notified
[0187] public void FailWorkflow()
[0188] / / / Restart the current Workflow and notify the corresponding event
[0189] public void RestartWorkflow()
[0190] / / / Restart the workflow of the current Step and notify the corresponding event
[0191] public void RestartWorkflowByStep()
[0192] / / / Forcefully jump to the Workflow with the specified ID and notify the corresponding event
[0193] public void GotoWorkflow(int id)
[0194] In the embodiment of the present application, when dealing with more complex process-based work, a lightweight business process management system is designed to manage the workflow and encapsulate the universal functions through prefabricated bodies, allowing multiple people to develop in parallel in the same scene, avoiding conflicts and ensuring the correctness and stability of the workflow operation. In addition, through the loosely coupled design, it is responsible for executing the designed business process and ensuring that the process is executed in accordance with the defined rules and conditions, thereby improving the development efficiency of Unity's multi-person parallel development in the same scene, saving development time and reducing project delivery risks.
[0195] Fig. 9 A schematic diagram of a complete BPMS usage process provided in an embodiment of the present application, Fig. 9 1. Configure the workflow table of Workflow according to the process, parse JSON data and generate Workflow list objects according to the process steps; create Prefabs according to process tasks and distribute them to corresponding developers for updating and maintenance; bind Prefabs to Workflow lists through BpmsBinder; dynamically generate and load Prefabs into the scene through BpmsBinder when the application is running; process the logic of the process according to the callback of the action behavior of IworkflowAction.
[0196] It should be noted that the number of objects, the number of prefabricated bodies, the number of platforms, the number of scenes, the number of workflows, and the number of developers in the drawings of the present application are for illustration only and do not constitute specific limitations.
[0197] like Fig.10 As shown, based on the same inventive concept, an embodiment of the present application provides a device for constructing a business process management system, including a data acquisition module 101, a preform generation module 102, a relationship establishment module 103, a processing module 104 and a system construction module 105.
[0198] The data acquisition module 101 is used to: acquire demand information for building a business process management system; wherein the demand information includes scenario information, description information of at least one object in each scenario, and part or all of the business process information;
[0199] The prefab generation module 102 is used to: construct at least one prefab according to the demand information; wherein each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object;
[0200] The relationship establishment module 103 is used to establish a binding relationship between at least one prefabricated object and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene;
[0201] The processing module 104 is used to: determine a target prefab matching the target user in response to a development request of the target user, so that the target user processes the target workflow indicated by the target prefab and the target object in the target scene;
[0202] The system construction module 105 is used to determine the processing results of each of the multiple users and construct a business process management system.
[0203] In an optional implementation, the relationship establishing module 103 is specifically configured to:
[0204] Create bindings between individual prefabs and workflows; or
[0205] Establishing a binding relationship between a single prefab and a workflow identified by a first setting; or
[0206] Establishing a step binding relationship between a single prefab and a second setting identifier; or
[0207] Establish binding relationships between multiple prefabs and various workflows; or
[0208] Establishing a binding relationship between the plurality of prefabricated bodies and the workflow of the third setting identifier; or
[0209] A step binding relationship between a plurality of prefabricated bodies and a fourth setting identifier is established.
[0210] In an optional implementation, the prefab is stored in a pointer format; wherein the pointer points to a scene or object corresponding to the prefab.
[0211] In an optional implementation, after obtaining the requirement information for system construction, the processing module 104 is further configured to:
[0212] Parse the demand information, record the parsed demand information in the form, and convert the form into JSON format;
[0213] Create the structure of each workflow based on the requirement information in JSON format;
[0214] Based on the structure of each workflow, abstract the action behavior of each workflow and define the interface class of each action behavior;
[0215] A business logic class that implements the action behavior of the interface class is configured for each interface class, so that the business logic class executes the corresponding action behavior according to the event notification corresponding to the corresponding action behavior.
[0216] In an optional implementation, the processing module 104 is further configured to:
[0217] In response to the training instruction, executing each workflow in the order of identification of the workflow configured by the business process management system;
[0218] Corresponding notification events are generated for unfinished workflows, restarted workflows, workflows that restart the current step, and workflows that forcibly jump to a specified identifier.
[0219] In an optional implementation, the processing module 104 is further configured to:
[0220] Based on the notification event, the processing status and action behavior of the corresponding workflow are notified to the corresponding business logic class, so that the business logic class processes the logic corresponding to the current workflow.
[0221] In an optional implementation, after responding to the training instruction, the processing module 104 is further configured to:
[0222] Get the currently running workflow by workflow ID; or
[0223] Get the currently running workflow by step ID; or
[0224] Determine the execution order of the current workflow.
[0225] Since the device is the device in the method in the embodiment of the present application, and the principle of solving the problem by the device is similar to that of the method, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be repeated.
[0226] like Fig.11 As shown, based on the same inventive concept, an embodiment of the present application provides an electronic device, including a processor 111 and a memory 112 .
[0227] The memory 112 is configured to execute:
[0228] Stores demand information from system users for building business process management systems;
[0229] The processor 111 is configured to execute:
[0230] Acquire demand information; wherein the demand information includes scene information, description information of at least one object in each scene, and part or all of the business process information;
[0231] Construct at least one prefab according to the demand information; wherein each prefab includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object;
[0232] Establishing a binding relationship between at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene;
[0233] In response to a development request of a target user, determining a target prefab matching the target user, so that the target user processes a target workflow and a target object in a target scene indicated by the target prefab;
[0234] Determine the processing results of multiple users and build a business process management system.
[0235] In an optional implementation, the processor 111 is specifically configured to execute:
[0236] Create bindings between individual prefabs and workflows; or
[0237] Establishing a binding relationship between a single prefab and a workflow identified by a first setting; or
[0238] Establishing a step binding relationship between a single prefab and a second setting identifier; or
[0239] Establish binding relationships between multiple prefabs and various workflows; or
[0240] Establishing a binding relationship between the plurality of prefabricated bodies and the workflow of the third setting identifier; or
[0241] A step binding relationship between a plurality of prefabricated bodies and a fourth setting identifier is established.
[0242] In an optional implementation, the prefab is stored in a pointer format; wherein the pointer points to a scene or object corresponding to the prefab.
[0243] In an optional implementation, after obtaining the requirement information for system construction, the processor 111 is further configured to execute:
[0244] Parse the demand information, record the parsed demand information in the form, and convert the form into JSON format;
[0245] Create the structure of each workflow based on the requirement information in JSON format;
[0246] Based on the structure of each workflow, abstract the action behavior of each workflow and define the interface class of each action behavior;
[0247] A business logic class that implements the action behavior of the interface class is configured for each interface class, so that the business logic class executes the corresponding action behavior according to the event notification corresponding to the corresponding action behavior.
[0248] In an optional implementation, the processor 111 is further configured to execute:
[0249] In response to the training instruction, executing each workflow in the order of identification of the workflow configured by the business process management system;
[0250] Corresponding notification events are generated for unfinished workflows, restarted workflows, workflows that restart the current step, and workflows that forcibly jump to a specified identifier.
[0251] In an optional implementation, the processor 111 is further configured to execute:
[0252] Based on the notification event, the processing status and action behavior of the corresponding workflow are notified to the corresponding business logic class, so that the business logic class processes the logic corresponding to the current workflow.
[0253] In an optional implementation, after responding to the training instruction, the processor 111 is further configured to execute:
[0254] Get the currently running workflow by workflow ID; or
[0255] Get the currently running workflow by step ID; or
[0256] Determine the execution order of the current workflow.
[0257] An embodiment of the present application also provides a computer storage medium, in which computer program instructions are stored. When the instructions are executed on a computer, the computer executes the steps of the method for constructing the business process management system.
[0258] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0259] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0260] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0261] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0262] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.< / workflow> < / workflow> < / workflow>
Claims
1. A method for constructing a business process management system, characterized in that: include: Obtaining demand information for building the business process management system; wherein the demand information includes scenario information, description information of at least one object in each scenario, and part or all of the business process information; Construct at least one prefabricated body according to the demand information; wherein each prefabricated body includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object; Establishing a binding relationship between the at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene; In response to a development request of a target user, determining a target prefab matching the target user, so that the target user processes a target workflow and a target object in a target scene indicated by the target prefab; Determine the processing results of multiple users and build a business process management system.
2. The method according to claim 1, characterized in that: The establishing of the binding relationship between the at least one prefabricated body and each workflow includes: Create bindings between individual prefabs and workflows; or Establishing a binding relationship between a single prefab and a workflow identified by a first setting; or Establishing a step binding relationship between a single prefab and a second setting identifier; or Establish binding relationships between multiple prefabs and various workflows; or Establishing a binding relationship between the plurality of prefabricated bodies and the workflow of the third setting identifier; or A step binding relationship between a plurality of prefabricated bodies and a fourth setting identifier is established.
3. The method according to claim 1, characterized in that The storage form of the prefabricated body is a pointer form; wherein the pointer points to a scene or object corresponding to the prefabricated body.
4. The method according to claim 1, characterized in that: After obtaining the requirement information for system construction, the method further includes: Parsing the demand information, recording the parsed demand information in a form, and converting the form into JSON format; Create the structure of each workflow based on the requirement information in JSON format; Based on the structure of each workflow, abstract the action behavior of each workflow and define the interface class of each action behavior; A business logic class that implements the action behavior of the interface class is configured for each interface class, so that the business logic class executes the corresponding action behavior according to the event notification corresponding to the corresponding action behavior.
5. The method according to claim 1, characterized in that The method further comprises: In response to the training instruction, executing each workflow in the order of identification of the workflow configured by the business process management system; Corresponding notification events are generated for unfinished workflows, restarted workflows, workflows that restart the current step, and workflows that forcibly jump to a specified identifier.
6. The method according to claim 5, characterized in that The method further comprises: Based on the notification event, the processing status and action behavior of the corresponding workflow are notified to the corresponding business logic class, so that the business logic class processes the logic corresponding to the current workflow.
7. The method according to claim 5 or 6, characterized in that: After responding to the training instruction, the method further includes: Get the currently running workflow by workflow ID; or Get the currently running workflow by step ID; or Determine the execution order of the current workflow.
8. An electronic device, characterized in that: including a processor and a memory; The memory is configured to execute: Stores demand information from system users for building business process management systems; The processor is configured to perform: Acquire the demand information; wherein the demand information includes scene information, description information of at least one object in each scene, and part or all of the business process information; Construct at least one prefabricated body according to the demand information; wherein each prefabricated body includes description information of at least one object in at least one scene; the description information includes part or all of the model, material, code and animation of the object; Establishing a binding relationship between the at least one prefabricated body and each workflow; wherein each workflow includes at least one business process, and each business process includes an operation process of setting an object in a setting scene; In response to a development request of a target user, determining a target prefab matching the target user, so that the target user processes a target workflow and a target object in a target scene indicated by the target prefab; Determine the processing results of multiple users and build a business process management system.
9. The electronic device according to claim 8, characterized in that: The processor is specifically configured to execute: Create bindings between individual prefabs and workflows; or Establishing a binding relationship between a single prefab and a workflow identified by a first setting; or Establishing a step binding relationship between a single prefab and a second setting identifier; or Establish binding relationships between multiple prefabs and various workflows; or Establishing a binding relationship between the plurality of prefabricated bodies and the workflow of the third setting identifier; or A step binding relationship between a plurality of prefabricated bodies and a fourth setting identifier is established.
10. The electronic device according to claim 8, characterized in that: The storage form of the prefabricated body is a pointer form; wherein the pointer points to a scene or object corresponding to the prefabricated body.
Citation Information
Cited By
Method and device for constructing business model, equipment and storage medium
CN120560620A
Method and apparatus for constructing a business model, device and storage medium
CN120560620B