​在UML中如何定义连续

这篇文章将为大家详细讲解有关在UML中如何定义连续,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

创新互联建站服务项目包括门头沟网站建设、门头沟网站制作、门头沟网页制作以及门头沟网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,门头沟网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到门头沟省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

在UML中是这样定义连续的:

交互中的一个标签,允许将条件拆分成两个片段。而这两个片段在语义上是连在一起的。

示例


这里采用EA帮助系统中的例子,当然版权也属于SparxSystems。首先是主流程。

​在UML中如何定义连续

eatab调用repos:File的reqConn方法,如果请求成功,则调用logConn后执行pathSucc连续标签引导的部分,如果失败,则执行pathFail连续标签引导的部分。两个标签分别引导的处理被设计到了ConnHandler中。

​在UML中如何定义连续

pathSucc标签接下来的处理是向estab返回connListen,而pathFail标签接下来的处理是调用ReCt的trackFail方法跟踪错误。

使用了连续标签以后,使用者可以自由定义成功和失败时的处理。

如果本文就这么结束了,是不是觉得太简单了?

之所以把本文拖到今天才写是因为有一个疑问一直没有解决:如果连续的效果仅限于此的话,完全可以通过保存reqConn的执行结果,然后再利用参数传递给ConnHandler的方式来实现,这样只会更加清晰。

我们忽略了什么呢?

还是用自创的例子来说明吧。这里以某智能摄像头为例。

​在UML中如何定义连续

基本流程如下:

5STimer每次发生Timeout以后会向SmartCamera发出通知,SmartCamera接到通知后拍摄照片,然后把拍摄的照片向云端传送。这里为拍摄成功,拍摄失败,传送成功,传送失败分别准备了连续标签以备其他处理使用。

下面是一种处理方式的例子:

​在UML中如何定义连续

这里只是简单地在拍照失败,云推送失败时向MobilePhone报告错误信息。也可以定义其他的处理,例如云推送失败时本地保存等等。

在本例中,拍照/推送的处理处于无限循环的处理中,永远(基本上)也等不到处理结束的时候。因此也就不存在返回值如何如何了。

关于“在UML中如何定义连续”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


名称栏目:​在UML中如何定义连续
当前URL:http://ybzwz.com/article/jsgdoh.html