Material library optimization method oriented to low-code development platform and low-code development platform
By introducing self-feedback system and meta-model abstraction technology into the low-code development platform, the problem that material library updates and expansion cannot meet user needs in a timely manner is solved, and the flexibility and adaptability of material library is improved, ensuring closed-loop data processing and continuous optimization of the system.
Patent Information
- Application Number
- CN202411686872.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-22
- Publication Date
- 2025-04-11
AI Technical Summary
When facing complex business scenarios and high interactive logic, the existing low-code development platform material library cannot meet user needs in a timely manner, resulting in challenges in maintenance and update iteration.
By introducing a self-feedback system in the low-code development platform, the data model of the material library is abstracted into a meta-model, and the monitoring data is checksum optimization using the meta-model, and the data is processed in combination with the target feedback algorithm to achieve optimization of the material library.
It improves the flexibility and adaptability of the material library, enhances the atomicity and scalability of the data, ensures closed-loop processing of data, reduces the risk of system failure, and realizes continuous optimization and iterative upgrade of the material library.
Smart Images

Figure CN119806512A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of Web development technology, and in particular to a material library optimization method for a low-code development platform and a low-code development platform. Background Art
[0002] In recent years, the research and application of low-code platforms have become increasingly in-depth. Low-code platforms provide a new way of system development. Under the condition of a relatively complete material library, they can provide non-professional program developers with a convenient project construction solution, which can not only improve the development speed, but also eliminate the need to constantly copy basic codes. Low-code platforms are widely used in systems with highly homogeneous content, such as admin management platforms, campus management systems, catering management systems and other scenarios.
[0003] However, with the in-depth application of low-code platforms, the complexity of business scenarios has become increasingly higher, and the requirements for the complexity of the interaction logic of atomic components have become increasingly higher, resulting in the update and expansion of the material library failing to meet user needs in a timely manner, bringing challenges to the maintenance and update iteration of the material library.
[0004] Existing solutions mainly include (1) generating back-end components and RESTful Web APIs of Web information systems based on metamodel design, so that different types of front-end components can interact with the back-end. This method introduces the concept of metamodel and simplifies program docking by using code generation, which increases the scalability of the data model to a certain extent, but does not fundamentally solve the problem of material library update decision-making. (2) Automatic discovery and recommendation of models by establishing a model repository and query mechanism. This method converts heterogeneous models into homogeneous graphs, and then queries the repository and generates relevant suggestions according to the needs of the model being developed. This method can improve the user experience to a certain extent, but its flexibility is limited by the existing repository, and no argument is given for the integrity of the repository. Summary of the invention
[0005] In view of this, the present invention provides a material library optimization method and a low-code development platform for a low-code development platform to solve the above-mentioned problems existing in the existing material library maintenance and update iteration solutions.
[0006] In a first aspect, the present invention provides a material library optimization method for a low-code development platform, wherein the low-code development platform includes a data layer and a logic layer, the logic layer includes a material library, and a self-feedback system is provided between the material library and the low-code development platform; the method includes:
[0007] At the data layer, the data model of the material library and the first monitoring data of the low-code development platform are obtained, and the data model is abstracted into a metamodel; the data source label and the target library type identifier of the first monitoring data are determined; when the data source label and the target library type identifier meet the preset conditions, the metamodel is used to verify the first monitoring data to obtain the second monitoring data, and the preset conditions indicate that the data source label is a self-feedback data label and the target library type identifier is a development library identifier; in the self-feedback system, the first monitoring data is processed by a target feedback algorithm to obtain a data analysis result; when the access role of the material library is a developer account, the material library is optimized based on the data analysis results to obtain an optimized target material library.
[0008] The material library optimization method for the low-code development platform provided by the present invention enhances the atomicity and scalability of the data by abstracting the data model of the material library into a metamodel, which helps to better understand and process data in different business scenarios and data operations, and improves the reusability and maintainability of the data. Furthermore, the data source label and the target library type identifier are determined for the first monitoring data, so that the source and destination of the data can be clearly classified. When the preset conditions (self-feedback data label and the target library type identifier is the development library identifier) are met, verification is performed to ensure the accuracy and reliability of the self-feedback data entering the development library. Furthermore, a self-feedback system is set between the material library and the low-code development platform, and the material library is optimized after the data is processed by the target feedback algorithm, which can realize closed-loop processing of data and improve the flexibility and adaptability of the material library.
[0009] In an optional implementation, after determining the data source tag and the target library type identifier of the first monitoring data, the method further includes:
[0010] When the data source label and the target library type identifier do not meet the preset conditions, the first monitoring data is managed using the metamodel based on the data source label and the target library type identifier to obtain the third monitoring data; when the data source label and the target library type identifier meet the preset conditions, the target monitoring data is determined based on the third monitoring data and the second monitoring data; the target monitoring data is processed by the target feedback algorithm to obtain the data analysis results.
[0011] The material library optimization method for the low-code development platform provided by the present invention reduces the risk of system failures caused by data anomalies, improper processing, etc. by rigorously processing the monitoring data under different conditions. Furthermore, the optimization of the material library by the data analysis results can be made more scientific and effective. With the continuous cycle of data processing and optimization process, the entire system can continuously adapt to the changes and development of the business, continuously improve the performance, functions and compatibility of the material library with the low-code development platform, and realize continuous optimization and iterative upgrading of the system.
[0012] In an optional embodiment, the method further includes:
[0013] Obtain the preset feedback algorithm and historical monitoring data of the low-code development platform; perform weighted processing on the historical monitoring data to obtain an initial weighted feedback coefficient; add the weighted feedback coefficient to the preset feedback algorithm to obtain a target feedback algorithm.
[0014] The material library optimization method for the low-code development platform provided by the present invention adds a weighted feedback coefficient to the preset feedback algorithm, so that the originally relatively fixed and general feedback algorithm can better adapt to the specific application scenarios of the low-code development platform and the material library.
[0015] In an optional implementation, in the self-feedback system, the first monitoring data is processed by a target feedback algorithm to obtain a data analysis result, including:
[0016] The first monitoring data is weighted to obtain a target weighted feedback coefficient; based on the target weighted feedback coefficient and the first monitoring data, the target feedback algorithm is used to obtain a data analysis result.
[0017] The material library optimization method for the low-code development platform provided by the present invention processes monitoring data and optimizes the material library through the improved target weighted feedback coefficient, which can make the optimization measures more targeted and improve the flexibility and adaptability of the material library.
[0018] In an optional implementation, the low-code development platform further includes a presentation layer, and the logic layer further includes a high-code module; the method further includes:
[0019] When the access role of the material library is a user account, the material library receives the JSONDSL commands issued by the presentation layer; in the logic layer, based on the JSONDSL commands, the material library and the high-code module are controlled to interact with each other.
[0020] The material library optimization method for the low-code development platform provided by the present invention enables components in the material library and codes in the high-code module to be more efficiently reused in different business scenarios and projects through an interactive method based on JSONDSL commands.
[0021] In an optional implementation, the data source tag further includes a local data tag and a migration data tag, and the target database type identifier further includes a primary database identifier and a standby database identifier.
[0022] In the second aspect, the present invention provides a low-code development platform, which includes: a data layer, a logic layer and a presentation layer; the logic layer includes a material library and a high-code module, and a self-feedback system is arranged between the material library and the low-code development platform; the material library is determined by the material library optimization method for the low-code development platform according to the above-mentioned first aspect or any corresponding embodiment thereof.
[0023] The low-code development platform provided by the present invention makes the low-code development platform more flexible in the face of different business needs and functional expansion through the layered architecture of the data layer, the logic layer and the presentation layer. Furthermore, a self-feedback system is set between the material library and the low-code development platform, which can continuously optimize the material library and the entire platform, and enable the low-code development platform to better adapt to the needs of different user groups and business scenarios.
[0024] In an optional implementation, the presentation layer includes a parsing engine.
[0025] In a third aspect, the present invention provides a computer device comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, computer instructions being stored in the memory, and the processor executing the material library optimization method for a low-code development platform according to the first aspect or any corresponding embodiment thereof by executing the computer instructions.
[0026] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the material library optimization method for a low-code development platform of the above-mentioned first aspect or any corresponding embodiment thereof.
[0027] In a fifth aspect, the present invention provides a computer program product, comprising computer instructions, which are used to enable a computer to execute the material library optimization method for a low-code development platform according to the above-mentioned first aspect or any corresponding embodiment. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0029] Figure 1 is a system architecture diagram of a low-code development platform according to an embodiment of the present invention;
[0030] Figure 2It is a flowchart of a material library optimization method for a low-code development platform according to an embodiment of the present invention;
[0031] Figure 3 is a schematic diagram of a metamodel according to an embodiment of the present invention;
[0032] Figure 4 is an example diagram of JSONDSL according to an embodiment of the present invention;
[0033] Figure 5 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0034] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0035] The existing low-code material library construction and maintenance methods have the following two main defects:
[0036] (1) A single data model cannot meet the needs of complex businesses
[0037] In the existing technical solutions, the thinking model of data model remains in the high-code development model, lacking the top-level design of metadata model. Therefore, there is a risk of data cross-redundancy for scalable business.
[0038] (2) Incomplete decision-making process for material library maintenance and update
[0039] The construction and updating of existing material libraries are mainly based on the development experience of team members. Model repositories are built or by presetting certain usage scenarios and presetting the relationship between elements. There is a lack of objective theoretical basis and data support, and the updating and iteration of material libraries are limited.
[0040] According to an embodiment of the present invention, an embodiment of a material library optimization method for a low-code development platform is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in an order different from that shown here.
[0041] In this embodiment, a material library optimization method for a low-code development platform is provided, which can be used for electronic devices such as computers, mobile phones, tablets, etc.
[0042] Among them, Figure 1 As shown, the low-code development platform includes a data layer and a logic layer. Further, the logic layer includes a material library, and a self-feedback system is set between the material library and the low-code development platform.
[0043] Figure 2 is a flow chart of a material library optimization method for a low-code development platform according to an embodiment of the present invention. Figure 2 As shown, the process includes the following steps:
[0044] Step S201, obtain the data model of the material library and the first monitoring data of the low-code development platform at the data layer, and abstract the data model into a metamodel.
[0045] Specifically, the location of the data layer and the storage scope it covers can be clearly defined in the architecture of the low-code development platform. As the basic storage area for the entire platform data, the data layer stores various data information related to the material library and monitoring data reflecting the operation of the low-code development platform.
[0046] For example, the data model of the material library may exist in the data layer in the form of a database table structure, a specific configuration file, or a data storage object, and the first monitoring data can be collected through the data collection points set at various key operation nodes of the platform (such as points for recording component usage, log records of database operations, etc.), and finally summarized and stored in the corresponding location of the data layer.
[0047] Furthermore, the data model of the material library and the first monitoring data of the low-code development platform can be accurately extracted from the data layer by using corresponding data access interfaces or query statements.
[0048] For example, if the data layer uses a relational database to store data, then you can write SQL query statements to filter out the data fields that describe the material library structure (that is, data model-related content) from the corresponding table, and obtain the most recent first monitoring data record according to conditions such as timestamp and operation type; if a non-relational database is used, such as MongoDB based on document storage, the relevant data information stored in the document can be obtained through appropriate query syntax.
[0049] Furthermore, the data model can be abstracted into a metamodel, such as Figure 3 As shown in the figure, in the meta-model, container Container, component component, event Event, style class Class, tag Tag, atomic attribute Atomic_attr, and the interaction relationship between each meta-model are introduced.
[0050] The metamodel elements, element relationships and their functions are described as follows:
[0051] (1)Container<id,level,parent,children> , in a single component, the relationship between Container and Component is 1:n (n>=1). The properties of Container include the container key id, which is of String type and has local uniqueness; the level to which the container belongs, the container layer layout, which has five types: top|end|mid|left|right; parent is the direct parent container id, which is unique within a single container; children is the collection of direct child container ids, of array type, and can exist n (n>=0).
[0052] (2) Component<id,children,parents> , components can be nested, and the relationship between components includes parent-child and sibling. Its own properties include component key id, String type, with local uniqueness; parents is the direct parent component id, which is unique within a single component; children is the collection of direct child component ids, array type, and there can be n (n>=0) ids.
[0053] (3) Event<type,methods,refer> , events are referenced in tags, and a single tag can have multiple events. Event attributes Event type type, enumeration type, including all JavaScript defined event types such as click, focus, hover, onload, etc.; event method definition methods, function type; event reference refer, function type.
[0054] (4) Style Class<id,type,scoped,actionScope> , which can be imported into components or referenced in direct tags. Its own properties include style key value id, which is locally unique, style type type, which is an enumeration type, including sass, scss, style, etc.; style scope scoped, which is a Boolean type and determines whether it is a local style or a global style; reference scope actionScope, which can be a string or an empty value, is the dynamic style introduction point.
[0055] (5) Tag<name,type,children,parents,sub_attr_key> , tags can exist in containers and components, with no limit on the number. The main attributes of the tags include tag name, tag type, direct child tags, direct parent tags, and the meta-attribute sub_attr_key of the tag with type, which is of String type and has type as the key value. Atomic_attr is introduced.
[0056] (6) Atomic_attr<key,attr1,attr2,attr3...> , is the meta-attribute of the tag, and its own attributes include key value key, string type; atomic attribute name attri (i>=0, i is a positive integer).
[0057] Through the above abstraction process, the low-code development platform can handle various resources in the material library in a unified and standardized way. The various elements and their relationships in the metamodel can help the platform better understand and manage the material library. For example, when optimizing the material library, the frequency of use and dependencies of components can be analyzed based on the metamodel, and more reasonable optimization decisions can be made. At the same time, during the operation of the platform, the metamodel also helps in the processing and analysis of monitoring data, because the monitoring data can be classified and associated based on the structure in the metamodel, so as to more effectively mine valuable information in the data.
[0058] Step S202: determine the data source label and target library type identifier of the first monitoring data.
[0059] The data source label may include a self-feedback data label, a local data label, and a migration data label; the target library type identifier may include a development library identifier, a primary library identifier, and a backup library identifier.
[0060] Specifically, the first monitoring data can be divided into local data, migration data and self-feedback data, and the operation target library type includes a primary and backup dual library.
[0061] Furthermore, the data source is labeled source (1: local data; 2: migration data; 3: self-feedback data), and the target library type is labeled target_type (1: primary library; 2: backup library; 3: development library).
[0062] Furthermore, the data input can be divided according to the flow.
[0063] Step S203: When the data source tag and the target library type identifier meet preset conditions, the first monitoring data is verified using the meta-model to obtain second monitoring data.
[0064] The preset condition indicates that the data source label is a self-feedback data label and the target library type identifier is a development library identifier, that is, source=3 and target_type=3.
[0065] Specifically, when source=3 and target_type=3, the first monitoring data is verified using the metamodel to obtain the second monitoring data.
[0066] Among them, Figure 3 As shown in the figure, the metamodel is an abstraction of the material library data model, which includes elements such as container, component, event, class, tag, and atomic attribute and their relationships. Therefore, data verification can include the following aspects:
[0067] (1) Data structure verification: Check whether the structure of the first monitoring data conforms to the structure defined in the metamodel. For example, whether the component-related data involved in the monitoring data has the component attributes specified in the metamodel (such as id:String, level:String, etc.).
[0068] (2) Data relationship verification: Verify whether the relationship between data is correct. For example, if the monitoring data involves a container and its subcomponents, it is necessary to verify whether the parent-child relationship of these components in the data is consistent with the relationship definition in the metamodel.
[0069] (3) Data attribute verification: Verify each attribute in the data. For example, for attributes with specific types (such as numbers, strings, etc.), check whether their data types comply with the requirements of the metamodel.
[0070] Step S204: Process the first monitoring data through a target feedback algorithm in the self-feedback system to obtain a data analysis result.
[0071] Among them, the target feedback algorithm is an improved Rocchio feedback algorithm.
[0072] Specifically, by setting up a self-feedback system between the material library and the low-code development platform, and optimizing the material library after processing the data through a target feedback algorithm, closed-loop processing of data can be achieved, thereby improving the flexibility and adaptability of the material library.
[0073] Step S205: When the access role of the material library is a developer account, the material library is optimized based on the data analysis result to obtain an optimized target material library.
[0074] Among them, the access role of the material library can be determined according to the access control RBAC policy of the role, which can include DEV developer accounts and USER user accounts.
[0075] Specifically, the material library receives the access request and determines the role type.
[0076] Furthermore, if the access role is a DEV account, the service is proxied to the development server and the material library extension mode is enabled. That is, the material library needs to be extended and optimized at this time. At this time, the material library can be optimized according to the data analysis results fed back by the self-feedback system, and the optimized target material library can be obtained.
[0077] The material library optimization method for the low-code development platform provided in this embodiment enhances the atomicity and scalability of the data by abstracting the data model of the material library into a metamodel, which helps to better understand and process data in different business scenarios and data operations, and improves the reusability and maintainability of the data. Furthermore, by determining the data source label and the target library type identifier of the first monitoring data, the source and destination of the data can be clearly classified. When the preset conditions (self-feedback data label and the target library type identifier is the development library identifier) are met, verification is performed to ensure the accuracy and reliability of the self-feedback data entering the development library. Furthermore, a self-feedback system is set between the material library and the low-code development platform, and the material library is optimized after the data is processed by the target feedback algorithm, which can achieve closed-loop processing of data and improve the flexibility and adaptability of the material library.
[0078] In an optional implementation, before the above step S204, the method further includes:
[0079] Step a1, obtain the historical monitoring data of the preset feedback algorithm and the low-code development platform.
[0080] Step a2: weighting the historical monitoring data to obtain an initial weighted feedback coefficient.
[0081] Step a3, adding a weighted feedback coefficient to the preset feedback algorithm to obtain a target feedback algorithm.
[0082] Among them, the preset feedback algorithm is the classic Rocchio feedback algorithm.
[0083] Specifically, the historical monitoring data is weighted, and the weight factors are from the user feedback channel, severity level, emergency level, importance level, etc. According to the following relationship (1), the weighted feedback coefficient D is calculated: syn :
[0084]
[0085] Where: represents the weight coefficient; (d1d2d3···) represents the weight factor.
[0086] Furthermore, a weighted feedback coefficient is added to the preset feedback algorithm, and the weight factor is continuously adjusted to obtain a target feedback algorithm, as shown in the following equation (2):
[0087]
[0088] Where: V u represents the adjusted personalized feedback vector; V o represents the personalized demand vector before adjustment; α represents the weight of the personalized demand vector before adjustment; D r and D n Respectively represent the positive feedback set and the negative feedback set; N r and N n Respectively represent D r and D n Number of feedback items; D i syn Indicates platform monitoring D i The weighted feedback coefficient of i Represents the initial sequence vector.
[0089] By adding a weighted feedback coefficient to the preset feedback algorithm, the originally relatively fixed and general feedback algorithm can be better adapted to the specific application scenarios of the low-code development platform and material library.
[0090] In an optional implementation, the above step S204 includes:
[0091] Step b1, performing weighted processing on the first monitoring data to obtain a target weighted feedback coefficient.
[0092] Step b2, based on the target weighted feedback coefficient and the first monitoring data, the target feedback algorithm is used to process and obtain a data analysis result.
[0093] Specifically, according to the description of step a2 above, the first monitoring data can be weighted, and the target weighted feedback coefficient can be calculated using the above relationship (1).
[0094] Furthermore, the target feedback algorithm shown in the above equation (2) can be called according to the obtained target weighted feedback coefficient, and the potential improvement points and requirements can be identified in combination with the first monitoring data, thereby obtaining the data analysis results after analysis and processing.
[0095] By processing monitoring data and optimizing the material library through the improved target weighted feedback coefficient, the optimization measures can be more targeted and the flexibility and adaptability of the material library can be improved.
[0096] In an optional implementation, after the above step S202, the material library optimization method for the low-code development platform further includes:
[0097] Step c1, when the data source label and the target library type identifier do not meet the preset conditions, based on the data source label and the target library type identifier, the meta model is used to manage the first monitoring data and obtain the third monitoring data;
[0098] Step c2, when the data source tag and the target library type identifier meet the preset conditions, determining the target monitoring data based on the third monitoring data and the second monitoring data;
[0099] Step c3, processing the target monitoring data through the target feedback algorithm to obtain data analysis results.
[0100] Specifically, the data source tag and the target library type identifier may not meet the preset conditions, including the following situations: source=1 and target_type=1; target_type=2 or target_type=3; source=2 and target_type=1.
[0101] Further, according to different situations, using the metamodel to perform different data management on the first monitoring data may include:
[0102] (1) When source=1 and target_type=1, execute the data operation command. When the command is executed successfully, trigger the synchronization of standby database information and record the data operation behavior. When the command fails, roll back the operation and record the data operation behavior and failure information.
[0103] (2) When target_type=2 or target_type=3, execute the data operation command, and when the command is successfully executed, record the data operation behavior. When the command fails to execute, record the data operation behavior and failure information.
[0104] (3) When source = 2 and target_type = 1, first, perform an off-site backup operation on the source data. If the backup fails, terminate the data operation, give a backup failure prompt, and record the data operation and command execution failure information. If the backup is successful, start executing the data operation command. When the command is executed successfully, trigger the synchronization of the backup database information and record the data operation behavior. When the command fails, roll back the operation, and record the data operation behavior and failure information.
[0105] Furthermore, through the above different processing processes, the processed third monitoring data can be obtained.
[0106] Further, when source=3 and target_type=3, the third monitoring data and the second monitoring data are combined to obtain target monitoring data, and the target monitoring data is processed and analyzed by the self-feedback system using a target feedback algorithm to obtain a corresponding data analysis result.
[0107] By rigorously processing monitoring data under different conditions, the risk of system failure caused by data anomalies, improper processing, etc. is reduced. Furthermore, the optimization of the material library based on data analysis results can be made more scientific and effective. With the continuous cycle of data processing and optimization, the entire system can continue to adapt to business changes and development, continuously improve the performance and functionality of the material library, and its compatibility with the low-code development platform, to achieve continuous optimization and iterative upgrades of the system.
[0108] In an optional implementation, after the above step S205, the material library optimization method for the low-code development platform further includes:
[0109] Step d1, when the access role of the material library is a user account, the material library receives the JSONDSL command issued by the presentation layer.
[0110] Step d2, in the logic layer, based on JSONDSL commands, control the data interaction between the material library and the high-code module.
[0111] Among them, Figure 1 As shown, the low-code development platform also includes a presentation layer, and the logic layer also includes a high-code module.
[0112] Specifically, when the access role of the material library is the USER user account, it receives JSONDSL commands, proxies the service to the online server, enables both high code and material library modes, and provides a switching window to realize data interaction between the material library and high code modules.
[0113] Among them, USER user accounts can be divided into admin accounts, ordinary accounts, Viewer accounts, whitelist accounts, and blacklist accounts.
[0114] Through the above-mentioned interaction method based on JSONDSL commands, components in the material library and codes in high-code modules can be reused more efficiently in different business scenarios and projects.
[0115] In this embodiment, a low-code development platform is provided, such as Figure 1 As shown, the low-code development platform includes a data layer, a logic layer, and a presentation layer.
[0116] Optionally, the logic layer may include a material library and a high-code module, and a self-feedback system is set between the material library and the low-code development platform.
[0117] Among them, the material library can be determined by the material library optimization method for the low-code development platform provided in the above embodiment of the present invention.
[0118] Optionally, the presentation layer may include a parsing engine.
[0119] The low-code development platform provided in this embodiment makes the low-code development platform more flexible in the face of different business needs and functional expansion through the layered architecture of the data layer, the logic layer and the presentation layer. Furthermore, a self-feedback system is set between the material library and the low-code development platform, which can continuously optimize the material library and the entire platform, and enable the low-code development platform to better adapt to the needs of different user groups and business scenarios.
[0120] In one example, a material library optimization method for a low-code platform is provided. The method enhances the atomicity of data and the scalability of the platform by designing a metamodel of the data model used by the material library. A self-feedback system is introduced to output a material library update strategy by monitoring, counting, and analyzing the platform's usage data, continuously optimizing the material library content, improving the user experience, enriching the platform's basic capabilities, and enhancing the scalability and maintainability of the material library to meet the growing application needs.
[0121] In order to achieve the above purpose, high code and material library are added to the logic layer, and a self-feedback system is added between the low code platform and the material library. The overall system structure is as follows Figure 1 shown.
[0122] Furthermore, the material library optimization method for the low-code platform in this example mainly includes three parts: material library construction, self-feedback algorithm optimization, and coordination between the self-feedback system and the material library. The specific execution steps are described as follows:
[0123] During the material library execution process, there are several situations. If only data layer operations are involved, execute steps 1.1 and 1.3; if only logic interactions are involved, execute steps 1.2 and 1.3; if data operations and logic interactions are involved, execute steps 1.1, 1.2, and 1.3. The detailed description is as follows.
[0124] Step 1: Material library data processing
[0125] Step 1.1: Model improvement: Abstract the data model into a metamodel. The metamodel is as follows: Figure 3 As shown in the figure, in the meta-model, container Container, component component, event Event, style class Class, tag Tag, atomic attribute Atomic_attr, and the interaction relationship between each meta-model are introduced.
[0126] The metamodel elements, element relationships and their functions are described as follows:
[0127] (1)Container<id,level,parent,children> , in a single component, the relationship between Container and Component is 1:n (n>=1). The properties of Container include the container key id, which is of String type and has local uniqueness; the level to which the container belongs, the container layer layout, which has five types: top|end|mid|left|right; parent is the direct parent container id, which is unique within a single container; children is the collection of direct child container ids, of array type, and can exist n (n>=0).
[0128] (2) Component<id,children,parents> , components can be nested, and the relationship between components includes parent-child and sibling. Its own properties include component key id, String type, with local uniqueness; parents is the direct parent component id, which is unique within a single component; children is the collection of direct child component ids, array type, and there can be n (n>=0) ids.
[0129] (3) Event<type,methods,refer> >, events are referenced in tags, and a single tag can have multiple events. Event attributes Event type type, enumeration type, including all JavaScript defined event types such as click, focus, hover, onload, etc.; event method definition methods, function type; event reference refer, function type.
[0130] (4) Style Class<id,type,scoped,actionScope> , which can be imported into components or referenced in direct tags. Its own properties include style key value id, which is locally unique, style type type, which is an enumeration type, including sass, scss, style, etc.; style scope scoped, which is a Boolean type and determines whether it is a local style or a global style; reference scope actionScope, which can be a string or an empty value, is the dynamic style introduction point.
[0131] (5) Tag<name,type,children,parents,sub_attr_key> , tags can exist in containers and components, with no limit on the number. The main attributes of the tags include tag name, tag type, direct child tags, direct parent tags, and the meta-attribute sub_attr_key of the tag with type, which is of String type and has type as the key value. Atomic_attr is introduced.
[0132] (6) Atomic_attr<key,attr1,attr2,attr3...> , is the meta-attribute of the tag, and its own attributes include key value key, string type; atomic attribute name attri (i>=0, i is a positive integer).
[0133] Furthermore, based on the metadata model instantiation, data management is performed as shown in the following steps.
[0134] Data sources are divided into local data, migration data, and self-feedback data. The types of target databases include primary and backup databases. First, label the data source source (1: local data; 2: migration data; 3: self-feedback data) and the target database type target_type (1: primary database; 2: backup database; 3: development database). Divert data input according to source.
[0135] Step 1.2: When source=1 and target_type=1, execute the data operation command. If the command is executed successfully, the standby database information synchronization is triggered and the data operation behavior is recorded. If the command fails to execute, the operation is rolled back and the data operation behavior and failure information are recorded.
[0136] Step 1.3: When target_type=2 or target_type=3, execute the data operation command, and when the command is successfully executed, record the data operation behavior. When the command fails to execute, record the data operation behavior and failure information.
[0137] Step 1.4: When source=2 and target_type=1, first, perform an off-site backup operation on the source data. If the backup fails, terminate the data operation, give a backup failure prompt, and record the data operation and command execution failure information. If the backup is successful, start executing the data operation command. When the command is executed successfully, trigger the synchronization of the standby database information and record the data operation behavior. When the command fails, roll back the operation, and record the data operation behavior and failure information.
[0138] Step 1.5: When source=3 and target_type=3, first perform data verification and store the data in the database. Then proceed to step 3.1 for data processing and analysis. For specific steps, see step 3.
[0139] Step 2: Logical processing of material library
[0140] Step 2.1: Receive access requests and determine the role type. Based on the role-based access control RBAC policy, accounts are divided into DEV developer accounts and USER user accounts. USER accounts are divided into admin accounts, ordinary accounts, Viewer accounts, whitelist accounts, and blacklist accounts.
[0141] Step 2.2: If the access role is a USER account, receive JSONDSL commands, proxy the service to the online server, enable the high code and material library modes, and provide a switching window.
[0142] Step 2.3: If the access role is a DEV account, proxy the service to the development server and enable the material library expansion mode. When entering the material library expansion mode, the self-feedback system analysis results are actively pushed to provide material library expansion suggestions. You can also manually trigger the execution of the latest data analysis and processing.
[0143] Step 3: Connect the self-feedback system between the material library and the low-code platform
[0144] In order to continuously optimize the content of the material library, this example connects a self-feedback system between the material library and the low-code platform, and optimizes and expands the material library through the self-feedback algorithm. This example is improved based on the Rocchio feedback algorithm and connected to the monitoring feedback module of the low-code platform.
[0145] Step 3.1: The platform monitoring data is weighted, and the weight factors are from user feedback channels, severity level, emergency level, importance level, etc. According to the above relationship (1), the weighted feedback coefficient D is output syn , as the input of the self-feedback algorithm.
[0146] Step 3.2: In the classic Rocchio feedback algorithm, add the weighted feedback coefficient and continuously adjust the weight factor. The calculation model formula used is shown in the above relationship (2).
[0147] Step 3.3: Collaboration between material library and self-feedback system
[0148] Step 3.3.1: Initialize the material library and manage the entry and exit of materials by registering and destroying components. The initial materials are divided into Header, SideBar, Table, SearchBox, SelectInput, etc.
[0149] Step 3.3.2: Continuously monitor and record the usage behavior and behavior weight of the low-code platform. The initial behavior classification is component selection, attribute configuration, business logic addition, etc. The data is stored in categories. For data that is not in the established category group, manual classification is performed and expanded to the existing category group.
[0150] Step 3.3.3: Analyze the user's behavior on the platform, analyze the frequency of component and module usage, and the user's component access and expansion behavior. Connect to the feedback system, collect user feedback information and feedback weights, classify them, and incorporate them into the monitoring database as input for weighted processing.
[0151] Step 3.3.4: According to the calculation formula in step 3.1, take the monitoring database as input, perform comprehensive weighted calculation, and output the weighted feedback coefficient.
[0152] Step 3.3.5: After obtaining the weighted feedback coefficient, call the Rocchio feedback algorithm in 3.2 to identify potential improvement points and requirements, and automatically push them to the material library R&D module based on the identified feedback information, enabling step 2.3 to provide a basis for improving and supplementing the material library.
[0153] The material library optimization method for low-code platforms provided in this example has the following beneficial effects:
[0154] (1) By designing the meta-model of the data model used by the material library, the atomicity and scalability of the data are enhanced, making the low-code platform applicable to a variety of table structures such as document-based, relational, and wide tables.
[0155] (2) Introduce a self-feedback system between the material library and the low-code platform to provide a scientific theoretical basis for material library optimization by monitoring, counting, and analyzing the platform's usage data and user feedback data, and classifying the data.
[0156] (3) In the self-feedback system, a weighted feedback coefficient is introduced into the self-feedback algorithm to enhance the self-feedback algorithm's ability to handle multi-dimensional influencing factors and optimize the adaptability of the recommendation results.
[0157] In an optional embodiment, in combination with the material library optimization method for a low-code platform provided in the above example, a specific embodiment is provided:
[0158] Step 1: Metamodel design
[0159] The metamodel of this example is as follows Figure 2 As shown in the figure, a modeled abstraction of application data, structure, entity relationships, and attributes is defined.
[0160] Step 2: Design the data model based on business division and metamodel constraints.
[0161] Taking the basic component table as an example, the specific data model based on the metamodel is extended as shown in Table 1 below. According to the metamodel, the system can create data records of specific entities for use by applications. In this embodiment, JSON is used to issue commands and configurations in a structured manner to the existing parsing engine, providing flexible command examples (JSON format).
[0162] Table 1. Table data model example
[0163] Step 3: Based on the basic components and database tables, develop a low-code platform and improve the basic material library.
[0164] Using JSONDSL, define data, data operations and system rules, and adapt to common databases such as MySql, SQLServer, Oracle, etc. through the built-in parsing engine to convert JSON configuration into database system commands, thereby achieving high adaptability of docking data. JSONDSL examples are as follows Figure 4 shown.
[0165] Step 4: The parsing engine is responsible for parsing and executing DSL commands, converting them into actual database operations.
[0166] The parsing engine can be customized according to specific system requirements. It accepts DSL commands and performs corresponding query, insert, update, and delete operations to meet the data needs of the application. By using appropriate adapters and connection information, the system can interoperate with multiple database systems, thereby enhancing the scalability of the database.
[0167] Step 5: After the low-code platform is launched, it is connected to the self-feedback system to regularly collect and analyze platform monitoring data. The pseudo code of the self-feedback algorithm is shown in Table 2 below. The main implementation process of the material library optimization method is to use code embedding to realize user behavior record logs and platform operation logs (with fault descriptions, fault causes, and fault rates); conduct different questionnaire surveys on new platform users (platform access for less than 3 months) and old users (platform use for more than 3 months), and form survey logs; analyze and mine the pain points of the low-code platform based on user behavior logs, platform operation logs, and user feedback logs, and output the analysis results.
[0168] Table 2. Pseudocode of self-feedback algorithm
[0169]
[0170]
[0171] Step 6: Maintain and supplement the material library based on the analysis results to continuously improve the platform capabilities. At this point, the material library construction and digital update decision-making method are completed.
[0172] The embodiment of the present invention also provides a computer device for executing the above Figure 2 The material library optimization method for low-code development platforms is shown.
[0173] See also Figure 5 , Figure 5 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Figure 5 As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 5 A processor 10 is taken as an example.
[0174] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.
[0175] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.
[0176] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0177] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.
[0178] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.
[0179] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.
[0180] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.
[0181] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined by the appended claims.
Claims
1. A material library optimization method for a low-code development platform, characterized in that: The low-code development platform includes a data layer and a logic layer, the logic layer includes a material library, and a self-feedback system is provided between the material library and the low-code development platform; the method includes: Acquire the data model of the material library and the first monitoring data of the low-code development platform at the data layer, and abstract the data model into a metamodel; Determine a data source label and a target library type identifier of the first monitoring data; When the data source label and the target library type identifier meet a preset condition, the first monitoring data is verified using the metamodel to obtain second monitoring data, wherein the preset condition indicates that the data source label is a self-feedback data label and the target library type identifier is a development library identifier; Processing the first monitoring data through a target feedback algorithm in the self-feedback system to obtain a data analysis result; When the access role of the material library is a developer account, the material library is optimized based on the data analysis result to obtain an optimized target material library.
2. The method according to claim 1, characterized in that After determining the data source label and target library type identifier of the first monitoring data, the method further includes: When the data source label and the target library type identifier do not meet the preset condition, based on the data source label and the target library type identifier, using the meta model to manage the first monitoring data and obtain third monitoring data; When the data source tag and the target library type identifier meet the preset condition, determining target monitoring data based on the third monitoring data and the second monitoring data; The target monitoring data is processed by a target feedback algorithm to obtain the data analysis result.
3. The method according to claim 1, characterized in that: The method further comprises: Obtaining a preset feedback algorithm and historical monitoring data of the low-code development platform; Performing weighted processing on the historical monitoring data to obtain an initial weighted feedback coefficient; The weighted feedback coefficient is added to the preset feedback algorithm to obtain the target feedback algorithm.
4. The method according to claim 1, characterized in that: The first monitoring data is processed by a target feedback algorithm to obtain a data analysis result, including: Performing weighted processing on the first monitoring data to obtain a target weighted feedback coefficient; Based on the target weighted feedback coefficient and the first monitoring data, the data analysis result is obtained through processing by the target feedback algorithm.
5. The method according to claim 1, characterized in that: The low-code development platform further includes a presentation layer, and the logic layer further includes a high-code module; the method further includes: When the access role of the material library is a user account, the material library receives the JSONDSL command issued by the presentation layer; In the logic layer, based on the JSONDSL command, the material library and the high-code module are controlled to perform data interaction.
6. The method according to claim 2, characterized in that The data source tag also includes a local data tag and a migration data tag, and the target library type identifier also includes a primary library identifier and a standby library identifier.
7. A low-code development platform, characterized in that: The low-code development platform includes a data layer, a logic layer, and a presentation layer; The logic layer includes a material library and a high-code module, and a self-feedback system is provided between the material library and the low-code development platform; The material library is determined by the material library optimization method for a low-code development platform as described in any one of claims 1 to 6.
8. The low-code development platform according to claim 7, characterized in that: The presentation layer includes a parsing engine.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the material library optimization method for a low-code development platform as described in any one of claims 1 to 6.
10. A computer program product, characterized in that It includes computer instructions, which are used to enable a computer to execute the material library optimization method for a low-code development platform as described in any one of claims 1 to 6.