软件工作量估算是软件工程中的一个关键活动,其重点在于估算软体开发或维护所需要的工作量。软件工作量估算在软件项目的计划和管理中起着至关重要的作用,对优化资源配置使用,控制项目成本,保证项目按时完成等方面具有深远影响。近年来,基于深度学习的工作量估算方法得到了广泛研究,此类方法依赖于对软件任务的专家特征或语义特征的学习,并已显现出巨大潜力。语义特征和专家特征从不同视角描述软件任务,然而如何结合这两种特征以进一步提升软件工作量估算的准确率已成为亟待探索的前沿课题。此外,目前有哪些专家特征可以用于软件工作量估算也尚不明确。
为了探索上述问题,我院软件研发效能实验室张贺教授指导的博士生李月及其他团队成员采用实证研究方法,确定了可以用于企业软件工作量估算的专家特征。进一步,在实证研究结果的基础上,课题团队提出了 Fine-SE 模型,集成了语义特征和专家特征进行软件工作量估算。该模型主要通过特征提取以及特征集成两个步骤来估算软件工作量。
为了验证 Fine-SE 模型的有效性,课题团队针对一家全球领先软件企业的17个工业项目,以及4个开源软件项中超过3万个软件任务进行了一系列评估。评估结果表明,Fine-SE 在多个评估指标上的表现都优于基线。尤其是在具有大量软件任务的工业项目中,Fine-SE 在评估指标上实现了更高的性能。与专家估算和其他先进的深度学习模型相比,Fine-SE 模型在工业项目中实现了显著的性能提升。实验结果揭示了在软件工作量估算中融合专家特征与语义特征的价值。
该研究成果已经被软件工程学科顶级旗舰国际会议 International Conference on Software Engineering( ICSE2024,CCF – A级会议 )全文录用。