jira使用


JIRA的生產者把JIRA定義為Professional Issue Tracker,即它是一個專業的問題跟蹤管理的軟件。這里的”問題”對應的英文單詞是Issue,所以含義比較廣,包括Bug,Task,Enhancement,Improvement等等跟軟件開發相關的名詞。跟蹤管理即對問題的整個生命周期進行記錄和管理。一個問題從創建到解決到關閉涉及到很多相關信息,包括是什么問題,誰發現的問題,誰處理了這個問題,如何處理的,相應的代碼有什么改變等等,JIRA可以方便的記錄這些信息,並且在問題的不同狀態呈現在相應的責任人面前。相似的軟件有Bugzilla,Trac,Mantis,Clear Quest, Streber, 等。 
進行問題跟蹤管理的好處是: 
1. 讓系統來記住Task,Bug等等信息,而不僅僅靠項目經理和程序員的腦袋來記憶。人腦記憶的東西往往是不准確的。 
2. 問題跟蹤管理可以定制流程,可以有效提高工作效率 
3. 用專業的系統來進行問題跟蹤管理能帶來更多的好處,詳細見下面JIRA的優點 
1.2 JIRA的優點 
JIRA有很多專業特性,不愧為介紹中說的Professional這個詞。 
1. 針對問題其默認定義了豐富的字段來記錄問題的各種信息,包括Issue Type, Issue summary, Issue Description, priority, assignee, reporter, resolutions等等 
2. 強大的自定義字段功能,自定義字段自帶有22中類型可以選擇,而且還可以通過JIRA Extension來支持更多類型。22種類型如下圖所示: 

3. 針對每個字段都能進行屏幕,項目,問題類型等配置,可以方便的控制字段應該出現在哪里,而不應該出現哪里。 
4. 默認定義了工作流的一些狀態: new, open, defer, pending, resolved, reopened, closed。 默認定義了一個簡易的工作流, open-in progress-resolved-closed 
5. 強大的自定義工作流功能,針對不同的流程節點可以定義不同的權限、字段、后續可供選擇的處理方式。 
6. 豐富的權限管理配置,可以針對項目、用戶、用戶組、項目角色、操作定義各種組合定義 
7. 支持附件,同時針對圖片附件有特別支持,可以圖片附件直接在網頁中顯示,如下圖 

8. 可方便地定制查詢(Filter),不同的查詢可以快速找到你關注的問題。查詢條件可以對絕大部分字段設定條件。 
9. 用戶首頁可以定制,並且可以定制的查詢放入首頁,這樣可以方便查看關注的內容。首頁被定義為一個Portal,可供加入的Portlet有很多,如下圖所示 

10. 支持郵件通知,郵件通知可以同工作流中和工作流之外的事件關聯 
11. 支持Time Tracking功能,這個功能用於項目管理中的任務管理是很方便的 
12. 支持CVS、SVN代碼庫的整合,同時支持Fisheye,這樣可以讓問題和代碼關聯 

13. 自帶備份機制,不用擔心數據丟失。況且JIRA運行非常穩定,使用2年以來從未發生系統性故障 
14. 導入導出功能很完善,可以導出為XML文件,方便將數據從不同數據庫之間遷移。 
15. 系統性能非常不錯,在一台普通PC上,只分配了256M內存,整個系統有1000多個Issue,92個用戶(同時在線使用應該有20個用戶),同時還將JIRA需要的數據庫安裝在一起可以很流暢的運行。同時這台PC還運行了CVS,VSS等等服務。 
16. 支持多種數據庫,mysql, ms sqlserver, oracle等等,自帶有內存數據庫hsql db已經可以讓JIRA運轉起來。 配合MySQL已經足夠應付40個人規模的項目。JIRA的數據庫很簡練,附件是作為文件形式存放的。 
17. 支持Plugin功能,如果有什么沒有實現的功能,或許通過plugin可以實現,JIRA的網站上有很多plugin來下載 
18. JIRA針對開源項目是提供免費license的,所以其用戶群很龐大,相應的你得到支持也是很多的,包括官方詳盡的文檔、Wiki,用戶論壇等等 
19. 更多特性有待你來發掘 
1.3 JIRA的缺點 
1. JIRA是個商業軟件,而Bugzilla、Mantis是開源免費的 
2. 對clear case沒有官方支持,有一個plugin,但是狀態時unsupported 
3. 專業性也帶來了配置的復雜,建立一套完善的custom fields, workflow, permission scheme並不是一件容易的事情

 

 

