Deploying Software Modules via Container Registration and Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The complexity of software lifecycle management in large enterprise computer systems, particularly in multi-tiered architectures, poses challenges in deployment and maintenance due to tightly integrated business logic, presentation logic, and user interface components, making it difficult to manage changes and ensure high availability and cost efficiency.
Innovation Solution
A deploy service framework that registers containers, extracts and validates software modules from archive files, and distributes them to corresponding containers for installation, utilizing mechanisms like module detectors and generators to ensure compatibility and interoperability, and supports both Java EE and non-Java EE modules.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If software applications are developed as monolithic sets of program code in two-tiered architecture, then the system structure is simple, but the lifecycle management becomes difficult and the system is hard to maintain
Solution Approach 1:
The patent segments the monolithic software application into separate deployable modules that can be independently managed, deployed, and maintained. Each module represents a functional unit that can be versioned and updated separately, resolving the contradiction by making the system structure more complex at the module level while simplifying lifecycle management through independent module handling.
Solution Approach 2:
The patent introduces a new dimension of module-level management alongside the traditional application-level management. By adding this modular dimension, the system enables granular control over software components without compromising the overall system structure, allowing lifecycle management operations to be performed at the appropriate level of abstraction.
2Stability of the object's composition
If business logic, presentation logic, and user interface are tightly integrated, then the application structure is unified, but changes require modifications across multiple components making maintenance difficult
Solution Approach 1:
The patent segments the tightly integrated application into separate deployable modules, each encapsulating specific business logic, presentation logic, or user interface components. This segmentation allows modifications to be localized within individual modules rather than requiring changes across the entire application, thus maintaining structural stability while improving ease of maintenance.
Solution Approach 2:
The patent applies local quality by allowing different modules to have different structures and characteristics appropriate to their specific functions. Business logic modules, presentation modules, and UI modules can be organized and managed according to their specific requirements, enabling targeted maintenance operations without affecting other parts of the system.
3Adaptability or versatility
If enterprise computer systems use multiple independent software modules, then the system becomes more flexible and scalable, but the deployment and integration complexity increases
Solution Approach 1:
The patent applies preliminary action by performing validation, dependency resolution, and integration checks during the deployment process before the modules are fully activated. The deploy service prepares the deployment environment, resolves module dependencies in advance, and validates module compatibility, thereby reducing the perceived complexity during actual deployment while maintaining system flexibility.
Solution Approach 2:
The patent introduces a deploy service as an intermediary between the software modules and the runtime environment. This intermediary manages the complexity of deploying multiple independent modules by handling extraction, validation, dependency resolution, and coordination of module installation, thereby shielding users from deployment complexity while preserving system adaptability.
4Reliability
If software modules are managed individually to ensure operability of other components, then system availability is maintained, but the overall lifecycle management becomes more complex
Solution Approach 1:
The patent applies universality by creating a unified deploy service that handles lifecycle management operations for all software modules through a common interface and standardized process. This universal approach maintains system availability by allowing individual module management while reducing overall complexity through consistent deployment, validation, and update mechanisms applicable to all modules regardless of their specific functions.
Data Source
AI summary
Methods and systems are disclosed herein for deploying software modules in a computer system. In one embodiment, a number of containers are registered with a deployer. At least one container provides runtime environment for a corresponding type of software module in the computer system. The software modules are one of standalone software modules and components of software applications. From an archive file a number of files that include deployable software modules are extracted. The software modules corresponding to at least one of the containers are detected based on container specific detecting mechanisms. The detected software modules are validated in order to test their functionality and interoperability. When the software modules are validated, they are distributed for implementation in the corresponding containers.


