Page 218 - 《软件学报》2026年第4期
P. 218
袁中锦 等: 融合中文需求文本语义特征的 UML 活动图自动生成方法 1659
:
相关性语义标签 时序性语义标签
算法2
短语集合 节点类型 节点次序
图 6 活动图节点类型和节点次序确定示例
UML 活动图节点四元组包含活动发起者、动作描述和节点类型信息. 在算法 1 和算法 2 中, 我们已经通过分
析需求文本的语义特征确定了活动图包含的节点类型. 算法 3 将结合需求文本的语法特征和语义特征实现活动发
起者和动作描述的自动化提取.
算法 3. UML 活动图活动发起者和动作描述提取.
输入: 通过算法 2 获取的需求文本短语数组 P h 中的一个短语 sub;
输出: 活动图活动发起者 as 与动作描述 ad.
1. W ← Tok(sub) //分词
2. Pos ← PosTag(sub) //词性标注
3. Dep ← DepPar(sub) //依存句法分析
4. l ← Pos 的长度
//找出与动词或介词相邻的名词性主语作为活动发起者
5. for start_idx ← 0 to l−1
6. if Pos[start_idx] 是名词& Dep[start_idx] 属于名词性主语 then
7. end_idx ← start_idx
8. else if Pos[start_idx] 是动词或者介词 then
9. break
10. end if
11. end for
//补全活动发起者描述
12. for start_idx ← 0 to l−1
13. if Pos[start_idx] 是名词& Dep[start_idx] 属于名词性主语 then
14. break
15. end if
16. end for
17. as ← W[start_idx : end_idx+1]
//获取动作描述内容
18. for start_idx ← 0 to l−1
19. if Pos[start_idx] 是动词或者介词 then
20. end_idx ← start_idx
21. end if
22. end for
23. ad ← W[end_idx :]
24. return as, ad

