UML概述

什么是UML

UML(Unified Modeling Language)是统一建模语言,但不是程序设计语言,而是一种描述程序设计思路的工具,不局限于某个平台或某种程序设计语言。其特点是使用图形和文档相结合的方式来描述现实世界中的问题及解决问题的方案。


为什么使用UML

软件开发的最终目的是得到可执行的软件,建模是为了更好的理解要实现的软件系统,设计软件系统的蓝图。什么情况下需要使用UML?一般从下面三个方面考虑:

1. 是否使用面向对象技术来开发软件

2. 软件的规模和复杂程度是否超出了用户的控制能力

3. 是否是一个团队进行软件项目开发


UML的主要内容

UML定义了5类共计10种模型图,下面介绍每一种模型图的功能。

1. 用例图

用例图用来描述用户的需求,从用户的角度出发描述系统的功能,并指出各功能的执行者,强调谁在使用系统,系统为执行者完成哪些功能。


2. 静态图

静态图包括类图、对象图和包图。

类图:定义系统中的类,包括类的内部结构和类之间的关系

对象图:类图的一个实例,它描述了系统在某个具体的时间点上所包含的对象以及个对象之间的关系

包图:由包和类组成,主要表示包与包、包与类之间的关系


3. 行为图

行为图主要用来描述系统的动态模型和对象之间的交互关系,包括状态图和活动图。

状态图:描述类的对象所有可能的状态以及事件发生时状态的转移条件,通常状态图是类图的补充

活动图:描述用例要求所要进行的活动以及活动间的约束条件,使用活动图有利于识别系统中的并行活动


4. 交互图

交互图主要用来描述对象之间的交互关系,包括时序图和合作图,时序图和合作图合可以相互转化。

时序图:描述对象之间的交互顺序,着重体现对象间消息传递的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程

合作图:描述对象之间的合作关系,更侧重于说明有哪些对象之间有消息传递。


5. 实现图

实现图包含构件图和部署图。

构件图:描述代码构建的物理结构以及各构件之间的依赖关系

部署图:定义了系统中硬件的物理体系结构,用来描述实际的物理设备以及他们之间的连接关系


UML在软件开发各个阶段的应用

1. 需求

用例图:描述用户需求,找出谁与系统打交道、系统的主要功能、系统与外部是如何交互的,并进一步分析这个交互过程。


2. 分析

分析阶段主要对用户的需求进行进一步的分析,明确要解决问题的细节。

类图:描述系统的静态结构

顺序图、合作图、活动图和状态图:描述系统的动态行为


3. 设计

根据对系统的分析提出解决问题的方案。

类图:把分析类转化为设计类

包图:把分析包转化为设计包


4. 实现过程

把设计阶段的类转化成某种面向对象程序设计语言的代码,根据UML中详细设计的类图进行实际编码。


5. 集成与交互

构件图、包图、部署图


6. 测试

单元测试:类图和类的规格说明书

集成测试:类图、包图、构件图和合作图

系统测试:用例图





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值