CN118132060B - Metadata-driven low-code software development method - Google Patents
Metadata-driven low-code software development method Download PDFInfo
- Publication number
- CN118132060B CN118132060B CN202410544115.0A CN202410544115A CN118132060B CN 118132060 B CN118132060 B CN 118132060B CN 202410544115 A CN202410544115 A CN 202410544115A CN 118132060 B CN118132060 B CN 118132060B
- Authority
- CN
- China
- Prior art keywords
- low
- model
- code
- metadata
- definition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000013461 design Methods 0.000 claims abstract description 57
- 238000011161 development Methods 0.000 claims abstract description 38
- 230000002452 interceptive effect Effects 0.000 claims abstract description 6
- 238000007726 management method Methods 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 28
- 230000006870 function Effects 0.000 claims description 23
- 238000009877 rendering Methods 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 14
- 238000013515 script Methods 0.000 claims description 12
- 238000013475 authorization Methods 0.000 claims description 11
- 230000006399 behavior Effects 0.000 claims description 8
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000013499 data model Methods 0.000 claims description 5
- 238000013524 data verification Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 claims description 4
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 abstract description 4
- 230000004044 response Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000012423 maintenance Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
The invention discloses a metadata-driven low-code software development method, which belongs to the technical field of software development and comprises the following steps: establishing a low code development workstation for providing collection and design of interactive graphical interface software requirements for low code developers; based on the low-code development workstation, a metadata model central warehouse is constructed and used for storing and managing model metadata after low-code development; designing a low-code running frame based on a metadata model central warehouse, and constructing a platform base frame for deploying front-end applications; and generating an application center based on the low-code running frame, wherein the application center is used for automatically deploying various business applications developed by the low-code software based on metadata driving. According to the invention, through a metadata-driven low-code development mode and a universal platform foundation assembly, various links in the traditional development are reduced and simplified, and the response speed to the service demand change is accelerated.
Description
Technical Field
The invention relates to the technical field of software development, in particular to a metadata-driven low-code software development method.
Background
In the current software development field, a low-code development method has become an important means for quickly constructing an application program, and the method enables business personnel to construct the application through a graphical interface and a small amount of low-code development instead of the traditional mode that a large amount of codes need to be written, so that the software development efficiency is greatly improved. However, existing low-code development methods are limited by the implementation of low-code platforms, which have significant limitations in handling large, complex business scenarios, and the flexibility and scalability of low-code platforms also require more advanced low-code engines to improve and enhance. Therefore, there is an urgent need to design a software design method through a model driven architecture, aiming at constructing complex business applications by a low-code software development method of a metadata definition model, and meeting the requirements of advanced business logic processing and data integration.
Disclosure of Invention
In order to solve the problems, the invention aims to provide a low-code software development method based on metadata driving, which utilizes metadata to drive dynamic generation and operation of applications, thereby further reducing the code writing requirement and accelerating the software development speed.
In order to achieve the technical purpose, the application provides a metadata-driven low-code software development method, which comprises the following steps:
Establishing a low-code development workstation for providing collection and design of interactive graphical interface software requirements for a low-code developer, wherein the collection and design comprises data model structure design, business flow design, interface and form design;
based on the low-code development workstation, a metadata model central warehouse is constructed and used for storing and managing model metadata after low-code development, wherein the model metadata comprises a model and a definition of model attributes, a storage structure definition of the model and an internationalization definition of the model;
Designing a low-code running frame based on a metadata model central warehouse, and constructing a platform base frame for deploying front-end applications by setting a form and UI rendering engine, a low-code running engine, a customized extension point and a workflow engine;
And generating an application center based on the low-code running frame, wherein the application center is used for automatically deploying various business applications developed by the low-code software based on metadata driving.
Preferably, in the process of realizing the definition of the model and the model attribute, after creating a new model through the UI interface, the definition of the model and the model attribute is saved, the association relation of the set model and the configuration of access control are supported, and the definition of the model and the model attribute is realized.
Preferably, in the process of realizing the storage structure definition of the model, the storage structure definition of the model is realized by defining the storage mode of the model in the relational database, including a table corresponding to the model and a field of a table corresponding to the model attribute.
Preferably, in the process of implementing the internationalized definition of the model, the internationalized definition of the model is implemented by defining the model and the model attribute according to the translated contents of each language, including the translated contents of the model name and the translated contents of the model attribute.
Preferably, in the process of designing the low-code running frame, the form is created and configured through a graphic interface, the fields and the layout are defined without writing codes, the form and other pages which are completed through the design are converted into an actual user interface through a UI rendering engine, the input of a user is processed, and the operation result is fed back to the system to complete the design of the form and the UI rendering engine.
Preferably, in designing the form and the UI rendering engine, functions of the form and the UI rendering engine include:
Form layout control: supporting setting the overall layout and structure of the form, including the location, size and order of the fields and portions, through interface operations;
form design interface: providing an intuitive graphical user interface, and enabling a user to design a form in a mode of dragging and dropping the component without writing codes;
form column definition: enabling a user to define column properties for various fields in a form and how the fields are displayed in the form;
form personalization view: support creation of custom form views, selection of which fields are exposed and their layout to meet the needs of a particular role or workflow;
form association list definition: supporting in the form a list defining business objects associated with the form, including display of related records and management of associated data;
form personalization block definition: supporting personalized definition of partial areas in a form to logically organize information and improve the readability of a user interface, and supporting dynamic writing of a front-end component in an HTML and JavaScript mode;
list definition: supporting setting list view, including fields to be displayed in the list, ordering of the fields and filter setting;
list element definition: support defines each element in the list, including format, style, and interaction behavior.
Preferably, in the process of designing the low-code running framework, the front-end interface and the back-end business logic are opened through the low-code running engine, so that the expansion and modification of the business logic can be completed only through script writing.
Preferably, in the process of designing the low-code running frame, a customized extension point is designed by integrating tangent plane oriented programming, and is used for supporting customized setting of the customized rule extension point before and after creation, updating, deleting or displaying of service data, including processing and verification of the data, and controlling execution of rules based on specific conditions, wherein,
At the server, defining customized rules in the life cycle of data through customized extension points, including data processing and verification and execution condition control, executing corresponding business rules according to customized conditions, and triggering customized functions through client or server scripts according to customized buttons and links added in a user interface;
And writing low codes of the client through customized extension points, wherein the low codes of the client are used for enhancing the interactivity of the UI form, including front-end data verification, form item linkage and user experience enhancement, and configuring the low codes of the client to be triggered at different form events, and setting triggering conditions at the same time, wherein the UI strategy is used for controlling and managing the behaviors of user interface elements, including the display/hiding, editing authority and filling-in conditions of fields, and supporting the control execution based on the customized conditions.
Preferably, in constructing the platform base frame, the platform base assembly includes:
multi-tenant management: the system is used for isolating platform functions and data by taking tenants as units;
User management: for generating a new user account and managing an existing account;
role management is used to define, assign and manage user roles, and in combination with group management and authority control of user groups, simplify assignment of access authorities, wherein,
Rights management, comprising:
RBAC authority management, which is used for controlling the access to roles and supporting the setting of authorities to specific entities of different roles;
ACL rights management: the access control for fine granularity of tables, fields and record levels includes authorization to perform specific operations on specific objects, authorization to rest pi based on authorization of custom conditions;
Data rights management: for permission control of visibility of multi-dimensional data.
Preferably, in designing the low code running framework, the workflow engine is designed by defining and modeling a complex workflow, and designing a plurality of types of workflow nodes and graphical flows, wherein the defining and modeling the complex workflow includes: tasks, decision points, branches and loops, and designing a workflow scheduler to monitor task creation, execution and operation processes of a workflow; the workflow nodes of various types comprise running scripts, output logs, conditional branches and approval; based on the visualized user interface, the graphical flow design is completed through the drag-and-drop mode design and the customization of the workflow.
The invention discloses the following technical effects:
The invention simplifies the software development flow and effectively shortens the whole development period from design to deployment. Traditional development modes need to go through the complete stages of prototype design, product demand design, summary design, detailed design, database design, coding, testing, deployment, online, etc. According to the invention, through a metadata-driven low-code development mode and a universal platform foundation assembly, various links in the traditional development are reduced and simplified, and the response speed to the service demand change is accelerated.
The invention improves the reusability of codes. By introducing metadata-based page dynamic generation technology and modular functionality, product functionality is easier to manage and reuse, reducing the additional cost of understanding and modifying old code.
In the aspect of maintenance cost, the invention remarkably reduces long-term maintenance cost by greatly traditional front and back end code quantity and improving code quality. The method reduces a large amount of code rewriting requirements caused by service change, so that the system architecture is more stable, and potential system defects and instability are reduced.
The invention improves the development efficiency and the code reusability, reduces the maintenance cost, improves the overall maturity of the software, enhances the stability and the reliability of the system, reduces the repeated test period caused by defect repair and function adjustment, and brings more stable and reliable software products for users.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are needed in the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a technical architecture diagram of a low-code software development method according to the present invention;
FIG. 2 is a schematic diagram of a customized extension point according to the present invention.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present application more apparent, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application, and it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. The components of the embodiments of the present application generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the application, as presented in the figures, is not intended to limit the scope of the application, as claimed, but is merely representative of selected embodiments of the application. All other embodiments, which can be made by a person skilled in the art without making any inventive effort, are intended to be within the scope of the present application.
The invention provides a metadata-driven low-code software development method, which comprises the following steps:
Establishing a low-code development workstation for providing collection and design of interactive graphical interface software requirements for a low-code developer, wherein the collection and design comprises data model structure design, business flow design, interface and form design;
based on the low-code development workstation, a metadata model central warehouse is constructed and used for storing and managing model metadata after low-code development, wherein the model metadata comprises a model and a definition of model attributes, a storage structure definition of the model and an internationalization definition of the model;
Designing a low-code running frame based on a metadata model central warehouse, and constructing a platform base frame for deploying front-end applications by setting a form and UI rendering engine, a low-code running engine, a customized extension point and a workflow engine;
And generating an application center based on the low-code running frame, wherein the application center is used for automatically deploying various business applications developed by the low-code software based on metadata driving.
Further preferably, in the low-code software development method, in the process of realizing the definition of the model and the model attribute, after a new model is created through the UI interface, the definition of the model and the model attribute is saved, the association relation of the set model and the configuration of access control are supported, and the definition of the model and the model attribute is realized.
Further preferably, in the low-code software development method, in the process of implementing the storage structure definition of the model, the storage structure definition of the model is implemented by defining the storage mode of the model in the relational database, including a table corresponding to the model and a field of a table corresponding to the model attribute.
Still preferably, in the low-code software development method according to the present invention, in the process of implementing the internationalized definition of the model, the internationalized definition of the model is implemented by defining the model and the model attribute according to the translated contents of the respective languages, including the translated contents of the model name and the translated contents of the model attribute.
Still preferably, in the low-code software development method according to the present invention, in the process of designing a low-code running frame, a form is created and configured through a graphic interface, fields and layouts are defined without writing codes, and the form and other pages after the design are converted into an actual user interface through a UI rendering engine, so as to process the input of a user, and feed back the operation result to the system, thereby completing the design of the form and the UI rendering engine.
Still preferably, in designing a form and a UI rendering engine according to the low-code software development method of the present invention, functions of the form and the UI rendering engine include:
Form layout control: supporting setting the overall layout and structure of the form, including the location, size and order of the fields and portions, through interface operations;
form design interface: providing an intuitive graphical user interface, and enabling a user to design a form in a mode of dragging and dropping the component without writing codes;
form column definition: enabling a user to define column properties for various fields in a form and how the fields are displayed in the form;
form personalization view: support creation of custom form views, selection of which fields are exposed and their layout to meet the needs of a particular role or workflow;
form association list definition: supporting in the form a list defining business objects associated with the form, including display of related records and management of associated data;
form personalization block definition: supporting personalized definition of partial areas in a form to logically organize information and improve the readability of a user interface, and supporting dynamic writing of a front-end component in an HTML and JavaScript mode;
list definition: supporting setting list view, including fields to be displayed in the list, ordering of the fields and filter setting;
list element definition: support defines each element in the list, including format, style, and interaction behavior.
Further preferably, in the low-code software development method, in the process of designing the low-code running frame, the front-end interface and the back-end business logic are opened through the low-code running engine, so that the expansion and the modification of the business logic can be completed only through script writing.
Still preferably, in the low-code software development method of the present invention, in the process of designing a low-code running frame, a customized extension point is designed by integrating tangent plane oriented programming, so as to support the customized rule extension point to be customized before and after creating, updating, deleting or displaying the service data, including the processing and verification of the data, and the execution of the control rule based on specific conditions,
At the server, defining customized rules in the life cycle of data through customized extension points, including data processing and verification and execution condition control, executing corresponding business rules according to customized conditions, and triggering customized functions through client or server scripts according to customized buttons and links added in a user interface;
And writing low codes of the client through customized extension points, wherein the low codes of the client are used for enhancing the interactivity of the UI form, including front-end data verification, form item linkage and user experience enhancement, and configuring the low codes of the client to be triggered at different form events, and setting triggering conditions at the same time, wherein the UI strategy is used for controlling and managing the behaviors of user interface elements, including the display/hiding, editing authority and filling-in conditions of fields, and supporting the control execution based on the customized conditions.
Further preferably, in the low-code software development method mentioned in the present invention, in the process of constructing a platform base frame, the platform base component includes:
multi-tenant management: the system is used for isolating platform functions and data by taking tenants as units;
User management: for generating a new user account and managing an existing account;
role management is used to define, assign and manage user roles, and in combination with group management and authority control of user groups, simplify assignment of access authorities, wherein,
Rights management, comprising:
RBAC authority management, which is used for controlling the access to roles and supporting the setting of authorities to specific entities of different roles;
ACL rights management: the access control for fine granularity of tables, fields and record levels includes authorization to perform specific operations on specific objects, authorization to rest pi based on authorization of custom conditions;
Data rights management: for permission control of visibility of multi-dimensional data.
Still preferably, in the low-code software development method according to the present invention, in designing a low-code running framework, a workflow engine is designed by defining and modeling a complex workflow, and designing a plurality of types of workflow nodes and a graphical flow, where defining and modeling the complex workflow includes: tasks, decision points, branches and loops, and designing a workflow scheduler to monitor task creation, execution and operation processes of a workflow; the workflow nodes of various types comprise running scripts, output logs, conditional branches and approval; based on the visualized user interface, the graphical flow design is completed through the drag-and-drop mode design and the customization of the workflow.
The invention also discloses a low-code software development system based on metadata drive, which is used for realizing the low-code software development method, and comprises the following steps:
the workstation construction module is used for establishing a low-code development workstation and providing collection and design of the interactive graphical interface software requirements for a low-code developer, and comprises a data model structure design, a business process design, an interface and a form design;
the metadata model central warehouse construction module is used for constructing a metadata model central warehouse based on the low-code development workstation and used for storing and managing model metadata after low-code development, and comprises a model and a definition of model attributes, a storage structure definition of the model and an internationalization definition of the model;
The running frame design module is used for designing a low-code running frame based on the metadata model central warehouse, and constructing a platform base frame for deploying front-end applications by setting a form and UI rendering engine, a low-code running engine, a customized extension point and a workflow engine;
The application deployment module is used for generating an application center based on the low-code running frame and automatically deploying various business applications developed by the low-code software based on metadata driving.
Example 1: as shown in FIG. 1, the invention provides a low-code software development method based on metadata driving, which utilizes metadata to drive dynamic generation and operation of applications, thereby further reducing the demand of code writing and accelerating the speed of software development, and the specific scheme is as follows:
1. Development of low code development workstation:
The collection and design of low code developers through interactive graphical interface software requirements in a workstation, comprising: data model structural design, business process design, interface and form design.
2. Development of metadata model central repository:
storing and managing the model metadata after low code development, wherein the content comprises:
definition of models and model properties:
After a new model is created through the UI interface, the definition of the model and the model attribute is saved, and configuration such as association relation, access control and the like of the set model is supported. Different types of attributes, such as text, number, date, etc., can be added to the model table to support setting the attributes and behaviors of the fields, such as: linkage rules between attributes, selectable items of attributes, and the like.
Storage structure definition of model:
The storage mode of the model in the relational database is defined, and the storage mode comprises a table corresponding to the model and a field of a table corresponding to the model attribute.
Internationalization definition of model:
The definition model and the model attribute are based on translated contents of languages of each country, including translated contents of model names and translated contents of model attributes.
3. Development of a low code running framework:
3.1, form and UI rendering engine:
The method comprises the steps of creating and configuring a form through a graphical interface, defining fields and layout without writing codes, converting the form and other pages which are designed into an actual user interface through a UI rendering engine, processing user input and feeding back operation results to the system.
3.2, Low code running engine:
The framework uses JavaScript as a low-code programming language, and the front-end interface and the back-end business logic are opened through the low-code running engine, so that the expansion and modification of the business logic by a low-code developer can be completed only through simple script writing, and the complex flow of code writing, compiling, packaging and online is not needed like the traditional development.
3.3, Customizing an expansion point:
And supporting customized extension processing of the server side and the client side. At the server side, it allows the definition of customized rules (e.g., before and after creation, update, deletion, or display) during the lifecycle of the data, including data processing and validation, and execution of conditional controls. The user can execute the corresponding business rule according to the custom condition. Meanwhile, the addition of custom buttons and links in a user interface is supported, and more complex operations, such as triggering of custom functions, are realized through a client or a server script.
At the client, the user may write client low code to enhance the interactivity of the UI forms, such as front-end data verification, form linkage, and enhancement of the user experience. These low codes may be configured to trigger at different form events (e.g., field changes, form loading, form submission) and may set trigger conditions. UI policies are then used to control and manage the behavior of user interface elements, such as field display/hiding, editing rights, and fill-in conditions, as well as support control execution based on custom conditions.
3.4, Platform foundation assembly:
The platform base assembly includes:
Multi-tenant management: and supporting the isolation of platform functions and data by taking the tenant as a unit.
User management: creating a new user account and managing an existing account, the attributes including: name, contact, department attribution, role, etc.
Role management: the User roles are defined, distributed and managed in a supporting mode, grouping management and authority control of the User groups are achieved through combination of User groups (User groups), and distribution of access authorities is simplified.
Rights management:
1) RBAC rights, role-based access control support sets rights for specific entities of different roles, such as menus, service directories, button operations, etc.;
2) ACL rights: fine-grained access control of tables, fields, and record levels, including authorization to perform certain operations (e.g., view, create, edit, delete) on certain objects (models, model properties, views, etc.), authorization to rest pi based on custom conditions, etc.;
3) Data rights: rights control in data visibility in corporate, department, project, application, personal dimensions is supported.
Workflow engine:
1) Supporting complex workflows for definition and modeling, including: tasks, decision points, branches, loops, etc. The task creation, execution and monitoring of the running process of the workflow is achieved by a workflow scheduler.
2) Supporting multiple types of workflow nodes, such as: running scripts, outputting logs, conditional branches, approving and the like.
3) And (3) designing a graphical flow: the workflow is designed and customized by drag and drop mode through visual user interface.
5. Development of application centers:
various business applications developed by the metadata-driven low-code software development method support online application in an application store, the platform automatically deploys the applications required to be put into production for use, and the terminal user can use the functions of business applications of the application center after logging in the platform.
The low-code software development method based on metadata driving also has the following characteristics:
1. metadata driven:
And automatically rendering a list page and a form page corresponding to each model based on the definition of the metadata model. Unlike traditional writing implementation functions, the platform does not need to write different codes for each model or business function based on a low-code running framework, and does not need to generate codes and run a system according to a code model as in other low-code platforms on the market. Based on the metadata-driven low-code engine, all business functions can be dynamically generated and realized by only one set of low-code running frame and one set of codes, corresponding to pages of all business functions, and corresponding to personalized processing parts of different business functions, the frame support is realized by defining expansion points of front ends or back ends.
The data structure of the core metadata object is shown in tables 1-4:
TABLE 1 model definition
TABLE 2 model Property definition
Table 3 model storage structure definition
Metadata name | Metadata definition specification |
Storing table names | The names of the tables are stored in a relational database. |
Store column name | Column names of the tables are stored in a relational database. |
Model name | The names of the corresponding models in the platform. |
Model attribute name | Names of corresponding model attributes in the platform. |
TABLE 4 internationalized definition of model
2. Low code engine:
2.1 forms and UI rendering Engine
The functions of the form and UI rendering engine include:
form layout control: the overall layout and structure of the form, including the location, size, and order of the fields and portions, is supported for setting by interface operations.
Form design interface: an intuitive graphical user interface is provided, and a user can design a form by dragging and dropping components without writing codes.
Form column definition: enabling the user to define column properties, such as column width and column order, for individual fields in the form and how the fields are displayed in the form.
Form personalization view: creation of custom form views is supported, selecting which fields are exposed and their layout to meet the needs of a particular role or workflow.
Form association list definition: a list defining business objects associated with the form is supported in the form, including the display of related records and management of associated data.
Form personalization block definition: partial regions in the personalized definition form, such as information blocks or groupings, are supported to logically organize information and improve the readability of the user interface, and to dynamically write front-end components in HTML and JavaScript.
List definition: a settings list view is supported that includes fields in the list that should be displayed, ordering of the fields, and filter settings.
List element definition: interface elements that support defining individual elements in a list, such as rows and columns, including formats, styles, and interactions.
2.2, Customizing an expansion point:
The invention supports customized extension points to realize personalized functions, and the realization principle is to integrate tangent plane oriented programming (AOP) to realize function enhancement, as shown in figure 2.
And supporting the custom setting of the customized rule expansion points before and after the creation, updating, deleting or displaying of the service data. In an actual low code development process, the customized extension points include processing and validation of data and control of rule execution based on specific conditions, e.g., may define checking the integrity of the data before adding a new record or cleaning up associated data after deleting a record.
The development mode is required to go through the complete stages of prototype design, product demand design, outline design, detailed design, database design, coding, testing, deployment, online and the like relative to the traditional development mode. The invention reduces and simplifies various links in the traditional development and the like through a metadata-driven low-code development mode and a universal platform foundation assembly, and accelerates the response speed to the change of the service demand
The invention improves the development efficiency and the code reusability, reduces the maintenance cost, improves the overall maturity of the software, enhances the stability and the reliability of the system, reduces the repeated test period caused by defect repair and function adjustment, and brings more stable and reliable software products for users.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
In the description of the present invention, it should be understood that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature. In the description of the present invention, the meaning of "a plurality" is two or more, unless explicitly defined otherwise.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention also include such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.
Claims (6)
1. The low-code software development method based on metadata driving is characterized by comprising the following steps of:
Establishing a low-code development workstation for providing collection and design of interactive graphical interface software requirements for a low-code developer, wherein the collection and design comprises data model structure design, business flow design, interface and form design;
Based on the low-code development workstation, a metadata model central warehouse is constructed and used for storing and managing model metadata after low-code development, wherein the model metadata comprises a model and a definition of model attributes, a storage structure definition of the model and an internationalization definition of the model;
Designing a low-code running frame based on the metadata model central warehouse, and constructing a platform base frame for deploying front-end applications by setting a form and UI rendering engine, a low-code running engine, a customized extension point and a workflow engine;
Based on the low-code running frame, an application center is generated and used for automatically deploying various business applications developed by low-code software based on metadata driving;
in the process of realizing the definition of the model and the model attribute, after a new model is created through a UI interface, the definition of the model and the model attribute is saved, the configuration of the association relation and the access control of the set model is supported, and the definition of the model and the model attribute is realized;
in the process of realizing the storage structure definition of the model, the storage structure definition of the model is realized by defining the storage mode of the model in a relational database, wherein the storage mode comprises a table corresponding to the model and a field of a table corresponding to the model attribute;
in the process of realizing the internationalization definition of the model, the internationalization definition of the model is realized by defining the model and the model attribute according to the translated contents of languages of each country, including the translated contents of model names and the translated contents of the model attribute.
2. The metadata-driven low-code software development method of claim 1, wherein:
in the process of designing the low-code running frame, the form is created and configured through a graphical interface, fields and layout are defined without writing codes, the form and other pages which are completed by design are converted into an actual user interface through a UI rendering engine, input of a user is processed, and an operation result is fed back to the system to complete the design of the form and the UI rendering engine.
3. The metadata-driven low-code software development method of claim 2, wherein:
in designing forms and UI rendering engines, the functions of the forms and UI rendering engines include:
Form layout control: supporting setting the overall layout and structure of the form, including the location, size and order of the fields and portions, through interface operations;
form design interface: providing an intuitive graphical user interface, and enabling a user to design a form in a mode of dragging and dropping the component without writing codes;
form column definition: enabling a user to define column properties for various fields in a form and how the fields are displayed in the form;
form personalization view: support creation of custom form views, selection of which fields are exposed and their layout to meet the needs of a particular role or workflow;
form association list definition: supporting in the form a list defining business objects associated with the form, including display of related records and management of associated data;
form personalization block definition: supporting personalized definition of partial areas in a form to logically organize information and improve the readability of a user interface, and supporting dynamic writing of a front-end component in an HTML and JavaScript mode;
list definition: supporting setting list view, including fields to be displayed in the list, ordering of the fields and filter setting;
list element definition: support defines each element in the list, including format, style, and interaction behavior.
4. A metadata-driven low-code software development method according to claim 3, characterized in that:
In the process of designing the low-code running framework, a front-end interface and a back-end business logic are opened through the low-code running engine, so that the expansion and modification of the business logic can be completed only through script writing.
5. The metadata-driven low-code software development method of claim 4, wherein:
In the process of designing the low-code running frame, a customized extension point is designed by integrating tangent plane-oriented programming and is used for supporting the customized setting of the customized rule extension point before and after the creation, updating, deleting or displaying of the service data, including the processing and verification of the data and the execution of the control rule based on specific conditions, wherein,
At the server, defining customized rules in the life cycle of data through the customized extension points, including data processing and verification and execution condition control, executing corresponding business rules according to customized conditions, and triggering customized functions through client or server scripts according to customized buttons and links added in a user interface;
and writing the low codes of the client through the customized extension point, wherein the low codes of the client are used for enhancing the interactivity of the UI form, including front-end data verification, form item linkage and user experience enhancement, and configuring the low codes of the client to be triggered at different form events, and setting triggering conditions at the same time, wherein the UI strategy is used for controlling and managing the behaviors of user interface elements, including the display/hiding of fields, editing permission and filling-in conditions, and supporting the control execution based on the self-defined conditions.
6. The metadata-driven low-code software development method of claim 5, wherein:
In constructing a platform base frame, a platform base assembly includes:
multi-tenant management: the system is used for isolating platform functions and data by taking tenants as units;
User management: for generating a new user account and managing an existing account;
role management is used to define, assign and manage user roles, and in combination with group management and authority control of user groups, simplify assignment of access authorities, wherein,
Rights management, comprising:
RBAC authority management, which is used for controlling the access to roles and supporting the setting of authorities to specific entities of different roles;
ACL rights management: the access control for fine granularity of tables, fields and record levels includes authorization to perform specific operations on specific objects, authorization to rest pi based on authorization of custom conditions;
Data rights management: the method comprises the steps of performing authority control on visibility of multi-dimensional data;
In the process of designing a low-code running framework, the workflow engine is designed by defining and modeling a complex workflow and designing a plurality of types of workflow nodes and graphical flows, wherein the defining and modeling the complex workflow comprises the following steps: tasks, decision points, branches and loops, and designing a workflow scheduler to monitor task creation, execution and operation processes of a workflow; the workflow nodes of various types comprise running scripts, output logs, conditional branches and approval; based on the visualized user interface, the graphical flow design is completed through the drag-and-drop mode design and the customization of the workflow.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410544115.0A CN118132060B (en) | 2024-05-06 | 2024-05-06 | Metadata-driven low-code software development method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410544115.0A CN118132060B (en) | 2024-05-06 | 2024-05-06 | Metadata-driven low-code software development method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN118132060A CN118132060A (en) | 2024-06-04 |
CN118132060B true CN118132060B (en) | 2024-08-02 |
Family
ID=91246767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410544115.0A Active CN118132060B (en) | 2024-05-06 | 2024-05-06 | Metadata-driven low-code software development method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118132060B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825362A (en) * | 2019-11-04 | 2020-02-21 | 广东道一信息技术股份有限公司 | Low-code application software development system and method |
CN113886362A (en) * | 2021-10-10 | 2022-01-04 | 浙江力石科技股份有限公司 | Data storage system and storage method based on workflow engine and low-code platform |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004680B (en) * | 2006-11-23 | 2011-06-22 | 福建顶点软件股份有限公司 | Flexible, fast software development method and support system by using kernels of direct operation object model definition |
US8650202B2 (en) * | 2011-01-24 | 2014-02-11 | Salesforce.Com, Inc. | Session table framework |
CN116243914A (en) * | 2022-12-02 | 2023-06-09 | 中科云谷科技有限公司 | Internationalization software development method, internationalization software development system and server |
CN116775003A (en) * | 2023-07-26 | 2023-09-19 | 启明信息技术股份有限公司 | Modeling system and method based on low codes |
-
2024
- 2024-05-06 CN CN202410544115.0A patent/CN118132060B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110825362A (en) * | 2019-11-04 | 2020-02-21 | 广东道一信息技术股份有限公司 | Low-code application software development system and method |
CN113886362A (en) * | 2021-10-10 | 2022-01-04 | 浙江力石科技股份有限公司 | Data storage system and storage method based on workflow engine and low-code platform |
Also Published As
Publication number | Publication date |
---|---|
CN118132060A (en) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8904342B2 (en) | System and method for rapid development of software applications | |
CN114035773B (en) | Configuration-based low-code form development method, system and device | |
US10296305B2 (en) | Method and device for the automated production and provision of at least one software application | |
CN101661508B (en) | Method for generating memu for multi-technology platform and device thereof | |
CA2743151C (en) | Managing and automatically linking data objects | |
JP2020522779A (en) | An integrated system for rule editing, simulation, version control, and business process management | |
CN106445536B (en) | Automatic business design management system | |
US20050065970A1 (en) | System, method and apparatus for developing software | |
WO2007050110A2 (en) | Method and model for enterprise system development and execution | |
CN106779336B (en) | Engineering change method and device | |
Powell | Microsoft Power BI cookbook: Creating business intelligence solutions of analytical data models, reports, and dashboards | |
CN104823158A (en) | Method and system for simplified knowledge engineering | |
CN111708516A (en) | Web application customization development system on network | |
Blumöhr et al. | Variant configuration with SAP | |
CN116627418B (en) | Multi-level form interface visual generation method and device based on recursion algorithm | |
CN117891445A (en) | Draggable back-end logic arrangement and workflow WEB low-code development platform | |
CN110032717B (en) | One-stop process business standardization design method | |
Mueller | Microsoft ADO. NET Entity Framework Step by Step | |
CN112800117A (en) | Automatic generation system for information fusion display application | |
Lumertz et al. | User interfaces metamodel based on graphs | |
CN118132060B (en) | Metadata-driven low-code software development method | |
CN111752552A (en) | Industrial software design and application platform | |
CN116301856B (en) | Design method, device, equipment and medium of visual form designer | |
US20230385745A1 (en) | Computer methods and software for processing sap erp tasks | |
Juhás et al. | Collecting Structured Logs of Instances as Process Nets in Petriflow Language. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |