Understanding and Leveraging Context in Code Review
理解和利用代码审查中的上下文
基本信息
- 批准号:RGPIN-2021-03809
- 负责人:
- 金额:$ 2.55万
- 依托单位:
- 依托单位国家:加拿大
- 项目类别:Discovery Grants Program - Individual
- 财政年份:2021
- 资助国家:加拿大
- 起止时间:2021-01-01 至 2022-12-31
- 项目状态:已结题
- 来源:
- 关键词:
项目摘要
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.
代码审查,即对源代码更改的手动检查,被认为是软件开发中最有效的QA实践之一,因为它提供了识别软件缺陷和提高软件质量的好处。许多软件公司(如Google、Microsoft、Shopify、Mozilla)都广泛使用了代码审查。然而,由于提交的投稿数量巨大,而且需要及时处理,许多代码审查过程已经变得更加轻量级和不那么正式。审查过程的这种发展增加了让缺陷进入代码的风险,因为审查人员无法检测到所有缺陷。未能检测到缺陷并因此降低软件质量的原因之一可以归因于对围绕开发人员工作环境的上下文的理解不足。软件开发环境中的上下文,正如Gail Murphy所定义的,是“关于正在开发的系统以及正在开发该系统的环境和过程的信息”。虽然以前的研究已经广泛地探索了什么因素,包括社会和技术因素,影响代码审查及其质量,但上下文的概念还没有被考虑。什么类型的上下文与代码评审相关?我们如何捕获、建模和解释各种上下文以支持代码评审任务?我们可以开发哪些工具来有效地使用上下文?该研究计划旨在理解和利用与代码审查相关的各种上下文,以提高其效率和效果。这项工作的目标有两个:1)通过从各种开发构件中提取、捕获和建模,更好地了解围绕代码审查过程和实践的上下文,以及2)利用该上下文来开发模型、技术和工具,以支持开发人员的日常任务和活动。这项研究将使加拿大软件行业在工作过程中更加有效,从而对其产生重大影响。开发人员在完成日常任务时将得到更好的支持,因为他们的工具将更好地适应与这些任务相关的不同类型的上下文。通过理解和利用代码审查中的上下文,我们的目标是提高过程的效率和有效性,通过减少软件缺陷来提高软件系统的质量,加快开发周期,并提高软件系统的整体可维护性。
项目成果
期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
数据更新时间:{{ journalArticles.updateTime }}
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Baysal, Olga其他文献
Studying Developer Reading Behavior on Stack Overflow during API Summarization Tasks
研究 API 汇总任务期间开发人员在 Stack Overflow 上的阅读行为
- DOI:
10.1109/saner48275.2020.9054848 - 发表时间:
2020 - 期刊:
- 影响因子:0
- 作者:
Saddler, Jonathan A.;Peterson, Cole S.;Sama, Sanjana;Nagaraj, Shruthi;Baysal, Olga;Guerrouj, Latifa;Sharif, Bonita - 通讯作者:
Sharif, Bonita
Baysal, Olga的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Baysal, Olga', 18)}}的其他基金
Understanding and Leveraging Context in Code Review
理解和利用代码审查中的上下文
- 批准号:
RGPIN-2021-03809 - 财政年份:2022
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2020
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2019
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2018
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2017
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2016
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging software analytics to maximize developer productivity during software maintenance.
利用软件分析在软件维护期间最大限度地提高开发人员的工作效率。
- 批准号:
RGPIN-2015-03873 - 财政年份:2015
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Maximizing Developer Productivity by Personalizing Software Development
通过个性化软件开发最大限度地提高开发人员的生产力
- 批准号:
454598-2014 - 财政年份:2014
- 资助金额:
$ 2.55万 - 项目类别:
Postdoctoral Fellowships
Data Mining, development intelligence, softwarre development, software repositories.
数据挖掘、开发智能、软件开发、软件存储库。
- 批准号:
378391-2009 - 财政年份:2012
- 资助金额:
$ 2.55万 - 项目类别:
Postgraduate Scholarships - Doctoral
Data Mining, development intelligence, softwarre development, software repositories.
数据挖掘、开发智能、软件开发、软件存储库。
- 批准号:
378391-2009 - 财政年份:2011
- 资助金额:
$ 2.55万 - 项目类别:
Postgraduate Scholarships - Doctoral
相似海外基金
Leveraging the wisdom of the crowd to build an ecosystem of software ecosystems in the context of polyglot microservices-based applications
在基于多语言微服务的应用程序背景下,利用人群的智慧构建软件生态系统的生态系统
- 批准号:
RGPIN-2020-06411 - 财政年份:2022
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Understanding and Leveraging Context in Code Review
理解和利用代码审查中的上下文
- 批准号:
RGPIN-2021-03809 - 财政年份:2022
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging Context in Open Software Development Ecosystems
利用开放软件开发生态系统中的上下文
- 批准号:
RGPIN-2016-05257 - 财政年份:2022
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging Context in Open Software Development Ecosystems
利用开放软件开发生态系统中的上下文
- 批准号:
RGPIN-2016-05257 - 财政年份:2021
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Characterizing the Complexity of Advanced Cancer Pain in the Home Context by Leveraging Smart Health Technology
利用智能健康技术表征家庭中晚期癌症疼痛的复杂性
- 批准号:
10518410 - 财政年份:2021
- 资助金额:
$ 2.55万 - 项目类别:
Characterizing the Complexity of Advanced Cancer Pain in the Home Context by Leveraging Smart Health Technology
利用智能健康技术表征家庭中晚期癌症疼痛的复杂性
- 批准号:
10096693 - 财政年份:2021
- 资助金额:
$ 2.55万 - 项目类别:
Leveraging the wisdom of the crowd to build an ecosystem of software ecosystems in the context of polyglot microservices-based applications
在基于多语言微服务的应用程序背景下,利用人群的智慧构建软件生态系统的生态系统
- 批准号:
RGPIN-2020-06411 - 财政年份:2021
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging the wisdom of the crowd to build an ecosystem of software ecosystems in the context of polyglot microservices-based applications
在基于多语言微服务的应用程序背景下,利用人群的智慧构建软件生态系统的生态系统
- 批准号:
RGPIN-2020-06411 - 财政年份:2020
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Grants Program - Individual
Leveraging the wisdom of the crowd to build an ecosystem of software ecosystems in the context of polyglot microservices-based applications
在基于多语言微服务的应用程序背景下,利用人群的智慧构建软件生态系统的生态系统
- 批准号:
DGECR-2020-00306 - 财政年份:2020
- 资助金额:
$ 2.55万 - 项目类别:
Discovery Launch Supplement
Leveraging Social Networks and Linkage to Care to Foster Healthy Aging in a Low-Income Context
利用社交网络和护理联系促进低收入背景下的健康老龄化
- 批准号:
10264171 - 财政年份:2020
- 资助金额:
$ 2.55万 - 项目类别: