1、Redmine使用说明1 .使用目的使用redmine的目的是为了便于工作的计划、跟踪、总结。2 .Redmine的两个核心概念2.1项目(project)所有工作都是某个项目的工作。项目划分多个版本,相当于大里程碑。每个版本都有一些工作要完成,这个版本就是这些工作的目标版本。我们的工作为分三类:1)产品研发(需求分析、设计、实现、单元测试、集成测试、编写文档、沟通、项目管理)2)技术研究3)其它日常工作(售前、售后、培训、会议、日常事务)对每个项目提供:1)目标管理:版本、路线图2)进度管理:甘特图、日历。主要是甘特图,计划到昨天完成的任务,若是没有完成,则在进度条上是红色;截止到今天应该完
2、成还未完成的任务在列表中呈红色。使得对需要完成的任务一目了然。3)资源管理:文档和文件。4)讨论交流:新闻、论坛5)协同写作工具:wiki2.2问题/任务(issue)所有工作都是围绕问题展开。工作流程,体现在问题的状态变化上。合理设置跟踪标签,对问题进行划分。及时更新问题进度。3 .Redmine设置3.1角色设置名称职能权限说明系统管理员进行系统管理;管理系统中的用户、角色、配置、项目可添加项目项目主管负责项目的研发工作;项目所有资源的管理、项目任务的分配、跟踪、状态变更不能添加项目;项目上的其它权限都有开发人员接受研发任务,进行研发工作不能管理项目的信息,包括版本;权限基本按系统默认的开
3、发人员角色即可测试人员接受测试任务,进行测试工作权限跟开发人员一样管理人员查看跟踪工作进展情况,如部门经理、高级管理人员对所有内容有查看权限;可跟踪问题,可查看耗时情况;可参与讨论,比如对某个问题添加说明相关人员了解项目的版本功能、研发进度对部分内容,如路线图、甘特图、发布的文件等有查看权限所有上面的角色都可以新建问题,新建问题对所有人员敞开,项目主管需要及时整理。3.2跟踪标签设置名称说明外部缺陷已发布版本中发现的缺陷,必须填写影响版本内部缺陷发布之前,在测试过程中发现的缺陷,不必填写影响版本新特性希望产品新增加的功能或非功能性的需求。研发改进属于新特性研发任务跟项目研发有关,但又不能明确为
4、产品的缺陷或特性的任务,比如:数据库设计技术研究技术研究性的工作任务项目支持跟外面项目有关的售前、售后支持任务测试任务测试工作任务日常事务不属于以上的任务,比如参加培训、会议等。本标签允许在新建时选择已关闭状态,方便录入日常工作内容对产品研发的项目,只有外部缺陷和新特性设置为默认显示在路线图中。3.3活动设置名称说明需求分析设计开发单元测试集成测试编写文档技术研究培训学习沟通交流项目管理日常事务跟踪标签是对工作任务的划分,活动是对具体工作内容的划分。3.3自定义属性设置属性名称关联类型说明受影响版本问题-外部缺陷必填,可作为过滤条件,允许多选。一个缺陷可能从1 .5 .0到2 .1 .0都存在
5、测试版本问题-内部缺陷必填,可作为过滤条件。格式为列表,可取值有:Alpha1、Alpha2、Alpha3、Alpha4、Beta1、Beta2Beta3、Beta4所属部门项目格式为列表,可取值为各个部门所属部门人员必填,格式为列表,可取值为各个部门3.4配置邮件通知编辑config/configuration.yml文件,内容如下:email_delivery:delivery_method: :smtpsmtp_settings:address: “smtp.qiye.1 6 3 .com“port: 2 5authentication: :logindomain: user_name:
6、 用户名password: 相应密码4 .为每个部门设置4.1非研发项目非研发类的固定项目,为方便管理工作任务而设。1)日常工作为每年一个版本,版本号为年份,比如:2 0 1 6年。所有日常事务类的工作任务都可以挂在这个版本下。2)技术研究为每项大的技术研究工作定一个版本,版本号为研究内容,比如:虚拟现实研究。可以不断细化研究任务,添加到该版本下。4.2研发项目为正在研发的每个产品建立一个项目。为每个客户定制应用系统的开发项目建立一个项目。5 .日常工作5.1建立未计划版本为每个产品建立一个名为“未计划”版本号,并将其设置为默认版本号。所有人员在为该产品添加新问题时,默认都是添加到“未计划”版
7、本上。5.2计划研发某个版本时即,准备研发产品的某个新版本时,或准备开始研究某项关键技术时,或将要开始新的一年时,项目主管:1 )在项目配置中,新建一个版本,指定该版本的计划发布日期;2 )在未计划的问题中,选取问题将其目标版本设置为计划版本;3 )细化工作任务:建立子任务、关联任务,添加新问题(任务);4 )进行任务指派,并计划各项任务的开始及完成时间;5 )任务太多时,可以先行指派,让大家各自填写计划开始及完成时间,再统一调配;6 )如果两个任务安排有冲突,比如资源冲突,只能先做A,再做B;或工作内容有先后,比如必须先设计,再实现。这可以通过设置任务关联(阻挡/被阻挡/跟随于等),在甘特图
8、中直观显示它们之间的关系。5.3项目主管日常跟踪1 )查看当天或昨天的项目活动,了解大家的工作;2 )查看计划完成日期在今天及之前的未完成任务的进度情况;3 )及时调整各项任务的状态;4 )对任务进行维护,比如:a)添加新的任务b)进行任务拆分c)建立关联关系d)添加有关说明e)进行重新指派f)调整计划日期、预期时间、等等;5 )可批量更改问题的属性;5.4查看甘特图1 )从甘特图中可以直观地看出任务进展的快慢情况。比如,时间过半但完成进度还没有过半的任务就会以红色显示,完成进度超过时间进度的,会以绿色显示。2 )项目中,问题、甘特图和日历这三个tab页,使用的是同一个过滤器。所以当查询出一批
9、问题列表后,在这三个视图之间切换,看到的是同一批问题。3 )所以,要保存甘特图中的过滤条件,可以在查询问题时保存,然后在甘特图视图中使用。4 )文字变红:没有达到今天结束时的进度,这是对今天要完成工作的警示;5 )进度条变红:没有达到昨天结束时的进度,这是对昨天未完成工作的警示;5.5查看路线图从路线图上可以看到:1 )某版本的计划发布日期;2 )当前研发是否延期;3 )该版本的描述(如:本版本将大幅提升性能、本版本主要提高易用性、本版本主要特色是增加了XXX);4 )该版本的研发进度,完成百分比;5 )该已关闭问题(已完成功能)的比例,百分比;6 )该版本新添加的特性、修复的历史版本的缺陷(
10、外部缺陷)。为使产品项目的路线图显示得清晰易看,需要:1 )除新特性和外部缺陷,其它跟踪标签设置为默认不显示在路线图中;2 )及时关闭已经发布的版本;3 )不添加为测试需要设置的alpha、beta等版本5.5开发/测试人员日常操作1 )查看指派给我的问题;2 )选择问题,开展工作;3 )更新问题的状态、进度;4 )更改问题的其它属性,如计划的开始完成日期有变化;5 )为该问题登记工时。5.6测试人员bug提交1 )填写内部缺陷2 )指定目标版本为要发布的版本3 )指定测试版本为发现缺陷的版本4 )可以查询内部缺陷5.7填写工作日志/登记工时1 )在进行工作的问题中登记工时;2 )在注释中简要
11、说明当天工作内容;3 )输入问题,提供自动搜索功能,方便输入;4 )日常事务的日志a)在日常工作的项目中,为自己建立一项任务,指派给自己,版本号选择当年;b)下班时为任务登记工时;c)如果是下班前添加已经完成的任务,状态可以直接选择已关闭;添加任务后,接着点击页面上的登记工时按钮,为其登记工时。5 )若是一项任务跨多个工作日,在补登工时的时候,要按不同日期分别补登。这样,才能在工作日志中有良好的显示。5.8查看工作日志查工作日志没有权限控制。要查就能查所有的。5 .8 .1自己的工作日志把工作日志放在我的工作台中,一目了然。也可以点击耗时,进入查询统计页面。5 .8 .2项目组成员的工作日志从
12、项目中进入耗时详情查询,或在过滤器中选择项目。5 .8 .3部门成员的工作日志进入耗时查询,注意要选择所有项目,增加过滤条件,用户所属部门是该部门。5.9统计各类工作耗时5 .9 .1基于个人的统计:1 )我在各个项目上的耗时:在耗时报表中按项目统计。2 )我在各类工作上的耗时:在耗时报表中按活动统计。5 .9 .2基于项目的统计1 )各项目成员投入的工作量:2 )各类任务上投入的工作量:3 )各类工作上投入的工作量:4 )其它分类统计5 .9 .3基于部门的统计基于部门比较难以统计。若是基于项目来统计,则项目中会有其他部门的人参与,比如研发项目中的测试工作;若是基于人来统计,人可能会调整部门
13、。可以根据情况使用项目所属部门或用户所属部门作为过滤条件进行统计查询。跟基于项目的统计类似,可以统计多种数据。5.10跟踪问题将自己关心的问题设置为跟踪,可方便跟踪其变化情况。6 .有关问题6.1关于父任务的进度比1 )一旦为某任务添加了子任务,则该任务的完成度就不能修改,只能由子任务的完成情况自动计算。2 )自动计算时,如果所有子任务都没有填写估计用时,则认为所有子任务的估计用时相等,来计算总体进度。比如一共两个子任务,有一个已经完成5 0 %,则父任务会显示完成2 5 %;如果另一个完成1 0 0 %,则父任务会显示完成7 5 %。3 )如果有子任务填写了估计用时,则没有填写估计用时的子任
14、务采用已填写的估计用时的平均值作为估计用时。用完成的估计用时比上所有估计用时,作为总任务的完成进度。比如父任务A有三个子任务B、C、D。B、C估计分别用时1 0小时和2 0小时,D没有填写估计用时,则认为D的估计用时为(1 0 +2 0 )/2 =1 5小时。如果B、C、D的当前进度分别为5 0 %、1 0 0 %、0 %,则A的进度为(1 0 *5 0 %+2 0 *1 0 0 %)/(1 0 +2 0 +1 5 )=5 6 %。6.2建立子任务与关联任务1 )子任务:一个任务工作理比较大,需要进行细分时,就建立子任务,比如分成多个子任务,指派给不同的人员去完成。有时候会把一个大任务分成几个
15、小任务,而不是子任务,然后把大任务关闭,只管理那些小任务。到底是分成小任务,还是子任务,需要根据实际情况需要来判断。一般来说,只想跟踪大任务的状态,而不想关注小任务时,就设置为子任务,这样,只需要跟踪大任务就可以了。而如果任务太大,或分解后的任务相互关系不大,都可以独立计划安排,就分解成小任务,而不是子任务。比如概要设计为了三块工作内容,就可以分解为子任务,可以只跟踪概要设计这个大任务的进度情况;而支持容错这个特性,可能分三步来逐步实现,这三步都有可能计划到三个版本中来实现,无法跟踪整个大任务,就将其分解成三个小任务。2 )关联任务:与其有各种关系的任务,关系包括列表中列出的那些。关联到:就是
16、有关系重复:如果问题B重复于A,那么关闭A将自动关闭B。阻挡:如果问题B阻挡A,A无法关闭,除非B已经关闭。优先于:如果A优先于B,那么将B的起始日期自动设置为A的截至日期+延迟天数+1。跟随于:问题B跟随于A(例如A截至于2 1 /0 4,B开始于2 2 /0 4),这时如果将A的截至日期延迟2天,那么B的起始和截至日期将自动推迟2天。6.3关于项目的文档和文件1 )文件,存放各发布版本的对外发布的文件,包括软件和文档。2 )文档,存放跟项目相关的项目管理文档、开发文档(需求文档、设计文档、用户文档)、技术资料等。6.4通过邮件添加问题1 )收取邮件有多种方法收取邮件,简单的方法是定时执行一条命令,从特定邮箱收取邮件:rake redmine:email:receive_imap RAILS_ENV=“production“ host=imap.1 2 6 .comusername=xxxxxx1 2 6 .com password=xxxxxxxx allow_override=all2 )添加问题向特定邮箱发一封邮件,即可为某项目添加一个新问题,便于及时收集问题。