JIRA入门与简介

· 1JIRA简介

· 1.1概要介绍

·

· JIRA 的生产者把JIRA定义为ProfessionalIssueTracker,即它是一个专业的问题跟踪管理的软件。这里的”问题”对应的英文单词是 Issue,所以含义比较广,包括Bug,Task,Enhancement,Improvement等等跟软件开发相关的名词。跟踪管理即对问题的整 个生命周期进行记录和管理。一个问题从创建到解决到关闭涉及到很多相关信息,包括是什么问题,谁发现的问题,谁处理了这个问题,如何处理的,相应的代码有什么改变等等,JIRA可以方便的记录这些信息,并且在问题的不同状态呈现在相应的责任人面前。相似的软件有Bugzilla,Trac,Mantis,ClearQuest,Streber,等。

· 进行问题跟踪管理的好处是:

· 1.让系统来记住Task,Bug等等信息,而不仅仅靠项目经理和程序员的脑袋来记忆。人脑记忆的东西往往是不准确的。

· 2.问题跟踪管理可以定制流程,可以有效提高工作效率

· 3.用专业的系统来进行问题跟踪管理能带来更多的好处,详细见下面JIRA的优点

· 1.2JIRA的优点

· JIRA有很多专业特性,不愧为介绍中说的Professional这个词。

· 1.针对问题其默认定义了丰富的字段来记录问题的各种信息,包括IssueType,Issuesummary,IssueDescription,priority,assignee,reporter,resolutions等等

· 2.强大的自定义字段功能,自定义字段自带有22中类型可以选择,而且还可以通过JIRAExtension来支持更多类型。22种类型如下图所示:

·

· 3.针对每个字段都能进行屏幕,项目,问题类型等配置,可以方便的控制字段应该出现在哪里,而不应该出现哪里。

· 4.默认定义了工作流的一些状态:new,open,defer,pending,resolved,reopened,closed。默认定义了一个简易的工作流,open-inprogress-resolved-closed

· 5.强大的自定义工作流功能,针对不同的流程节点可以定义不同的权限、字段、后续可供选择的处理方式。

· 6.丰富的权限管理配置,可以针对项目、用户、用户组、项目角色、操作定义各种组合定义

· 7.支持附件,同时针对图片附件有特别支持,可以图片附件直接在网页中显示,如下图

·

· 8.可方便地定制查询(Filter),不同的查询可以快速找到你关注的问题。查询条件可以对绝大部分字段设定条件。

· 9.用户首页可以定制,并且可以定制的查询放入首页,这样可以方便查看关注的内容。首页被定义为一个Portal,可供加入的Portlet有很多,如下图所示

·

· 10.支持邮件通知,邮件通知可以同工作流中和工作流之外的事件关联

· 11.支持TimeTracking功能,这个功能用于项目管理中的任务管理是很方便的

· 12.支持CVS、SVN代码库的整合,同时支持Fisheye,这样可以让问题和代码关联

·

· 13.自带备份机制,不用担心数据丢失。况且JIRA运行非常稳定,使用2年以来从未发生系统性故障

· 14.导入导出功能很完善,可以导出为XML文件,方便将数据从不同数据库之间迁移。

· 15.系统性能非常不错,在一台普通PC上,只分配了256M内存,整个系统有1000多个Issue,92个用户(同时在线使用应该有20个用户),同时还将JIRA需要的数据库安装在一起可以很流畅的运行。同时这台PC还运行了CVS,VSS等等服务。

· 16.支持多种数据库,mysql,mssqlserver,oracle等等,自带有内存数据库hsqldb已经可以让JIRA运转起来。配合MySQL已经足够应付40个人规模的项目。JIRA的数据库很简练,附件是作为文件形式存放的。

· 17.支持Plugin功能,如果有什么没有实现的功能,或许通过plugin可以实现,JIRA的网站上有很多plugin来下载

