乔尔测试:简单12个问题衡量开发团队的优劣

乔尔测试:简单12个问题衡量开发团队的优劣_第1张图片

摘抄自 《软件随想录》,作者 Joel Spolsky,他是“Joel on Software”博客的作者。他从1991年到1994年间担任Microsoft Excel团队的项目经理。在2000年,他创立了Fog Creek软件并开启了“Joel on Software”博客。2008年,他和Jeff Atwood一起启动了如今极为成功的Stack Overflow程序员问答网站。他们用Stack Exchange软件产品作为Stack Overflow的引擎。现如今Stack Exchange网络已经包含了91个站点。

Joel 于2000年发布乔尔测试,里面很多内容现在已经逐步变成了行业标准。

每道题都只用回答 是或者否,3分钟可以做完自查,看看自己团队要在哪些方面改善。

1. 你们用源代码管理系统吗?

源代码管理系统的好处:协同工作管理版本,避免因为个人的操作而损失代码。目前常见的有git,svn,cvs。找到一篇分析见下面的链接。


乔尔测试:简单12个问题衡量开发团队的优劣_第2张图片

2. 你们能一键编译吗?

好的团队只用一个脚本就能从头开始完全签出代码,重编译每一行代码,做出各种发行版本、语言和#ifdef条件分支组合的所有可执行文件,生成安装包以及最终的交付媒介。

3. 你们做每日编译吗?

破坏代码是非常常见而有害的问题,因此非常有必要实施每日编译,来尽快找到问题,解决问题。

4. 你们有bug数据库吗?

如果没有一个列出代码中所有已知bug的数据库,那么这个团队交付的代码质量一定不高。你必须要正式地记录下每一个bug,内容至少要包括:

1 重现bug的完整步骤

2 预期应有的行为

3 观察到的错误行为

4 谁负责修复

5 是否已被修复

5. 你们在写新代码前修改以前的bug吗?

1 一个bug 修复的时间拖得越久, 修复难度就越高

2 要开始新功能开发时,不必因为旧bug而导致时间落后

6. 你们的进度表是最新的吗?

为了确保研发和之后的商业行为能够衔接,进度表必须是最新的。

7. 你们有软件规格书吗?

让问题在设计阶段就出现并得到解决,而不是在研发之后。

8. 程序员的工作环境安静吗?

由于工作要求程序员集中注意力才能进入状态,任何打断都可能导致程序员从状态中出来,重新进入状态将导致平局15分钟的时间浪费。

让程序员在安静的,不被打扰的环境工作,是提高效率的方式。

9. 你们使用了能买到的最好的工具吗?

1 因为工具效率低导致程序员要浪费时间在等待上是不明智的

2 酷的工具能够激发程序员的热情来工作,这比其他方式有效多了。

10. 你们有测试人员吗?

如果没有测试人员,要不就会交付bug很多的产品,就不就是浪费程序员的时间和你的金钱:让更贵的程序员来做更便宜的人也能做好的事情。、

11. 你们面试时会要求应聘人员写代码吗?

真枪实弹地写代码,是最有效的方式。

12. 你们做过走廊可用性测试吗?

用于提升产品的可用性:在走廊随便找1个人,让他来用你刚写的程序。找了5个人,那么95%的可用性问题都会暴露出来。

经历了可用性测试后,你的用户界面将会得到极大改善。

本期轻单作者:喵在野

原文地址:https://qdan.me/list/VvtnmsR9VOtI7rC0

你可能感兴趣的:(乔尔测试:简单12个问题衡量开发团队的优劣)