Jira入門教程 敏捷開發管理(一)

https://www.jianshu.com/p/145b5c33f7d0

 

 

簡介

Jira是Atlassian公司出品的一款事務管理軟件。無論是“需求”,還是“BUG”,或是“任務”,都是“事務”的一種,所以Jira可以勝任非常多的角色:需求管理、缺陷跟蹤、任務管理等等……因爲Jira提供了專門的Scrum視圖和Kanban視圖,所以特別適合敏捷開發團隊使用。大型互聯網公司如LinkedIn、Facebook、eBay等內部都在使用Jira。

Jira在國內的銷售價格相當貴,而且沒有永久授權,只能年付,CSDN的報價最低18000元(25用戶)。推薦直接去官網購買,10人以下團隊的永久授權只要$10。這個價格,別說小團隊正式使用,就是個人玩票性質的買一個正版,也是完全可以了。

基本概念

JIRA的界面操作挺複雜,但是JIRA的邏輯並不複雜。想要了解如何使用JIRA,弄清下面幾個基本概念就差不多了:

  • Project 項目
  • Issue 事務(有的譯作“問題”)
  • Field 字段
  • Workflow 工作流
  • Screen 視圖

Jira示例項目中的Scrum Backlog界面

1. Project和Issue

Project這個概念很簡單,就是一個“項目”。開發一個App是一個項目,開發一個微信小程序也是一個項目,公司辦公室搬遷也可以是一個項目。可以說,在項目管理範疇內可以看作“項目”的,都是Jira中的項目。Project是Issue的容器。在創建項目時,JIRA會要求你指定“KEY”,這個KEY加上數字,就是Issue的唯一ID了。比如新建一個項目,KEY設置爲WEB,那麼項目下的第一條Issue就是WEB-1,第二條Issue是WEB-2,依此類推。

而Issue則是Jira核心中的核心,它分爲以下幾種類型:

  • Story 故事(即敏捷開發中的“用戶故事”)
  • Epic 史詩
  • Improvement 提升
  • New Feature 新特性
  • Bug 缺陷
  • Task 任務
  • Sub-Task 子任務

以上幾種類型,除Sub-Task和Epic之外並無本質區別。對於敏捷開發團隊來說,“用戶可以編輯並修改個人資料”可以建一個Story;對職能部門來說,“月底向供應商支付貨款”可以建一個Task。如果想反過來,把前者叫Task把後者叫Story,Jira也不會干涉你,無非會讓其他人覺得奇怪而已。

Epic中文叫“史詩”,人話版的翻譯是“包含很多故事的大故事”。比如“用戶可以在App上收聽音樂”,就是一個很大的故事,還需要細分爲更多小故事纔可以進行開發。

除了Sub-Task之外,所有的Issue類型都可以創建Sub-Task。比如“用戶可以編輯並修改個人資料”就可以拆分爲以下幾個子任務:

  • 設計UI界面
  • 開發前端頁面
  • 提供後端API接口
    以上所有子任務完成之後,這個Story才能算完成。

2. Field

一個Story會有屬性:名稱、詳細描述、提交人、提交時間、優先級、狀態等等。這些屬性就是Field字段。而所謂的Story,也是Type屬性爲“Story”的Issue而已,把Type屬性改成“Epic”,那這個Story就會變成Epic了。

3. Workflow和Workflow Scheme

我們知道,任務會有不同的狀態:待辦,進行中,已完成;需求也會有不同的狀態:剛提交,待評審,暫緩,已拒絕,開發中,已完成,等等。Workflow就是用來定義定義Issue的狀態。

Workflow由兩部分組成:

  • Status 狀態
  • Transition 轉換動作

下圖中的按鈕樣式就是Status,從一種狀態轉換爲另一種狀態的箭頭就是Transition。

一個典型工作流

從一種狀態切換到另外一種狀態必須藉助Transition。JIRA提供了方便的配置項,可以自動生成Transition(允許所有狀態切換到當前狀態)。

爲什麼做得這麼麻煩,像Tower或者Worktile之類的清單不好嗎?答案就是Transition有專門的配置項,可以調起webhook以及執行一些post-function比如發送郵件等等。而且嚴格的Transition可以避免人爲的誤操作。

當有了Workflow之後還不夠。一個Project內會有不同類型的Issue,這時候就需要指定哪種Issue Type採用哪種Workflow,於是就產生了Workflow Scheme。比如下面就是一個Workflow Scheme:

  • Story:To Do - In Progress - In Review - Done(Workflow 1)
  • Task: To Do - In Progress - Done (Workflow 2)
  • ……

顯然,每個Project只能採用一種Workflow Scheme。

注意,整個JIRA中的Status都是共用的。當你在編輯某個Workflow時修改了一個已有Status的名稱,其他Workflow中同樣的Status也會被修改。

4. Screen

Screen(視圖)還會衍生Screen Scheme和Issue Type Screen Scheme兩個概念。Screen這個概念就像空氣一樣,理所當然,可是對於不懂化學的人來說又無法描述。所以這個我們後面再詳細介紹。只要知道,我們在新建Issue、編輯Issue、查看Issue詳情時,其實是通過“新建視圖”、“編輯視圖”、“詳情視圖”完成的就好了。

待續

以上就是Jira軟件邏輯中的基本概念,瞭解了這幾個概念就可以去試着使用Jira了。當然現在離真正使用Jira管理敏捷開發還差一個關鍵環節:瞭解敏捷開發的基本概念。下一期再介紹嘍~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章