CN118151891A - Application management method and related equipment - Google Patents

Application management method and related equipment Download PDF

Info

Publication number
CN118151891A
CN118151891A CN202211515237.4A CN202211515237A CN118151891A CN 118151891 A CN118151891 A CN 118151891A CN 202211515237 A CN202211515237 A CN 202211515237A CN 118151891 A CN118151891 A CN 118151891A
Authority
CN
China
Prior art keywords
data
application
entity
relation
user
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.)
Pending
Application number
CN202211515237.4A
Other languages
Chinese (zh)
Inventor
刘臻
韦裔诚
牛锦宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to CN202211515237.4A priority Critical patent/CN118151891A/en
Publication of CN118151891A publication Critical patent/CN118151891A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The application provides an application management method, which comprises the following steps: and receiving the association information of at least one data entity configured by the user, wherein the association information of the data entity comprises at least one of a function or a service API (application program interface) of a business object corresponding to the data entity and an attribute of the data entity, then receiving the association information of at least one relation entity configured by the user, wherein the association information of the relation entity comprises at least one of a function or a service API of a business object relation corresponding to the relation entity and an attribute of the relation entity, and generating a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity, wherein the metadata model map is used for assisting in generating codes of the application. The map also describes functions or APIs of the business objects corresponding to the data entities and functions or APIs of the business object relations corresponding to the relation entities, so that the probability that developers understand deviation of design intention is reduced, and the application development cost is lowered.

Description

