Automated Architecture Drift Detection via Domain Specific Language

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for generating and maintaining software application architecture models are manual, cumbersome, and lack the ability to automatically track architecture drift between current and progressive states, making it difficult to manage changes and detect architectural discrepancies.

Innovation Solution

A system and method for auto-generating application-specific DSL components, transforming them into model objects, and generating current and progressive state architectures, which includes detecting architecture drift by comparing these states using a visual interface and Domain Specific Language (DSL) components sourced from repositories.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual methods are used to generate and maintain architecture models, then flexibility and adaptability are maintained, but productivity and time efficiency deteriorate significantly

Engineering Contradiction:
Improvearchitecture model generation speedVSAvoidmanual intervention level
Core Design Contradiction:
ProductivityVSExtent of automation

Solution Approach 1:

The system enables self-service automation where the architecture modeling system automatically generates, updates, and maintains architecture models by consuming artifacts from development tools. The system monitors code changes, automatically updates architecture models, and detects drift without requiring manual intervention, thus resolving the contradiction between productivity and automation extent.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces manual mechanical processes of architecture modeling with automated computational systems. The system uses code parsers, automated model generators, and drift detection algorithms to substitute manual model creation and maintenance activities, significantly improving productivity while reducing manual intervention requirements.

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

2Manufacturing precision

If manual architecture model updates are performed after each change, then model accuracy is maintained, but time consumption and labor effort increase

Engineering Contradiction:
Improvearchitecture model accuracyVSAvoidmodel update time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by establishing automated monitoring and parsing mechanisms before changes occur. The system pre-configures code parsers and change detection algorithms that automatically trigger model updates when code changes are detected, eliminating the need for manual review and significantly reducing update time while maintaining accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements continuous feedback loops where the system monitors code changes, automatically updates architecture models, and detects drift conditions. This closed-loop feedback mechanism ensures model accuracy is maintained through continuous synchronization with actual code state, eliminating time-consuming manual verification processes.

Inventive Principle:
Principle #23Feedback

3Difficulty of detecting and measuring

If comprehensive architecture drift tracking is implemented, then detection capability is improved, but system complexity increases

Engineering Contradiction:
Improvearchitecture drift detection capabilityVSAvoidtracking system complexity
Core Design Contradiction:
Difficulty of detecting and measuringVSDevice complexity

Solution Approach 1:

The system extracts and isolates the drift detection function as a separate, focused module that operates independently from the main architecture modeling system. By extracting the detection capability and making it a specialized component that consumes existing model artifacts, the system achieves comprehensive drift tracking without proportionally increasing overall system complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary layer of standardized artifacts and data formats that mediate between code changes and drift detection. This intermediary artifact layer simplifies the complexity by providing a standardized interface for change detection and model comparison, making the drift detection capability more manageable and less complex.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20240303044A1Framework for generation of architecture models based on domain specific language and tracking architecture drift
Publication Date: 2024.09.12 JPMORGAN CHASE BANK NA
  • US20240303044A1 patent drawing
  • US20240303044A1 patent drawing
  • US20240303044A1 patent drawing

AI summary

A method and a system for automatic generation of application architecture models and tracking of architecture drift are provided. The present solution provides a framework that allows a centralized architecture team to create a base Domain Specific Language (base-DSL) for any software application, where this base-DSL includes basic components that may be required to generate a model for any application. The framework of the present disclosure also provides a means to enrich base-DSLs for any specific application to generate application-specific DSL. Further, the framework provides a visual interface for product architects to create a to-be or progressive state architecture using the application-specific DSL. The framework is also able to generate a current state architecture of an application using application metadata and application-specific DSL. The framework is also able to detect architecture drifts between current and to-be or progressive architecture states of an application.