uml序列图(序列图的UML)

:暂无数据 2026-07-11 08:30:02 :0

uml序列图(序列图的UML)

各位老铁们好,相信很多人对uml序列图都不是特别的了解,因此呢,今天就来为大家分享下关于uml序列图以及序列图的UML的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

本文目录

序列图的UML

序列图主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。很象类图,开发者一般认为序列图只对他们有意义。然而,一个组织的业务人员会发现,序列图显示不同的业务对象如何交互,对于交流当前业务如何进行很有用。除记录组织的当前事件外,一个业务级的序列图能被当作一个需求文件使用,为实现一个未来系统传递需求。在项目的需求阶段,分析师能通过提供一个更加正式层次的表达,把用例带入下一层次。那种情况下,用例常常被细化为一个或者更多的序列图。
组织的技术人员能发现,序列图在记录一个未来系统的行为应该如何表现中,非常有用。在设计阶段,架构师和开发者能使用图,挖掘出系统对象间的交互,这样充实整个系统设计。
序列图的主要用途之一,是把用例表达的需求,转化为进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的序列图。序列图除了在设计新系统方面的用途外,它们还能用来记录一个存在系统(称它为“遗产”)的对象现在如何交互。当把这个系统移交给另一个人或组织时,这个文档很有用。

UML序列图的时序图元素

时序图中包括如下元素:角色,对象,生命线,激活期和消息
1、角色(Actor)
系统角色,可以是人或者其他系统,子系统。
2,对象(Object)
对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表
对象实例
类角色。
对象一般包含以下三种命名方式:
第一种方式包含包含对象名和类名
第二种方式只显示类名不显示对象名,即为一个匿名对象。
第三种方式只显示对象名不显示类名。
3,生命线(Lifeline)
生命线实例
生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间 的消息存在于两条虚线间。
4,激活期(Activation)
激活期代表时序图中的对象执行一项操作的时期,在时序图中每条生命线上的窄的矩

形代表活动期。它可以被理解成C语言语义中一对花括号“{}”中的内容
5,消息(Message)
消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模,信息用于在实体间传递信息。允许实体请求其他的服务,类角色通过发送和接受信息进行通信
消息实例

怎么设计UML序列图

UML序列图详解
图10:循环组合碎片的一个序列图例子
在图
10
中显示的循环运行,直到
reportsEnu
对象的
hasAnotherReport
消息返回false。如果循环序列应该运行,这个序列图的循环使用一个布尔测试确认。为了阅读这个图,你和平常一样,从顶部开始。当你到达循环组合碎片,做一个测试,看看值
hasAnotherReport
是否等于true。如果
hasAnotherReport
值等于true,于是序列进入循环片断。然后你能和正常情况一样,在序列图中跟踪循环的消息。
超越基础
我已经介绍了序列图的基础,应该使你可以为将会在系统中通常发生的大部份交互建模。下面段落将会介绍用于序列图的比较高阶的符号元件。
引用另外一个序列图
当做序列图的时候,开发者爱在他们的序列图中,重用存在的序列图。
7
在
UML
2
中开始,引进“交互进行”元件。追加交互进行的可以说是
UML
2
交互建模中的最重要的创新。交互进行增加了功能,把原始的序列图组织成为复杂的序列图。由于这些,你能组合(重用)较简单的序列,生成比较复杂的序列。这意味你能把完整的、可能比较复杂的序列,抽象为一个单一的概念单位。
一个交互进行元件使用一个框架绘制。文字“ref”放置在框架的
namebox
中,引用的序列图名字放置在框架的内容区里,连同序列图的任何参数一起。引用序列图的名字符号如下模式:
序列图名[(参数)]
[:
返回值]
两个例子:
1.
Retrieve
Borrower
Credit
Report(ssn)
:
borrowerCreditReport
或者
2.
Process
Credit
Card(name,
number,
expirationDate,
amount
:
100)
在例子
1
中,语法调用叫做Retrieve
Borrower
Credit
Report的序列图,传递给它参数
ssn。序列Retreive
Borrower
Credit
Report返回变量
borrowerCreditReport
。
在实例
2
中,语法调用叫做Process
Credit
Card的序列图,传递给它参数name,number,expiration
date,和
amount。然而,在例子
2
中,amount参数将会是值100。因为例子2没有返回值标签,序列不返回值(假设,建模的序列不需要返回值)。
图11:一个引用两个不同序列图的序列图
图
11
显示一个序列图,它引用了序列图“Balance
Lookup”和“Debit
Account”。序列从左上角开始,客户传递一个消息给teller对象。teller对象传递一个消息给
theirBank
对象。那时,调用Balance
Lookup序列图,而
accountNumber作为一个参数传递。Balance
Lookup序列图返回balance变量。然后检验选择项组合碎片的约束条件,确认余额大于金额变量。在余额比金额更大的情况下,调用Debit
Account序列图,给它传递参数accountNumber
和amount。在那个序列完成后,withdrawCash
消息为客户返回cash。
重要的是,注意在图
11
中,theirBank
的生命线被交互进行Balance
Lookup隐藏了。因为交互进行隐藏生命线,意味着theirBank
生命线在“Balance
Lookup”序列图中被引用。除了隐藏交互进行的生命线之外,UML
2
也指明,生命线在它自己的“Balance
Lookup”序列中,一定有相同的
theirBank
。
有时候,你为一个序列图建模,其中交互进行会重叠没有
在交互进行中引用的生命线。在那种情况下,生命线和正常的生命线一样显示,不会被重叠的交互进行隐藏。
在图
11
中,序列引用“Balance
Lookup”序列图。“Balance
Lookup”序列图在图
12
中显示。因为例子序列有参数和一个返回值,它的标签
——
位于图的
namebox
中
——
按照一个特定模式:
图类型
图名
[参数类型:参数名]
[:
返回值类型]

