什么是UML?UML能给你什么?

想着改变人类

顺便征服世界

关注微信公众号:跟Sam一起学需求分析

什么是UML?

既然说到UML,那就要说一下什么是UML,在需求分析中UML讲的那么多次,那它究竟是什么呢?

UML(Unified modeling language):统一建模语言

我们来一个词一个词分拆解释~

统一:表示是一种通用的标准,它被OMG(Object Management Group)认可。OMG是一个国际化的、开放成员的、非盈利性的计算机行业标准协会,该协会成立于1989年,他是软件行业中一个标准的认可。包括客户、领域专家、分析师、设计师、程序员、测试工程师及培训人员等。他们可以使用这套语言成为他们工作中统一的沟通的语言,充分理解和表达自己所关注的那部分内容。

建模:即建立软件系统模型。为说明建模的价值,Booch(UML最初开发者之一)给出一个类比;盖一个动物窝棚、修一个乡间别墅和一栋摩天大楼。建立一个简单的系统,就如盖一个动物窝棚,模型可有可无,修一个乡间别墅,模型的必要性增加,建立一个高度复杂的系统,例如建一座摩天大楼模型必不可少。

语言:表明它是一种按照特定规则和模式组成的符号系统,它用半形式化方法定义,即用图形符号、自然语言和形式语言相结合的方法来描述定义的。UML9种图形中,他们结构不同,但是对同一领域有不同角度的观察。

你可能会问:这明明是一种图形,为什么说是语言呢?伟大的汉字还不是从图形(象形文字)开始的吗?语言是包括文字和图形的!其实有很多内容文字是无法表达的,你见过建筑设计图纸吗?里面还不是很多图形,光用文字能表达清楚建筑设计吗?在建筑界,有一套标准来描述设计,同样道理,在软件开发界,我们也需要一套标准来帮助我们做好软件开发的工作。UML就是其中的一种标准,注意这可不是唯一标准,只是UML是大家比较推崇的一种标准而已,说不定以后有一个更好的标准可能会取代她呢!UML并不是强制性标准,没有法律规定你在软件开发中一定要用UML,不能用其它的,我们的目标是善用包括UML在内的各种标准,来提高我们软件开发的水平。

UML历史

公认的建模语言出现在二十世纪70年代,到了80年代末迅速发展。但是从1989年到1994年,面对对象的建模语言的数量从不到10种增加到50种,各类语言的创始人极力推崇自己的语言,并不断晚上发展它,使得使用者不知道改用哪种语言。。。

其中比较流行的:

BOOCH这个就叫Booch方法,创始人是:Grady Booch,该方法擅长设计。

Booch方法的开发模型包括静态模型和动态模型,静态模型分为逻辑模型(类图、对象图)和物理模型(模块图、进程图),描述了系统的构成和结构。动态模型包括状态图和时序图。该方法对每一步都做了详细的描述,描述手段丰富而灵活。

OOSE创始人:Jacobsom 该方法擅长业务建模,Object-oriented software engineering.

OMT创始人:Rumbaught,OMT面向对象建模方法有很多种,也都在进一步的发展和完善中。OMT法是目前最为成熟和实用的方法之一。它从三个方面对系统进行建模,每个模型从一个侧面反映系统的特性,三个模型分别是:对象模型、动态模型和功能模型。

Rumbaugh 于1994年离开GE加入Booch所在的Rational公司,他们一起研究一种统一的方法,一年后,Unified Method 0.8诞生,

同年,Rational收购了Jacobsom所在的Objectory AB公司。

接着经过他们三年的共同努力,UML0.9和UML0.91于1996年相继面世。

此后UML创始人booch等人,邀请及计算机软件工程界的著名人士和著名企业如IBM,HP,DEC,Microsoft,Oracle等对UML进行评论,提出修改意见。

1997年1月Rational公司向OMG提交了UML1.0标准文本。

1997年11月OMG宣布接受UML,认定为标准的建模语言。

1998年发布了UML 1.2版本;

1999年发布了UML 1.3版本;

2003年3月发布了UML 1.5版本;

2004年推出UML2.0

UML该方法结合了Booch,OMT,和OOSE方法的优点,去除糟粕,统一了符号体系,UML一般不引入新的概念和符号,只有在没有现有的解决方法可以借鉴时,UML的开发者才考虑新的概念。


UML常用的工具:

开发公司名字

IBMRational Rose

Sparx Systems(澳洲)enterprise architect

MKlab (韩国)Start UML

微软visio

sybasePowerDesigner

Rational Rose:

个头大,兼容最好,最昂贵,适用于大中型建模。

这个破解版我有,想要的直接留言,我发你邮箱。

PowerDesigner:

更专注与数据库建模,后来又玩起了面对对象建模,适用于大中型建模。

Strat UML:(推荐)

免费、开源、好用,个头小。

适合中小型系统建模

Enterprise Architect:(推荐)

Enterprise Architect是基于最新的UML 2.4规范,

Enterprise Architect 可以轻松上手,并且执行速度非常快。

能够处理非常大的模型和多用户并发使用的模型

价格小贵,1200人民币左右。

(这个工具我找遍了全网都没有盗版的,因为太贵我买不起,我也很想买)

Visio

VISIO原来仅仅是一种画图工具,能够用来描述各种图形(从电路图到房屋结构图),也是到VISIO2000才开始引进软件分析设计功能到代码生成的全部功能,它可以说是目前最能够用图形方式来表达各种商业图形用途的工具,对软件开发中的UML支持仅仅是其中很少的一部分。但是拿来画还是可以的~

想免费用Strat UML,土豪用EA,不需要问太多为什么,用就是了。

UML 的工具其实还有很多的,这个全完看大家的个人喜好,基本的操作都差不多,上手难度不高,但是精通难度是不小的。

关于教程,我这边有视频分享,是Strat UML的教学视频。微信公众号留言你的邮箱,我将会邮箱发给你地址下载。

接下来我会写:

什么样的系统不需要建模?这是经常被问到的一个问题~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 自己最早接触UML,也觉得束缚太多,比较抵触。 经历了一些开发实践之后,尤其是涉及到技术团队领导,协调开发团...
    jiaxiaolei阅读 3,145评论 0 2
  • UML还有用吗? 引言 "uml的最高境界是用uml图直接生成可执行软件"这个已经实现了,例如用带有设计级调试和强...
    天下无敌强阅读 3,522评论 0 8
  • UML概述 UML简介 UML (Unified Modeling Language)为面向对象软件设计提供统一的...
    aron1992阅读 531评论 0 0
  • 在应用系统软件开发过程中,如果软件由很多对象组成,它的结构仅仅凭借分析很难理清,同时为了有利于软件的开发及重用,所...
    浮生半梦6阅读 712评论 0 0
  • 2018.01.03 1、你看到了哪几张卡片呢?卡片上画了些什么呢? 2、这些图画、需要词汇让你联想到今天或者最近...
    葛静阅读 176评论 0 0