如何使用Worktile企业版打造研发团队消息总线
作为高效研发团队,如何打造自己团队的信息流,或者说消息总线是个很大的挑战。搭建团队内部的信息流,最直接的好处是搭建一套高效而又异步的协作模式,如团队成员去开会或者外出,当他回到电脑前还是能很快知道自己不在这段时间内都发生了什么。
早期的研发团队都会使用IRC搭建团队内部的信息流,但是使用IRC也存在几个局限:
- IRC的配置以及团队同事的学习成本相对比较高;
- 使用IRC的团队一般会在选取另外一个IM作为团队内部的沟通工具,如RTX、Skype等,造成一个团队两个工具,信息不在同一个地方;
- 使用IRC无法使用移动客户端;
- 权限管理,有新成员加入或者离职时需要更改IRC的Key等信息;
所以,IRC再放到今天用来做研发团队的信息流,就显得不太合适。还有另外一个选择是使用传统的额IM,如RTX、Skype、QQ群等,这些工具只解决了团队内部人员的沟通,无法实现自动化机器人,无法把研发中各种日志信息打印出去。
在这篇文章中,我将给大家阐述如何使用Worktile企业版打造研发团队信息流,首先说一下使用Worktile作为团队信息总线的几个优点:
- Web-Based,同时全平台支持,有Mac、Windows、iPhone、Android,团队成员在任何地方都能获取最新的消息;
- 支持公开群组、私有群组和私聊,可以非常方便的进行权限控制,以及处理新成员加入和离开的场景;
- 支持Webhook和自定义机器人,可以非常方便的实现机器人自动化;
- 历史记录永久保存,即便成员离线,只要上线就能看到所有的历史记录;
- 支持大量的服务,目前为止内置支持93个服务,包括主流的代码托管、服务监控以及项目管理工具,如Github、监控宝、Fir.im、BugHD等。
代码托管
Worktile企业版现在内置支持绝大多数主流的代码托管服务,包括:GitHub、BitBucket、Coding、CSDN Code、GitCafe、SVN、Git、GitLab,以GitHub为例,现在支持Commit、Push、Pull Request、Issue、Fork等大部分事件,当你在Github上的仓储发生这些事件时,都会在Worktile的群组中收到通知。
服务监控
研发团队经常需要监控各种服务的状态,在Worktile中内置接入的监控类服务包括监控宝、青云,当你的服务出现报警时,会在Worktile企业版指定的频道中收到实时消息,另外还有App崩溃监控服务BugHD,如果你的App中加入了BugHD的SDK,在App崩溃时Worktile企业版中也会收到消息:
持续集成
著名软件大师Martin Fowler对持续集成是这样定义的:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。
以前研发团队的工作方式一般是把持续集成的结果通过邮件的方式发送到团队成员的邮箱,然而大部分邮件都被当作垃圾邮件处理了。现在你可以把持续集成的结果直接发送到指定的群组,一些主流的持续集成工具都在Worktile中提供支持,如Magnum CI、Codeship、Cirecle CI、Travis CI等。
项目管理
对于研发团队,项目管理工具必不可少,Worktile企业版本身提供了完善的项目管理功能,看板式的管理方式让工作一目了然:
除此之外,Worktile企业版也集成了一些其他的项目管理工具,绑定后,团队成员的操作信息可以实时通知到Worktile,目前已经内置支持:Jira、Trello、Asana、Basecamp、Redmine等十几种常见的团队协作和项目管理工具:
自动化机器人
不能实现自动化机器人的IM工具都不适合作为团队信息总线,Worktile企业版中除了内置接入的各个第三方服务外,还提供了自动化机器人的Webhook,可以自行实现把团队中使用的一些服务或者工具中的信息打印到Worktile企业版:
- Incoming Webhook:向指定的频道发送实时消息,可以自定义名称和头像
- 远程小特:向指定的频道以Worktile企业版机器人小特的身份发送消息
- 自定义机器人:向指定的团队成员发送消息,可以自定义名称和头像
如我们团队内部使用Incoming Webhook自行实现的服务监控机器人,定时在频道中打印出一些关键服务的状态:
总结
通过本篇文章给大家介绍如何使用Worktile企业版打造研发团队消息总线,现在Worktile企业版内置的服务已经超过100个,其中60%的服务都是与研发团队相关的,如果你的团队使用的服务Worktile企业版目前还没有提供,可以使用Incoming Webhook自行实现,或者提交给我们,我们开发团队会尽快提供内置支持。