作者:
(1)Gaurav Kolhatkar, SCTR 浦那计算机技术研究所,印度浦那([email protected]);
(2) Akshit Madan, SCTR 浦那计算机技术学院,印度浦那([email protected]);
(3) Nidhi Kowtal, SCTR 浦那计算机技术学院,印度浦那([email protected]);
(4)Satyajit Roy,印度浦那 SCTR 浦那计算机技术学院([email protected])。
摘要— 将用户史诗或故事转换为伪代码或代码的适当表示是一项耗时的任务,在工业项目中会占用大量时间。通过这篇研究论文,我们旨在提出一种方法,从给定的敏捷小功能用户故事生成伪代码,以减少工业项目所花费的总体时间。伪代码是与编程语言无关的计算机程序步骤表示,可以轻松转换为任何编程语言。利用自然语言处理的潜力,我们希望简化使用敏捷软件开发模型的组织的开发流程。我们提出了一种将英语描述的问题转换为伪代码的方法。该方法将文本到伪代码的转换任务分为两个阶段或子任务,每个阶段或子任务都被视为单独的机器翻译任务。第 1 阶段是文本到代码的转换,第 2 阶段是代码到伪代码的转换。我们发现,在上述两个子任务上分别训练时,CodeT5 模型在 BLEU 分数方面取得了最佳效果。BLEU 分数是一种用于衡量机器翻译文本与一组参考翻译之间相似度的指标。
索引术语— 文本到代码生成、代码到伪代码生成、Transformers
工作效率在现代组织和企业中至关重要。当今大多数工作场所都使用敏捷模型进行软件开发。敏捷是一种基于迭代开发的软件开发方法,其中任务被划分为较小的迭代或冲刺。在敏捷项目中,Jira 等管理工具用于以史诗或用户故事的形式记录用户需求。开发人员需要了解这些需求并为其编写代码。但是,通过自动化代码/伪代码生成过程可以节省大量的开发时间和精力,尤其是对于以前已经解决过的简单或重复问题。我们研究论文的动机是简化开发人员的工作,以便他们可以专注于更复杂的任务,并在此过程中优化软件开发生命周期。
Jira 是一款用于问题跟踪和项目管理的软件应用程序。敏捷开发团队广泛使用它来跟踪错误、故事、史诗和其他任务。史诗是可以分解为多个较小任务(称为故事)的大型工作。故事也称为“用户故事”,是从最终用户的角度编写的简短需求或请求。我们的目标是将史诗/故事转换为伪代码。
尽管敏捷模型具有诸多优势,但软件开发仍可能是一个困难且漫长的过程,尤其是在将用户需求转化为功能代码时。开发人员通常会在此过程中手动将用户史诗或故事转化为代码,这可能需要花费大量时间和精力。
我们的研究旨在探索利用机器学习方法和自然语言处理来自动化从用户故事生成代码和伪代码的过程的潜力,以解决这一难题。通过这样做,我们希望简化开发人员的任务,增强软件开发生命周期,并提高整个工业项目的效率。
自然语言处理领域的最新进展使得各种以前手动执行的操作得以自动化。尤其是深度学习领域的最新发展使得创建复杂的自然语言模型成为可能,这些模型可以从文本输入中提取上下文和含义。通过利用这些模型,我们可以快速高效地根据用户故事创建代码或伪代码,从而减轻开发人员的压力。
我们的研究将研究目前使用的各种方法,包括基于规则的系统、统计模型和深度学习技术,用于根据用户故事生成代码或伪代码。我们将评估每种方法的优缺点,并提出一种充分利用其优势的新策略。
总体而言,我们的研究论文旨在通过自动化从用户故事生成代码/伪代码的过程来提高软件开发的效率和效果。通过这样做,我们希望让开发人员能够专注于更复杂的任务,降低出错风险,并最终向用户提供更好的软件产品。