graph LR
A(軟體設計)-->B(一、需求分析)
A-->C(二、系統設計)
B-->D(1.市場調查)
B-->E(2.功能需求整合)
E-->客戶端功能需求
E-->管理端功能需求
C-->F(邏輯架構設計)
F-->客戶端
F-->業務邏輯
F-->基礎服務
C-->G(技術架構設計)
G-->使用者層
G-->服務層
G-->資料層
C-->H(資料架構)
以核算登記系統為例:
- 需求分析
1.1 基於核酸檢測排查效率低下,手工登記速度慢的問題開發一個基於手機端的核算採集平臺
1.2 對核算採集平臺羅列需求
如:
分類 | 功能點 | 需求說明 |
---|---|---|
居民端 | 預約頁面 | 錄入使用者的基本資訊:包括姓名、性別、身份證號 |
身份證資訊提取 | 點選頁面按鈕調出攝像頭,拍攝身份證可以提取身份證資訊,自動填入頁面 | |
登記端 | ... | ... |
管理端 | 預約資訊查詢 | ... |
- 系統設計
2.1 邏輯架構設計
如: 客戶端:預約頁面、登記頁面...
↓
介面服務:
業務邏輯:登入服務、預約服務
基礎服務:安全、配置、日誌、資料持久化
2.2 技術架構設計
描述頁面的使用場景,即業務流程。
如:
預約頁面:居民用手機掃描二維碼進入頁面,填寫預約資訊後提交,生成預約二維碼。任何人掃碼都可以開啟預約頁面,填寫資訊,提交預約。此模組不需做登入認正。
介面服務:提供...介面。
後端管理頁面:包括使用者層:vue.js\Vant,服務層:FastAPI\Pydantic\Uvicorn,資料層:MySQL,SQLAIchemy
2.3 資料架構
即設計資料庫表