使用 JIRA 搭建企业问题跟踪系统
使用JIRA搭建企业问题跟踪系统
JIRA是澳大利亚Atlassian公司开发的一款不错的商业问题跟踪工具,可以对各种类型的问题进行跟踪管理,包括缺陷、需求变更、评审记录等。笔者在进行缺陷跟踪工具的选型时,曾经试用了JIRA 一段时间,个人感觉很不错。笔者结合试用过程中碰到的问题和个人体会,将试用记录进行了整理。
本文主要介绍JIRA的个性化定制,介绍如何根据公司实际需求对JIRA进行定制,适用于管理员。至于说JIRA的基本使用方法,和普通的缺陷跟踪工具类似,本文不做重点介绍。
1背景
在试用JIRA前,公司使用Bugzilla作为缺陷跟踪工具。在使用初期,Bugzilla确实发挥了一定的作用,但随着公司强化项目管理的需要,Bugzilla开始不够用了。
项目组使用Bugzilla时,存在几个问题:
?项目组需要对不同类型的问题进行记录,如任务分配、评审所发现的问题、需求变更记录,缺陷等。
虽然可以在Bugzilla中也可以将这些各种类型的问题当作缺陷记录,但是这会混淆缺陷跟踪流程,因为这些不同类型的问题的处理流程是不一样的,但是Bugzilla中无法在系统中定制多个问题跟踪流程。
?项目管理者无法记录缺陷的预期修复完成时间
?项目管理者不能批量分配、编辑缺陷
?无法记录开发人员处理缺陷所花的工作量,并且所花工作量缺少对比。
?开发人员无法快速、直观的清楚分配给自己的缺陷,对于正在进行处理的缺陷也没有很直观的表现。?测试人员不知道缺陷修复预期对应的版本,导致缺陷回归时范围不清晰。
?不方便升级,升级成本大。
?其它细节问题,如界面不友好,用户无法上传附件等。
2介绍
跟踪并管理在项目过程中呈现出来的问题(如缺陷、新特性、需求变更、QA审计问题等)是项目管理很重要的任务,但是很少有团队能做的很好。JIRA虽然是一个问题跟踪系统,但是只要稍加改造,便可以成为一个项目管理软件。是一个问题跟踪和项目管理应用系统,目的是为了让跟踪和管理在项目过程中呈现出来的问题变得简单。
JIRA具有以下特性:
?管理缺陷,新特性、任务、改进或者其他任何问题
?干净和强大的用户界面方便商业或技术用户理解
?工作流定制
?全文搜索和强大的过滤器(可定制的,可保存的,可共享的,可预定的过滤器)
?可定制的工作台和实时统计
?企业级的权限和安全控制
?方便的扩展及与其他系统集成(包括email、RSS、Excel、XML和源码控制工具)
?非常高的通知选项配置
?可以在几乎所有硬件、操作系统和数据库平台下运行
JIRA可以根据你的需要提供所需要的信息。下面以缺陷为例,介绍各个角色成员在Jira中可以获得的信息和可以做的事情。
?管理人员——根据缺陷数据统计结果,了解项目状态
?查看项目整体问题分布情况
?查看项目整体问题工作量与进度情况
?查看某一开发人员在不同项目的开发工作量情况
?查看项目某个版本的工作量情况及每个用户的缺陷及剩余工作量情况
?项目管理者——评估缺陷和分配缺陷
?查看分配给我的问题
?看某个问题的详细信息
?分配问题
?填写问题的预期修复时间及修复估算工作量
?开发人员——处理缺陷,提交工作量记录
?接受问题,准备开始处理问题
?问题处理后,准备在系统上填写处理情况
?填写处理情况
?完成处理信息的填写后,准备填写处理问题所花的工作量
?填写处理问题所花的工作量
?测试人员——快速的提交缺陷,跟踪缺陷
?提交问题
?填写问题详细信息
?根据不同过滤条件查看不同的问题,准备进行问题的跟踪处理
?根据不同过滤条件列出的查询结果
?验证问题处理情况,根据不同工作流节点选择不同的操作
3安装
相比Bugzilla,JIRA有个很突出的优点:不用花数小时或数天来搭建你的问题跟踪系统,JIRA可以在小于30秒内搭建并运行在你的系统上。下面,笔者向您介绍JIRA的安装步骤。
1)执行/bin目录下的startup.bat文件,进入安装
2)选择一个索引目录,并输入licence,执行下一步
3)输入创建的管理员信息,执行下一步
4)在设置邮件服务器页面,其他信息都很容易故不多说。强调的是,在SMTP服务器输入框,要输入
IP地址,即:192.168.168.116(内部邮箱),用户名为内部邮箱用户名(如:),执行下一步
5)完成安装。
4系统配置
该部分主要以某公司对问题跟踪系统的需求作为案例,介绍如何根据实际需求,在JIRA中进行配置。本案例中涉及到缺陷跟踪和需求变更的跟踪管理两部分。
4.1设置问题类型
设置问题类型步骤如下:
1)“管理”-“IssueSettings”-“IssueType”,进入“ViewIssueTypes”界面
2)进行问题类型的增加、编辑等操作,并点击“Default”设置默认值。。
4.2设置工作流方案
1.设置状态
在某公司中,状态有Open、Assigned、Accepted、Pending、Closed、Sleeped等。
步骤如下:
1)选择“管理”-“IssueSettings”-“Statuses”,进入“ViewStatuses”界面
2)进行状态的增加、编辑等操作。
2.设置工作流
根据已定义的缺陷处理流程,在JIRA中新增一个工作流设置(不要在原来的工作流上修改),并设置如下。
缺陷:
其中,“接受本缺陷”,选择“Noviewfortransition”,“验证通过”,选择“Noviewfortransition”,“确认暂不处理本缺陷”选择“Addcommentandassign”。
需求变更
其中,“完成需求变更评估”、“审核通过”、“接受本需求变更”、“验证通过”,选择“Noviewfortransition”;“审核不通过”、“验证不通过”选择“Addcommentandassign”;“解决本需求变更”选择“Addcomment,assignandsetresolution”。
3.设置工作流节点的条件、功能点、合法性控制
我们需要对不同的事务控制权限,或者是控制执行提交操作时要进行哪些操作,具体设置如上表“Conditions”、“PostFunctions”二列。例如,对于Verified步骤的事务“重新打开缺陷”执行时,要将“解决”的值清空。
设置步骤如下:
1)选择需要设置条件的事务,如Verified步骤的事务“重新打开缺陷”
2)在界面下方的三个Tab页中,选择“PostFunctions”Tab页
3)点击“Add”链接
4)在进入的“AddPostFunctionToTransition”界面中,选择“UpdateIssueField”选项
5)在进入的“AddParametersToFunction”页面中,“IssueField”选择“解决”,“FieldValue”设置为空,点击《Add》按钮
这样,当缺陷从Verified状态被重新打开时,“解决”域的值就会被清空。这条缺陷,就可以出现在责任人首页的“分配给我”的清单中。
4.设置工作流配置文件
步骤如下:
1)选择“管理”-“Schemes”-“WorkflowSchemes”,进入“WorkflowSchemes”界面
2)增加一个Workflow方案
3)选择问题类型(如缺陷、Improvement),为该workflow方案分配已定义的Workflow。
同理,为其他几种问题类型,都设置一个workflow,方便以后流程的升级。否则以后如果需要改流程,则需要将工作流配置文件先取消关联,然后才能修改该方案对应的工作流。这可能导致verified状态对应的缺陷被改变状态。如下图所示:
问题类型
4.3问题属性
1.严重性
设置步骤如下:
1)选择“管理”-“IssueField”-“CustomFields”,进入“ViewCustomFields”界面
2)点击“AddCustomField”链接,进入“CreateCustomField”界面
3)选择“SelectList”类型,选择“Global-allissues”选项,点击《NEXT》按钮
4)在“FieldName”域输入“严重性”,在“ChooseSearchTemplate”项选择“SelectListSearcher”,点击《Create》按钮
5)在“EditCustomFieldOptions”页面,增加下拉框选项(如上表所属内容),完成后,点击《Done》按钮
6)在“ViewCustomFields”界面,“严重性”行,点击“EditDefaults”链接,在弹出的页面中,选择该下拉框的默认值
2.优先级
优先级分P1-P5五个级别,其中,P1优先级最高,P5最低。
设置步骤如下:
1)选择“管理”-“IssueSetting”-“Priorities”,进入“ViewPriorities”界面2)对选项值进行编辑,并点击“Default”设置默认值。
3.缺陷类别
设置步骤如下:
1)选择“管理”-“IssueField”-“CustomFields”,进入“ViewCustomFields”界面
2)点击“AddCustomField”链接,进入“CreateCustomField”界面
3)选择“SelectList”类型,Scope选择“IssueType-issuesofaspecifiedtype”选项,点击《NEXT》按钮
4)在“FieldName”域输入“Bug类别”,在“ChooseSearchTemplate”项选择“SelectListSearcher”,点击《Create》按钮
5)在“EditCustomFieldOptions”页面,增加下拉框选项(如上表所属内容),完成后,点击《Done》按钮
6)在“ViewCustomFields”界面,“Bug类别”行,点击“EditDefaults”链接,在弹出的页面中,选择该下拉框的默认值
注意:该属性Scope只能选择“IssueType-issuesofaspecifiedtype”项。
4.解决方案
设置步骤如下:
1)选择“管理”-“IssueSetting”-“Resolutions”,进入“ViewResolutions”界面
2)对选项值进行编辑,并点击“Default”设置默认值。
5.平台
包括:DEC、HP、Macintosh、PC、SGI、Sun、Other。
设置PC为默认值。设置步骤同上。
6.操作系统
包括:Windows95、Windows98、WindowsMe、Windows2000、WindowsNT、WindowsXP、WindowsServer2003、MacSystem7.5、MacSystem7.6.1、MacSystem8.0、MacSystem8.5、MacSystem8.6、MacSystem9.x、MacOSX10.0、MacOSX10.1、MacOSX10.2、Linux、BSD/OS、FreeBSD、NetBSD、OpenBSD、AIX、BeOS、HP-UX、IRIX、Neutrino、OpenVMS、OS/2、OSF/1、Solaris、SunOS、Other。
设置WinXP为默认值。设置步骤同上。
7.变更方式
包括:新增、修改
8.发生阶段
包括:计划、需求、设计、编码、测试、实施、运行
9.申请人
设置为:UserPicker
10.申请时间
设置为:DatePicker
11.原始需求内容
设置为:FreeTextField
12.业务分析结论
包括:不采纳该需求变更、接受本需求变更、未达成一致意见,继续进行业务评估。
13.变更发生的业务背景
设置为:FreeTextField
14.要求实现的功能
设置为:FreeTextField
15.技术分析结论
包括:无法实现、可以实现、未达成一致意见,继续进行技术分析16.管理分析结论
包括:允许实施、不允许实施、未达成一致意见,继续进行管理分析4.4用户组和权限控制
1.设置用户组
设置步骤如下:
1)选择“管理”-“Users&Groups”-“GroupBrowser”,进入“GroupBrowser”界面
2)新增用户组:Administrators、Assigners、Developers、Testers
2.设置权限方案
设置步骤如下:
1)选择“管理”-“Schemes”-“PermissionSchemes”,进入“PermissionSchemes”界面2)新增一个权限方案(不要在默认权限方案上进行修改)
3)在复制的权限方案上,点击“Permission”链接,进入“EditPermissions”界面
4)根据上表的权限分配,进行增、删、改。
注:只有Assigner角色可以分配缺陷。