加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

“软件工程和电影很像,在生产过程中我们始终关注它的成本,同时对收益做预估”——《彭博商业周刊》

(2012-09-07 15:26:55)
标签:

杂谈

“软件工程和电影很像,在生产过程中我们始终关注它的成本,同时对收益做预估”

作为IBM软件集团全球副总裁、首席软件经济学家,在IT界磨砺多年的Walker Royce用他的“软件经济学”,帮极客们认清软件业现状,解决创新难题

大家都把软件开发看作纯粹的技术工作,你却说这是属于经济学的事情,为什么?

开发一个由多个元素构成的软件的时候.更像是导演一部电影。因为在软件开发过程中,我们并没有太多实际的材料或者物理的材料,而是一项大型的、复杂的知识产权的创造。所以它更像是电影、评价电影的方式就是观众会不会欣赏它,而软件开发的评价方式就是用户会不会享受或者欣赏这个软件。

如何用经济学眼光看待软件开发?

软件工程和电影很像,在电影的生产过程中我们始终关注它的成本,同时对收益做预估,但这当中有很多不确定性。尽管有很好的演员、很好的剧本和拍摄的地点,但是依然不知道观众是否会喜欢这部最终产品。软件也是一样,在生产过程中电存在着很多不确定性,所以我们需要整合的系统来满足客户的需求。软件开发比电影更为严格,在电影中一个演员可以说错话,但软件不可以。比如汽车软件的设计是撞到一个石头就必须停止,如果软件程序出错,就会给人造成伤害。要实现零错误的产品,成本和复杂性都会增加,除了关注成本,我们还需要刘复杂性管理和理解,所以软件计量经济学的另外一个方面是,现在的软件开发过程中,计算我们距离“零错误”还有多远的距离。

怎样才能提高软件开发的同报?

当一个软件开发的产品经理在展示他的计划或执行计划的时候,他总是会说让我们先做最容易的吧,开发很容易获得早期进展。但是从经济学角度,这并不能带来很多好处,人们总是愿意先做容易的事情,所以要改变人们天生的习惯实际上非常困难。在我们获取最大投资回报的过程中,我们应该把软件的开发当作一项研究.而不是当作在工厂里做的生产活动。换句话说,要获得最大的投资回报,在做单元测试或者单个程序测试之前就应该做集成测试,在传统的软件开发过程中,往往每个人只负责其中的一块,把其中一块程序进行测试,测试之后再把所有人做的东西合在一起做整体的测试。这种方法又和通常的传统的软件开发方式完全相反。

你怎样看待目前中国软件行业的现状?

中国很多软件公司规模较小,这样必然存在生产效率不高的问题。当然,低效率实际上是所有国家都面临的问题。要解决这问题,最重要的是建立起强有力的网络社区,让所有的从业人员在网络社区中能够分享他们的知识、见解,甚至是他们曾经听过的一些培训课程。实际上,软件开发是集体运动,不是个人行为。现在很多生产效率的度量都是以个人为单位,但是作为软件开发.最终要考察整个团队的产品和成果,包括发布周期、上市周期、上市时间等。其次是注意沟通。团队工作过程中最大的问题就是团队沟通不够。不仅仅是团队中内部的沟通,还包括团队和它的用户以及与之相关的利益相关方的沟通。在这个过程中我们需要就产品、质量以及团队的工作进行诚实的沟通。

中国多数软件公司帮国际大公司做外包业务,创新动力不足,对此你有什么建议?

对于中国来说,可能需要在架构方而或者是项目管理方面培养一些领袖的人物或者公司,他们应当懂得创新,这样才能以更清晰的话语和欧美公司沟通,使得信息可以交互地流动。对于一些中同大公司来说,他们做了设计之后可能其中存在很多的变量或者是不确定性,要成为创新性的公司,应该是有更加严格的度量标准,同时能够加强对于软件的可预测性。

从技术人员到经济学家,这个转变过程中你个人最大的改变是什么?

其实我自己仍是技术人才,三年前我从事技术管理,管理各地的一些项目,我在和其他公司打交道时也是作为技术顾问来出现:我现在是IBM的首席软件经济学家,我更喜欢现在这个头衔,在见到其他公司的CIO、CFO或者CEO的时候,他们知道我可以帮助他们怎么把技术的成果转化为业务的成果,所以现在我把软件开发更多看成是属于经济学科的事情,而不是属于工程学科的事情。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有