What is "Business Activity"? I think it is a higher abstraction of activity at the business layer. It is like we extract the common methods of sub-classes to abstract classes when we propose object orientation, we extract the activities from the public to the "business activities. "Business Activities" are built under "business processes", which is a business abstraction layer-by-layer process. A "Business Activity" can correspond to multiple activities with the same business concept in a specific process, it can also correspond to multiple activities in the same business link in multiple specific processes under the same "business process.
In this way, when modeling a business process, we first define a "business process", secondly, we should identify the "Business Activities" in the process, and customize some attributes for "business activities, the last step is to define the specific process. Using a set of established "business processes" to customize the process becomes very easy. The process is associated with business processes and activities are associated with business activities, in this way, all business-related attributes can be set.
Previous versions of workflows mix business-related activities and process-related attributes in the process designer. This implementation method has the following drawbacks:1, The same business concept cannot be reused. The business concept defined in one activity needs to be refixed in another activity with the same business meaning. Although we have implemented active replication, I think this replication is not a good way to solve the reuse of business meaning.2And all business-related entities are independent from the workflow system. When defining a process, the settings of these business entities are recorded in the process definition. Due to the version control of the process, the definition of the previously run process cannot be changed, and the business entity may change, for example, if the field permissions of a document have changed (for a custom form, it is generated to adapt to the changes, and it is easier to change), the component parameters have been added, and so on, as a result, the business changes during the process running cannot be reflected in a timely manner, or even cannot be run.3, Process running results, more commonly speaking, may be that the approval conclusions and opinions cannot be classified according to the business meaning, it is obvious that when the approval results are printed, all comments and conclusions are listed together (this requirement comes fromOAProject Team ).
Which activity attributes should be placed on "Business Activities"? I think form definitions and form permission settings (action and field permissions) can also be considered for external tools and rules.
Workflows can treat normal processes andOAThe permission settings of the Dynamic Flow used include the form parameter settings, form action permission settings, and form field permission settings.
It is worth mentioning that permissions such as signing, signing, and redirection are purely process permissions and should not be confused with the permissions of the form, it can forcibly identify the Process dynamics provided by these process engines and Set permissions for them.
For special and backward compatibility considerations, these attributes added in "Business Activities" are retained in the process definition. When using these attributes, you must first find the specific activity definitions, then look for the definition on the business activity. Such activities for the same "Business Activity" can also have completely different features, and the old version of the process definition can still run normally even if the activity is not associated with the business activity.