Encapsulation Package for Decoupled Software Component Development
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current software application development in shared environments leads to packaging errors when customizing business applications, as existing tools cannot differentiate between minor and major errors, and developing separate environments for each package is economically unfeasible.
Innovation Solution
The method involves creating encapsulation packages that allow direct communication among objects within the package, eliminating unnecessary package interfaces, and grouping common packages to reduce interconnections and errors, using tools like GET_STRUPACK_OF_SC, GET_PINF_OF_STRUPAC, and GET_OBJECTS_OF_STRUPAC_PINF to identify and freeze stable objects.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If software components are developed in a shared development environment, then development cost is reduced and code consistency is preserved, but packaging errors occur when deploying custom-chosen components
Solution Approach 1:
The patent segments the monolithic software component into a hierarchical structure of packages (structure packages, main packages, common packages) and objects. Each package is independently developable in the shared environment but can be selectively deployed. This segmentation allows custom-chosen components to be packaged and deployed without affecting other components, resolving the packaging error issue while maintaining the cost benefits of shared development.
Solution Approach 2:
The patent introduces package interfaces as intermediary layers between packages and objects. These interfaces define standardized communication protocols, allowing packages to interact without direct dependencies. This intermediary layer enables custom-chosen components to be deployed independently while maintaining system consistency, eliminating packaging errors caused by direct inter-package dependencies.
2Difficulty of detecting and measuring
If current error detection tools are used, then some package errors are detected, but the tools cannot differentiate between minor and major errors leading to unnecessary manual corrections
Solution Approach 1:
The patent implements local quality control by assigning specific error detection rules and validation criteria to different package types and interface definitions. Rather than applying uniform error detection across all components, the system detects and differentiates errors locally at the appropriate package or interface level, enabling automatic handling of minor errors and focused manual correction of major errors.
3Reliability
If a fully separate development environment is used for each package, then packaging errors are eliminated, but development cost increases significantly
Solution Approach 1:
The patent creates a universal package structure and interface standard that can be applied across all software components developed in the shared environment. This multi-functional framework allows packages to be independently developable, selectable, and deployable regardless of their origin, achieving the reliability benefits of separate development environments while maintaining the cost efficiency of shared development through standardized interfaces and hierarchical organization.
Data Source
AI summary
A computer-implemented method of optimizing software components. The method may include receiving a software component including a layered hierarchy of structure packages, main packages, and common packages each including objects, grouping common packages into groups according to pre-determined criteria, encapsulating each group with an encapsulation package, wherein the encapsulation package is one of a structure package and a main package, allowing objects in the encapsulation package to communicate directly by bypassing common packages in the encapsulation package, and eliminating package interfaces of the common packages in the encapsulation package that are solely used for communicating with other common packages in the encapsulation package.


