转自:http://www.cnblogs.com/HanN1984/archive/2007/08/02/840575.html
一、Ticket系统简介
Ticket系统是Trac中关于项目管理的一个重要单元,它是一个简单有效的版本差异和Bug跟踪系统。
在项目开发过程中出现的任何问题,都可以用一个Ticket来标识,例如Bug,项目计划,功能改进,项目建议,Todo等等,都可以写成一个Ticket,开发人员通过访问查看Ticket系统,可以及时的了解到项目进度,有待解决的地方等等
每个Ticket都可以被修改和说明(Description属性),并说明这个Ticket是Bug还是项目建议还是其他什么(Type属性),指派由哪个人对这个Ticket负责(Assigned to/Owner属性),设定Ticket的优先级(Priority属性),设定Ticket的最终完成时间(Milestone属性),设定这个Ticket属于哪个模块(Component属性)。
二、Ticket创建,及其各个属性详解
点击“New Ticket”,进入“New Ticket”页面,在这里我们可以生成一个新的Ticket,生成新的Ticket时,我们需要填写Ticket必须的一些属性:
1.short summary:这个属性是Ticket的标识,可以理解为Ticket的名称,可以根据情况随意填写;
2.Type:这个属性表明你所要创建的Ticket是什么类型,Trac系统中默认包含三种Type,分别是defect,enhancement和task,我们也可以通过WebAdmin或者TracAdmin来增减,或修改Type,以符合我们的需求;
3.Full Description:这是对所要创建的Ticket的描述,用户以后可以根据一个Ticket的Type和Description属性,来判断这个Ticket的目的;
4.Priority:设定所要创建的Ticket的优先级,Trac系统中默认五种优先级类别,分别为blocker,critical,major,minor和trivial,我们也可以通过WebAdmin或者TracAdmin来增减,或修改优先级类别,以符合我们的需求;
5.Milestone:直译过来的意思是里程碑,我们可以理解为一个项目的不同阶段,一个Milestone包含一个名称和时间,其中时间即为项目中这个阶段的预计完结时间,我们通过设定这个属性,来表明所要创建的Ticket属于哪个Milestone,属于项目的哪个阶段,该在哪个时间之前完成,Trac系统中默认有四个Milestone,我们可以通过WebAdmin或者TracAdmin来增减修改它,以符合我们的要求;
6.Component:这个属性可以理解为一个项目的层或者模块,通过这个属性,可以设定我们所要创建的Ticket属于项目的哪个模块,或者说属于哪个层级,这样便于分类,便于划分任务,Trac系统默认有两个Component,我们可以通过WebAdmin或者TracAdmin来增减修改它,以符合我们的要求;
7.Version:用来说明当前所要创建的Ticket该归结于项目的哪个版本,这个主要在项目的多个版本同时开发时,例如项目1.0版本正在维护,同时也在进行项目2.0版本的研发。Trac系统默认两个Version,我们可以通过WebAdmin或者TracAdmin来增减修改它,以符合我们的要求;
8.Keywords:用来标记所要创建的Ticket,在Ticket搜索,或者生成Ticket报告时会有用;
9.Assign to:说明这个Ticket归谁负责;
10.Cc:这是一个使用逗号隔开的字符串列表,表明当这个Ticket被修改时所要Email通知的地址,格式如shengf@star-net.cn,yaoq@star-net.cn,cjl@star-net.cn,hann@star-net.cn
三、查看Ticket
1.点击“View Tickets”,进入Ticket查看页面,在这个页面中,会罗列出8个Report,如下所示:
以下!!!!中的内容为注释
(1) Active Tickets !!列出所有Active的Ticket!!
(2) Active Tickets by Version !!根据Version列出所有Active的Ticket!!
(3) Active Tickets by Milestone !!根据Milestone列出所有Active的Ticket!!
(4) Assigned, Active Tickets by Owner !!根据Owner列出所有已被assign的Ticket!!
(5) Assigned, Active Tickets by Owner (Full Description) !!同上,只是多出Description!!
(6) All Tickets By Milestone (Including closed) !!根据Milestone列出所有的Ticket,包括已经Close的Ticket!!
(7) My Tickets !!我的Ticket!!
(8) Active Tickets, Mine first !!列出所有Active的Ticket,我的放在最前面!!
2.可以点击页面下部的“Create new Report”按钮,利用Sql语句,生成一个新的Report
Trac底层使用PostgreSQL数据库来实现的数据保存,所以Report的生成应该是利用SQL语句去查询数据库来实现的,由于本次调研主要针对Ticket系统的流程和功能,所以暂时没有去了解Report的生成方式,以后有待完善。
3.点击“Active Tickets”,可以看到一个Ticket列表,点击任意一个,可以查看详细信息
(1)在点开后的页面,我们可以看到这个Ticket的详细信息,例如这个Ticket由谁提出,由谁负责,优先级,最后期限,所属模块,所属版本,关键字,Email通知列表等等;
(2)在页面下面,我们可以对这个Ticket进行修改,可以修改Summary,Tpye,Description,Reporter,Priority,Milestone,Component,Version,Keywords,Cc字段,修改时,需要添加一个Comment,用于描述本次修改的内容;
(3)我们也可以在页面的最底部,选择我们所要进行操作的类型,具体可以进行那些操作,则跟Ticket当前状态有关,如果一个Ticket为New状态时,可以进行如下四种操作:
(i) leave as new,离开当前页面,让这个Ticket保持New的状态
(ii) accept ticket, 接受这个Ticket,一旦接受,这个Ticket的状态则由New变为Assigned
(iii) resolve as ..., 关闭当前Ticket,也就是表示这个Ticket所代表的问题已被解决,被解决的级别分为五种:fixed,invalid,wontfix,duplicate,worksforme,一旦关闭这个Ticket,则这个Ticket的状态会变为Closed
(iiii) reassign to ...,重新给这个Ticket分配负责人,一旦重新分配,则Ticket状态变为New
注:
I、从Ticket生成开始,对Ticket进行的任何操作,都会以Email形式通知Ticket中Cc属性所指定Email列表中的所有Email,其Email格式虽然简洁,但可以通过Email实时的了解的Ticket的动向,这点值得注意;
II、后面我附了一个Ticket的流程图,用状态机描述的,可以看一看。