软件建模 CodeArts Modeling-消息线连线规则:连线算法
连线算法
- 目标端寻源:一条消息线M1尝试连接到生命线L2上。
从当前消息线M1出发,如果该消息线M1的源端S1在生命线L2上,则S1为M1的目标端(同时也是源端),在S1内创建子激活块并将M1指向它【图1】;否则继续如下流程;
查找源端S1的引入消息线(From Message),如果找不到,则终止寻源过程,目标端寻源失败,在L2上新创建一个激活块并将M1指向它【图2】;如果能找到,则命名为FM1,继续如下流程【图3】;
检测消息线FM1的源端FS1,查看其是否是生命线L2上的激活块,如果是则FS1为M1的目标端,在FS1内创建子激活块并将M1指向它【图4】;如果不是,则重复步骤b【图5】;
当查找到顺序图第一根消息线依旧未找到目标端,则此次寻源过程终止,目标端寻源失败,在L2上新创建一个激活块并将M1指向它【图5】;如果找到则在其内创建子激活块并将M1指向它【图6】。
图6中M1的逆向寻源不会经过2、3两根消息线,因为M1的源端S1的引入消息线是第一条线,直接能找到目标。
逆向寻源过程中,如果寻源过程中遇到异步消息线(Async Message)或者返回消息线(Reply Message),则终止寻源过程;此时如果M1不是返回消息线(Reply Message),则在L2上新创建一个激活块并将M1指向它。
寻源过程中断后或者未找到对应激活块,并且M1是返回消息线:
- 那么如果M1有源端引入线(源端引入连线类型不是返回消息线),则从M1的目标端所在生命线找到其内位置最低的激活点作为寻源目标(图7.1)。
- 如果M1没有源端连线,或者源端连线是返回消息线(Reply Message),则在L2上新创建一个激活块并将M1指向它(图7.2,图7.3)。
- 软件开发生产线CodeArts体验指南_软件开发平台_软件开发生产线-华为云
- 软件开发生产线_玩转代码托管CodeArts Repo_代码管理
- 软件开发生产线CodeArts_软件开发平台_开发工具-华为云
- 移动开发平台_SAAS平台_基础软件_低代码开发平台
- 软件开发云端测试平台_软件开发生产线_测试计划 CodeArts TestPlan-华为云
- 软件开发生产线_软件开发生产线有哪些_软件开发生产线工具
- 软件开发编译构建的优势_软件开发生产线_编译构建CodeArts Build-华为云
- 软件开发一键式部署平台_软件开发生产线_部署CodeArts Deploy-华为云
- 什么是需求管理_ 软件开发生产线_ 需求管理CodeArts Req-华为云
- 代码检查_代码检查如何设置规则集_代码检查CodeArts Check-华为云