3 Quick Start 
3.1 創建Project 
JIRA默認的管理員是admin,密碼也是admin,使用這個用戶登錄后來創建Project。沒有project的JIRA菜單很少,如下圖所示: 

1. 點擊菜單中的ADMINISTRATION進入管理頁面,點擊Projects-Add Project來添加Project 

2. 如下圖填寫必填項,key這個選項填完之后就不能修改了,所以想清楚填什么值最好,並且建議填3個字母以內的縮寫。Project lead是必填的,但是這個時候只有admin一個用戶,只能填admin了,增加用戶后可以修改project lead為別人。后面的選項都用默認。最后點擊Add則完成了Project的創建 

Project創建完成后,我們可以發現JIRA的菜單欄多了三個菜單:BROWSE PROJECT, FIND ISSUES, CREATE NEW ISSUE,功能分別是查看項目匯總統計信息,查詢,創建新問題,詳細使用在后面描述。 
3.2 查看用戶組 
點擊Group Browser可以看到JIRA默認提供的三個Group,在Quick Start中我們用這個三個用戶組就可以了。管理Group也是通過這個界面來進行 

3.3 創建用戶 
1. 如下圖通過User Browser-Add User來添加User 

2. 下圖中的Username是用戶的登錄名,將不能修改。Full Name是顯示名,可以進行修改 

3. 點Create后創建成功,如下圖 

點擊Edit Groups可以編輯用戶所在的組,用戶默認的組是jira-users。 
4. 選擇jira-developers然后點擊如下圖中的Join>> ,arthur將被加入jira-developers這個group 

5. 改變TST Project的project lead。(Admin用戶是超級管理員,最好不要在任何項目中擔當角色) 
從ADMINISTRATION-Project進入,如下圖點擊Edit 

在Project Lead 欄輸入arthur(jira 3.12.3版本系統會通過AJAX快速查詢到用戶進行選擇) 

一個項目不能只有一個project lead,我們按照上述方法創建兩個jira-developers的用戶:Carol, Ben 創建兩個jira-users用戶:Chris, Mike。 Jira-developers組是開發人員,職責是解決問題,jira-users組是測試組,職責是發現問題並創建問題測試問題 
3.4 創建Issue 
用arthur這個用戶登錄JIRA,點擊CREATE NEW ISSUE進行問題創建。如下圖,這個界面中有兩個下拉框可以選擇,Project中因為只有一個項目,所以沒得選擇,Issue Type有四個選項 
Bug: 軟件中的缺陷 
New Feature: 需求之外增加的新功能 
Task: 計划中的任務 
Improvement:針對已經實現的功能的改進 

我們選擇Task,創建一個任務:Project Lead分配一個任務給Carol,內容是讓Carol來做8月14日的早餐。如下填寫信息: 
Summary中填寫概要信息,詳細信息填寫在Description中,比如錯誤日志、詳細需求等等 
Due Date是指何時需要完成 
Assignee填寫指派人 
Components和Version的信息目前都是Unknown,因為針對Test Project我們沒有配置這兩個信息 
Environment一般填寫Bug發生的環境,Bug往往是因為其環境有特殊性而導致 
Priority默認有5個選項: 

從圖標可以看出其代表不同的優先級 

點擊Create進行創建,之后可以看到如下圖的結果: 
JIRA系統自動分配了一個Issue Key :TST-1,這個Key是唯一標識issue的編號,其他信息如圖所示 

3.5 處理Issue 
Carol登錄JIRA后在她的首頁可以看到如下信息: 

可以看到右邊的Assigned To Me列表中有一條記錄,這表示是需要處理的Issue,點擊TST-1的鏈接進入如下界面: 

Available Workflow Actions中的鏈接是不同處理Issue的步驟,在開始做早餐之前,Carol應該點擊Start Progress,之后TST-1的status變為 In progress, 半小時后Carol做完了早餐,她就應該點擊Resolve Issue,之后進入如下界面: 

