In this paper, we first report an exploratory study where three participants were instructed to use ChatGPT to implement a simple Web-based application. A key finding of this study revealed that ChatGPT does not offer a user-friendly interface for building applications, even small web systems. For example, one participant with limited experience in software development was unable to complete any of the proposed user stories. Then, and as the primary contribution of this work, we decided to design, implement, and evaluate a tool that offers a customized interface for language models like GPT, specifically targeting the implementation of small web applications without writing code. This tool, called NoCodeGPT, instruments the prompts sent to the language model with useful contextual information (e.g., the files that need to be modified when the user identifies and requests a bug fix). It also saves the files generated by the language model in the correct directories. Additionally, a simple version control feature is offered, allowing users to quickly revert to a previous version of the code when the model enters a hallucination process, generating worthless results. To evaluate our tool, we invited 14 students with limited Web development experience to implement two small web applications using only prompts and NoCodeGPT. Overall, the results of this evaluation were quite satisfactory and significantly better than those of the initial study (the one using the standard ChatGPT interface). More than half of the participants (9 out of 14) successfully completed the proposed applications, while the others completed at least half of the proposed user stories.
翻译:本文首先报告了一项探索性研究,其中三名参与者被要求使用ChatGPT实现一个简单的基于Web的应用程序。该研究的一个关键发现表明,ChatGPT并未提供用户友好的应用程序构建界面,即使是小型Web系统也不例外。例如,一位软件开发经验有限的参与者未能完成任何提出的用户故事。随后,作为本工作的主要贡献,我们决定设计、实现并评估一款工具,该工具为GPT等语言模型提供定制化界面,专门针对无需编写代码即可实现小型Web应用的目标。这款名为NoCodeGPT的工具,通过向语言模型发送的提示中注入有用的上下文信息(例如,当用户识别并请求修复错误时需要修改的文件)来实现功能。它还将语言模型生成的文件保存到正确的目录中。此外,该工具提供了一个简单的版本控制功能,允许用户在模型陷入幻觉过程、生成无价值结果时,快速回退到代码的先前版本。为了评估我们的工具,我们邀请了14名Web开发经验有限的学生,仅使用提示和NoCodeGPT来实现两个小型Web应用程序。总体而言,此次评估的结果相当令人满意,且显著优于初始研究(使用标准ChatGPT界面的研究)。超过半数的参与者(14人中的9人)成功完成了提出的应用程序,而其余参与者则至少完成了一半提出的用户故事。