小型技术研发团队,每每开发流程比较简单:整理需求/bug、分配任务到我的、完成指定任务、验收。涉及到的相关管理工具主要是:项目/任务管理系统、源代码管理系统。php
从09年开始,我用过ActiveCollab作项目管理工具;后面12年开始使用禅道。html
AC从0.7之后的版本转向商业,但毫无疑问,这套系统给人一种优雅的感受;而禅道,自己功能很是强大,一看就是一个工具,只是稍微缺乏一点那种文艺范。mysql
其实,平常生活中,我的还在尝试使用不少新兴的任务管理平台,像 Tower、TeamBition等。发现这些软件在交互体验上,都作得很是不错,很是适合作一些简单零碎事务的管理。然而不能进行所谓的自托管,对企业应用来讲,限制较多。git
这两年,不少团队将源代码管理工具从svn迁移到了git上,但我的认为svn在很长一段时间内,仍是符合小型团队的需求的。web
并且,有一些web界面的svn仓库管理工具可用,大大简化了远程登录服务器去维护的流程,我的用得比较顺畅的是usvn。sql
搞技术的,总但愿用的各个系统能集成,统一的帐户管理、权限管理等等。数据库
但svn主要支持的用户鉴权authn与authz的方式是unix风格的配置文件,没法方便的与数据库系统整合。apache
其实“鉴”仍是有办法的,apache有mod_mysql_auth这样的模块,但“权”彷佛没有看到相应比较灵活的实现。服务器
查看了大量的资料后,发现实现方式应该是这样:设置一个中间的代理层,当用户请求过来时,经过代理层进行鉴权后再转到svn仓库。svn
目前看到了人经过go语言实现过一个代理层,以及redmine中经过apache支持perl module的方式以perl语言编写代理层并以apache模块的方式嵌入使用。
参考实现:http://www.cnblogs.com/x3d/p/3829374.html
一句题外话:没想到perl跟apache才是原配,php都算不上。
曾经这样回答:任何一个小团队小企业老是有一个作大的梦想。
工具与方法,是提升团队工做效率、建设团队文化、下降人为因素风险的一种途径。
绝大多数小团队都会死掉,因此小团队每每成就的不是团队,而是我的。
实施基本的项目管理,是每一个团队成员都需学习的一门基础课。