Resolution有如下選項: 
Fixed:已經解決 
Cannot Reproduce:問題無法重現 
Won’t Fix:無法解決 
Incomplete:未完成,未完成還還能叫做Resolved? 
Duplicate:重復問題,選擇這個的時候最好在Comment中寫上重復的Issue KEY 
Assignee填確認這個問題是否解決的人,一般填問題創建者 
點擊Resolve之后Issue狀態變成了Resolved 
用arthur登陸JIRA,在Quick Search中輸入TST-1可以快速找到TST-1這個Issue,經過嚴格測試之后可以確認問題已經解決,則可以選擇Close Issue。 
在Available Workflow Actions點擊Close Issue,在下一個界面填寫Comment,之后Issue status變成了Closed,到此Issue處理結束。 
當然如果這個Issue經過測試再次發生問題,可以選擇Reopen Issue, Reopened的Issue后續處理同open狀態的issue是一致的。 
4 定制你的JIRA(For Users) 
4.1 JIRA操作界面介紹 
1. 下圖是首頁界面介紹(點擊菜單欄中的HOME進入) 

注:QUICK SEARCH是一個非常有用的框框: 
1) 輸入issue Key可以迅速打開這個issue,比如輸入PR-10,則可以轉入到PR-10的明細頁面 
2) 當你已經工作在某個Project時,你只要在快速搜索框中輸入issue Key的序號,即可完成1)中的功能,即輸入10然后按回車既有PR-10的效果 
3) 輸入非issue Key或非數字的字符等同於Filter中在Text Search中輸入了特定的字符進行搜索 

2. BROWSE PROJECT界面 

3. FIND ISSUES界面 

4. Issue Detail界面 
通過點擊issue Key進入,或者其他鏈接進入 

5. ADMINISTRATION界面介紹 
最多菜單鏈接的一個界面,在后面章節中會有針對大多配置對應鏈接的說明。 

4.2 修改個人信息 
JIRA中的個人信息包括:密碼、姓名、Email、Filter、preference、Dashboard、Column Navigator等。 
通過JIRA右上部的Profile鏈接進入設置,進入后的界面如下圖所示: 


其中Preferences可定制的選項包括瀏覽時每頁最大issues數目,語言選項,Email格式。如果系統默認的語言是英文,你想把自己的界面改成中文,則可以通過這個地方將Locale改為中文即可 
4.3 定制Filter 
Filter可以理解為過濾器、定制查詢,即將一組查詢條件保存起來。通過菜單欄中的FIND ISSUES進入 
我們以建立“最近一周解決或者關閉的問題”為例來建立一個filter: 
1. 在Project中選擇目標項目,選擇項目之后會得到一個如下的提示 

改變了所選的Project,其對應的versions, components, custom fields都是可能不一致的,所以需要點擊Click here這個鏈接來更新這些信息 
2. 在Issue Attributes中的Status選擇Resolved和Closed(選擇第二個值按住Ctrl再點擊) 
3. 在Dates and Times中的updated: From中填上-1w (-1w表示一周以來,類似的符號有d天,h小時,m分鍾,2h 30m表示2小時30分,注意兩個時間之間有個空格) 
4. 點擊View即可查詢出滿足以上條件的Issues,我們希望按照Update time來倒序排列這些issues,點擊Updated那列的標題即可倒序排列,再點擊一次會變成順序排列,想按照其他字段來排序也是類似的操作。 
5. 如果確認查詢出的issues已經是所想要的,剩下一步就是將這些條件保存為一個filter,點擊Save it as a filter,如下圖所示 

填上filter名字,點擊Save之后可以通過下圖中的Summary看到剛才填寫的條件概況 

6. 通過Share鏈接還可以將這個Filter共享給其他人或者其他用戶組 
4.4 定制Portal(Dashboard) 
JIRA將它的首頁定義為Portal,定制Portal即定制自己的JIRA首頁。通過Manage Portal進入定制界面,如下圖所示的鏈接:(通過個人信息中的Dashboard  Config鏈接也可以進入) 

進入的配置界面如下圖所示: 

其中Full configure可以修改當前的配置,Add New Portal Page可以增加一個portal 頁面,我們通過Add New Portal Page來舉例,Name中輸入My Page, Start From選擇Dashboard,然后點擊Add按鈕,之后可以得到如下圖所示的效果: 

點擊其中的Full configure可以進行My Page的配置,如下圖所示: 

定制的界面分為左右兩邊,點擊Add按鈕增加內容,Edit、Copy、Delete、上下左右箭頭按鈕顧名思義。 
我們點擊Add按鈕,准備在My Page上增加一個Project statistics,如下圖來操作: 

Project Statistics還有下一個屏幕來提供選項,如下圖所示: 

