A code deployment method for flexible digital control and digital control platform

Through the flexible digital control code deployment method, subcode generation and configuration, the problem of repeated code construction and deployment in software development is solved, development efficiency and code quality are improved, and developers' workload and entry threshold are reduced.

CN111506315BActive Publication Date: 2024-12-13陈勇
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN201910094853.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-01-31
Publication Date
2024-12-13
Estimated Expiration
2039-01-31

AI Technical Summary

Technical Problem

In the prior art, the repeated construction and deployment of code during software development has caused developers to be tired of dealing with heavy business development, lack of time for optimization and improvement, and the code differences between different developers have caused difficulty in repairing bugs, affecting development progress and code quality. .

Method used

Provides a code deployment method with flexible digital control, and uses subcodes for multiple business subfunctions to generate and store subcodes, configure corresponding data constraints, and package and generate installation packages to simplify the development process and improve development efficiency and code quality.

Benefits of technology

It improves the development efficiency of developers, reduces redundant code and storage space, lowers the entry threshold for developers, and ensures sustainable use and optimization of code.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111506315B_ABST
    Figure CN111506315B_ABST
Patent Text Reader

Abstract

The present invention provides a code deployment method for flexible digital control and a digital control platform, the code deployment method comprising: S1: generating subcodes for multiple business subfunctions respectively and storing them in a server, establishing a digital control platform including multiple subcodes, the subcodes including one or more configuration interfaces; S2: on the digital control platform, selecting corresponding business subcodes according to business needs, and configuring corresponding business constraints and data constraints; S3: packaging the multiple subcodes that have been configured and generated, and generating an installation package for deployment or upgrade. The code deployment method provided by the present invention directly selects multiple subcodes of corresponding business functions, flexibly configures data constraints of corresponding subcodes, and then packages and generates installation packages, which greatly improves the development efficiency of developers, data constraints can be flexibly controlled, reduces storage space, reduces repeated operations, reduces redundant codes, and improves code operation efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a code deployment method for flexible digital control and a digital control platform. Background Art

[0002] In the field of software development, the existing backend development model follows the concept of process-based and continuous iterative improvement in cooperation with the frontend. For multiple business needs, it is necessary to repeatedly build, deploy and release code. The development and deployment of each new function relies on the experience of developers and operation and maintenance personnel, but experience is often not passed on. During the development process, previously developed sub-codes with similar functions are usually copied and modified as templates. However, the codes written by different developers will differ due to experience and habits. These differences can easily lead to the inability to fix known bugs, thereby affecting the development progress and code quality. On the other hand, in the existing development model, the above operations need to be repeated for each development, which makes developers tired of dealing with heavy business development and have no spare time to think about how to improve and optimize the code.

[0003] Therefore, how to achieve flexible control and deployment of code and improve the software development efficiency of developers has become a technical problem that needs to be solved urgently in the industry. Summary of the invention

[0004] In view of the shortcomings of the prior art, the purpose of the present invention is to provide a code deployment method for flexible digital control, which can directly select multiple sub-codes of corresponding business functions, and flexibly configure data constraints of the corresponding sub-codes, and then package them to generate installation packages, which greatly improves the software development efficiency of developers, data constraints can be flexibly controlled, reduce storage space, reduce redundant code, and improve code quality and operating efficiency.

[0005] In order to achieve the above object, the present invention provides a code deployment method for flexible digital control, which comprises the following steps:

[0006] S1: Generate subcodes for multiple business subfunctions respectively and store them in a server, establish a digital control platform including multiple subcodes, and the subcodes include one or more configuration interfaces;

[0007] S2: On the digital control platform, select the corresponding business subcode according to business requirements, and configure the corresponding business constraints and data constraints in the configuration interface;

[0008] S3: Package the configured sub-codes and generate an installation package for deployment or upgrade.

[0009] In the present invention, each sub-code is developed by a developer with rich experience, and after being confirmed to be correct through multiple tests, it is saved to the server, and multiple configuration interfaces are set in the sub-code for flexibly configuring the corresponding fields involved in the sub-code; after the configuration is completed, multiple sub-codes that can realize relevant business needs are packaged to generate an installation package. In this way, the development efficiency of developers is greatly improved, data constraints can be flexibly controlled, storage space is reduced, redundant code is reduced, and code quality and operating efficiency are improved.

[0010] The code deployment method for flexible digital control provided by the present invention only needs to select the sub-code of the corresponding function and automatically deploy and generate it during the software development process. The operation process is simple and convenient and can be completed without much rich experience. It effectively improves the development efficiency of developers, reduces the workload of developers, and lowers the entry threshold for software developers. Experienced developers have more spare time to study how to optimize and improve.

[0011] According to another specific embodiment of the present invention, the server includes: a physical server or a virtual server of an individual user, a physical server or a virtual server of an enterprise user, a physical server or a virtual server provided by a cloud service provider to a user, or a physical server cluster or a virtual server cluster provided by a cloud service provider to a user.

[0012] According to another specific embodiment of the present invention, the deployment method of the selected sub-code in step S3 includes one or more of drag-type deployment, guided deployment, and AI intelligent deployment methods, which can enable automatic generation of deployment. At the same time, it can also be further adjusted according to needs to further improve software development efficiency while ensuring accuracy.

[0013] According to another specific embodiment of the present invention, in step S1, each subcode includes corresponding identification information, and the subcode is classified and stored according to the identification information, and the classification storage includes a first-level directory and a second-level directory, and according to actual applications, it may also include a third-level directory, a fourth-level directory, etc. The identification information of the subcode is used to identify the function of the subcode, and the classification and identification are performed according to the functional content, so that software developers can quickly find the required subcode, and further improve the efficiency of software development.

[0014] According to another specific implementation of the present invention, in step S2, the corresponding business subcode is selected according to the business demand, and can be selected one by one according to the subcode storage directory, or can be selected according to the subcode intelligent matching recommended subcode.

[0015] According to another specific embodiment of the present invention, the intelligent matching recommendation of the subcode includes the following steps:

[0016] Determine the similarity between the selected subcode and the subcode stored in the system;

[0017] Recommendations are made based on the sub-codes with higher similarity.

[0018] According to another specific embodiment of the present invention, the configuration interface includes:

[0019] Set comments for display for data tables, data fields, and data keys according to business needs;

[0020] Set primary key, unique constraint, null constraint, primary and foreign key constraint for data table, data field and data key according to business needs;

[0021] Set primary and foreign key correspondence for data tables, data fields and data keys according to business needs;

[0022] Set or adjust data type storage constraints for data tables, data fields, and data keys according to business needs. Implement relevant storage constraints in the configuration interface and understand the functional information of related sub-codes in detail to reduce error rates and improve software development efficiency. At the same time, configuring relevant storage constraints through the configuration interface is conducive to selecting a reasonable data range according to actual business projects, reducing storage space, and speeding up software operation efficiency.

[0023] According to another specific embodiment of the present invention, before step S2, step S20 is further included: configuring or reading type configuration information; the type configuration information includes:

[0024] The address of relational or key-value database and the user rights of the database;

[0025] User permissions for web access directories;

[0026] FTP user permissions for Web access directories;

[0027] Service access configuration provided by third-party service providers to facilitate platform management and maintenance.

[0028] Another aspect of the present invention further provides a digital control platform for the above code deployment method, which includes:

[0029] Subcode module: The subcode module includes several subcodes that can be directly called, and is used to select the subcode of the corresponding function according to business needs;

[0030] Create a new module, which is used to create subcodes for new functions that are not included in the digital control platform;

[0031] Deployment module, which is used to arrange and deploy the selected sub-codes;

[0032] The generation module is used to package the selected sub-codes and generate an installation package to send to the local environment.

[0033] According to another specific embodiment of the present invention, the sub-code includes detailed annotation information and interface descriptions, so that later update and maintenance personnel can improve and optimize the corresponding sub-code more quickly.

[0034] According to another specific embodiment of the present invention, the digital control platform further includes an intelligent recommendation module, and the intelligent recommendation module is used to match and recommend sub-codes associated with the selected sub-code.

