12月10日下午,由CSDN(微博) &《程序员》主办的第十八期TUP沙龙在北京知春路丽亭华苑酒店举行,本期沙龙的主题是“精益和敏捷软件开发”。除了UML之父Ivar Jacobson带来的精彩演讲,还有另两位来自雅各布森的敏捷专家黄邦伟、陈庆春也发表了热情洋溢的讲说。本次沙龙参会人数共计350人次,现场气氛十分热烈。
精益思想已在诸多行业取得了卓越的成效,敏捷软件开发更是让困境中的软件开发人员看到了曙光。本次大会中,敏捷专家们将精益和敏捷这两种思想的精髓揉合在软件开发中,帮助广大开发人员将广为接受的精益原则转换为适应具体环境的敏捷实践,从而提高组织的软件开发能力。
以下是Ivar Jacobson的演讲实录:
大家下午好。今天的话题是我9月份在伦敦的会议上讲的。我的想法是做任何事情的时候,发现它的本质是非常重要的,不要让它的本质被你所看到的假象所埋葬,这也是精益思想的精髓。
大家知道米开朗基罗吗?米开朗基罗是西方世界最著名的艺术家,他雕刻的大卫雕像是个杰作。当时有很多说法,其中有一个比较知名的说法是,当他站在大理石面前,只有他看到里面隐藏着一个大石,他所要做的事情,把加在大卫身上这些枷锁和不需要的东西解除掉,这样大卫就出来了。米开朗基罗从大理石里看见了大卫,这就是看见了里面本质的东西,把不需要的东西去掉,我们也需要发现它的DNA,这样从这个DNA塑造更多的大卫。
发现事物的本质,而这个本质是可执行的,是能动的,好像一个人,我们一开始是完整的能走、能跳、能爬,只不过会慢慢地长大变得更强壮。这时候要去发现它的“核”。
抓住核心价值 寻求独特发展

如图,我们看到这上面画了一个“核”,它有三个边。一条边是说它是可执行的,这是很重要的,我们不要纸上谈兵。一开始的时候我们也是在开发一个系统,大系统当中的一个小系统,只是它非常小,但是它还是可执行的。
另外一条边指的是蓝图,就是知道它会往什么方向发展,我们有了一个小的东西,我们会知道这个小的东西往什么方向发展,它会不会发展成我们不想要的东西。但是有一些时候我们很难很清楚地知道它会往哪个方面发展,这个时候我们需要一些原则,它有一些基本的原则保证它的发展的方向不会走错。
三条边一个是可执行的、还有一个是有蓝图的,还有一条边是有自己的内涵的原则,我们有了这个核,就可以从这个核开始,去做任何的事情。
如何应用这个核来做事情,举三个实例,一个是跟业务的开发有关,另外是软件开发本身,还有如何去构造一个好的软件开发者方法。
先从业务开始讲,若要去描述一个业务,我们会描述两个东西,一个是目前的组织的状况,现在是怎样的。另外会描述它在不久的将来能够长成什么样子。
现在我们的问题是,在描述这个东西的时候,业务是非常的复杂的。我要讲的例子是伦敦股票交易系统,它最后的结果是延期了12年,最终的费用是原来的132倍。失败有很多种原因,其中一个非常重要的原因,我们不要去试图把所有的东西一下子想清楚,因为太大了,所以要从它的“核”开始。

如图,这个例子中我们要的核是什么?这个例子中可执行的东西就是核心的过程,把它最核心本质价值的东西抽取出来,并且做成一个可执行的,然后从这个可执行的小的东西去想,它的发展的模式可能是分布式,可能是一个产品,或者是应该是多个产品。
我们有了核当中可执行的部分,如果它没有很清楚的蓝图,我们需要去考虑它有哪些核心的原则和价值。举例:宜家、Google都会有自己的核心和原则,Google有一个著名的话“不作恶”这是它发展业务的核心,如果后续的发展跟这个矛盾它就不会去做。
在20年前有多小的公司兴起,在当时还有很多大公司,但是这些小公司有可能把原来的大公司给灭了。大家知道谁创立了Skype吗?比如说Skype的兴起,那么为什么那些传统的公司没有反应呢?因为他们会说我去做这样的事情,会危机到我原来的业务。
再往前看的话,一个人从身无分文到变成一个亿万富翁,大家或许不太相信,但是Internet却改变了这一点。
Skyp创始人把他的公司卖给易贝,卖了43亿美元。易贝收购了Skyp这是非常不成功的例子,Skyp对易贝来说是非常小的一部分,易贝也不知道怎么靠Skyp来赚钱,所以过了几年之后这个哥们又去把Skyp收购了回来,只花了5亿美元。然后过了几年Skyp又发展了,三年以后又卖给了微软(微博),具体的数字是几十个亿或上百亿。
这个例子让我们看到他要抓住自己的核心价值是什么,然后可以寻求他能够有自己比较独特的发展。我们有可执行的小系统,核心价值的原则和价值的东西就能够不断地去发展,包括软件和技术的方面。当发展业务的时候,业务和IT系统是同时来做,是迭代来做的,而把所有的事情先想清楚再去做,这是两个对比。
“Skinny System”式架构
下面我们要讲的话题和大家关系更紧密一些,首先是要从比较小的开始,抓住它的核心的东西不断地长大。现在的软件开发越来越复杂,代码、模型等等的方面,如果要用传统的敏捷方式,有可能要去扩展会比较的困难。我们做软件产品的时候,关键的也要有个小的软件系统,比较核心的系统,从这个上面再去加更多的应用。从骨架、框架系统,比较小的系统开始,让你认识到你的业务是什么,然后在这个骨架上加更多的应用和能力。

如图,这是几年前去新西兰做演讲的时候做的,新西兰有很多的绵羊,所以用这个例子会使新西兰比较好理解。我们要从骨架系统开始,这个骨架虽然很小,但是它是可执行的。 Skinny System是一种羊,它是会动的。
推荐阅读
2月18日,CSDN(微博)在北京举行了TUP第19期活动:大数据系列研讨会——从12306谈起。本次研讨会汇集了来自百度、豆瓣(微博)网、搜狗、淘宝、土豆、凡客诚品(微博)、新浪微博、IBM等公司的众多业内技术高管,就大数据>>>详细阅读
本文标题:UML之父Ivar Jacobson:精益思想的复兴
地址:http://www.lgo100.com/a/kandian/20120305/36942.html

网友点评
精彩导读
科技快报
品牌展示