起初在開發這個Bot的過程中我只是想打造一個能管理GitHub專案的工具,但後面我發現,如果團隊成員需要記住一堆 !build_status、!pipeline_status 這樣的指令,這個工具的使用門檻就太高了,因此我決定將其模組化,變成,讓操作更加直覺
從青蛙音樂獲得的靈感
在Discord上有一個叫做「青蛙音樂」的機器人。我參考了他的介面設計,並將功能分成四大類 :
狀態監控 - 放在第一個,因為這是最常用的功能。工程師每天上班第一件事可能就是檢查昨晚的建置有沒有成功,所以我把 Pipeline 狀態、建置狀態這些都放在這裡
變更管理 - 這是功能可以掌握整體的開發進度,知道這週到底合併了哪些 PR、完成了哪些功能
排程管理 - 這比較偏向後台管理的功能,像是設定每週自動檢查的時間、手動觸發檢查等
系統資訊 - 這邊就放一些技術支援和設定相關的功能
這樣的分類也可以反映出實際的工作流程,從每天的狀態檢查到每週的進度追蹤,再到系統維護,形成一個完整的使用情境
解決等待時間的使用者體驗優化
在實際使用過程中,我注意到當用戶發送一個指令後,Bot 需要呼叫 GitHub API 取得資料,這個過程大概需要 2秒的時間,如果這段時間畫面完全沒有反應,使用者可能會以為按鈕沒按到,或是系統當掉了,然後就會重複點擊
為了解決這個問題,可以在這段空白期塞入東西,比如Bot可以馬上回應「處理中...」的訊息,讓使用者知道系統已經收到指令並且正在工作中。這個小小的改動對使用者體驗的改善會非常明顯
整體我學到最重要的一課是:技術工具的價值不在於功能有多強大,而在於它能不能真正解決使用者的問題,並且用他們覺得舒服的方式來互動,有時候一個小小的互動改善,比起增加一堆新功能,對使用者來說可能更有意義