Skip to main content
QUICK REVIEW

[论文解读] Towards Human-Bot Collaborative Software Architecting with ChatGPT

Aakash Ahmad, Muhammad Waseem|arXiv (Cornell University)|Feb 26, 2023
Artificial Intelligence in Healthcare and Education被引用 15
一句话总结

本论文研究了 ChatGPT 如何作为 DevBot 在分析、合成和评估软件架构中辅助人类软件架构师的作用,以微服务驱动的 CampusBike 系统为案例研究,并讨论潜在性、风险及经验验证的方向。

ABSTRACT

Architecting software-intensive systems can be a complex process. It deals with the daunting tasks of unifying stakeholders' perspectives, designers' intellect, tool-based automation, pattern-driven reuse, and so on, to sketch a blueprint that guides software implementation and evaluation. Despite its benefits, architecture-centric software engineering (ACSE) inherits a multitude of challenges. ACSE challenges could stem from a lack of standardized processes, socio-technical limitations, and scarcity of human expertise etc. that can impede the development of existing and emergent classes of software (e.g., IoTs, blockchain, quantum systems). Software Development Bots (DevBots) trained on large language models can help synergise architects' knowledge with artificially intelligent decision support to enable rapid architecting in a human-bot collaborative ACSE. An emerging solution to enable this collaboration is ChatGPT, a disruptive technology not primarily introduced for software engineering, but is capable of articulating and refining architectural artifacts based on natural language processing. We detail a case study that involves collaboration between a novice software architect and ChatGPT for architectural analysis, synthesis, and evaluation of a services-driven software application. Preliminary results indicate that ChatGPT can mimic an architect's role to support and often lead ACSE, however; it requires human oversight and decision support for collaborative architecting. Future research focuses on harnessing empirical evidence about architects' productivity and exploring socio-technical aspects of architecting with ChatGPT to tackle emerging and futuristic challenges of ACSE.

研究动机与目标

  • 推动使用以 AI 驱动的 DevBots 来支持以架构为中心的软件工程(ACSE)。
  • 展示使用 ChatGPT 进行架构分析、合成和评估的人机协作架构过程。
  • 展示一个具体案例研究,说明 ASRs 如何通过与 ChatGPT 的对话生成和改进。
  • 识别 ChatGPT 支持的 ACSE 的潜在收益、风险及社会技术因素。
  • 为在此场景中的生产力与协作提供经验基础的证据奠定基础。

提出的方法

  • 阶段1:用自然语言描述软件及约束,开发一个架构故事。
  • 阶段2:通过架构分析(ASR 诱发)、架构合成(带有模式/策略的 UML 模型)以及架构评估(SAAM)实现协作式架构设计。
  • 阶段3:制定经验验证计划,详细说明未来的实验和情境。
  • 案例研究:CampusBike,用于说明人机对话协作所产生的过程与产物。
  • 架构师与 ChatGPT 之间的迭代对话,以细化需求、模型和评估情景。
  • 使用 UML 类图和组件图以及 SAAM 进行评估。
Figure 1: Context: LLMs, DevBots, Process, and Architecture
Figure 1: Context: LLMs, DevBots, Process, and Architecture

实验结果

研究问题

  • RQ1ChatGPT 能否处理一个架构故事,在与人类架构师合作时阐明 ASRs 和约束?
  • RQ2在多大程度上,ChatGPT 能将 ASRs 合成为架构模型并将其与既定需求进行评估?
  • RQ3在 ACSE 中人机协作架构设计的收益与风险有哪些,包括社会技术与治理方面?

主要发现

  • 在有人工架构师引导时,ChatGPT 能够阐明并细化架构需求与约束。
  • ChatGPT 可以在架构合成过程中帮助生成 UML 产物并应用策略和模式。
  • 基于 SAAM 的评估可以由 ChatGPT 指导,以产生评估情景和报告。
  • 该案例研究展示了初学者架构师与 ChatGPT 合作以产生 CampusBike 架构的实际步骤。
  • 初步结果表明潜在的生产力提升,但也强调需要人工监督和治理。
Figure 2: Overview of the Research Method
Figure 2: Overview of the Research Method

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。