---
title: "Food ordering system sequence diagram"
subject: "Object Oriented Analysis and Design"
chapter: 2
key: "semester_6/object_oriented_analysis_and_design:food-ordering-system-sequence-diagram"
source: https://www.bctengineer.com/q/semester_6/object_oriented_analysis_and_design/food-ordering-system-sequence-diagram
site: BCT Engineering
---

# Food ordering system sequence diagram

Object Oriented Analysis and Design · Chapter 2: Object Oriented Analysis

- Asked in: 2069 Poush, 6 marks
- Video: [How to Make a UML Sequence Diagram](https://www.youtube.com/watch?v=pCK6prSq8aw) — Lucid Software
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_6/object_oriented_analysis_and_design/food-ordering-system-sequence-diagram
- Whole chapter: https://www.bctengineer.com/md/semester_6/object_oriented_analysis_and_design/chapter-2

## Question

Construct a system sequence diagram for customer from a "Food ordering system" of a very busy restaurant where seating and ordering is regulated by seating manager.

## Short answer

Customer requests a seat; system coordinates with SeatingManager for table assignment. The customer then views menu, adds items in a loop, confirms order, requests bill, makes payment, and releases the table. System responds with table number, menu, order number, bill, and receipt.

## Answer

A **system sequence diagram (SSD)** treats the whole system as one black box (`:System`) and shows the events that the actor (Customer) generates and the system's responses, in time order.

**Assumptions:** the restaurant is busy, so the **seating manager** gives the customer a table (seat) first, then the customer orders, eats, and pays. The customer interacts with the system through a tablet/terminal. Actors: Customer, SeatingManager (supporting actor).

```text
 Customer      :FoodOrdering System    SeatingManager
    | requestSeat(partySize) |               |
    |----------------------->|               |
    |                        |  findTable()  |
    |                        |-------------->|
    |                        |<- - - - - - - |
    |<- - - tableNo or wait--|               |
    | viewMenu()             |               |
    |----------------------->|               |
    |<- - - - menu - - - - - |               |
    | loop  [more items]                     |
    | addItem(itemId, qty)   |               |
    |----------------------->|               |
    |<- - - - - item added - |               |
    | end loop                               |
    | confirmOrder()         |               |
    |----------------------->|               |
    |<- - - orderNo, total - |  (sent to kitchen)
    | requestBill()          |               |
    |----------------------->|               |
    |<- - - - - bill - - - - |               |
    | makePayment(amount)    |               |
    |----------------------->|               |
    |<- - - - receipt - - - -|               |
    |                        | releaseTable()|
    |                        |-------------->|
```

**Explanation of the events**
1. `requestSeat` - system asks the seating manager for a free table; if none is free, the customer is put in a waiting queue.
2. `viewMenu` - system returns the menu.
3. `addItem` repeated in a loop for each dish.
4. `confirmOrder` - order number and total returned; kitchen is notified.
5. `requestBill`, `makePayment` - bill and receipt are produced.
6. Table is released so the next party can be seated.

Dashed lines are returns. The `loop` fragment shows repetition of `addItem`.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. In a system sequence diagram the system is shown as:
   A. A database only
   B. One black-box object
   C. A set of classes
   D. Many internal objects
   Answer: B. An SSD shows events between actors and the system as a single :System. (Key point: SSD black box)

2. Because the restaurant is busy, which event comes first?
   A. addItem
   B. requestSeat to the seating manager
   C. makePayment
   D. confirmOrder
   Answer: B. Seating is regulated, so the customer first gets a table (or waits). (Key point: Order of events)

3. What does the loop fragment around addItem show?
   A. The bill is repeated
   B. The system restarts
   C. Items are added repeatedly for each dish
   D. The order is cancelled
   Answer: C. The loop fragment represents repetition of addItem. (Key point: Loop fragment)

4. What do the dashed lines in the SSD represent?
   A. Return messages/responses
   B. Constraints
   C. Asynchronous deletion
   D. Object creation
   Answer: A. Dashed arrows are returns from the system. (Key point: Dashed lines)

## Related in Object Oriented Analysis and Design

- [External actors and library system sequence diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aexternal-actors-library-system-sequence-diagram) — Object Oriented Analysis and Design, chapter 2
- [KUKL customer system design and code](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Akukl-use-case-class-diagram-code) — Object Oriented Analysis and Design, chapter 4
- [ATM withdrawal sequence diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aatm-withdrawal-sequence-diagram) — Object Oriented Analysis and Design, chapter 2
- [Event management system summary and class diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aoems-executive-summary-class-diagram) — Object Oriented Analysis and Design, chapter 2
- [Explain online order sequence diagram](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Aorder-processing-sequence-diagram-explain) — Object Oriented Analysis and Design, chapter 2
- [Money transfer sequence diagram questions](https://www.bctengineer.com/question.md?key=semester_6%2Fobject_oriented_analysis_and_design%3Amoney-transfer-sequence-diagram) — Object Oriented Analysis and Design, chapter 2

## Related in other subjects

- [Restaurant information system requirements](https://www.bctengineer.com/question.md?key=semester_5%2Fsoftware_engineering%3Arestaurant-requirements) — Software Engineering, chapter 1
- [Sequence detector 1011 state diagram and VHDL](https://www.bctengineer.com/question.md?key=semester_6%2Fembedded_system%3Avhdl-sequence-detector-1011) — Embedded System, chapter 9
- [Plot sequence; properties of LTI system](https://www.bctengineer.com/question.md?key=semester_7%2Fdigital_signal_analysis_and_processing%3Aplot-sequence-lti-properties) — Digital Signal Analysis and Processing, chapter 1
- [Reactance diagram of eight-bus system](https://www.bctengineer.com/question.md?key=semester_4%2Fpower_system_analysis_i%3Areactance-diagram-eight-bus) — Power System Analysis I, chapter 3
