Project delivery method and system, electronic equipment, medium and product

By automatically receiving user input, matching template configuration, automating the environment and resource configuration, and publishing projects in accordance with standardized processes, the maintenance and delivery problems caused by differences in the company's internal application architecture model are solved, and efficient, standardized and consistent project delivery is achieved.

CN120146802APending Publication Date: 2025-06-13SHANGHAI SHANGCHENG CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510287606.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-12
Publication Date
2025-06-13

AI Technical Summary

Technical Problem

There are a large number of applications with different architectures, construction, deployment and delivery models within the company, which makes maintenance difficult, compatibility problems many, and lacks unified automated management, which poses delivery risks.

Method used

Provide a project delivery method, which automatically creates projects by receiving project information input by users, matches templates for configuration, automatically configures environment and resources, and publishes projects in accordance with standardized processes to achieve efficient, standardized and consistent project delivery.

Benefits of technology

It improves project creation and release efficiency, reduces human errors, ensures consistency in project configuration and release, enhances system flexibility and scalability, optimizes resource allocation, and improves project delivery quality and overall efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120146802A_ABST
    Figure CN120146802A_ABST
Patent Text Reader

Abstract

The invention provides a project delivery method and system, electronic equipment, a medium and a product, and relates to the technical field of software development. The method comprises the steps of receiving project information input by a user, creating a new project in a database, determining a target project template corresponding to a type from a project template library based on the type, configuring the new project based on the template, and responding to the fact that the new project is created, and configuring environments and resources for the new project according to the project information, and in response to the received publishing request information of the user, publishing the configured new project based on the standardized production publishing process. According to the scheme, the project creation and release efficiency is improved, meanwhile, human errors are reduced, the consistency of project configuration and release is ensured through the template library and the standardized process, the flexibility and expandability of the system are enhanced, diversified project requirements are met, the user experience is optimized, resource configuration is optimized, and finally the project delivery quality is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of software development, and particularly to a project delivery method, system, electronic device, medium and product. Background Art

[0002] With the development of enterprises, a large number of R & D applications may be accumulated within the company, with multiple development processes and modes. The architecture, construction, deployment, and delivery modes of hundreds of applications vary greatly and are scattered in different teams, and the secondary maintenance of some applications is difficult. If configuration management and automated deployment tools widely used in the field of automated operation and maintenance on the market are introduced, such as automated operation and maintenance tools Ansible, Chef, Puppet, and SaltStack, compatibility problems will be faced, and it is difficult to adapt to most old applications. Ensuring compatibility in the secondary development of applications will bring maintenance costs and production risks. At the same time, there is a lack of effective unified management in the delivery process of a large number of different applications, resulting in delivery risks. Therefore, there is a need for a software system and its usage method that takes continuous delivery as the core, is driven by project management, unifies the entire link of requirements, design, delivery, and operation and maintenance for automated management, supports multi-environment deployment (including virtual machine and container deployment), and can be adapted without secondary development of applications. Summary of the Invention

[0003] The technical problem to be solved by the present disclosure is to overcome the defects in the prior art that there are differences in the architecture modes, construction modes, deployment modes, and delivery modes of a large number of applications within the company, and the applications are scattered in different teams and difficult to maintain, and to provide a project delivery method, system, electronic device, medium and product.

[0004] The present disclosure solves the above technical problem through the following technical solutions:

[0005] The present disclosure provides a project delivery method, and the project delivery method includes:

[0006] Receiving project information input by a user and creating a new project in a database, where the project information includes project type, project requirements, and project configuration;

[0007] Determining a target project template corresponding to the project type from a project template library based on the project type, and configuring the new project based on the target project template;

[0008] In response to detecting that the new project has been created, configuring an environment and resources matching the new project according to the project information;

[0009] In response to receiving a release request message from the user, releasing the configured new project based on a standardized production release process.

[0010] In this solution, by automatically receiving user input and creating a project, automatically matching templates for configuration based on the project type, automatically configuring the environment and resources, and releasing the project according to a standardized process, the efficiency, standardization, and consistency of project delivery are achieved. While improving the efficiency of project creation and release, it reduces human errors, ensures the consistency of project configuration and release through a template library and standardized process, enhances the flexibility and scalability of the system, adapts to diverse project requirements, optimizes the user experience, simplifies the operation process, reduces resource waste, optimizes resource allocation, ultimately improves the quality of project delivery, reduces costs, and enhances the overall efficiency.

[0011] Optionally, before the step of releasing the configured new project based on a standardized production release process in response to receiving the user's release request information, the project delivery method further includes:

[0012] Based on an integrated deployment tool, automatically trigger a build and deployment process according to the project configuration to achieve the automated deployment of the new project.

[0013] In this solution, by automatically triggering a build and deployment process based on an integrated deployment tool before the release request, the automated deployment of the new project is achieved, significantly improving the deployment efficiency and consistency. This automated process reduces manual operations, reduces the risk of human errors, and can quickly respond to release requirements, shortening the cycle from project configuration to going live. In addition, automated deployment ensures the repeatability and standardization of the deployment process, improves the release quality, and ultimately provides users with an efficient, reliable, and traceable project delivery service.

[0014] Optionally, before the step of configuring the new project based on the target project template, the project delivery method further includes:

[0015] In response to receiving the project revision information of the user, adjust the target project template based on the project revision information to form a new target project template.

[0016] In this solution, users can adjust the target project template, significantly enhancing the flexibility and adaptability of project configuration. Users can customize and modify the template according to specific project requirements to ensure that the project configuration is more in line with the actual scenario, reducing the workload of subsequent adjustments. At the same time, this dynamic adjustment mechanism can better meet diverse project requirements, improve the efficiency and accuracy of project delivery, and ultimately provide users with a more personalized and efficient project configuration service.

[0017] Optionally, the step of, in response to detecting that the new project has been created, configuring the environment and resources matching the new project according to the project information includes:

[0018] in response to detecting that the new project has been created;

[0019] automatically create a development environment, a test environment, and a production environment that match the new project according to the project requirements and the project configuration;

[0020] automatically allocate resources that match the project requirements based on the project requirements.

[0021] In this solution, after a new project is created, by automatically creating matching development, test, and production environments according to project requirements and configurations, and automatically allocating required resources, the efficiency and accuracy of environment setup and resource configuration are significantly improved. This automated process reduces manual intervention, lowers the error rate, and at the same time ensures the consistency of the environment and resources, can quickly respond to project requirements, and shortens the time for project startup and delivery. In addition, the automated resource configuration optimizes resource utilization, avoids resource waste, and ultimately provides users with efficient, reliable, and cost-optimized project delivery services.

[0022] Optionally, after the step of, in response to receiving project revision information from the user, adjusting the target project template based on the project revision information to form a new target project template, the project delivery method further includes:

[0023] add the new target project template to the project template library.

[0024] In this solution, by adding the new target project template revised by the user to the project template library, continuous optimization and sharing of the template are achieved. Users can adjust the template according to actual needs and upload and share the optimized template to promote team collaboration and knowledge accumulation. At the same time, with the development of technology and the accumulation of practical experience, the project template library can be automatically updated and optimized to provide users with more efficient and advanced template options. This not only improves the flexibility and adaptability of project configuration, but also reduces repetitive labor, improves the efficiency and quality of project delivery, and ultimately provides users with a better service experience.

[0025] Optionally, after the step of, in response to receiving a release request message from the user, releasing the configured new project based on a standardized production release process, the project delivery method further includes:

[0026] generate a document for the release of the new project, where the document includes at least one of detailed configuration information at the time of project release, project release version, and project release content;

[0027] and / or,

[0028] Record the production release history, where the release history includes at least one of the time of project release, the project release person, the release request information, and the project release result.

[0029] In this solution, by automatically generating a document containing detailed configuration information, release version, and release content after project release, the transparency and traceability of the release process are ensured. This automated document generation mechanism reduces the workload of manual recording, reduces the risk of information omission or error, and provides a complete reference basis for subsequent operation and maintenance, auditing, and problem troubleshooting.

[0030] The present disclosure also provides a project delivery system, which includes: a project management module, a template management module, an environment resource configuration module, and a production delivery module;

[0031] The project management module is used to receive the project information input by the user and create a new project in the database. The project information includes project type, project requirements, and project configuration;

[0032] The template management module is used to determine the target project template corresponding to the project type from the project template library based on the project type, and configure the new project based on the target project template;

[0033] The environment resource configuration module is used to, in response to detecting that the new project has been created, configure the environment and resources that match the new project according to the project information;

[0034] The production delivery module is used to, in response to receiving the release request information of the user, release the configured new project based on the standardized production release process.

[0035] Optionally, the project delivery system further includes: an automated deployment module;

[0036] The automated deployment module is used to, based on the integrated deployment tool, automatically trigger the build and deployment process according to the project configuration to achieve the automated deployment of the new project.

[0037] Optionally, the project delivery system further includes: a template adjustment module;

[0038] The template adjustment module is used to, in response to receiving the project revision information of the user, adjust the target project template based on the project revision information to form a new target project template.

[0039] Optionally, the environment resource configuration module includes a detection unit, an environment configuration unit, and a resource configuration unit;

