Development management platform for DDS bus system
The DDS bus system development management platform addresses chaotic configurations and high costs by enabling visual management and automatic code generation, improving efficiency and reducing manual effort through low-code templates and configuration detection.
Patent Information
- Application Number
- CN202411143215.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-20
- Publication Date
- 2025-01-03
AI Technical Summary
Existing DDS bus systems face challenges with chaotic configurations, repeated message delivery, high development and maintenance costs, and difficulty in migrating configurations to new systems, due to manual coding and suboptimal human-computer interaction-based management solutions.
A development management platform for DDS bus systems, incorporating a message model management module, bus configuration management module, low-code template module, code generation and publishing module, and database, enabling visual management, low-code template creation, and automatic code generation, with features for detecting configuration correctness.
Facilitates efficient bus configuration and code generation, reduces development time, allows reuse of existing configurations, and automatically detects configuration issues, enhancing development and maintenance efficiency.
Smart Images

Figure CN119248232A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of computer software development, in particular to a development management platform for a DDS bus system. Background Art
[0002] Today, the DDS software bus has been widely used in distributed systems. It is a data-centric publish-subscribe communication model that can achieve low-latency, loosely coupled, high-concurrency, high-reliability, and easily scalable data communication. However, in large-scale distributed systems, there are also problems such as too many bus configurations, resulting in chaotic configurations and difficult management. In addition, there are a large number of bus message definitions with similar structures in the system, as well as a large number of repeated or similar message delivery and processing codes, which further increases the development and maintenance costs of the system. Moreover, it is difficult to quickly migrate existing bus codes and configurations to new similar systems.
[0003] Currently, there are two common ways to develop and configure code for bus systems.
[0004] One is a purely manual method, where the codes for the definition, transmission, and processing of the bus messages of the entire system are all written manually, and the bus configuration files in the system are also configured manually one by one. Even if the bus codes and configurations of each process in the system are completely consistent, they still need to be completed manually one by one. Obviously, this method is difficult to effectively solve the above problems and will also lead to unnecessary waste of manpower.
[0005] One is a technical solution based on a human-computer interaction interface (such as CN110046452A, a data bus management method, device and electronic device), which allows the use of a human-computer interaction interface to complete the retrieval, viewing, modification, import, export and other tasks of bus configuration information, which improves the efficiency of bus configuration management to a certain extent. However, it does not involve the development and management of bus codes, and the bus configuration management function is not perfect enough. This solution cannot achieve the rapid generation of bus configuration and bus code, cannot quickly migrate the bus configuration and bus code in the existing system to the new system, and cannot perform correctness detection on the bus configuration relationship within the system.
[0006] Low-code development is a visual application development method that provides easy-to-understand visual modeling tools, can encapsulate reusable software code and configuration with model-driven logic, and can quickly generate applications with a small amount of coding. Using low-code development tools for system development allows developers to devote more energy to more important business code development, reduce the pressure of code development and system configuration, and speed up the development of applications. Therefore, how to use low-code development methods and tools to quickly develop and configure complex bus systems has become a technical problem that technicians in this field urgently need to solve. Summary of the invention
[0007] In order to overcome the deficiencies of the prior art, the present invention provides a development management platform for a DDS bus system, which solves the problems of low development and configuration efficiency of the bus system in the prior art.
[0008] The technical solution adopted by the present invention to solve the above problems is:
[0009] A development management platform for a DDS bus system includes: a message model management module, a bus configuration management module, a low-code template module, a code generation and publishing module, a database, and files.
[0010] As a preferred technical solution, the message model management module is used to: retrieve and manage message models, provide users with a UI interface for message model management, define new message models, and modify and delete existing message models.
[0011] As a preferred technical solution, the message model management module is used to allow the user to set and manage the bus domain, topic, and message identifier to which the message model belongs.
[0012] As a preferred technical solution, the message model management module is used to allow users to modify or delete existing bus domains, topics, and message identifiers.
[0013] As a preferred technical solution, the low-code template module is used to write low-code templates for message processing based on the message model and publish-subscribe relationship.
[0014] As a preferred technical solution, the code generation and publishing module is used to automatically generate message processing code and bus configuration files based on the set publish-subscribe relationship and the selected low-code template.
[0015] As a preferred technical solution, the bus configuration management module includes a publish-subscribe management submodule, a topology relationship detection submodule, and a configuration template management submodule;
[0016] The publish-subscribe management submodule is used to: specify publishers and subscribers for the message model and manage the publish-subscribe relationship;
[0017] The topology relationship detection submodule is used to: detect and display the bus topology relationship, detect and display whether the publish-subscribe relationship between multiple software has mismatch, missing, or loopback, and detect and display whether the publish-subscribe relationship between components in the software has mismatch, missing, or loopback;
[0018] The configuration template management submodule is used to: save the set bus configuration as a template; manage multiple templates, and support retrieval, reading, display, modification, and saving of templates.
[0019] As a preferred technical solution, the database is used to: store bus domains, topics, message model definitions, store low-code templates, bus configuration relationship templates, store software lists, and module lists.
[0020] As a preferred technical solution, the file includes a code file and a bus configuration file; wherein the code file is used to store message processing code; and the bus configuration file is used to store bus configuration relationships and support bus message transmission.
[0021] Compared with the prior art, the present invention has the following beneficial effects:
[0022] (1) The present invention can visualize and manage the bus configuration relationship of the system, define the message model and low-code template through the UI interface, quickly set the bus configuration relationship of the system by manually dragging and dropping, and generate bus message processing code and bus configuration file in a one-click manner in a low-code form, thereby solving the efficiency problem of traditional manual coding and manual configuration, and saving users a lot of development and configuration time;
[0023] (2) The present invention can perform template management on the bus configuration relationship and low-code template of the system, and can quickly generate bus message processing code and bus configuration file for similar new systems based on the bus configuration template, thereby realizing the reuse of existing configurations and codes, solving the problem that the traditional method cannot effectively reuse existing configurations and codes, and can significantly improve the bus development and configuration efficiency of similar new systems;
[0024] (3) The present invention can detect the correctness of the bus configuration relationship of the system, and automatically detect and prompt problems such as mismatches, missing matches, loops, etc., thereby solving the problem that traditional methods cannot automatically detect the correctness of the bus configuration relationship, and can save developers a lot of time in debugging and troubleshooting. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Figure 1 This is the module composition diagram of the low-code development management platform;
[0026] Figure 2 It is the information relationship diagram of the low-code development management platform modules;
[0027] Figure 3 It is a composition diagram of bus configuration management module;
[0028] Figure 4 Bus configuration management module submodule information relationship diagram;
[0029] Figure 5 It is the bus configuration management and code generation flow chart of the new system;
[0030] Figure 6 It is a new system bus configuration management and code generation flow chart based on configuration template;
[0031] Figure 7 It is the bus configuration management and code generation flow chart of the existing system. DETAILED DESCRIPTION
[0032] The present invention will be further described in detail below in conjunction with embodiments and drawings, but the embodiments of the present invention are not limited thereto.
[0033] Example 1
[0034] As attached Figure 1 To Attachment Figure 7 As shown, the present invention provides a low-code development management platform for a DDS bus system to improve the development and configuration efficiency of the bus system.
[0035] To achieve the above purpose, the technical solution proposed by the present invention is: a low-code development management platform for DDS bus system, including: message model management module, bus configuration management module, low-code template module, code generation and publishing module, database, files (code files, configuration files). The low-code development management platform module composition is as shown in the attached figure. Figure 1 The information relationship between modules is shown in the attached Figure 2 shown.
[0036] The message model management module is used to retrieve and manage message models, provide users with a UI interface for message model management, define new message models, or modify and delete existing message models; further, allow users to set and manage the bus domain, topic, and message identifier to which the message model belongs, and can select existing bus domains, topics, and message identifiers, or define new bus domains, topics, and message identifiers; further, allow users to modify, delete, and other operations on existing bus domains, topics, and message identifiers; message models, bus domains, topics, and message identifiers are stored in a database.
[0037] The bus configuration management module is used to quickly and visually manage the bus configuration of the system, including the creation, modification, deletion, and detection of publish-subscribe relationships, as well as the definition and management of bus configuration templates; it allows developers to easily manage the publish-subscribe relationships between software and modules in the system by dragging and dropping, and automatically detects the correctness of the publish-subscribe relationships; the software / module list, the publish-subscribe relationships between software and modules, and the bus configuration templates are all stored in the database.
[0038] The low-code template module is used to write corresponding low-code templates for message processing according to the system message model and publish-subscribe relationship, including codes for message publishing type, message verification mechanism, message processing timing, message processing process, etc.; the low-code templates are stored in the database.
[0039] The code generation and publishing module automatically generates corresponding message processing code and bus configuration files for the system based on the set publish-subscribe relationship and the selected low-code template.
[0040] Database, used to store bus domains, topics, message models and other definitions, store low-code templates, bus configuration relationship templates, store software lists, and module lists.
[0041] The code file is used to store the message processing code generated by the code generation and publishing module of the system; the bus configuration file is used to store the bus configuration relationship generated by the code generation and publishing module to support the bus message transmission of the system at runtime.
[0042] The bus configuration management module includes three sub-modules: publish-subscribe management sub-module, topology relationship detection sub-module, and configuration template management sub-module. Figure 3 The information relationship between submodules is shown in the attached Figure 4 shown.
[0043] The publish-subscribe management submodule is used to specify the publisher and subscriber of the message model, and the publisher and subscriber can be software in the system or modules in the software; manage the bus publish-subscribe relationship in the system, including the establishment of new relationships, modification and termination of existing relationships; send the software / module list and bus publish-subscribe relationship to the topology relationship detection submodule for problem detection; send the software / module list and bus publish-subscribe relationship to the configuration template management submodule for bus configuration template creation.
[0044] The topology relationship detection submodule is used to detect the bus topology relationship of the system, detect and display whether there are mismatches, omissions, loops and other problems in the publish-subscribe relationship between multiple software in the system; detect and display whether there are mismatches, omissions, loops and other problems in the publish-subscribe relationship between the components in the software; and feed back the detection results to the publish-subscribe management submodule for display.
[0045] The configuration template management submodule is used to save the bus configuration that has been set in the system as a template. The template is stored in the disk in the form of a database. The template elements support on-demand expansion. Typical template elements include: template name, template category, parent template, template application scenario, template content, etc. The application scenario includes information such as user category, platform type, system function type, scenario description, etc. The template content includes information such as software list, software publish-subscribe relationship list, module list, module publish-subscribe relationship list, etc.
[0046] Furthermore, the configuration template management submodule can manage multiple templates and support retrieval, reading, displaying, modifying and saving of templates. When multiple templates are defined, the inheritance relationship between multiple templates can be managed; when a new system needs to be developed, the corresponding template can be retrieved according to information such as template type and template application scenario, and the bus publish-subscribe relationship in the template can be used as the bus configuration relationship of the new system.
[0047] The information relationship between the sub-modules of the bus configuration management module can be further summarized as follows: the publish-subscribe management sub-module reads the stored software / module list and bus publish-subscribe relationship from the database, and sends the software / module list and bus publish-subscribe relationship to the topology relationship detection sub-module and the configuration template management sub-module. The topology relationship detection sub-module detects the bus publish-subscribe relationship and feeds back the detection result to the publish-subscribe management sub-module, which displays the detection result and modifies and saves the bus publish-subscribe relationship. The configuration template management sub-module creates a bus configuration template based on the existing bus publish-subscribe relationship and stores the bus configuration template in the database.
[0048] The present invention provides a low-code development management platform for a DDS bus system, which is applied to bus configuration and bus message processing code generation of the bus system.
[0049] When the system is a new system to be developed, if there is no optional bus configuration template, a new configuration relationship can be created for it, and a bus message model and a low-code template can be selected or created. On this basis, a configuration relationship is created and the code is automatically generated. A configuration relationship template can be further created for it so that it can be used by other new systems later. If there is an optional bus configuration template, the present invention can be used to select the same or detailed configuration template for it, and quickly generate bus message processing code and configuration files.
[0050] When the system is a system that has been developed or is under development, the present invention can be used to read its bus configuration and bus message definition, detect the health status of its bus configuration relationship, extract its message model, and provide a visual management interface for users to adjust and manage the existing message model and bus configuration relationship. Further, the message model and bus configuration relationship can be saved as a bus configuration template, and the template can be managed so that it can be used by other systems later.
[0051] The following is further described by three embodiments:
[0052] Example 2
[0053] As a further optimization of Example 1, based on Example 1, this embodiment also includes the following technical features:
[0054] When developing a new system, if there is no ready-made bus configuration template available, you need to create a new bus message model, low-code template, and bus configuration relationship, and save the message model and bus configuration relationship as a bus configuration template, and then use the bus message processing code and bus configuration file generated in low-code form. The process is as follows Figure 5 shown.
[0055] 1. Based on the relevant requirements and design of the system, the user identifies the data exchange relationship between the software in the system and the data exchange relationship between the modules within each software;
[0056] 2. Classify the data exchange relationships between software and modules in the system, and use the message model management module to define bus domains, topics, and message identifiers for different types of data exchange relationships; and store the bus domains, topics, message identifiers and other related definitions in the database;
[0057] 3. Based on the classification of data exchange relationships between software and modules in the system, a bus message model is created for each type of exchanged data using a message model management module. The model elements include a message header, message content, and a message tail. The message header and message tail are in a fixed format. The message header includes a source address, a destination address, a message identifier, a message subject, a message domain, a message length, a total number of packets, a current packet number, etc. The message tail includes checksum information, an end flag, etc. The message content is variable length and can be defined separately according to business requirements. The message model is stored in a database.
[0058] 4. Use the low-code template module to define the low-code template of the bus message processing process. A typical bus message low-code template includes codes for message publishing type, message verification mechanism, message processing timing, message processing process, etc.;
[0059] 5. Use the publish-subscribe management submodule to read the software and module list of the system, or manually set the software and module list, and store the software name, software identifier, module name, and module identifier in the database. Then, based on the data exchange relationship between software and modules in the system, create a bus publish-subscribe relationship between software and modules. The publish-subscribe management submodule provides a UI interface, in which the bus publish-subscribe relationship between software and modules can be set by dragging and dropping, etc., and the publish-subscribe relationship can be set for two software or modules at the same time. The steps include:
[0060] a) In the software or module list, select any two software or any two modules, one of which is used as the bus message publisher and the other as the bus message subscriber;
[0061] b) Select one or more bus messages and drag them to the selected software or module;
[0062] c) The publish-subscribe management submodule automatically generates the published bus domain, topic, and message identifier for the bus message publisher, and generates the subscribed bus domain, topic, and message identifier for the bus message subscriber;
[0063] You can also set up a publish-subscribe relationship for a single software or module. The steps include:
[0064] a) In the software or module list, select any software or module;
[0065] b) Select one or more bus messages and drag them to the publishing area or subscription area of the selected software or module;
[0066] c) The publish-subscribe management submodule automatically generates the bus domain, topic, and message identifier for the software or module to publish or subscribe;
[0067] 6. The topology relationship detection submodule automatically detects the correctness of the bus publish-subscribe relationship, prompts errors, omissions, loops and other problems, and allows the user to correct the publish-subscribe relationship and then store it in the database;
[0068] 7. Use the configuration template management submodule to create the configuration relationship of the system as a template, which includes template attributes and template content. Fill in the template attributes in the UI interface of the configuration template management submodule. The template attributes are expandable. Typical template attributes include: template name, template category, parent template, application scenario, etc., where the application scenario includes user category, platform type, system function type, scenario description and other information. The template content includes software list, software publish-subscribe relationship list, module list, module publish-subscribe relationship list and other information;
[0069] 8. After completing the bus configuration relationship and low-code template, use the code generation and publishing module to generate bus message processing code and bus configuration file for the system.
[0070] Example 3
[0071] As a further optimization of Example 1, based on Example 1, this embodiment also includes the following technical features:
[0072] When developing a new system, if there is a ready-made bus configuration template available, you can make adaptive adjustments based on the ready-made bus configuration relationship and low-code template, and then generate the bus message processing code and bus configuration file. The process is as follows Figure 6 shown.
[0073] 1. The user uses the publish-subscribe management submodule to read the software and module list of the system, or manually sets the software and module list;
[0074] 2. The user retrieves the relevant bus configuration template using the configuration template management submodule according to the application scenario and other characteristics of the system, and applies the bus configuration template;
[0075] 3. The publish-subscribe management submodule reads the configuration information in the bus configuration template, and automatically matches the software and module lists in the system to generate the bus configuration information of the system, including the bus domain, topic, and message identifier published and subscribed by each software or module;
[0076] 4. The user makes adaptive adjustments to the bus configuration information of the software and modules in the publish-subscribe management submodule according to the system requirements and design, including adding, deleting, and modifying the bus domain, topic, and message identifier, and stores the adjusted bus configuration information in the database; the user makes addition, deletion, and modification adjustments to the message model in the message model management module, and stores the adjusted message model in the database;
[0077] 5. The topology relationship detection submodule automatically detects the correctness of the bus publish-subscribe relationship, prompts errors, omissions, loops and other problems, and allows the user to correct the publish-subscribe relationship and then store it in the database;
[0078] 6. Use the low-code template module to define or modify the low-code template of the processing process of the newly added or modified message model, including the code of message publishing type, message verification mechanism, message processing timing, message processing process, etc.;
[0079] 7. After completing the bus configuration relationship and low-code template, use the code generation and publishing module to generate bus message processing code and bus configuration file for the system.
[0080] Example 4
[0081] As a further optimization of Example 1, based on Example 1, this embodiment also includes the following technical features:
[0082] When checking and adjusting the correctness of the bus configuration of the existing system, use this platform to read its bus configuration, extract the message model, check and adjust the correctness of its configuration file, save the message model and bus configuration relationship as a bus configuration template, and regenerate the bus message processing code and bus configuration file. The process is as follows Figure 7 shown.
[0083] 1. The user uses the publish-subscribe management submodule to read the software and module list of the system, or manually sets the software and module list;
[0084] 2. Use the publish-subscribe management submodule to read the bus configuration file of the existing system. The publish-subscribe management submodule displays the bus domain, topic, and message identifier used by the system, and displays the publish-subscribe relationship between software and modules. Users adjust the publish-subscribe relationship according to system requirements and design;
[0085] 3. The user makes adaptive adjustments to the bus configuration information of the software and modules in the publish-subscribe management submodule according to the system requirements and design, including adding, deleting, and modifying the bus domain, topic, and message identifier, and stores the adjusted bus configuration information in the database; the user makes addition, deletion, and modification adjustments to the message model in the message model management module, and stores the adjusted message model in the database;
[0086] 4. The topology relationship detection submodule automatically detects the correctness of the bus publish-subscribe relationship, prompts errors, omissions, loops and other problems, and allows the user to correct the publish-subscribe relationship and then store it in the database;
[0087] 5. Use the low-code template module to define or modify the low-code template of the processing process of the newly added or modified message model, including the code of message publishing type, message verification mechanism, message processing timing, message processing process, etc.;
[0088] 6. Use the configuration template management submodule to create the configuration relationship of the system as a template, which includes template attributes and template content. Fill in the template attributes in the UI interface of the configuration template management submodule. The template attributes are expandable. Typical template attributes include: template name, template category, parent template, application scenario, etc., where the application scenario includes user category, platform type, system function type, scenario description and other information. The template content includes software list, software publish-subscribe relationship list, module list, module publish-subscribe relationship list and other information;
[0089] 7. After completing the bus configuration relationship and low-code template, use the code generation and publishing module to generate bus message processing code and bus configuration file for the system.
[0090] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned program modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different program modules as needed, that is, the internal structure of the device can be divided into different program units or modules to complete all or part of the functions described above. The modules in the embodiment can be integrated into one program unit, or one module can be split into multiple program units. In addition, the specific names of the modules are only for the convenience of distinguishing from each other and are not used to limit the scope of protection of this application.
[0091] As described above, the present invention can be preferably implemented.
[0092] All features disclosed in all embodiments in this specification, or steps in all methods or processes implicitly disclosed, except for mutually exclusive features and / or steps, can be combined and / or expanded or replaced in any manner.
[0093] The above description is only a preferred embodiment of the present invention and does not limit the present invention in any form. According to the technical essence of the present invention, within the spirit and principles of the present invention, any simple modification, equivalent replacement and improvement made to the above embodiment still falls within the protection scope of the technical solution of the present invention.
Claims
1. A development and management platform for a DDS bus system, characterized in that: include: Message model management module, bus configuration management module, low-code template module, code generation and publishing module, database, and files.
2. A development management platform for a DDS bus system according to claim 1, characterized in that: The message model management module is used to retrieve and manage message models, provide users with a UI interface for message model management, define new message models, and modify and delete existing message models.
3. A development management platform for a DDS bus system according to claim 2, characterized in that: The message model management module is used to allow the user to set and manage the bus domain, topic, and message identifier to which the message model belongs.
4. A development management platform for a DDS bus system according to claim 2, characterized in that: The message model management module is used to allow users to modify or delete existing bus domains, topics, and message identifiers.
5. A development management platform for a DDS bus system according to claim 1, characterized in that: The low-code template module is used to write low-code templates for message processing based on message models and publish-subscribe relationships.
6. A development management platform for a DDS bus system according to claim 1, characterized in that: The code generation and publishing module is used to automatically generate message processing code and bus configuration files based on the set publish-subscribe relationship and the selected low-code template.
7. A development management platform for a DDS bus system according to claim 1, characterized in that: The bus configuration management module includes a publish-subscribe management submodule, a topology relationship detection submodule, and a configuration template management submodule; The publish-subscribe management submodule is used to: specify publishers and subscribers for the message model and manage the publish-subscribe relationship; The topology relationship detection submodule is used to: detect and display the bus topology relationship, detect and display whether the publish-subscribe relationship between multiple software has mismatch, missing, or loopback, and detect and display whether the publish-subscribe relationship between components in the software has mismatch, missing, or loopback; The configuration template management submodule is used to: save the set bus configuration as a template; Manage multiple templates and support retrieval, reading, display, modification and saving of templates.
8. A development management platform for a DDS bus system according to claim 1, characterized in that: The database is used to: store bus domains, topics, message model definitions, store low-code templates, bus configuration relationship templates, store software lists, and module lists.
9. A development management platform for a DDS bus system according to any one of claims 1 to 8, characterized in that: The files include code files and bus configuration files; wherein the code files are used to store message processing codes; and the bus configuration files are used to store bus configuration relationships and support bus message transmission.