Application management method and related equipment
Technical Field
The present application relates to the field of application development technology, and in particular, to an application management method, an application management system, a computing device cluster, a computer readable storage medium, and a computer program product.
Background
With the advent of the information age, various industries began to shift toward digitization, and for this purpose, many businesses, organizations, moved business online by developing Applications (APPs). In the development process of applications, especially in the development process of applications of large-scale software systems such as integrated information management systems, report analysis systems and the like, metadata-driven development modes are generally adopted in order to avoid repeated development.
After the metadata model of the application is designed and defined, architects and developers can be helped to quickly understand the underlying architecture and logic of the software system by visualizing the metadata model. Currently, visualization of metadata models generally supports presentation of data entities and relationships between data entities, and further provides for presentation of attributes of data entities and presentation of attributes of relationship entities.
However, in modeling, the most common modeling tools focus mainly on whether the design can accurately express the design intent. Implementation depends on the developer's understanding of the design intent. If there is an understanding deviation, a high repair cost may be required. Thus, the development cost and the development period of the application are increased, and the service requirements are difficult to meet.
Disclosure of Invention
The application provides an application management method, which supports the construction of a relatively complete metadata model map, and the map can provide richer information, such as providing a function of a business object corresponding to a data entity or a service application programming interface (application programming interface, API), a function of a business object relation corresponding to a relation entity or a service API, so that the probability of deviation of design intention understanding of developers is reduced, the repair cost is reduced, the application development cost is further reduced, the development period is shortened, and the business requirements can be met.
In a first aspect, the present application provides an application management method. The method may be performed by an application management system. The application management system is used for managing the application, for example, the application management system is used for managing the full life cycle in the stages of development, deployment, operation and maintenance and the like. The application management system may be a software system, which may be a software development platform such as an integrated development environment (INTEGRATED DEVELOPMENT ENVIRONMENT, IDE), or a plug-in for managing applications. The software system may be deployed in a cluster of computing devices, for example in a cloud environment, which execute program code of the software system, thereby performing the application management method of the present application. In some possible implementations, the application management system may also be a hardware system, for example, a computing device cluster with application management functions, where the application management system executes the application management method of the present application.
Specifically, the application management system may receive association information of at least one data entity configured by a user, where the association information of the data entity includes at least one of a function of a service object corresponding to the data entity or a service application programming interface API and an attribute of the data entity, then receive the association information of at least one relationship entity configured by the user, where the association information of the relationship entity includes at least one of a function of a service object relationship corresponding to the relationship entity or a service API and an attribute of the relationship entity, and then the application management system may generate a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relationship entity. The metadata model atlas is used to assist in generating code for the application.
In the method, the application management system provides brand new application modeling capability, and generates a relatively complete metadata model map based on the full metadata, wherein the map not only describes the relationship among data entities, the attributes of the data entities and the attributes of the relationship entities, but also can describe the functions or service APIs of the business objects corresponding to the data entities and the functions or service APIs of the business object relationships corresponding to the relationship entities. Because the atlas can provide richer information, the probability of deviation of design intention generation of developers is reduced, the repair cost is reduced, the application development cost is further reduced, the development period is shortened, and the business requirement can be met.
In some possible implementations, the application management system may also present the metadata model atlas to the user. The nodes in the metadata model map are used for representing functions or service APIs of the data entities and the business objects corresponding to the data entities, and the edges in the metadata model map are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
Therefore, when a developer develops the applied code, not only the design intention of the architect can be understood based on the information such as the data entity, the relation entity and the like, but also the design intention can be accurately understood by combining the function or service API of the business object corresponding to the data entity and the function or service API of the business object relation corresponding to the relation entity, so that the probability of understanding deviation is reduced, the probability of follow-up repair is further reduced, and the application development cost is reduced.
In some possible implementations, the application management system may further present, to the user, a function or service API of the business object corresponding to the data entity in response to a triggering operation of the user on the node in the metadata model graph. For example, when the user selects a function node, such as a database node, the application management system may also present the user with the function of the business object corresponding to the data entity. For another example, the application management system may also present the service API of the business object to the user when the user selects a node that characterizes the service API.
In the method, the metadata model map comprises a large amount of information, and the metadata model map can support to display corresponding information according to the user requirements, so that assistance is provided for developing codes of applications by developers.
In some possible implementations, the application management system may further present to the user a relationship between data entities, a relationship of the data entities to functions, or a relationship of the data entities to service APIs in response to a triggering operation of an edge in the metadata model graph by the user. Therefore, the corresponding information can be displayed according to the user requirements, and assistance is provided for developing the codes of the application for the developer.
In some possible implementations, the application management system may also determine a function selected by the user when creating the data entity or the relationship entity. Accordingly, when the application management system generates the metadata model map, the metadata model map of the application can be generated according to the association information of the at least one data entity, the association information of the at least one relation entity and the function selected by the user when the data entity or the relation entity is created. Therefore, the metadata model map can be generated according to the personalized requirements, and the complexity of map construction is prevented from being increased due to unnecessary functional waste.
In some possible implementations, the application management system may further obtain a syntax tree and an annotation of the application according to a metadata model graph of the application, and then the application management system may generate a code of the application according to the syntax tree and the annotation. Therefore, the design, namely the development, can be realized, the development efficiency of the application design is greatly improved, the difficulty of the application design development is reduced, and the labor cost and the time cost of the application development are reduced.
In some possible implementations, the application management system may generate a physical table, a field index, and a data relation of the data layer of the application according to a physical table definition in the syntax tree and an annotation of the data layer of the application, then generate an entity class, a data interface implementation, and a field definition of the logical layer of the application according to a data entity, an association relation, a physical table definition, and an annotation of the logical layer of the application in the syntax tree, and then generate a base page, a data operation API, and a data transfer object DTO of the presentation layer of the application according to the data entity, the association relation, a service API, and an annotation of the presentation layer of the application in the syntax tree.
The method automatically generates codes of all layers of the application through grammar trees and notes without development of developers, reduces development difficulty and reduces development cost.
In some possible implementations, the application management system may further assemble and generate a service layer of the application according to the data operation API of the presentation layer. For example, the application management system may assemble the data manipulation APIs to obtain a business layer, thereby enabling expansion and customization of the application. For example, when a user dislikes a native User Interface (UI) generated by the application management system, a new business layer UI may be assembled and generated based on the data manipulation API of the presentation layer.
For complex applications, such as product data management system (product DATA MANAGEMENT, PDM) and other product lifecycle management (product LIFECYCLE MANAGEMENT, PLM) applications, a metadata model map is generated after service modeling, a data management layer (including an interface layer, also called a presentation layer) is automatically generated according to the metadata model map, and then a service layer is assembled and generated based on the data of the layer to operate an API, so that development efficiency can be improved.
In some possible implementations, the application management system may also determine resources required to deploy the application according to the function or service API, then assemble the resources (e.g., servers, containers, databases) required for the application according to the metadata model map and standard application templates, and deploy code for the application at the resources. According to the method, the installation operation and maintenance efficiency of the application is improved through automatic resource purchase, configuration automation and installation deployment automation.
In some possible implementations, the application management system may version manage the data entities, the relationship entities. In particular, the application management system may expose a version record of the data entity or the relationship entity that includes one or more of a revision number, a name of the entity, a description of the entity, a status of the entity, an updater, or an update time. The application management system may compare the first version and the second version of the data entity or the relationship entity in response to a user-triggered version comparison operation. The comparison may assist the user in selecting the appropriate version of the entity or to provide assistance for subsequent updates of the entity.
In some possible implementations, the application management system may expose the use of data entities or relationship entities. For data entities, the application management system may expose one or more of relationship entity reference information, reference object reference information, inheritance data entity reference information; for a relational entity, the application management system may expose reference object reference information. The method can provide references for the creation of the data entity and the relation entity by showing the use condition of the data entity and the relation entity.
In a second aspect, the present application provides an application management system. The system comprises:
The interaction module is used for receiving the associated information of at least one data entity configured by a user, wherein the associated information of the data entity comprises at least one of a function of a business object corresponding to the data entity or a service Application Programming Interface (API) and an attribute of the data entity;
The interaction module is further configured to receive association information of at least one relationship entity configured by the user, where the association information of the relationship entity includes at least one of a function or a service API of a business object relationship corresponding to the relationship entity and an attribute of the relationship entity;
and the map generation module is used for generating a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity, and the metadata model map is used for assisting in generating codes of the application.
In some possible implementations, the interaction module is further configured to:
And presenting the metadata model map to the user, wherein nodes in the metadata model map are used for representing functions or service APIs of the data entities and business objects corresponding to the data entities, and edges in the metadata model map are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
In some possible implementations, the interaction module is further configured to:
Responding to the triggering operation of the user to the nodes in the metadata model map, and presenting the functions or service APIs of the business objects corresponding to the data entities to the user.
In some possible implementations, the interaction module is further configured to:
And responding to the triggering operation of the user on the edges in the metadata model map, and presenting the relation among the data entities, the relation between the data entities and the functions or the relation between the data entities and the service API to the user.
In some possible implementations, the interaction module is further configured to:
Determining a function selected by the user when creating the data entity or the relationship entity;
the map generation module is specifically used for:
And generating a metadata model map of the application according to the association information of the at least one data entity, the association information of the at least one relation entity and the function selected by the user when the data entity or the relation entity is created.
In some possible implementations, the system further includes:
And the code generation module is used for obtaining the grammar tree and the annotation of the application according to the metadata model map of the application and generating the code of the application according to the grammar tree and the annotation.
In some possible implementations, the code generation module is specifically configured to:
generating a physical table, a field index and a data relation of the data layer of the application according to the physical table definition in the grammar tree and the annotation of the data layer of the application;
generating entity class, data interface realization and field definition of the logic layer of the application according to the data entity, association relation, physical table definition and annotation of the logic layer of the application in the grammar tree;
and generating a basic page, a data operation API and a data transmission object DTO of the presentation layer of the application according to the data entity, the association relation, the service API and the annotation of the presentation layer of the application in the grammar tree.
In some possible implementations, the code generation module is further configured to:
and assembling and generating a service layer of the application according to the data operation API of the presentation layer.
In some possible implementations, the system further includes:
And the deployment module is used for determining resources required by deploying the application according to the function or service API, assembling the resources required by the application according to the metadata model map and the standard application template, and deploying codes of the application at the resources.
In a third aspect, the present application provides a cluster of computing devices. The cluster of computing devices includes at least one computing device including at least one processor and at least one memory. The at least one processor and the at least one memory are in communication with each other. The at least one processor is configured to execute instructions stored in the at least one memory to cause a computing device or cluster of computing devices to perform the application management method as described in the first aspect or any implementation of the first aspect.
In a fourth aspect, the present application provides a computer readable storage medium having stored therein instructions for instructing a computing device or a cluster of computing devices to execute the application management method according to any implementation manner of the first aspect or the first aspect.
In a fifth aspect, the present application provides a computer program product comprising instructions which, when run on a computing device or cluster of computing devices, cause the computing device or cluster of computing devices to perform the application management method of any implementation of the first aspect or the first aspect described above.
Further combinations of the present application may be made to provide further implementations based on the implementations provided in the above aspects.
Drawings
In order to more clearly illustrate the technical method of the embodiments of the present application, the drawings used in the embodiments will be briefly described below.
Fig. 1 is a schematic diagram of an architecture of an application management system according to an embodiment of the present application;
FIG. 2 is a flowchart of an application management method according to an embodiment of the present application;
fig. 3A is an interface schematic diagram of basic information configuration in a data entity creation interface according to an embodiment of the present application;
FIG. 3B is a schematic diagram of an interface for attribute configuration in a data entity creation interface according to an embodiment of the present application;
FIG. 3C is a schematic diagram of an interface of a functional configuration in a data entity creation interface according to an embodiment of the present application;
FIG. 3D is a schematic diagram of an interface for creating relationship configuration in an interface for a data entity according to an embodiment of the present application;
fig. 3E is an interface schematic diagram of use case configuration in a data entity creation interface according to an embodiment of the present application;
FIG. 3F is a schematic diagram of an interface for editing record configuration in a data entity creation interface according to an embodiment of the present application;
FIG. 4A is a schematic diagram of an interface for basic information configuration in a relationship entity creation interface according to an embodiment of the present application;
FIG. 4B is a schematic diagram of an interface for attribute configuration in a relationship entity creation interface according to an embodiment of the present application;
FIG. 4C is a schematic diagram of an interface of a functional configuration in a relationship entity creation interface according to an embodiment of the present application;
FIG. 4D is a schematic diagram of an interface of a use case configuration in a relationship entity creation interface according to an embodiment of the present application;
FIG. 4E is a schematic diagram of an interface for configuring a record in a relationship entity creation interface according to an embodiment of the present application;
FIG. 5 is an interface diagram of another data entity creation interface according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a metadata model map according to an embodiment of the present application;
FIG. 7 is a schematic diagram of querying a current node database according to an embodiment of the present application;
fig. 8 is a schematic diagram of querying Java of a current node according to an embodiment of the present application;
FIG. 9 is a diagram illustrating a metadata model according to an embodiment of the present application;
FIG. 10 is a code structure diagram of an application provided by an embodiment of the present application;
FIG. 11 is a schematic diagram of an application extension provided in an embodiment of the present application;
FIG. 12 is a flowchart of an application publishing process according to an embodiment of the present application;
FIG. 13 is a flow chart of a resource purchase provided by an embodiment of the present application;
FIG. 14 is a flowchart of an application deployment provided by an embodiment of the present application;
FIG. 15 is a schematic diagram of a computing device according to an embodiment of the present application;
FIG. 16 is a schematic diagram illustrating a configuration of a computing device cluster according to an embodiment of the present application;
FIG. 17 is a schematic diagram illustrating another computing device cluster according to an embodiment of the present application;
fig. 18 is a schematic structural diagram of yet another computing device cluster according to an embodiment of the present application.
Detailed Description
The terms "first", "second" in embodiments of the application are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature.
Some technical terms related to the embodiments of the present application will be described first.
An Application (APP) is an abbreviation for application program (application program), specifically a program written for some special application purpose of the user. The application may be processing data in a Database (DB) to achieve a specific application purpose. For example, the application may be a comprehensive information management system that processes attendance data, salary data in a database, and for example, the application may be a report analysis system that processes product quality data in a database.
Application management refers to the management of applications over their lifecycle, including, but not limited to, application development, application deployment. In the development process of applications, especially in the development process of applications of large-scale software systems such as integrated information management systems, report analysis systems and the like, metadata-driven development modes are generally adopted in order to avoid repeated development.
Metadata driven data platforms are a leading edge way to support the rapid design, development and implementation of various applications. After the metadata model of the application is designed and defined, visualization of the metadata model can help architects and developers quickly understand underlying architecture and logic of the application, so that development efficiency is improved.
However, existing visualization schemes for metadata models typically support the presentation of data entities and relationships between data entities, and further provide for the presentation of attributes of data entities and the presentation of attributes of relationship entities. The scheme may describe database tables, and relationships between database tables, and may not describe relationships of business objects, and may not describe functions or application programming interfaces (application programming interface, APIs) of each business object. In this way, developers are led to rely on the modeler's understanding of the design intent when developing the code of an application. If there is an understanding deviation, a very high repair cost may be required, so that the application development cost and the development period are increased, and it is difficult to meet the service requirement.
In view of this, the present application provides an application management method. The method may be performed by an application management system. The application management system may be a software system that may be deployed in a cluster of computing devices, for example a cluster of computing devices in a cloud environment, the cluster of computing devices executing program code of the software system, thereby performing the application management method of the application. In some possible implementations, the application management system may also be a hardware system, for example, a computing device cluster with application management functions, where the application management system executes the application management method of the present application.
Specifically, the application management system receives association information of at least one data entity configured by a user, the association information of the data entity comprises at least one of a function or a service API of a business object corresponding to the data entity and an attribute of the data entity, then the application management system receives association information of at least one relation entity configured by the user, the association information of the relation entity comprises at least one of a function or a service API of a business object relation corresponding to the relation entity and an attribute of the relation entity, and then the application management system generates a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity, wherein the metadata model map is used for assisting in generating codes of the application.
In the method, the application management system provides brand new application modeling capability, and generates a relatively complete metadata model map based on the full metadata, wherein the map not only describes the relationship among data entities, the attributes of the data entities and the attributes of the relationship entities, but also can describe the functions or service APIs of the business objects corresponding to the data entities and the functions or service APIs of the business object relationships corresponding to the relationship entities. Because the atlas can provide richer information, the probability of deviation of design intention generation of developers is reduced, the repair cost is reduced, the application development cost is further reduced, the development period is shortened, and the business requirement can be met.
Furthermore, the method also supports the metadata model atlas to automatically generate the code of the application, realizes design and development, improves the development efficiency of the application design and reduces the difficulty of application development. In addition, the method also supports automatic resource purchase and configuration automation and automatic application deployment, solves the problems that a large number of developers consume a large number of service APIs for data management in the related technology, a large number of manpower is input to purchase and build a server after the test is passed, a database, middleware and the like are installed, a database script is executed by using a database mode definition language (Data Definition Language, DDL), and finally the application can be used after deployment online adjustment, the database DDL and various configurations are not required to be executed, the deployment operation is simplified, and the application deployment operation and maintenance efficiency is improved.
In order to make the technical scheme of the application clearer and easier to understand, the application management system of the embodiment of the application is described below with reference to the accompanying drawings.
Referring to the architecture diagram of the application management system shown in fig. 1, the application management system 10 may be software deployed in a cloud environment, an edge environment, or a local computing center, or may be a cluster of computing devices in the above environment. Fig. 1 illustrates an application management system 10 as software deployed in a cloud environment, where a client 20 (e.g., a browser or a dedicated client) is connected to the application management system 10, and a user may access the application management system 10 through the client 20 for application management.
Specifically, the application management system 10 includes an interaction module 100 and a map generation module 200. The interaction module 100 and the map generation module 200 are described below separately.
The interaction module 100 is configured to receive association information of at least one data entity configured by a user, and receive association information of at least one relationship entity configured by the user. The association information of the data entity includes at least one of a function or a service application programming interface API of a business object corresponding to the data entity and an attribute of the data entity. The association information of the relationship entity comprises at least one of a function or a service API of the business object relationship corresponding to the relationship entity and an attribute of the relationship entity.
The map generation module 200 is configured to generate a metadata model map of an application according to the association information of the at least one data entity and the association information of the at least one relational entity. Wherein the metadata model graph is used to indicate code that assists in generating the application. In some examples, the interaction module 100 is further configured to present the metadata model map to the user, so that a developer may understand the design intent according to the information such as the function or the API described by the metadata model map, and further implement the code development of the application. In other examples, application management system 10 may also include code generation module 300. The code generation module 300 is used for generating the code of the application by using the metadata model map of the application. For example, code generation module 300 may obtain a grammar tree and annotations for an application based on a metadata model graph of the application, and then generate code for the application based on the grammar tree and annotations.
In some possible implementations, the application management system 10 further includes a deployment module 400. The deployment module 400 is used to automatically deploy applications. Specifically, the deployment module 400 may determine resources required for deploying the application according to the function or service API described by the metadata model spectrum, then assemble the resources required for the application according to the metadata model spectrum and the standard application template, and deploy the code of the application at the resources.
Based on the application management system 10 shown in fig. 1, the application further provides an application management method. The application management method according to the embodiment of the present application is described below with reference to the accompanying drawings.
Referring to the flowchart of the application management method shown in fig. 2, the method includes:
s202: the application management system 10 receives association information of at least one data entity configured by a user.
Entities (entities) are objects that exist objectively and are distinguishable from each other. In particular to databases, an entity may be an individual of a class of objects called an entity. Wherein the data entity (DATA ENTITY) may be an individual instantiated by a Business Object (BO). A business object refers to a component that retrieves and processes data, is a simple real-world software abstraction, and is typically located in the middle tier or business logic layer. Business objects may automatically join a particular function in an application. For example, in an e-commerce application, a business object may include an order ", a commodity" product ".
The application management system 10 may provide graphical data entity creation, modification, revocation (deletion) capabilities, etc., and support version management of data entities, with version upgrades being enabled upon modification. Specifically, the application management system 10 supports the user to create data entities according to the selected business objects; and support add attributes, functions, service APIs. The application management system 10 also supports, among other things, adding relationships, usage, or revisions. For a data entity, the use case may include one or more of relationship entity reference information, reference object reference information, or inheritance data entity reference information. The revision record may support viewing and comparison of historical versions.
In particular implementations, the application management system 10 may provide a data entity creation interface through which associated information of at least one data entity is received. The association information of the data entity comprises at least one of a function or a service API of a business object corresponding to the data entity and an attribute of the data entity. Further, the association information of the data entities may also include relationships between the data entities.
Referring to the schematic diagrams of the data entity creation interface shown in fig. 3A to 3F, the data entity creation interface 32 includes a basic information configuration component 321, an attribute configuration component 322, a function configuration component 323, a relationship configuration component 324, a use case configuration component 325, and a revision recording component 326.
As shown in fig. 3A, the basic configuration information component 321 includes a name configuration control 3211, a description configuration control 3212, a model type configuration control 3213, a parent model configuration control 3214, and a model classification configuration control 3215. The name configuration controls 3211 may include one or more of a chinese name configuration control or an english name configuration control, for configuring a chinese name or an english name. Similarly, description configuration controls 3212 include one or more of a chinese description configuration control or an english description configuration control for configuring a chinese description or an english description. Model type configuration control 3213 is used to configure the data entity as either a solid model or an abstract model. The parent model configuration control 3214 is used to configure the business objects that the data entity inherits or relies on. The model classification configuration control 3215 is used to configure the model classification of the data entity as a system configuration model or a business data model. The system configuration model is a business independent model.
Further, the basic configuration information component 321 also includes a table name configuration control 3216, the table name configuration control 3216 being used to configure the table name. Optionally, the basic information configuration component 321 further includes a responsible person configuration control 3217, an icon configuration control 3218. Wherein, the responsible person configuration control 3217 is used for configuring responsible persons of the data entity, and the icon configuration control 3218 is used for configuring icon types of the data entity.
When the user clicks on the attribute configuration component 322, the user can jump to the interface as shown in FIG. 3B to perform attribute configuration of the data entity. Wherein an attribute (attribute) of the data entity may include a basic attribute, which may be defined by the add-on control 3221. For example, after the user clicks the new control 3221, the user can edit each field value of the new attribute through the edit control 3225, thereby completing the attribute definition. The newly added attribute in this example may include des. It should be noted that, the embodiment of the present application further supports deleting the attribute through the deletion control 3222, and adjusting the order of the attributes through the up control 3223 and the down control 3224. Further, the attributes of the data entity may also include attributes inherited from the parent model. Fig. 3B illustrates a list 3226 of properties inherited from a parent model, and properties inherited from the parent model under the names "secret", "classification property", "creation time", "creator", and the like may be included in the list 3226.
When the user clicks the function configuration component 323, the user can jump to the interface shown in fig. 3C to configure the function of the service object corresponding to the data entity, and the application management system 10 receives the function of the service object corresponding to the data entity configured by the user. Specifically, the user may set rules to configure the functionality of the business object. For example, the user can add a lifecycle template, a custom template and state attribute field information in a design state according to the service requirement, thereby configuring the lifecycle management function. In particular implementations, the user can trigger the add control 3231 to trigger the flow of the add lifecycle template. Upon adding a lifecycle template, a user can edit the various attribute fields of the added lifecycle template via edit control 3232. At this interface, the user may also configure the service API to which the function corresponds. Specifically, the user can configure the API chinese name, the API english name, and the function description, thereby implementing the service API corresponding to the configuration function.
When the user clicks on the relationship configuration component 324, the user can jump to the interface as shown in FIG. 3D for relationship configuration or viewing. The application management system 10 receives relationships between user-configured data entities. For example, the relationship may be one-to-one or one-to-many. It should be noted that the interface may also expose relationships inherited from the parent model.
When the user clicks on the use case configuration component 325, the user can jump to an interface as shown in fig. 3E, which can expose the use case of the business object corresponding to the data entity. For example, the interface may expose relationship entity reference information, reference object reference information, inheritance data entity reference information.
Further, if the currently created data entity is an updated version of the data entity, the user may click on the revision recording component 326 to jump to the interface shown in FIG. 3F to view or compare changes in the updated version relative to the historical version. In particular, the interface may present version records for each version, including revision numbers, names, descriptions, status, updaters, update times. The user may trigger the comparison of different versions of the record through comparison control 3261. For example, a user may select several versions of a record by selecting control 3262 and then click contrast control 3261, triggering a comparison of the different versions.
S204: the application management system 10 receives association information for at least one relationship entity configured by a user.
The relationship entity is specifically an individual of the business object relationship instantiation. The application management system 10 may provide graphical relationship entity creation, modification, revocation capability, etc., and support version management of the relationship entity, with version upgrades being enabled upon modification. The user can create a relation entity according to the business object relation; support for adding attributes, functions, service APIs. The service API may characterize usage. Wherein the application management system 10 also supports adding revision records. The revision record may support viewing and comparison of historical versions.
In particular implementations, the application management system 10 may provide a relationship entity creation interface through which association information for at least one relationship entity is received. The association information of the relation entity comprises at least one of a function or a service API of a business object relation corresponding to the relation entity and an attribute of the relation entity.
Referring to the schematic diagrams of the relationship entity creation interface shown in fig. 4A to 4E, the relationship entity creation interface 42 includes a basic information configuration component 421, an attribute configuration component 422, a function configuration component 423, a use case configuration component 424, and a revision recording component 425.
As shown in fig. 4A, the basic configuration information component 421 includes a name configuration control 4211, a description configuration control 4212, a model classification configuration control 4213, a relationship type configuration control 4214, a linkage update configuration control 4215, a table name configuration control 4216, a relationship name configuration control 4217, a source data entity name configuration control 4218, and a target data entity name configuration control 4219.
The name configuration controls 4211 may include one or more of a chinese name configuration control or an english name configuration control, for configuring a chinese name or an english name. Similarly, description configuration controls 4212 comprise one or more of chinese description configuration controls or english description configuration controls for configuring chinese descriptions or english descriptions. Model classification configuration control 4213 is used to configure a business data model or a system configuration model. Relationship type configuration control 4214 is used to configure relationship types as one-to-one, one-to-many, many-to-one, or many-to-many. The linked update configuration control 4215 is used to configure whether to link the update relationship instance. The table name configuration control 4216 is used to configure the table names, e.g., to be configured as test1_rel, the relationship name configuration control 4217 is used to configure the relationship names, the source data entity name configuration control 4218 is used to configure the source data entity names or aliases, and the target data entity name configuration control 4219 is used to configure the target data entity names or aliases.
When the user clicks on the property configuration component 422, the user can jump to the interface shown in FIG. 4B to perform property configuration of the relationship entity. The attributes of the relationship entity may include a custom basic attribute, which may be defined by the add-on control 4221. For example, after the user clicks the add control 4221, the individual field values of the added attribute may be edited by the edit control, thereby completing the attribute definition. It should be noted that, the embodiment of the present application further supports deleting the attribute through the delete control 4222, and adjusting the order of the attribute through the move-up control 4223 and the move-down control 4224. Further, the attributes of the relationship entity may also include system base attributes. Fig. 4B illustrates a list 4225 of system basic attributes, and attributes named "creation time", "creator", "unique code", etc. may be included in the list 4225.
When the user clicks the function configuration component 423, the interface shown in fig. 4C may be skipped to configure the function of the business object relationship corresponding to the relationship entity, and the application management system 10 receives the function of the business object relationship corresponding to the relationship entity configured by the user. Specifically, the user may set rules to configure the functionality of business object relationships. For example, a user may maintain a joint index in a design state and an operation state, the data maintained in the design state returns a result in the operation state after the application is deployed, only a public tenant has an operation entry in the operation state, and the maintained data processes the returned result in real time. In particular implementations, the user may trigger the add control 4231 to trigger the flow of the new join index. When the joint index is newly added, the user can edit each attribute field of the newly added index through an edit control. In addition, embodiments of the present application also support deletion of the federated index via delete control 4232. At this interface, the user may also configure the service API to which the function corresponds. Specifically, the user can configure the API chinese name, the API english name, and the function description, thereby implementing the service API corresponding to the configuration function.
When the user clicks on the use case configuration component 424, the user can jump to the interface as shown in fig. 4D, which can display the use case of the business object relationship corresponding to the relationship entity. For example, the interface may expose reference object reference information.
Further, if the currently created relationship entity is an updated version of the relationship entity, the user may click on the revision recording component 425 to jump to the interface shown in FIG. 4E to view the revision record, e.g., view information such as revision number, revision description, updater, update time, etc.
S206: the application management system 10 generates a metadata model map of the application based on the association information of the at least one data entity and the association information of the at least one relationship entity.
Specifically, the application management system 10 may generate a metadata model map of an application by using a function of a service object corresponding to a data entity and an API of the service object corresponding to the data entity in association information of the data entity as nodes, and a relationship between the data entities in a relationship entity, a relationship between the data entity and the function of the service object, and a relationship between the data entity and the API of the service object as edges. The metadata model atlas is used to assist in generating code for an application.
In some possible implementations, when the user creates a data entity or a relationship entity, the user may also select a data management function corresponding to the entity, and the application management system 10 may determine a function selected by the user when creating the data entity or the relationship entity, and then generate a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relationship entity, and the function selected by the user when creating the data entity or the relationship entity.
To facilitate understanding, the process is illustrated in the creation of a data entity. Referring to the schematic diagram of the data entity creation interface shown in FIG. 5, the data entity creation interface 32 further includes a function selection component 327 that, upon deployment, can present a plurality of controls, such as an add control for adding a function, a delete control for deleting a function. The function list is displayed below the adding control and the deleting control, the Chinese name, the English name, the Chinese description, the English description and the inheritance relation of each data management function are displayed in the function list, and a user can determine whether to select the corresponding function according to the information such as the name, the description and the inheritance relation of each data management function, so that the corresponding function is added through the adding control or deleted through the deleting control. For example, the user may select a function named chinese as a file service to add, and accordingly, the application management system 10 may determine that the function selected by the user when creating the data entity includes the file service, and then generate a metadata model map of the application according to the association information of at least one data entity and the association information of at least one relationship entity and the above-mentioned function selected by the user when creating the data entity.
S208: application management system 10 presents the metadata model map to the user.
The nodes in the metadata model atlas are used for representing functions or service APIs of the data entities and the business objects corresponding to the data entities, and the edges in the metadata model atlas are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
For ease of understanding, embodiments of the present application also provide examples of metadata model schemas. Referring to the schematic diagram of the metadata model map shown in fig. 6, the metadata model map includes a plurality of nodes, and the plurality of nodes include a current node and at least one peripheral node, where the peripheral node may be a node having a reference object relationship and an inheritance relationship with the current node. For the current node, a current node database (for representing functions, also called function nodes), a current node Java (for representing service APIs) is also described in the metadata model graph. In addition, the metadata model map also comprises relations among nodes. Also shown in fig. 6 are legends and statistics, where different legends are used to represent different node types, different relationship types. The statistical information specifically includes node statistical information and relationship statistical information.
S210: in response to a triggering operation of a user on a node in the metadata model graph, the application management system 10 presents a function or service API of a business object corresponding to the data entity to the user.
Depending on the user selection, the application management system 10 may present the functionality of the business object corresponding to the data entity to the user or present the service API of the business object corresponding to the data entity to the user. For ease of understanding, the following description is provided in connection with examples.
In some examples, referring to the schematic diagram of the query node database shown in fig. 7, when a user clicks on the current node database in fig. 6, the application management system 10 may present the current node database to the user, which may include a base database and an extended database. The user can process the data in the basic database or the extended database.
In other examples, referring to the schematic diagram of querying the current node Java shown in fig. 8, when a user clicks on the current node Java in fig. 7, the application management system 10 may present the current node Java to the user, specifically, service APIs of the business objects corresponding to the data entities represented by the nodes, such as addTag [ ], batchCheckin [ ], batchCheckout [ ].
S212: in response to a triggering operation of an edge in the metadata model graph by a user, the application management system 10 presents to the user a relationship between data entities, a relationship of the data entities to functions, or a relationship of the data entities to service APIs.
Specifically, edges in the metadata model graph may represent relationships between data entities, relationships between data entities and functions, or relationships between data entities and service APIs, and a user may select one edge to trigger a relationship viewing operation. The application management system 10 may present to the user a relationship between data entities, a relationship of the data entities to functions, or a relationship of the data entities to service APIs in response to a triggering operation of an edge in the metadata model graph by the user.
The steps S208 to S212 are used to provide assistance for the developer to understand the design intent and further provide assistance for the code development of the application, the steps S208 to S212 are optional steps of the embodiment of the present application, and the application management method of the embodiment of the present application may be executed without executing the steps. For example, the application management system 10 may not perform the above steps when automatically generating code of an application from a metadata model schema.
In the method, the application management system 10 supports the user to configure the full metadata, and generates a relatively complete metadata model map based on the full metadata, wherein the map not only describes the relationship among data entities, attributes of the data entities and attributes of the relationship entities, but also describes functions or APIs of business objects corresponding to the data entities and functions or APIs of business object relationships corresponding to the relationship entities. Because the atlas can provide richer information, the probability of deviation of design intention generation of developers is reduced, the repair cost is reduced, the application development cost is further reduced, the development period is shortened, and the business requirement can be met.
In some possible implementation manners, the application management system 10 not only can present a metadata model map to a user to assist the user in developing codes of applications, but also can support automatic generation of the codes of the applications, so as to realize design and development, thereby greatly improving the development efficiency of the application design and reducing the development difficulty of the application design.
Specifically, the application management system 10 may automatically generate the source code of the application using syntax tree and annotation mode, driven by the metadata model map. Wherein the application management system 10 may obtain a syntax tree and an annotation of an application according to a metadata model map of the application, and then generate a code of the application according to the syntax tree and the annotation. And the application management system 10 supports rich extension and customization capabilities.
Referring to the structure diagram of the metadata model map shown in fig. 9, after the service is modeled to obtain the service object and the service object relationship, metadata definition can be performed to generate the metadata model map, where the map includes association relationships, service interfaces, metadata entities (such as data entities and relationship entities), and physical table definitions. Accordingly, referring to the code structure diagram of the application shown in fig. 10, the application management system 10 may generate a physical table, a field index, and a data relationship of the data layer of the application according to the physical table definition in the syntax tree and the annotation of the data layer of the application, then generate an entity class, a data interface implementation, and a field definition of the logical layer of the application according to the data entity, the association relationship, the service API, and the annotation of the presentation layer of the application in the syntax tree, and then generate a basic page, a data operation API, and a data transfer object DTO of the presentation layer of the application according to the data entity, the association relationship, the service API, and the annotation of the logical layer of the application in the syntax tree.
Further, the application management system 10 also supports further customization of applications in view of the personalized needs of the user. For example, referring to fig. 11, the application management system 10 supports a user to automatically generate a data management layer through service modeling, and a service person can develop and assemble a complex service layer by himself, thereby constructing a complex Product Data Management (PDM) and improving development efficiency of complex data management applications such as PDM. In a specific implementation, the application management system 10 may assemble and generate the service layer of the application according to the data operation API of the presentation layer, so as to implement application customization or expansion.
After the codes of the application are generated, the embodiment of the application also supports automatic release and deployment of the application.
Referring to the flowchart of application publishing shown in fig. 12, the application management system 10 may generate a publishing record, obtain publishing data, and verify the data, and when the verification is passed, the application management system 10 may publish an application, specifically including code generation, API registration, and API generation, and after generating a code, may compile and construct the code, and then the application management system 10 may generate a result record publishing condition according to the compiled or constructed structure, API registration structure, and API. It should be noted that, when the verification fails, the application management system 10 may record the failure reason.
After the application is published, the application management system 10 may perform automatic deployment of the application. When deployed, the application management system 10 may determine resources required for deploying the application according to the functions or APIs, so that the application management system 10 may purchase the resources required for the application. Referring to the schematic diagram of resource purchase shown in fig. 13, the application management system 10 may purchase a virtual private cloud, a relational database, an elastic load balancing service, a distributed cache service, an API gateway, a cloud container engine cluster, a node, a document database, a search service, a distributed message service, and an elastic public network IP for a user, and further, the application management system 10 may further configure a security group to ensure that the access in the network is ensured.
After purchasing the resources, the application management system 10 may automatically deploy the code of the application to the corresponding resources. The application management system 10 assembles the resources required by the application according to the metadata model map and the standard application template, and deploys the codes of the application at the resources. Referring to the schematic diagram of application deployment shown in fig. 14, the application management system 10 may select an application, then select a package version, then select a deployment environment, and issue a configuration to deploy the application. The application management system 10 triggers a deployment procedure, which can automatically create a database, a table structure, build an index, initialize data, and then expose a rest API, thereby realizing automatic deployment.
Based on the application management method of the foregoing embodiment, the present application further provides an application management system 10, as shown in fig. 1, where the application management system 10 includes:
The interaction module 100 is configured to receive association information of at least one data entity configured by a user, where the association information of the data entity includes at least one of a function of a service object corresponding to the data entity or a service application programming interface API and an attribute of the data entity;
The interaction module 100 is further configured to receive association information of at least one relationship entity configured by the user, where the association information of the relationship entity includes at least one of a function or a service API of a business object relationship corresponding to the relationship entity and an attribute of the relationship entity;
the map generating module 200 is configured to generate a metadata model map of an application according to the association information of the at least one data entity and the association information of the at least one relational entity, where the metadata model map is used to assist in generating a code of the application.
The interaction module 100 and the map generation module 200 may be implemented by hardware, or may be implemented by software, for example. For ease of description, the following is illustrated with the map generation module 200.
When implemented in software, the profile generation module 200 may be an application running on a computing device, such as a computing engine or the like. The application may be provided for use by the user in the manner of a virtualized service. The virtualization service may include a Virtual Machine (VM) service, a Bare Metal Server (BMS) service, and a container service. The VM service may be a service that virtualizes a Virtual Machine (VM) resource pool on a plurality of physical hosts (such as computing devices) through a virtualization technology to provide a user with a VM for use on demand. The BMS service is a service for virtualizing a BMS resource pool on a plurality of physical hosts to provide a user with BMS for use on demand. A container service is a service that virtualizes a pool of container resources on multiple physical hosts to provide users with containers for use on demand. A VM is a virtual computer that is modeled, i.e., a computer that is logically. The BMS is elastically telescopic high-performance computing service, has no difference between computing performance and traditional physical machines, and has the characteristic of safe physical isolation. The container is a kernel virtualization technology, and can provide lightweight virtualization to achieve the purpose of isolating user space, processes and resources. It should be understood that the VM service, the BMS service, and the container service in the above-mentioned virtualization service are merely specific examples, and in practical applications, the virtualization service may be other lightweight or heavy-weight virtualization services, which are not specifically limited herein.
When implemented in hardware, at least one computing device, such as a server or the like, may be included in the atlas generation module 200. Alternatively, the pattern generation module 200 may be a device implemented using an application-specific integrated circuit (ASIC), a programmable logic device (programmable logic device, PLD), or the like. The PLD may be implemented as a complex program logic device (complex programmable logical device, CPLD), a field-programmable gate array (FPGA) GATE ARRAY, a general-purpose array logic (GENERIC ARRAY logic, GAL), or any combination thereof.
In some possible implementations, the interaction module 100 is further configured to:
And presenting the metadata model map to the user, wherein nodes in the metadata model map are used for representing functions or service APIs of the data entities and business objects corresponding to the data entities, and edges in the metadata model map are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
In some possible implementations, the interaction module 100 is further configured to:
Responding to the triggering operation of the user to the nodes in the metadata model map, and presenting the functions or service APIs of the business objects corresponding to the data entities to the user.
In some possible implementations, the interaction module 100 is further configured to:
And responding to the triggering operation of the user on the edges in the metadata model map, and presenting the relation among the data entities, the relation between the data entities and the functions or the relation between the data entities and the service API to the user.
In some possible implementations, the interaction module 100 is further configured to:
Determining a function selected by the user when creating the data entity or the relationship entity;
The map generation module 200 is specifically configured to:
And generating a metadata model map of the application according to the association information of the at least one data entity, the association information of the at least one relation entity and the function selected by the user when the data entity or the relation entity is created.
In some possible implementations, the system 10 further includes:
The code generating module 300 is configured to obtain a syntax tree and an annotation of the application according to the metadata model map of the application, and generate a code of the application according to the syntax tree and the annotation.
In some possible implementations, the code generation module 300 is specifically configured to:
generating a physical table, a field index and a data relation of the data layer of the application according to the physical table definition in the grammar tree and the annotation of the data layer of the application;
generating entity class, data interface realization and field definition of the logic layer of the application according to the data entity, association relation, physical table definition and annotation of the logic layer of the application in the grammar tree;
and generating a basic page, a data operation API and a data transmission object DTO of the presentation layer of the application according to the data entity, the association relation, the service API and the annotation of the presentation layer of the application in the grammar tree.
In some possible implementations, the code generation module 300 is further configured to:
and assembling and generating a service layer of the application according to the data operation API of the presentation layer.
In some possible implementations, the system 10 further includes:
The deployment module 400 is configured to determine resources required for deploying the application according to the function or service API, assemble the resources required for the application according to a metadata model map and a standard application template, and deploy codes of the application at the resources.
The present application also provides a computing device 1500. As shown in fig. 15, the computing device 1500 includes: bus 1502, processor 1504, memory 1506, and communication interface 1508. The processor 1504, memory 1506, and communication interface 1508 communicate via bus 1502. The computing device 1500 may be a server or a terminal device. It should be appreciated that the present application is not limited to the number of processors, memories in computing device 1500.
Bus 1502 may be a peripheral component interconnect standard (PERIPHERAL COMPONENT INTERCONNECT, PCI) bus, or an extended industry standard architecture (extended industry standard architecture, EISA) bus, or the like. The buses may be divided into address buses, data buses, control buses, etc. For ease of illustration, only one line is shown in fig. 15, but not only one bus or one type of bus. Bus 1504 may include a path to transfer information between various components of computing device 1500 (e.g., memory 1506, processor 1504, communication interface 1508).
The processor 1504 may include any one or more of a central processing unit (central processing unit, CPU), a graphics processor (graphics processing unit, GPU), a Microprocessor (MP), or a digital signal processor (DIGITAL SIGNAL processor, DSP).
The memory 1506 may include volatile memory (RAM), such as random access memory (random access memory). The processor 1504 may also include non-volatile memory (non-volatile memory), such as read-only memory (ROM), flash memory, mechanical hard disk (HARD DISK DRIVE, HDD) or Solid State Disk (SSD) STATE DRIVE. The memory 1506 has stored therein executable program code that the processor 1504 executes to implement the aforementioned application management methods. Specifically, the memory 1506 has stored thereon instructions for the application management system 10 to execute the application management method.
The communication interface 1503 enables communication between the computing device 1500 and other devices or communication networks using transceiver modules such as, but not limited to, network interface cards, transceivers, and the like.
The embodiment of the application also provides a computing device cluster. The cluster of computing devices includes at least one computing device. The computing device may be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device may also be a terminal device such as a desktop, notebook, or smart phone.
As shown in fig. 16, the cluster of computing devices includes at least one computing device 1500. The memory 1506 in one or more computing devices 1500 in the cluster of computing devices may have stored therein instructions for executing the application management method for the same application management system 10.
In some possible implementations, one or more computing devices 1500 in the cluster of computing devices may also be used to execute portions of the instructions of the application management system for performing the application management method. In other words, a combination of one or more computing devices 1500 may collectively execute instructions of the application management system 10 for performing the application management method.
It should be noted that the memory 1506 of different computing devices 1500 in the computing device cluster may store different instructions for performing part of the functions of the application management system 10.
Fig. 17 shows one possible implementation. As shown in fig. 17, two computing devices 1500A and 1500B are connected by a communication interface 1508. Instructions for performing the functions of the interactive module 100 are stored on memory in the computing device 1500A. Instructions for performing the functions of the map generation module 200 are stored on a memory in the computing device 1500B. Further, the memory in computing device 1500A has instructions stored thereon for performing the functions of code generation module 300, and the memory in computing device 1500B has instructions stored thereon for performing the functions of deployment module 400. In other words, the memories 1506 of the computing devices 1500A and 1500B collectively store instructions for the application management system 10 to perform the application management methods.
The connection manner between clusters of computing devices shown in fig. 17 may be to construct a map in consideration of a certain amount of effort required in the application management method provided by the present application. Accordingly, it is contemplated that the functionality implemented by the atlas generation module 200 may be performed by the computing device 1500B.
It should be appreciated that the functionality of computing device 1500A shown in fig. 17 may also be performed by multiple computing devices 1500. Likewise, the functionality of computing device 1500B may also be performed by multiple computing devices 1500.
In some possible implementations, one or more computing devices in a cluster of computing devices may be connected through a network. Wherein the network may be a wide area network or a local area network, etc. Fig. 18 shows one possible implementation. As shown in fig. 18, two computing devices 1500C and 1500D are connected by a network. Specifically, the connection to the network is made through a communication interface in each computing device. In this type of possible implementation, instructions to perform the functions of the interactive module 100 are stored in a memory 1506 in the computing device 1500C. Meanwhile, the memory 1506 in the computing device 1500D has instructions stored therein that perform the functions of the map generation module 200. Further, the memory in computing device 1500C has instructions stored thereon for performing the functions of code generation module 300, and computing device 1500D has instructions stored thereon for performing the functions of deployment module 400.
The manner of connection between clusters of computing devices shown in fig. 18 may be to construct a spectrum in consideration of the application management method provided by the present application, so that the functions implemented by the spectrum generation module 200 are considered to be performed by the computing device 1500D.
It should be appreciated that the functionality of computing device 1500C shown in fig. 18 may also be performed by multiple computing devices 1500. Likewise, the functionality of computing device 1500D may also be performed by multiple computing devices 1500.
The embodiment of the application also provides a computer readable storage medium. The computer readable storage medium may be any available medium that can be stored by a computing device or a data storage device such as a data center containing one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk), etc. The computer readable storage medium includes instructions that instruct a computing device to execute the above-described application to the application management system 10 for performing the application management method.
Embodiments of the present application also provide a computer program product comprising instructions. The computer program product may be software or a program product containing instructions capable of running on a computing device or stored in any useful medium. The computer program product, when run on at least one computing device, causes the at least one computing device to perform the application management method described above.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present invention, and are not limiting; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; these modifications or substitutions do not depart from the essence of the corresponding technical solutions from the protection scope of the technical solutions of the embodiments of the present invention.

