Agile development-oriented online management method and related equipment
Through the online management method for agile development, the automatic creation and merging of online branches is solved, and the complex problems of online management under the traditional development model are improved, efficiency and quality in agile development are supported, and rapid response to user needs is supported.
Patent Information
- Application Number
- CN202411137615.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2025-01-07
AI Technical Summary
The traditional waterfall development model is difficult to respond to changes in user needs in real time. The online management in agile development is complex, especially in the case of multiple code warehouses and multiple services. Creating, reviewing and rebuilding online branch management is difficult, affecting efficiency and quality.
A method of online management for agile development is proposed. By monitoring iteration time, the online branch and development task card are created, the feature branches of the target code project are associated, and the merge request and audit task card is automatically created. After the audit is passed, the branches are merged, and the test is rebuilt after the test is completed. Online branches, support the rapid reconstruction of online branches to deal with changes in demand.
It realizes automation and efficiency of online management in agile development, simplifies the merge request management of multi-code warehouses and multiple services, improves the review efficiency and reliability of online plans, and supports rapid response to user needs changes.
Smart Images

Figure CN119271176A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of software development technology, and in particular to an online management method and related equipment for agile development. Background Art
[0002] With the rapid development of the Internet, user needs are becoming more and more diverse, and the traditional waterfall development model is difficult to respond to changing needs immediately. Agile development has emerged as a result. It focuses on the evolution of user needs and adopts an iterative, continuous and rapid software development model, which has gradually been widely used.
[0003] However, online management is the key to agile development and affects user satisfaction. Therefore, how to reasonably implement the online management process has become a problem that needs to be solved urgently. Summary of the invention
[0004] In view of this, the purpose of this application is to propose an online management method and related equipment for agile development to solve the above technical problems.
[0005] Based on the above objectives, the first aspect of the present application provides an online management method for agile development, including:
[0006] In response to reaching the iteration time of agile development, monitoring the target project entering the current iteration cycle, and creating an online branch corresponding to the target project and a development task card corresponding to the target project;
[0007] In response to the management state of the development task card being updated from a demand-ready state to a developing state, determining a target code project corresponding to the development task card, determining a feature branch of the target code project, and associating the development task card with the feature branch of the target code project;
[0008] In response to the management status of the development task card being updated from the under-development status to the development completed status, creating a merge request, and creating a review task card associated with the development task card;
[0009] Auditing the target code project based on the development task card to obtain an audit result, and updating the management status of the audit task card from an auditing status to an audit completed status according to the audit result;
[0010] In response to the audit result being approved, merging the online branch and the feature branch based on the merge request to obtain a merged branch;
[0011] In response to the management state of the development task card being updated from the development completed state to the testing state, the target code project is tested to obtain a test result, and the management state of the development task card is updated based on the test result;
[0012] In response to the management status of the updated development task card being the test completion status, and when there is a task card that is not processed online, the online branch is rebuilt to obtain a recreated online branch, and the target code project associated with the target development task card corresponding to the recreated online branch is processed online.
[0013] Optionally, determining the target code project corresponding to the development task card includes:
[0014] Obtain a list of code items corresponding to the target item;
[0015] In response to receiving a selection instruction for a target code item in the code item list, the target code item corresponding to the development task card is determined based on the selection instruction.
[0016] Optionally, determining the feature branch of the target code project includes:
[0017] Obtaining the identification code of the development task card;
[0018] A new feature branch of the target code project is created based on the identification code, and the new feature branch of the target code project is used as the feature branch of the target code project.
[0019] Optionally, determining the feature branch of the target code project includes:
[0020] Obtaining multiple historical feature branches corresponding to the target code project;
[0021] In response to receiving an instruction to select a target historical feature branch of the plurality of historical feature branches, the target code project is taken as a feature branch of the target code project.
[0022] Optionally, after merging the online branch and the feature branch based on the merge request and before obtaining the merged branch, the method includes:
[0023] In response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card;
[0024] Adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch;
[0025] Repeat the merging of the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
[0026] Optionally, after updating the management status of the audit task card from the auditing status to the auditing completed status according to the audit result, in response to the audit result being before the audit is passed, the method further includes:
[0027] In response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card;
[0028] Adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project;
[0029] The adjusted target code project is repeatedly reviewed based on the development task card and the merge branch until the review result obtained is that the review is passed.
[0030] Optionally, after testing the target code project and obtaining the test result, in response to the management status of the updated development task card being in the test completion state, the method further includes:
[0031] In response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card;
[0032] Adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project;
[0033] The adjusted target code project is retested until the test result obtained is that the test passes.
[0034] Optionally, the rebuilding of the online branch to obtain the recreated online branch includes:
[0035] In response to receiving a non-online instruction for any development task card whose management status is a test completed status, creating a re-online request, and obtaining all development task cards whose management status is a test completed status;
[0036] In response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction;
[0037] Recreate the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card;
[0038] In response to the management status of the target development task card being updated from the under-development status to the development completed status, creating a merge request, and creating an online review task card associated with the target development task card;
[0039] Based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain an online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result;
[0040] In response to the review completion status being passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
[0041] Based on the same inventive concept, the second aspect of the present application provides an online management device for agile development, including:
[0042] A monitoring module is configured to monitor a target project entering a current iteration cycle in response to reaching an iteration time of agile development, and to create an online branch corresponding to the target project and a development task card corresponding to the target project;
[0043] an association module, configured to determine, in response to the management state of the development task card being updated from a demand-ready state to a developing state, a target code project corresponding to the development task card, determine a feature branch of the target code project, and associate the development task card with the feature branch of the target code project;
[0044] A creation merge module is configured to create a merge request in response to the management status of the development task card being updated from the under-development status to the development completed status, and to create a review task card associated with the development task card and the merge branch respectively;
[0045] An audit module is configured to audit the target code project based on the development task card, obtain an audit result, and update the management status of the audit task card from an auditing status to an audit completed status according to the audit result;
[0046] A merging module is configured to, in response to the audit result being approved, merge the online branch and the feature branch based on the merge request to obtain a merged branch;
[0047] A testing module, configured to test the target code project in response to the management state of the development task card being updated from the development completed state to the testing state, obtain a test result, and update the management state of the development task card based on the test result;
[0048] The online module is configured to respond to the management status of the updated development task card being a test completion status, and when there is a task card that is not processed online, rebuild the online branch to obtain a recreated online branch, and process the target code project associated with the target development task card corresponding to the recreated online branch online.
[0049] Optionally, the association module is specifically configured to:
[0050] Obtain a list of code items corresponding to the target item;
[0051] In response to receiving a selection instruction for a target code item in the code item list, the target code item corresponding to the development task card is determined based on the selection instruction.
[0052] Optionally, the association module is specifically configured to:
[0053] Obtaining the identification code of the development task card;
[0054] A new feature branch of the target code project is created based on the identification code, and the new feature branch of the target code project is used as the feature branch of the target code project.
[0055] Optionally, the association module is specifically configured to:
[0056] Obtaining multiple historical feature branches corresponding to the target code project;
[0057] In response to receiving an instruction to select a target historical feature branch of the plurality of historical feature branches, the target code project is taken as a feature branch of the target code project.
[0058] Optionally, the apparatus further includes a merging and adjusting module, and after merging the online branch and the feature branch based on the merge request and before obtaining the merged branch, the merging and adjusting module is specifically configured to:
[0059] In response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card;
[0060] Adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch;
[0061] Repeat the merging of the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
[0062] Optionally, the device further comprises an audit adjustment module, after updating the management status of the audit task card from the auditing status to the audit completed status according to the audit result, in response to the audit result being before the audit is passed, the audit adjustment module is specifically configured to:
[0063] In response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card;
[0064] Adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project;
[0065] The adjusted target code project is repeatedly reviewed based on the development task card and the merge branch until the review result obtained is that the review is passed.
[0066] Optionally, the device further comprises a test adjustment module, which tests the target code project, and after obtaining the test result, in response to the management status of the updated development task card being before the test completion status, the test adjustment module is specifically configured to:
[0067] In response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card;
[0068] Adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project;
[0069] The adjusted target code project is retested until the test result obtained is that the test passes.
[0070] Optionally, the online module is specifically configured as follows:
[0071] In response to receiving a non-online instruction for any development task card whose management status is a test completed status, creating a re-online request, and obtaining all development task cards whose management status is a test completed status;
[0072] In response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction;
[0073] Recreate the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card;
[0074] In response to the management status of the target development task card being updated from the under-development status to the development completed status, creating a merge request, and creating an online review task card associated with the target development task card;
[0075] Based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain an online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result;
[0076] In response to the review completion status being passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
[0077] Based on the same inventive concept, the third aspect of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable by the processor, wherein the processor implements the method described in the first aspect above when executing the computer program.
[0078] From the above, it can be seen that the online management method and related equipment for agile development provided by the present application, when the iteration time of agile development is reached, creates an online branch and a development task card for the target project entering the current iteration cycle, and when the management status of the development task card is updated to the developing status, associates the development task card with the feature branch of the target code project, and when the management status of the development task card is updated to the development completed status, automatically creates a merge request for the online branch and the feature branch, and automatically creates an audit task card. The auditor views the merged code information through the task to be audited, and merges the online branch and the feature branch after the audit is passed. Then, when the management status of all development task cards in the current iteration cycle becomes the test completed status, the online branch can be used for packaging and online processing. If the online tasks of this round of iteration are deleted, the online branch can be quickly rebuilt according to the feature branches recorded in the task, thereby achieving the effect of reasonably executing the online management process. BRIEF DESCRIPTION OF THE DRAWINGS
[0079] In order to more clearly illustrate the technical solutions in the present application or related technologies, the drawings required for use in the embodiments or related technical descriptions are briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0080] Figure 1 A flowchart of an agile development-oriented online management method according to an embodiment of the present application;
[0081] Figure 2A A first schematic diagram of an online management architecture according to an embodiment of the present application;
[0082] Figure 2B A schematic diagram of the online management process of an embodiment of the present application;
[0083] Figure 2C A second schematic diagram of the online management architecture of an embodiment of the present application;
[0084] Figure 2D This is a schematic diagram of the associated characteristic branching process of an embodiment of the present application;
[0085] Figure 2E A third schematic diagram of the online management architecture of an embodiment of the present application;
[0086] Figure 2F A fourth schematic diagram of the online management architecture of an embodiment of the present application;
[0087] Figure 3 This is a structural block diagram of an online management device for agile development according to an embodiment of the present application;
[0088] Figure 4 A schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0089] In order to make the objectives, technical solutions and advantages of the present application more clearly understood, the present application is further described in detail below in combination with specific embodiments and with reference to the accompanying drawings.
[0090] It should be noted that, unless otherwise defined, the technical terms or scientific terms used in the embodiments of the present application should be the usual meanings understood by people with ordinary skills in the field to which the present application belongs. The "first", "second" and similar words used in the embodiments of the present application do not represent any order, quantity or importance, but are only used to distinguish different components. "Including" or "comprising" and similar words mean that the elements or objects appearing in front of the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. "Connect" or "connected" and similar words are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.
[0091] It is understandable that before using the technical solutions of each embodiment of the present application, the type, scope of use, usage scenarios, etc. of the personal information involved will be informed to the user in an appropriate manner, and the user's authorization will be obtained.
[0092] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly remind the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can independently choose whether to provide personal information to the electronic device, application, server, storage medium or other software or hardware that performs the operation of the technical solution of the present application according to the prompt message.
[0093] As an optional but non-limiting implementation, in response to receiving the user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0094] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation method of this application. Other methods that meet relevant laws and regulations may also be applied to the implementation method of this application.
[0095] With the rapid development of the Internet, user needs are becoming more and more diverse, and the traditional waterfall development model is difficult to respond to changes in demand immediately. Agile development has emerged as a result. It focuses on the evolution of user needs and adopts an iterative, continuous and rapid software development model, which has gradually been widely used.
[0096] In an iteration of agile development, the online delivery task of this iteration is achieved by completing the task card of the project or the task card of the requirement change. During the development process, each task card corresponds to a feature branch of a project under a code repository (such as gitlab). In the iteration, the feature branches of different task cards are merged into the online branch of the current iteration after review by the reviewer. After passing the test, it can be launched online.
[0097] However, the inventor of this application found that with the widespread application of microservice frameworks and front-end and back-end separation technologies, the front-end and back-end codes, and the codes of different back-end microservices are often stored in different projects in the code repository. A task may include multiple projects. When such tasks are launched, they often include merge requests for multiple application projects. The scope of review and testing is gradually expanding, and the difficulty of delivery and management is becoming greater and greater. Therefore, the online management within the iteration has gradually become a problem that needs to be solved urgently. The difficulties are specifically the following:
[0098] (1) Difficult to create. When a development task involves updating projects in multiple code repositories, developers need to create merge requests for release in different projects in the code repository. At this time, it is easy for them to forget the feature branch or release branch name that needs to be released, or they may mistakenly select the wrong merge branch.
[0099] (2) Auditing is difficult. Auditors often have to review multiple merge requests in one iteration. When a task contains multiple audits to be processed, it is not easy for auditors to find the requests to be reviewed by task. Moreover, if they only look at the merged code in the code repository, they are likely to ignore the original requirements and project background, which affects the efficiency and quality of the audit.
[0100] (3) Reconstruction is difficult. When there is code that cannot be put online in the code submitted for testing, it is difficult to extract this part of the code and recreate a new branch for online release, which affects the online release plan.
[0101] In the related technology, a code module, a review module and a merge request module are designed respectively. The code module is used to store code. After the developer specifies the code that needs to be reviewed in the code module, the designated code that needs to be reviewed is sent to the review module, and the merge branch code request issued by the developer is sent to the merge request module. The reviewer reviews the designated code in the review module, checks the code differences in the merge request module, browses the overview attached to the code, and returns the review information. The approved request can be manually merged into the branch code by the developer.
[0102] However, it has the following disadvantages:
[0103] (1) In agile development, branch merge requests cannot be submitted on a task-by-task basis. When a development task involves different application projects in multiple repositories, multiple submissions can only be made on different branches in different repositories, which is cumbersome.
[0104] (2) Reviewers review merge requests submitted by different projects and branches. When a development task involves different services in multiple repositories, it is difficult for reviewers to determine whether all merge requests related to the task have passed the review, which affects the review efficiency.
[0105] (3) If there are tasks that cannot be launched during the launch, and there is a lack of effective launch branch management, it is not easy to create a new launch branch.
[0106] An embodiment of the present application provides an online management method for agile development. When the iteration time of agile development is reached, an online branch and a development task card are created for the target project entering the current iteration cycle. When the management status of the development task card is updated to the developing status, the development task card is associated with the feature branch of the target code project. When the management status of the development task card is updated to the development completed status, a merge request for the online branch and the feature branch is automatically created, and an audit task card is automatically created. The auditor views the merged code information through the task to be audited. After the audit is passed, the online branch and the feature branch are merged. Then, when the management status of all development task cards in the current iteration cycle becomes the test completed status, the online branch can be used for packaging and online processing. If the online tasks of this round of iteration are deleted, the online branch can be quickly rebuilt according to the feature branches recorded in the task, thereby achieving the effect of reasonably executing the online management process.
[0107] like Figure 1 As shown, the method of this embodiment includes:
[0108] Step 101, in response to reaching the iteration time of agile development, monitoring the target project entering the current iteration cycle, and creating an online branch corresponding to the target project and a development task card corresponding to the target project.
[0109] In this step, if Figure 2A As shown, the online management architecture of the present application includes an R&D project management system, a database, a code repository, an R&D project manager, a branch manager and a task manager, wherein the R&D project manager includes iteration monitoring, project query, relationship query, and online reconstruction functions; the branch manager includes branch query, task association, creation of online branches, and creation of feature branches, etc.; the task manager includes task query, project association, creation of review tasks, creation of merge requests, etc.
[0110] Combination Figure 2B and Figure 2CAs shown, the user roles included in the online management process in the agile development iteration of this application include: product role, development role, review role, and test role. When the iteration start date (i.e., iteration time) of agile development is reached, the required projects in the R&D management system enter a new iteration cycle. After monitoring the R&D projects (i.e., target projects) entering the new iteration (i.e., entering the current iteration cycle) through the R&D project manager, query the code warehouse application projects stored in the database, and then call the application programming interface (Application Programming Interface, API) interface through the branch manager to automatically create the online branches of each application project in this iteration (i.e., the current iteration cycle) in the code warehouse. Product personnel create the task card (i.e., development task card) of this iteration in the R&D management system and specify the front-end and back-end developers, testers, and reviewers in the interface.
[0111] Agile development means that the software development is carried out in an iterative and step-by-step manner with the evolution of user needs as the core. In agile development, the software project is divided into multiple sub-projects at the beginning of the construction, and the results of each sub-project are tested and have the characteristics of being visible, integrable and operational. In other words, a large project is divided into multiple small projects that are interconnected but can also be run independently, and they are completed separately. During this process, the software is always in a usable state.
[0112] An application project is a process based on agile development ideas to split a large application system into small projects that are interrelated but can run independently.
[0113] Code repositories represent places where source code files are stored and managed. They allow developers to submit, track, and manage multiple versions of source code, as well as share and manage code between teams. Through code repositories, developers can better perform version control and team collaboration, thereby enhancing code quality, reducing the risk of conflicts and errors, etc.
[0114] Iteration means that a large product requirement can be divided into multiple agile iterations, and each iteration can be divided into multiple iterative development tasks, and each iterative task corresponds to a sub-function in the product requirement.
[0115] Agile iteration means that in agile development, the entire development work is organized into a series of short, fixed-length (such as 3 weeks) small projects. Each iteration includes definition, requirements analysis, design, implementation and testing.
[0116] The online branch is the branch used for online release.
[0117] Step 102, in response to the management status of the development task card being updated from the demand-ready status to the developing status, determining the target code project corresponding to the development task card, determining the feature branch of the target code project, and associating the development task card with the feature branch of the target code project.
[0118] In this step, based on the idea of rapid delivery and rapid launch in iterations of agile development, this application creates feature branches of related application projects for each iteration's task card to facilitate the creation of merge requests when going online.
[0119] like Figure 2B As shown in the figure, for each specific task card in the iteration (i.e., development task card), when the developer changes the task card from the ready-to-use state to the developing state, the task card needs to be associated with the feature branch of the specific application development project in the code repository. The specific process is as follows Figure 2D As shown. When a task card is set to the developing state, the list of code projects will be queried and displayed in the interface. When the developer selects the associated code project (multiple selections are allowed), the method of associating the feature branch will be selected in the interface. There are two methods of associating feature branches: the first is to choose to have the branch manager create a new feature branch based on the task card identification code (Identity document, ID), and then automatically associate the task card with the new branch; the second is to choose to associate with an existing branch. At this time, the existing branches of the project will be queried and displayed, and the developer will select the branch and then associate it. If a task card corresponds to the update of multiple application projects, the developer can choose to associate the task card with multiple projects in the code repository, and then select the feature branch association method for each project. If the task card enters this iteration from the previous development iteration, there is no need to associate and create a feature branch.
[0120] Among them, a feature branch refers to a development branch created in a code repository to achieve a single attribute or goal.
[0121] Step 103 , in response to the management status of the development task card being updated from the developing status to the development completed status, a merge request is created, and a review task card associated with the development task card is created.
[0122] In this step, this application uses task cards (i.e. development task cards) as units. When the development or defect update is completed, an audit task card will be automatically created for the reviewer so that the reviewer can receive the audit notification as soon as possible and it is convenient to manage the audit task.
[0123] Step 104: audit the target code project based on the development task card to obtain an audit result, and update the management status of the audit task card from an auditing status to an audit completed status according to the audit result.
[0124] In this step, after receiving the review task card, the reviewer can see the relevant task background through the associated development task card. All merge requests to be reviewed (i.e. merge branches) can be seen through the merge request records of all related code repositories. In the code repository, you can see the previous submission records and the differences with the current online branch for review. When multiple developers submit different merge request records to the same reviewer, the reviewer can distinguish the merge requests of different tasks through the different review task cards created, thereby improving the review efficiency.
[0125] like Figure 2B As shown, if the auditor determines that the quality of the code (i.e., the target code project) is not good enough, or there are tasks missing and the code fails, the developer will be notified through the R&D management system, and the information will be recorded in the development task card. The management status of the audit task card will be updated to the audit failure status (i.e., the audit completion status), and the audit task card will be closed; if the audit is passed, the management status of the audit task card will be updated to the audit pass status (i.e., the audit completion status), and the audit task card will be closed.
[0126] By reviewing the target code project, errors that were not discovered in the early stages of software development can be found and corrected, improving software quality and developer skills. Auditing is usually carried out in different forms, such as pair programming, informal review of the entire code, or formal software inspection.
[0127] Step 105, in response to the audit result being passed, merging the online branch and the feature branch based on the merge request to obtain a merged branch.
[0128] In this step, if Figure 2B As shown, after the developer completes the development and submits the code to the code repository, the R&D management system updates the task card status (i.e., the management status of the development task) to the development completion status, or after fixing the defect, updates the defect status to the fixed status. At this time, the R&D management system automatically initiates a task merge request, and then the R&D project manager queries the saved feature branch information managed by the task card and the current online branch information of the code project. Subsequently, the task manager sends a merge request for the feature branch and the online branch to the code repository through the Application Programming Interface (API) interface.
[0129] Combination Figure 2E As shown, if the merge request fails to be created and there is a merge conflict, a merge conflict notification is sent to the developer and recorded in the task card (i.e., the development task card); if there is no merge conflict, a merge branch is obtained, and the new task interface of the R&D management system is called to create a review task card for the code reviewer respectively, and it is associated with the merge request records and development task cards of all relevant code repositories.
[0130] Step 106 , in response to the management status of the development task card being updated from the development completion status to the testing status, the target code project is tested to obtain a test result, and the management status of the development task card is updated based on the test result.
[0131] In this step, if the development task cards are reviewed and approved, the R&D management system will send a notification to the tester based on the configured tester information, so that the tester can quickly enter the testing phase.
[0132] like Figure 2B As shown in the figure, when entering the testing phase, the tester updates the management status of the development task card to the testing status. If a defect is found, it will be recorded on the development task card and notified to the developer. The developer will fix the code and re-execute the merging process of the online branch and the feature branch. If there is no defect or all defects are fixed, the management status of the development task card is set to the test completed status and wait for online.
[0133] Step 107, in response to the management status of the updated development task card being the test completion status, and when there is a task card that is not processed online, rebuild the online branch to obtain a recreated online branch, and process the target code project associated with the target development task card corresponding to the recreated online branch online.
[0134] In this step, if Figure 2B As shown in the figure, when the management status of the development task card is the test completion status, wait until the management status of all development task cards in the current iteration cycle changes to the test completion status, and then you can use the online branch to package and go online. If there are deletions to the online tasks in this round of iteration, according to the feature branches recorded in the task, it supports rapid reconstruction of the online branch, thereby achieving the effect of reasonably executing the online management process.
[0135] Through the above scheme, when the iteration time of agile development is reached, an online branch and a development task card are created for the target project entering the current iteration cycle. When the management status of the development task card is updated to the under-development status, the development task card is associated with the feature branch of the target code project. When the management status of the development task card is updated to the development completed status, a merge request for the online branch and the feature branch is automatically created, and an audit task card is automatically created. The auditor views the merged code information through the tasks to be audited. After the audit is passed, the online branch and the feature branch are merged. Then, when the management status of all development task cards in the current iteration cycle becomes the test completed status, the online branch can be used for packaging and online processing. If there are deletions in the online tasks of this round of iteration, the online branch can be quickly rebuilt according to the feature branches recorded in the task, thereby achieving the effect of reasonably executing the online management process.
[0136] In some embodiments, in step 102, determining the target code project corresponding to the development task card includes:
[0137] Step A1, obtaining a code project list corresponding to the target project.
[0138] Step A2, in response to receiving a selection instruction of a target code item in the code item list, determining the target code item corresponding to the development task card based on the selection instruction.
[0139] In the above scheme, if Figure 2D As shown, when the task card is set to the developing state, the code project list will be queried and displayed in the interface. When the developer selects the associated code project (multiple selections are allowed), the target code project corresponding to the development task card can be quickly determined.
[0140] In some embodiments, in step 102, determining the feature branch of the target code project includes:
[0141] Step B1, obtaining the identification code of the development task card.
[0142] Step B2: creating a new feature branch of the target code project based on the identification code, and using the new feature branch of the target code project as the feature branch of the target code project.
[0143] In the above scheme, if Figure 2D As shown, when the developer selects the associated code project, the method of associating the feature branch will be selected in the interface. The developer can choose to have the branch manager create a new feature branch based on the identification code (Identity document, ID) of the development task card, and then automatically associate the development task card with the new branch (i.e., the feature branch of the target code project).
[0144] This application can automatically create and record feature branches of related application projects for task cards of each agile development iteration, making it convenient to create merge requests and manage online branches when going online.
[0145] In some embodiments, in step 102, determining the feature branch of the target code project includes:
[0146] Step C1, obtaining multiple historical feature branches corresponding to the target code project.
[0147] Step C2, in response to receiving an instruction to select a target historical feature branch of the multiple historical feature branches, taking the target code project as the feature branch of the target code project.
[0148] In the above scheme, if Figure 2DAs shown, when the developer selects the associated code project, he will choose the method of associating feature branches in the interface and choose to associate with an existing branch. At this time, the existing branches of the project (that is, multiple historical feature branches) are queried and displayed. After the developer selects the branch (that is, the target historical feature branch), it is associated.
[0149] If a development task card corresponds to updates for multiple application projects, developers can choose to associate the development task card with multiple projects in the code repository, and then select the feature branch association method for each project. If the development task card is entered into this iteration from the previous development iteration, there is no need to associate and create a feature branch.
[0150] This application can automatically create and record feature branches of related application projects for task cards of each agile development iteration, making it convenient to create merge requests and manage online branches when going online.
[0151] In some embodiments, in step 105, after merging the online branch and the feature branch based on the merge request and before obtaining the merged branch, the method further includes:
[0152] Step D1, in response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card.
[0153] Step D2, adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch.
[0154] Step D3, repeatedly merging the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
[0155] In the above scheme, if Figure 2B As shown, if the merge request fails to be created and there is a merge conflict, a merge conflict notification (i.e., merge failure notification) is sent to the developer and recorded in the task card (i.e., development task card); if there is no merge conflict, a merge branch is obtained, and the R&D management system's new task interface is called to create review task cards for the code reviewers respectively, and the merge request records and development task cards of all relevant code repositories are associated.
[0156] In some embodiments, after step 104 and before step 105, the method further includes:
[0157] Step E1, in response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card.
[0158] Step E2, adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project.
[0159] Step E3, repeatedly reviewing the adjusted target code project based on the development task card and the merged branch until the review result obtained is review passed.
[0160] In the above scheme, if the application fails the review, the developer will be automatically notified to change the code. Figure 2B As shown, if the auditor determines that the code quality is not good enough, or there are tasks missing and the code fails, a notification (i.e., audit failure notification) is sent to the developer through the R&D management system, and recorded in the development task card, the audit status of the audit task card is updated to audit failure, the audit card is closed, and the target code project is adjusted based on the audit failure notification to obtain an adjusted target code project, and then the adjusted target code project is repeatedly audited based on the development task card and the merged branch until the audit result obtained is audit passed.
[0161] This application uses development task cards as units. When the development or defect update is completed, an audit task card will be automatically created for the reviewer, so that the reviewer can receive the audit notification as soon as possible and it is convenient to manage the audit task.
[0162] In some embodiments, in step 106, after testing the target code project and obtaining the test result, before step 107, the method further includes:
[0163] Step F1, in response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card.
[0164] Step F2, adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project.
[0165] Step F3, retesting the adjusted target code project until the test result obtained is that the test passes.
[0166] In the above scheme, if Figure 2B As shown, when entering the testing phase, the tester updates the management status of the development task card to the testing status. If a defect is found, it will be recorded (i.e., a test failure notification) on the task card and the developer will be notified. Based on the test failure notification, the developer will adjust the target code project, and after repairing the code, an adjusted target code project will be obtained. The adjusted target code project will be retested until the test result is that there is no defect or all defects are repaired (i.e., the test passes).
[0167] This application will be automatically merged and deployed to the test environment after the development task card is reviewed and approved, and the testers will be notified to conduct the test, thus improving the development and testing efficiency of the task card.
[0168] In some embodiments, in step 107, the rebuilding of the online branch to obtain the recreated online branch includes:
[0169] Step G1, in response to receiving a non-online instruction of any development task card whose management status is the test completed status, creating a re-online request, and obtaining all development task cards whose management status is the test completed status.
[0170] Step G2, in response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction.
[0171] Step G3: re-create the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card.
[0172] Step G4, in response to the management status of the target development task card being updated from the under-development status to the development completed status, a merge request is created, and an online review task card associated with the target development task card is created.
[0173] Step G5, based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain the online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result.
[0174] Step G6, in response to the review completion status being reviewed passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
[0175] In the above scheme, when the iteration ends and the launch phase begins, if a development task card with "test completed" cannot be launched due to demand changes or unfinished external environment, the launch branch of the application project associated with the development task card will be rebuilt. The specific process is as follows: Figure 2F As shown. First, the R&D management system sends a rebuild online branch request to the R&D project that needs to be rebuilt. After receiving the request, the R&D project manager queries all code projects included in the R&D project, and queries all test completion tasks of the current iteration of the R&D project through the task manager.
[0176] After the user selects the tasks that can be launched in the current iteration (i.e., the launch development task card) through the interface, the branch manager will recreate the launch branch (there may be multiple associated projects) based on the relationship between the task and the code project. Finally, the task manager will recreate a merge request (i.e., the launch merge branch) to the code repository based on the stored associated feature branches and the new launch branch. If the creation is successful, it will continue to create the review task.
[0177] This application is convenient for excluding task cards that have passed the test but cannot be put online when going online, and can quickly rebuild the relevant online branches and go online quickly.
[0178] It should be noted that the method of the embodiment of the present application can be performed by a single device, such as a computer or server. The method of this embodiment can also be applied to a distributed scenario and completed by multiple devices cooperating with each other. In the case of such a distributed scenario, one of the multiple devices can only perform one or more steps in the method of the embodiment of the present application, and the multiple devices will interact with each other to complete the described method.
[0179] It should be noted that the above describes some embodiments of the present application. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the above embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0180] Based on the same inventive concept, corresponding to any of the above-mentioned embodiment methods, the present application also provides an online management device for agile development.
[0181] refer to Figure 3 The online management device for agile development includes:
[0182] The monitoring module 301 is configured to monitor the target project entering the current iteration cycle in response to reaching the iteration time of the agile development, and create an online branch corresponding to the target project and a development task card corresponding to the target project;
[0183] The association module 302 is configured to determine the target code project corresponding to the development task card in response to the management state of the development task card being updated from the demand-ready state to the developing state, determine the feature branch of the target code project, and associate the development task card with the feature branch of the target code project;
[0184] A creation merge module 303 is configured to create a merge request in response to the management status of the development task card being updated from the developing status to the development completed status, and to create a review task card associated with the development task card and the merge branch respectively;
[0185] The review module 304 is configured to review the target code project based on the development task card, obtain a review result, and update the management status of the review task card from the review-in-progress status to the review-completed status according to the review result;
[0186] A merging module 305 is configured to, in response to the audit result being approved, merge the online branch and the feature branch based on the merge request to obtain a merged branch;
[0187] The testing module 306 is configured to test the target code project in response to the management state of the development task card being updated from the development completed state to the testing state, obtain a test result, and update the management state of the development task card based on the test result;
[0188] The online module 307 is configured to respond to the management status of the updated development task card being a test completion status, and when there is a task card that is not processed online, rebuild the online branch to obtain a recreated online branch, and process the target code project associated with the target development task card corresponding to the recreated online branch online.
[0189] In some embodiments, the association module 302 is specifically configured to:
[0190] Obtain a list of code items corresponding to the target item;
[0191] In response to receiving a selection instruction for a target code item in the code item list, the target code item corresponding to the development task card is determined based on the selection instruction.
[0192] In some embodiments, the association module 302 is specifically configured to:
[0193] Obtaining the identification code of the development task card;
[0194] A new feature branch of the target code project is created based on the identification code, and the new feature branch of the target code project is used as the feature branch of the target code project.
[0195] In some embodiments, the association module 302 is specifically configured to:
[0196] Obtaining multiple historical feature branches corresponding to the target code project;
[0197] In response to receiving an instruction to select a target historical feature branch of the plurality of historical feature branches, the target code project is taken as a feature branch of the target code project.
[0198] In some embodiments, the online management device for agile development further includes a merge adjustment module. After merging the online branch and the feature branch based on the merge request and before obtaining the merged branch, the merge adjustment module is specifically configured to:
[0199] In response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card;
[0200] Adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch;
[0201] Repeat the merging of the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
[0202] In some embodiments, the on-line management device for agile development further includes an audit adjustment module. After updating the management status of the audit task card from the auditing status to the audit completed status according to the audit result, in response to the audit result being before the audit is passed, the audit adjustment module is specifically configured as follows:
[0203] In response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card;
[0204] Adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project;
[0205] The adjusted target code project is repeatedly reviewed based on the development task card and the merge branch until the review result obtained is that the review is passed.
[0206] In some embodiments, the on-line management device for agile development further includes a test adjustment module, which tests the target code project, obtains the test result, and in response to the management status of the updated development task card being before the test completion status, the test adjustment module is specifically configured as follows:
[0207] In response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card;
[0208] Adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project;
[0209] The adjusted target code project is retested until the test result obtained is that the test passes.
[0210] In some embodiments, the online module 307 is specifically configured to:
[0211] In response to receiving a non-online instruction for any development task card whose management status is a test completed status, creating a re-online request, and obtaining all development task cards whose management status is a test completed status;
[0212] In response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction;
[0213] Recreate the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card;
[0214] In response to the management status of the target development task card being updated from the under-development status to the development completed status, creating a merge request, and creating an online review task card associated with the target development task card;
[0215] Based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain an online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result;
[0216] In response to the review completion status being passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
[0217] For the convenience of description, the above device is described in terms of functions divided into various modules. Of course, when implementing the present application, the functions of each module can be implemented in the same or multiple software and / or hardware.
[0218] The device of the above embodiment is used to implement the corresponding online management method for agile development in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0219] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present application also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the online management method for agile development described in any of the above embodiments is implemented.
[0220] Figure 4 A more specific schematic diagram of the hardware structure of an electronic device provided in this embodiment is shown, and the device may include: a processor 401, a memory 402, an input / output interface 403, a communication interface 404, and a bus 405. The processor 401, the memory 402, the input / output interface 403, and the communication interface 404 are connected to each other in communication within the device through the bus 405.
[0221] The processor 401 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.
[0222] The memory 402 can be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 402 can store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program codes are stored in the memory 402 and called and executed by the processor 401.
[0223] The input / output interface 403 is used to connect the input / output module to realize information input and output. The input / output module can be configured in the device as a component (not shown in the figure), or it can be externally connected to the device to provide corresponding functions. The input device may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device may include a display, a speaker, a vibrator, an indicator light, etc.
[0224] The communication interface 404 is used to connect a communication module (not shown) to realize communication interaction between the device and other devices. The communication module can realize communication through a wired mode (such as USB, network cable, etc.) or a wireless mode (such as mobile network, WIFI, Bluetooth, etc.).
[0225] The bus 405 comprises a pathway for transmitting information between the various components of the device (eg, the processor 401 , the memory 402 , the input / output interface 403 , and the communication interface 404 ).
[0226] It should be noted that, although the above device only shows the processor 401, the memory 402, the input / output interface 403, the communication interface 404 and the bus 405, in the specific implementation process, the device may also include other components necessary for normal operation. In addition, it can be understood by those skilled in the art that the above device may also only include the components necessary for implementing the embodiments of the present specification, and does not necessarily include all the components shown in the figure.
[0227] The electronic device of the above embodiment is used to implement the corresponding online management method for agile development in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0228] Based on the same inventive concept, corresponding to any of the above-mentioned embodiment methods, the present application also provides a non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer instructions, and the computer instructions are used to enable the computer to execute the online management method for agile development as described in any of the above embodiments.
[0229] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.
[0230] The computer instructions stored in the storage medium of the above embodiment are used to enable the computer to execute the online management method for agile development as described in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0231] Those skilled in the art should understand that the discussion of any of the above embodiments is merely illustrative and is not intended to imply that the scope of the present application (including the claims) is limited to these examples. In line with the concept of the present application, the technical features in the above embodiments or different embodiments may be combined, the steps may be implemented in any order, and there are many other variations of the different aspects of the embodiments of the present application as described above, which are not provided in detail for the sake of simplicity.
[0232] In addition, to simplify the description and discussion, and in order not to make the embodiments of the present application difficult to understand, the known power supply / ground connection with the integrated circuit (IC) chip and other components may or may not be shown in the provided drawings. In addition, the device can be shown in the form of a block diagram to avoid making the embodiments of the present application difficult to understand, and this also takes into account the fact that the details of the implementation of these block diagram devices are highly dependent on the platform to be implemented in the embodiments of the present application (that is, these details should be fully within the scope of understanding of those skilled in the art). In the case of elaborating specific details (e.g., circuits) to describe exemplary embodiments of the present application, it is obvious to those skilled in the art that the embodiments of the present application can be implemented without these specific details or when these specific details are changed. Therefore, these descriptions should be considered to be illustrative rather than restrictive.
[0233] Although the present application has been described in conjunction with specific embodiments of the present application, many replacements, modifications and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may use the embodiments discussed.
[0234] The embodiments of the present application are intended to cover all such substitutions, modifications and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the embodiments of the present application should be included in the scope of protection of the present application.
Claims
1. A launch management method for agile development, characterized in that: include: In response to reaching the iteration time of agile development, monitoring the target project entering the current iteration cycle, and creating an online branch corresponding to the target project and a development task card corresponding to the target project; In response to the management state of the development task card being updated from a demand-ready state to a developing state, determining a target code project corresponding to the development task card, determining a feature branch of the target code project, and associating the development task card with the feature branch of the target code project; In response to the management status of the development task card being updated from the under-development status to the development completed status, creating a merge request, and creating a review task card associated with the development task card; Auditing the target code project based on the development task card to obtain an audit result, and updating the management status of the audit task card from an auditing status to an audit completed status according to the audit result; In response to the audit result being approved, merging the online branch and the feature branch based on the merge request to obtain a merged branch; In response to the management state of the development task card being updated from the development completed state to the testing state, the target code project is tested to obtain a test result, and the management state of the development task card is updated based on the test result; In response to the management status of the updated development task card being the test completion status, and when there is a task card that is not processed online, the online branch is rebuilt to obtain a recreated online branch, and the target code project associated with the target development task card corresponding to the recreated online branch is processed online.
2. The method according to claim 1, characterized in that The determining of the target code project corresponding to the development task card comprises: Obtain a list of code items corresponding to the target item; In response to receiving a selection instruction for a target code item in the code item list, the target code item corresponding to the development task card is determined based on the selection instruction.
3. The method according to claim 1, characterized in that Determining the feature branch of the target code project includes: Obtaining the identification code of the development task card; A new feature branch of the target code project is created based on the identification code, and the new feature branch of the target code project is used as the feature branch of the target code project.
4. The method according to claim 1, characterized in that: Determining the feature branch of the target code project includes: Obtaining multiple historical feature branches corresponding to the target code project; In response to receiving an instruction to select a target historical feature branch of the plurality of historical feature branches, the target code project is taken as a feature branch of the target code project.
5. The method according to claim 1, characterized in that After merging the online branch and the feature branch based on the merge request and before obtaining the merge branch, the method includes: In response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card; Adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch; Repeat the merging of the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
6. The method according to claim 1, characterized in that After updating the management status of the audit task card from the auditing status to the auditing completed status according to the audit result, in response to the audit result being before the audit is passed, the method further includes: In response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card; Adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project; The adjusted target code project is repeatedly reviewed based on the development task card and the merge branch until the review result obtained is that the review is passed.
7. The method according to claim 1, characterized in that After testing the target code project and obtaining the test result, in response to the management status of the updated development task card being in the test completion state, the method further includes: In response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card; Adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project; The adjusted target code project is retested until the test result obtained is that the test passes.
8. The method according to claim 1, characterized in that The rebuilding of the online branch to obtain a recreated online branch includes: In response to receiving a non-online instruction for any development task card whose management status is a test completed status, creating a re-online request, and obtaining all development task cards whose management status is a test completed status; In response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction; Recreate the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card; In response to the management status of the target development task card being updated from the under-development status to the development completed status, creating a merge request, and creating an online review task card associated with the target development task card; Based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain an online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result; In response to the review completion status being passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
9. An online management device for agile development, characterized in that: include: A monitoring module is configured to monitor a target project entering a current iteration cycle in response to reaching an iteration time of agile development, and to create an online branch corresponding to the target project and a development task card corresponding to the target project; an association module, configured to determine, in response to the management state of the development task card being updated from a demand-ready state to a developing state, a target code project corresponding to the development task card, determine a feature branch of the target code project, and associate the development task card with the feature branch of the target code project; A creation merge module is configured to create a merge request in response to the management status of the development task card being updated from the under-development status to the development completed status, and to create a review task card associated with the development task card and the merge branch respectively; An audit module is configured to audit the target code project based on the development task card, obtain an audit result, and update the management status of the audit task card from an auditing status to an audit completed status according to the audit result; A merging module is configured to, in response to the audit result being approved, merge the online branch and the feature branch based on the merge request to obtain a merged branch; A testing module, configured to test the target code project in response to the management state of the development task card being updated from the development completed state to the testing state, obtain a test result, and update the management state of the development task card based on the test result; The online module is configured to respond to the management status of the updated development task card being a test completion status, and when there is a task card that is not processed online, rebuild the online branch to obtain a recreated online branch, and process the target code project associated with the target development task card corresponding to the recreated online branch online.
10. The device according to claim 9, characterized in that The association module is specifically configured as follows: Obtain a list of code items corresponding to the target item; In response to receiving a selection instruction for a target code item in the code item list, the target code item corresponding to the development task card is determined based on the selection instruction.
11. The device according to claim 9, characterized in that The association module is specifically configured as follows: Obtaining the identification code of the development task card; A new feature branch of the target code project is created based on the identification code, and the new feature branch of the target code project is used as the feature branch of the target code project.
12. The device according to claim 9, characterized in that The association module is specifically configured as follows: Obtaining multiple historical feature branches corresponding to the target code project; In response to receiving an instruction to select a target historical feature branch of the plurality of historical feature branches, the target code project is taken as a feature branch of the target code project.
13. The device according to claim 9, characterized in that The device further includes a merging and adjusting module. After merging the online branch and the feature branch based on the merge request and before obtaining the merged branch, the merging and adjusting module is specifically configured to: In response to a failure in merging the online branch and the feature branch, generating and sending a merge failure notification, and recording the merge failure notification in the development task card; Adjusting the feature branch of the target code project based on the failure notification recorded in the development task card to obtain an adjusted feature branch; Repeat the merging of the online branch and the adjusted feature branch until the online branch and the feature branch are successfully merged to obtain a merged branch.
14. The device according to claim 9, characterized in that The device further includes an audit adjustment module, which is configured to: after updating the management status of the audit task card from the auditing status to the audit completed status according to the audit result, and before the audit result is the audit passed, the audit adjustment module is specifically configured to: In response to the audit result being an audit failure, generating and sending an audit failure notification, and recording the audit failure notification in the development task card; Adjusting the target code project based on the audit failure notification recorded in the development task card to obtain an adjusted target code project; The adjusted target code project is repeatedly reviewed based on the development task card and the merge branch until the review result obtained is that the review is passed.
15. The device according to claim 9, characterized in that The device further comprises a test adjustment module, which tests the target code project, obtains the test result, and in response to the management status of the updated development task card being before the test is completed, the test adjustment module is specifically configured as follows: In response to the test result being a test failure, generating and sending a test failure notification, and recording the test failure notification in the development task card; Adjusting the target code project based on the test failure notification recorded in the development task card to obtain an adjusted target code project; The adjusted target code project is retested until the test result obtained is that the test passes.
16. The device according to claim 9, characterized in that The online module is specifically configured as follows: In response to receiving a non-online instruction for any development task card whose management status is a test completed status, creating a re-online request, and obtaining all development task cards whose management status is a test completed status; In response to receiving an upline selection instruction for an upline development task card from among all the development task cards, selecting a target development task card based on the upline selection instruction; Recreate the online branch corresponding to the target development task card based on the re-online request, and obtain the feature branch associated with the online branch corresponding to the target development task card; In response to the management status of the target development task card being updated from the under-development status to the development completed status, creating a merge request, and creating an online review task card associated with the target development task card; Based on the target development task card, the online target code project corresponding to the target development task card is reviewed to obtain an online review result, and the management status of the online review task card is updated from the review-in-progress status to the review-completed status according to the online review result; In response to the review completion status being passed, the online branch corresponding to the target development task card and the associated feature branch are merged to obtain an online merge branch, and the online merge branch is used as the recreated online branch.
17. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method according to any one of claims 1 to 8 is implemented.