UML(Unified Modeling Language)作为一种可视化的面向对象的建模语言,用图来表示系统结构,从不同角度为系统建模,并形成不同的视图,应用与软件开发的各个阶段。
首先简单介绍下学习UML的学习前提,然后简单介绍下UML
1.面向对象技术
面向对象技术一种程序设计方法,是对现实世界中问题的抽象方式,对面向对象建模技术研究的主要成果就是统一建模语言UML
2 建模
目的:生产合格的软件就要有一套关于体系结构,过程和工具的规范。
模型:对现实系统的简化。
组成:系统,目标,组分,约束条件,变量,关系。
表示:M={O,G,T,V,R,S}对象,目标,约束,变量,关系,状体。
原理:分解,抽象,泛华,投影 构件化,形式化。
可视化:一图胜千言。
3软件开发
软件危机特点:周期超时,成本超标,质量差
软件质量评估:外部:正确性,健壮性和可靠性,性能,
内部:模块化,灵活性和可扩展性,可复用性,可兼容性
软件过程:RUP统一软件过程
RUP框架:软件开发包括多次循环,每个循环包括 初始,细化,构造,移交四个阶段,每个阶段有包括多个迭代过程。
建模对现实事物进行简化,面向对象技术提高了软件的质量,RUP与UML结合能更好的进行软件开发。
UML
1定义:Unified Modeling Language用于软件设计的面向对象的可视化建模语言。
2工具:RationalRose(常用)
3结构
1基本构造块
事物:结构事物 (类,接口,协作,用例,主动类, 构件, 节点)
行为事物 (交互,状体机)
分组事物 (包)
注释事物 (注解)
关系:关联、依赖、泛华、实现。
图: 用例图:描述用户需求类图:描述类的内部结构和类之间的关系
对象图:类图的一个实例
状态图: 描述对象可能的状态以及事件发生时状体的转移条件
构件图:描述代码构件和物理结构以及各构件之间的依赖关系
部署图:描述物理设备以及他们之间的链接关系。
协作图 :对象之间有消息的传递
序列图:对象间消息传递的时间顺序
活动图:用于识别系统的并行活动
4UML在软件开发各个阶段的应用
各个开发阶段,使用不同的UML图对系统进行描述。
1需求:用例图描述需求
2分析(明确解决的问题):类图描述静态结构,顺序图、合作图、活动图、状态图描述动态行为,
3设计(给出解决方案):类图、包、对类的接口进行设计
4实现 :将类用某面向对象语言实现
5集成与交付: 构件图、包、部署图。
6测试 :单元测试(类图); 集成测试( 类图包 构件图和合作图); 系统测试(用例图)