Process Modeling
Activity Diagram
以流程圖視角展現系統的巨觀作業行為。嚴格定義「尋找球友後才尋找場地隊伍」之順序、隊長權限防呆機制,以及球局進行至評價的完整生命週期。
flowchart TD
%% 樣式對齊活動圖規範
classDef default fill:#1e293b,stroke:#06b6d4,stroke-width:2px,color:#f8fafc,rx:8,ry:8
classDef decision fill:#1e293b,stroke:#8b5cf6,stroke-width:2px,color:#f8fafc
classDef startNode fill:#10b981,stroke:none,color:#10b981
classDef endNode fill:#0b1120,stroke:#10b981,stroke-width:4px,color:#10b981
Login(["註冊或登入系統"])
TargetChoice{"尋找目標\n選擇"}:::decision
FindV(["尋找場地"])
FindM(["尋找球友"])
Pay(["進行場地付費流程"])
FindT(["尋找有場地的隊伍"])
Manage(["參與名單與隊伍狀態"])
Check{"判斷團隊與\n場地預約動態"}:::decision
StartGame(["球局正常開啟"])
PlayGame(["球局正常進行"])
Rate(["賽後評價"])
Exit(["觸發退出動作"])
IsLeader{"判斷是否\n為隊長退出"}:::decision
MemExit(["一般成員退出"])
FindNext{"尋找\n繼任者"}:::decision
Transfer(["自動轉移隊長權限"])
Update(["更新名單並重新媒合"])
Disband(["球局與隊伍解散"])
Clean(["系統釋放資源與清理"])
%% ================================
%% 1. 定義主幹道 (將 S 和 E 直接寫在連線中)
%% ================================
S(( )):::startNode --> Login
Login --> TargetChoice
TargetChoice -->|找場地| FindV
TargetChoice -->|找球友| FindM
FindV --> Pay
Pay --> Manage
FindM --> FindT
FindT --> Manage
Manage --> Check
Check -->|條件達成| StartGame
StartGame --> PlayGame
PlayGame --> Rate
Rate --> E((( ))):::endNode
%% ================================
%% 2. 左側分支:退坑與重組
%% ================================
Check -->|成員點擊退出| Exit
Exit --> IsLeader
IsLeader -->|否| MemExit
IsLeader -->|是| FindNext
MemExit --> Update
FindNext -->|有人接任| Transfer
Transfer --> Update
Update -->|持續尋找| Manage
%% ================================
%% 3. 右側分支:解散與清理
%% ================================
FindNext -->|無人接任| Disband
Disband --> Clean
Clean -->|重新發起| TargetChoice