From the programmer's perspective, why do we need a workflow?

Source: Internet
Author: User
Every programmer may have such a question when he or she comes into contact with a workflow-I can implement it in a general way. Why should I use a workflow? I once asked this question, but now I understand it a little bit. Don't worry about the answer. You may understand the following example.
This is a simple business-ordering process:
  1. The customer submits the purchase order

  2. Salesman executes order processing

  3. If the product is out of stock, it will be transferred to the factory for production.
  4. Warehouse shipment

  5. Logistics delivery


If you do not use the workflow technology, you need:
  • Interaction pages and background processing programs must be developed for each activity point.

  • You must determine the next activity node and its operator for each activity flow.

  • Each operation requires maintenance of business data and process-related data.

The final result is as follows:


This does not include monitoring, control, and analysis processes.
However, if we use a Workflow
This looks much simpler. The workflow management system on the right takes over the definition and execution of all ordering businesses in terms of processes. This method has many advantages:
  • Use a dedicated process data system to maintain all data involving process flow.

  • The "Process Design" tool is provided to help you define the ordering process model, and a visual interface is generally provided.

  • All processes are handled by the Process Engine, avoiding conflicts between demand changes and hard coding.

  • The workflow engine also provides a number of APIs that can easily combine workflow management with business operations.

Therefore, introducing workflow technology in a suitable project is very beneficial for basic development:
  • Reduce development risks
By using terms such as activity, flow, status, and behavior, business analysts and developers can talk in the same language. An excellent process design modeling tool can even make developers not necessarily translate user requirements into detailed design documents.
  • Centralized Process Implementation
To cope with frequent changes in business processes, the biggest advantage of using workflow technology is that the implementation code of business processes is no longer scattered in a variety of business systems.
  • Accelerated development
Developers no longer need to pay attention to Process participants, linkage of activity nodes, and flow control ...... Many of these tasks are taken over by the workflow framework. Therefore, developers can develop faster, with fewer code errors and easier system maintenance.
  • Improved support for iterative development
If the business process in the system is hard-coded, it will not be easy to change. The demand analyst will spend a lot of energy in the pre-development business analysis and want a success. Sadly, this is rarely implemented in any software project development. The workflow management system makes it easy to deploy and re-orchestrate business processes. Application Development related to business processes can be promoted in an "iterative/progressive" manner, that is to say, the workflow technology supports "requirement analysis does not have to be completely successful once" to some extent ".


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.