我們選擇需要添加的項目,統計類型我們關注的是狀態,選擇Status,第三個選項是已經解決的問題是不是要統計出來,之后點擊Save,則將Project Statistics這個portlet加入到了left column,我們要讓它顯示在右邊,選中它點擊向右箭頭按鈕即可。 
然后回到首頁,我們可以看到如下的效果: 

Portlet有很多選項,我認為最有用的應該是Show Saved Filter,你可以首先定制好自己的Filter,然后把它加入到首頁中,這樣自己關注的issues就可以一目了然的看到了。 
注: 
JIRA管理員通過同樣的方法來設置Default Dashboard,操作入口是:ADMINISTRATION-Default Dashboard 
4.5 定制Navigator Columns 
點擊某個Filter進行issue查詢,查詢列表中的顯示字段可以進行定制,可供的選項有:增加字段、減少字段、編排字段先后順序。JIRA默認的字段包括: T,Key,Summary,Assignee,Reporter,Pr,Status,Res,Created,Updated,Due ,其中T是issue type, Pr是Priority, Due是Due date。默認的排序是按照Key倒序排列。 
通過列表上方的Configure鏈接來進行定制,如下圖: 
進入后的界面如下圖: 

注: 
JIRA管理員通過同樣的方法來設置Navigator Columns,操作入口是:ADMINISTRATION-Navigator Columns 

4.6 導出、打印Issues 
JIRA在列表和明細界面提供了導出Word、導出Excel、打印頁面的功能 
1. 列表操作 

在查詢列表頁面中如上圖提供了一系列的操作,其中 
Printable鏈接提供一個便於打印的簡潔HTML頁面,如下圖 

Full Content鏈接提供了一個便於打印的所有issues明細的HTML頁面,如下圖 

Word鏈接可以將所有issues明細導出成word文檔 
Excel后面的兩個鏈接:All fields導出所有字段為Excel,Current Fields導出當前字段為Excel 
2. Issue明細操作 
操作鏈接在Issue Detail中,功能與明細中的Word和Printable鏈接是一樣的,如下圖: 


4.7 制作報表 
報表制作通過BROWSE PROJECT界面中的Report下的Single Level Group By Report鏈接進入,如下圖: 

進入制作報表界面后,可以選擇不同的Filter和不同的統計類型進行報表顯示,如下圖: 

制作完的報表如下圖所示: 

5 讓你的JIRA更專業(For Administrator) 
5.1 常用配置 
5.1.1 Users, Groups & Roles 
用戶和用戶組已經在Quick Start中描述過。Project Role Browser中可以定制項目角色,JIRA提供的三種用戶角色略顯不夠,一般的項目包括project managers, team leaders, developers, testers,不妨按照這個思路來添加項目角色。項目角色添加好之后可以通過Permission Scheme來對角色分配不同的權限 
5.1.2 Global Settings 
? General Configuration 
這個配置界面有很多項目可以配置,每個項目JIRA都有說明,需要解釋的有: 
1. Base URL,這個選項很有必要設置正確,JIRA會對描述、comments中的Issue KEY自動加上鏈接,如果Base URL不正確,所有的鏈接都將是錯誤的 
2. Indexing language,這個選項默認是English,在Character encoding是UTF-8的情況下,indexing language是English也沒有影響,即使你在創建issue時使用了中文,也能建立索引 
3. Default language,安裝好JIRA后第一次進入JIRA選擇語言后可以通過這個地方來修改,正如之前說的,最好選擇成英文。 
4. Options里面的選項沒有特別要求使用默認設置即可 
? Global Permissions 
這里的權限和項目中的權限是不同的,項目中的權限指的是創建issue、編輯issue等等,這里的權限是一些管理權限、創建filter的權限等與項目無關的權限 
? Look and Feel 
這個地方可以打造你的JIRA的外觀,包括配色、Logo、日期格式 
? Mail Servers 
配置郵件服務器,可以配置SMTP或者JNDI 
5.1.3 Issue Settings 
可以在ADMINISTRATION-Issue Settings中進行以下項目的配置: 
Issue Types 
Priority 
Resolutions 
Statuses 
JIRA提供兩種配置:翻譯和編輯這些resolution。翻譯可以適應多語言環境。編輯可以改變字段屬性、排序位置、默認值、增刪字段值等。這四個字段的配置都是類似的方法,參見JIRA提供界面應該不存在難度,以下列出配置中需要注意之處 
? 配置Issue Types 
系統自帶的Issue Type包括:Bug, Task, Improvement, New Feature, sub-task .如果需要增加自己的問題類型,下面的Issue Types中進行配置。按照界面進行添加、編輯Issue Type,沒什么特別。 
但如果想刪除已經添加好的Issue Type可能會碰到一些麻煩,當該Issue Type下存在issue的時候是不能刪除這個Issue Type的。有兩種辦法來刪除這個Issue Type 
1. 編輯相應的Issue,將Issue Type改成其他不刪除的Issue Type。當Issue被close之后將不能被編輯,所以這種方法存在限制。 
2. 改變相應Project的Issue Type Scheme,這個scheme必須不包含待刪除的Issue Type,在改變scheme的時候可能會報錯,如下圖所示: 