Claims (21)

1. An application management method, performed by an application management system, the method comprising:
Receiving association information of at least one data entity configured by a user, wherein the association information of the data entity comprises at least one of a function of a business object corresponding to the data entity or a service Application Programming Interface (API) and an attribute of the data entity;
Receiving association information of at least one relation entity configured by a user, wherein the association information of the relation entity comprises at least one of a function or a service API of a business object relation corresponding to the relation entity and an attribute of the relation entity;
and generating a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity, wherein the metadata model map is used for assisting in generating codes of the application.
2. The method according to claim 1, wherein the method further comprises:
And presenting the metadata model map to the user, wherein nodes in the metadata model map are used for representing functions or service APIs of the data entities and business objects corresponding to the data entities, and edges in the metadata model map are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
3. The method according to claim 2, wherein the method further comprises:
Responding to the triggering operation of the user to the nodes in the metadata model map, and presenting the functions or service APIs of the business objects corresponding to the data entities to the user.
4. The method according to claim 2, wherein the method further comprises:
And responding to the triggering operation of the user on the edges in the metadata model map, and presenting the relation among the data entities, the relation between the data entities and the functions or the relation between the data entities and the service API to the user.
5. The method according to any one of claims 1 to 4, further comprising:
Determining a function selected by the user when creating the data entity or the relationship entity;
the generating the metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity comprises the following steps:
And generating a metadata model map of the application according to the association information of the at least one data entity, the association information of the at least one relation entity and the function selected by the user when the data entity or the relation entity is created.
6. The method according to any one of claims 1 to 5, further comprising:
obtaining grammar trees and notes of the application according to the metadata model map of the application;
And generating codes of the application according to the grammar tree and the annotation.
7. The method of claim 6, wherein the generating code for the application from the syntax tree and the annotations comprises:
generating a physical table, a field index and a data relation of the data layer of the application according to the physical table definition in the grammar tree and the annotation of the data layer of the application;
generating entity class, data interface realization and field definition of the logic layer of the application according to the data entity, association relation, physical table definition and annotation of the logic layer of the application in the grammar tree;
and generating a basic page, a data operation API and a data transmission object DTO of the presentation layer of the application according to the data entity, the association relation, the service API and the annotation of the presentation layer of the application in the grammar tree.
8. The method of claim 7, wherein the method further comprises:
and assembling and generating a service layer of the application according to the data operation API of the presentation layer.
9. The method according to any one of claims 6 to 8, further comprising:
Determining resources required for deploying the application according to the function or service API;
and assembling resources required by the application according to the metadata model atlas and the standard application template, and deploying codes of the application on the resources.
10. An application management system, the system comprising:
The interaction module is used for receiving the associated information of at least one data entity configured by a user, wherein the associated information of the data entity comprises at least one of a function of a business object corresponding to the data entity or a service Application Programming Interface (API) and an attribute of the data entity;
The interaction module is further configured to receive association information of at least one relationship entity configured by the user, where the association information of the relationship entity includes at least one of a function or a service API of a business object relationship corresponding to the relationship entity and an attribute of the relationship entity;
and the map generation module is used for generating a metadata model map of the application according to the association information of the at least one data entity and the association information of the at least one relation entity, and the metadata model map is used for assisting in generating codes of the application.
11. The system of claim 10, wherein the interaction module is further configured to:
And presenting the metadata model map to the user, wherein nodes in the metadata model map are used for representing functions or service APIs of the data entities and business objects corresponding to the data entities, and edges in the metadata model map are used for representing relations among the data entities, relations between the data entities and the functions or relations between the data entities and the service APIs.
12. The system of claim 11, wherein the interaction module is further configured to:
Responding to the triggering operation of the user to the nodes in the metadata model map, and presenting the functions or service APIs of the business objects corresponding to the data entities to the user.
13. The system of claim 11, wherein the interaction module is further configured to:
And responding to the triggering operation of the user on the edges in the metadata model map, and presenting the relation among the data entities, the relation between the data entities and the functions or the relation between the data entities and the service API to the user.
14. The system of any one of claims 10 to 13, wherein the interaction module is further configured to:
Determining a function selected by the user when creating the data entity or the relationship entity;
the map generation module is specifically used for:
And generating a metadata model map of the application according to the association information of the at least one data entity, the association information of the at least one relation entity and the function selected by the user when the data entity or the relation entity is created.
15. The system according to any one of claims 10 to 14, wherein the system further comprises:
And the code generation module is used for obtaining the grammar tree and the annotation of the application according to the metadata model map of the application and generating the code of the application according to the grammar tree and the annotation.
16. The system of claim 15, wherein the code generation module is specifically configured to:
generating a physical table, a field index and a data relation of the data layer of the application according to the physical table definition in the grammar tree and the annotation of the data layer of the application;
generating entity class, data interface realization and field definition of the logic layer of the application according to the data entity, association relation, physical table definition and annotation of the logic layer of the application in the grammar tree;
and generating a basic page, a data operation API and a data transmission object DTO of the presentation layer of the application according to the data entity, the association relation, the service API and the annotation of the presentation layer of the application in the grammar tree.
17. The system of claim 16, wherein the code generation module is further configured to:
and assembling and generating a service layer of the application according to the data operation API of the presentation layer.
18. The system according to any one of claims 15 to 17, wherein the system further comprises:
And the deployment module is used for determining resources required by deploying the application according to the function or service API, assembling the resources required by the application according to the metadata model map and the standard application template, and deploying codes of the application at the resources.
19. A cluster of computing devices, the cluster of computing devices comprising at least one computing device, the at least one computing device comprising at least one processor and at least one memory, the at least one memory having computer-readable instructions stored therein; the at least one processor executing the computer-readable instructions to cause the cluster of computing devices to perform the method of any one of claims 1 to 9.
20. A computer-readable storage medium comprising computer-readable instructions; the computer readable instructions are for implementing the method of any one of claims 1 to 9.
21. A computer program product comprising computer readable instructions; the computer readable instructions are for implementing the method of any one of claims 1 to 9.
CN202211515237.4A 2022-11-30 2022-11-30 Application management method and related equipment Pending CN118151891A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211515237.4A CN118151891A (en) 2022-11-30 2022-11-30 Application management method and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211515237.4A CN118151891A (en) 2022-11-30 2022-11-30 Application management method and related equipment