·18.JIRA针对开源项目是提供免费license的,所以其用户群很庞大,相应的你得到支持也是很多的,包括官方详尽的文档、Wiki,用户论坛等等

· 19.更多特性有待你来发掘

· 1.3JIRA的缺点

· 1.JIRA是个商业软件,而Bugzilla、Mantis是开源免费的

· 2.对clearcase没有官方支持,有一个plugin,但是状态时unsupported

· 3.专业性也带来了配置的复杂,建立一套完善的customfields,workflow,permissionscheme并不是一件容易的事情

· 2JIRA的安装

· JIRA是一个JavaWebApplication,自带的webserver是Tomcat,所以熟悉J2EE开发的人来安装JIRA应该是轻车熟路的。JIRA3.12版本之后已经提供windowsinstaller形式的安装包,安装起来也变得很简单。以下介绍以windows安装包的形式来介绍

· 2.1安装步骤

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

· 1.下载Windowsinstaller,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.下载mysqljdbcdriver的jar包,并放入%JIRA_HOME%/common/lib目录。Mysql的jdbc驱动有很多版本,请下载适合你的mysqlserver的最新驱动,不然会产生一些意料不到的问题。

· 5.将%JIRA_HOME%/atlassian-jira\WEB-INF\classes\entityengine.xml中的datasourcename="defaultDS"field-type-name="hsqldb"改为mysql

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

·<Resourcename="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.batinstall即可安装,service.batremove进行卸载。安装好打开服务如下图所示,点击“启动”按钮即可启动JIRA

·

· 8.配置语言及通用选项。JIRA第一次启动会提示你选择语言项,最好选择英语,因为中文汉化不很完善,有些链接不会显示会导致功能缺陷。Index,attachment,backup等目录可以如下图所示来建立

·

· 到此JIRA就已经全部安装好了。

· 3QuickStart

· 3.1创建Project

· JIRA默认的管理员是admin,密码也是admin,使用这个用户登录后来创建Project。没有project的JIRA菜单很少,如下图所示:

·

· 1.点击菜单中的ADMINISTRATION进入管理页面,点击Projects-AddProject来添加Project

·

· 2.如下图填写必填项,key这个选项填完之后就不能修改了,所以想清楚填什么值最好,并且建议填3个字母以内的缩写。Projectlead是必填的,但是这个时候只有admin一个用户,只能填admin了,增加用户后可以修改projectlead为别人。后面的选项都用默认。最后点击Add则完成了Project的创建

·

· Project创建完成后,我们可以发现JIRA的菜单栏多了三个菜单:BROWSEPROJECT,FINDISSUES,CREATENEWISSUE,功能分别是查看项目汇总统计信息,查询,创建新问题,详细使用在后面描述。

· 3.2查看用户组

· 点击GroupBrowser可以看到JIRA默认提供的三个Group,在QuickStart中我们用这个三个用户组就可以了。管理Group也是通过这个界面来进行

·

· 3.3创建用户

· 1.如下图通过UserBrowser-AddUser来添加User

·

· 2.下图中的Username是用户的登录名,将不能修改。FullName是显示名,可以进行修改

·

· 3.点Create后创建成功,如下图

·

· 点击EditGroups可以编辑用户所在的组,用户默认的组是jira-users。

· 4.选择jira-developers然后点击如下图中的Join>>,arthur将被加入jira-developers这个group

·

· 5.改变TSTProject的projectlead。(Admin用户是超级管理员,最好不要在任何项目中担当角色)

· 从ADMINISTRATION-Project进入,如下图点击Edit

·

· 在ProjectLead栏输入arthur(jira3.12.3版本系统会通过AJAX快速查询到用户进行选择)

·

· 一个项目不能只有一个projectlead,我们按照上述方法创建两个jira-developers的用户:Carol,Ben创建两个 jira-users用户:Chris,Mike。Jira-developers组是开发人员,职责是解决问题,jira-users组是测试组,职责是发现问题并创建问题测试问题

