SlideShare a Scribd company logo
1 of 54
Download to read offline
JIRA 3.12.3 不完全手册

                                           彭贵生(pgs@skyon.com.cn)

                                                           诺祺科技

                                                            2008.8




                                                      OSS 计算技术

                                                      YUCHENG HU

                                              yucheng.hu@ossez.com

                                                  2012 年 10 月 07 日




1 JIRA 简介

 1.1 概要介绍



 JIRA 的生产者把 JIRA 定义为 Professional Issue Tracker,即它是一个专业的问题跟踪

 管理的软件。这里的”问题”对应的英文单词是 Issue,所以含义比较广,包括

 Bug,Task,Enhancement,Improvement 等等跟软件开发相关的名词。跟踪管理即对问

 题的整个生命周期进行记录和管理。一个问题从创建到解决到关闭涉及到很多相关信

 息,包括是什么问题,谁发现的问题,谁处理了这个问题,如何处理的,相应的代码有

 什么改变等等,JIRA 可以方便的记录这些信息,并且在问题的不同状态呈现在相应的责

 任人面前。相似的软件有 Bugzilla,Trac,Mantis,Clear Quest, Streber,Redmine 等。

 进行问题跟踪管理的好处是:
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 并不是一件容易的事情




2 JIRA 的安装

JIRA 是一个 Java Web Application, 自带的 web server 是 Tomcat,所以熟悉 J2EE 开发

的人来安装 JIRA 应该是轻车熟路的。JIRA 3.12 版本之后已经提供 windows installer 形式

的安装包,安装起来也变得很简单。以下介绍以 windows 安装包的形式来介绍



   2.1 安装步骤

JIRA 提供 stanalone, war 包,installer 等的安装方式,以下安装以最简单的 installer 来介绍

1. 下载 Windows installer, Atlassian 的网站提供下载。安装包有 56M,这个包已经包括

  了 JRE 和 Tomcat,所以可见 JIRA 的安装文件并不肥大。

2. 双击 EXE 文件开始安装,安装路径可以任意选择。

3. 安 装 向 导 结 束 后 双 击 %JIRA_HOME%/bin/startup.bat 可 以 启 动 JIRA , 通 过

  http://localhost:8080 访问 JIRA 应用,如果成功打开了页面则表明安装成功



   2.2 安装配置

1. 安装数据库,自带的 hsqldb 是不赞成使用的,我们以 mysql 为例进行配置。首先安装
mysql,安装过程见相关文档,一般不需要有特殊选项

2. 建立数据库, root 用户登录 mysql,
         用                创建一个名为 jira 的数据库(数据库名可以任意),

  字符集用如下图的选项:




3. 建立数据库用户,如下图所示,如果数据库和 JIRA 在同一台机器,主机那栏填 localhost




  并将 jira 数据库的所有权限赋予给 jira 用户(JIRA 初始化数据库时需要比较大的权限)
4. 下载 mysql jdbc driver 的 jar 包,并放入%JIRA_HOME%/common/lib 目录。Mysql

  的 jdbc 驱动有很多版本,请下载适合你的 mysql server 的最新驱动,不然会产生一些

  意料不到的问题。

5. 将   %JIRA_HOME%/atlassian-jiraWEB-INFclassesentityengine.xml   中   的

  datasource name="defaultDS" field-type-name="hsqldb" 改为 mysql

6. 将%JIRA_HOME%/conf/server.xml 中的 jdbc/JiraDS 修改为如下形式

  <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"

              username="jira"

              password="jira"

              driverClassName="com.mysql.jdbc.Driver"




  url="jdbc:mysql://localhost/jira?autoReconnect=true&amp;useUnicode=true&
amp;characterEncoding=UTF8"

            maxActive="20" />

7. 将 JIRA 安装为 NT 服务。在 CMD 窗口运行 bin/service.bat install 即可安装,

  service.bat remove 进行卸载。安装好打开服务如下图所示,点击“启动”按钮即可启

  动 JIRA




8. 配置语言及通用选项。JIRA 第一次启动会提示你选择语言项,最好选择英语,因为中文

  汉化不很完善,有些链接不会显示会导致功能缺陷。Index, attachment, backup 等目

  录可以如下图所示来建立
到此 JIRA 就已经全部安装好了。




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 Watch 和 Vote

1. Watch

  Watch 是 JIRA 提供的一个关注 Issue 的功能,如果你正在 Watching 某个 issue,那