[0040] The detection unit is used to, in response to detecting that the new project has been created;

[0041] The environment configuration unit is used to automatically create a development environment, a test environment, and a production environment that match the new project according to the project requirements and the project configuration;

[0042] The resource configuration unit is used to automatically allocate resources that match the project requirements based on the project requirements.

[0043] Optionally, the project delivery system further includes: a template library update module;

[0044] The template library update module is used to add the new target project template to the project template library.

[0045] Optionally, the project delivery system further includes: a release document generation module and / or a release history module;

[0046] The release document generation module is used to generate a document for the release of the new project, and the document includes at least one of detailed configuration information at the time of project release, project release version, and project release content;

[0047] The release history module is used to record the production release history, and the release history includes at least one of the time of project release, the project release person, the release request information, and the project release result.

[0048] The present disclosure also provides an electronic device, including a memory, a processor, and a computer program stored on the memory and used to run on the processor. When the processor executes the computer program, the project delivery method as described above is implemented.

[0049] The present disclosure also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the project delivery method as described above is implemented.

[0050] The present disclosure also provides a computer program product, including a computer program. When the computer program is executed by a processor, the project delivery method as described above is implemented.

[0051] On the basis of conforming to the common knowledge in the art, the above preferred conditions can be combined arbitrarily to obtain various preferred examples of the present disclosure.

[0052] The positive and progressive effects of the present disclosure are as follows:

[0053] By automatically receiving user input and creating projects, automatically matching templates for configuration based on project types, automatically configuring environments and resources, and publishing projects according to standardized processes, the efficiency, standardization, and consistency of project delivery are achieved. While improving the efficiency of project creation and release, it reduces human errors, ensures the consistency of project configuration and release through the template library and standardized processes, enhances the flexibility and scalability of the system, adapts to diverse project requirements, optimizes the user experience, simplifies the operation process, reduces resource waste, optimizes resource allocation, and ultimately improves the quality of project delivery, reduces costs, and enhances overall efficiency. Brief Description of the Drawings

[0054] Figure 1 It is a flowchart showing a project delivery method provided in Embodiment 1 of the present disclosure;

[0055] Figure 2 It is a schematic diagram of each module platform required for a project delivery method provided in Embodiment 1 of the present disclosure;

[0056] Figure 3 It is a schematic diagram showing a typical CI / CD (Continuous Integration / Continuous Delivery) workflow provided in Embodiment 1 of the present disclosure;

[0057] Figure 4 It is a schematic diagram of the modules of a project delivery system provided in Embodiment 2 of the present disclosure;

[0058] Figure 5 It is a schematic diagram of the structure of an electronic device provided in Embodiment 3 of the present disclosure. Detailed Embodiments

[0059] Next, the technical solutions in the embodiments of the present disclosure will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only a part of the embodiments of the present disclosure, rather than all the embodiments. Based on the embodiments of the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present disclosure.

[0060] It should be noted that if there are directional indications (such as up, down, left, right, front, back,...) involved in this embodiment, the directional indications are only used to explain the relative positional relationship and movement conditions between components in a specific posture. If the specific posture changes, the directional indications will also change accordingly.

[0061] In addition, if the descriptions such as "first" and "second" are involved in this embodiment, the descriptions of "first", "second", etc. are only for descriptive purposes and should not be construed as indicating or implying their relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions between various embodiments may be combined with each other, but it must be based on the ability of those of ordinary skill in the art to implement. When the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection required by this disclosure.

[0062] In the embodiments of the present disclosure, the processing of the collection, storage, use, processing, transmission, provision, and disclosure of the user's personal information complies with the provisions of relevant laws and regulations and does not violate public order and good customs.

[0063] Embodiment 1

[0064] Please refer to Figure 1 , this embodiment provides a project delivery method. Figure 1 As shown in the flowchart of a project delivery method provided in Embodiment 1 of the present disclosure, this specification provides the method operation steps such as in the embodiment or the flowchart, but based on routine or non-creative labor, more or fewer operation steps may be included. The step order listed in the embodiment is only one way among the execution orders of numerous steps and does not represent the only execution order. When the actual system or server product executes, it may be executed in the order shown in the embodiment or the drawing or executed in parallel (for example, in an environment of parallel processors or multi-threaded processing). Specifically, as Figure 1 shown, the project delivery method includes:

[0065] S101: Receive the project information input by the user and create a new project in the database. The project information includes project type, project requirements, and project configuration;

[0066] S102: Determine the target project template corresponding to the project type from the project template library based on the project type, and configure the new project based on the target project template;

[0067] S103: In response to detecting that the new project has been created, configure the environment and resources matching the new project according to the project information;

[0068] S104: In response to receiving the release request information of the user, release the configured new project based on the standardized production release process.

[0069] In this solution, by automatically receiving user input and creating a project, automatically matching templates for configuration based on the project type, automatically configuring the environment and resources, and releasing the project according to a standardized process, the efficiency, standardization, and consistency of project delivery are achieved. While improving the efficiency of project creation and release, human errors are reduced, and the consistency of project configuration and release is ensured through the template library and standardized process, enhancing the flexibility and scalability of the system, adapting to diverse project requirements, optimizing the user experience, simplifying the operation process, reducing resource waste, optimizing resource allocation, ultimately improving the quality of project delivery, reducing costs, and enhancing the overall efficiency.

[0070] In this embodiment, when the project information input by the user is received, a new project can be created in the database, which is used for project management and can store project information and the task information corresponding to the project information. The project information includes project type, project requirements, and project configuration. The project type can include platform as a service (PAAS) application service type, tomcat service type, platform as a service (PAAS) application batch type, and other application types. There are templates corresponding to different project types in the project template library. After obtaining the project type in the project information input by the user, the target project template corresponding to the project type is determined from the project template library based on the project type. The user can modify and adjust the target project template according to the actual situation to meet personalized project requirements. For example, the task allocation method in the target project template and the code review node in the development process in the target project template can be adjusted. The project template library also includes project management templates, development process templates, test templates, etc. The user can quickly select a suitable template for configuration according to different project requirements, greatly improving the speed of project startup.

[0071] In this embodiment, before the step of configuring the new project based on the target project template, the project delivery method further includes: in response to receiving the project revision information of the user, adjusting the target project template based on the project revision information to form a new target project template. Specifically, if the target project template matched based on the project type does not meet the user's expectations, then before configuring the new project based on the target project template, the user is allowed to adjust the target project template according to the actual needs and form a new template. This method significantly improves the flexibility and adaptability of project configuration. The user can customize and modify the template according to specific project requirements to ensure that the project configuration is more in line with the actual scenario, reducing the workload of subsequent adjustments. At the same time, this dynamic adjustment mechanism can better meet diverse project requirements, improve the efficiency and accuracy of project delivery, and ultimately provide a more personalized and efficient project configuration service for users.

[0072] In this embodiment, after the step of adjusting the target project template based on the project revision information in response to receiving the project revision information of the user to form a new target project template, the project delivery method further includes: adding the new target project template to the project template library. By adding the new target project template revised by the user to the project template library, the continuous optimization and sharing of the template are realized. Users can adjust the template according to actual needs, upload and share the optimized template, which promotes team collaboration and knowledge accumulation. At the same time, with the development of technology and the accumulation of practical experience, the project template library can be automatically updated and optimized, providing users with more efficient and advanced template selection. This not only improves the flexibility and adaptability of project configuration, but also reduces repetitive labor, improves the efficiency and quality of project delivery, and ultimately provides users with a better service experience.

[0073] In this embodiment, the step of configuring the environment and resources matching the new project according to the project information in response to detecting that a new project has been created includes: responding to detecting that a new project has been created; automatically creating a development environment, a test environment, and a production environment matching the new project according to the project requirements and project configuration; and automatically allocating resources matching the project requirements based on the project requirements. By automatically creating matching development, test, and production environments according to the project requirements and configuration after the new project is created, and automatically allocating the required resources, the efficiency and accuracy of environment setup and resource configuration are significantly improved. This automated process reduces manual intervention, reduces error rates, and at the same time ensures the consistency of the environment and resources, can quickly respond to project requirements, and shortens the time for project startup and delivery. In addition, the automated resource configuration optimizes resource utilization, avoids resource waste, and ultimately provides users with an efficient, reliable, and cost-optimized project delivery service.

[0074] Specifically, when it is detected that a new project has been created, the environment management platform can automatically create a development environment, a test environment, and a production environment matching the new project according to the project requirements and project configuration input by the user before, and automatically allocate resources matching the project requirements based on the project requirements. The environment management platform is a database for environment management, storing environment information and configuration information. It is a platform that integrates all environment resources and manages configurations uniformly. It can manage different environments, such as development environments, test environments, production environments, etc. In another possible embodiment, the user can also manually create an environment corresponding to the new project based on the environment management platform and set the configuration information of the environment, such as server address, database connection information, etc. The environment management platform includes a development environment management interface, which can facilitate users to create, configure, and maintain the environment, and can also implement functions such as environment switching and synchronization based on user selection.

[0075] Furthermore, a resource allocation platform can be utilized to automatically allocate resources that match the project requirements based on the project needs. The resource allocation platform is used to standardize resource allocation, accommodate resource allocations of different software systems, and facilitate software systems. The resource allocation platform can be integrated with other commonly used development tools and project management platforms, such as the version control tool Git, the continuous integration tool Jenkins, the project management tool JIRA, etc., to achieve resource sharing and seamless process connection. The resource allocation platform can monitor various resources required for new projects, such as server resources, database resources, storage resources, etc., and can also develop resource allocation and optimization algorithms to improve resource utilization. It can also implement resource alarm and adjustment functions.

[0076] In this embodiment, before the step of releasing the configured new project based on the standardized production release process in response to receiving the user's release request information, the project delivery method further includes: triggering the build and deployment process automatically according to the project configuration based on the integrated deployment tool to achieve the automated deployment of the new project. By automatically triggering the build and deployment process based on the integrated deployment tool before the release request, the automated deployment of the new project is achieved, significantly improving the deployment efficiency and consistency. This automated process reduces manual operations, lowers the risk of human errors, and can quickly respond to release requirements, shortening the cycle from project configuration to going live. In addition, the automated deployment ensures the repeatability and standardization of the deployment process, improves the release quality, and ultimately provides users with an efficient, reliable, and traceable project delivery service.

[0077] Specifically, the above-mentioned automated deployment process is implemented based on an automated deployment platform, which realizes the automated building, testing, and deployment of code by integrating continuous integration and continuous deployment tools. The automated deployment platform integrates continuous integration and continuous delivery (CI / CD) tools such as Jenkins and continuous integration and continuous delivery (CI / CD) tools such as GitLab CI / CD. It can also realize the writing of automated scripts, develop deployment scripts, and implement the automated deployment process. It supports automated deployment in multiple environments such as development, testing, and production, and supports the configuration and management of multiple deployment methods.

[0078] Furthermore, the automated deployment process can further include a containerized deployment management process, which realizes the containerized construction, storage, deployment, and management of applications by integrating container technologies such as the containerization platform Docker and the container orchestration tool Kubernetes. Container automated deployment inherits the containerization platform Docker and the container orchestration tool Kubernetes for image construction, storage, pulling, and pushing. Integrating containerized deployment into the CI / CD process ensures that each code commit can automatically build and deploy containerized applications. Among them, CI is used for automated code construction, testing, and deployment, including functions such as code compilation, unit testing, integration testing, and deployment. CD is used for automated deployment of code to different environments, including functions such as development environment, test environment, and production environment.

[0079] In this embodiment, after completing various configurations for a new project, in response to receiving the user's release request information, the configured new project is released based on the standardized production release process. Specifically, the release operation is implemented based on the production delivery platform, which is used to standardize the production release process and conduct release audits; automatically generate production release documents and record the production release history. The production delivery platform has established a quality inspection mechanism to ensure the quality of software products. It can also control the design version, manage the release process, and support releases through different channels. The production delivery platform can also implement monitoring and feedback functions after release. Among them, the release request information can include some information submitted by the user, such as compliance documents, release manuals, and passed test cases. Only when this information is submitted can the new project be released.

[0080] In this embodiment, after the step of releasing the configured new project based on the standardized production release process in response to receiving the user's release request information, the project delivery method further includes: generating a document for the new project release, where the document includes at least one of the detailed configuration information, project release version, and project release content at the time of project release. By automatically generating a document containing detailed configuration information, release version, and release content after project release, the transparency and traceability of the release process are ensured. This automated document generation mechanism reduces the workload of manual recording, reduces the risk of information omission or error, and provides a complete reference basis for subsequent operation and maintenance, auditing, and problem troubleshooting. Furthermore, the production release history can also be recorded, and the release history includes at least one of the project release time, project release person, release request information, and project release result.

[0081] The above process will be described in full below. Figure 2 It is a schematic diagram of each module platform required for a project delivery method provided in Embodiment 1 of the present disclosure, as Figure 2As shown, the platforms in this schematic diagram cooperate with each other, aiming to achieve the automation of construction and deployment, the standardization of configuration management, the controllability of environment management, and the standardization of the delivery process. The following is a detailed description of the content in the figure:

[0082] 1. Automation of Construction and Deployment

[0083] Standardization of Outputs: Ensure that the outputs generated during the construction process (such as binary files, Docker images, etc.) meet unified standards, facilitating subsequent deployment and management. Specification of Startup Scripts: Standardize the startup scripts of applications to ensure that applications can be started in a consistent manner in different environments. Project Templatization (Scaffolding): Quickly generate project structures through project templates (scaffolding) to reduce repetitive labor and improve development efficiency. Containerized Deployment: Use container technologies (such as Docker) for deployment to ensure the consistency of applications in different environments and simplify the deployment process.

