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
   213   214   215   216   217   218   219   220   221   222   223