么按照 JIRA 的默认通知策略,这个 issue 的任何改动都会通过邮件通知你。通过 issue

   明细页面左下方的 Operations 中 Watch it 链接来添加关注的 issue,如下图




如果你想让别人关注这个问题,可以通过 issue 明细页面左上方的 Watchers 后面的数字提

供的链接进入添加关注人的页面




My Watches 也是一个 Portlet,可以添加到 Dashboard 中,添加完后,如下图所示:




2. Vote

   Vote 是 JIRA 提供的一个投票功能,可以通过 issue 明细页面左下方的 Operations 中

   Vote for it 链接来投票,票数越多表示这个 issue 希望解决的人越多。不过自己汇报的
问题是不能自己投票的。

  JIRA 在 BROWSE PROJECT 界面中提供了一个 Popular Issues 来按投票数目多少排序

  显示这些问题,如下图所示:




   4.7 Issue Link

Issue link 可以让相关的 issue 关联在一起,并且关联的联系方式是自定义的,最常见的一

种联系是重复问题。

Issue linking 功能在默认设置下是关闭的,可以让 JIRA 管理员打开并添加一个 Duplicate

的联系方式。在有 issue link 权限的情况下,可以通过 issue 明细页面的 Link 链接来建立

link,如下图:




在 Link Issue 页面中选择 duplicates 还是 is duplicated by,Issues 中填关联的另外一端

的 issue key,如下图:
添加好 Link 之后在 issue 明细页面可以看到如下的样子:




  4.8 导出、打印 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.9 制作报表

报表制作通过 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 计算任务的进度算法真是太没道理了,需要大大的改进。

More Related Content

Viewers also liked

Portfolio for Adam Wiseman
Portfolio for Adam WisemanPortfolio for Adam Wiseman
Portfolio for Adam WisemanAdamw627
 
Presentation1
Presentation1Presentation1
Presentation1Subrina22
 
VII НППК
VII НППКVII НППК
VII НППКBAP27
 
Steelcraft jaguar
Steelcraft jaguarSteelcraft jaguar
Steelcraft jaguarsteelcraft
 
金融业发展和改革“十二五”规划(全文)
金融业发展和改革“十二五”规划(全文)金融业发展和改革“十二五”规划(全文)
金融业发展和改革“十二五”规划(全文)zs043
 
Pazdziernik 12
Pazdziernik 12Pazdziernik 12
Pazdziernik 12lamelli
 
Pelden chodon(ede2012022)
Pelden chodon(ede2012022)Pelden chodon(ede2012022)
Pelden chodon(ede2012022)Pelden Chodon
 
Open letter to ARNECC
Open letter to ARNECCOpen letter to ARNECC
Open letter to ARNECCDavid Maher
 

Viewers also liked (14)

Portfolio for Adam Wiseman
Portfolio for Adam WisemanPortfolio for Adam Wiseman
Portfolio for Adam Wiseman
 
функция
функцияфункция
функция
 
Production log
Production logProduction log
Production log
 
10 cool facts about canada
10 cool facts about canada10 cool facts about canada
10 cool facts about canada
 
Presentation1
Presentation1Presentation1
Presentation1
 
VII НППК
VII НППКVII НППК
VII НППК
 
Steelcraft jaguar
Steelcraft jaguarSteelcraft jaguar
Steelcraft jaguar
 
07.1.1 application
07.1.1 application07.1.1 application
07.1.1 application
 
金融业发展和改革“十二五”规划(全文)
金融业发展和改革“十二五”规划(全文)金融业发展和改革“十二五”规划(全文)
金融业发展和改革“十二五”规划(全文)
 
Prezent
PrezentPrezent
Prezent
 
Pazdziernik 12
Pazdziernik 12Pazdziernik 12
Pazdziernik 12
 
краматорск
краматорсккраматорск
краматорск
 
Pelden chodon(ede2012022)
Pelden chodon(ede2012022)Pelden chodon(ede2012022)
Pelden chodon(ede2012022)
 
Open letter to ARNECC
Open letter to ARNECCOpen letter to ARNECC
Open letter to ARNECC
 

Similar to Jira 3.12.3不完全手册

业务需求分析入门
业务需求分析入门业务需求分析入门
业务需求分析入门zhoujg
 
