# 亞太智能機器 Issue Flow - 簡化版 v1 ## 目錄 * [流程](#流程) * [標籤角度](#標籤角度) * [流程圖的角色](#流程圖的角色) * [人的角度](#人的角度) * [**我** 應該要做啥?](#所以說-我-到底要幹嘛?) * [單字解說](#單字解說) * [表格](#表格) ## 流程 ### 標籤角度 > 一律都是 **改完** 標籤再丟給對方 > 顏色及角色,詳見 [流程圖的角色](#流程圖的角色) ```mermaid graph TB classDef sa color:#fff,font-size:16px,line-height:1.3,fill:#f0ad4e,stroke:#333,stroke-width:2px; classDef pg color:#fff,font-size:16px,line-height:1.3,fill:#5CB85C,stroke:#333,stroke-width:2px; classDef mt color:#fff,font-size:16px,line-height:1.3,fill:#595992,stroke:#333,stroke-width:2px; classDef pm color:#fff,font-size:16px,line-height:1.3,fill:#5843ad,stroke:#333,stroke-width:2px; 分析["標籤:分析 <br /> 負責人:SA"] --"(分析完)"--> 分析完成 分析完成["分析完後如何處理? <br /> 1. 改標籤 <br /> 2. 跟 PG 討論沒問題就丟給他"] --"(標籤變了)"--> 開發 開發["標籤:開發 <br /> 負責人:PG"] --"(開發完)"--> 開發完成 開發完成["開發完後如何處理? <br /> 看程式要不要合併"] --"(要)"--> 發_MR["發 MR"] 開發完成 --"(不用) <br />"--> PG_改標籤 PG_改標籤["改標籤"] --"(標籤變了)"--> 測試 發_MR --> MT_審查 MT_審查["MT 審查程式碼 <br > 1. 能動 <br /> 2. 品質"] -- "(直到合併)" --> PG_改標籤 測試["標籤:測試 <br /> 負責人:SA"] --"(測試完)"--> 測試完成 測試完成["測試完後如何處理? <br /> 1. 功能正常否? <br /> 2. 要不要報告?"] --"(功能正常)"--> 報告 測試完成 --"(功能異常)"--> 測試跳開發 測試跳開發["1. 找 PG 討論 <br /> 2. 真的不行就回 開發"] --"(標籤變了)"--> 開發 測試跳開發 --"(誤判,能接受)"--> 報告 報告["要報告否?"] --"(Yes)"--> 報告去 報告 --"(No)"--> 關_Issue["快把 Issue 關掉"] 報告去["報告去~ <br />"] --"(feedback)"--> 另起新_Issue 另起新_Issue["另起新 Issue"] --"(關掉舊的)"--> 關_Issue 報告去 --"(一切 ok)"--> 關_Issue class 分析,分析完成,測試,測試完成,測試跳開發,報告,關_Issue sa; class 開發,開發完成,發_MR,PG_改標籤 pg; class MT_審查 mt; class 報告去,另起新_Issue pm; ``` #### 流程圖的角色 ```mermaid graph TD; classDef sa color:#fff,font-size:18px,line-height:1.5,fill:#f0ad4e,stroke:#333,stroke-width:2px; classDef pg color:#fff,font-size:18px,line-height:1.5,fill:#5CB85C,stroke:#333,stroke-width:2px; classDef mt color:#fff,font-size:18px,line-height:1.5,fill:#595992,stroke:#333,stroke-width:2px; classDef pm color:#fff,font-size:18px,line-height:1.5,fill:#5843ad,stroke:#333,stroke-width:2px; SA["這顏色是 SA"] PG["我是 PG"] MT["MT"] PM["PM 在 issue flow 中不太會出現"] class SA sa; class PG pg; class MT mt; class PM pm ``` ### 人的角度 ![圖](https://i.imgur.com/wxfWj3b.png) ## 所以說 **我** 到底要幹嘛? > 君の名は? SA :開 issue、派 issue、等 issue 回到你身上,測試功能是否正確。 PG:等 issue,開發,跟 MT 打架,打完再跟 SA 打架。 MT:審核 MR,看 test 有沒有過,code 乾不乾淨,有沒有能改進的地方。 > 當然你有可能同時是多個身分!! ## 單字解說 ### 表格 | 縮寫 | 原名 | 中文 | 解釋 | | -------- | -------- | -------- | ------- | | SA | System Analyzer | 系統分析師 | 負責分析 Issue 拆分客戶需求的人 | | PG | Programmer | 碼農 | 負責在開心農場裡面農程式碼的人 | | MT | Maintainer | 維護者 | 負責專案的程式品質控管的人,就是管 MR 到底能不能 Merge 的人 | | PM | Project Manager | 專案管理者 | 管專案的人,基本上不存在你只會看到滿滿的 PG 和 SA 在專案裡面跑 | | MR | Merge Request | 合併請求 | PG 和 MT 會打架的階段 | | X | Issue | 議題 | 你被指派的工作 | | X | Flow | 流程 | | | X | Label | 標籤 | 會標在 Issue 上的東西,人人有責 | | X | Tag | 標記 | 你可以叫他標籤,不過他是標版本號的東西 | ###### tags: `Documentation` `IssueFlow` `議題流程` > [name=winnie wang]在流程圖中,標籤:開發,負責人:PG後改為 「**與 SA 確認需求(加入此流程)** -> 開發完 -> 開發完後如何處理? 看程式要不要合併」