不要随便说“同步”,“同时”

Lukas 2023-3-8 10:03

请问各位大佬一个操作:序列图里同步进行如何画?多个其他部门同时传输数据给本系统

UMLChina潘加宇

加par框,意思是不同分区之间的消息没有次序。

******

以下是本问题的扩展回答

******

说话要严谨,不要乱用术语。

什么叫“多个其他部门同时传输数据给本系统”?

(1)部门是组织,不是系统,没法和“本系统”交互。和“本系统”交互的,要么是人,要么是信息系统。

(2)如果和“本系统”打交道的是人,人估计很难同时,就算大家事先对表、定闹钟,到点了,同时操作。此时,“同时”的责任是在“各部门人员”上,毕竟不同人的基因差别、体质差别,即使“同时”,不同人之间时间差肯定也不小,。

序列图可能如下:

(3)如果和“本系统”打交道的是各部门自有的信息系统,每个信息系统里都有一个定时器,达到同样的时间就把数据发过来请求“本系统”接收和处理,这个倒是可以。此时,“同时”的责任是在“各部门自有的信息系统”上。

序列图可能如下:

-----------

因此,估计你说的根本不是上面描述的场景,而是:各部门的数据谁先进来谁后进来无所谓,但要等到所有部门的数据都有了,才能往下走,也就是说,“本系统”有一个“判断数据是否收全”的责任。而不是什么同步、同时。

那为什么会下意识说出“同步”、“同时”?

“同步”一般有两个用法,一个是调用需要等待结果再继续执行后续行为;另一个用法是不同位置的数据互相比对以保持一致。

可能这个流程的目的是要比对不同部门系统之间的数据,以保持数据一致,也就是第二种用法,即所谓的“数据同步”。

但这个“同步”是流程结束之后要达到的目标,不是流程本身要“同步”。

至于“同时”,那就属于YY了——觉得应该会“同时”。


weixinpanjiayu2