Search

US-20260126988-A1 - SYSTEMS AND METHODS FOR IMPROVING THE EFFECTIVENESS OF CODE REVIEWS

US20260126988A1US 20260126988 A1US20260126988 A1US 20260126988A1US-20260126988-A1

Abstract

Systems and methods for improving the effectiveness of code reviews are disclosed. A method may include: receiving, from a reviewer computer program for a reviewer, a request for code to review; retrieving the code from a code repository; identifying instances of harmless error code, wherein the instances of harmless error code does not impact execution of the code when embedded in the code; embedding the instances of harmless error code in the code; providing the code to the reviewer computer program; receiving a review of the code, wherein the review identifies a number of the instances of harmless error code identified by the reviewer; generating a score for the review based on the number of the instances of harmless error code identified by the reviewer; and identifying additional training for the reviewer based on the number of the instances of harmless error code identified by the reviewer.

Inventors

  • Gerald RADACK
  • Ravi KURUGANTHY
  • Venkata Mohit TAMANAMPUDI

Assignees

  • JPMORGAN CHASE BANK, N.A.

Dates

Publication Date
20260507
Application Date
20250411

Claims (20)

  1. 1 . A method, comprising: receiving, by a code review computer program and from a reviewer computer program for a reviewer, a request for code developed by a developer to review; retrieving, by the code review computer program, the code from a code repository; identifying, by the code review computer program, instances of harmless error code, wherein the instances of harmless error code does not impact execution of the code when embedded in the code; embedding, by the code review computer program, the instances of harmless error code in the code; providing, by the code review computer program, the code with the instances of harmless error code embedded therein to the reviewer computer program; receiving, by the code review computer program, a review of the code with the instances of harmless error code embedded therein, wherein the review identifies a number of the instances of harmless error code identified by the reviewer; generating, by the code review computer program, a score for the review based on the number of the instances of harmless error code identified by the reviewer; and identifying, by the code review computer program, additional training for the reviewer based on the number of the instances of harmless error code identified by the reviewer.
  2. 2 . The method of claim 1 , wherein the instances of harmless error code are identified based on a history of reviews by the reviewer.
  3. 3 . The method of claim 1 , wherein the instances of harmless error code comprise code comprising misleading variable names, code that will never be executed, code comprising a misuse of an application programming interface function, code comprising incorrect method names, code that comprises irrelevant conditional checks, and/or violations of company standards of coding best practices.
  4. 4 . The method of claim 1 , wherein the instances of harmless error code are embedded at random locations.
  5. 5 . The method of claim 1 , wherein the instances of harmless error code are embedded at locations predicted by a machine learning algorithm or at locations identified by a large language model.
  6. 6 . The method of claim 1 , further comprising: returning, by the code review computer program, the code with the instances of harmless error code embedded therein to the code repository; wherein the reviewer computer program accesses the code with the instances of harmless error code embedded therein from the code repository.
  7. 7 . The method of claim 1 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a sandbox environment.
  8. 8 . The method of claim 1 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a wrapper.
  9. 9 . A system, comprising: a code repository comprising code; a harmless error code database comprising a plurality of instances of harmless error code; a reviewer electronic device for a reviewer executing a reviewer computer program; and an electronic device executing a code review computer program that is configured to receive, from the reviewer computer program, a request for code developed by a developer to review, to retrieve the code from the code repository, to identify instances of harmless error code in the harmless error code database, wherein the instances of harmless error code does not impact execution of the code when embedded in the code, to embed the instances of harmless error code in the code, to provide the code with the instances of harmless error code embedded therein to the reviewer computer program, to receive a review of the code with the instances of harmless error code embedded therein, wherein the review identifies a number of the instances of harmless error code identified by the reviewer, to generate a score for the review based on the number of the instances of harmless error code identified by the reviewer, and to identify additional training for the reviewer based on the number of the instances of harmless error code identified by the reviewer.
  10. 10 . The system of claim 9 , wherein the instances of harmless error code are identified based on a history of reviews by the reviewer.
  11. 11 . The system of claim 9 , wherein the instances of harmless error code comprise code comprising misleading variable names, code that will never be executed, code comprising a misuse of an application programming interface function, code comprising incorrect method names, code that comprises irrelevant conditional checks, and/or violations of company standards of coding best practices.
  12. 12 . The system of claim 9 , wherein the instances of harmless error code are embedded at random locations.
  13. 13 . The system of claim 9 , wherein the instances of harmless error code are embedded at locations predicted by a machine learning algorithm or at locations identified by a large language model.
  14. 14 . The system of claim 9 , wherein the code review computer program is further configured to return the code with the instances of harmless error code embedded therein to the code repository, and the reviewer computer program is configured to access the code with the instances of harmless error code embedded therein from the code repository.
  15. 15 . The system of claim 9 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a sandbox environment.
  16. 16 . The system of claim 9 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a wrapper.
  17. 17 . A non-transitory computer readable storage medium, including instructions stored thereon, which when read and executed by one or more computer processors, cause the one or more computer processors to perform steps comprising: receiving, from a reviewer computer program for a reviewer, a request for code developed by a developer to review; retrieving the code from a code repository; identifying, based on a history of reviews by the reviewer, instances of harmless error code, wherein the instances of harmless error code does not impact execution of the code when embedded in the code, wherein the instances of harmless error code comprise code comprising misleading variable names, code that will never be executed, code comprising a misuse of an application programming interface function, code comprising incorrect method names, code that comprises irrelevant conditional checks, and/or violations of company standards of coding best practices; embedding the instances of harmless error code in the code, wherein the instances of harmless error code are embedded at random locations, at locations predicted by a machine learning algorithm, or at locations identified by a large language model; providing the code with the instances of harmless error code embedded therein to the reviewer computer program; receiving a review of the code with the instances of harmless error code embedded therein, wherein the review identifies a number of the instances of harmless error code identified by the reviewer; generating a score for the review based on the number of the instances of harmless error code identified by the reviewer; and identifying additional training for the reviewer based on the number of the instances of harmless error code identified by the reviewer.
  18. 18 . The non-transitory computer readable storage medium of claim 17 , further including instructions stored thereon, which when read and executed by the one or more computer processors, cause the one or more computer processors to perform steps comprising: returning the code with the instances of harmless error code embedded therein to the code repository; wherein the reviewer computer program accesses the code with the instances of harmless error code embedded therein from the code repository.
  19. 19 . The non-transitory computer readable storage medium of claim 17 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a sandbox environment.
  20. 20 . The non-transitory computer readable storage medium of claim 17 , wherein the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a wrapper.

