论文部分内容阅读
软件工程教育的主要目标之一是培养学生建立在工业环境中协作开发特定规模软件的能力。为了实现这一目标,一个重要的方法就是培训学生使用现代工业开发环境中的协作开发工具。而先前的研究表明,最近的毕业生在使用此类配置管理系统方面有困难。为了减少课程实践与工业预期之间的差距,我们寻求在学生课程实践中部署现代工业的协作开发模式——基于Pull-Request的开发模式(简称P-R模式)。然而有别于现代工业开发模式,课程实践教学环境下的协作开发毕竟有其自身不同的特性,如何将P-R模式应用于课程实践教学中支持协作开发?学生在应用中会面临哪些挑战?我们又应如何改进?这些问题都是P-R模式应用于课程实践教学中亟需解决的问题。本文面向软件工程课程实践教学,从学生的角度出发,深入研究课程实践教学环境下应用P-R模式的不同特性,探索高效汇聚贡献的最佳实践。论文的主要工作总结如下:首先,我们调查分析了P-R模式在课程实践教学中应用的实际效果。为了将P-R模式应用于课程实践教学以支持学生的协作开发,我们构建了P-R模式的执行环境,并将其集成到Trustie平台。通过这个平台我们进一步做了调查分析,评估学生应用P-R模式进行协作开发的实际效果,定性和定量分析的结果显示了PR模式应用于课程实践教学环境下的一些不同特性。其次,我们研究了课程实践教学环境下贡献审阅人的推荐问题,设计了基于五种学生开发行为特征的贡献审阅人推荐方法。结合先前调查分析的结果,我们从实际问题入手,选取了五个方面具有代表性的学生开发行为特征共同衡量他们之间相关度,然后利用不同的方法计算出这些相关度得分,继而通过综合所有相关度得分来为新提交的Pull request(简称PR)推荐合适的贡献审阅人。最后,我们选取了Trustie平台上应用P-R模式协作开发的课程实践项目作为测试和评估数据的来源,分阶段对贡献审阅人推荐方法进行了测试,并利用特征匹配的方法初步验证了该推荐方法的有效性。