Software Test Coverage via Real-Time User Activity Tracing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software products often experience degraded performance due to users interacting with them in unforeseen ways, as existing testing methods fail to account for all possible usage paths, leading to a gap between expected and actual usage patterns.
Innovation Solution
A software application is configured to determine both expected and observed execution maps, comparing them to create a disparity map that highlights untested or under-tested paths, allowing for adjustments to better match user behavior and improve performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If software testing is performed using predetermined test paths, then testing coverage of expected usage scenarios is improved, but the ability to detect unintended usage patterns deteriorates
Solution Approach 1:
The system implements feedback by continuously monitoring actual user interactions with the software and comparing them against expected test paths. This feedback loop enables the system to identify deviations from predetermined usage scenarios, allowing developers to detect unintended usage patterns that were not covered by traditional testing methods.
Solution Approach 2:
The system transitions from static predetermined test paths to dynamic monitoring of actual user behavior. By adaptively tracking real-time user interactions and comparing them against expected paths, the system can dynamically identify unintended usage patterns without requiring explicit programming of all possible scenarios.
2Device complexity
If the software product is designed to handle only expected usage paths, then development complexity is reduced, but reliability under unexpected conditions deteriorates
Solution Approach 1:
The system performs preliminary monitoring and analysis of actual user interactions to identify unintended usage patterns before they cause reliability issues. By detecting and analyzing deviations from expected paths in advance, the system can prepare appropriate responses or alerts without requiring complex pre-programming of all possible unexpected scenarios.
3Loss of time
If traditional software testing methods are used, then testing time for predetermined paths is reduced, but the gap between expected and actual usage patterns increases
Solution Approach 1:
The system enables self-service by automatically monitoring and collecting data on actual user interactions without requiring additional manual testing effort. The monitoring system autonomously tracks user behavior, compares it against expected paths, and generates reports on deviations, eliminating the need for separate manual analysis while reducing the gap between expected and actual usage patterns.
Data Source
AI summary
A computing system includes persistent storage containing a plurality of groups of software instructions, wherein each respective group is linked with at least one other group. The computing system also includes a software application configured to perform operations, including determining an expected execution map representing expected paths that are expected to be followed between linked groups of software instructions. The operations also include monitoring interactions of a user with the plurality of groups, and based on the monitoring, determining an observed execution map representing observed paths that the user has followed between the linked groups of software instructions. The operations further include determining a disparity map representing a disparity between the expected paths and the observed paths by comparing the expected execution map to the observed execution map, and displaying the expected execution map, the observed execution map, and/or the disparity map.


