Empowering Agile-Based Generative Software Development through Human-AI Teamwork

2024年07月22日
  • 简介
    在软件开发中,用户提出的原始需求经常是不完整的,这妨碍了应用功能的完整实现。随着大型语言模型的出现,最近的方法采用自顶向下的瀑布模型,采用问询方法来完成需求,试图探索用户的进一步需求。然而,用户受到其领域知识的限制,缺乏有效的验收标准,无法捕捉用户的隐含需求。此外,瀑布模型的累积误差可能导致生成的代码与用户需求之间存在差异。敏捷方法通过轻量级迭代和与用户的协作来减少累积误差,但挑战在于确保用户需求和生成的代码之间的语义一致性。我们提出了AgileGen,一种基于敏捷开发的人工智能协作生成软件开发。AgileGen首次尝试使用Gherkin可测试的需求来保证需求和代码之间的语义一致性。此外,我们在人工智能协作方面进行了创新,允许用户参与其擅长的决策过程,增强应用功能的完整性。最后,为了提高用户场景的可靠性,使用内存池机制来收集用户决策场景,并向新用户推荐。作为一种用户友好的交互式系统,AgileGen在性能上显著优于现有的最佳方法16.4%,并获得了更高的用户满意度。
  • 图表
  • 解决问题
    AgileGen:人工智能辅助敏捷软件开发的研究。论文试图解决在敏捷软件开发中用户需求不完整、代码生成与用户需求不一致等问题。
  • 关键思路
    AgileGen是一种基于人工智能与人类协作的敏捷软件开发方法,通过使用Gherkin进行可测试的需求,以保证需求与代码的语义一致性。同时,通过人工智能与用户协作,提高了应用程序功能的完整性。
  • 其它亮点
    论文创新地提出了一种人工智能与人类协作的敏捷软件开发方法,使用Gherkin进行可测试的需求,以保证需求与代码的语义一致性。实验结果表明,AgileGen在用户满意度和性能方面均优于现有最佳方法。
  • 相关研究
    最近在这个领域中,还有一些相关研究被进行,如《使用自然语言处理技术进行敏捷软件开发中的需求获取》、《基于机器学习的敏捷软件开发》等。
PDF
原文
点赞 收藏 评论 分享到Link

沙发等你来抢

去评论