UML建模不再是新名词、新方法。但是愿上帝保佑UML建模在项目中被真正用于设计、交流,而不要太在乎模型的形式和建模的工具,用朴素一点的方法对待建模吧。今天在DevX上看到“UML for Software Developers”系列文章的Part 1,我觉得写得很好。UML不是什么流行音乐,不要羞于在2004年学习UML的任何东西。何况我觉得这篇文章写得很好,真的值得一看。(如果要把UML当成流行,请关注UML2.0吧 ^_^)
链接:“UML for Software Developers Part 1: Building Classes”
另外,这片文章的作者(Mark Goetsch)在序中写的话引起了我的共鸣。
“Whatever language you code in, however you feel about documentation, and whichever process you ascribe to—you will need to model. Whether those models are in a formal charter, reference document, part of a diagram, or on the back of a napkin, you as a software developer will end up using models or modeling yourself.”
斗胆翻译如下:
“无论你使用什么语言来编码,无论你对编写文档有什么样的看法,也无论你采用的什么样的软件开发流程,你都得建模。不管那些模型是被书写到正规格式的章节中、参考文档中、或作为插图的一部分,甚至是画在尿布的背面都不关紧要。你要做的就是使用这些模型,如果没有模型,就自己建模。”
再斗胆罗嗦两句,毕竟是我自己的Blog嘛:
整整3年前,我去一家在国内以财务软件出名的公司面试。面试笔试中的题目居然是当时刚刚出版的《用例分析技术》(Applying Use Case-2nd Editation)一书中用于贯穿全书的案例。我想出题的人一定和我一样对这本书很认同,(毕竟当时UML和用例分析的书并不多)好像我们都很赶时髦。Yeah!我们是最新潮的!We are very cool! 但后来的面试却明显让我们当中的一个人觉得另外一个人非常的老土……
面试我的人有一间很大的办公室,而他就坐大办公室尽头的大桌子后面的大椅子里面,目光始终没有抬起来看我一眼。但我的眼睛却迅速的在他桌子上扫描:几张白纸,上面有人草草画了些像是网络拓扑图的东西,并有反复修改涂画的痕迹,是上一个面试的人留下的。真酷!连“白板面试”都“引进”了!
我们聊了一阵,果然开始说到UML、建模、用例分析这些酷事。(真的很酷,很多事情就是这样,原来喝点“味道好极了”的鸟窝牌速溶咖啡被认为很懂得生活,现在你要是不知道什么是“卡不起咯”、“拿铁”什么的你就是老土。:-P不好意思,又说远了)后来他问了我熟悉和了解哪些用来画UML图的建模工具来。我说Rose和Visio都用过(特别鸣谢蓬勃发展的中国盗版市场),还有就是……不等我说完,他紧接着又问:你平常画UML图最常用的是什么?我答到:用白纸和笔。大沙发里面那个人很不满意,又问了一次同样的问题。我回答到:笔和白纸。对方的失望立刻显现,他连“白板面试”的机会都没有给我就把我打发了。我和我最拿手的UML建模工具太老土了!
我横竖思量,直到今天我依然认为我在用UML建模时使用白纸和笔(白板和笔)的时候最多,也最喜欢。多少次我是用白纸和笔从别人那里获取了智慧,又多少次我用白纸和笔向别人展示自己的大脑中的突然闪现的火花……唯有模型很大需要迭代进行分析时和最终定型生成文档时,才会借助建模工具。有时候我觉得我是这世界上最傻×的人就是这个原因:当我很渴时,偶然走进了一家小资专用咖啡馆,别人问你想喝点什么的时候,我却回答“凉白开”。很明显我最喜欢的饮料(不知道是不是最解渴的饮料)不属于这里。
3年过了,好像情况没有改变。所以,我越来越不喜欢所从事的这个行业了,特别是在中国。也许作为个体还能编点乐子(Coding for fun),但上班那套东西却已经是形式大于内容了。精良的IDE和UML建模工具、某型世界一流数据库、n种中间件、100层架构、250种设计模式、最新最酷的软件工程方法都全上吧!配合若干英文减缩词,手指翻飞在Ctrl+C和Ctrl+V之间,大脑在意识的强奸下疲惫的产生无数“嗯~~啊~~啊~~”之类的词汇和语句,(这些词汇无聊,但能让看的人感觉很爽^_^)并最终书写出1000多页的项目方案书(尽管还不能用来指导下一步的开发工作)。
看文的人,如果你都坚持看到了现在,我为我浪费了您宝贵的时间表示歉意。
-end-
本文地址:http://com.8s8s.com/it/it33852.htm