Shift-Left Testing Automation Pipeline for Software Quality

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional software development practices are inefficient and slow due to inadequate automated and continuous testing, leading to longer feature delivery times and increased production incidents from code defects, as they fail to handle changing requirements and expectations effectively.

Innovation Solution

Implementing shift-left testing systems and methods that include automated pipelines for unit, component, contract, integration, and end-to-end testing, along with security scanning and production validation, to identify and address defects early in the development process, utilizing a bot trained with historical data to isolate failures and improve testing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional software development practices are used without automated testing, then development speed may be maintained, but production incidents increase due to code defects and insufficient testing

Engineering Contradiction:
Improvecode qualityVSAvoidfeature delivery speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements testing activities (unit tests, component tests, integration tests, end-to-end tests) before code deployment to production. This preliminary action ensures defects are detected early in the development lifecycle, improving code quality without significantly impacting delivery speed due to the automated nature of the testing pipeline.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces manual testing with automated testing systems. The automation pipeline executes various test types automatically, substituting human effort with machine-based testing. This substitution maintains high testing coverage and reliability while preserving development speed through parallel execution and integration with version control systems.

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

2Reliability

If automated testing is implemented continuously, then code quality and defect detection improve, but time consumption and cost increase

Engineering Contradiction:
Improvetesting coverageVSAvoidtesting execution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides testing into multiple segments: unit tests for individual components, component tests for isolated components, integration tests for component interactions, and end-to-end tests for complete workflows. This segmentation allows parallel execution of independent test suites, reducing total testing time while maintaining comprehensive coverage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements periodic testing at different stages of the development lifecycle. Testing is triggered at specific points (e.g., on code commit, before deployment) rather than continuously, optimizing resource usage while ensuring adequate coverage. The automation pipeline schedules and executes tests periodically based on development milestones.

Inventive Principle:
Principle #19Periodic action

3Reliability

If comprehensive automated testing is implemented, then defect detection improves, but device complexity and setup cost increase

Engineering Contradiction:
Improvedefect detection capabilityVSAvoidautomation pipeline complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a universal automation pipeline that handles multiple test types (unit, component, integration, end-to-end) and multiple programming languages through a single framework. This multi-functional system reduces overall complexity by consolidating testing infrastructure rather than maintaining separate systems for each test type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an intermediary layer (the automation pipeline framework) that mediates between code repositories and testing execution. This intermediary abstracts the complexity of test management, providing a standardized interface for initiating and monitoring tests while handling the intricate details of test orchestration, environment setup, and result aggregation automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20230359746A1Systems and methods for shift left testing
Publication Date: 2023.11.09 JPMORGAN CHASE BANK NA
  • US20230359746A1 patent drawing
  • US20230359746A1 patent drawing
  • US20230359746A1 patent drawing

AI summary

Systems and methods for shift-left testing are disclosed. In one embodiment, a method may include an automation pipeline: receiving code for shift-left testing; testing the code with unit tests; testing a plurality of components of the code with component tests; testing the code with contract tests; testing the code with integration tests; deploying the code to an end-to-end testing environment and testing the code with end-to-end automation tests; scanning the code for security vulnerabilities; deploying the code to an end-to-end testing environment and performing production validation testing on the code; and deploying the code to a production environment.