ThoughtWorks 中国对外发布“技术雷达”前瞻报告

  • 霍泰稳

2010 年 9 月 16 日

话题:敏捷技术管理精益ThoughtWorks架构文化 & 方法

ThoughtWorks 日前在就敏捷中国大会 2010举行的“敏捷十年——软件开发大变革”发布会上,对外发布了其在技术领域的前瞻性报告“技术雷达”,以期对中国企业技术负责人在技术选型时提供有价值的指导和借鉴。InfoQ 编辑也就敏捷中国大会 2010 的相关问题对 ThoughtWorks 中国的总经理郭晓、技术总监徐昊等做了专访。

“技术雷达”主要为技术决策者理解那些新出现的技术以及可能影响市场的趋势,提供建议和参考,定期以白皮书的形式对外发布。目前“技术雷达”主要包括四个领域中的技术策略和趋势:技术、工具、语言和平台。针对其中的每一个领域,ThoughtWorks 均提出一个技术列表,并将其分为采用、试用、评估和保留等四类。其中“采用”意味着在企业中推荐使用这个技术,“试用”表示这个技术值得投资,但应该只用于低风险的项目中,“评估”表示该技术值得考虑和学习如何使用,以及它们的潜力所在,“保留”表示目前还不值得在这些技术上花费精力和资源。在 ThoughtWorks 发布的最新一期的“技术雷达”中,持续部署、下一代测试工具、NoSQL 和作为业务平台的 Facebook 就从过去的“评估”转向“试用”;应急设计、Android 和作为平台的 JVM 从“使用”调整为“采用”;微软公司的 Azure 则被从“保留”调整为“评估”等。

说起发布”技术雷达“的初衷,ThoughtWorks 中国区的技术总监徐昊说,”技术雷达“在 ThoughtWorks 内部已经存在了三年多的时间,ThoughtWorks 开始并没有计划将其变成一个公开的东西。作为公司技术战略的一部分,ThoughtWorks 一直关注这些技术,因为公司的项目非常多,全球有几十上百个上面在进行,需要有某个东西来指导团队的研发方向:

”技术雷达“的想法产生于我们的技术顾问团队,(我也是其中的一员),开始时希望能从全球选择部分人员帮助 CTO 在制定公司决策时提供建议,我们定期开会,讨论哪些技术应该值得尝试,哪些技术应该评估,哪些技术应该被采用等。在开会的过程中,讨论最多的还是如何对某个技术进行归类,我们需要列出该技术所有的优缺点,然后进行评估。因为大家平时都参与许多项目,有丰富的经验,所以评估的结果是比较有参考性的。另外,这个评估结果不是孤立的,而是持续发布的,从我们的网站上你可以看到,从 2010 年初到现在我们已经发布了好几期了,我们会跟踪这些技术的变化,并适时作出调整。

后来我们有的团队将其分享给客户,发现他们对”技术雷达“也很感兴趣,尤其是做技术决策的。这些人在开始新的项目的时候,肯定希望所选用技术的生命周期比较长,选择什么样的技术达到最好的投资回报率,有没有很好的发展潜力等。于是我们后来就将”技术雷达“变成一个开放的资源,并对每个条目做了更详细的解释,为什么值得关注,为什么在这个类别中出现等。实际上,我们也是希望整个行业对新技术有更多的认识和理解。

ThoughtWorks 中国区总经理郭晓补充说,其实行业里面此前已经有类似的东西,比如 Gartner 公司定期发布的技术报告等。不同的是,”技术雷达“是 ThoughtWorks 中做开发本身的人提出的,这些技术本身在我们的项目上也进行过实践,当然我们的目的不是为了实现”技术雷达“,而是将我们的工作经验做一个总结。另外 ThoughtWorks 作为一个服务提供商,并没有很强的技术偏见,我们是从比较客观的角度评判这些平台,没有过多的厂商色彩。

在当天的新闻发布会上,InfoQ 中文站的编辑也就敏捷中国大会 2010 的相关问题和郭晓、徐昊做了沟通。郭晓表示,今年敏捷中国大会的主题是”敏捷十年“,在过去的十年中整个软件开发领域发生了许多变化,这次的大会上,ThoughtWorks 的首席科学家 Martin Fowler 会在他的主题演讲”21 世纪的软件设计“中会对敏捷的历史做一个回顾。另外 ThoughtWorks 还做了一个敏捷简史的可下载文档,希望能从一个普及性的角度,介绍敏捷的演进过程。对于今年大会的重点话题之一”精益开发“,InfoQ 编辑就其在国内外企业中的应用现状请教了徐昊,他回答说:

国外企业目前主要在两个层面上实施精益,第一个层面是把业务部门纳入到软件开发过程中,或者把软件开发放在业务中,放到一个大的环境下。这时精益着眼于整个系统中浪费的减少,而不仅仅是软件过程中的。之前业界对于软件制造这一块关注的不够,没有从宏观的角度看商业上有什么地方存在浪费。总结过去的十年,在商业上最大的浪费可能是我们制作了太多原本不该存在的软件。

另外一个角度是在软件开发过程中的,对这个问题我有自己的一点看法。精益关注的是生产效率,是如何更快更好地作出软件,但是它并不考虑这个事情本身是不是正确的。管理大师德鲁克说过,在管理时需要关注两个问题,一个是事情本身是不是正确的,另外就是是不是在以正确的方法做事情。如果把精益的想法放到软件开发中,其结果就是让我们更关注是不是用正确的方式在做事情,而不是事情本身是否正确。

敏捷一开始强调的就是所做的事情是不是正确。国外实施敏捷已经很成熟了,能够通过一些手段保证所做事情的正确性,然后再引入精益思想,让过程变得更合理,从而保证用正确的方法做正确的事情。国外很多做精益的人从来不判断所做的事情是不是合理,他们更关注是不是浪费达到了最小程度,即使做的是一件错误的事情。所以总结来看,国内的精益实施状况是将其当作实践优化的过程太多了,而没有放在更大的环境下。

有关精益的更多话题,电信领域知名的国际讲师 Mary & Tom Poppendieck 夫妇会在 10 月 14 日、15 日举行的敏捷中国大会 2010上做分享。据大会组委会透露,9 月 30 日前报名参加这次大会还可以享受九折优惠,5 人以上团购(含 5 人)会有更多优惠。现在大会的议程也已基本确定,详情请浏览大会官方网站

敏捷技术管理精益ThoughtWorks架构文化 & 方法