--- # System prepended metadata title: 軟體需求文件(SRD) --- # 軟體需求文件(SRD) --- ## 專案資訊 - **專案名稱**:海大外送系統 - **撰寫日期**:10/13 - **發展者**:呂翰昇、陳宥霖、陳婕熙、鄭靜怡、謝誌評 --- ## 版次變更記錄 | 版次 | 變更項目 | 變更日期 | |------|----------|----------| | 0.1 | 初版| <2025/10/13> | | 0.2 | 補上流程、Wireframe,變更付款方式,修改使用者卡片 |<2025/11/22>| | 0.3 | 新增營收統計需求 |<2025/12/24> | | 1.0 | | | --- ## 目錄 1. [接受準則 (Acceptance Criteria)](#section1) 2. [系統概述 (System Description)](#section2) 3. [操作概念 (Operational Concepts)](#section3) 4. [使用者故事地圖 (User Story Map)](#section4) 5. [使用者介面分析 (User Interface Analysis)](#section5) 6. [功能需求 (Functional Requirements)](#section6) 7. [非功能需求 (Non-functional Requirements)](#section7) --- ## <span id="section1">接受準則 (Acceptance Criteria of this document)</span> - Clearly and properly stated(需求需清楚且適當的陳述) - Complete(需求需完整) - Consistent with each other(需求之間需維持一致性) - Uniquely identified(每項需求有明確之識別) - Appropriate to implement(需求需可被實作) - Verifiable(需求需可被驗證) --- ## <span id="section2">系統概述 (System Description)</span> 此外送平台系統以 **「三方互動」** 為核心架構,並融入海大特色,指定數個面交地點(於海大校園內),讓海大學生在忙著上課之餘也能顧到肚子。系統明確劃分商家、買家與外送員三種角色,並透過即時訂單通知機制串聯整個外送流程。系統設計強調 **即時性、模組化** 與 **使用者體驗,使訂單從建立、付款、配送到評價形成完整的服務,。**  --- ## <span id="section3">操作概念 (Operational Concepts)</span> |角色| 功能區塊 | 功能特色 | | -------- | -------- | -------- | |商家(管理員)|上架商品、接收訂單、交付外送員、收款、查看評價|提供後台管理介面,可即時管理商品與訂單狀態| |買家 |瀏覽商品、指定地點、下單付款、確認收餐、評價 |提供前端介面,強調操作便利| |外送員|查附近訂單、接單、取餐、更新進度、確認交付、查看評價 | 強調定位與即時資訊同步,支援多筆配送任務| #### 流程  --- ## <span id="section4">使用者故事地圖 (User Story Map)</span>  ### 使用者故事卡片(MVP) U:未登入使用者 B:登入之買家 D: 外送員 S:商家/管理者 |代號| 角色 | 需求 | 價值/目的 | | -------- | -------- | -------- | -------- | |U-1| 未登入使用者 | 註冊帳號 | 我能登入使用系統的下單功能 | |U-2 |未登入使用者 | 登入 | 我能開始下單 | |B-1| 登入之買家 | 瀏覽商品詳細資訊 | 我可以選擇心儀商品 | |B-2| 登入之買家 | 將商品加入購物車 | 我能確認所選商品而後下單 | |B-3| 登入之買家 | 指定取餐地點 | 選擇自己方便的取餐地點 | |B-4| 登入之買家 | 確認已加入餐點 | 確認自己選擇了那些商品 | |B-5| 登入之買家 | 查看訂單總額 | 確認此筆訂單支出金額 | |B-6| 登入之買家 | 下單 | 商家與外送員可以收到我的訂單 | |B-7| 登入之買家 | 外送員/商家管理員確認訂單 | 確認我的訂單有人負責 | |B-8 |登入之買家 | 貨到付款 | 一手交錢一手交貨 | |D-1|外送員|查看訂單資訊|我決定是否要接訂單| |D-2|外送員|接受/拒絕訂單|選擇合適的訂單| |D-3|外送員|查看外送目的地的導航|更快到達目的地| |D-4|外送員|顯示預估時間|掌握時間| |D-5|外送員|自動傳送送達訊息給買家|讓買家知道外送員已到達| |D-6|外送員|交易完成|結束此筆訂單並計算收入| |S-1| 商家/管理者 | 上傳餐點名稱、介紹、照片 | 供買家參考 | |S-2| 商家/管理者 | 顯示餐點狀況 | 讓買家追蹤現況 | --- ## 使用者介面分析(User Interface Analysis) 使用者介面設計以「外送訂單流程清晰、操作簡便」為主要目標。整體風格採用淺藍色主題,確保使用者能在最少步驟、並且快速的完成任務。 ### 1. 操作概念(Interaction Concept) 系統分為三大角色: - **買家(Customer App)**:可瀏覽店家、選擇餐點、下單、追蹤訂單狀態。 - **商家/管理者(Seller App)**:可接收訂單、更新餐點狀態。 - **外送員(Deliverer App)**:可接單、查看路線、更新配送狀態。 ### 2. 核心介面設計(Core UI Design) #### Wireframe  #### 消費者端(Customer App) | 介面 | 功能 | 設計說明 | |------|------|-----------| | 首頁 / 餐廳列表頁 | 顯示附近可訂購店家、分類與搜尋欄 | 採卡片式設計,有圖片與評價,提供篩選與搜尋功能。主畫面右上角有「查看購物車」 | | 餐廳詳情頁 | 查看菜單、店家資訊、營業時間 | 使用可摺疊分類與餐點加購按鈕 | | 購物車頁 | 顯示已選餐點與總金額 | 可修改數量、移除項目,顯示預估時間與外送費 | | 結帳頁 | 選擇指定地點、確認付款、備註 |點選取餐地點,並可附上備註| | 訂單追蹤頁 | 顯示配送進度與預估到達時間 | 使用時間軸視覺化顯示狀態(準備中→外送中→已送達),支援即時位置更新 | --- #### 商家/管理者端(Seller App) | 介面 | 功能 | 設計說明 | |------|------|-----------| | 訂單管理首頁 | 顯示所有「待接單」「進行中」「已完成」訂單 | 採分頁標籤分類,主色區分不同狀態;可展開查看詳細資訊 | | 訂單詳情頁 | 顯示訂單內容、顧客備註 | 提供「接受訂單」「餐點準備完成」等按鈕,並回傳狀態給外送員與顧客 | | 菜單管理頁 | 新增、修改、刪除餐點 | 表格形式呈現餐點項目,附圖片與分類,提供快速開關「上架/下架」 | | 銷售報表頁 | 查看每日營收與熱門餐點統計 | 使用圖表呈現銷售趨勢,支援時間篩選與匯出功能 | | 店家設定頁 | 管理營業時間、外送區域、聯絡資訊 | 採表單編輯方式,含營業時間選擇器與地圖定位功能 | --- #### 外送員端(Deliverer App) | 介面 | 功能 | 設計說明 | |------|------|-----------| | 任務清單頁 | 顯示可接訂單、距離與外送費 | 採卡片式設計顯示關鍵資訊,提供「接單」按鈕 | | 訂單詳情頁 | 顯示取餐地點、顧客地址、備註 | 清晰顯示地圖、距離與預估時間 | | 導航地圖頁 | 提供外送路線與定位追蹤 | 使用地圖 API 與即時 GPS 追蹤,支援路線更新 | | 狀態更新頁 | 外送員回報取餐、配送、送達狀態 | 大型主色按鈕防止誤觸,顯示任務完成提示 | | 歷史紀錄頁 | 查看已完成訂單與收入統計 | 提供每日與每週收益統計圖表 | --- ### 3. 使用者故事(User Stories) - **外送員**: 「作為一名外送員,我希望可以在一個頁面看到所有待接訂單(外送費、距離、時間等)。」 「作為一名外送員,在接單後取得顧客的基本資料(詳細地址、稱呼、電話等)、商家的狀態、地址、是否能取餐。」 「作為一名外送員,突發狀況能即時回報,導航路徑規劃要有機動性。」 - **買家**: 「作為一位買家,我希望能看到餐點有過敏原標籤。」 「作為一位買家,將所有選擇的餐點加入購物車後再一次全部結帳。」 「作為一位買家,在下單後能即時看到配送進度與預估到達時間並且聯絡外送員。」 - **商家**: 「作為一位店家,我希望在訂單更新時能即時通知外送員,避免延遲。 「作為一位店家,我希望能自行加入過敏原標籤。」 --- ## <span id="section6">功能需求 (Functional Requirements)</span> - 買家(FR-B) - 商家(FR-S) - 外送員(FR-D) - 其他(FR-O) | 編號 | 需求名稱 | 內容說明 | |------|----------|----------| | FR-B-01 |買家瀏覽|買家瀏覽商家頁面與商品詳細資訊。| | FR-B-02 |商品加入購物車|1.買家加入購物車,購物車隨之更新。<br>2.系統將所選商品資訊匯入資料庫。| | FR-B-03 |下單|1.下單商品,並送出訂單(包含外送地址、訂單價格)。 <br> 2.系統實時更新訂單狀況。| | FR-S-01 |商家接單 | 商家可接收新訂單通知,並確認是否接受訂單。 | | FR-S-02 | 訂單管理 | 商家可查看當前與歷史訂單,修改訂單狀態(備餐中、待取餐、已完成)。 | | FR-S-03 | 商品管理 | 1.商家可新增、修改、刪除商品資訊(名稱、價格、庫存、圖片)。<br> 2.系統依據操作變更資料庫內容。 | | FR-S-04| 查看營收、訂單評分|商家可於畫面上查看買家評分及日、週、月營收數據。| | FR-D-01 | 外送任務接收 | 外送員可在系統上接收可接訂單,並確認是否接受配送。 | | FR-D-02 | 路線導航 | 外送員可透過系統導航功能查看取餐地與送餐地路線。 | | FR-D-03 | 訂單狀態更新 | 外送員可即時更新外送進度(已取餐、運送中、已送達)。 | | FR-O-01 | 帳號註冊與登入 | 所有使用者(買家、商家、外送員)皆可註冊、登入並管理個人資料。 | | FR-O-02 | 通知與推播 | 系統於訂單變更、付款完成、配送更新時即時發送通知。 | --- ## <span id="section7">非功能需求 (Non-functional Requirements)</span> 1.效能需求 | 編號 | 項目 | 內容說明 | |------|----------|----------| | NFR-1-1 | 系統回應時間 | 使用者在查詢餐廳列表或餐點時,系統需於 7 秒內完成回應並呈現主要搜尋結果頁面 。 | | NFR-1-2 | 訂單提交時間 | 使用者於完成結帳後,系統需於 5 秒內回傳「訂單已成立」結果。 | | NFR-1-3 | 同時使用者數量 | 系統需能支援至少 50 名同時上線使用者,而平均回應時間不超過 5 秒。 | 2.可用性需求 | 編號 | 項目 | 內容說明 | |------|----------|----------| | NFR-2-1 | 系統維護時間 | 系統維護應安排於低峰時段。| 3.可擴充性需求 | 編號 | 項目 | 內容說明 | |------|----------|----------| | NFR-3-1 | API 擴展 | 新增第三方合作商家 API 時,不需重構主要後端系統。| --- ### 補充 [Trello](https://trello.com/b/UJplfJE2/%E6%B5%B7%E5%A4%A7%E5%A4%96%E9%80%81%E7%B3%BB%E7%B5%B1) [Miro](https://miro.com/welcomeonboard/bjNlYXJ2YnFGVWt5UlBOYlBXVmNOaFJSMlI5b29iMWpHMWZONU5EeHpXNjJoWCsxeEE1NVF0di9nQWY4Z1ovazllVmQrOEZaTGNVZmtHUTRsN2Jla01td3pzTy8rRHp3SGYrNjZQUXJhWGFOMno2cEpXdVM4RldkWTlQM0VkcnR0R2lncW1vRmFBVnlLcVJzTmdFdlNRPT0hdjE=?share_link_id=583422680475)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up