這是因為操作用戶沒有權限,應該在Project Permission中增加move issue的權限給操作用戶。之后按照向導進行操作即可。 
? 配置Resolutions 
通過ADMINISTRATION-Issue Settings中的Resolutions進行設置。 
JIRA默認的Resolutions包括: 
1. Fixed 
2. Won't Fix 
3. Duplicate 
4. Incomplete 
5. Cannot Reproduce 
基本上這五種解決辦法已經足夠了。 
注意: 
Resolution這個字段被JIRA默認的幾個filter做了引用,所以千萬不要自定義一個字段也叫Resolution,同時又把系統自帶的Resolutions字段屏蔽!這些filter包括open issues, OUTSTANDING, filter中的條件都是Resolution為UNRESOLVED,這個UNRESOLVED的含義是Resolution字段沒有設置任何值或者Issue Status為非Resolved和非Closed,所以當一個Issue狀態為Resolved,即使它的Resolution為Won’t Fix,它也不會出現在open issues里面,即無法解決也是一種解決辦法… 
? 配置Priority 
Priority的顏色、圖標都是可以修改的,最常用的Major級別的顏色是綠色,不妨修改為警告色黃色可以引起更多的重視 
? 配置Statuses 
這個字段是供workflow使用的一個字段,當在做工作流配置時如果覺得狀態不夠,那在這里添加即可。狀態可以關聯Icon可以讓查看issue時更直觀,JIRA提供了17個圖標,足夠來挑選了。 
5.1.4 Options & Settings 
1. Send E-mail 
可以通過這個功能給某個用戶組或者某個項目的特定項目角色發送Email 
2. Announcement Banner 
這個地方可以設置一個橫幅在JIRA菜單欄下面,可以寫上重要的使用說明、通知等等,支持HTML 
5.2 自定義工作流 
配置工作流之前請先定好Issue有哪些狀態,狀態的配置見常用配置--Issue Settings部分。 
工作流配置從ADMINISTRATION-General Settings-Workflows進入,系統默認有一個叫做jira的工作流,這個工作流是只讀的不能修改。但是可以以此為藍本來建立工作流,通過Operations中Copy鏈接即復制了一個一樣的工作流。點擊Operations--steps進入步驟的設置,進入的界面如下圖所示: 

從圖中看Open step,Linked Status表示執行完這個step后,issue的狀態會變成Open,Transitions表示對於Open狀態的issue可以執行的操作,Operations是設置時用到的鏈接。 
下面以幾個例子來說明如何配置工作流: 
1. 我們認為Open狀態的issue不能有Resolve Issue這個Transition,所以准備把它刪除,點擊Delete Transitions,之后在多選框中選擇Resolve Issue,刪除即可。 
2. 對於Open狀態的issues,Start Progress這個操作我們想控制它的權限,只有開發人員才能執行這個操作。通過點擊Start Progress這個鏈接進入設置,我們看到在Conditions這個Tab中已經存在一個條件,含義是“只有assignee才能執行這個操作”,這個condition是合理的,保留。 

我們通過點擊Add鏈接來增加另外一個condition,之后會得到一個列表來選擇condition的類型,開發人員才能執行同Project role比較接近,選擇User is in Project Role。其實選擇User is in group 然后配置一個開發人員組也是可以達到同樣的效果。 

在下一屏中選擇Developers這個Project Role,添加完我們可以看到如下圖所示的Conditions 