同济优秀课程设计 - 软件测试报告
同济优秀课程设计 - 软件测试报告同济优秀课程设计 - 软件测试报告
同济优秀课程设计 - 软件测试报告Kerry Zhu
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程yiditushe
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程appollo0312
 
做一个“懒惰”的程序员-LCP框架系列交流
做一个“懒惰”的程序员-LCP框架系列交流做一个“懒惰”的程序员-LCP框架系列交流
做一个“懒惰”的程序员-LCP框架系列交流lichengdongdong
 
Se2009 ch8
Se2009 ch8 Se2009 ch8
Se2009 ch8 浒 刘
 
软件工程 第八章
软件工程 第八章软件工程 第八章
软件工程 第八章浒 刘
 
Sql语句的优化
Sql语句的优化Sql语句的优化
Sql语句的优化abszhanghe
 
imobile-beta技术沙龙
imobile-beta技术沙龙imobile-beta技术沙龙
imobile-beta技术沙龙posestudio
 
網站設計100步
網站設計100步網站設計100步
網站設計100步evercislide
 
银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011Yi Xu
 
大数据的Reactive设计范式和akka实践
大数据的Reactive设计范式和akka实践大数据的Reactive设计范式和akka实践
大数据的Reactive设计范式和akka实践Sean Zhong
 
手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享Dahui Feng
 
深入研究 Windows 系統服務 效能調校與故障排除
深入研究 Windows 系統服務    效能調校與故障排除深入研究 Windows 系統服務    效能調校與故障排除
深入研究 Windows 系統服務 效能調校與故障排除5045033
 
JIRA與PowerCam基本使用教學
JIRA與PowerCam基本使用教學JIRA與PowerCam基本使用教學
JIRA與PowerCam基本使用教學chloe0723
 
專案進度追蹤
專案進度追蹤專案進度追蹤
專案進度追蹤黑狗 大
 
在雲端上啜飲爪哇
在雲端上啜飲爪哇在雲端上啜飲爪哇
在雲端上啜飲爪哇建興 王
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous deliveryQiao Liang
 
Liferay环境搭建
Liferay环境搭建Liferay环境搭建
Liferay环境搭建donotbeevil
 
Ganglia轻度使用指南
Ganglia轻度使用指南Ganglia轻度使用指南
Ganglia轻度使用指南Schubert Zhang
 

Similar to Jira 3.12.3不完全手册 (20)

业务需求分析入门
业务需求分析入门业务需求分析入门
业务需求分析入门
 
同济优秀课程设计 - 软件测试报告
同济优秀课程设计 - 软件测试报告同济优秀课程设计 - 软件测试报告
同济优秀课程设计 - 软件测试报告
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程
 
Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程Struts+Spring+Hibernate整合教程
Struts+Spring+Hibernate整合教程
 
做一个“懒惰”的程序员-LCP框架系列交流
做一个“懒惰”的程序员-LCP框架系列交流做一个“懒惰”的程序员-LCP框架系列交流
做一个“懒惰”的程序员-LCP框架系列交流
 
Se2009 ch8
Se2009 ch8 Se2009 ch8
Se2009 ch8
 
软件工程 第八章
软件工程 第八章软件工程 第八章
软件工程 第八章
 
Sql语句的优化
Sql语句的优化Sql语句的优化
Sql语句的优化
 
imobile-beta技术沙龙
imobile-beta技术沙龙imobile-beta技术沙龙
imobile-beta技术沙龙
 
網站設計100步
網站設計100步網站設計100步
網站設計100步
 
银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011
 
大数据的Reactive设计范式和akka实践
大数据的Reactive设计范式和akka实践大数据的Reactive设计范式和akka实践
大数据的Reactive设计范式和akka实践
 
手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享
 
深入研究 Windows 系統服務 效能調校與故障排除
深入研究 Windows 系統服務    效能調校與故障排除深入研究 Windows 系統服務    效能調校與故障排除
深入研究 Windows 系統服務 效能調校與故障排除
 
JIRA與PowerCam基本使用教學
JIRA與PowerCam基本使用教學JIRA與PowerCam基本使用教學
JIRA與PowerCam基本使用教學
 
專案進度追蹤
專案進度追蹤專案進度追蹤
專案進度追蹤
 
在雲端上啜飲爪哇
在雲端上啜飲爪哇在雲端上啜飲爪哇
在雲端上啜飲爪哇
 