[0084] 2. Standardization of Configuration Management

[0085] Specification of Resource Configuration: Unify the standards for resource configuration to ensure that the allocation and use of resources (such as servers, databases, etc.) comply with specifications. Compatibility with Naming and Configuration Services Nacos and Configuration Center Config / Apollo Configuration Center Apollo: Support multiple configuration centers (such as Nacos, Apollo, etc.) to ensure the flexibility and compatibility of configuration management. Unified Management Tools: Use unified tools for configuration management to reduce the complexity of configuration management and improve efficiency.

[0086] 3. Manageability of Environments

[0087] Standards for Environment Management: Develop standard processes for environment management to ensure the consistency of development, testing, production, and other environments. Service Discovery: Provide a service discovery mechanism to ensure that services can be correctly discovered and called in different environments. Environment Management Tools: Use unified environment management tools to simplify the processes of creating, maintaining, and destroying environments.

[0088] 4. Standardization of Delivery

[0089] Program Delivery: Standardize the program delivery process to ensure that the delivered programs meet quality requirements. Configuration Changes: Standardize the configuration change process to ensure the controllability and traceability of configuration changes. Database Changes: Standardize the database change process to ensure the security and consistency of database changes. Special Operations: Develop standard processes for special operations (such as data migration, emergency repairs, etc.) to ensure the standardization and security of operations.

[0090] 5. Function Modules Supported by the Efficiency Platform

[0091] Project Management Module: Provides project management functions, including project creation, task assignment, progress tracking, etc. Template Management Module: Manages project templates, supports the creation, modification, and use of templates. Environment Management Module: Provides environment management functions, including environment creation, configuration, and maintenance. CI / CD Module: Supports continuous integration and continuous delivery, automates the build, test, and deployment processes. Resource Configuration Module: Manages the resources required for projects, including servers, databases, etc. Production Delivery Module: Supports the delivery process in the production environment, ensuring the standardization and security of delivery. Containerized Deployment Module: Supports containerized deployment, simplifies the deployment and management of applications. Through the above modules and functions, the full process automation and standardization of new projects from construction and deployment to delivery can be achieved, improving the efficiency and quality of project delivery.

[0092] Figure 3 As shown in the following figure, it is a schematic diagram of a typical CI / CD (Continuous Integration / Continuous Delivery) workflow provided in Embodiment 1 of the present disclosure. Figure 3 As shown, this figure covers all key steps from development to deployment.

[0093] I. Development Phase (Dev):

[0094] Allocation for Development:

[0095] Project 1: The development team starts code writing and management. A code management tool (such as Git) is used for version control and collaboration.

[0096] Continuous Integration: After developers submit code, a continuous integration tool (such as Jenkins or GitLab CI) automatically triggers the build and test processes to ensure that code integration does not introduce errors.

[0097] Requirements:

[0098] Project 2: According to project requirements, the development team conducts code writing and management. The continuous integration tool is used again for automated build and test to ensure code quality.

[0099] II. Trigger Deployment:

[0100] Build:

[0101] Pull for Deployment: The build tool pulls the latest code from the code repository and compiles and packages it.

[0102] Artifact Repository: The artifacts generated by the build (such as Docker images or archive files like JAR files) are stored in an artifact repository (such as artifact repository management tools like Nexus or Artifactory) for subsequent deployment.

[0103] III. Operations Phase (Ops):

[0104] Application 1:

[0105] Product involved: Obtain the product related to Application 1 from the product library.

[0106] Deployment process: Use an automated deployment tool (such as the automated deployment tool Ansible or the automated deployment tool Kubernetes) to deploy the product to the target environment.

[0107] IV. Deployment stage:

[0108] Cloud:

[0109] Application 2: Deploy Application 2 in the cloud environment.

[0110] Product involved: Obtain the product related to Application 2 from the product library.

[0111] Deployment process: Use the deployment tool of the cloud platform (such as the deployment tool AWS CodeDeploy of the cloud platform or the deployment tool Google Cloud Deployment Manager of the cloud platform) to deploy the product to the cloud environment.

[0112] The entire process demonstrates an automated process from code development to final deployment, ensuring the efficient integration, testing, and deployment of code, and improving the speed and quality of software delivery.