JIRA默認將增加的condition用AND來連接,如果需要也可以將條件用OR來連接。 
熟悉以上操作后,通過Add New Step,調整每個step關聯的status就可以實現復雜的自定義工作流。 
工作流定義好之后,還需要定義workflow scheme,這個工作流才能被項目引用。通過ADMINISTRATION-Schemes-Workflow Schemes進入配置界面,先增加一個scheme,然后在Operations中的Workflows鏈接中關聯workflow。JIRA在workflow之外再包裝一層scheme的意義在於可以針對不同的issue type使用不同的工作流,如下圖。 

為了簡潔起見,我們一般選擇All unassigned Issue Types對應一個工作流。 
定義好workflow scheme之后才能被特定的Project所使用,通過ADMINISTRATION—Projects,選擇需要配置的Project進行配置,如下圖: 

在Workflow Scheme中點擊Select進行scheme的選擇。在Associate的時候會得到一個警告: 

針對已經存在issues的project,修改工作流可能會引起狀態等信息的丟失,所以最好先做好JIRA數據的備份以免發生意外。(我修改過1000個issues的project的工作流,JIRA可以很好的處理,不用因為有警告而太緊張,不過事先備份是必須的操作) 
另外Project配置界面有很多scheme可配置,方法是類似的,后面不再詳細描述。可以配置的scheme包括: 
Issue Type Scheme 
Notification Scheme 
Permission Scheme 
Issue Security Scheme 
Field Configuration Scheme 
Issue Type Screen Scheme 
Workflow Scheme 
5.3 自定義權限 
JIRA中的權限包括兩部分:Global Permission和Project Permission,前者已經描述,配置也相對簡單。本節描述的是后者。 
通過ADMINISTRATION—Schemes—Permission Schemes進入配置。系統定義了一個Default Permission Scheme,並且這個scheme中的權限是可以直接進行修改的,點擊Operations—permissions進行修改。JIRA將權限分細項列表在配置界面中,通過Operations中Add鏈接或者頁面上方的Grant Permission進行權限增加,通過Delete鏈接刪除賦予給特定對象的權限。 
5.4 自定義字段 
通過ADMINISTRATION—Issue Fields—Custom Fields進行配置,點擊Add Custom Field進行字段添加,再下一步是選擇字段的類型,常見的字符型、數字型、日期型、下拉框、雙重下拉框、多選框、單選按鈕等等JIRA都支持。 
我們選擇Text Field (< 255 characters)做個測試,之后天上字段名稱、字段描述。Search Template表示該字段使用的搜索類型,如果選擇None,這個字段將不會出現在Find Issues里面的查詢條件中,即對該字段將不能進行查詢。后面還有兩個選項:issue types,projects,目的是讓這個自定義的字段出現在特定的issue type和特定的項目中。點擊Finish之后會得到如下屏幕: 

這個設置屏幕是將添加好的自定義字段加入到特定的界面中,選擇需要顯示該字段的界面點擊update即可完成設置。設置完得到如下界面: 

Configure鏈接可以進行issue types, projects設置,Edit可以進行字段名稱和search template修改,Screens可以對字段出現的界面進行配置。 
注意: 
1. 定義好的字段是不能修改字段類型的! 
2. Text Field類型存在一個Bug,如果對該字段填值都是數字,比如輸入300,之后通過Filter來搜索issue將會失敗,但是如果輸入L300, 然后通過L300來搜索是可以搜索到相應issue。 
5.5 自定義界面(Screen) 
通過ADMINISTRATION—Issue Fields—Screens進行配置,系統自帶有三個Screen,通過Operations中的Configure可以進入配置界面,在這個界面中可以進行字段的增刪、字段順序的排列。 
5.6 自定義事件通知 
通過ADMINISTRATION—Schemes—Notification Schemes進行配置,系統默認的通知策略是當任意事件發生時都會通知Reporter、Assignee和Watchers。 
5.7 和代碼庫(SVN,CVS)關聯 
在測試過程中tester提交了一個bug,developer解決了這個bug,同時提交了幾個java類,如果你想看到針對這個bug項目里面的代碼做了哪些修改,jira-subversion plugin就發揮作用了。安裝好subversion plugin之后,只需要developer在做svn commit的時候在comments里面寫上jira id,在jira的subversion tab里面就會顯示這個comments和這次提交的文件。 

