Automated Patch Urgency Assessment via Execution Trace Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for assessing the urgency of patching defective third-party components in software applications rely on human assessment, which can lead to false positives and negatives due to abstract descriptions of defects, resulting in inefficient and costly maintenance processes.
Innovation Solution
An automated system that identifies defective programming constructs altered by a patch, collects execution traces of the software application, and evaluates whether these constructs are invoked during application use to determine the urgency of patch installation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If human assessment is used to evaluate patch urgency based on abstract defect descriptions, then expert knowledge can be applied, but false positives and false negatives occur leading to reduced reliability
Solution Approach 1:
The patent replaces the mechanical human assessment system with an automated computational system that uses execution trace analysis and code comparison algorithms to evaluate patch urgency, eliminating human error and subjectivity in the assessment process
Solution Approach 2:
The patent creates a digital copy of the application's execution behavior through execution traces, which are then analyzed to determine whether defective code paths are actually invoked, providing objective evidence for patch urgency assessment
2Reliability
If patches are installed for all defective third-party components, then system security is improved, but maintenance cost and complexity increase significantly
Solution Approach 1:
The patent applies local quality by assessing each defective component's relevance to the specific application context individually, using execution trace analysis to determine which components are actually invoked, thereby prioritizing patches locally rather than applying them uniformly across all components
Solution Approach 2:
The patent segments the maintenance problem by breaking down the assessment of patch urgency into independent analyzable units (execution traces, code constructs, defect descriptions), allowing systematic evaluation and prioritization of individual patches based on their specific impact
3Reliability
If patches are installed for all defective third-party components, then system security is improved, but maintenance cost increases
Solution Approach 1:
The patent applies partial action by installing patches only for those defective components that are actually invoked in the application context, rather than installing all available patches, thereby reducing maintenance costs while maintaining adequate security for the specific application
4Productivity
If automated systems are implemented to assess patch relevance, then productivity is improved, but system complexity increases
Solution Approach 1:
The patent implements a universal automated assessment system that handles multiple types of defects, components, and application contexts through a single integrated platform using execution trace analysis, thereby improving productivity while managing complexity through consolidation
Data Source
AI summary
Automated systems and methods for assessing the urgency of installing a patch for a component of a software application are described. The systems and methods involve identifying a set of defective programming constructs of the component that are altered by the patch, collecting execution traces of programming constructs of the software application and programming constructs of the component in a context of application use, and evaluating the execution traces to determine whether one or more defective programming constructs of the component are invoked in the context of application use.


