Redmine的最佳实践
您在Redmine项目pipe理stream程中使用了哪些技巧和“标准”?
你有一个标准的维基插入模板,你可以共享或标准的方式来使用bug特性任务和支持问题的项目工作?
你是否让问题和更新通过电子邮件发送到Redmine? 你使用论坛? 你使用SVN存储库吗? 你在eclipse中使用Mylyn来执行任务列表吗?
我试图拖我们的部门。 进入一些基于Web的PM,而不是通过电子邮件发送Word文档的模糊要求,然后Word文档解释如何QA和部署,所有迷失在一堆竞争的更新和项目,以便当我必须解决的东西,没有人可以find任何关于它如何工作的文档。
我是自由职业者Ruby和Redmine Web开发人员,他负责开发一个(我)的业务。 所以我的Redmine被设置为非常轻量级和以客户为中心。 我的Redmine还负责托pipe我的开源项目。
我确实允许通过电子邮件发送新的问题和更新,并且对于电子邮件连接的用户(或者始终在他们的iPhone上的用户)起作用。
我一直在使用仓库视图与Git仓库,它的工作很好。 随着每一个签入,我#nnn引用问题,所以实际问题页面将显示所有提交实施function。
我发现论坛没有得到充分利用。 我想如果有一些电子邮件整合,他们会更有用。
我为一家制造公司开发和维护内部应用程序。 截至发表评论时,我是IT团队中唯一的开发人员/分析师。 在最糟糕的经济衰退期间,我的项目需求爆炸了。 因为这样我的项目和积压问题是相当笨拙的。 我们目前正在进行重组,以扩大队伍。
以下是我如何使用Redmine保持头脑清醒(在可能的范围内),我的用户在海湾,并希望将来可以防止过多的人手。
- 我使用Subversion进行源代码控制,使用TortoiseSVN和恰当的命名的Tortoise-Redmine插件 。 在提交链接问题后,刷新Redmine项目中的存储库,该问题显示关于问题的修订,并通过电子邮件通知更新我的利益相关者。
- 我把项目描述作为一种方法,把项目的目的,范围和生命周期阶段传达给那些没有参与的人。 这样,我的用户就知道我的盘子上有什么,还有我从远处看到的自助餐。
- 我使用特定的angular色名称作为我的权限集,这些权限集指示了多个权限集合 – 再次作为文档的一种手段。 我的angular色包括:项目经理,项目组成员,所有者,主要用户,次要用户,观察员,霸王(对于我的老板们来说,既有趣又不可否认是正确的)。
- 我使用Wiki和文档进行文档化,具体取决于我认为合适的内容。
- 版本对我来说几乎没有任何用处,所以我没有将它用于计划发布,而是使用它将相关问题分组到sprint中。
- 我使用Eric Davis的神话般的Stuff-To-Do插件在我的问题上大量编辑目标版本之前组织/重新组织上述冲刺。 这也让我的利益相关者知道我在做什么,以及我如何优先考虑他们的利益(无论好坏)。
- 为了鼓励用户交互,我将Redmine项目的链接添加到我的应用程序的“帮助”菜单中。 “关于”框还包含一个到Redmine项目的链接。
未来的计划
- 我希望在某些时候完成我的Visual Studio扩展以实现Redmine集成。
- 构build一个代码库,将我的应用程序与其Redmine项目松散地结合在一起:自动化错误提交,从系统托盘订阅利益相关者的警报,由Redmine的REST API驱动的可重复使用的交互式帮助菜单等(也许自动化部分文档与Wiki?)
我们发现有用的以下做法:
1)隐藏“问题”和“支持”跟踪器,并将一切都视为一个错误 :
- 为开发人员,testing人员,pipe理人员节省时间;
- 如果某些活动被称为“额外”或“新function”或其他任何事情,则会安排快速会议进行评估。
2)里程碑和版本我喜欢这个,你可以轻松地追踪每个版本的状态,并且可以随时下载一个较旧的软件包,即testing客户端提交的错误。
3)在“问题”选项卡上的“保存”function:另一个大的节省时间,我有许多日常报告任务保存了不同的查询,这就是我所需要的。
4)版本集成,即在评论中使用“#123”创build一个链接到相应的问题:简单的聪明!
我们在我们的系统上广泛使用Redmine。 我们甚至为销售团队build立了一个“销售”项目,用作CRM。 我们在这个项目中有一堆自定义字段,它取代了之前使用的SugarCRM。
在我们的系统中,我们有服务器和客户端软件的项目。 服务器项目被分解成子模块,根据我如何构build系统和子库,因为Redmine喜欢每个项目的独立回购。
和其他人一样,我们使用提交消息中的#nnn代码来引用门票。 有趣的是,它不一定是同一个项目中的一张票。 因此,可以通过错误问题或支持请求来阻止销售票据。
我们刚开始使用Documents for agenda /会议logging。 我们使用版本在客户端和服务器上分组成版本。
尝试使用Redmine Time Tracker插件来追踪时间,但我总是忘记点击开始或结束。 我们每天会收到关于一段时间内没有被触及的问题的电子邮件(Redmine Whining,我想),并且在过去或者将来都有到期date(高级提醒)。
支持电子邮件直接进入我们的支持项目,如果电子邮件导入更强大(有时如果电子邮件中包含项目:行,它不会正确创build新票),我们会自动生成销售票据。 实际上,我们只需要监控支持服务单,并在适用的情况下将其转移到销售。
我希望能够做的事情:
- 在我们的系统和redmine之间build立关系,以便门票可以与系统中的用户或公司相关联。 另外,我们也可以在相关位置从销售单生成一个新公司。 这只需要我做一些工作。
- 在我们的错误跟踪软件(sentry)和redmine之间build立关系,以便服务器错误生成一个redmine ticket。 再次,可以用当前的技术解决。
- 有一个桌面客户端redmine。 服务器位于我们的局域网内,但能够以更灵活的方式访问除网页以外的数据将是非常好的。 这并不是说在redmine的网页界面上有什么我不能做的东西,但是像Things.app 这样的东西可以工作得更好。
- 将我们的支持文档全部放在redmine中,然后生成到面向公众的服务器上。 这样,我们的支持人员可以维护文档,编辑一个很好的方式,并将更改部署到文档服务器。
我公司与国际软件和硬件开发商合作。 在我join公司之前,电子邮件与MS Word文档一起使用,用软件或硬件来传达我们的问题和错误以请求修复。 这个过程不可能跟踪和维护任何一种过程。 我实施了RedMine作为追踪软件和硬件错误的手段,并且自那时起工作得非常好。 我的情况有一个主要的语言障碍。 值得庆幸的是,RedMine可以用Sipmlified中文显示,反馈显示,这对我的开发人员来说还行。
状态 – 当我发现软件或硬件问题时,状态是“新的” – 当我的软件/硬件开发者看到这个问题并且他们正在处理它时,他们将状态改变为“进行中”。 如果他们希望从0到50,他们可以使用完成百分比。当他们认为他们已经解决了问题时,他们将%完成设置为50。 – 我确定问题是否已修复,并将状态更改为“已解决”,%完成为100%。 这使我可以过滤出<或等于50%的问题,找出仍然存在的问题。
优先级 – 低,正常,高,紧急,即时翻译成中文。
到期日 – 我用这个来告诉我什么时候我的软件开发者最初上传修补程序。 testing一下并解决问题可能需要4-6天的时间。 我喜欢我的Gannt图表,以反映我的软件团队的响应能力,而不需要多长时间才能批准修复。
类别 – 这总是反映我发现问题的软件或硬件的版本。 我使用它来查看哪个版本的软件具有最多的错误,并确保较新版本的软件不会受到回归的影响。
我已经把每个人都包括在RedMine的观察者列表中,以查看所有的错误。 电子邮件以(新),(已解决)或(正在进行)的forms出现,因此我的主pipe以及相关团队的主pipe和首席工程师都可以看到电子邮件,并快速阅读正在进行的工作。 其他大多数人都没有loginRedMine,我通常是唯一一个。 这些电子邮件完美地为所有人提供即时更新,只关心是否进展。
Redmine到目前为止对我们来说太棒了。 我们将它用作多租户票务/敏捷优先级队列,并将其与SVN绑定。 尤其是:
- 通过SVN安装/维护一直是一件轻而易举的事情(通过使用
svn switch https//.../branches/1.3-stable .
命令,随后使用rake migrate
命令将我们从1.1迁移到1.2到1.3到1.4只有偶尔需要的gem装置)。 - 数据库和存储文件的备份是单行脚本执行
- 我们喜欢Time Tracker和Spent Time插件。 我会杀死一个Mac OS X的时间跟踪我们的一些办公室用户的胖客户端,但这是旁边的:)
- 我们不使用论坛,但大量使用活动和路线图。 将问题绑定到特定的版本是天赐之物。
- 我们也有客户/服务器区别,但是使用目标版本来绑定票据以指定哪些地方(并且具有开放式的下一个客户端发布/下一个服务器发布)以便在工作时区分。
- 我们将隐喻用于状态 – 我们首先使用我们的列表(“立即”,“拒绝”,“阻止”,“工作”,“在甲板上”,“列表”,“等待构build”,“发布testing“,”已validation“,”已发布“,”已closures“,”已取消“。
- 然后,在上面的每个组中,我们都有这个sorting的优先级列表:(“立即”,“优先我”,“devise和尺寸我”,“P1”…“P5”,“P-Watch List”)。 这加上上面的所有问题区域都允许简单的工作stream程。
- 对于基本问题列表,我们按“优先级”,“父任务”,然后“更新date”进行sorting – 需要中间的一个,以便在相同分组中有一个子任务时,Redmine很好地缩进。
- 我们使用checkin提交将提交与问题联系起来(例如,
svn ci -m "This fixes #1733 @2.5, holy smoke what a weird foo bug. It is now bacon and unicorns."
),并且让它将问题转移到“等待build立“(曾经是”解决“,但我厌倦了解释说,”解决“并不意味着有人可以期望看到它释放)。
我想我将不得不去调查Redmine-stuff-to-do插件。 +1问题。
正如你所提到的那样,把你的QA发回Word文档 – 我知道这种感觉,就在那里。 我面临的主要问题是:质量保证人员不喜欢在任何错误跟踪器中添加问题,他们在testing期间在旁边的编辑器中logging下来。
我们现在使用Redmine的一个很好的插件 – Usersnap (免责声明:我们build立了自己的工具来解决这个问题。
Usersnap对Web开发人员非常有用 – 将其添加到您的Web项目中,您将获得直接附加到Redmine票据的截图 – 包括有关使用的浏览器,操作系统等的元信息。
我们的QA /客户现在可以直接在Web应用程序中input错误,开发人员可以更容易地将错误报告重现到Redmine中。
我们使用路线图部分作为一个清晰的方式来显示:
- 虫子
- function(这将是您的Word文档的参考,或链接到HTML要求页)
- 对帐(生产值和testing值之间的差异)
- 等等…
这是我们巩固的重点。 剩下的就是与之相关的(例如,“宣布”部分用于定义路线图中使用的主要里程碑/发布date)
除了其他评论,我build议使用“东西要做” – 插件(由埃里克·戴维斯写的我认为:)使用该插件可以拖放sorting问题的顺序跨多个项目。
https://projects.littlestreamsoftware.com/projects/show/redmine-stuff-to-do
我们使用Versions作为定义sprint的一种方式,因此每个版本都是一个带有Roadmap视图的sprint,可以清晰地显示进度。 冲刺中的问题在完成时标记为“准备好审查”,然后在质量保证已经validation时closures。
我们使用版本作为任何超出范围或失去优先权的问题积压。
我们使用Redmine已经有一年多的时间了,它已经在许多方面发展了。 我们使用版本将问题组合在一起以便发布,并按类别按类别对问题进行分组。
每个问题都经历了新的>正在进行的>已解决的工作stream程。 那么testing者会在开心的时候closures这个问题。
我们很想更新我们使用Redmine的方式,似乎有很多很棒的插件,但是我们发现其中有很多已经损坏或者无法安装。
我们全面使用wiki来开发文档。