文章大纲
一、 什么是UML
二、 UML基础介绍
三、UML实例介绍
四、参考文档

一、 什么是UML
UML(Unified Modeling Language,统一建模语言) 是一种在软件设计时提供给分析师、设计师和工程师之间的通用语言。它在软件需求分析及软件整个生命周期中起着重要作用:UML建模有助于捕获系统结构或行为,定义软件构架,保持设计和实现的一致性,管理复杂性,促进沟通。
UML的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程。UML被应用到面向对象的问题解决上,面向对象的问题处理的关键是建模问题,建模可以把复杂业务的许多重要的细节给抽象出。不仅可以借助于UML来完成与用户的需求沟通,而且可以指导程序员进行开发。
但一般在非常规范的产品设计中才会使用UML设计,一般小公司都是敏捷开发。
二、 UML基础介绍
1. UML包含种类和使用情况

何为静态、动态呢?静态视图所描述的结构,某段时间内应该是稳定的,静态的;而动态视图描述的是某种行为,是动态的。图中的红字标出的图是作为一名产品人员所必须掌握的
2. UML建模工具介绍
第一名:Rational Rose。大名鼎鼎,史上最有名、最无可替代的UML产品,以至于,大多数将之等同于UML工具,正如将可乐等同于可口可乐。需要指出的是,自从Rational被IBM收购之后,Rational Rose已经成为历史,作为UML1.4标准的产物,现在已经不升级。其替代品是IBM的其他产品,如IBM RSA, RSD等。
第二名:IBM Rational RSA。无可置疑,IBM的旗舰产品,通过和IBM其他产品的协调,支持软件开发的全生命周期开发。唯一的缺陷,是出奇的笨重,和出奇的贵(不唯一了?)。
第三名:Trufun Kant Studio。作为国产唯一的UML工具,据说是最易用的UML工具,目前在国内大多数高校取得了广泛的应用。对企业和高校而言,其最用力的杀伤性武器是,UML产品和UML实训可以一次到位,学以致用。
第四名:EA。EA的特点就是没特点,除了便宜和好像要啥有啥外,没有让人印象深刻的地方,可能这就是低价产品之道。说起来,倒像我曾经呆过的系统集成企业,招标时,没有我不会做的,没有比我更便宜的,呵呵。
第五名:StarUML。用Delphi能做到这种程度,StarUML作者绝对是个Delphi牛人,只可惜此开源项目不知为何中止,可惜啊。如果能够继续的话,估计其他UML工具都没有活路了。
其他还有一些不太常用的,以后有时间再说,如ArgoUML, PowerDesigner, Visual UML等。
三、UML实例介绍
1. 用例图
定义
用例图强调了从用户自身角度解决其需求的产品/系统是什么以及如何使用,不关心它的具体实现。
涉及的元素

逻辑解析



实例

2. 活动图
定义
活动图展示了用例的具体业务与工作流程,以及各项业务之间的约束关系。
涉及的元素

逻辑解析


实例

3. 类图
定义
类图是用于描述系统/产品结构化设计的静态图形,显示了类、类的方法、类的接口以及它们之间静态结构和关系。
涉及的元素

逻辑解析


实例