The way to continuous delivery
The way to continuous deliveryThe way to continuous delivery
The way to continuous delivery
 
Liferay环境搭建
Liferay环境搭建Liferay环境搭建
Liferay环境搭建
 
Ganglia轻度使用指南
Ganglia轻度使用指南Ganglia轻度使用指南
Ganglia轻度使用指南
 

More from YUCHENG HU

Confluencewiki 使用空间
Confluencewiki 使用空间Confluencewiki 使用空间
Confluencewiki 使用空间YUCHENG HU
 
Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件YUCHENG HU
 
Logback 介绍
Logback 介绍Logback 介绍
Logback 介绍YUCHENG HU
 
Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南YUCHENG HU
 
Presta shop 1.6 的安装环境
Presta shop 1.6 的安装环境Presta shop 1.6 的安装环境
Presta shop 1.6 的安装环境YUCHENG HU
 
Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件YUCHENG HU
 
Presta shop 1.6 图文安装教程
Presta shop 1.6 图文安装教程Presta shop 1.6 图文安装教程
Presta shop 1.6 图文安装教程YUCHENG HU
 
V tiger 5.4.0 图文安装教程
V tiger 5.4.0 图文安装教程V tiger 5.4.0 图文安装教程
V tiger 5.4.0 图文安装教程YUCHENG HU
 
Confluence 回顾(retrospectives) 蓝图 cwikiossez
Confluence 回顾(retrospectives) 蓝图   cwikiossezConfluence 回顾(retrospectives) 蓝图   cwikiossez
Confluence 回顾(retrospectives) 蓝图 cwikiossezYUCHENG HU
 
Confluence 会议记录(meeting notes)蓝图 cwikiossez
Confluence 会议记录(meeting notes)蓝图   cwikiossezConfluence 会议记录(meeting notes)蓝图   cwikiossez
Confluence 会议记录(meeting notes)蓝图 cwikiossezYUCHENG HU
 
VTIGER - 销售机会 - CWIKIOSSEZ
VTIGER - 销售机会 - CWIKIOSSEZ VTIGER - 销售机会 - CWIKIOSSEZ
VTIGER - 销售机会 - CWIKIOSSEZ YUCHENG HU
 
Confluence 使用一个模板新建一个页面 cwikiossez
Confluence 使用一个模板新建一个页面     cwikiossezConfluence 使用一个模板新建一个页面     cwikiossez
Confluence 使用一个模板新建一个页面 cwikiossezYUCHENG HU
 
Confluence 使用模板
Confluence 使用模板Confluence 使用模板
Confluence 使用模板YUCHENG HU
 
Cwikiossez confluence 订阅页面更新邮件通知
Cwikiossez confluence 订阅页面更新邮件通知Cwikiossez confluence 订阅页面更新邮件通知
Cwikiossez confluence 订阅页面更新邮件通知YUCHENG HU
 
Cwikiossez confluence 关注页面 博客页面和空间
Cwikiossez confluence 关注页面 博客页面和空间Cwikiossez confluence 关注页面 博客页面和空间
Cwikiossez confluence 关注页面 博客页面和空间YUCHENG HU
 
My sql università di enna a.a. 2005-06
My sql   università di enna a.a. 2005-06My sql   università di enna a.a. 2005-06
My sql università di enna a.a. 2005-06YUCHENG HU
 
My sql would you like transactions
My sql would you like transactionsMy sql would you like transactions
My sql would you like transactionsYUCHENG HU
 
MySQL 简要介绍
MySQL 简要介绍MySQL 简要介绍
MySQL 简要介绍YUCHENG HU
 

More from YUCHENG HU (20)

Confluencewiki 使用空间
Confluencewiki 使用空间Confluencewiki 使用空间
Confluencewiki 使用空间
 
Git
GitGit
Git
 
Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件
 
Logback 介绍
Logback 介绍Logback 介绍
Logback 介绍
 
Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南
 
Presta shop 1.6 的安装环境
Presta shop 1.6 的安装环境Presta shop 1.6 的安装环境
Presta shop 1.6 的安装环境
 
Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件Presta shop 1.6 如何安装简体中文语言文件
Presta shop 1.6 如何安装简体中文语言文件
 
Presta shop 1.6 图文安装教程
Presta shop 1.6 图文安装教程Presta shop 1.6 图文安装教程
Presta shop 1.6 图文安装教程
 