Description

RELATED APPLICATIONS This application claims the benefit of, and priority to, U.S. Provisional Patent Application Ser. No. 63/715,236, filed November 1, 2024, the disclosure of which is hereby incorporated, by reference, in its entirety. BACKGROUND OF THE INVENTION 1. Field of the Invention Embodiments relate to systems and methods for improving the effectiveness of code reviews. 2. Description of the Related Art Code reviews are an important step in the software development process. Code reviews have many benefits for both the organization and individuals. However, many code reviews involve “rubber stamping,” which destroys the benefits of the code reviews. “Rubber stamping” is the practice of approving a pull request (PR) without spending much or any time studying the code. In the worst case, a reviewer approves a PR without looking at the code at all and leaves no comments. Inadequate code reviews risk poor quality or malicious code going into production. SUMMARY OF THE INVENTION Systems and methods for improving the effectiveness of code reviews are disclosed. In one embodiment, a method may include: (1) receiving, by a code review computer program and from a reviewer computer program for a reviewer, a request for code developed by a developer to review; (2) retrieving, by the code review computer program, the code from a code repository; (3) identifying, by the code review computer program, instances of harmless error code, wherein the instances of harmless error code does not impact execution of the code when embedded in the code; (4) embedding, by the code review computer program, the instances of harmless error code in the code; (5) providing, by the code review computer program, the code with the instances of harmless error code embedded therein to the reviewer computer program; (6) receiving, by the code review computer program, a review of the code with the instances of harmless error code embedded therein, wherein the review identifies a number of the instances of harmless error code identified by the reviewer; (7) generating, by the code review computer program, a score for the review based on the number of the instances of harmless error code identified by the reviewer; and (8) identifying, by the code review computer program, additional training for the reviewer based on the number of the instances of harmless error code identified by the reviewer. In one embodiment, the instances of harmless error code are identified based on a history of reviews by the reviewer. In one embodiment, the instances of harmless error code comprise code comprising misleading variable names, code that will never be executed, code comprising a misuse of an application programming interface function, code comprising incorrect method names, code that comprises irrelevant conditional checks, and/or violations of company standards of coding best practices. In one embodiment, the instances of harmless error code are embedded at random locations. In one embodiment, the instances of harmless error code are embedded at locations predicted by a machine learning algorithm or at locations identified by a large language model. In one embodiment, the method may also include returning, by the code review computer program, the code with the instances of harmless error code embedded therein to the code repository; wherein the reviewer computer program accesses the code with the instances of harmless error code embedded therein from the code repository. In one embodiment, the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a sandbox environment. In one embodiment, the instances of harmless error code embedded therein to the code repository are provided to the reviewer computer program in a wrapper. According to another embodiment, a system may include: a code repository comprising code; a harmless error code database comprising a plurality of instances of harmless error code; a reviewer electronic device for a reviewer executing a reviewer computer program; and an electronic device executing a code review computer program that is configured to receive, from the reviewer computer program, a request for code developed by a developer to review, to retrieve the code from the code repository, to identify instances of harmless error code in the harmless error code database, wherein the instances of harmless error code does not impact execution of the code when embedded in the code, to embed the instances of harmless error code in the code, to provide the code with the instances of harmless error code embedded therein to the reviewer computer program, to receive a review of the code with the instances of harmless error code embedded therein, wherein the review identifies a number of the instances of harmless error code identified by the reviewer, to generate a score for the review based on the number of the instances of harmless error code identified by the reviewer