《软件工程实践者的思想(PDF格式)》第15章


于实际的需要,它把测试(和评审) 阶段抽取出来,于是就 
成了 V 模型。
那么,如果需要,为什么不能把瀑布模型变成 W 模 
型,或者 M 模型呢?为什么就一定要跟随那个以迭代为 
基础的 RUP 模型呢?
更进一步想,如果瀑布可以变成 V 、W 和 M ,为什 
么它不能更关注于其中某个具体的环节(例如实现和设计 
环节) ?如果在这些环节上引入 RUP 的思想,哈哈,你看 
看,是不是出现了勋章模型和烟斗模型?
然而你要知道,过程模型是在既有工程中总结出来 
的。也就是说,在某个模型有了名字之前就它已经存在了, 
就已经被一些团队或者公司创生并使用了。
那么,为什么我们不是创生那些新的工程方法和软件 
过程理论的团队或者公司呢?
5。 “刻鹄类鹜”与“画虎类狗”
东汉时期,伏波将军马援在南征交趾期间写过一封著 
名的家书,是教导两个“喜讥议而通轻侠客”的侄儿的, 
希望他们学习敦厚谨慎的龙伯高,不要仿效豪侠仗义的杜 
…65
…………………………………………………………Page 70……………………………………………………………
第 5 章 失败的过程也是过程
季良。
龙伯高时任越骑司马,杜季良时任山都长,都是马援 
所“爱之重之”的人。然而马援告诫两个侄儿说:“效伯 
高不得,犹为谨敕之士,所谓刻鹄不成尚类鹜者也。效季 
良不得,陷为天下轻薄子,所谓画虎不成反类狗者也。”
于是,伯高、季良因马援家书而名留史册,“刻鹄类 
鹜”和“画虎类犬”就此成为典故。这意思便是说,雕刻 
天鹅不成,总还可以像只鸭子(鹜) ;若画虎不成反而像条 
狗,那就事与愿违,贻人笑柄了。
后来的后来,近代作家朱湘就引用了这个典故,写了 
一篇《画虎》并收入《中书集》。《画虎》中说“一班胆小 
如鼠的老前辈便是这样警劝后生:学老杜罢,千万不要学 
李太白。因为老杜学不成,你至少还有个架子;学不成李 
的时候,你简直一无所有。这学的风气一盛,李杜便从此 
不再出现于中国诗坛之上了。所有的只是一些杜的架子, 
或一些李的架子。”
《画虎》这篇文章真的是好,真是建议大家读读。其 
中画师与画匠之论,精妙深彻,痛指骨质。而后论及日本, 
“国家中的画匠”几个字便打发了。
大师的眼光果然独到。
然而朱老先生反驳马援所说的“刻鹄强于画虎”,却 
实在显得牵强。他说“鹜真强似狗吗?试问它们两个当中, 
是谁怕谁?”,又从“聪明”、“警醒”两个角度来说明狗 
…66
…………………………………………………………Page 71……………………………………………………………
『大道至简』
强于鹜。我就觉得奇怪了,这与刻鹄之“刻”、画虎之“画” 
有什么关系呢?
马援说刻成鸭子比画成狗好,其真实的意思是说学龙 
伯高不成,可得“谨敕”;学杜季良不成,则会流于“轻 
薄”。马援比较的是二者在骨子里所得所失的东西,而不 
是架子上的象与不象。
同样,以得失而论,在瀑布模型与 RUP 模型之间, 
学习前者而不成,可思过程的本质;学习后者而不成,可 
得文字的架子。——用 RUP 用不好的人,总会说自己终 
归还有一堆文档模板可以抄,便是这个缘故。
过程理论中,如果懂得了所谓的模型原本都演化自那 
个简单的瀑布,那么文档是按 XP 写还是按 RUP 写,也 
就可以应时、应需,因地置宜,择善而从了。——本质的 
东西若能理解得透,架子还不是随手搬来就可以用的吗?
越是简单的东西,往往越是接近于本质。
RUP 中,真正精髓的东西,既不是那个 R(Rational) , 
那是人家的招牌;也不是那个 U(Unified) ,那是人家的广 
告。而是那个 P(Process) ,那才是实实在在的东西。你要 
明白,如果瀑布模型理论是 Rational 提出的,他们一样会 
把它叫 RUP 。
朱湘说:“画不成的老虎,真像狗;刻不成的鸿鹄, 
真像鹜吗?不然,不然。成功了便是虎同鹄,不成功时便 
都是怪物。”
…67
…………………………………………………………Page 72……………………………………………………………
第 5 章 失败的过程也是过程
马援说:“学龙伯高,即使达不到他的水平,总还能 
成为一个谨慎的人;而学杜季良如果学不到家,便会沦为 
轻薄浪子。”
你到底是选择架子?还是骨子?
6。 工程不是做的,是组织的
我们总是在说“做工程”,好象工程就是面包馒头一 
样,有个模子,拿来照着一堆面按上一按,放在笼屉上蒸 
上一蒸,就可以“做”出来了。
经历过工程的人都知道,我们没有那个模子,而工程 
中的人员也不是那一堆面。
所以我们当然不能“做”工程,而是要“组织”工程。 
项目经理的工作,就是要去组织这个工程中的各个角色, 
使得分工明确,步调一致,共同地完成这个项目。
…68
…………………………………………………………Page 73……………………………………………………………
第6章 从编程到工程
“得其精而忘其粗,在其内而忘其外;见其所见,不 
见其所不见,视其所视,而遗其所不视。”
——《列子·说符》
1。 语言只是工具
我曾经是非常执着的开发人员。我有连续几天几夜做 
Coding 的经历,也曾经为了一个技术问题耗上三、四个 
星期而导致项目一再延迟,还曾经为了一个实现细节与项 
目相关的人员逐一争论。
我也曾经象大多数的开发人员一样热衷于争论语言 
之间孰优孰劣。我在“Delphi 大富翁论坛”上写过一个简 
介,其中个人特长是“长 TPascal 、Delphi 、TASM 系列语 
言,痛恨 C/C++ 。(凡见有价值之 C 代码,先读通,后写 
成 Pascal/Delphi ,最后骂一句:C 写得真笨!) ”。我至今 
保留这段文字,因为那的确是真实的经历。
如今我已经不再专注于语言,正如我在第一章中写到 
的一样:成天讨论这门语言好,或者那门语言坏的人,甚 
至是可悲的。
然而就 在 我写这 段 文字之 前 的一年 , 我还在 写 
…69
…………………………………………………………Page 74……………………………………………………………
第 6 章 从编程到工程
《Delphi 源代码分析》,我还是无尽止地深入语言的细节, 
深入操作系统的细节,以及深入……开发的细节。
就在 2004 年 3 月间,我接受一个朋友的邀请,去北 
京做一个名为“Delphi & Delphi 源码分析”的专题 
培训。我用了近两周的时间,做了 50 页的幻灯,全面讲 
小说推荐
返回首页返回目录