注: 
目前最新的atlassian-jira-subversion-plugin-0.10.3 不支持svn 1.5,不過通過升級svnkit到1.1.8以上版本就能解決這個問題 
5.8 和Fisheye關聯 
而jira fisheye plugin則是將fisheye的功能集成到jira中,同時也是隨jira id來顯示版本的變更記錄: 

Fisheye plugin配置時,記得在fisheye管理界面中把Remote API設置成ON,要不然plugin連不上fisheye的! 
5.9 Sub-tasks 
通過Global Settings—Sub-tasks來開通這個功能 
5.10 Time tracking 
通過Global Settings—Sub-tasks來開通這個功能,其中對一周幾天,一天幾個小時需要先定義好。 

JIRA的網站也有一個描述:Project Management Tool,用JIRA實現項目管理最重要的是開通Time tracking功能。 
Activate Time tracking功能之后在創建issue時多了一個字段: 

這個字段的含義是預估完成這個任務所需要的時間。 
同時在處理issue時,多了一個操作:Worklog,如下圖所示 

點擊其中的Log work done進行工作日志的記錄: 

記錄之后在issue detail界面的work log Tab可以看到記錄: 

開通Time Tracking之后,JIRA還提供了一個Time Tracking Report 

報表如下圖所示: 

JIRA完全以時間來確定工作的進度,這種算法還得好好適應一下。 
5.11 備份、導入導出 
備份通過Import & Export-- Backup Data to XML來操作,導出路徑寫服務器上的絕對路徑,Backup As Zip這個復選框選上則會將XML文件壓縮成一個zip包。 
導入則通過Restore Data from XML來操作,導入的文件可以是XML,也可以是zip。 
JIRA的導入導出都是基於XML格式,與數據庫平台無關,這也十分方便系統遷移。 
同時JIRA還提供了定時的備份機制,通過ADMINISTRATION—System—Services可以看到這個后台的服務: 

JIRA默認會在每12個小時進行系統備份一次,其數據安全還是很有保障的。 
5.12 系統優化 
1. NT 服務修改JVM內存大小 
修改%JIRA_HOME%/bin/service.bat文件中的: 
"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-Djava.io.tmpdir=%CATALINA_BASE%\temp" --JvmMs 256 --JvmMx 512 --Startup auto 
其中-JvmMs是最小內存數,-JvmMx是最大內存數,一般最小256,最大512足夠了。修改完后執行 
service.bat remove 將原有的NT 服務刪除(如果JIRA服務處於啟動狀態先停止服務) 
service.bat install 安裝新的NT服務 
啟動新的服務即生效了 
2. 非NT服務修改JVM內存大小 
修改%JIRA_HOME%/bin下面的setenv.bat文件,修改JAVA_OPTS這個環境變量 
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx512m -Datlassian.standalone=JIRA -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true 
其中-Xms256m表示最小內存,-Xmx512m表示最大內存 
3. 讓JVM進行garbage collection 
如果在使用JIRA時感到打開頁面明顯變慢,可能的原因是JVM內存吃緊,可以考慮進行手動garbage collection,操作如下 
進入Administration-System Info,在Java VM Memory Statistics這欄可以看到如下圖所示信息: 

如果Memory Graph中顯示20% Free,甚至更低,點擊右邊的Force garbage collection后你會得到更到free的內存,一般來說之后打開頁面會變快一些。 
6 JIRA需要改進的地方 
1. 上傳附件時可以填一個comment,但是這個comment和普通的comment是沒有任何區別的,它並不會和你上傳的這個附件進行關聯。當你想對這個附件加一些描述的時候,你只能在comment里面指明附件名稱,這樣才能手工關聯附件和comment。 
2. Redmine的Calendar是一個非常不錯的設計,將每一天的工作可以一目了然的區分開來,雖然在JIRA中也可以通過filter來實現,但還是不夠直觀,redmine的calendar樣子見圖: 

當然這個calendar結合到JIRA中可以好好改善改善,比如加上My Calendar只顯示自己的活動,特定Group的Calendar,特定Project的Calendar等等。 
3. 關於comments在Redmine中有一個reply的功能,這個功能也是個不錯的設計,JIRA中的comments是沒有關聯的,只能通過自己通過其中的含義來關聯,不過一般來說這也足夠了。 
4. 在work log中可以加上一個如TodoList中% complete字段,當問題的% complete達到100%時才算完成,而不是時間達到estimate的時間才算完成,其實JIRA的time tracking計算任務的進度算法真是太沒道理了,需要大大的改進。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM