Background
With the gradual maturity of cloud computing technology and the increasing trend of mobility, application system development is also developing towards "more general", "lower threshold" and "higher efficiency". Traditional software development may take 4 to 9 months to complete an application and bring it online. The time frame of a project may vary depending on business needs and the size of the development team, but creating code from scratch always takes more time than building an existing framework. A previous study report showed that 85% of the software development projects exceeded the program. While low code solutions can be built on demand without waiting for a development team to complete the base framework design. This is one of the biggest differences between traditional software customization solutions and low code platforms. Basically, the enterprise user has already obtained the basic architecture and scheme design of the low-code platform at the time of purchase, and the customized software must be built from the beginning after the project is started. By the low-code solution, a developer can complete self-defining setting only in days to weeks, and development time is greatly shortened.
Low code development is the ability to generate applications quickly without coding (0 code or no code) or with a small amount of code. It is powerful in that it allows end-users to develop their own applications using easy-to-understand visualization tools, rather than the traditional way of writing code. The functions required for constructing the business process, the logic, the data model and the like can be added with own codes if necessary. After the service logic and the function are built, the application can be delivered and updated in a one-key mode, all changes are automatically tracked, database scripts and deployment processes are processed, and deployment on a plurality of platforms such as Web and App is achieved.
Meanwhile, in order to promote the core technology to realize autonomous controllability, the innovative development of information technology application is a current domestic strategy and is also a new kinetic energy of domestic economic development in the current form, and the development of the existing information and innovation industry realizes domestic substitution in the fields of core chips, basic hardware, operating systems, middleware, data servers and the like. The low-code development can complete the rapid development of digital application in a complex business scene, and supports the development mode change of self-help development and personalized delivery of enterprises; in addition, the method is oriented to a trust and creation development environment, and the digital application of an enterprise can be realized in an ecology conforming to the national strategic policy, so that the trust and creation are quickly landed and the digital transformation requirement is met.
In the industry, there are currently several mainstream low-code development approaches:
1. form-based and workflow engine
Based on the form and the workflow engine, the automatic generation of codes is realized based on the configuration information of the form engine and the workflow engine, so that the interaction of the form and the workflow can be realized by low codes or zero codes.
The patent of the invention of China, with the application date of 2021.04.20 and the application number of CN202110423217.3, namely an interaction method, a development platform, equipment and a storage medium of a form and a workflow. Although the invention can better use workflow and form engine to develop low code, and better realizes that single page code is automatically generated according to configuration information at a code level, thereby improving the development efficiency of business application, the invention lacks of more complete application development for realizing business scenes and has complex construction flow.
2. Model-based driving
Based on the low-code development driven by a complex business model, the core idea is to convert objective business entities into system objects in software by using a high-abstraction method. When the actual service has a problem, the service entity with the problem is analyzed and researched to summarize the attribute, the characteristic and the function of the service entity, the entities are abstracted into an object in the system, the hierarchical structure and the service flow between the objects are established, and finally the actual service problem is solved in the established software system.
The application date is 2021.03.23, and the application number is CN202110304573.3, namely a system, a method and equipment for creating a low code page. The invention better integrates the business model construction with the containerized front-end page code generation, effectively solves the redundancy and the repeated part of the front-end system, but has the defects that the invention depends on the code generation of the front-end page, does not reflect the business application scenes which are relatively close to the back end, such as the interaction with a database, the flow circulation and the like, and needs to generate the back-end code matched with the business application scenes by a single technical means, thereby causing the workload of code development not to be reduced.
3. Automatic configuration based on business rules
The principle of automatic code configuration based on the business rules is as follows: the platform monitors the corresponding operation of the user when the user calls the related operation, searches the corresponding rule, calls the rule to complete the corresponding configuration, simplifies the process of the user configuration, and realizes low code development based on the verified adaptive configuration.
The patent of the invention of China, with the application date of 2021.01.19 and the application number of CN202110065913.1, namely a configuration method and a device of a low code development platform. The invention better realizes the automatic code generation with the rule as the core on the basis of the flow configuration, reduces the configuration arrangement to a certain extent, but in the face of more complex business application scenes or business applications related to business forms, flow circulation and the like, the invention depends on the integrity and the abundance of a rule base to a greater extent, and if a certain rule is missing, the page code generation is invalid.
In summary, the low-code development based on different modes presents respective advantages and disadvantages, and in comparison, the form and workflow engine represents higher scene realization degree, but needs more complex business scene development capability in the absence of the high-scene realization degree, and the low-code development modes of the three modes are all suitable for the traditional IOE environment.
Disclosure of Invention
Therefore, a designer-based innovation low-code development tool needs to be provided to solve the technical problems that the existing low-code development mode lacks the development capability of a complex business scene, the construction process is complex and the like. The specific technical scheme is as follows:
a designer-based belief-created low-code development tool, comprising: the system comprises an application management module, a component management module, a data management module and a designer;
the application management module is configured to: managing various applications realized by the designer;
the component management module is to: providing workflow configuration for a designer and automatically generating codes of various components;
the data management module is used for: interface registration and interface management;
the designer is to: different components are provided for designing applications corresponding to different business scenarios.
Further, the application management module includes but is not limited to: the system comprises an application creating module, an application generating module, an application previewing module, an application setting module, an application deleting module and an importing and exporting module.
Further, the component management module includes but is not limited to: the system comprises a code generator, a compiling and rendering engine and a flow engine;
the code generator is to: automatically generating codes of various components;
the compilation rendering engine to: a module for converting each component code generated based on the code generator into a visual page;
the flow engine is to: and integrating the process according to the requirement of the business process flow circulation.
Further, the data management module includes but is not limited to: the interface management module is used for managing the interface;
the interface management module is used for: management of the database, the third party interface and the micro-service related data API is provided, and a standardized data source is provided for other modules.
Further, the designer includes but is not limited to: the device comprises a page management module, a template management module, an assembly arrangement module, a version management module, a page release module, a page preview module, an import and export module and an interactive configuration module.
In order to solve the technical problem, the storage device is further provided, and the specific technical scheme is as follows:
a storage device comprising a designer-based, trusted low-code development tool of the kind mentioned above.
The invention has the beneficial effects that: a designer-based belief-created low-code development tool, comprising: the system comprises an application management module, a component management module, a data management module and a designer; the application management module is configured to: managing various applications realized by the designer; the component management module is to: providing workflow configuration for a designer and automatically generating codes of various components; the data management module is used for: interface registration and interface management; the designer is to: different components are provided for designing applications corresponding to different business scenarios. The designer-based confidence-based low-code development tool realizes the construction of the traditional approval flow application through the cooperation of the four internal modules, supports the integration mode of a built-in process and an external process, and enlarges the range of the whole application construction; the typical application template is fused with a low-code designer, the multi-typical scene application construction is realized, and the method is fast and efficient. A single application build approach has been difficult to adapt to a wider, complex application scenario. Therefore, through the fusion of application construction modes, points can be gathered, the use range of scenes is expanded, and the low-code application development requirements of different users are met.
Detailed Description
To explain technical contents, structural features, and objects and effects of the technical solutions in detail, the following detailed description is given with reference to the accompanying drawings in conjunction with the embodiments.
Referring to fig. 1 to 7, in the present embodiment, a designer-based trusted low-code development tool 100 is implemented as follows:
a designer-based belief creative low code development tool 100, comprising: an application management module 101, a component management module 102, a data management module 103, and a designer 104; the application management module 101 is configured to: managing various applications implemented by the designer 104; the component management module 102 is configured to: providing code for workflow configuration and automatic generation of various components for the designer 104; the data management module 103 is configured to: interface registration and interface management; the designer 104 is configured to: different components are provided for designing applications corresponding to different business scenarios.
The flow chart of the application generation is shown in fig. 3. The applied architecture diagram is shown in fig. 2. The following description specifically explains the four modules one by one:
1. data management module 103
The data management module 103 includes, but is not limited to: interface register module, interface management module.
(1) Data interface management
Under the condition that an external data source is provided, a data interface management module is provided, so that management of a database, a third-party interface and a micro-service related data API is realized, data source configuration information, data interface real-time dynamic information and the like are managed in a unified mode, standardized data sources are provided for component management and application design, and the data sources are used as main data sources of low-code application design.
(2) Data interface registration
The low code tool provides micro-service data interface registration, and when the tool is registered, the provided data interface can be automatically collected and registered, and the current data interface condition can be mastered in real time through a control console of the tool. The data interface registration function registers API metadata information based on the OpenApi Specification 3.0 Specification. When the user views the data interface, the user can view the access parameter data structure information of the interface.
2. Component management Module 102
The component management module 102 includes, but is not limited to: the system comprises a code generator, a compiling and rendering engine and a flow engine; the code generator is to: automatically generating codes of various components; the compilation rendering engine to: a module for converting each component code generated based on the code generator into a visual page; the flow engine is to: and integrating the process according to the requirement of the business process flow circulation.
Based on the import of the service scene data, the component management module 102 mainly provides a code generator, a compiling and rendering engine, a process engine, and the like, and realizes the automatic generation of front-end and back-end code compiling, workflow configuration, and page component encoding.
(1) Code generator
The low-code tool incorporates various front-end templated code generators, Thymeleaf: mainly render xml, HTML5 and integrate with springboot; velocity: xml and the like can be used for interface display and can also generate text formats such as input java codes, SQL sentences and the like; currently support layout components such as layout containers, tab page layouts, folding panels, etc.; high-level components such as single tables, main attached tables, tree tables, one-to-many, many-to-many, left-tree and right-table, etc. are common and various types of code generation.
(2) Compiling rendering engine
Various component codes generated by the templated code generator can combine HTML, CSS, JavaScript and other resources (pictures, videos and the like) and convert the combined codes into a module of a visual page in a low-code tool by compiling a rendering engine, so that the overall service application scene page design is better facilitated, and the rendering principle is shown in FIG. 4.
(3) Process engine
On the one hand, the provided process engine supports modeling, designing, running, monitoring, optimizing, agile and efficient process implementation; the visual process modeling, design and configuration are based on the process design specification of BPMN2 standard, and the use is mature, stable and open-source process engine technology (activiti) and Chinese characteristic process support: and nearly hundreds of flow transfer characteristics such as free jump, refund, recall, signature adding, copy sending and the like are supported. An enterprise process service center is constructed, and flexible configuration is realized to realize cross-system business arrangement and integration; on the other hand, the product is verified in the trusted and created environment, and the process flow and the application are enabled in the trusted and created environment. A workflow engine arranged in the tool realizes the configuration of the approval process in a visual mode; integration with external workflows by way of service configuration may also be supported.
The flow engine component technical architecture is shown in fig. 5.
3. Designer 104
The designer 104 includes, but is not limited to: the device comprises a page management module, a template management module, an assembly arrangement module, a version management module, a page release module, a page preview module, an import and export module and an interactive configuration module.
Designer 104 in this application combines typical scene page to comb, encapsulates into visual subassembly based on little front end frame with the page element, and this visual subassembly is played by page renderer, shields service environment's special requirement, like the requirement of letter creative desktop browser, has visual design interface simultaneously, through overall arrangement + subassembly nimble combination, builds application interface fast, and the page design provides as follows: 1) layout component: layout containers, tab page layouts, folding panels, grouping, etc.; 2) advanced component forms, tree selectors, queries, basic forms, etc.; 3) basic components: text, buttons, searches, input boxes, etc. cover most front-end page components. In addition, the designer 104 provides 1) page outline to display the classification and page information of the current application subordinate, and respectively supports the functions of retrieval, new creation, deletion and the like according to the difference of the classification and the page; 2) the component outline mainly displays component information of a currently opened page of the designer 104, and supports retrieval, display/hiding and deletion operations of components; 3) the data component mainly displays method information of a component corresponding to the current page of the designer 104, the method information is automatically generated by an automatic code generator and the like of a component layer, and functions of adding methods, deleting methods, associating services, unbinding services, returning result mapping and the like are supported.
The core connection function of the low-code tool is based on business application requirements, the designer 104 supports two modes of creating a page through a template and creating a blank page to realize page construction, a business application overall structure is newly built in a page outline area, and components are arranged by using dragging operation to realize rapid configuration of the page. After the page configuration is completed, the operations of loading, page jump, opening pop-up window, closing window, retrieving, submitting, storing and the like of page data are realized through a guide type configuration mode, and the page data are released into the directly accessible application by combining with an application framework (menu, authority, safety standard and the like) of the micro front end. A schematic diagram of the designer 104 page of the low code tool is shown in figure 6.
4. Application management module 101
The application management module 101 includes but is not limited to: the system comprises an application creating module, an application generating module, an application previewing module, an application setting module, an application deleting module and an importing and exporting module.
The application management module 101 is configured to manage an application created by combining the designer 104 with a pre-micro application framework, and includes sub-modules of application creation, application setting, application import and export, application generation, application preview and release, application deletion, and the like, so as to implement retrieval, creation, editing, import, export, deletion, generation of a presentation, and the like of a business application. Meanwhile, the system supports the import and export of applications in different places under the condition that the networks can not be communicated, and realizes barrier-free reuse of design results; supporting custom application theme configuration, setting application names, theme styles, framework layout and the like; application preview, online two-dimensional code preview and the like of an offline network environment are supported; and the method supports the modes of integration of the application in an enterprise portal, in-application integration, interface integration and the like. The schematic diagram of the application management page is shown in fig. 7.
The following describes specific steps of generating a service application in the present application:
step 1: creating a target application related to the user requirements of a target user, wherein the target application comprises an application type, an application name, an application identifier, an application icon, a system theme, a layout and the like;
step 2: based on the created target application page design area, creating a target application page set, namely a page outline;
and step 3: applying a template based on a component library or a service to obtain and design a front-end component related to user requirements;
and 4, step 4: and analyzing the user data requirement to obtain a service application data interface. Meanwhile, based on a service database, the front-end page components designed in the page are configured for developing page attributes, page styles, page interaction actions and page descriptions, and then front-end frame setting can be realized;
and 5: based on data management, the logic of the application back end is completed through the service, the external service is successfully registered into the system by the low-code tool through a third-party service registration module, and the back-end service is bound and coupled with the front end;
step 6: and acquiring all target pages after application configuration to form service application, and clicking the corresponding application name in application management to realize preview and release of the application.
Unlike the prior art, the designer-based belief-initiative low-code development tool 100 of the present application has the following advantages:
the first is that: the process engine, the front-end component library and the typical application template are fused, and the requirements of complex business logic and simple application construction are met. Based on the fusion of a workflow engine and a front-end component, the construction of the traditional approval flow application is convenient to realize, and meanwhile, the integration mode of a built-in process and an external process is supported, so that the construction range of the whole application is expanded; the typical application template is fused with the low-code designer 104, so that the construction of the multi-typical scene application is realized, and the method is quick and efficient. A single application build approach has been difficult to adapt to a wider, complex application scenario. Therefore, through the fusion of application construction modes, points can be gathered, the use range of scenes is expanded, and the low-code application development requirements of different users are met.
Secondly, the following steps: the decoupling type system architecture effectively separates the front end from the back end, supports secondary development and micro front end framework integration, improves system calling and expanding capability, and adapts to mobile demand change. The traditional business application development platform or low-code tool architecture deeply couples the front end and the back end, so that business application is limited to application in the platform, and external application is accessed only through an interface mode, so that use limitation is caused. The decoupling type system architecture is used for effectively separating the front end from the back end and realizing calling and expanding of external data and application capacity; providing more free secondary development and expansion, and realizing the definition of personalized business requirements; the authority, the menu and the like are included in the front-end framework, so that the application is more comprehensive.
Thirdly, the method comprises the following steps: efficient application construction and release, and support traditional and creative application integration. The complete application management module 101 is provided, online and offline application sharing, previewing, copying and other multiplexing sharing of the application are achieved, meanwhile, data management supports innovation and a traditional database, an internal page renderer supports innovation desktop application construction and integration, and construction requirements of different business application environments are met.
Referring to fig. 8, in the present embodiment, a memory device 800 is implemented as follows:
a storage device 800, the storage device 800 comprising a designer-based, trusted low-code development tool as mentioned above.
The storage device 800 includes, but is not limited to: personal computers, servers, general purpose computers, special purpose computers, network devices, embedded devices, programmable devices, intelligent mobile terminals, etc.
It should be noted that, although the above embodiments have been described herein, the invention is not limited thereto. Therefore, based on the innovative concepts of the present invention, the technical solutions of the present invention can be directly or indirectly applied to other related technical fields by making changes and modifications to the embodiments described herein, or by using equivalent structures or equivalent processes performed in the content of the present specification and the attached drawings, which are included in the scope of the present invention.