[0035] According to another specific embodiment of the present invention, the digital control platform further includes a test module, and the test module is used to test a newly introduced sub-code and / or perform a continuity test on a plurality of deployed sub-codes.

[0036] According to another specific embodiment of the present invention, the digital control platform further includes a log module, which is used to record the added information of the sub-code, and the selection and deployment information of each sub-code.

[0037] Compared with the prior art, the present invention has the following beneficial effects:

[0038] 1. The code deployment method provided by the present invention is simple and fast to operate, greatly improving the efficiency of developers and reducing the workload and testing amount.

[0039] 2. The sub-codes in the present invention can be used continuously in multiple business projects, the code development experience can be passed on, the entry threshold for software developers is lowered, and experienced developers have more spare time to study how to optimize and improve.

[0040] 3. By flexibly configuring the data constraints of each sub-code, the constraint range is made more reasonable, saving storage space and improving the operating efficiency of the software.

[0041] 4. The sub-codes in the present invention are all developed by experienced developers after sufficient and complete thinking, and have been tested to ensure the accuracy of the sub-codes, making the code more reasonable and standardized.

[0042] The present invention will be further described in detail below in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 is a structural schematic diagram of the digital control platform of Example 1;

[0044] Figure 2 It is a distribution diagram of the sub-code modules of Example 1. DETAILED DESCRIPTION

[0045] Example 1

[0046] This embodiment provides a code deployment method for flexible digital control, the steps of which are:

[0047] S1: Generate subcodes for multiple business subfunctions respectively and store them in the server, establish a digital control platform including multiple subcodes, and the subcodes include one or more configuration interfaces; the server includes: a physical server or virtual server for individual users, a physical server or virtual server for enterprise users, a physical server or virtual server provided by a cloud service provider for users, and a physical server cluster or virtual server cluster provided by a cloud service provider for users. Each subcode includes corresponding identification information. According to the identification information, the subcodes are classified and stored. The classified storage includes a first-level directory and a second-level directory. For example, the first-level directory can be a business field, and the second-level directory is a business function. In this way, the subcodes are classified and stored; according to actual applications, the third-level directory, the fourth-level directory, etc. can also be included in sequence. The identification information of the subcode is used to identify the function of the subcode, and the classification and identification are performed according to the functional content, so that software developers can quickly find the required subcodes and further improve the efficiency of software development.

[0048] Step S20: configure or read type configuration information on the digital control platform; type configuration information includes: relational or key-value database address, database user rights; Web access directory user rights; Web access directory FTP user rights; service access configuration provided by a third-party service provider. This facilitates platform management and maintenance.

[0049] S2: On the digital control platform, select the corresponding business subcode according to business needs, and configure the corresponding business constraints and data constraints in the configuration interface; the corresponding configuration interface in each subcode includes: setting comments for display for data tables, data fields and data keys according to business needs; setting primary keys, unique constraints, whether it is empty constraints, and primary and foreign key constraints for data tables, data fields and data keys according to business needs; setting primary and foreign key correspondences for data tables, data fields and data keys according to business needs; setting or adjusting data type storage constraints for data tables, data fields and data keys according to business needs. Flexible configuration is performed in the configuration interface to implement relevant storage constraints, and detailed understanding of the functional information of relevant subcodes can reduce the error rate and improve software development efficiency. At the same time, configuring relevant storage constraints through the configuration interface is conducive to selecting a reasonable data range according to actual business projects, reducing storage space, and accelerating the running efficiency of software.

[0050] S3: Package the multiple sub-codes that have been configured and generate an installation package for deployment or upgrade. The deployment method includes one or more of drag-and-drop deployment, guided deployment, and AI intelligent deployment methods, which can automatically generate deployments. At the same time, it can also be adjusted according to needs to further improve software development efficiency while ensuring accuracy.

[0051] For example, if you need to develop a company management software system that includes functions such as attendance clocking in and access records, you can find the corresponding sub-codes for attendance clocking in and access records in the digital control platform, configure the relevant data constraints in the sub-code configuration interface, and finally package the sub-code to generate an installation package. The development speed is simple, fast and convenient. Furthermore, for example, the access record needs to include information recording functions such as the access date, access time, number of visitors, visitor name, and visitor contact information; the information contained in the subcode of the access record completely covers the above functions, including the access date, access time, number of visitors, visitor name, access reason, visitor age, visitor contact information, access duration, name of the person being visited, and other information recording functions. The functions contained in the subcode are developed and implemented by experienced developers after careful and meticulous thinking and comprehensive deployment, so that the subcode of the access record includes more comprehensive functions and has a wider applicability; after selecting the subcode of the access record, data constraints are configured for the relevant data fields in the subcode, and data constraints suitable for company applications are configured for the functions that need to be used, such as the access time constraint is the company's working hours, the access reason constraint is 10 words, the visitor contact information constraint is 11 digits, etc., so that the judgment time is reduced and the running speed is improved during the code running process; on the other hand, unnecessary functions, such as access reason, access duration, and name of the person being visited; are set as empty constraints.

[0052] The subcode of the above access record includes information recording functions such as access date, access time, number of visitors, visitor name, reason for access, visitor age, visitor contact information, access duration, name of the person being visited, etc., among which the access date and access time can be upper-level as a time module; the visitor name, reason for access, and name of the person being visited can be upper-level as a text module; the number of visitors, visitor age, visitor contact information, and access duration can be upper-level as a digital module; so that the functional application that requires the above upper module can also directly select the subcode. For example, the subcode of the access record can also be applied to, for example, the consumption record of a restaurant, where the text module records the name of the product consumed; the digital module records the number of products and the amount of the product respectively; the time module records the consumption time, etc.; therefore, the subcode of the access record can be directly selected, and after constraining the corresponding data, it can be packaged and produced as an installation package.

[0053] The code deployment method for flexible digital control provided in this embodiment is applicable to business projects in multiple different fields; each business project requires multiple different business sub-functions to realize the complete and systematic functions of the business project. In response to this demand, this embodiment further provides an intelligent recommendation method for sub-codes, which can automatically match and recommend related sub-codes, which is convenient for users to directly select and further improve the development efficiency of developers. For example: when developing e-commerce applications, the sub-codes of sub-functions of the attributes of the color, size, origin, weight, size, thickness, etc. of the relevant products are intelligently configured, and then the developers select and call according to the intelligently configured sub-codes; when developing applications for the category of "clothing", the intelligent configuration obtains sub-codes including functions such as color, size, style, collar shape, thickness, etc.; when developing applications for the category of "cars", the intelligent configuration obtains sub-codes including functions such as wheelbase, number of seats, braking method, brand, vehicle quality, and vehicle level.

[0054] The intelligent recommendation method of the subcode in this embodiment includes the following steps: step 1, judging the similarity between the selected subcode and the subcode stored in the system; step 2, recommending the subcode with higher similarity according to the judgment. Among them, in the similarity judgment, a parameterized generation model is first established, which includes two layers: a visible layer and a hidden layer, with bidirectional full connection between layers and no connection within the layer. Each unit in the visible layer represents the observed variable value, and the unit in the hidden layer is used to model the interdependence between the units in the visible layer. In this embodiment, the number of hidden layer units represents the number of feature values; each unit represents a consideration from an angle; the value of each unit represents the probability of activation of a feature value; in the training process, we do not know which feature value each unit corresponds to, but can only distinguish different feature types according to the number of units in the hidden layer. For example, considering the similarity of business types from four perspectives such as "people", "finance", "matters" and "things", when considering from the perspective of "matters", multiple feature values ​​such as administrative affairs, business affairs, and process affairs can be included; the number of corresponding hidden layer units is also multiple, and each unit corresponds to the probability of activation of a subject feature value. Let the number of eigenvalues ​​be K, that is, the number of units in the hidden layer is K.

