|
Activity | Constraints |
|
Ask Quotation | - A new Ask Quotation activity must be created every time a start event occurs. |
Provide Quotation | - A quotation cannot be provided until an Ask Quotation or a Change Quotation finishes. A single new Provide Quotation instance must exist for each completed Ask Quotation or Change Quotation activity. |
- After providing a quotation we can either ask for a change in the quotation or submit the order, but not both (at least one of them must be executed). |
Change Quotation | - The previous Provide Quotation activity must have been completed (a single new ask quotation activity can be generated). Otherwise, it must have been created in response to the occurrence of a start event (due to the implicit XOR merge gateway corresponding to the two incoming arrows). |
Submit Order | - The previous Provide Quotation activity must be completed. Besides, only a single Submit Order instance must be created for the same Provided Quotation instance. |
- After submitting an order, a Choose Shipment or a Standard Shipment activities must be executed (but not both). |
Standard Shipment | - The previous Submit Order activity must be completed. Besides, only a single Standard Shipment instance must be created for the same Submit Order instance. |
- Once the standard shipment is completed, a new Ship Order activity must be created. |
Choose Shipment | - The previous Submit Order activity must be completed. Besides, only a single Choose Shipment instance must be created for the same Submit Order instance. |
- After choosing the shipment, both the Arrange Transport and Process Order Line activities must be executed. |
Arrange Transport | - The preceding Choose Shipment activity instance must be completed. Besides, a single Arrange Transport activity instance must be executed for each Choose Shipment activity instance. |
Process OrderLine | - The preceding Choose Shipment activity must be completed. |
- The system must exactly execute as many Process OrderLine activity instances as the number of order (quotation) lines for the related order. |
Empty Activity1 | - The new Empty activity instance can be created (as completed) when the transport has been arranged and all order lines have been processed. |
- Then, a new Ship Order instance must be executed before ending the case. |
Ship Order | - Once a Standard Shipment xor an Empty Activity1 instance has been completed, the order can be shipped. |
- For each order shipped, an invoice must be sent and the reception of the goods must be acknowledged by the customer. |
Send Invoice | - The preceding Ship Order activity instance must be completed. Besides, a single Send Invoice activity instance must be executed for each Ship Order activity instance. |
Receive Goods | - The preceding Ship Order activity instance must be completed. Besides, a single Receive Goods activity instance must be executed for each Ship Order activity instance. |
Pay Goods | - An order cannot be paid until the invoice has been send and the good have been received. When both previous activities have been done, a single pay goods activity shall be created in response. |
|