Atomic Set Manifests for Software Version Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software developers and publishers face challenges in managing software updates, as incompatible versions of main and related sub-components can lead to abnormal program behaviors if not synchronized, causing operational issues for end users.
Innovation Solution
The implementation of atomic set management systems that provide methods and apparatuses for joint software package servicing, where atomic set information defines version dependencies between software components, ensuring that only compatible versions are installed and updated, using atomic set manifests to manage and distribute software packages across client devices and servers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If separate version management is used for main program and related sub-components, then installation flexibility is improved, but version compatibility is worsened leading to abnormal program behaviors
Solution Approach 1:
The patent merges the version management of main programs and related sub-components into a unified atomic set. The atomic set manifest groups multiple software packages with their version dependencies together, ensuring they are serviced (installed, updated, or removed) as a complete unit. This combining approach maintains installation flexibility while guaranteeing version compatibility among all components in the set.
Solution Approach 2:
The patent implements preliminary action by pre-defining version dependencies and compatibility relationships in the atomic set manifest before distribution. The manifest contains metadata that specifies which versions of related sub-components are compatible with each main program version. This preliminary configuration allows the servicing system to automatically enforce compatibility without requiring real-time version checking during installation or updates.
2Reliability
If joint servicing of software packages is implemented, then version compatibility is improved, but system complexity is worsened due to atomic set management
Solution Approach 1:
The patent introduces an intermediary component - the atomic set manifest - that mediates between the servicing system and the software packages. The manifest contains all necessary version dependency information and compatibility rules, allowing the servicing system to automatically determine which packages should be serviced together without complex real-time analysis. This intermediary simplifies the servicing logic while ensuring compatibility.
Solution Approach 2:
The patent implements self-service by enabling the atomic set manifest to automatically provide its own servicing information. The manifest contains metadata that describes its own structure, the packages it encompasses, and their version relationships. This self-describing approach allows the servicing system to automatically process atomic sets without requiring external configuration or complex management overhead.
3Manufacturing precision
If atomic set manifests are used to define version dependencies, then version control precision is improved, but information processing overhead is worsened
Solution Approach 1:
The patent extracts version dependency information from complex software relationships and consolidates it into a separate, structured atomic set manifest. Instead of embedding version checking logic within each software package or requiring complex inter-package communication, the manifest extracts and centralizes all version dependency metadata in a standardized format. This extraction reduces information processing overhead during servicing operations.
Solution Approach 2:
The patent applies parameter changes by representing version dependencies as structured metadata parameters in the atomic set manifest. Rather than using complex version comparison logic or string-based version strings, the manifest uses standardized version parameters that can be efficiently processed and compared. This parameterization approach maintains precise version control while reducing the computational overhead of version management.
Data Source
AI summary
Methods, systems, and apparatuses for publishing, acquiring, and servicing of related software packages together. Flexible yet robust software package version control through joint servicing using atomic sets, including business software applications and consumer software applications, is performed by client and developer devices in conjunction with a host server. Developers and publishers develop and provide applications and assign specific, related versions of software packages, that are jointly operable per atomic sets embodied in atomic set manifests, in software program bundles for acquisition by end users. Adherence to jointly serviced software packages using atomic sets is performed by client devices and/or servers in a manner that is transparent to the end user. The end user is enabled to acquire all or less than all software packages that make up an atomic set, yet each software package acquired adheres to the version requirements set forth by the atomic set.