[0113] The platform system corresponding to the entire project delivery method is designed through templating and can adapt to various project types and technical architectures. Whether it is a traditional project or the development of emerging technologies, seamless compatibility can be achieved. Compared with the limitations of some development and operations platforms (DevOps platforms) that are limited to specific technical frameworks, this system demonstrates stronger versatility and flexibility. In terms of scalability, the system adopts a flexible architecture and modular design, facilitating the addition of subsequent functions and the expansion of processes, far superior to the complexity faced by some DevOps platforms during expansion. In terms of configurability, the system provides a rich set of configurable options, allowing users to easily adjust the release process, visualization content, and automated trigger conditions according to their needs. Compared with the relatively fixed configuration mode of some DevOps platforms, it is more flexible and user-friendly. In addition, this system supports containerized release, which can significantly improve release efficiency, resource utilization, and environmental consistency, a function that many DevOps platforms on the market do not have or have not yet perfected. Overall, this system can efficiently complete the one-stop delivery of projects, greatly enhancing the efficiency and overall experience of project delivery.

[0114] Example 2

[0115] Corresponding to the foregoing embodiments of the project delivery method, the present disclosure also provides an embodiment of a project delivery system.

[0116] Figure 4 This is a schematic diagram of the modules of a project delivery system provided in Embodiment 2 of the present disclosure. The system includes: a project management module 1, a template management module 2, an environment resource configuration module 3, and a production delivery module 4;

[0117] The project management module 1 is used to receive project information input by the user and create a new project in the database. The project information includes project type, project requirements, and project configuration;

[0118] The template management module 2 is used to determine a target project template corresponding to the project type from the project template library based on the project type, and configure the new project based on the target project template;

[0119] The environment resource configuration module 3 is used to, in response to detecting that a new project has been created, configure an environment and resources matching the new project according to the project information;

[0120] The production delivery module 4 is used to, in response to receiving the user's release request information, release the configured new project based on the standardized production release process.

[0121] Optionally, the project delivery system further includes: an automated deployment module;

[0122] The automated deployment module is used to, based on the integrated deployment tool, automatically trigger the build and deployment process according to the project configuration to achieve the automated deployment of the new project.

[0123] Optionally, the project delivery system further includes: a template adjustment module;

[0124] The template adjustment module is used to, in response to receiving the user's project revision information, adjust the target project template based on the project revision information to form a new target project template.

[0125] Optionally, the environment resource configuration module includes a detection unit, an environment configuration unit, and a resource configuration unit;

[0126] The detection unit is used to, in response to detecting that a new project has been created;

[0127] The environment configuration unit is used to automatically create a development environment, a test environment, and a production environment matching the new project according to the project requirements and project configuration;

[0128] The resource configuration unit is used to automatically allocate resources matching the project requirements based on the project requirements.

[0129] Optionally, the project delivery system further includes: a template library update module;

[0130] The template library update module is used to add the new target project template to the project template library.

[0131] Optionally, the project delivery system further includes: a release document generation module and / or a release history module;

[0132] The release document generation module is used to generate documents for a new project release, and the documents include at least one of the detailed configuration information at the time of project release, the project release version, and the project release content;

[0133] The release history module is used to record the production release history, and the release history includes at least one of the time of project release, the project release person, the release request information, and the project release result.

[0134] For the system embodiment, since it basically corresponds to the method embodiment, the relevant parts can be referred to the partial description of the method embodiment. The system embodiment described above is only illustrative, and the units described as separate components may or may not be physically separated, and the components as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the present disclosure solution.

[0135] Embodiment 3

[0136] Figure 5 FIG. is a schematic structural diagram of an electronic device provided in Embodiment 3 of the present disclosure. The electronic device includes a memory, a processor, and a computer program stored on the memory and configured to run on the processor. When the processor executes the computer program, it implements the project delivery method described in any of the above embodiments. Figure 5 The displayed electronic device 50 is only an example and should not bring any limitation to the functions and usage scope of the embodiments of the present disclosure.

[0137] As Figure 5 shown, the electronic device 50 may be presented in the form of a general computing device, for example, it may be a server device. The components of the electronic device 50 may include, but are not limited to: at least one of the above processors 51, at least one of the above memories 52, and a bus 53 connecting different system components (including the memory 52 and the processor 51).

[0138] The bus 53 includes a data bus, an address bus, and a control bus.

[0139] The memory 52 may include volatile memory, such as a random access memory (RAM) 521 and / or a cache memory 522, and may further include a read-only memory (ROM) 523.

[0140] The memory 52 may also include a program tool 525 (or utility) having a set (at least one) of program modules 524. Such program modules 524 include, but are not limited to: an operating system, one or more application programs, other program modules, and program data. Each of these examples or some combination thereof may include an implementation of a network environment.

[0141] The processor 51 executes various functional applications and data processing by running computer programs stored in the memory 52, such as the project delivery method provided in any of the above embodiments.