关于uml序列图和序列图的UML的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

uml序列图(序列图的UML)

本文编辑:admin

更多文章:


dropdownlist 绑定(DropDownList 绑定所有项 并 显示指定项)

dropdownlist 绑定(DropDownList 绑定所有项 并 显示指定项)

本篇文章给大家谈谈dropdownlist 绑定,以及DropDownList 绑定所有项 并 显示指定项对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年10月11日 08:50

协方差计算公式(协方差的计算公式)

协方差计算公式(协方差的计算公式)

这篇文章给大家聊聊关于协方差计算公式,以及协方差的计算公式对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 08:10

易语言网页api接口怎么调用(易语言,怎么读取网页json的api)

易语言网页api接口怎么调用(易语言,怎么读取网页json的api)

本篇文章给大家谈谈易语言网页api接口怎么调用,以及易语言,怎么读取网页json的api对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

2026年10月11日 08:00

majority of(the majority of 和 a majority of的区别以及用法例句)

majority of(the majority of 和 a majority of的区别以及用法例句)

这篇文章给大家聊聊关于majority of,以及the majority of 和 a majority of的区别以及用法例句对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月11日 07:40

汉字机内码查询表(1个汉字的机内码是几位谢谢)

汉字机内码查询表(1个汉字的机内码是几位谢谢)

大家好,关于汉字机内码查询表很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于1个汉字的机内码是几位谢谢的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月11日 07:20

promote翻译(英语翻译倡导怎么说)

promote翻译(英语翻译倡导怎么说)

其实promote翻译的问题并不复杂,但是又很多的朋友都不太了解英语翻译倡导怎么说,因此呢,今天小编就来为大家分享promote翻译的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 06:30

用手机如何导航?开车用手机导航哪个软件最好

用手机如何导航?开车用手机导航哪个软件最好

今天给各位分享用手机如何导航的知识,其中也会对用手机如何导航进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 06:20

多线程技术有什么用(多线程有什么作用)

多线程技术有什么用(多线程有什么作用)

其实多线程技术有什么用的问题并不复杂,但是又很多的朋友都不太了解多线程有什么作用,因此呢,今天小编就来为大家分享多线程技术有什么用的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 05:40

another time(another time和other time的区别)

another time(another time和other time的区别)

大家好,another time相信很多的网友都不是很明白,包括another time和other time的区别也是一样,不过没有关系,接下来就来为大家分享关于another time和another time和other time的区

2026年10月11日 05:00

java开发工具包jdk(JDK是什么意思)

java开发工具包jdk(JDK是什么意思)

其实java开发工具包jdk的问题并不复杂,但是又很多的朋友都不太了解JDK是什么意思,因此呢,今天小编就来为大家分享java开发工具包jdk的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

2026年10月11日 04:50

最近更新

repercussions(都是余波,repercussions和aftermath有什么区别啊)
2026-10-11 09:00:05 浏览:0
dropdownlist 绑定(DropDownList 绑定所有项 并 显示指定项)
2026-10-11 08:50:04 浏览:0
majority of(the majority of 和 a majority of的区别以及用法例句)
2026-10-11 07:40:02 浏览:0
热门文章

标签列表