Workflow system development
The general workflow management system consists of three parts: a workflow engine, a process management tool, a process definition tool (including diagram-forming modeling tool) and client. The focus of development is the process definition tool, and the workflow engine can consider using others' products. Each component includes its own data system, interface and performance form. It is best to develop a graphic interaction interface. The workflow of the entire system is as follows:
Workflow Modeling Tools Establish Model -> Process Definition Tool Definitions to established models -> Automatically store established models into databases or automatically generate XPDL files -> Workflow engine calls workflow definitions from databases or XPDL files - > Perform workflow -> Return to execute related data.
Basic development strategy: 1. Understand the basic concept of workflow, more concepts involved in workflow technology, are not easy to understand. 2. Take the navigation problem of the process as the core. 3. Comply with certain standards during the development process, such as the interface of WFMC 1
Workflow engine part
Basic function of workflow engine
1, explain the process definition
2, control process example - creation, activation, hang, termination, etc. 3, the process of active navigation, may include the order or parallel operation, the last time period, explain the workflow related data 4, participant signature and exit 5. Determine the task item, implement the user intent; provide the interface, support user interaction 6, maintain workflow control data and workflow related data, to deliver workflow related data between applications or rooms, and provide the interface to call external programs, Connect all workflow related data 8, provide control, management, and review functions
Workflow engine part, you can develop it yourself, you can also consider the use of other companies' products, but must guarantee the above basic functions.
Process Manager
The process manager should at least contain two parts: management section and monitoring part
Management section: Provide perfect user management, role management, system settings, system security management, configuration file management, log management, and users' operation rights distribution are as follows:
Taking the department, user group, and roles describe the organizational structure based on department, user group, role, and user, to achieve maximum flexibility.
Monitoring section: Mainly implement the monitoring of workflows, allowing managers to track and control the status of role, activity, nodes, process instances and paths flowing through the process instance; the path that can be reproduced in a graphic process instance You can display the ongoing process instance, and provide management mechanisms, allowing the monitor to terminate or suspend certain process instances if necessary. At the same time, the system also provides statistical data and reports, dynamic change process of the work process, coordinating the relationship between various parts, and then enhances the efficiency of business management. Load balancing improves workflow work efficiency.
Process definition tool
This part is the focus of development, the process definition tool section includes: process modeling section, XPDL automatic generation part, interface design sections, report design, and automatic partial and design model simulation part of the design model.
1) Process Modeling uses graphical approach to allow developers to design or modify corporate workflows with minimal time, modeling tools provide considerable process logic expressions, which can represent very complex processes, and The interface design section, the report design part combines the function of each process step to perform, and the organism modeling tool is combined to easily accurately select the participants performed by each activity. The biggest advantage of Process Designer is that the developer avoids complex and time-consuming process program development processes during design and simulation processes.
Basic features are as follows:
1) Graphical drag and drop mode establishment workflow model 2) Humanized various options 3) User interface 4) Multi-window User interface 4) Rich process graphic elements 5) Process elements copy, paste, delete operation 6) Support at the same time Model file Editing 7) Fast Location Procedure Elements 8) Support Graphic Layer Show 9) Model File Unified Savage, Security Management 10) Available Various Activity Types Adaptates to Different Business Process Requirements 11) Support multiple process logic relationships 12) Support Substation Design 13) Support User Custom Type Data 14) Participants in Workflow Process Support Various Expression 15) Support Built Block Design 16) Setting Workflow Process Time Limits 17) Support Workflow Permission Management 18) The legality of the model 19) Graphic output of model file 2) XPDL automatic generation part
This part is to automatically transform the graphical process model that has been defined into XPDL documents or other universal forms.
The physical form of workflow logic: 1. Use databases to store logic
2. File format storage logic with WPDL or XPDL
My idea: Generally, the database is used to store better internal operability, and the file format is more conducive to the system's package and the unity of external interface. After the database logic is logically, the file format is made, first put the models in the model. The properties of the elements are in the database, and then generate a standard file from the database. As a standard interface, it is very convenient (or generating a standard XML file directly)
Key points for workflow flow logic implementations: (1) Implementation of logic (3) conditions for interface methods (2) should have
3) Form Designer This section provides a graphical application development tool similar to page design. Users can use graphical design methods to develop dynamic page applications, which can be saved as HTML or JSP, and have databases Accessibility. Runtime users will access the design results from the browser. Its biggest advantage is that developers avoid the development process of applications in activities 4) Report Design and Automatic Generation Section (Report Designer) It provides the ability to graphically design complex statements, which can design very complex reports, And you can draw a variety of statistical analysis, you can use multiple forms of output. 5) Process Model Simulation section
Simulate and test the model that has been defined
Client
Perform a variety of operations such as approval in the client, implement the specific flow of the process
Process flow mode:
Approval, recommendations, knowledge, decision, execution
Approval: By or pass, you can give suggestions
Suggestion: give relevant advice
Search: Process notification event, does not affect the flow of the process, can notify the flow of the literati process through the way
Decided: Keep the process continues or terminate to a certain step, so that the process has a redirected function
Execution: Permissions can be approved within a certain period of time, more than the specified time can be implemented in the way that has been specified.
Ultimately, forming a workflow flow flow report that can be viewed by the person who can view the person or designated group