友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

软件工程实践者的思想(PDF格式)-第19章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






大的一些举措。通过这些努力,Borland              快速地补全了 



ALM 作为一个工程体系在理论方面的不足。  



      



    对于 IBM 来说,RUP 和 UML  是优势,所以 IBM 用 



来削弱 Borland 在开发语言的上优势的最佳手段,就是支 



持开源的 Eclipse ,以及用 UML  的标准化来确立其规范制 



定者的地位。然而你会惊异的发现,Borland               一方面在支 



持 UML  的标准化,另一方面还在支持着 Eclipse  的开发并 



协助其快速成为一个完整的、具有商业品质的开发平台。  



    这似乎是极其怪异的战略:帮对手磨剑。  



      



    如果 Borland  只为一个对手磨剑,那他可能是一个傻 



                                          …85


…………………………………………………………Page 90……………………………………………………………

第 7 章  现实中的软件工程  



子。但问题是,Borland      几乎为他所有既已成为的或者终 



将成为对手的人磨剑:Kylix         是 Linux 平台上的产品, 



C++Builder 、C#Builder 、CBX 、Delphi  是 Win32  和 



平台上的产品,JBuilder 则是 SUN 平台上的产品。——一 



切正如 Borland  自己说的那样,他是“(语言、平台和技术) 



中立的软件厂商”。  



    Borland 走在钢丝绳的中间,对他的考验是平衡的艺 



术和技术:如果他倒下,钢丝绳两端之任一,对他都不及 



援手;然而如果他存在,那么他向哪边迈出的一步,都将 



给对方以最大的压力。  



    敌人的敌人就是自己的朋友,聪明的战略家总是能看 



到这一点。然而 Borland 却力图使这个敌我都分不清的战 



场呈现出一种古怪的格局:一方面 Microsoft            是 Borland 



的股东之一,另一方面 Borland 在做 SUN 、IBM  以及 Linux 



平台上的软件提供商。  



      



    与 Borland 和 IBM  通购并来达到目的的方式并不相 



同,Microsoft 有足够的力量全方位出击,因此你看到的 



体系会这是这个样子的:  



            Microsoft 的软件工程 (2004)  



       理论体系                实    现  



 工具   Language VS、DSL、 Framework  



 方法   OOA/D/P  需求方法、模型方法、测试方法。。。  



 过程   MSF      MSF Process Model v。3。1  



    Microsoft 在工具、方法和过程方面都有具体的实现。 



                                        …86


…………………………………………………………Page 91……………………………………………………………

                                    『大道至简』  



而 IBM  在方法和过程层面上大都停留在理论阶段, 



Borland 在这些方面虽有丰富的产品实现,却又相对缺乏 



理论基础。  



    Microsoft 并不仅停留于此。从  Framework 提出 



开始 Microsoft  就试图在开发语言和基础框架上实现大统 



一,希望能达到 UML 在模型语言中的地位。因此出现了 



通用的语言体系:CLR+CTS ,以及其具体的实现:  



CLR+IAsm 。 上的代码要求最终被实现成中间代码, 



可以反汇编到 IAsm ,这意味着任何其它公司在开发语言 



层 面 上 的 优 势 丧 失 殆 尽 , 所 以 开 发 者 们 看 到  C# 、 



JScript 和 VB  的同期实现的“壮举”。  



    而 Mono 的出现,对于 Microsoft  来是绝对的福音。 



Microsoft 把 Framework 中的 C# 、公共语言架构(CLI) 



以及通用类型系统(CTS)等做成 ECMA 标准,最期望看到 



的就是类似 Mono     这样的第三方产品的出现。事实上, 



Mono 做了 Microsoft 从来都想做而不敢做的事。——解决 



了 Microsoft 产品的跨平台问题,进而削弱了 SUN 这样的 



语言的跨平台优势。Microsoft      一方面不想放弃自己的平 



台优势,另一方面又为 SUN          的跨平台优势所制肘。而 



Mono 的出现以及它适度的影响力,正好成为 Microsoft 



平衡这种微妙的、相对优劣形势的棋子。  



    接下来 Microsoft  开始向模型语言发难。领域专用语 



言(Domain…Specific Language ,DSL )的提出绝非偶然, 



那是在硝烟未尽的战场上重新燃起的战火。  



     



                                      …87


…………………………………………………………Page 92……………………………………………………………

第 7 章  现实中的软件工程  



   软件业界如今的局面,不是一些人(例如程序员或者 



评论家们) 争争吵吵的结果,而是大公司们相互制衡的结 



果。Borland  与 IBM ,IBM  与 SUN ,以及 SUN  与 Apple 



都在做着相同的事,   又都有各自的算盘。他们一面打压 



对手的优势,一面又借助对手和同盟的力量来削弱自己的 



劣势或者补充实力。  



   跳出到局外来看,并不是说 Microsoft  是他们的共同 



对手,而只是因为 Microsoft   占在了峰头浪尖,便成了众 



矢之的。所有人面对的并不是 Microsoft     的这个名字,而 



只是这个地位,无论谁成就了这个地位,都将承受相同的 



风险与压力。  



   当然也包括机会。  



     



   大公司们在标准、理论、语言上的争来夺去,未必全 



然出于“软件实现”的考虑。对统一理论、统一工具、统 



一过程的企图,其最终目的是在整个软件工程体系中的全 



面胜出。  



   算盘上的绝大多数人,只是用于计算胜负的一枚算 



子。  



   2。   回到工程的关键点  



   因而,除了软件本质力量的推动之外,商业因素也推 



动着软件工程体系的发展。大公司们的争夺战的最终结 



果,已经开始把软件工程,从原始的“自生演进”状态, 



                                   …88


…………………………………………………………Page 93……………………………………………………………

                                              『大道至简』  



逐渐推进到“它激发展”的状态上了。  



      



     这种它激发展可能会影响到软件工程发展的速度,然 



而在各个工程层面上的关注点并不会发生变化。在前面的 

模型图中,每一条纵向的细线用于定义一个关注点① 。我 



在另一次培训中为这些关注点加上了标注:  



           实现                 团队          经营  



                                                    

     这被我命名为软件工程层状模型(EHM;  Engineering  



Hiberarchy Model) 。与“牛屎图”所代表的“软件工程体 



系层次”不一样的是,EHM               不描述工程元素间的关系, 



甚至在试图割裂这些元素,以使得工程角色定位以及各自 



的视角更加清晰明确。  



                              

                                                        

①   我的确画出的线而不是点,“关注点”只是一个概念。如果你非 



要去发现一个“点”,那么你可以用几何的目光,关注于弧线与直 

线的切点。然而,这样的结果将是你彻底的忽视了“关注点”的 

本质含义。  



                                                 …89


…………………………………………………………Page 94……………………………………………………………

第 7 章  现实中的软件工程  



      



    从这个模型中可以看到,在“程序”与“方法”层面
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!