Static Code Analysis Engine for Architectural Flaw Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional program code testing methods are inadequate for identifying architectural flaws and defects in complex code structures, particularly in large-scale code development where disparate actions by multiple developers can lead to cascading issues, and they are not effective in real-time defect detection and remediation.

Innovation Solution

A system and method for static program code analysis that includes a rule-based anomaly detection engine to capture application logs, detect anti-pattern conflicts, and remediate defects by constructing a layer transition map and using a machine learning-based anomaly detection model to identify and correct architectural flaws dynamically.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional program code testing methods are used, then the testing process is simple and familiar, but they are inadequate for identifying architectural flaws and defects in complex code structures

Engineering Contradiction:
Improvedefect detection capabilityVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system segments the code analysis process into multiple specialized modules: application log scanner, class file detector, execution sequence determiner, layer transition map constructor, and anomaly detection engine. Each module handles a specific aspect of the analysis, enabling comprehensive architectural flaw detection while maintaining manageable system complexity through modular design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces intermediary data structures including application session logs, class files, execution sequences, and layer transition maps as intermediaries between the input code and final defect detection. These intermediaries transform complex code structures into analyzable formats, enabling precise architectural flaw identification without requiring the entire system to directly process all code complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple developers work on the same code simultaneously, then code development productivity increases, but architectural flaws and conflicts in the code increase

Engineering Contradiction:
Improvecode development speedVSAvoidcode architectural integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements continuous feedback by scanning application logs generated during code construction and development, dynamically detecting anti-pattern conflicts as they occur. This real-time feedback mechanism monitors code changes made by multiple developers and immediately identifies architectural flaws, allowing for corrective action before defects compound, thus maintaining code integrity despite high development productivity.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs preliminary analysis by constructing layer transition maps and determining execution sequences before final code deployment. By proactively identifying potential architectural conflicts and anti-patterns in advance, the system prevents defects from occurring rather than merely detecting them after development, ensuring code reliability even when multiple developers work simultaneously.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If traditional test cases are used for defect detection, then the testing approach is straightforward, but they are not effective in real-time defect detection and remediation

Engineering Contradiction:
Improvedefect detection timeVSAvoidautomated analysis capability
Core Design Contradiction:
Loss of timeVSExtent of automation

Solution Approach 1:

The system replaces traditional mechanical test case execution with automated electronic analysis mechanisms. The anomaly detection engine uses computer-implemented algorithms to automatically scan application logs, detect anti-patterns, and identify architectural flaws without human intervention. This automation enables real-time defect detection during code construction, eliminating the time loss associated with manual test case execution and providing immediate feedback for remediation.

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

4Measurement precision

If static program code analysis is performed to detect architectural flaws, then defect detection accuracy improves, but the time and resource intensity increases

Engineering Contradiction:
Improvearchitectural flaw detection accuracyVSAvoidanalysis time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system applies partial analysis by focusing specifically on architectural-level patterns and anti-patterns rather than analyzing every detail of the code. The layer transition map constructor and execution sequence determiner selectively examine only the portions of code relevant to architectural integrity, achieving high detection accuracy for architectural flaws without the excessive time and resource investment required for comprehensive code analysis.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11556444B1Electronic system for static program code analysis and detection of architectural flaws
Publication Date: 2023.01.17 BANK OF AMERICA CORP
  • US11556444B1 patent drawing
  • US11556444B1 patent drawing
  • US11556444B1 patent drawing

AI summary

Embodiments of the invention are directed to static program code analysis and detection of architectural flaws. The system provides a rule-based anomaly detection engine structured to capture application logs during construction of technology program code and dynamically detect anti-pattern conflicts to remediate defects in the technology program code. In particular, the system receives a request to perform defect analysis of a first technology program code. In response, the system constructs a first layer transition map based on mapping each of a plurality of first classes associated with the first technology program code to one or more application layers. The system may then determine, via an anomaly detection engine component, one or more anomalies associated with the first technology program code.