Exception handling scheme for business process

Exception handling scheme

Assuming the normal flow is as follows:
insert image description here

If there is an exception in step 2, there are generally two solutions:
1. Undo step 1, when the whole process has not happened;
insert image description here
2. Provide remedial step 2.1, and then continue to step 3
insert image description here

When adding a remedial step, it is necessary to consider what to do if the remedial step also produces an exception.

example

Fleet fuel card top-up process
insert image description here

scene 1

Assume that after the bank card payment is successful, the gas card recharge fails. This means that the customer has paid, but his gas card has not been charged.

At this time, there are two possible solutions.

plan 1

Cancel the bank card payment, when the recharge process has not happened this time.
insert image description here

Scenario 2

Provide a "replenish value" step, and continue to print the receipt after the value is successfully replenished. And if the "replenishment value" fails, it is allowed to re-initiate the "replenishment value".
insert image description here

Option 2 is not recommended for this scenario, because customers will often ask for a refund if the replenishment value has been failing without success. The card payment will be canceled at this time. Therefore, it is better to use option 1 directly. Once the recharge of the gas card fails, the bank card payment is directly cancelled.

scene 2

Assume that after the fuel card is recharged successfully, the receipt fails to be printed.

At this time, there are two solutions.

plan 1

Cancel the gas card recharge and bank card payment, when the recharge process did not happen this time.
insert image description here

Scenario 2

Provides a "reprint" step. If the "reprint" fails, it is allowed to re-initiate the "reprint".
insert image description here
Obviously, Option 1 is not suitable. Because what customers really care about is whether the recharge of the gas card is successful. As for the bills, some customers may not care so much. So option 2 should be used.

Summarize

If the exception occurs in a step that is " strongly related to the customer " (such as recharging), it is generally to cancel the previous steps as if the business process did not happen.

If the exception occurs in a step that is " weakly related to the customer " (such as printing a ticket), or a step that is " irrelevant to the customer " (such as: sending the transaction flow, which is related to the merchant), generally a remedial step is provided. And if an exception occurs in the remedial step, it is allowed to re-execute the remedial step.

Guess you like

Origin blog.csdn.net/jiejingguo/article/details/122718242