· 3.4创建Issue

· 用arthur这个用户登录JIRA,点击CREATENEWISSUE进行问题创建。如下图,这个界面中有两个下拉框可以选择,Project中因为只有一个项目,所以没得选择,IssueType有四个选项

· Bug:软件中的缺陷

· NewFeature:需求之外增加的新功能

· Task:计划中的任务

· Improvement:针对已经实现的功能的改进

·

· 我们选择Task,创建一个任务:ProjectLead分配一个任务给Carol,内容是让Carol来做8月14日的早餐。如下填写信息:

· Summary中填写概要信息,详细信息填写在Description中,比如错误日志、详细需求等等

· DueDate是指何时需要完成

· Assignee填写指派人

· Components和Version的信息目前都是Unknown,因为针对TestProject我们没有配置这两个信息

· Environment一般填写Bug发生的环境,Bug往往是因为其环境有特殊性而导致

· Priority默认有5个选项:

·

· 从图标可以看出其代表不同的优先级

·

· 点击Create进行创建,之后可以看到如下图的结果:

· JIRA系统自动分配了一个IssueKey:TST-1,这个Key是唯一标识issue的编号,其他信息如图所示

·

· 3.5处理Issue

· Carol登录JIRA后在她的首页可以看到如下信息:

·

· 可以看到右边的AssignedToMe列表中有一条记录,这表示是需要处理的Issue,点击TST-1的链接进入如下界面:

·

· AvailableWorkflowActions中的链接是不同处理Issue的步骤,在开始做早餐之前,Carol应该点击StartProgress,之后TST-1的status变为Inprogress,半小时后Carol做完了早餐,她就应该点击ResolveIssue,之后进入如下界面:

·

· Resolution有如下选项:

· Fixed:已经解决

· CannotReproduce:问题无法重现

· Won’tFix:无法解决

· Incomplete:未完成,未完成还还能叫做Resolved?

· Duplicate:重复问题,选择这个的时候最好在Comment中写上重复的IssueKEY

· Assignee填确认这个问题是否解决的人,一般填问题创建者

· 点击Resolve之后Issue状态变成了Resolved

· 用arthur登陆JIRA,在QuickSearch中输入TST-1可以快速找到TST-1这个Issue,经过严格测试之后可以确认问题已经解决,则可以选择CloseIssue。

· 在AvailableWorkflowActions点击CloseIssue,在下一个界面填写Comment,之后Issuestatus变成了Closed,到此Issue处理结束。

· 当然如果这个Issue经过测试再次发生问题,可以选择ReopenIssue,Reopened的Issue后续处理同open状态的issue是一致的。

· 4定制你的JIRA(ForUsers)

·4.1JIRA操作界面介绍

· 1.下图是首页界面介绍(点击菜单栏中的HOME进入)

·

· 注:QUICKSEARCH是一个非常有用的框框:

· 1)输入issueKey可以迅速打开这个issue,比如输入PR-10,则可以转入到PR-10的明细页面

· 2)当你已经工作在某个Project时,你只要在快速搜索框中输入issueKey的序号,即可完成1)中的功能,即输入10然后按回车既有PR-10的效果

· 3)输入非issueKey或非数字的字符等同于Filter中在TextSearch中输入了特定的字符进行搜索

·

· 2.BROWSEPROJECT界面

·

· 3.FINDISSUES界面

·

· 4.IssueDetail界面

· 通过点击issueKey进入,或者其他链接进入

·

· 5.ADMINISTRATION界面介绍

· 最多菜单链接的一个界面,在后面章节中会有针对大多配置对应链接的说明。

·

· 4.2修改个人信息

· JIRA中的个人信息包括:密码、姓名、Email、Filter、preference、Dashboard、ColumnNavigator等。

· 通过JIRA右上部的Profile链接进入设置,进入后的界面如下图所示:

·

·