[0142] The electronic device 50 may also communicate with one or more external devices 54 (such as a keyboard, a pointing device, etc.). Such communication may be performed through the input / output (I / O) interface 55. Moreover, the electronic device 50 may also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) through the network adapter 56. As shown in the figure, the network adapter 56 communicates with other modules of the electronic device 50 through the bus 53. It should be understood that although not shown in the figure, other hardware and / or software modules may be used in combination with the electronic device 50, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID (disk array) systems, tape drives, and data backup storage systems, etc.

[0143] It should be noted that although several units / modules or sub-units / modules of the electronic device are mentioned in the above detailed description, such a division is merely exemplary and not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more of the above-described units / modules may be embodied in one unit / module. Conversely, the features and functions of one unit / module described above may be further divided and embodied by multiple units / modules.

[0144] Embodiment 4

[0145] The embodiments of the present disclosure also provide a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the project delivery method provided in any of the above embodiments is implemented.

[0146] Among them, the more specific computer-readable storage medium that can be adopted may include, but is not limited to: a portable disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory, an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0147] Embodiment 5

[0148] An embodiment of the present disclosure also provides a computer program product, including a computer program, where the computer program, when executed by a processor, implements the project delivery method described in any one of the above.

[0149] Among them, the program code for executing the computer program product of the present disclosure can be written in any combination of one or more programming languages. The program code can be executed entirely on the user device, partially on the user device, executed as an independent software package, partially on the user device and partially on a remote device, or entirely on a remote device.

[0150] Although the specific implementation manners of the present disclosure have been described above, those skilled in the art should understand that this is only an example. The protection scope of the present disclosure is defined by the appended claims. Without departing from the principles and essence of the present disclosure, those skilled in the art can make various changes or modifications to these implementation manners, but these changes and modifications all fall within the protection scope of the present disclosure.

Claims

1. A project delivery method, characterized in that: The project delivery methods include: Receive project information input by a user and create a new project in a database, wherein the project information includes project type, project requirements and project configuration; Determining a target project template corresponding to the project type from a project template library based on the project type, and configuring the new project based on the target project template; In response to detecting that the new project has been created, configuring an environment and resources matching the new project according to the project information; In response to receiving the publishing request information from the user, the configured new project is published based on a standardized production and publishing process.

2. The project delivery method according to claim 1, characterized in that: Before the step of publishing the configured new project based on a standardized production release process in response to receiving the release request information from the user, the project delivery method further includes: Based on the integrated deployment tool, the build deployment process is automatically triggered according to the project configuration to achieve automated deployment of the new project.

3. The project delivery method according to claim 1, characterized in that: Before the step of configuring the new project based on the target project template, the project delivery method further includes: In response to receiving the project revision information from the user, the target project template is adjusted based on the project revision information to form a new target project template.

4. The project delivery method according to claim 1, characterized in that: In response to detecting that the new project has been created, the step of configuring an environment and resources matching the new project according to the project information includes: In response to detecting that the new item has been created; Automatically create a development environment, a test environment, and a production environment that match the new project according to the project requirements and the project configuration; Resources matching the project requirements are automatically allocated based on the project requirements.

5. The project delivery method according to claim 3, characterized in that: After the step of adjusting the target project template based on the project revision information to form a new target project template in response to receiving the project revision information from the user, the project delivery method further includes: Add the new target project template to the project template library.

6. The project delivery method according to any one of claims 1 to 5, characterized in that: After the step of publishing the configured new project based on the standardized production and publishing process in response to receiving the publishing request information from the user, the project delivery method further includes: Generate a document for the new project release, the document including at least one of detailed configuration information when the project is released, a project release version, and project release content; and / or, Record the production release history, wherein the release history includes at least one of the time of project release, the project publisher, the release request information, and the project release result.

7. A project delivery system, characterized in that: The project delivery system includes: a project management module, a template management module, an environment resource configuration module and a production delivery module; The project management module is used to receive project information input by the user and create a new project in the database, wherein the project information includes project type, project requirements and project configuration; The template management module is used to determine a target project template corresponding to the project type from a project template library based on the project type, and configure the new project based on the target project template; The environment resource configuration module is used to configure the environment and resources matching the new project according to the project information in response to detecting that the new project has been created; The production delivery module is used to release the configured new project based on a standardized production release process in response to receiving a release request from a user.

8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and used to run on the processor, characterized in that: When the processor executes the computer program, the project delivery method according to any one of claims 1 to 6 is implemented.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the project delivery method according to any one of claims 1 to 6 is implemented.

10. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the project delivery method according to any one of claims 1 to 6 is implemented.