Versioned Application Packaging for Enterprise System Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software deployment methods lack a reliable mechanism for providing backup versions of application packages and support components, leaving enterprise systems vulnerable to software failures or errors.
Innovation Solution
A method for packaging information integration components that identifies and archives current and previous versions of applications and support components, using a naming convention to distinguish versions and generate a revision control file, allowing for fallback to previous revisions in case of errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If present revisions of application packages are distributed, then latest functionality is provided, but enterprise systems lose backup capability in case of software failure
Solution Approach 1:
The application package is segmented into multiple versioned components with distinct naming conventions (e.g., APP_NAME.v1, APP_NAME.v2). This allows the system to maintain separate copies of different versions, enabling both latest functionality deployment and backup capability without interference between versions.
Solution Approach 2:
Previous versions of application packages are preserved and made available before distribution of present revisions. The system proactively maintains backup copies of prior versions, ensuring that when a failure occurs, the backup is already in place and can be immediately deployed without waiting for version creation.
2Adaptability or versatility
If application packages are updated with new versions, then functionality is improved, but system stability is compromised due to potential failures in new versions
Solution Approach 1:
The system implements a cushioning mechanism by maintaining previous versions as backup buffers. When a new version is deployed and fails, the system can fall back to the previous stable version, cushioning against the instability introduced by the new version and preventing complete system failure.
Solution Approach 2:
The system creates and maintains copies of application packages across multiple versions. Each version is a complete copy that can be independently deployed. This copying approach allows the system to test new functionality in isolation while maintaining stable copies of previous versions for fallback purposes.
3Ease of manufacture
If only current version of applications is deployed, then deployment simplicity is maintained, but recovery capability from failures is lost
Solution Approach 1:
The deployment structure is segmented to include multiple versioned application packages alongside the current version. This segmentation adds minimal complexity to the deployment process while enabling recovery capability, as each version can be independently managed and deployed.
Solution Approach 2:
A version management system acts as an intermediary between the deployment process and the application runtime environment. This intermediary maintains the repository of previous versions and manages the fallback mechanism, simplifying the overall system architecture while enabling recovery without requiring complex manual intervention.
Data Source
AI summary
An embodiment of the present invention discloses an enterprise application packaging method and archive file. Applications and support components are developed by a developer, which are then included in the archive file. A revision control file indicates which files correlate to a present revision of the application package. A naming convention is applied to the application and support component files to indicate versions which correspond to each other. The archive file contains the file corresponding to the present version, as well as previous versions, as well as previous version revision control files so that, in the event of a failure or other error, the executing machine may revert to a previous version.