· 其中Preferences可定制的选项包括浏览时每页最大issues数目,语言选项,Email格式。如果系统默认的语言是英文,你想把自己的界面改成中文,则可以通过这个地方将Locale改为中文即可

· 4.3定制Filter

· Filter可以理解为过滤器、定制查询,即将一组查询条件保存起来。通过菜单栏中的FINDISSUES进入

· 我们以建立“最近一周解决或者关闭的问题”为例来建立一个filter:

· 1.在Project中选择目标项目,选择项目之后会得到一个如下的提示

·

· 改变了所选的Project,其对应的versions,components,customfields都是可能不一致的,所以需要点击Clickhere这个链接来更新这些信息

· 2.在IssueAttributes中的Status选择Resolved和Closed(选择第二个值按住Ctrl再点击)

· 3.在DatesandTimes中的updated:From中填上-1w(-1w表示一周以来,类似的符号有d天,h小时,m分钟,2h30m表示2小时30分,注意两个时间之间有个空格)

· 4.点击View即可查询出满足以上条件的Issues,我们希望按照Updatetime来倒序排列这些issues,点击Updated那列的标题即可倒序排列,再点击一次会变成顺序排列,想按照其他字段来排序也是类似的操作。

· 5.如果确认查询出的issues已经是所想要的,剩下一步就是将这些条件保存为一个filter,点击Saveitasafilter,如下图所示

·

· 填上filter名字,点击Save之后可以通过下图中的Summary看到刚才填写的条件概况

·

· 6.通过Share链接还可以将这个Filter共享给其他人或者其他用户组

· 4.4定制Portal(Dashboard)

· JIRA将它的首页定义为Portal,定制Portal即定制自己的JIRA首页。通过ManagePortal进入定制界面,如下图所示的链接:(通过个人信息中的DashboardConfig链接也可以进入)

·

· 进入的配置界面如下图所示:

·

· 其 中Fullconfigure可以修改当前的配置,AddNewPortalPage可以增加一个portal页面,我们通过 AddNewPortalPage来举例,Name中输入MyPage,StartFrom选择Dashboard,然后点击Add按钮,之 后可以得到如下图所示的效果:

·

· 点击其中的Fullconfigure可以进行MyPage的配置,如下图所示:

·

· 定制的界面分为左右两边,点击Add按钮增加内容,Edit、Copy、Delete、上下左右箭头按钮顾名思义。

· 我们点击Add按钮,准备在MyPage上增加一个Projectstatistics,如下图来操作:

·

· ProjectStatistics还有下一个屏幕来提供选项,如下图所示:

·

· 我 们选择需要添加的项目,统计类型我们关注的是状态,选择Status,第三个选项是已经解决的问题是不是要统计出来,之后点击Save,则将ProjectStatistics这个portlet加入到了leftcolumn,我们要让它显示在右边,选中它点击向右箭头按钮即可。

· 然后回到首页,我们可以看到如下的效果:

·

· Portlet有很多选项,我认为最有用的应该是ShowSavedFilter,你可以首先定制好自己的Filter,然后把它加入到首页中,这样自己关注的issues就可以一目了然的看到了。

· 注:

· JIRA管理员通过同样的方法来设置DefaultDashboard,操作入口是:ADMINISTRATION-DefaultDashboard

· 4.5定制NavigatorColumns

· 点 击某个Filter进行issue查询,查询列表中的显示字段可以进行定制,可供的选项有:增加字段、减少字段、编排字段先后顺序。JIRA默认的字段包 括:T,Key,Summary,Assignee,Reporter,Pr,Status,Res,Created,Updated,Due,其中 T是issuetype,Pr是Priority,Due是Duedate。默认的排序是按照Key倒序排列。

· 通过列表上方的Configure链接来进行定制,如下图:

· 进入后的界面如下图:

·

· 注:

· JIRA管理员通过同样的方法来设置NavigatorColumns,操作入口是:ADMINISTRATION-NavigatorColumns

·

· 4.6导出、打印Issues