[0055] Each unit in the visible layer represents the observed variable value. Each unit in the visible layer represents the call of each sub-code in the system when the code of this category is developed n times. i ∈{0,1}, where 0 represents not called and 1 represents called. In this embodiment, the sub-code similarity is modeled, where F i represents the i-th angle, represents the activation probability of the feature value of the jth state at the i-th angle,

[0056] In the process of calculating the similarity, this embodiment uses the nonlinear function sigmoid as the activation function of the model. The form of the sigmoid function is as follows:

[0057]

[0058] According to the understanding of the sub-code types in the system, K angles are specified for calculating the functional similarity of the sub-codes, and the number of feature values ​​that the corresponding similarity calculation angles should have is specified for these K angles. Then a model is built for each similarity calculation angle, and these K models are trained. After the training of these K models is completed, the probability vector value of the feature value activation of each category under these K angles and the weight λ of each angle in the similarity measurement are obtained. k , Then for each sub-code in the system, the eigenvalue activation probability vector values ​​under K angles can be obtained.

[0059] The eigenvalue activation probability vector values ​​of K angles represent the probability distribution of the possible eigenvalue activation of a subcode at each angle. The parameter on the right side of the eigenvalue activation probability vector, λ i represents the weight of the i-th similarity measurement angle specified in the system. Then for subcode i, the similarity between it and subcode j is:

[0060]

[0061] If it is for subcode j, then the similarity between it and subcode i is:

[0062]

[0063] Among them, KL(F k (i)||F k (j)) represents the KL divergence value of the feature value activation distribution of subcode i and subcode j at the kth angle. Because KL divergence is asymmetric, S(i,j)≠S(j,i). The reason why KL divergence is used to calculate the similarity between subcodes is that when calculating the feature distribution of other subcodes and the feature distribution of the main subcode i, it can be considered that the feature distribution of subcode i is approximated by the feature distribution of other subcodes. In this case, KL(F) is used. k (j)||F k (i)) to calculate the similarity, it is possible to emphasize the matching of subcode j to a feature value with a larger activation probability in the feature distribution of subcode i, that is, considering at which angle feature the two subcodes are most matched among all the feature values.

[0064] In another aspect of this embodiment, a digital control platform for the above code deployment method is also provided. Figure 1 -2, it includes: sub-code module, new module, deployment module and generation module.

[0065] Subcode module: The subcode module includes several subcodes that can be directly called, which are used to select the subcodes of corresponding functions according to business needs; each subcode is developed by developers with many years of experience after sufficient and complete thinking, and is tested to ensure the accuracy of the subcode, making the code more reasonable and standardized. The subcode includes detailed annotation information and interface instructions for easy updating and maintenance. New module: The new module is used to create subcodes for new functions that are not included in the new digital control platform; the developed subcodes are stored and selected to make the digital control platform more functional and have a wider range of applications. Deployment module: The deployment module is used to arrange and deploy the selected subcodes; the deployment module includes one or more of the drag-and-drop deployment, guided deployment, and AI intelligent deployment methods, which can automatically generate the deployment. At the same time, it can also be further adjusted according to needs to further improve the efficiency of software development and ensure accuracy. Generation module: The generation module is used to package the selected subcodes and generate installation packages to send to the local environment.

[0066] The digital control platform 1 also includes an intelligent recommendation module, which is used to match and recommend sub-codes associated with the selected sub-code.

[0067] The digital control platform 1 also includes a test module, which is used to test the newly added sub-codes and / or perform continuity tests on the multiple sub-codes that have been deployed, so that the packaged installation package can be used directly. You can also continue to develop and adjust the code in the packaged installation package and test it for use.

[0068] The digital control platform 1 also includes a log module, which is used to record the added information of the sub-code, the selection and deployment information of each sub-code, so as to facilitate the management of the control platform.

[0069] Although the present invention is disclosed as above with preferred embodiments, it is not intended to limit the scope of the present invention. Any person skilled in the art can make some improvements without departing from the scope of the present invention, that is, all equivalent improvements made according to the present invention should be covered by the scope of the present invention.

Claims

