Virtual Hardware Components for Parallel Software Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional product development processes require software development to wait for the completion of hardware development, leading to increased time and economic costs due to the need for manufacturing and maintaining multiple hardware engineering boards for software testing, which can also result in re-execution of hardware development if issues are found during testing.
Innovation Solution
A method and computing device that provide virtual hardware components to simulate the behavior of actual hardware components, allowing for parallel software development and testing without the need for physical hardware, enabling the simulation of both normal and error behaviors to enhance software robustness and reduce development time and costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If software development waits for hardware development completion, then software can be tested on actual hardware, but product development time increases
Solution Approach 1:
The patent creates virtual hardware components that replicate the behavior and characteristics of physical hardware components. These virtual copies include virtual CPUs, memory devices, storage devices, and I/O devices that simulate hardware responses without requiring actual hardware presence, enabling software testing to proceed in parallel with hardware development
Solution Approach 2:
The system performs preliminary software testing using virtual hardware components before the actual hardware is ready. By setting up virtual hardware environments in advance, the patent allows software development and testing to begin earlier in the development cycle, eliminating the sequential dependency where software must wait for hardware completion
2Productivity
If multiple hardware engineering boards are manufactured for software testing, then software can be tested concurrently, but manufacturing and maintenance costs increase
Solution Approach 1:
Instead of manufacturing multiple physical hardware boards, the patent creates virtual copies of hardware components through software. A single physical system can instantiate multiple virtual hardware instances, each capable of running software tests independently, thereby replacing costly physical hardware multiplication with lightweight virtualization
Solution Approach 2:
The virtual hardware component system allows a single physical computing platform to serve multiple testing functions simultaneously. The virtualization layer enables one physical system to emulate different hardware configurations, device types, and scenarios, making the hardware resource universally applicable to various software testing needs
3Reliability
If hardware development is re-executed due to testing issues, then software reliability is ensured, but development time and costs increase
Solution Approach 1:
By conducting software testing in advance using virtual hardware that accurately replicates target hardware behavior, the patent identifies and resolves software issues before actual hardware integration. This preliminary validation prevents the need for hardware re-manufacturing or re-development, as software problems are caught and fixed in the virtual testing environment
Solution Approach 2:
The virtual hardware component acts as an intermediary testing layer between software development and physical hardware. This intermediate environment allows realistic software-hardware interaction testing without the constraints and costs of physical hardware, serving as a buffer that prevents costly re-work cycles
Data Source
AI summary
Embodiments of the present disclosure provide a method, a computer program product and a computing device for software test by wherein a computing device, wherein at least one virtual hardware component, each virtual hardware component simulating a behavior of a hardware component associated with a to-be-tested software, and testing the to-be-tested software based on the behavior simulated by the at least one virtual hardware component.