· JIRA在列表和明细界面提供了导出Word、导出Excel、打印页面的功能

· 1.列表操作

·

· 在查询列表页面中如上图提供了一系列的操作,其中

· Printable链接提供一个便于打印的简洁HTML页面,如下图

·

· FullContent链接提供了一个便于打印的所有issues明细的HTML页面,如下图

·

· Word链接可以将所有issues明细导出成word文档

· Excel后面的两个链接:Allfields导出所有字段为Excel,CurrentFields导出当前字段为Excel

· 2.Issue明细操作

· 操作链接在IssueDetail中,功能与明细中的Word和Printable链接是一样的,如下图:

·

·

· 4.7制作报表

· 报表制作通过BROWSEPROJECT界面中的Report下的SingleLevelGroupByReport链接进入,如下图:

·

· 进入制作报表界面后,可以选择不同的Filter和不同的统计类型进行报表显示,如下图:

·

· 制作完的报表如下图所示:

·

· 5让你的JIRA更专业(ForAdministrator)

· 5.1常用配置

· 5.1.1Users,Groups&Roles

· 用 户和用户组已经在QuickStart中描述过。ProjectRoleBrowser中可以定制项目角色,JIRA提供的三种用户角色略显不够,一般的项目包括projectmanagers,teamleaders,developers,testers,不妨按照这个思路来添加项目角色。项目角色添加好之后可以通过PermissionScheme来对角色分配不同的权限

· 5.1.2GlobalSettings

· ?GeneralConfiguration

· 这个配置界面有很多项目可以配置,每个项目JIRA都有说明,需要解释的有:

· 1.BaseURL,这个选项很有必要设置正确,JIRA会对描述、comments中的IssueKEY自动加上链接,如果BaseURL不正确,所有的链接都将是错误的

· 2.Indexinglanguage,这个选项默认是English,在Characterencoding是UTF-8的情况下,indexinglanguage是English也没有影响,即使你在创建issue时使用了中文,也能建立索引

·3.Defaultlanguage,安装好JIRA后第一次进入JIRA选择语言后可以通过这个地方来修改,正如之前说的,最好选择成英文。

·4.Options里面的选项没有特别要求使用默认设置即可

· ?GlobalPermissions

· 这里的权限和项目中的权限是不同的,项目中的权限指的是创建issue、编辑issue等等,这里的权限是一些管理权限、创建filter的权限等与项目无关的权限

· ?LookandFeel

· 这个地方可以打造你的JIRA的外观,包括配色、Logo、日期格式

· ?MailServers

· 配置邮件服务器,可以配置SMTP或者JNDI

· 5.1.3IssueSettings

· 可以在ADMINISTRATION-IssueSettings中进行以下项目的配置:

· IssueTypes

· Priority

· Resolutions

· Statuses

· JIRA提供两种配置:翻译和编辑这些resolution。翻译可以适应多语言环境。编辑可以改变字段属性、排序位置、默认值、增删字段值等。这四个字段的配置都是类似的方法,参见JIRA提供界面应该不存在难度,以下列出配置中需要注意之处

· ?配置IssueTypes

· 系 统自带的IssueType包括:Bug,Task,Improvement,NewFeature,sub-task.如果需要增加自己的问题类型,下面的IssueTypes中进行配置。按照界面进行添加、编辑IssueType,没什么特别。

· 但如果想删除已经添加好的IssueType可能会碰到一些麻烦,当该IssueType下存在issue的时候是不能删除这个IssueType的。有两种办法来删除这个IssueType

· 1.编辑相应的Issue,将IssueType改成其他不删除的IssueType。当Issue被close之后将不能被编辑,所以这种方法存在限制。

· 2.改变相应Project的IssueTypeScheme,这个scheme必须不包含待删除的IssueType,在改变scheme的时候可能会报错,如下图所示:

·

· 这是因为操作用户没有权限,应该在ProjectPermission中增加moveissue的权限给操作用户。之后按照向导进行操作即可。

