Code Review Service Using Visual Query Language

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of software development has led to challenges in administering and managing software, particularly due to increased complexity and the need for reliable and maintainable code quality, which is hindered by inconsistent coding practices and readability issues.

Innovation Solution

A code reviewer service using a Visual Query Language (VQL) for graph-based representation of code review rules, allowing for intuitive creation and editing of rules, and incorporating machine learning to automatically generate rules from proprietary best practices, reducing manual effort and enhancing security and code quality checks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual code review processes are used to ensure code quality, then code reliability can be maintained through human expertise, but the complexity of administering and managing software increases and productivity decreases

Engineering Contradiction:
Improvecode qualityVSAvoidsoftware administration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system enables code to be automatically reviewed and evaluated through machine learning models and automated rule engines, eliminating the need for manual administrative intervention in code review processes while maintaining quality standards

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Manual code review processes are replaced with automated computational systems including static analysis tools, machine learning-based detectors, and rule-based evaluation systems that automatically assess code quality without human intervention

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Reliability

If comprehensive code review rules are implemented to improve code quality and security, then reliability and security are enhanced, but the complexity of rule creation and maintenance increases

Engineering Contradiction:
Improvecode securityVSAvoidrule management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system automatically generates code review rules by analyzing proprietary best practices and organizational coding standards, eliminating the need for manual rule creation while adapting rules dynamically based on detected code patterns and security requirements

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system pre-configures detection rules and evaluation criteria based on established best practices before code review begins, allowing comprehensive security and quality checks to be performed automatically without requiring manual rule setup for each review

Inventive Principle:
Principle #10Preliminary action

3Productivity

If automated code review systems are used to reduce manual effort, then productivity increases, but the ability to detect and measure code quality issues may be insufficient without sophisticated algorithms

Engineering Contradiction:
Improvecode review efficiencyVSAvoidcode quality detection capability
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

Human code review expertise is replaced with machine learning models trained on proprietary best practices and historical code data, providing automated detection of code quality issues with consistency and scalability that exceeds manual review capabilities

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

Machine learning detectors and static analysis tools serve as intermediaries between the code being reviewed and the final quality assessment, automatically identifying and measuring code quality issues through sophisticated pattern recognition and analysis

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12045609B1Rule creation for code analysis
Publication Date: 2024.07.23 AMAZON TECH INC
  • US12045609B1 patent drawing
  • US12045609B1 patent drawing
  • US12045609B1 patent drawing

AI summary

Techniques for generating custom rules are described. For example, a system to receive at least one request to create rules based on a policy and code repository files stored by the storage service; analyze the policy to generate a collection of rule candidates; analyze the code repository files to identify labeled code examples that either conform or do not conform to the rule candidates; receive a selection of the labeled code examples; and synthesize at least one rule that includes a precondition that specifies applicability to the selected labeled code examples and a postcondition that expresses a check to be performed contingent on the precondition being satisfied is at least described.