[论文解读] Model Generation with LLMs: From Requirements to UML Sequence Diagrams
本研究探讨了ChatGPT从自然语言需求生成UML序列图的能力,发现其在可理解性和标准符合性方面表现良好,但在完整性和正确性方面存在显著问题,尤其是在需求存在歧义或不一致时。主要贡献是提出了一个包含23类问题的结构化框架,并提出了迭代式、领域感知的提示策略,以提升需求工程工作流中的可靠性。
Complementing natural language (NL) requirements with graphical models can improve stakeholders' communication and provide directions for system design. However, creating models from requirements involves manual effort. The advent of generative large language models (LLMs), ChatGPT being a notable example, offers promising avenues for automated assistance in model generation. This paper investigates the capability of ChatGPT to generate a specific type of model, i.e., UML sequence diagrams, from NL requirements. We conduct a qualitative study in which we examine the sequence diagrams generated by ChatGPT for 28 requirements documents of various types and from different domains. Observations from the analysis of the generated diagrams have systematically been captured through evaluation logs, and categorized through thematic analysis. Our results indicate that, although the models generally conform to the standard and exhibit a reasonable level of understandability, their completeness and correctness with respect to the specified requirements often present challenges. This issue is particularly pronounced in the presence of requirements smells, such as ambiguity and inconsistency. The insights derived from this study can influence the practical utilization of LLMs in the RE process, and open the door to novel RE-specific prompting strategies targeting effective model generation.
研究动机与目标
- 评估ChatGPT在从自然语言需求生成UML序列图方面的可靠性。
- 识别大型语言模型生成模型中的常见质量问题,特别是完整性和正确性方面的问题。
- 探讨需求质量(如歧义性和不一致性)对模型生成结果的影响。
- 构建一个结构化的问题框架,以指导未来在需求工程中基于大语言模型的模型生成改进。
- 提出实用的提示策略,结合领域知识和人机协同优化,以提升模型保真度。
提出的方法
- 通过28份涵盖不同格式(如“shall”语句、用户故事、用例)的多样化需求文档,开展探索性定性研究。
- 由三位经验丰富的研究人员使用需求提示ChatGPT,生成相应的UML序列图。
- 收集评估日志,记录每张生成图的质量问题,重点关注完整性、正确性和结构保真度。
- 对评估日志进行主题分析,将模型生成中的23种常见问题进行分类,如元素缺失或消息序列错误。
- 采用三角验证方法,结合独立评估与Cohen’s kappa系数,确保评估判断的可靠性。
- 通过引入需求变体,探究上下文和领域特定知识的影响,评估模型在需求演变或模糊输入下的响应表现。
实验结果
研究问题
- RQ1当使用自然语言需求提示时,ChatGPT在多大程度上能生成语义正确且完整的UML序列图?
- RQ2需求异味(如歧义性和不一致性)如何影响大型语言模型生成的序列图质量?
- RQ3生成图中最常见的错误或遗漏类型是什么?它们与输入质量或领域复杂性的关系如何?
- RQ4如何通过迭代式、领域感知的提示策略提升需求工程中大型语言模型生成模型的正确性和完整性?
- RQ5上下文和隐性领域知识在大型语言模型生成可靠性中扮演什么角色?如何有效整合这些知识?
主要发现
- ChatGPT生成的序列图在可理解性和UML标准符合性方面表现良好,术语与输入需求保持一致。
- 尽管标准符合性良好,但模型普遍存在不完整性问题,如参与者、消息或生命线缺失,尤其在复杂或模糊的需求中更为明显。
- 正确性问题普遍存在,包括消息顺序错误、交互流程误述以及与指定行为的结构偏离。
- 在需求缺乏清晰性或需要专业技术领域知识进行准确澄清时,观察到幻觉现象和错误解释。
- 需求异味(如歧义性和不一致性)显著增加了模型出错的可能性,凸显了大型语言模型对输入质量的高度敏感性。
- 主题分析揭示了23类不同的问题,其中最常见的是元素缺失、消息序列错误以及未能正确建模条件或并发行为。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。