Page 224 - 《软件学报》2026年第4期
P. 224

袁中锦 等: 融合中文需求文本语义特征的            UML  活动图自动生成方法                                  1665


                    本文还依据文献       [15] 中对  NLPHR  方法的具体描述复现了该方法, 将其作为对比方法之一. 同时, 本文将
                 ChatGPT4  与  PlantUML  工具结合的  UML  活动图半自动生成方法也作为一种对比方法, 简称             ChatGPT4. 表  4  展示
                 了  AutoADGC、NLPHR  与  ChatGPT4  针对企业提供的真实需求文本以及          PROMISE  数据集中的用例描述所生成
                 UML  活动图在完整性、正确性和冗余性评价指标上的统计结果. 后文图                   10 是一个  AutoADGC、NLPHR  与  ChatGPT4
                 针对同一需求文本生成        UML  活动图结果的实例.

                    表 4 AutoADGC  与两种对比方法生成的        UML  活动图在完整性、正确性和冗余性指标上的统计结果 (%)

                                     完整性                       正确性                       冗余性
                 数据集名称
                           NLPHR [15]  ChatGPT4 AutoADGC  NLPHR [15]  ChatGPT4 AutoADGC  NLPHR [15]  ChatGPT4 AutoADGC
                 企业数据集       79.04   96.23    95.99    54.13   75.09    96.09    45.87   24.91    3.91
                  PROMISE    92.72   99.77    98.65    81.60   91.26    99.53    18.40    8.74    0.47

                    从表  4  可以看出, AutoADGC   与  ChatGPT4  自动生成所得   UML  活动图的完整性均超过        95%, 这表明上述两
                 种方法都能够从需求文本中有效提取正确的活动图图元素及其关系. 在正确性和冗余性指标上, AutoADGC                                的性
                 能明显优于两种对比方法. 结合图           10  的实验结果进行分析, 这可能是因为          AutoADGC  方法借助语义多标签需求
                 文本分类剔除了需求文本中与业务活动无关的内容, 并准确获取了正确的节点间关系, 进而减少了错误活动图节
                 点和边的产生. 对比图       10(a) 与  (b) 中虚线方框部分结果发现, AutoADGC     方法自动生成的结果不包含“线上购物
                 商场是一种便捷的购物方式”这一与业务活动非直接相关的需求文本句子. 对比图                          10(a)–(c) 中双线方框结果发现,
                 只有  AutoADGC  方法正确表示了需求文本中的同步关系. 除此以外, 前文图                 2(a) 中结果显示, 在没有受到充分的
                 约束或指导时, 大模型可能会自主添加            UML  活动图的节点和边, 以满足其对活动图结构的理解, 而忽视实际业务
                 需求. 这导致   ChatGPT4  生成的  UML  活动图中经常出现多余或错误的节点和边, 使其正确性较低, 冗余性较高. 虽
                 然这种由大模型生成的        UML  活动图对业务活动的考虑可能比原始需求文本更全面, 但是过于复杂的                        UML  活动
                 图会增加软件开发人员理解、分析和维护的难度, 在实际项目开发中并不受欢迎. 同时, 在实验过程中, 由于大模
                 型首次生成的     PlantUML  编码有误, ChatGPT4  在  51  份需求文本上未能成功生成       UML  活动图, 而  AutoADGC  在
                 所有需求文本上均能成功生成           UML  活动图. 这凸显了    AutoADGC  在可靠性和稳定性方面的优势.
                    综上所述, 融合中文需求文本语义特征的             UML  活动图自动生成方法       AutoADGC  能够有效提升活动图自动生
                 成的完整性和正确性, 降低活动图冗余性. AutoADGC             相对于其他    UML  活动图自动生成方法有较大优势, 具备较
                 高的实用性.
                  3.5.3    运行时间结果与分析
                    为了回答    RQ3, 本节从  UML  活动图自动生成工具用户的角度对            AutoADGC  方法自动生成     UML  活动图的时
                 间进行了评估. 鉴于训练语义多标签需求文本分类模型是一个一次性的过程, 且不涉及最终用户, 本实验主要关
                 注  AutoADGC  方法在已训练好的模型上分析用户需求以自动生成                UML  活动图的过程. 参照     Wang  等人  [41] 的实验
                 设计, 本文统计了第      3.1  节测试集中每份需求文本所包含的句子数量, 并按照句子数量对所有需求文本进行升序
                 排序. 图  11  显示了  AutoADGC、NLPHR  与  ChatGPT4  根据测试集中的需求描述自动生成          UML  活动图的时间消
                 耗. 鉴于  GKP4ACTIVITY、SBVR2ACTIVITY   与  EADGD  方法未公开实现代码且缺乏详细的算法描述, 本文无法
                 对  AutoADGC  与这些方法的运行时间进行对比分析. 所有的运行时间均在配备                     3.70 GHz Intel(R) Core(TM) i9-
                 10900K CPU  和  128 GB  内存的云服务器上进行测量.
                    从图  11  可以看出, AutoADGC  方法能够根据测试集中的需求文本在             30 s 以内自动生成    UML  活动图, 运行时
                 间远少于软件工程师人工绘制           UML  活动图的时间. 而图     7  的统计结果显示, AutoADGC    方法所生成的     UML  活动
                 图在完整性、正确性和冗余性指标上同人工绘制的参考图相差较小. 此外, 在绝大多数情况下, AutoADGC                             的性能
                 明显优于    NLPHR  方法. 这是因为   AutoADGC  利用语义多标签需求文本分类的结果, 排除了需求文本中与                    UML
                 活动图自动生成无关的句子, 提高了算法中自然语言处理与图元素及其关系提取的效率. 当需求文本的句子数量
                 为  8  时, AutoADGC  方法的运行速度略慢于     NLPHR  方法. 通过查看对应需求文本发现, 这些需求文本几乎不包含
   219   220   221   222   223   224   225   226   227   228   229