Industrial software intelligent building system and method based on plug-in mechanism
By defining the standardized format and interface of plug-ins, analyzing plug-in dependencies and performing semantic similarity matching and conflict detection, the problems of plug-in compatibility and high CPU usage in industrial software are solved, efficient plug-in management and dynamic updates are achieved, and maintenance costs and operating loads are reduced.
Patent Information
- Application Number
- CN202510910281.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-02
- Publication Date
- 2025-10-14
AI Technical Summary
During the development process, existing industrial software faces problems such as dynamic changes in functional requirements, high module coupling, high maintenance costs, code redundancy, high CPU usage, and difficulty in software upgrades. In addition, existing plug-in software lacks systematic design for plug-in compatibility, conflict detection, and intelligent sorting.
By defining the standardized format and interface of plug-ins, ensuring compatibility and scalability, analyzing and recording the dependencies between plug-ins, combining semantic similarity matching and historical success rate to screen plug-in combinations, performing conflict analysis and CPU usage detection, and dynamically updating plug-ins to implement software functions.
It improves the compatibility and scalability of plug-ins, reduces code redundancy and maintenance costs, improves operational efficiency, reduces software update downtime, and ensures that plug-ins do not conflict or overload during operation.
Smart Images

Figure CN120780378A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of software development, and in particular to a plug-in mechanism-based intelligent construction system and method for industrial software. Background Art
[0002] With the continuous advancement of science and technology, the iterative optimization of software functions is accelerating. However, industrial software development often faces challenges such as dynamically changing functional requirements, high module coupling, and high maintenance costs. Traditional industrial software development methods integrate all functions into a single program, leading to code redundancy, high CPU utilization, and difficulty in software upgrades. Existing plug-in software solutions often rely on static loading or simple rule matching, lacking systematic design for plug-in compatibility, conflict detection, and intelligent sorting.
[0003] The Chinese invention patent application with publication number CN119065641A and publication date 2024.12.03 discloses a plug-in software platform development method, which builds a system plug-in library, including a scheduling center, a plug-in library, an activation center, and an activation module. After the scheduling center receives instructions, it controls the activation center to retrieve the plug-in from the plug-in library, and then delivers the plug-in to the data processing center for installation. Then, the module is activated and the corresponding certificate is deployed to complete the software construction. The activation center, the activation module and the plug-in library are used in conjunction to realize the function of intelligent mounting of the plug-in software platform.
[0004] In the above invention application, after the plug-in library is established, a call command is sent to the client software through the dispatch center, and the plug-in is called through the activation center to transport and install the function. The structure is relatively simple, and there is no format specification or conflict analysis for the plug-in. There is a risk that the plug-in cannot run normally after installation.
[0005] To this end, the present invention provides an industrial software intelligent construction system and method based on a plug-in mechanism. Summary of the Invention
[0006] (1) Technical problems solved In response to the deficiencies in the prior art, the present invention provides an intelligent industrial software construction system and method based on a plug-in mechanism. By defining the standardized format and interface of the plug-in, the compatibility and scalability of the plug-in are ensured, the dependencies between the plug-ins are analyzed and recorded to establish a plug-in library, user requirements and plug-in functions are matched for semantic similarity, plug-ins are screened based on the historical success rate of the plug-in to form a plug-in combination and conflict analysis is performed, CPU occupancy is detected for feasible plug-in combinations based on the conflict analysis, plug-in combinations with unqualified CPU occupancy are eliminated, plug-ins are activated according to the plug-in combination selected by the user to complete the software function implementation, and dynamic updates of the plug-in are performed, thereby solving the problems recorded in the background technology.
[0007] (2) Technical solution To achieve the above objectives, the present invention is implemented through the following technical solutions: a method for intelligently building industrial software based on a plug-in mechanism, comprising: S1. Define the standardized format and interface of plug-ins to ensure their compatibility and scalability. S2. Establish a plug-in library, analyze the dependencies between plug-ins and record them; S3. Match user requirements and plug-in functions based on semantic similarity, and filter plug-ins based on their historical success rates to form a plug-in combination. S4. Conflict analysis is performed on the plug-in combinations. Based on the conflict analysis, the plug-ins are sorted and packaged to form plug-in combinations. CPU usage is tested on feasible plug-in combinations. If the combinations fail to meet the requirements, the plug-in combinations with unqualified CPU usage are deleted. If the combinations meet the requirements, qualified plug-in combinations are output for user selection. S5. Activate the plug-in combination selected by the user to complete the software function implementation and perform dynamic update of the plug-in.
[0008] Preferably, the S1 comprises the following steps: S11. The plug-in is stored in a standardized file package, which includes a metadata file, a function module file, and a configuration file. The metadata file specifically describes the plug-in name, version, function description, dependencies, and compatible main program version; the function module file is a binary file that implements the core functions of the plug-in; and the configuration file defines the input and output parameters and calling interface of the plug-in. S12. Standardize the plug-in interface. Plug-ins uniformly use the RPC communication protocol and unify the plug-in interface functions, including a plug-in enable function, a plug-in run function, and a plug-in disable function. The plug-in enable function is used to initialize plug-in resources, and the plug-in run function is used to receive input parameters and execute plug-in functions. The plug-in disable function is used to release resources occupied by the plug-in.
[0009] Preferably, said S2 comprises the following steps: S21. Divide the plug-in catalog by its functional area and assign a unique identifier to each plug-in. , Indicates the i Functional category j plugins v Version number; S22. Analyze the dependencies between plug-ins, record the dependencies between plug-ins through a graph structure, and model the initial dependency graph based on the plug-in dependencies. T。
[0010] Preferably, the S22 includes the following steps: S22. Analyze the dependencies between plug-ins, record the dependencies between plug-ins through a graph structure, and model the initial dependency graph based on the plug-in dependencies. T ; ; Among them, J is the plug-in set, Y is the edge set, Representation plugin One-way dependency on plugins , 、 Indicates that there is a one-way dependency between any two plugins in the collection; One-way dependencies are mainly derived dynamically through the dependencies declared in the plugin's metadata file and the plugin's interface call relationship.
[0011] Preferably, the step S3 includes the following steps: S31. Split the user-entered demand text into words, and use the BERT model to vectorize the demand word text and plug-in function description to obtain the demand text vector. and function text vector , based on the demand text vector and function text vector Calculating semantic similarity ; S32. Read the system work log to obtain the historical success rate of the plug-in , based on semantic similarity and historical success rates Calculating plugin ratings .
[0012] Preferably, the S31 includes the following steps: S31. Split the user-entered demand text into words, and use the BERT model to vectorize the demand word text and plug-in function description to obtain the demand text vector. and function text vector , based on the demand text vector and function text vector Calculating semantic similarity : ; in Indicates the k requirement text vectors; Filter out semantic similarity Not less than The plug-in enters the next step of screening, is the semantic similarity threshold, which can be adjusted according to actual use.
[0013] The BERT model is a bidirectional pre-trained language model based on the Transformer architecture. It learns context-sensitive universal language representations through masked language models and next sentence prediction tasks. It supports efficient fine-tuning in downstream tasks such as text classification, question answering, and entity recognition, and has significant performance improvements in natural language processing. Preferably, the S32 includes the following steps: S32. Read the system work log to obtain the historical success rate of the plug-in , based on semantic similarity and historical success rates Calculating plugin ratings : ; Ratings of plugins in the same functional category Top ranking h The plugin enters conflict analysis, h The size is adjusted according to actual use.
[0014] Preferably, said S4 comprises the following steps: S41. Detect dependency conflicts for plug-ins, specifically based on the initial dependency graph. T Generate detection dependency graph cT , detect the dependency graph through depth-first search and topological sorting algorithms cT Check whether there is a cycle in the dependency graph. If a cycle is detected, it is marked as a conflict. At the same time, if there are different versions of the same plug-in in the dependency graph, it is also marked as a conflict. The non-conflicting plug-ins are sorted and packaged to form a plug-in combination; S42. Based on the conflict analysis, the CPU usage of the plug-in combination is detected. When the CPU usage is greater than the CPU usage threshold for stable system operation, the CPU usage is determined to be unqualified, and the plug-in combination with the unqualified CPU usage is eliminated. When the CPU usage is not greater than the CPU usage threshold for stable system operation, the CPU usage is determined to be qualified, and the corresponding plug-in combination is output for user selection.
[0015] Preferably, the S5 comprises the following steps: S5. Activate the plug-in combination selected by the user to complete the software function implementation and perform dynamic update of the plug-in; Dynamically load plug-ins based on user needs, giving priority to high-scoring plug-ins. When a plug-in needs to be updated, generate a new version of the plug-in. Confirm the update by comparing the version numbers to confirm that the new version of the plug-in is greater than the version numbers of the old and new versions of the plug-in. The new version is preloaded in the background and replaces the old version after verification.
[0016] An intelligent industrial software construction system based on a plug-in mechanism, including: A plug-in specification module is configured to define a standardized format and interface of the plug-in; A plug-in library module is configured to store the plug-in and manage the dependency relationship; A plug-in life cycle management module is configured to install, enable, run, disable and uninstall the plug-in; A plug-in sorting module is configured to recommend the plug-in according to semantic similarity and historical success rate; A conflict detection module is configured to detect resource and function conflicts between plug-ins; A dynamic update module is configured to perform hot update and version rollback of the plug-in.
[0017] (Three) beneficial effects The application provides an industrial software intelligent building system and method based on a plug-in mechanism, which has the following beneficial effects: 1. The application defines the interface of the plug-in for specification and uses a unified communication protocol, ensuring compatibility and expandability between different plug-ins, storing the plug-in in the form of an independent file package, dynamically loading according to user needs, reducing code redundancy, improving running efficiency and reducing maintenance costs.
[0018] 2. The application classifies the plug-in according to function, type and version number, facilitating matching of the corresponding function plug-in when the user inputs the demand, and establishing a dependency relationship diagram between plug-ins clarifies the dependency relationship between different plug-ins, facilitating sorting and reasonable calling of the plug-in.
[0019] 3. The application matches the plug-in according to user needs and plug-in function, can quickly match the plug-in that realizes the function required by the user, and can filter out the plug-in that matches the function and is stable to implement by combining the historical success rate of the plug-in.
[0020] 4. The application analyzes the conflict of the filtered plug-in and detects the CPU occupancy rate, ensures that each plug-in does not conflict and cause program errors, considers the occupancy of the CPU when running these plug-ins, so that these plug-ins do not conflict and do not bring more than a threshold load when running.
[0021] 5. The application activates the filtered plug-in combination, reduces the load of the system, and performs background preloading hot update of the plug-in, reduces the downtime of the software during update, and improves the running efficiency of the software. BRIEF DESCRIPTION OF DRAWINGS
[0022] Figure 1 It is a flowchart of the industrial software intelligent building method based on the plug-in mechanism; Figure 2 It is a structural schematic diagram of the industrial software intelligent building system based on the plug-in mechanism. DETAILED DESCRIPTION
[0023] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art without creative effort belong to the scope of protection of the present application.
[0024] Please refer to Figure 1 , the present application provides an industrial software intelligent building system and method based on plug-in mechanism, comprising the following steps: S1, defining the standardized format and interface of the plug-in to ensure the compatibility and scalability of the plug-in; S1 includes the following steps: S11, the plug-in is stored in the form of a standardized file package, the standardized file package includes a metadata file, a function module file and a configuration file, the metadata file specifically describes the plug-in name, version, function description, dependency relationship and compatible main program version; the function module file is specifically a binary file for implementing the core function of the plug-in; the configuration file defines the input and output parameters and the calling interface of the plug-in.
[0025] S12, the plug-in interface is standardized, the plug-in uniformly uses the RPC communication protocol, and the plug-in interface function is unified, including the plug-in enabling function, the plug-in running function and the plug-in disabling function; the plug-in enabling function is used for initializing the plug-in resources, the plug-in running function is used for receiving the input parameters and executing the plug-in function; the plug-in disabling function is used for releasing the resources occupied by the plug-in.
[0026] By defining the interface of the plug-in and using a unified communication protocol, the compatibility and scalability between different plug-ins are ensured, the plug-in is stored in the form of an independent file package, and the code redundancy is reduced, the running efficiency is improved, and the maintenance cost is reduced.
[0027] S2, establishing a plug-in library, analyzing the dependency relationship between plug-ins and recording; S2 includes the following steps: S21, dividing the plug-in directory according to the functional field of the plug-in, and assigning a unique identifier to each plug-in , indicates the i th plug-in of the j th functional category. v
[0028] S22, analyzing the dependency relationship between plug-ins, recording the dependency relationship between plug-ins through a graph structure, and modeling the plug-in dependency relationship as an initial dependency graph T ; ; Wherein, J is a plug-in set, Y is an edge set, representing a plug-in unidirectional dependence on plug-in , , representing the plug-in between any two in the set has a unidirectional dependence relationship.
[0029] The unidirectional dependence relationship is mainly derived dynamically through the dependence relationship declared in the metadata file of the plug-in and the interface calling relationship of the plug-in.
[0030] By classifying the plug-ins according to the functions, types and version numbers, it is convenient for the subsequent users to match the corresponding function plug-ins when inputting the requirements, and the dependence relationship graph between the plug-ins is established, which clarifies the dependence relationship between different plug-ins, and facilitates the sorting and reasonable calling of the plug-ins.
[0031] S3, the semantic similarity of user requirements and plug-in functions is matched, and the plug-in history success rate is combined to screen the plug-in to form a plug-in combination; S3 includes the following steps: S31, the requirement text input by the user is split into words, and the BERT model is used to vectorize the requirement word text and the plug-in function description to obtain the requirement text vector and the function text vector , based on the requirement text vector and the function text vector , the semantic similarity : ; wherein represents the k th requirement text vector; The plug-in with a semantic similarity not less than is screened into the next step, the semantic similarity threshold value can be adjusted according to the actual use.
[0032] The BERT model is a bidirectional pre-training language model based on the Transformer architecture, which learns context-sensitive general language representation through the mask language model and next sentence prediction task, supports efficient fine-tuning in downstream tasks such as text classification, question answering and entity recognition, and has significant performance effect on natural language processing.
[0033] S32, read the system work log to obtain the historical success rate of the plug-in , based on the semantic similarity and the historical success rate , the plug-in score is calculated : ;
[0034] Ratings of plugins in the same functional category Top ranking h The plugin enters conflict analysis, h The size is adjusted according to actual use.
[0035] By matching the semantic similarity between user needs and plug-in functions, we can quickly match plug-ins that implement the functions required by users. Combined with the historical success rate of plug-ins, we can screen out plug-ins that match the functions and have stable implementation.
[0036] S4. Conflict analysis is performed on the plug-in combinations. Based on the conflict analysis, the plug-ins are sorted and packaged to form plug-in combinations. CPU usage is tested on feasible plug-in combinations. If the combinations fail to meet the requirements, the plug-in combinations with unqualified CPU usage are deleted. If the combinations meet the requirements, qualified plug-in combinations are output for user selection. S4 includes the following steps: S41. Detect dependency conflicts for plug-ins, specifically based on the initial dependency graph. T Generate detection dependency graph cT , detect the dependency graph through depth-first search and topological sorting algorithms cT Check whether there is a cycle in the dependency graph. If a cycle is detected, it is marked as a conflict. At the same time, if there are different versions of the same plug-in in the dependency graph, it is also marked as a conflict. The non-conflicting plug-ins are sorted and packaged to form a plug-in combination; S42. Based on the conflict analysis, the CPU usage of the plug-in combination is detected. When the CPU usage is greater than the CPU usage threshold for stable system operation, the CPU usage is determined to be unqualified, and the plug-in combination with the unqualified CPU usage is eliminated. When the CPU usage is not greater than the CPU usage threshold for stable system operation, the CPU usage is determined to be qualified, and the corresponding plug-in combination is output for user selection.
[0037] By performing conflict analysis and CPU usage detection on the selected plug-ins, while ensuring that the plug-ins do not conflict with each other and cause program errors, the CPU usage when running these plug-ins is considered, so that these plug-ins do not conflict with each other during operation and do not bring a load exceeding the threshold.
[0038] S5. Activate the plug-in combination selected by the user to complete the software function implementation and perform dynamic update of the plug-in; According to the user demand, the plug-in is dynamically loaded, the plug-in with high score is preferentially selected, when the plug-in needs to be updated, a new version of the plug-in is generated, and the version number of the new version plug-in is compared to confirm that the version number of the new version plug-in is greater than the version number of the old version plug-in to confirm the update.
[0039] By activating the screened plug-in combination, the load of the system is reduced, the plug-in is preloaded in the background for hot update, the downtime of the software during the update is reduced, and the running efficiency of the software is improved.
[0040] Please refer to Figure 2 The application provides an industrial software intelligent building system based on a plug-in mechanism, comprising: An industrial software intelligent building system based on a plug-in mechanism, comprising: A plug-in specification module is used to define the standardized format and interface of the plug-in. A plug-in library module is used to store the plug-in and manage the dependency relationship. A plug-in life cycle management module is used for installation, activation, running, disabling and uninstalling of the plug-in. A plug-in sorting module is used to recommend the plug-in according to semantic similarity and historical success rate. A conflict detection module is used to detect resource and function conflicts between plug-ins. A dynamic update module is used for hot update and version rollback of the plug-in.
[0041] The above embodiments can be realized by software, hardware, firmware or any combination thereof, in whole or in part. When realized by software, the above embodiments can be realized in the form of a computer program product in whole or in part. Those skilled in the art can realize that the units and algorithm steps of the examples described in combination with the embodiments disclosed herein can be realized by electronic hardware or a combination of electronic hardware and computer software. Whether the functions are realized by hardware or software depends on the specific application and design constraints of the technical solution.
[0042] The units described as separate components can or can not be physically separated, and the components shown as units can or can not be physical units, i.e. they can be located in one place or distributed on multiple network units. Part or all of the units can be selected to achieve the purpose of the embodiments according to actual needs.
[0043] The above is only a specific embodiment of the application, but the protection scope of the application is not limited thereto, and any skilled person in the art can easily think of changes or replacements within the technical scope disclosed in the application, which should be covered within the protection scope of the application.
Claims
1. A method for intelligently building industrial software based on a plug-in mechanism, characterized in that: include: S1. Define the standardized format and interface of the plug-in; S2. Establish a plug-in library, analyze the dependencies between plug-ins and record them; S3. Match user requirements and plug-in functions based on semantic similarity, and filter plug-ins based on their historical success rates to form a plug-in combination. S4. Conflict analysis is performed on the plug-in combinations. Based on the conflict analysis, the plug-ins are sorted and packaged to form plug-in combinations. CPU usage is tested on feasible plug-in combinations. If the combinations fail to meet the requirements, the plug-in combinations with unqualified CPU usage are deleted. If the combinations meet the requirements, qualified plug-in combinations are output for user selection. S5. Activate the plug-in combination selected by the user to complete the software function implementation and perform dynamic update of the plug-in.
2. The method for intelligently building industrial software based on a plug-in mechanism according to claim 1, characterized in that: Said S1 comprises the following steps: S11. The plug-in is stored in a standardized file package, which includes a metadata file, a function module file, and a configuration file. The metadata file specifically describes the plug-in name, version, function description, dependencies, and compatible main program version; the function module file is a binary file that implements the core functions of the plug-in; and the configuration file defines the input and output parameters and calling interface of the plug-in. S12. Standardize the plug-in interface. Plug-ins uniformly use the RPC communication protocol and unify the plug-in interface functions, including a plug-in enable function, a plug-in run function, and a plug-in disable function. The plug-in enable function is used to initialize plug-in resources, and the plug-in run function is used to receive input parameters and execute plug-in functions. The plug-in disable function is used to release resources occupied by the plug-in.
3. The method for intelligently building industrial software based on a plug-in mechanism according to claim 1, characterized in that: The S2 comprises the following steps: S21. Divide the plug-in catalog by its functional area and assign a unique identifier to each plug-in , Indicates the i Functional category j plugins v Version number; S22. Analyze the dependencies between plug-ins, record the dependencies between plug-ins through a graph structure, and model the initial dependency graph based on the plug-in dependencies. T。 4. The method for intelligently building industrial software based on a plug-in mechanism according to claim 3 is characterized in that: The S22 includes the following steps: S22. Analyze the dependencies between plug-ins, record the dependencies between plug-ins through a graph structure, and model the initial dependency graph based on the plug-in dependencies. T; ; Where J is the plug-in set, Y is the edge set, Representation plugin One-way dependency on plugins , 、 Indicates that there is a one-way dependency between any two plugins in the collection; One-way dependencies are mainly derived dynamically through the dependencies declared in the plugin's metadata file and the plugin's interface call relationship.
5. The method for intelligently building industrial software based on a plug-in mechanism according to claim 1, characterized in that: The S3 includes the following steps: S31. Split the user-entered demand text into words, and use the BERT model to vectorize the demand word text and plug-in function description to obtain the demand text vector. and function text vector , based on the demand text vector and function text vector Calculating semantic similarity ; S32. Read the system work log to obtain the historical success rate of the plug-in , based on semantic similarity and historical success rates Calculating plugin ratings .
6. The method for intelligently building industrial software based on a plug-in mechanism according to claim 5, characterized in that: The S31 includes the following steps: S31. Split the user-entered demand text into words, and use the BERT model to vectorize the demand word text and plug-in function description to obtain the demand text vector. and function text vector , based on the demand text vector and function text vector Calculating semantic similarity : ;in Indicates the k requirement text vectors; Filter out semantic similarity Not less than The plug-in enters the next step of screening, is the semantic similarity threshold, which can be adjusted according to actual use.
7. The method for intelligently building industrial software based on a plug-in mechanism according to claim 5, characterized in that: The S32 includes the following steps: S32. Read the system work log to obtain the historical success rate of the plug-in , based on semantic similarity and historical success rates Calculating plugin ratings : ; Ratings of plugins in the same functional category Top ranking h The plugin enters conflict analysis, h The size is adjusted according to actual use.
8. The method for intelligently building industrial software based on a plug-in mechanism according to claim 1, characterized in that: The S4 comprises the following steps: S41. Detect dependency conflicts for plug-ins, specifically based on the initial dependency graph. T Generate detection dependency graph cT , detect the dependency graph through depth-first search and topological sorting algorithms cT Check whether there is a cycle in the dependency graph. If a cycle is detected, it is marked as a conflict. At the same time, if there are different versions of the same plug-in in the dependency graph, it is also marked as a conflict. The non-conflicting plug-ins are sorted and packaged to form a plug-in combination; S42. Perform CPU occupancy detection on the plug-in combination based on the conflict analysis. When the CPU occupancy is greater than the CPU occupancy threshold for stable system operation, the CPU occupancy detection result is output as unqualified, and the plug-in combination with unqualified CPU occupancy is eliminated. When the CPU occupancy is not greater than the CPU occupancy threshold for stable system operation, the CPU occupancy detection result is output as qualified, and the corresponding plug-in combination is output for user selection.
9. The method for intelligently building industrial software based on a plug-in mechanism according to claim 1, characterized in that: The S5 comprises the following steps: S5. Activate the plug-in combination selected by the user to complete the software function implementation and perform dynamic update of the plug-in; Dynamically load plugins based on user needs, prioritizing high-scoring plugins. When a plugin needs to be updated, a new version is generated. A version number comparison confirms that the new version is greater than the old and new versions, confirming the update. The new version is preloaded in the background and replaces the old version after verification.
10. A plug-in mechanism-based industrial software intelligent construction system, used to implement a plug-in mechanism-based industrial software intelligent construction method according to any one of claims 1 to 9, characterized in that: include: Plugin specification module, which is used to define the standardized format and interface of plugins; Plugin library module, used to store plugins and manage dependencies; Plugin lifecycle management module, used for installing, enabling, running, disabling and uninstalling plugins; Plugin sorting module, used to recommend plugins based on semantic similarity and historical success rate; Conflict detection module, used to detect resource and function conflicts between plug-ins; Dynamic update module, used for hot update and version rollback of plug-ins.
Citation Information
Patent Citations
Plug-in type software platform development method
CN119065641A
Cited By
Industrial software control method and system based on communication mechanism
CN121879868A
Life cycle management method and system of heterogeneous functional component
CN121996522A
Method and system for lifecycle management of heterogeneous functional components
CN121996522B