BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

丰田在使用瀑布式开发?

| 作者 Amr Elssamadisy 关注 0 他的粉丝 ,译者 石永超 关注 0 他的粉丝 发布于 2010年4月8日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

精益软件开发的灵感来自精益制造,而丰田是这一领域的开拓者。现在得知丰田的软件开发部门一直在用传统的瀑布式开发,而他们刚刚才开始采用精益软件开发,这着实让人非常吃惊。Henrik Kniberg在一篇描述他去年精益参观考察的博文中公布了这一点。Henrik和他的小组成员借机访问过丰田汽车公司及他们的软件开发负责人:

我们非常荣幸地会见了Satoshi Ishii,嵌入式软件开发事业部的经理——给汽车用的软件是他们的产品的一种。他的英语有点儿结结巴巴,我没有记录详细的笔记,所以下面有些引述和谈话是意译的。

他首先开口说道:“关于精益软件开发,我想你们知道的比我们多”,这让我们一开始就很意外。之后的谈话变得越来越有意思。

Henrik对丰田的访问充满了意外。当他问及丰田是否考虑过敏捷软件开发方法时:

我们问Ishii-san他是否考虑过敏捷软件开发。他有敏捷方面的知识,同时喜欢敏捷的想法,并表示他们可能会朝那个方向发展。但他们会按丰田的方式去做——以耐心而有条不紊的方式,敏捷本身不是目的。我非常赞同这点。

他说“我们正在尝试学习如何把TPS(=在西方我们称之为精益)应用到软件开发上”。可以想象我们脸上的表情。我们到那里,从我们认为是精益软件开发的圣地学习,此前我们大多数人预期那里会让人眼花缭乱、印象深刻。

丰田团队已经发现的很多东西与敏捷世界中的想法是非常匹配的,而其中有些是相反的:

最大的障碍之一是他们目前的软件架构。他没有给出细节,只是提到要使用精益或敏捷软件开发的话,他们要对现有架构做很大的改动。我相信应该倒过来——精益和敏捷软件开发提供了一种迭代和增量式的方法,可以实现架构的改动。

他强调了在早期进行测试以及修正缺陷的重要性。修正在生产阶段发现的缺陷,比修正在做原型期间发现的缺陷的成本高大约50倍。如果缺陷是在生产阶段后发现的,修正成本大约高1000~10000倍。我见过其他调查给出了类似的数字。他给我展示了一些数据,直观地用柱状图表示。

Israel Gatt,也写下了我们可以从丰田目前困境中学习的三件事情

无论你们实践的是何种敏捷方法——Scrum、精益(Lean)、看板(Kanban)、Crystal等等——你们应该从上面提到的丰田经历中认识到3点:

  • 就像丰田的生产系统,你们的软件方法就是“一辆车”,受上层战略决策的支配。但是,它无法弥补决策失败。
  • 如果你的公司追求不断地增长,带来的质量/技术债务很可能轻易超过增长带来的好处。考虑增长潜力的收益时,要跟技术债务可能导致的损失进行比较。在适当情况下,可以使用《收支平衡表中的技术债务》这篇文章中的方法用金钱计算技术债务。
  • 除了用金钱计算技术债务外,还可以使用《行政套房中的视角》这篇文章中的方法去评估不同的风险。丰田自身的经历表明了灾难性的后果会是什么样子。

考虑到丰田目前在其软件开发中存在的问题,我们不得不想:如果他们用不同方式去开发软件,他们会像今天这样吗?

查看英文原文:Toyota Using Waterfall?

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

有点意思!杀向了精益的圣地。被雷了一下。 by Li Johnny

有点意思!杀向了精益的圣地。被雷了一下。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT