Understanding and Leveraging Context in Code Review
Understanding and Leveraging Context in Code Review
批准号:
RGPIN-2021-03809
负责人:
Baysal, Olga
金额:
$2.55万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2021
资助国家:
加拿大
项目状态:
已结题
起止时间:
2021-01-01 至 2022-12-31
中文摘要
代码审查,即对源代码更改的手动检查,被认为是软件开发中最有效的QA实践之一,因为它提供了识别软件缺陷和提高软件质量的好处。许多软件公司(如Google、Microsoft、Shopify、Mozilla)都广泛使用了代码审查。然而,由于提交的投稿数量巨大,而且需要及时处理,许多代码审查过程已经变得更加轻量级和不那么正式。审查过程的这种发展增加了让缺陷进入代码的风险,因为审查人员无法检测到所有缺陷。未能检测到缺陷并因此降低软件质量的原因之一可以归因于对围绕开发人员工作环境的上下文的理解不足。软件开发环境中的上下文,正如Gail Murphy所定义的,是“关于正在开发的系统以及正在开发该系统的环境和过程的信息”。虽然以前的研究已经广泛地探索了什么因素,包括社会和技术因素,影响代码审查及其质量,但上下文的概念还没有被考虑。什么类型的上下文与代码评审相关?我们如何捕获、建模和解释各种上下文以支持代码评审任务?我们可以开发哪些工具来有效地使用上下文?该研究计划旨在理解和利用与代码审查相关的各种上下文,以提高其效率和效果。这项工作的目标有两个:1)通过从各种开发构件中提取、捕获和建模,更好地了解围绕代码审查过程和实践的上下文,以及2)利用该上下文来开发模型、技术和工具,以支持开发人员的日常任务和活动。这项研究将使加拿大软件行业在工作过程中更加有效,从而对其产生重大影响。开发人员在完成日常任务时将得到更好的支持,因为他们的工具将更好地适应与这些任务相关的不同类型的上下文。通过理解和利用代码审查中的上下文,我们的目标是提高过程的效率和有效性,通过减少软件缺陷来提高软件系统的质量,加快开发周期,并提高软件系统的整体可维护性。
英文摘要
Code review, i.e., manual inspection of source code changes, is recognized to be one of the most effective QA practices in software development as it delivers benefits of identifying software defects and improving software quality. Many software companies (e.g., Google, Microsoft, Shopify, Mozilla) have employed code reviews extensively. However, due to the volume of submitted contributions and the need to handle them in a timely manner, many code review processes have become more lightweight and less formal in nature. This evolution of the review process increases the risks of letting defects slip into the code as reviewers are unable to detect all of them. One of the reasons for this failure to detect defects and, as a result, reduced software quality, can be attributed to poor understanding of the context surrounding the developer's working environment. The context in a software development setting, as defined by Gail Murphy, is the "information about the system under development and the environment and process in which the system is being developed". While previous research has extensively explored what factors, both social and technical, impact code review and its quality, the notion of context has not been considered. What kinds of context are relevant to code review? How can we capture, model, and explain various kinds of context to support code review tasks? What tools can we develop to use the context efficiently? This research program aims at understanding and leveraging the kinds of context that are relevant to code review to improve its efficiency and effectiveness. The goal of this work is twofold: 1) to better understand the context surrounding code review processes and practice by extracting, capturing, and modelling it from various development artifacts, and 2) to leverage this context to develop models, techniques, and tools to support developer daily tasks and activities. This research will significantly impact the Canadian software industry by making it more effective in their work processes. Developers will be better supported in completing their daily tasks as their tools will be better tuned to different kinds of context that are relevant to these tasks. By understanding and leveraging context in code review, we aim at improving the efficiency and effectiveness of the process, increasing the quality of the software systems by reducing software defects, speeding up the development cycle, and improving the overall maintainability of the software systems.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Understanding and Leveraging Context in Code Review
-
批准号:RGPIN-2021-03809
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$2.55万
-
财政年份:2022
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2020
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2019
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2018
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2017
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2016
-
负责人:Baysal, Olga
-
依托单位:
Leveraging software analytics to maximize developer productivity during software maintenance.
-
批准号:RGPIN-2015-03873
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.31万
-
财政年份:2015
-
负责人:Baysal, Olga
-
依托单位:
Maximizing Developer Productivity by Personalizing Software Development
-
批准号:454598-2014
-
项目类别:Postdoctoral Fellowships
-
资助金额:$1.64万
-
财政年份:2014
-
负责人:Baysal, Olga
-
依托单位:
Data Mining, development intelligence, softwarre development, software repositories.
-
批准号:378391-2009
-
项目类别:Postgraduate Scholarships - Doctoral
-
资助金额:$0.76万
-
财政年份:2012
-
负责人:Baysal, Olga
-
依托单位:
Data Mining, development intelligence, softwarre development, software repositories.
-
批准号:378391-2009
-
项目类别:Postgraduate Scholarships - Doctoral
-
资助金额:$0.76万
-
财政年份:2011
-
负责人:Baysal, Olga
-
依托单位:
Data Mining, development intelligence, softwarre development, software repositories.
-
批准号:378391-2009
-
项目类别:Postgraduate Scholarships - Doctoral
-
资助金额:$2.04万
-
财政年份:2010
-
负责人:Baysal, Olga
-
依托单位:
Data Mining, development intelligence, softwarre development, software repositories.
-
批准号:378391-2009
-
项目类别:Postgraduate Scholarships - Doctoral
-
资助金额:$1.53万
-
财政年份:2009
-
负责人:Baysal, Olga
-
依托单位:
海外基金