# 表結構設計
> 表結構的設計是軟件開發的重要步驟,在設計之前,要對業務需求進行詳細的調研和確認,把業務過程轉化為業務模型對象,在業務模型中抽象出業務實體和業務實體間的關系(即業務流程)。
>
> 一般來講,一個業務系統會由基礎數據維護,業務處理和數據分析報表三個模塊。
>
> 下面,我們舉例對一個餐廳的點餐系統進行數據庫的設計。
## 業務需求
* 會員注冊,要求記錄詳盡的會員基礎資料和相關消費資料;
* 連鎖餐廳管理,記錄各個餐廳的菜品結構,菜品會存在價格屬性的規格(如份量等)和非價格屬性的規格(如口味等);
* 記錄每個菜品的成本;
* 記錄客戶的點餐過程數據,包括如入座時間、確認訂單時間、埋單時間等,同時要維護店員的基本資料,對應關聯到客戶訂單;
* 要求能對客戶的下單菜品按制作檔口進行分單,安排制作;
* 能按照業務數據分析客戶的消費水平、菜品分析、客流分析等。
## 數據模型設計
