今天分享的Jira Software相較於Jira Service Management,它更適合用於軟體開發團隊,因為它提供了敏捷方法的支持,如Scrum和Kanban。
在去年的系列文雖然有一部提到Jira的工具,但今年會新增更多關於使用前、後的差異,以及在Task管理後跟開發流程相關的知識與展示。
Jira Software是目前市場上受歡迎的專案管理工具之一,不僅提供了一個直觀的界面,還具有強大的功能,使軟體開發團隊能夠更有效地進行專案管理。
Jira Software 不僅受到敏捷團隊的喜愛,還被Bug追蹤團隊、DevOps團隊、產品管理團隊、專案管理團隊和軟體開發團隊所採用,此外還有豐富的外掛商店,並可以與其他產品整合。
1.創建和管理問題 (Issues):
issue在Jira中指的是任何需要追踪的項目,如任務、缺陷或需求。它有負責人、優先級,並可追踪進度,幫助團隊管理和協調工作。
2.使用看板 (Boards) 來視覺化工作流程:
狀態 | 使用前 | 使用後 |
---|---|---|
任務管理 | 隨意管理任務,可能缺乏組織結構 | 使用看板視覺化工作流程 |
工作流程 | 工作流程可能不清晰或不統一 | 從待辦事項到完成的任務都一目了然 |
任務狀態 | 可能難以識別當前任務的狀態 | 支持Scrum、Kanban和混合模型 |
任務自定義 | 任務管理可能不夠靈活 | 可以自定義列和步驟 |
任務優先順序 | 難以識別任務的優先順序 | 清晰地展示了哪些任務正在進行、已完成或在隊列中等待 |
3.設定和使用自定義工作流程:
備註 : 如果對於Jira Software想要做進一步的客製化歡迎參考去年已經分享的連結資訊(從需求到實作的過程)
- Day 11 - Case 2 :進階Task管理搭配知識共享? 我全都要! (需求評估篇)
- Day 12 - Case 2 :需求相關的各式各樣功能火力展示(Jira Cloud基本操作)
- Day 13 - Case 2 :針對需求來作客製化的開發吧(Jira Cloud Issue & Workflow篇)
- Day 14 - Case 2 :針對需求來做客製化的開發吧(Jira Cloud Screen & Field篇)
- Day 15 - Case 2 :基本功能無法滿足,但可以透過套件與Code達成(Jira Cloud ScriptRunner篇)
- Day 16 - Case 2 :Task管理開發成果與知識管理整合(Jira & Confluence)
1.使用 Jira Query Language (JQL) 進行高級搜尋: JQL是一個強大的查詢語言,允許快速找到所需的issues,無論是基於日期、負責人還是其他任何條件。
情境 | JQL範例程式碼 |
---|---|
查找所有未解決的問題 | project = "My Project" AND resolution = Unresolved |
查找過去7天內創建的所有問題 | created >= -7d |
查找指定使用者創建的問題 | reporter = "username" |
2.創建和使用自定義過濾器: 如果經常需要查看某一特定類型的issues,可以創建自定義過濾器,這樣就可以一鍵查看這些issues。
3.使用報告工具來分析專案進度: Jira提供了各種報告工具,如燃盡圖、速率圖等,幫助了解專案的進度和團隊的效率。此外,Jira Software還提供了即時的報告和儀表板,確保團隊始終保持最新狀態,並為成功做好準備。
4.與其他工具的整合:
- 與 Confluence、Bitbucket 等 Atlassian 產品整合: 這些整合不僅可以提高工作效率,還可以使團隊成員更容易共享資訊和合作。
- 使用 Marketplace 插件來擴展 Jira 的功能: Jira的Marketplace上有超過3000+的應用程序和集成,無論需求是什麼都可以找到合適的插件來擴展Jira的功能。
5.最佳實踐:
- 如何設定有效的工作流程: 根據團隊的工作方式和需求設定工作流程,這樣可以提高效率並減少錯誤。Jira提供了自定義的工作流程,以適應任何工作風格。
- 如何使用 Jira 來促進團隊合作: 通過設定通知、使用看板和報告工具,確保團隊成員都知道專案的進度和他們的任務。
在軟體開發的流程中,專案管理和版本控制是兩個關鍵的環節,Jira 提供了強大的專案管理功能,而當對於開發者日常使用的版本控制,若這兩者能夠順暢的整合在一起時,開發團隊可以更加高效地進行工作。
什麼是版本控制?
版本控制在軟體工程中是一種系統,專門管理計算機程序、文件或其他資訊集合的更改。它是軟體配置管理的一部分,允許開發者追踪和控制文件或代碼的修訂歷史。
這個部分以GitHub為例
以 Github 為例,當開發者在 Github 中提交代碼時,這些提交會自動關聯到 Jira 中的相關問題。開發者可以在提交信息中使用特定的關鍵字,如 "JIRA-123",來指示這次提交與哪個 Jira 問題相關。這樣,團隊成員就可以在 Jira 中直接查看到這次提交的詳細信息,無需切換到 Github。
接著搭配圖片和步驟說明來看看會發生甚麼事情吧!
選擇當前需求延伸的功能Task後建立分支
選擇GitHub要開發的專案後建立新分支
接著將開發完成的功能推送到該建立的分支後,至Jira建立pull request
導向到GitHub的頁面進行建立pull request,並且建立後回到Jira可以看到狀態更新
當完成合併操作後再次查看 Jira 的狀態,可以觀察到開發進度與狀態的即時同步。
從解決方案架構師的角度來看整合Jira和版本控制工具(如GitHub),不僅僅是為了提高開發效率或方便性,也同時確保軟體開發的持續性、可追蹤性和協作性。當談論軟體開發的生命週期,每一個階段、每一個決策和每一個變更都應該被記錄和追踪,這不僅僅是為了紀錄工時或者是留下紀錄,而是為了確保質程式碼品質、安全性和持續改進。