V tiger 5.4.0 图文安装教程
V tiger 5.4.0 图文安装教程V tiger 5.4.0 图文安装教程
V tiger 5.4.0 图文安装教程
 
Confluence 回顾(retrospectives) 蓝图 cwikiossez
Confluence 回顾(retrospectives) 蓝图   cwikiossezConfluence 回顾(retrospectives) 蓝图   cwikiossez
Confluence 回顾(retrospectives) 蓝图 cwikiossez
 
Confluence 会议记录(meeting notes)蓝图 cwikiossez
Confluence 会议记录(meeting notes)蓝图   cwikiossezConfluence 会议记录(meeting notes)蓝图   cwikiossez
Confluence 会议记录(meeting notes)蓝图 cwikiossez
 
VTIGER - 销售机会 - CWIKIOSSEZ
VTIGER - 销售机会 - CWIKIOSSEZ VTIGER - 销售机会 - CWIKIOSSEZ
VTIGER - 销售机会 - CWIKIOSSEZ
 
Confluence 使用一个模板新建一个页面 cwikiossez
Confluence 使用一个模板新建一个页面     cwikiossezConfluence 使用一个模板新建一个页面     cwikiossez
Confluence 使用一个模板新建一个页面 cwikiossez
 
Confluence 使用模板
Confluence 使用模板Confluence 使用模板
Confluence 使用模板
 
Cwikiossez confluence 订阅页面更新邮件通知
Cwikiossez confluence 订阅页面更新邮件通知Cwikiossez confluence 订阅页面更新邮件通知
Cwikiossez confluence 订阅页面更新邮件通知
 
Cwikiossez confluence 关注页面 博客页面和空间
Cwikiossez confluence 关注页面 博客页面和空间Cwikiossez confluence 关注页面 博客页面和空间
Cwikiossez confluence 关注页面 博客页面和空间
 
My sql università di enna a.a. 2005-06
My sql   università di enna a.a. 2005-06My sql   università di enna a.a. 2005-06
My sql università di enna a.a. 2005-06
 
My sql would you like transactions
My sql would you like transactionsMy sql would you like transactions
My sql would you like transactions
 
MySQL 指南
MySQL 指南MySQL 指南
MySQL 指南
 
MySQL 简要介绍
MySQL 简要介绍MySQL 简要介绍
MySQL 简要介绍
 