· ?配置Resolutions

· 通过ADMINISTRATION-IssueSettings中的Resolutions进行设置。

· JIRA默认的Resolutions包括:

· 1.Fixed

· 2.Won'tFix

· 3.Duplicate

· 4.Incomplete

· 5.CannotReproduce

· 基本上这五种解决办法已经足够了。

· 注意:

· Resolution这 个字段被JIRA默认的几个filter做了引用,所以千万不要自定义一个字段也叫Resolution,同时又把系统自带的Resolutions字段 屏蔽!这些filter包括openissues,OUTSTANDING,filter中的条件都是Resolution为 UNRESOLVED,这个UNRESOLVED的含义是Resolution字段没有设置任何值或者IssueStatus为非Resolved和 非Closed,所以当一个Issue状态为Resolved,即使它的Resolution为Won’tFix,它也不会出现在 openissues里面,即无法解决也是一种解决办法…

· ?配置Priority

· Priority的颜色、图标都是可以修改的,最常用的Major级别的颜色是绿色,不妨修改为警告色黄色可以引起更多的重视

· ?配置Statuses

· 这个字段是供workflow使用的一个字段,当在做工作流配置时如果觉得状态不够,那在这里添加即可。状态可以关联Icon可以让查看issue时更直观,JIRA提供了17个图标,足够来挑选了。

· 5.1.4Options&Settings

· 1.SendE-mail

· 可以通过这个功能给某个用户组或者某个项目的特定项目角色发送Email

· 2.AnnouncementBanner

· 这个地方可以设置一个横幅在JIRA菜单栏下面,可以写上重要的使用说明、通知等等,支持HTML

· 5.2自定义工作流

· 配置工作流之前请先定好Issue有哪些状态,状态的配置见常用配置--IssueSettings部分。

· 工作流配置从ADMINISTRATION-GeneralSettings-Workflows进入,系统默认有一个叫做jira的工作流,这个工作 流是只读的不能修改。但是可以以此为蓝本来建立工作流,通过Operations中Copy链接即复制了一个一样的工作流。点击 Operations--steps进入步骤的设置,进入的界面如下图所示:

·

· 从图中看Openstep,LinkedStatus表示执行完这个step后,issue的状态会变成Open,Transitions表示对于Open状态的issue可以执行的操作,Operations是设置时用到的链接。

· 下面以几个例子来说明如何配置工作流:

· 1.我们认为Open状态的issue不能有ResolveIssue这个Transition,所以准备把它删除,点击DeleteTransitions,之后在多选框中选择ResolveIssue,删除即可。

· 2.对 于Open状态的issues,StartProgress这个操作我们想控制它的权限,只有开发人员才能执行这个操作。通过点击 StartProgress这个链接进入设置,我们看到在Conditions这个Tab中已经存在一个条件,含义是“只有assignee才能执行这个操作”,这个condition是合理的,保留。

·

· 我 们通过点击Add链接来增加另外一个condition,之后会得到一个列表来选择condition的类型,开发人员才能执行同 Projectrole比较接近,选择UserisinProjectRole。其实选择Userisingroup然后配置一个开发 人员组也是可以达到同样的效果。

·

· 在下一屏中选择Developers这个ProjectRole,添加完我们可以看到如下图所示的Conditions

·

· JIRA默认将增加的condition用AND来连接,如果需要也可以将条件用OR来连接。

· 熟悉以上操作后,通过AddNewStep,调整每个step关联的status就可以实现复杂的自定义工作流。

· 工 作流定义好之后,还需要定义workflowscheme,这个工作流才能被项目引用。通过ADMINISTRATION-Schemes-WorkflowSchemes进入配置界面,先增加一个scheme,然后在Operations中的Workflows链接中关联 workflow。JIRA在workflow之外再包装一层scheme的意义在于可以针对不同的issuetype使用不同的工作流,如下图。

·