Publications (1)

Publication Number Publication Date
CN118151891A true CN118151891A (en) 2024-06-07

Family

ID=91283855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211515237.4A Pending CN118151891A (en) 2022-11-30 2022-11-30 Application management method and related equipment

Country Status (1)

Country Link
CN (1) CN118151891A (en)

Similar Documents

Publication Publication Date Title
US9870202B2 (en) Business object model layer interface
US8694557B2 (en) Extensibility of metaobjects
US8712965B2 (en) Dynamic report mapping apparatus to physical data source when creating report definitions for information technology service management reporting for peruse of report definition transparency and reuse
US8805970B2 (en) Automatic management of configuration parameters and parameter management engine
US8819672B2 (en) Multi-image migration system and method
US8392896B2 (en) Software test bed generation
US20140040295A1 (en) Uniform Data Model and API for Representation and Processing of Semantic Data
US9251222B2 (en) Abstracted dynamic report definition generation for use within information technology infrastructure
US20150100946A1 (en) Using mock data to validate applications
CN112966004B (en) Data query method, device, electronic equipment and computer readable medium
CN105144088A (en) Association of metadata with source code and applications and services premised thereon
US10445675B2 (en) Confirming enforcement of business rules specified in a data access tier of a multi-tier application
CN112860260B (en) Web-based cross-platform application construction tool and method in college scene
US20230026911A1 (en) Describing changes in a workflow based on changes in structured documents containing workflow metadata
JPWO2017033441A1 (en) System construction support system, method, and storage medium
US20170371631A1 (en) Globalization template manager for automated globalization enablement on development operations
US20230086854A1 (en) Dynamically controlling case model structure using case fragments
US20120060141A1 (en) Integrated environment for software design and implementation
CN111104103A (en) Visualization method and system for software editing microservice
CN117193802A (en) Merge space providing access to multiple instances of application content
US8121882B2 (en) Standard process and resource reference and instance
CN111008011A (en) System builder for power platform application development
US11693652B2 (en) Automated authoring of software solutions from a data model
US20220413843A1 (en) Combining model-driven applications and canvas-type applications with application lifecycle management
CN118151891A (en) Application management method and related equipment

Legal Events

Date Code Title Description
PB01 Publication