You are on page 1of 3

1.

*Customer views available options:*

- Message Type: Request

- Arrow from Customer to System: viewOptions()


2. *Customer places order:*

- Message Type: Request

- Arrow from Customer to System: placeOrder(selectedOption)

3. *System verifies order status:*

- Message Type: Request

- Arrow from System to Order Module: verifyOrderStatus(orderID)

4. *System sends order details to store and supplier:*

- Message Type: Request

- Arrows from System to Store and Supplier: sendOrderDetails(orderDetails)

5. *Stock availability check:*

- Message Type: Request

- Arrow from System to Store/Database: checkStockAvailability(itemID)

- Decision:

- If available: Continue

- If not available:

- Arrow from System to Supplier: restock(itemID)

- Arrow from System to Customer: notifyDelay()

6. *Customer receives a receipt:*

- Message Type: Response

- Arrow from System to Customer: sendReceipt(receiptDetails)

7. *Customer provides shipment details:*

- Message Type: Request

- Arrow from Customer to System: provideShipmentDetails(shipmentInfo)


8. *System processes the order:*

- Message Type: Request

- Arrows from System to Order Module and Shipment Module: processOrder(orderID, shipmentInfo)

9. *System sends successful order message:*

- Message Type: Response

- Arrow from System to Customer: sendSuccessfulOrderMessage(successMessage)

You might also like