Dynamic Risk-Based Testing Regime for Software Code Integrity

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In collaborative software development environments, managing build and program control is challenging due to inflexible access control systems and inadequate automated testing regimes, which either frustrate experienced members with excessive restrictions or allow inexperienced members to introduce errors with too much freedom.

Innovation Solution

A processor-implemented method calculates a user's risk factor based on previous activities and situational conditions to dynamically determine a testing regime, adapting the level of testing to ensure program code integrity without being too strict or lax.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If predefined user categories with rigid access control are used, then access control is simplified, but flexibility and adaptability to individual user needs deteriorates

Engineering Contradiction:
Improveaccess control system complexityVSAvoidadaptability to individual user needs
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent applies dynamics by transitioning from static predefined user categories to a dynamic risk assessment system. The system continuously calculates risk factors based on user behavior patterns, code change history, and situational context, automatically adjusting access privileges and testing regimes in real-time. This dynamic approach resolves the contradiction by maintaining simplicity while achieving high adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of user classification from fixed categories to continuous risk scores. Instead of assigning users to discrete categories with rigid rules, the system uses numerical risk factors that can take any value within a range. This parameter transformation enables fine-grained control of access privileges while avoiding the complexity of managing multiple predefined categories.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If excessive restrictions are imposed on access control, then code integrity is improved, but ease of operation and user experience deteriorates

Engineering Contradiction:
Improvecode integrityVSAvoidease of use for experienced members
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements feedback mechanisms where the system continuously monitors user behavior, code changes, and testing outcomes to refine risk assessments. Experienced members receive feedback that validates their trusted status, allowing them to work with minimal restrictions. The system automatically adjusts restrictions based on real-time performance data, resolving the contradiction between code integrity and ease of operation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent applies local quality by tailoring access control and testing requirements to individual users based on their specific risk profiles and behavior patterns. Instead of applying uniform restrictions to all users, the system customizes control parameters for each user based on their historical performance and current context, maintaining code integrity while preserving ease of operation for trusted members.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If inadequate restrictions are imposed on access control, then ease of operation is improved, but reliability and code quality deteriorates

Engineering Contradiction:
Improveease of use for inexperienced membersVSAvoidcode quality
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies preliminary action by implementing automated testing regimes that are triggered before code changes are merged. The system proactively identifies potential issues through risk-based test selection and execution, preventing bad code from entering the system. This preliminary testing action protects code quality while maintaining ease of operation for inexperienced members who can focus on development rather than manual testing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces automated testing as an intermediary between code development and deployment. The testing regime acts as a mediator that filters and validates code changes, protecting the main codebase from inexperienced users while allowing them to work with minimal restrictions. This intermediary layer resolves the contradiction by absorbing the complexity of quality control away from individual users.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Device complexity

If a fixed testing regime is applied to all users, then implementation simplicity is improved, but adaptability to different user skill levels and situations deteriorates

Engineering Contradiction:
Improvetesting regime implementation complexityVSAvoidadaptability to user skill levels
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent transforms the testing regime from a fixed binary state (pass/fail) to a dynamic continuum based on risk factors. The system adjusts testing depth, scope, and type according to calculated risk levels, enabling a single flexible testing framework to adapt to different user skill levels and situations without requiring multiple separate regimes.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent creates a universal testing regime that serves multiple functions: it provides basic validation for all users while simultaneously offering enhanced testing for high-risk scenarios. The single testing framework handles both routine and complex testing needs through risk-based configuration, eliminating the need for separate testing regimes for different user categories.

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

Data Source

PatentUS11366745B2Testing program code created in a development system
Publication Date: 2022.06.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11366745B2 patent drawing
  • US11366745B2 patent drawing
  • US11366745B2 patent drawing

AI summary

A processor-implemented method, system, and/or computer program product determines a testing regime for program code created in a development system. A risk factor of a user of the development system is calculated based on information relating to previous activities of the user. The calculated risk factor, which describes a likelihood of the user damaging the development system, is used to determine a testing regime for testing program code.