Jira 3.12.3不完全手册

  • 1. JIRA 3.12.3 不完全手册 彭贵生(pgs@skyon.com.cn) 诺祺科技 2008.8 OSS 计算技术 YUCHENG HU yucheng.hu@ossez.com 2012 年 10 月 07 日 1 JIRA 简介 1.1 概要介绍 JIRA 的生产者把 JIRA 定义为 Professional Issue Tracker,即它是一个专业的问题跟踪 管理的软件。这里的”问题”对应的英文单词是 Issue,所以含义比较广,包括 Bug,Task,Enhancement,Improvement 等等跟软件开发相关的名词。跟踪管理即对问 题的整个生命周期进行记录和管理。一个问题从创建到解决到关闭涉及到很多相关信 息,包括是什么问题,谁发现的问题,谁处理了这个问题,如何处理的,相应的代码有 什么改变等等,JIRA 可以方便的记录这些信息,并且在问题的不同状态呈现在相应的责 任人面前。相似的软件有 Bugzilla,Trac,Mantis,Clear Quest, Streber,Redmine 等。 进行问题跟踪管理的好处是:
  • 2. 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. 针对每个字段都能进行屏幕,项目,问题类型等配置,可以方便的控制字段应该出现在哪
  • 3. 里,而不应该出现哪里。 4. 默认定义了工作流的一些状态: new, open, defer, pending, resolved, reopened, closed。 默认定义了一个简易的工作流, open-in progress-resolved-closed 5. 强大的自定义工作流功能,针对不同的流程节点可以定义不同的权限、字段、后续可供 选择的处理方式。 6. 丰富的权限管理配置,可以针对项目、用户、用户组、项目角色、操作定义各种组合定 义 7. 支持附件,同时针对图片附件有特别支持,可以图片附件直接在网页中显示,如下图 8. 可方便地定制查询(Filter),不同的查询可以快速找到你关注的问题。查询条件可以对绝 大部分字段设定条件。 9. 用户首页可以定制,并且可以定制的查询放入首页,这样可以方便查看关注的内容。首 页被定义为一个 Portal,可供加入的 Portlet 有很多,如下图所示
  • 4. 10. 支持邮件通知,邮件通知可以同工作流中和工作流之外的事件关联 11. 支持 Time Tracking 功能,这个功能用于项目管理中的任务管理是很方便的 12. 支持 CVS、SVN 代码库的整合,同时支持 Fisheye,这样可以让问题和代码关联
  • 5. 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. 更多特性有待你来发掘
  • 6. 1.3 JIRA 的缺点 1. JIRA 是个商业软件,而 Bugzilla、Mantis 是开源免费的 2. 对 clear case 没有官方支持,有一个 plugin,但是状态时 unsupported 3. 专业性也带来了配置的复杂,建立一套完善的 custom fields, workflow, permission scheme 并不是一件容易的事情 2 JIRA 的安装 JIRA 是一个 Java Web Application, 自带的 web server 是 Tomcat,所以熟悉 J2EE 开发 的人来安装 JIRA 应该是轻车熟路的。JIRA 3.12 版本之后已经提供 windows installer 形式 的安装包,安装起来也变得很简单。以下介绍以 windows 安装包的形式来介绍 2.1 安装步骤 JIRA 提供 stanalone, war 包,installer 等的安装方式,以下安装以最简单的 installer 来介绍 1. 下载 Windows installer, Atlassian 的网站提供下载。安装包有 56M,这个包已经包括 了 JRE 和 Tomcat,所以可见 JIRA 的安装文件并不肥大。 2. 双击 EXE 文件开始安装,安装路径可以任意选择。 3. 安 装 向 导 结 束 后 双 击 %JIRA_HOME%/bin/startup.bat 可 以 启 动 JIRA , 通 过 http://localhost:8080 访问 JIRA 应用,如果成功打开了页面则表明安装成功 2.2 安装配置 1. 安装数据库,自带的 hsqldb 是不赞成使用的,我们以 mysql 为例进行配置。首先安装
  • 7. mysql,安装过程见相关文档,一般不需要有特殊选项 2. 建立数据库, root 用户登录 mysql, 用 创建一个名为 jira 的数据库(数据库名可以任意), 字符集用如下图的选项: 3. 建立数据库用户,如下图所示,如果数据库和 JIRA 在同一台机器,主机那栏填 localhost 并将 jira 数据库的所有权限赋予给 jira 用户(JIRA 初始化数据库时需要比较大的权限)
  • 8. 4. 下载 mysql jdbc driver 的 jar 包,并放入%JIRA_HOME%/common/lib 目录。Mysql 的 jdbc 驱动有很多版本,请下载适合你的 mysql server 的最新驱动,不然会产生一些 意料不到的问题。 5. 将 %JIRA_HOME%/atlassian-jiraWEB-INFclassesentityengine.xml 中 的 datasource name="defaultDS" field-type-name="hsqldb" 改为 mysql 6. 将%JIRA_HOME%/conf/server.xml 中的 jdbc/JiraDS 修改为如下形式 <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource" username="jira" password="jira" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost/jira?autoReconnect=true&amp;useUnicode=true&
  • 9. amp;characterEncoding=UTF8" maxActive="20" /> 7. 将 JIRA 安装为 NT 服务。在 CMD 窗口运行 bin/service.bat install 即可安装, service.bat remove 进行卸载。安装好打开服务如下图所示,点击“启动”按钮即可启 动 JIRA 8. 配置语言及通用选项。JIRA 第一次启动会提示你选择语言项,最好选择英语,因为中文 汉化不很完善,有些链接不会显示会导致功能缺陷。Index, attachment, backup 等目 录可以如下图所示来建立
  • 10. 到此 JIRA 就已经全部安装好了。 3 Quick Start 3.1 创建 Project JIRA 默认的管理员是 admin,密码也是 admin,使用这个用户登录后来创建 Project。没 有 project 的 JIRA 菜单很少,如下图所示:
  • 11. 1. 点击菜单中的 ADMINISTRATION 进入管理页面,点击 Projects-Add Project 来添加 Project 2. 如下图填写必填项,key 这个选项填完之后就不能修改了,所以想清楚填什么值最好, 并且建议填 3 个字母以内的缩写。Project lead 是必填的,但是这个时候只有 admin 一个用户,只能填 admin 了,增加用户后可以修改 project lead 为别人。后面的选项 都用默认。最后点击 Add 则完成了 Project 的创建
  • 12. Project 创建完成后,我们可以发现 JIRA 的菜单栏多了三个菜单:BROWSE PROJECT, FIND ISSUES, CREATE NEW ISSUE,功能分别是查看项目汇总统计信息,查询,创建 新问题,详细使用在后面描述。 3.2 查看用户组 点击 Group Browser 可以看到 JIRA 默认提供的三个 Group,在 Quick Start 中我们用这个 三个用户组就可以了。管理 Group 也是通过这个界面来进行
  • 13. 3.3 创建用户 1. 如下图通过 User Browser-Add User 来添加 User 2. 下图中的 Username 是用户的登录名,将不能修改。Full Name 是显示名,可以进行 修改
  • 14. 3. 点 Create 后创建成功,如下图 点击 Edit Groups 可以编辑用户所在的组,用户默认的组是 jira-users。 4. 选择 jira-developers 然后点击如下图中的 Join>> , arthur 将被加入 jira-developers 这个 group 5. 改变 TST Project 的 project lead。(Admin 用户是超级管理员,最好不要在任何项目 中担当角色) 从 ADMINISTRATION-Project 进入,如下图点击 Edit
  • 15. 在 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: 软件中的缺陷
  • 16. 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 个选项: 从图标可以看出其代表不同的优先级
  • 17. 点击 Create 进行创建,之后可以看到如下图的结果: JIRA 系统自动分配了一个 Issue Key :TST-1,这个 Key 是唯一标识 issue 的编号,其他 信息如图所示 3.5 处理 Issue Carol 登录 JIRA 后在她的首页可以看到如下信息:
  • 18. 可以看到右边的 Assigned To Me 列表中有一条记录,这表示是需要处理的 Issue,点击 TST-1 的链接进入如下界面: Available Workflow Actions 中的链接是不同处理 Issue 的步骤, 在开始做早餐之前, Carol 应该点击 Start Progress,之后 TST-1 的 status 变为 In progress, 半小时后 Carol 做完 了早餐,她就应该点击 Resolve Issue,之后进入如下界面:
  • 19. 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 是一致的。
  • 20. 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 界面
  • 21. 3. FIND ISSUES 界面
  • 22.
  • 23. 4. Issue Detail 界面 通过点击 issue Key 进入,或者其他链接进入 5. ADMINISTRATION 界面介绍 最多菜单链接的一个界面,在后面章节中会有针对大多配置对应链接的说明。
  • 24.
  • 25. 4.2 修改个人信息 JIRA 中的个人信息包括:密码、姓名、Email、Filter、preference、Dashboard、Column Navigator 等。 通过 JIRA 右上部的 Profile 链接进入设置,进入后的界面如下图所示: 其中 Preferences 可定制的选项包括浏览时每页最大 issues 数目,语言选项,Email 格式。 如果系统默认的语言是英文,你想把自己的界面改成中文,则可以通过这个地方将 Locale 改为中文即可 4.3 定制 Filter Filter 可以理解为过滤器、定制查询,即将一组查询条件保存起来。通过菜单栏中的 FIND ISSUES 进入 我们以建立“最近一周解决或者关闭的问题”为例来建立一个 filter: 1. 在 Project 中选择目标项目,选择项目之后会得到一个如下的提示
  • 26. 改变了所选的 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 看到刚才填写的条件概 况
  • 27. 6. 通过 Share 链接还可以将这个 Filter 共享给其他人或者其他用户组 4.4 定制 Portal(Dashboard) JIRA 将它的首页定义为 Portal,定制 Portal 即定制自己的 JIRA 首页。通过 Manage Portal 进入定制界面,如下图所示的链接: (通过个人信息中的 Dashboard Config 链接也可以 进入) 进入的配置界面如下图所示:
  • 28. 其中 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,如下图来操作:
  • 29. Project Statistics 还有下一个屏幕来提供选项,如下图所示: 我们选择需要添加的项目,统计类型我们关注的是状态,选择 Status,第三个选项是已经 解决的问题是不是要统计出来,之后点击 Save,则将 Project Statistics 这个 portlet 加入 到了 left column,我们要让它显示在右边,选中它点击向右箭头按钮即可。 然后回到首页,我们可以看到如下的效果:
  • 30. 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 链接来进行定制,如下图:
  • 31. 进入后的界面如下图: 注: JIRA 管 理 员 通 过 同 样 的 方 法 来 设 置 Navigator Columns , 操 作 入 口 是 : ADMINISTRATION-Navigator Columns 4.6 Watch 和 Vote 1. Watch Watch 是 JIRA 提供的一个关注 Issue 的功能,如果你正在 Watching 某个 issue,那
  • 32. 么按照 JIRA 的默认通知策略,这个 issue 的任何改动都会通过邮件通知你。通过 issue 明细页面左下方的 Operations 中 Watch it 链接来添加关注的 issue,如下图 如果你想让别人关注这个问题,可以通过 issue 明细页面左上方的 Watchers 后面的数字提 供的链接进入添加关注人的页面 My Watches 也是一个 Portlet,可以添加到 Dashboard 中,添加完后,如下图所示: 2. Vote Vote 是 JIRA 提供的一个投票功能,可以通过 issue 明细页面左下方的 Operations 中 Vote for it 链接来投票,票数越多表示这个 issue 希望解决的人越多。不过自己汇报的
  • 33. 问题是不能自己投票的。 JIRA 在 BROWSE PROJECT 界面中提供了一个 Popular Issues 来按投票数目多少排序 显示这些问题,如下图所示: 4.7 Issue Link Issue link 可以让相关的 issue 关联在一起,并且关联的联系方式是自定义的,最常见的一 种联系是重复问题。 Issue linking 功能在默认设置下是关闭的,可以让 JIRA 管理员打开并添加一个 Duplicate 的联系方式。在有 issue link 权限的情况下,可以通过 issue 明细页面的 Link 链接来建立 link,如下图: 在 Link Issue 页面中选择 duplicates 还是 is duplicated by,Issues 中填关联的另外一端 的 issue key,如下图:
  • 34. 添加好 Link 之后在 issue 明细页面可以看到如下的样子: 4.8 导出、打印 Issues JIRA 在列表和明细界面提供了导出 Word、导出 Excel、打印页面的功能 1. 列表操作 在查询列表页面中如上图提供了一系列的操作,其中 Printable 链接提供一个便于打印的简洁 HTML 页面,如下图
  • 35. Full Content 链接提供了一个便于打印的所有 issues 明细的 HTML 页面,如下图 Word 链接可以将所有 issues 明细导出成 word 文档 Excel 后面的两个链接:All fields 导出所有字段为 Excel,Current Fields 导出当前字 段为 Excel 2. Issue 明细操作 操作链接在 Issue Detail 中,功能与明细中的 Word 和 Printable 链接是一样的,如下 图:
  • 36. 4.9 制作报表 报表制作通过 BROWSE PROJECT 界面中的 Report 下的 Single Level Group By Report 链接进入,如下图: 进入制作报表界面后,可以选择不同的 Filter 和不同的统计类型进行报表显示,如下图:
  • 37. 制作完的报表如下图所示: 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 都有说明,需要解释的有:
  • 38. 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
  • 39. 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 的权限给 操作用户。之后按照向导进行操作即可。
  • 40. 配置 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 个
  • 41. 图标,足够来挑选了。 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 进入步 骤的设置,进入的界面如下图所示:
  • 42. 从图中看 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 是合理的,保留。
  • 43. 我们通过点击 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 使用不同的工作流, 如下图。
  • 44. 为了简洁起见,我们一般选择 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 包括:
  • 45. 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
  • 46. 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 可以进入配置界面,在这个界面中可以进行字段的增删、
  • 47. 字段顺序的排列。 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来显示版本 的变更记录:
  • 48. 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 时多了一个字段:
  • 50. 记录之后在 issue detail 界面的 work log Tab 可以看到记录: 开通 Time Tracking 之后,JIRA 还提供了一个 Time Tracking Report
  • 51. 报表如下图所示: JIRA 完全以时间来确定工作的进度,这种算法还得好好适应一下。 5.11 备份、导入导出 备份通过 Import & Export-- Backup Data to XML 来操作,导出路径写服务器上的绝对 路径,Backup As Zip 这个复选框选上则会将 XML 文件压缩成一个 zip 包。 导入则通过 Restore Data from XML 来操作,导入的文件可以是 XML,也可以是 zip。
  • 52. 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 这个环境变量
  • 53. 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 样子见图:
  • 54. 当然这个 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 计算任务的进度算法真是太没道理了,需要大大的改进。