Skip to main content

Restaurant information system requirements

Short answer

Functional requirements: order entry, sending to kitchen, inventory tracking, and report generation. Non-functional requirements: order reaches kitchen within 2 seconds, 99.5% availability, and a new waiter learns order entry in 30 minutes.

A restaurant uses an information system that takes customer orders, sends the order to the kitchen, monitors the goods sold and inventory and generates reports for management. List functional and non-functional requirements for this Restaurant Information System.

Assumptions: the system is used by waiters (order entry on tablets/terminals), kitchen staff (kitchen display), cashier and manager; it works on the restaurant's local network with a central database.

Functional requirements

  1. The waiter shall be able to enter a customer order with table number, menu items, quantity and special notes (for example "less spicy").
  2. The system shall send each confirmed order to the kitchen display/printer immediately, grouped by table.
  3. Kitchen staff shall be able to mark an order item as "preparing" and "ready", and the waiter shall be notified.
  4. The waiter shall be able to modify or cancel an order before the kitchen starts preparing it.
  5. The system shall generate the bill for a table, including VAT and service charge, and record the payment method (cash, card, wallet).
  6. The system shall record goods sold and automatically reduce inventory of ingredients using each menu item's recipe.
  7. The system shall alert the manager when stock of any item falls below its reorder level.
  8. The manager shall be able to add, update or remove menu items and prices.
  9. Store staff shall be able to record purchase of new stock to update inventory.
  10. The system shall generate reports for management: daily/monthly sales, best-selling items, sales by waiter, inventory status and wastage.

Non-functional requirements

Performance

  • An order shall reach the kitchen display within 2 seconds of confirmation.
  • The system shall support at least 30 terminals at peak time without slowdown.

Reliability and availability

  • The system shall be available during all opening hours (e.g. 10 am–11 pm) with at least 99.5% availability.
  • No confirmed order shall be lost; data shall be backed up daily.

Usability

  • A new waiter shall be able to take orders after 30 minutes of training; order entry shall need at most a few taps per item.

Security

  • Each user shall log in; only the manager can change prices, view reports or delete bills.
  • All bill cancellations shall be logged with user and time.

Legal / external

  • Bills shall follow government VAT and tax-invoice rules.

Portability / maintainability

  • The order screen shall run on Android tablets and desktop browsers; new menu categories shall be addable without code changes.

✓ Answer checked by Claude Sonnet 5.5

All Software Engineering chapter 1 questions →