· 为了简洁起见,我们一般选择AllunassignedIssueTypes对应一个工作流。

· 定义好workflowscheme之后才能被特定的Project所使用,通过ADMINISTRATION—Projects,选择需要配置的Project进行配置,如下图:

·

· 在WorkflowScheme中点击Select进行scheme的选择。在Associate的时候会得到一个警告:

·

· 针对已经存在issues的project,修改工作流可能会引起状态等信息的丢失,所以最好先做好JIRA数据的备份以免发生意外。(我修改过1000个issues的project的工作流,JIRA可以很好的处理,不用因为有警告而太紧张,不过事先备份是必须的操作)

· 另外Project配置界面有很多scheme可配置,方法是类似的,后面不再详细描述。可以配置的scheme包括:

· IssueTypeScheme

· NotificationScheme

· PermissionScheme

· IssueSecurityScheme

· FieldConfigurationScheme

·IssueTypeScreenScheme

· WorkflowScheme

· 5.3自定义权限

· JIRA中的权限包括两部分:GlobalPermission和ProjectPermission,前者已经描述,配置也相对简单。本节描述的是后者。

· 通 过ADMINISTRATION—Schemes—PermissionSchemes进入配置。系统定义了一个 DefaultPermissionScheme,并且这个scheme中的权限是可以直接进行修改的,点击Operations— permissions进行修改。JIRA将权限分细项列表在配置界面中,通过Operations中Add链接或者页面上方的 GrantPermission进行权限增加,通过Delete链接删除赋予给特定对象的权限。

· 5.4自定义字段

· 通 过ADMINISTRATION—IssueFields—CustomFields进行配置,点击AddCustomField进行字段添 加,再下一步是选择字段的类型,常见的字符型、数字型、日期型、下拉框、双重下拉框、多选框、单选按钮等等JIRA都支持。

· 我们选择TextField(<255characters)做个测试,之后天上字段名称、字段描述。SearchTemplate表示该字段使用的搜索类型,如果选择None,这个字段将不会出现在 FindIssues里面的查询条件中,即对该字段将不能进行查询。后面还有两个选项:issuetypes,projects,目的是让这个自定义 的字段出现在特定的issuetype和特定的项目中。点击Finish之后会得到如下屏幕:

·

· 这个设置屏幕是将添加好的自定义字段加入到特定的界面中,选择需要显示该字段的界面点击update即可完成设置。设置完得到如下界面:

·

· Configure链接可以进行issuetypes,projects设置,Edit可以进行字段名称和searchtemplate修改,Screens可以对字段出现的界面进行配置。

· 注意:

· 1.定义好的字段是不能修改字段类型的!

· 2.TextField类型存在一个Bug,如果对该字段填值都是数字,比如输入300,之后通过Filter来搜索issue将会失败,但是如果输入L300,然后通过L300来搜索是可以搜索到相应issue。

· 5.5自定义界面(Screen)

· 通过ADMINISTRATION—IssueFields—Screens进行配置,系统自带有三个Screen,通过Operations中的Configure可以进入配置界面,在这个界面中可以进行字段的增删、字段顺序的排列。

· 5.6自定义事件通知

· 通过ADMINISTRATION—Schemes—NotificationSchemes进行配置,系统默认的通知策略是当任意事件发生时都会通知Reporter、Assignee和Watchers。

· 5.7和代码库(SVN,CVS)关联

· 在 测试过程中tester提交了一个bug,developer解决了这个bug,同时提交了几个java类,如果你想看到针对这个bug项目里面的代码做 了哪些修改,jira-subversionplugin就发挥作用了。安装好subversionplugin之后,只需要developer在做 svncommit的时候在comments里面写上jiraid,在jira的subversiontab里面就会显示这个comments和这 次提交的文件。

·

· 注:

· 目前最新的atlassian-jira-subversion-plugin-0.10.3不支持svn1.5,不过通过升级svnkit到1.1.8以上版本就能解决这个问题

