Event Synchronization for Development Computing Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The development of software applications, particularly video games, is hindered by inefficiencies in testing network features due to the separation of development environments for core game code and external services, leading to lengthy compile and propagation delays, especially when modifying broadcast features.
Innovation Solution
A development computing system with an application development component, broadcast feature editing component, and event synchronization component facilitates near-instantaneous local testing of changes by integrating operations between the two, allowing for rapid iteration and reducing the need for lengthy compile or publish steps.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If developers modify broadcast features by accessing external services and waiting for propagation, then the broadcast features can be updated, but lengthy wait times for compile and network propagation occur
Solution Approach 1:
The system performs preliminary actions by allowing developers to modify broadcast features in a pre-production preview environment before deploying to production. Changes are tested locally in advance, and only validated changes are propagated to external services, eliminating lengthy wait times while ensuring update reliability.
Solution Approach 2:
An intermediary development system is introduced between the developer's local environment and the external broadcasting service. This intermediary handles the propagation of changes, managing the complexity of synchronization and allowing developers to work locally without directly waiting for network propagation to external services.
2Reliability
If developers make changes to both core game code and broadcast features, then comprehensive testing is achieved, but the separation of development environments prevents simultaneous testing
Solution Approach 1:
The system merges the development environments by allowing both core game code and broadcast features to be modified and tested within a single integrated development system. The event synchronization component coordinates changes across both components, enabling simultaneous testing without requiring separate environments.
Solution Approach 2:
The development system is designed with multi-functionality to handle both core game code compilation and broadcast feature modification within a single unified environment. This universal platform eliminates the need for separate development environments while maintaining the ability to test both components together.
3Manufacturing precision
If developers wait for compile steps to complete before testing, then build accuracy is ensured, but significant time is lost
Solution Approach 1:
The system performs preliminary compilation and validation of changes in a pre-production environment before final deployment. This allows build accuracy to be verified in advance, and only validated changes are compiled and deployed to production, eliminating lengthy compile wait times during testing.
Solution Approach 2:
The system allows developers to skip lengthy compile steps by using incremental compilation and hot-swapping capabilities. Changes to broadcast features and core code can be tested without waiting for complete re-compilation, as the system selectively compiles only affected components and applies changes dynamically.
Data Source
Figure 1
Figure 2~3
Figure 4
AI summary
An application development component of a development computing system runs a software application developed with the application development component in a pre-build preview state. A broadcast feature editing component of the development computing system changes a state of a pre-production preview version of a broadcast feature associated with a broadcasting service configured to broadcast graphical content output by a post-build version of the software application. An event synchronization component of the development computing system detects the changed state of the broadcast feature and, based on the changed state, alters the running of the software application in the pre-build preview state.