什么情况下不需要或不适合用UML ?
对于一个特定的软件开发机构或团队,在下列情况下建议不采用 UML:
1)传统的做法已完全适用,对OOAD的要求也不高,项目非常成功,无任何改进的必要;
2)开发的系统比较简单,直接用源码配上少量的文字就能解决问题,软件开发文档也无需添加图形来辅助说明;
3)开发人员更习惯于直接阅读源码,用源码交流,这样做不影响工作效率和质量;
4)开发的系统本身不属于OO方法、UML适用范围。
什么情况下应该用UML ?
对于一个特定的软件开发机构或团队,在下列情况下建议采用 UML:
1)OO方法是项目决定采用的方法论,是整个项目或产品成功的关键;
2)开发人员感觉用源码说明不了真正的问题,希望利用可视化建模语言简化文档,提高交流的效率,准确抓住问题的本质;
3)系统的规模和设计都比较复杂,需要用图形抽象地表达复杂的概念,增强设计的灵活性、可读性和可理解性,以便暴露深层次的设计问题,降低开发风险;
4)组织希望记录已成功项目、产品的公共设计方案,在开发新项目时可以参考、重用过去的设计,以节省投入,提高开发效率和整体成功率。
5)有必要采用一套通用的图形语言和符号体系描述组织的业务流程和软件需求,促进业务人员、软件开发人员之间一致、高效的交流。
促进UML普及和应用对于加强我国软件业的实力有什么重要意义?
面向对象(OO)方法自上世纪80年代以来已经成为软件开发的主流技术,标准OO建模语言UML的问世说明OO技术的发展达到了一个新的高峰。推广普及UML的应用可以使我国软件开发人员、软件企业和IT客户乃至整个行业、产业都从中获益:
1)个人
UML相关知识体系蕴含了非常丰富的当代软件工程先进知识。软件开发人员通过学习和掌握UML概念、表示法及相关的软件过程、软件工程技术,能够加深对OOAD原则、方法的理解,提高抽象思维能力,从而站在更高的层次上分析问题、解决问题,这是一条快速提高个人软件设计能力的有效途径。
2)企业
对软件企业内部,用好UML,不但能直接提升企业的软件设计开发能力,而且由于UML能形象直观地记录软件设计的核心思想,可以使软件开发管理透明化,促进企业知识资产的保护和增值,促进软件重用和整体效益的大幅提升。对外,由于UML是通行的软件行业国际标准,企业在业务交往中有效运用UML,无论对于开拓国内外产品市场还是保障工程承接、项目外包等业务的顺利开展都大有裨益。
3)行业
积极采用国际通行的软件描述和设计语言UML,一方面能增加信息透明度,显著降低软件企业之间、客户与开发商之间的沟通成本,减少项目失败的风险,另一方面能促进行业市场的规范化和标准化,增进国际技术交流,整体提高我国软件业的技术水平和参与国际市场竞争的能力。据悉,与UML有关的国家级标准目前正在考虑制定过程当中。
UML的统一性表现在哪些方面?
UML的统一性至少表现在以下几个方面:
1)随着对象技术的蓬勃发展,到上世纪90年代初OO方法已经多达50余种,它们之间既有很多共通之处也存在许多没有必要的细节差异,这妨碍了技术进步,不利于产业的发展。UML统一了多种互补的、最具代表性、最受业界欢迎的主流OO方法,这既是历史的必然,也OO方法成熟的一个重要标志。UML及与其配套的软件开发统一过程(RUP)在实现“合并同类项”的基础上又向前迈出了一大步,不愧为当代OO建模方法的集大成者。
2)UML适用于各个行业的信息化工程,包括电信、银行、保险、税务、办公自动化、电力、电子、国防、航天航空、制造、工业自动化、医疗卫生、交通、商业、电子商务等诸多领域的业务建模和软件分析设计,尤其适合对大中型、复杂、分布式应用系统或软件产品建模,在这些广泛的领域中都可以统一使用这一套标准的建模语言。
3)作为一种独立于具体实现的、抽象的表述方式,UML广泛地适用于各种现代程序设计语言、数据库和开发平台。
4)有了UML标准,面向各种不同的软件开发方法和过程(如重载/轻载,瀑布式/迭代递增式),在软件开发生命周期各个阶段的工作(如业务建模、需求分析、系统设计、实现、测试)中,都可以采用一套统一的概念和表示法,避免了语言转换的麻烦。
5)UML明确定义了一套公共的内部概念,建立了统一的关于建模语言的元模型,反映了在软件和信息建模技术领域的最新成果。
UML是如何诞生的?
识时务者为俊杰。为了突破上世纪 90年代初OO方法论混战的局面,1994年杰出的Rational公司OO大师Grady
Booch邀请通用电气公司著名OO大师James Rumbaugh博士加盟Rational,启动了OO方法的统一历程。他们于1995年发表了“统一方法0.8 ”
。与此同时,另一位超一流 OO大师、瑞典爱立信公司的Ivar Jacobson博士也在该年加入了二人的行列。
1996年,3人正式把他们的统一成果命名为“统一建模语言”,UML于此诞生。同时,他们还做出了一个非常重要的决定——把UML提交到非赢利性的OMG进行标准化,让全世界的软件开发人员都可以自由地分享这一软件史上的重大成果。于是,在全球软件界具有广泛影响力的国际对象管理组织OMG从此开展了一系列OO建模语言的标准化工作。1997年11月,UML
1.1经OMG各成员投票被正式采纳为行业标准。
UML是一家之言或少数派的观点吗?
否,
UML是全球软件工业界和学术界的领导者协同努力的成果。自从进入OMG程序后,UML就不再由Rational一家公司所有或由少数人控制,而成为凝结了百家之长的公共知识结晶。具有丰富企业信息系统和信息工程经验的OO大师、Martin/Odell方法的领军人物James
Odell为此曾表明放弃自己的方法,并直接参与领导了UML 1.x系列标准的制订工作。
另一位OO大师Coad/Yourdon方法的创始人之一Peter
Coad,虽然没有直接参与UML制订,但却独具慧眼创办了TogetherSoft公司(已被Borland收购),开发了著名的UML集成开发环境Together
ControlCenter,成为Rational
Rose的有力竞争者。事实说明,UML的确促进了各种OO方法和流派的大融合,在OO建模语言领域具有不可替代的地位。
UML的形成和演化过程是国际软件工程界一次盛况空前、史无先例的大团结和大合作,可谓群英荟萃,星光灿烂。对UML标准作出重要贡献的大师级人物,除了以上介绍的,大家比较熟悉的还有Cris
Cobryn, Ward Cunningham, Bruce Douglas, Martin Fowler, Eric Gamma和Richard Helm,
Ralph Johnson, John Vlissides四人组, David Harel(状态图的发明人),Robert Martin, Bertrand
Meyer, Bran Selic, Rebecca Wirfs-Brock, Edward
Yourdon等等,世界级的专家贡献者实在是太多了,在此不可能逐一细述,我将在以后的文章中陆续向大家介绍。
UML之父是谁?
UML之父有三位:他们是Grady Booch(Booch方法发明人),James Rumbaugh(OMT方法发明人)和Ivar
Jacobson(OOSE方法发明人)。人们亲切地称他们为“3
amigos”(即“三高”,类似于大家给予联手举办世纪音乐会的,世界上3位顶尖男高音歌唱家的称谓)。
UML标准有哪些最新进展?
UML 1.x系列的最新版本是于2003年3月发布的1.5版本。
OMG从2000年起启动了UML 2.0标准的制定工作。U2P组织(UML2 Partners Consortium)在UML
2.0标准的制定过程中发挥了主导作用。UML 2.0上层结构(Superstructure)规范在2003年6月12日获得通过标志着UML
2.0标准研制的成功,目前对所有相关文件的扫尾工作也即将结束,UML 2.0将于2004年夏季正式发布。
初学者如何开始学习UML ?
无外乎几种方式:读书、上网、培训和实践。最近几年国内出版了不少与UML有关的中英文书籍,但说实话,有点良莠不齐,初学者不管自学还是参加培训,选择合适的UML教材/读物是很重要的。
Craig
Larman的《UML和模式应用》是一本非常好的内容丰富、真正实用的入门教材,在国际上可能也是用得最多的一本。纵观全书,以实案为中心,脉络清晰,组织老到,深浅适当,循循善诱,非常适合UML、UP、设计模式的初学者和一直对OOAD、UML的价值存有疑虑的结构化人士一读。对于熟悉OO的人来说,阅读此书也是再一次享受梳理知识、进行系统性训练的美妙体验。本人尤其推荐第2版(内容更新了不少,听说正在引进翻译,值得期待)。
如果希望与大师对话,全面深入地掌握UML的基本要领,通过领悟UML设计者的思想和意图来达到在实战中得心应手运用OO建模技术的目的,建议阅读UML之父Grady
Booch亲自撰写的《UML用户指南》。本书相当全面,偏重理论分析和概念阐释,这些内容和抽象技术对于真正理解UML是非常基本、必不可少的,它适合喜欢认真探究一切的读者。
用好UML离不开有好的过程作指导。RUP极其丰富的内容令人生畏,Ivar
Jacobson大师在《统一软件开发过程》一书中从管理者和系统架构师的角度,通过实例分析系统地讲解了将UML用于分析设计实践的完整过程,深入浅出,言简意赅,可以说此书正是RUP的精华所在。带领自己的团队用好UML,得此书足矣。
UML规范、《UML参考手册》内容深、篇幅大,主要面向UML工具开发者、专家和研究人员,不适合初学者阅读。
另外,国内的IT之源等网站还提供了非常丰富的学习资料和参考文章,欢迎参加我们组织的相关培训。
世界上有哪些著名的公司、组织参与了UML 标准的制订?
历年来,参与UML标准制订的一些核心公司和组织包括(1.x、2.0):
全能型 IT公司:HP, IBM, Sun, Unisys
大型软件公司: CA, Microsoft(1.x), Oracle
软件开发工具厂商:Artisan, Borland, Compuware, Embarcadero, Gentleware, I-Logix,
Jaczone, Mercury Computer, Popkin, Rational(已被IBM收购), Telelogic
电信供应商: Alcatel,Ericsson,Fujitsu,Motorola
行业组织: OMG IT系统集成商:EDS 咨询公司:Intellicorp
大型行业客户:DaimlerChrysler, Lockheed Martin, France Telecom
等等,参与制定并直接支持UML
2.0标准的国际知名企业、院校和机构多达53家以上,UML在业界的影响力和地位由此可见一斑。
没有评论:
发表评论