1. A code deployment method for flexible digital control, characterized in that: The code deployment method includes the following steps: S1, generating subcodes for multiple business sub-functions respectively and storing them in a server, establishing a digital control platform including multiple subcodes, wherein the subcodes include one or more configuration interfaces; S2, on the digital control platform, selecting corresponding business subcodes according to business needs, and configuring corresponding business constraints and data constraints on the configuration interface; S3, packaging the multiple subcodes that have been configured, and generating an installation package for deployment or upgrade; the configuration interface includes: setting comments for display for data tables, data fields and data keys according to business needs; setting primary keys, unique constraints, whether null constraints, and primary and foreign key constraints for data tables, data fields and data keys according to business needs; setting primary and foreign key correspondences for data tables, data fields and data keys according to business needs; setting or adjusting data type storage constraints for data tables, data fields and data keys according to business needs; before step S2, it also includes: step S20, configuring or reading type configuration information; the type configuration information includes: relational or key-value database address, database user permissions; Web access directory user permissions; Web access directory FTP user permissions; service access configuration provided by a third-party service provider; The code deployment method of flexible digital control also includes a digital control platform, the digital control platform includes a sub-code module, the sub-code module includes a plurality of sub-codes that can be directly called, and is used to select the sub-code of the corresponding function according to the business needs; a new creation module, the new creation module is used to create a sub-code of a new function that is not included in the digital control platform; a deployment module, the deployment module is used to arrange and deploy the selected sub-code; a generation module, the generation module is used to package the selected sub-code, and generate an installation package to send to the local environment; Select the corresponding business subcode according to business needs, select one by one according to the subcode storage directory, or select the subcode recommended by subcode intelligent matching; The intelligent matching recommendation of the subcode includes the following steps: judging the similarity between the selected subcode and the subcode stored in the system, and recommending the subcode with high similarity according to the judged result; The nonlinear function sigmoid is used as the activation function of the model. The form of the sigmoid function is: According to the understanding of the sub-code types in the system, K angles for calculating the functional similarity of the sub-codes are specified, and the number of feature values ​​that the corresponding similarity calculation angles should have is specified for these K angles; a model is built for each similarity calculation angle, and K models are trained to obtain the probability vector value of the feature value activation of each category under these K angles and the weight λ of each angle in the similarity measurement k ,when When , each sub-code in the system can obtain the eigenvalue activation probability vector value under K angles; The eigenvalue activation probability vector values ​​of K angles represent the probability distribution of the possible eigenvalue activation of a subcode at each angle. The parameter on the right side of the eigenvalue activation probability vector, λ i represents the weight of the i-th similarity measurement angle specified in the system; then for subcode i, the similarity between it and subcode j is: For subcode j, the similarity between it and subcode i is: Wherein, KL(Fk(i)||Fk(j)) represents the KL divergence value of the feature value activation distribution of subcode i and subcode j at the kth angle.

2. The method for deploying code for flexible digital control according to claim 1, characterized in that: The server includes: a physical server or a virtual server of an individual user, a physical server or a virtual server of an enterprise user, a physical server or a virtual server provided by a cloud service provider to a user, or a physical server cluster or a virtual server cluster provided by a cloud service provider to a user.

3. The method for deploying code for flexible digital control according to claim 1, characterized in that: The deployment method for the selected sub-code in step S3 includes one or more of drag-type deployment, guided deployment, and AI intelligent automatic deployment methods.

4. The method for deploying code for flexible digital control according to claim 1, characterized in that: In the step S1, each of the subcodes includes corresponding identification information, and the subcodes are classified and stored according to the identification information. The classified storage includes a first-level directory and a second-level directory.

5. The method for deploying code for flexible digital control according to claim 1, characterized in that: The digital control platform further includes an intelligent recommendation module, which is used to match and recommend sub-codes associated with the selected sub-code.

6. The method for deploying code for flexible digital control according to claim 1, characterized in that: The digital control platform also includes a test module, which is used to test a newly added sub-code and / or perform a continuity test on a plurality of deployed sub-codes.

7. The method for deploying code for flexible digital control according to claim 5, characterized in that: The digital control platform also includes a log module, which is used to record the added information of the sub-code and the selection and deployment information of each sub-code.