Test Subsystem Simulating Service Outputs for Software Engine Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Testing distributed computer systems with complex software engines is challenging due to the difficulty in coordinating the proper operation and simulation of signals between base systems and subsystems, requiring sophisticated coordination to simulate subsystem failures effectively.
Innovation Solution
A software engine with a base system operating in both service and testing modes, where test subsystems simulate outputs from service subsystems, allowing a user interface to control the switching between modes and enable coordinated testing without physical disconnection, using a network for data exchange between software applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual coordination is used to test subsystem failures, then testing can be performed, but the complexity of coordination increases significantly with system complexity
Solution Approach 1:
A test subsystem is introduced as an intermediary component that receives control signals from the user interface and generates simulated output signals corresponding to service subsystem failures. This mediator handles the complex coordination of failure scenarios, allowing the user to test base system responses to various failure conditions without manually coordinating multiple service subsystems.
Solution Approach 2:
The test subsystem creates copies of service subsystem output signals under failure conditions. Instead of directly manipulating actual service subsystems, the test subsystem generates simulated copies of their outputs, enabling safe and coordinated testing of failure scenarios while maintaining system integrity.
2Reliability
If service subsystems are disconnected to test failure scenarios, then failure testing becomes possible, but system operational continuity is disrupted
Solution Approach 1:
The test subsystem acts as an intermediary that allows failure scenario testing without actual disconnection of service subsystems. It receives control signals indicating desired failure conditions and generates corresponding simulated output signals, enabling failure testing while service subsystems remain connected and operational.
Solution Approach 2:
Physical disconnection of service subsystems is replaced by software-based signal simulation. Instead of mechanically disconnecting subsystems to create failure conditions, the test subsystem substitutes by generating simulated failure output signals, maintaining system connectivity while achieving testing objectives.
3Reliability
If multiple subsystems are coordinated manually during testing, then comprehensive testing can be performed, but the time required for testing increases
Solution Approach 1:
The test subsystem automatically handles the coordination of failure scenarios based on user input. When a user specifies a desired failure condition through the user interface, the test subsystem autonomously generates the appropriate simulated output signals and coordinates the testing process, eliminating the need for manual coordination of multiple subsystems and significantly reducing testing time.
Solution Approach 2:
The test subsystem is pre-configured with the capability to generate various failure scenario output signals. When a failure test is initiated, the appropriate simulated signals are immediately available for generation, eliminating the time required for manual setup and coordination of each failure scenario.
Data Source
AI summary
A software engine has a base system in communication with service subsystems and test subsystems. The base system, the service subsystems, and the test subsystems are software applications that exchange data with one another while operating within the software engine. In one exemplary mode of operation, the base system receives outputs from the service subsystems. In another exemplary mode of operation, the base system receives outputs from the test subsystems that simulate the outputs generated by the service subsystems. An exemplary method of testing the software engine is also provided. Specifically, the illustrative method includes receiving an output during a service mode, switching from the service mode to a testing mode, and receiving the simulated output during the testing mode. The method steps may be performed by a computer executing instructions stored on a computer-readable medium.