· 5.8和Fisheye关联

· 而jirafisheyeplugin则是将fisheye的功能集成到jira中,同时也是随jiraid来显示版本的变更记录:

·

· Fisheyeplugin配置时,记得在fisheye管理界面中把RemoteAPI设置成ON,要不然plugin连不上fisheye的!

· 5.9Sub-tasks

· 通过GlobalSettings—Sub-tasks来开通这个功能

· 5.10Timetracking

· 通过GlobalSettings—Sub-tasks来开通这个功能,其中对一周几天,一天几个小时需要先定义好。

·

· JIRA的网站也有一个描述:ProjectManagementTool,用JIRA实现项目管理最重要的是开通Timetracking功能。

· ActivateTimetracking功能之后在创建issue时多了一个字段:

·

· 这个字段的含义是预估完成这个任务所需要的时间。

· 同时在处理issue时,多了一个操作:Worklog,如下图所示

·

· 点击其中的Logworkdone进行工作日志的记录:

·

· 记录之后在issuedetail界面的worklogTab可以看到记录:

·

· 开通TimeTracking之后,JIRA还提供了一个TimeTrackingReport

·

· 报表如下图所示:

·

· JIRA完全以时间来确定工作的进度,这种算法还得好好适应一下。

· 5.11备份、导入导出

· 备份通过Import&Export--BackupDatatoXML来操作,导出路径写服务器上的绝对路径,BackupAsZip这个复选框选上则会将XML文件压缩成一个zip包。

· 导入则通过RestoreDatafromXML来操作,导入的文件可以是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"--JvmMs256--JvmMx512--Startupauto

· 其中-JvmMs是最小内存数,-JvmMx是最大内存数,一般最小256,最大512足够了。修改完后执行

·service.batremove将原有的NT服务删除(如果JIRA服务处于启动状态先停止服务)

· service.bat install安装新的NT服务

· 启动新的服务即生效了

· 2.非NT服务修改JVM内存大小

· 修改%JIRA_HOME%/bin下面的setenv.bat文件,修改JAVA_OPTS这个环境变量

· setJAVA_OPTS=%JAVA_OPTS%-Xms256m-Xmx512m-Datlassian.standalone=JIRA-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true

· 其中-Xms256m表示最小内存,-Xmx512m表示最大内存

· 3.让JVM进行garbagecollection

· 如果在使用JIRA时感到打开页面明显变慢,可能的原因是JVM内存吃紧,可以考虑进行手动garbagecollection,操作如下

· 进入Administration-SystemInfo,在JavaVMMemoryStatistics这栏可以看到如下图所示信息:

·

· 如果MemoryGraph中显示20%Free,甚至更低,点击右边的Forcegarbagecollection后你会得到更到free的内存,一般来说之后打开页面会变快一些。

· 6JIRA需要改进的地方

· 1.上传附件时可以填一个comment,但是这个comment和普通的comment是没有任何区别的,它并不会和你上传的这个附件进行关联。当你想对这个附件加一些描述的时候,你只能在comment里面指明附件名称,这样才能手工关联附件和comment。

· 2.Redmine的Calendar是一个非常不错的设计,将每一天的工作可以一目了然的区分开来,虽然在JIRA中也可以通过filter来实现,但还是不够直观,redmine的calendar样子见图:

·

· 当然这个calendar结合到JIRA中可以好好改善改善,比如加上MyCalendar只显示自己的活动,特定Group的Calendar,特定Project的Calendar等等。

· 3.关于comments在Redmine中有一个reply的功能,这个功能也是个不错的设计,JIRA中的comments是没有关联的,只能通过自己通过其中的含义来关联,不过一般来说这也足够了。

· 4.在worklog中可以加上一个如TodoList中%complete字段,当问题的%complete达到100%时才算完成,而不是时间达到estimate的时间才算完成,其实JIRA的timetracking计算任务的进度算法真是太没道理了,需要大大的改进。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值