Software development management methods, devices, and software development systems
By merging and updating the development baselines of the main project team and collaborating project teams, and tracking and updating the development progress, the problem of low efficiency in traditional siloed software development was solved, and efficient collaborative management under a componentized, microservice architecture was achieved.
Patent Information
- Application Number
- CN202111679951.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-31
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2041-12-31
AI Technical Summary
Traditional siloed software development leads to a lack of planning and tracking management for collaborative tasks among development teams, resulting in long software development cycles and low efficiency. Furthermore, under component-based and microservice architectures, the complexity of collaborative management among development teams increases, impacting development efficiency.
By establishing development baselines for the main project team and collaborating project teams, merging these baselines, tracking development progress, and updating the baselines based on the progress results, this process is repeated until the software development is completed, ensuring the accuracy and efficiency of the development plan.
It improves the efficiency of software development, avoids problems with unfinished development plans, ensures the accuracy and consistency of development progress, and reduces the impact of subsequent testing.
Smart Images

Figure CN114327394B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of software development technology, and more specifically, to a software development management method, apparatus, computer-readable storage medium, processor, and software development system. Background Technology
[0002] Traditional siloed software development primarily involves developing independent software systems for specific needs. These systems have simple functions, involve few collaborators, and have limited inter-team collaboration. Consequently, the lack of planning and tracking methods for collaborative tasks leads to long development cycles and low development management efficiency. Furthermore, with the increasing complexity of software systems, traditional siloed software development planning and tracking methods are no longer suitable for most current software development processes.
[0003] To address these issues, in a component-based, microservice architecture, the application functionality of a software system is broken down into hundreds or even thousands of components. Each component is a minimal set of functions developed and deployed independently, implemented through numerous development units. Therefore, new application functionalities are composed of numerous components containing multiple development units. This significantly increases the number of software system components and development teams, and the relationships between these components and teams are typically many-to-many. This leads to increased difficulty in development planning, increased complexity in communication and coordination among development teams, and consequently, a significant impact on software development efficiency.
[0004] In current development planning and tracking management based on component-based and microservice architecture, management is mostly carried out from the perspective of the development team. It focuses on the triggering and calling relationships between various development units within the component and the progress coordination, but lacks collaborative management of components across teams in the main project. This leads to unclear collaboration matters between development teams, low efficiency of collaborative development, and delays in project development.
[0005] The information disclosed above in the background section is only intended to enhance the understanding of the background art of the art described herein. Therefore, the background art may contain certain information that does not constitute prior art known to those skilled in the art in this country. Summary of the Invention
[0006] The main objective of this application is to provide a software development management method, apparatus, computer-readable storage medium, processor, and software development system to solve the problem of low efficiency in software development in the prior art.
[0007] According to one aspect of the present invention, a software development management method is provided, comprising: a compilation step, compiling a development baseline to obtain a development baseline for a main project team and a development baseline for a collaborating project team; a merging step, merging the development baseline of the main project team and the development baseline of the collaborating project team to obtain a merged development baseline; a tracking step, tracking the development progress of the merged development baseline after a predetermined development period according to the merged development baseline to obtain a progress tracking result; an updating step, updating the merged development baseline according to the progress tracking result to obtain an updated merged development baseline; and a repetition step, repeating the tracking step and the updating step at least once until the software development is completed.
[0008] Optionally, the compilation steps include: obtaining a workflow; determining the application functions and development units of the main project group based on the workflow; determining the application functions and development units of the collaborating project group based on the workflow; generating a first development collaboration baseline based on the information of the application functions and development units of the main project group; and generating a second development collaboration baseline based on the application functions and development units of the collaborating project group.
[0009] Optionally, the development baseline includes a development scope baseline, which includes information about the development units developing the application functions to be developed. The merging step includes: obtaining a first development scope baseline and a second development scope baseline, wherein the first development scope baseline is the development scope baseline of the main project group and the second development scope baseline is the development scope baseline of the collaborating party project group; and writing the information of the second development scope baseline into the first development scope baseline to obtain the merged development scope baseline of the merged development baseline.
[0010] Optionally, the development baseline further includes a development collaboration baseline, which includes information on the application functions to be developed and information on the development units that develop the application functions to be developed. The merging step further includes: comparing the first development collaboration baseline and the second development collaboration baseline to obtain information on duplicate development units; modifying the first development collaboration baseline based on the information on duplicate development units to obtain a modified first development collaboration baseline, so that the development tasks of the main project team and the collaborating project team do not overlap; and writing the information of the second development collaboration baseline into the modified first development collaboration baseline to obtain the merged development scope baseline of the merged development baseline.
[0011] Optionally, the tracking step includes: obtaining a first quantity and a second quantity, wherein the first quantity is the number of development units planned to be completed in the previous predetermined period in the merged development baseline, and the second quantity is the number of development units actually completed in the previous predetermined period in the merged development baseline; and determining the progress tracking result based on the first quantity and the second quantity.
[0012] Optionally, determining the progress tracking result based on the first quantity and the second quantity includes: if the first quantity is less than the second quantity, determining that the progress tracking result indicates that the development plan for the previous predetermined period was completed ahead of schedule; if the first quantity is equal to the second quantity, determining that the progress tracking result indicates that the development plan for the previous predetermined period was completed; and if the first quantity is greater than the second quantity, determining that the progress tracking result indicates that the development plan for the previous predetermined period was delayed.
[0013] Optionally, the update step includes: obtaining a third development scope baseline, which is the development scope baseline redefined by the main project team based on the progress tracking results; comparing the information corresponding to the third development scope baseline and the first development scope baseline to obtain dissimilar information, the dissimilar information including first information of the third development scope baseline and second information of the first development scope baseline, wherein the first information and the second information are different but correspond; determining whether to update based on the dissimilar information; and updating the first information of the first development scope baseline to the second information if an update is determined.
[0014] According to another aspect of the present invention, a software development management device is also provided, comprising: a compilation unit for performing a compilation step to compile a development baseline, thereby obtaining a development baseline for a main project group and a development baseline for a collaborating project group; a merging unit for performing a merging step to merge the development baseline of the main project group and the development baseline of the collaborating project group to obtain a merged development baseline; a tracking unit for performing a tracking step to track the development progress of the merged development baseline after a predetermined development period based on the merged development baseline, thereby obtaining a progress tracking result; an updating unit for performing an updating step to update the merged development baseline based on the progress tracking result, thereby obtaining an updated merged development baseline; and a repeating unit for performing a repeating step to repeat the tracking step and the updating step at least once until the software development is completed.
[0015] According to another aspect of the present invention, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored program, wherein the program executes any one of the methods described.
[0016] According to another aspect of the present invention, a processor is also provided, the processor being configured to run a program, wherein the program, when running, executes any of the methods described.
[0017] According to another aspect of the present invention, a software development system is also provided, including a software development management device, the software development management device being used to execute any of the methods described.
[0018] In this embodiment of the invention, the software development management method described above first involves creating a development baseline to obtain the development baselines of the main project team and the collaborating project team. Then, a merging step is performed to merge the development baselines of the main project team and the collaborating project team, resulting in a merged development baseline. Next, a tracking step is performed to track the development progress of the merged development baseline after a predetermined development cycle, obtaining a progress tracking result. Following this, an update step is performed to update the merged development baseline based on the progress tracking result, resulting in an updated merged development baseline. Finally, a repetition step is performed, repeating the tracking and update steps until software development is completed. This method merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle. This addresses the issue of incomplete development plans discovered during tracking, avoids impacting subsequent testing, improves development efficiency, and solves the problem of low efficiency in software development in the prior art. Attached Figure Description
[0019] The accompanying drawings, which form part of this application, are used to provide a further understanding of this application. The illustrative embodiments and descriptions of this application are used to explain this application and do not constitute an undue limitation of this application. In the drawings:
[0020] Figure 1 A flowchart of a software development management method according to an embodiment of this application is shown;
[0021] Figure 2 A schematic diagram of a software development management device according to an embodiment of this application is shown. Detailed Implementation
[0022] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.
[0023] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0024] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0025] It should be understood that when an element (such as a layer, film, region, or substrate) is described as being "on" another element, the element may be directly on the other element, or there may be an intermediate element present. Furthermore, in the specification and claims, when an element is described as being "connected" to another element, the element may be "directly connected" to the other element, or "connected" to the other element via a third element.
[0026] For ease of description, the following explains some of the nouns or terms used in the embodiments of this application:
[0027] Baseline: A baseline is an identifier for a phase or component when software engineering activities transition from one stage to another. As software scales and divisions of labor become more refined, the software development process becomes increasingly complex, with each stage performed by different types of roles and personnel. Therefore, it is necessary to clearly identify the deliverables of the previous stage and the foundation for the next stage. This identification activity is called baseline. Baselines established for a project include requirements baseline, development baseline, testing baseline, and release baseline.
[0028] Development baseline: After the requirements baseline is established, the development and implementation methods of the software requirements are documented, and the start and end times are clearly defined. Developers develop code according to the development baseline.
[0029] Microservices: Microservice architecture refers to vertically dividing a large and complex system into smaller subsystems based on functions or business requirements. These subsystems exist as independently deployed subprocesses and communicate with each other through lightweight, cross-language synchronous or asynchronous (message) network calls.
[0030] Development Plan Development: This is an engineering implementation project plan developed based on major milestones, project requirements, personnel, and other resources. The plan clearly defines the development tasks, deliverables, start and end dates, personnel, and other planned arrangements for the development team.
[0031] Tracking Management Method: During project implementation, the progress of each stage and the final project completion deadline are managed. Within the stipulated time, the implementation process of the development plan is tracked, and it is checked whether the actual progress is in accordance with the plan requirements. If deviations occur, the causes should be identified in a timely manner, and necessary remedial measures or adjustments and modifications to the original plan should be taken until the project is completed. The purpose is to ensure that the project achieves its overall objectives while meeting its time constraints.
[0032] As mentioned in the background section, software development in the prior art is inefficient. In order to solve the above problems, in a typical embodiment of this application, a software development management method, apparatus, computer-readable storage medium, processor, and software development system are provided.
[0033] According to an embodiment of this application, a software development management method is provided.
[0034] Figure 1 This is a flowchart of a software development management method according to an embodiment of this application. For example... Figure 1 As shown, the method includes the following steps:
[0035] Step S101: Compile the steps, compile the development baseline, and obtain the development baseline of the main project team and the development baseline of the collaborating project team;
[0036] Step S102, merging step, merging the development baseline of the main project team and the development baseline of the collaborating party project team to obtain the merged development baseline;
[0037] Step S103, tracking step: After the development of the above-mentioned merged development baseline is completed within the predetermined development period, the development progress of the above-mentioned merged development baseline is tracked to obtain the progress tracking result.
[0038] Step S104, update step: update the above-mentioned merged development baseline according to the above progress tracking results to obtain the updated above-mentioned merged development baseline;
[0039] Step S105: Repeat the above tracking steps and update steps at least once until the software development is completed.
[0040] In the aforementioned software development management method, firstly, a development baseline is established, resulting in the development baselines of the main project team and the collaborating project team. Then, a merging step is performed to merge the development baselines of the main project team and the collaborating project team, resulting in a merged development baseline. Next, a tracking step is performed to track the development progress of the merged development baseline after a predetermined development cycle, obtaining a progress tracking result. Following this, an update step is performed to update the merged development baseline based on the progress tracking result, resulting in an updated merged development baseline. Finally, a repetition step is performed, repeating the tracking and update steps until software development is completed. This method merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle. This addresses issues of incomplete development plans discovered during tracking, avoids impacting subsequent testing, improves development efficiency, and solves the problem of low efficiency in existing software development technologies.
[0041] It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases the steps shown or described may be executed in a different order than that shown here.
[0042] The development scope baseline is prepared separately by the main project team and the collaborating project teams. Each main project team and collaborating project team prepares a separate development scope baseline, which includes all development content of this project as the main project team and in cooperation with other projects during the project construction process. The main fields to be filled in for the development scope baseline are shown in Table 1.
[0043] Table 1
[0044]
[0045]
[0046] In one embodiment of this application, the development baseline includes a development scope baseline, which includes information about the development units developing the application functions to be developed. The merging step includes: obtaining a first development scope baseline and a second development scope baseline, wherein the first development scope baseline is the development scope baseline of the main project group and the second development scope baseline is the development scope baseline of the cooperating party project group; and writing the information of the second development scope baseline into the first development scope baseline to obtain the merged development scope baseline of the merged development baseline.
[0047] Specifically, the development baseline preparation steps include: The main project team's development scope baseline. The main project team reviews all development content during the project construction process. Development content not related to this project or system should not be included in the development scope baseline of this project or system; collaborating parties need to fully prepare the development units they developed in cooperation with the main project team; use the merging tool to merge all the main project team and collaborating party development scope baselines into a merged development scope baseline for subsequent development scope baseline comparison, updates, and tracking. Place the development baseline files to be merged into a folder, and select this folder in the development baseline merging tool; the development baseline merging tool automatically extracts the file names from the folder, determines whether the file is a collaborative baseline or a scope baseline. If it is a scope baseline, the development baseline merging tool opens the current main project team's or collaborating party's scope baseline, writes the baseline content into the merged development scope baseline, and adds a field to the baseline to write the file source name and the formulas required for subsequent scope baseline report generation; close the current main project team's or collaborating party's development scope baseline file, open the next file, and repeat this logic until all files in the current folder have been checked.
[0048] The main project team leads the development collaboration baseline, with collaborating parties providing support. Development units across application layers are connected through use case workflows. The main project team uses business events or use case workflows as a starting point to horizontally monitor development units across application layers, systems, or components from a functional perspective, streamlining development work and clarifying cross-team collaborative development tasks according to feature release requirements. Collaborating parties supplement and confirm their own development units while filling in the development units of other collaborating parties they use, and so on, combining this with the development scope baseline to form a functional-perspective development plan. The main fields for the development collaboration baseline are shown in Table 1.
[0049] Table 2
[0050]
[0051]
[0052] In one embodiment of this application, the above-mentioned compilation steps include: obtaining a workflow; determining the application functions and development units of the main project team based on the workflow; determining the application functions and development units of the collaborating project team based on the workflow; generating a first development collaboration baseline based on the application functions and development units of the main project team; and generating a second development collaboration baseline based on the application functions and development units of the collaborating project team. Specifically, the main project team organizes the use case workflow and business events. The main project team fills in the application functions undertaken by this project in the development collaboration baseline, and fills in the corresponding function name, ID, etc. in the use case workflow column, that is, fills in the application function information. Each development unit used in the use case workflow is filled in on one line. If the same development unit is used by multiple use case workflows, it is filled in separately under different use case workflows. The main project team develops a collaborative baseline. Within this baseline, the main project team fills in relevant information for each business event or use case workflow and other application functions to be implemented, along with information on their own developed development units and the development units of the collaborating parties, such as "whether it was developed by another project team," "system name," and "unit name." The collaborating parties confirm whether the information, such as "unit name," filled in by the main project team is consistent with the design of their project and system, and whether splitting or merging is necessary. They modify the information filled in by the main project team and complete any information not filled in by the main project team. Based on the use case workflow and other information filled in by the main project team, the collaborating parties supplement the project and system with other development units that need to be added. The collaborating parties confirm, modify, and compile (if not yet identified in the collaborative baseline) the information of other collaborating parties' development units, and so on for the collaborating parties' collaborating parties.
[0053] In one embodiment of this application, the aforementioned development baseline further includes a development collaboration baseline. This development collaboration baseline includes information on the application functions to be developed and information on the development units that develop the application functions to be developed. The merging step further includes: comparing the aforementioned first development collaboration baseline and the aforementioned second development collaboration baseline to obtain information on duplicate development units; modifying the aforementioned first development collaboration baseline based on the information on duplicate development units to obtain a modified first development collaboration baseline, ensuring that the development tasks of the aforementioned main project team and the aforementioned collaborating party project team do not overlap; and writing the information of the aforementioned second development collaboration baseline into the modified aforementioned first development collaboration baseline to obtain the merged development scope baseline of the merged development baseline. Specifically, a merging tool is used to merge the development collaboration baselines of the main project team and the collaborating party into a merged version of the development collaboration baseline for subsequent development collaboration baseline comparison, updating, and tracking. The development baseline files to be merged are compiled according to the following logic: Place the development baseline files to be merged into a folder and select this folder; the development baseline merging tool automatically extracts the file names in the folder, determines whether the file is a collaborative baseline or a scope baseline. If it is a collaborative baseline, the development scope baseline merging tool opens the collaborative baseline of the main project team or collaborator, writes the baseline content into the merged development collaborative baseline, and adds a field in the baseline to write the file source name; close the current development scope collaborative baseline file of the main project team or collaborator, open the next file, and repeat this logic until all files in the current folder have been checked and the process ends.
[0054] In one embodiment of this application, the tracking steps include: obtaining a first quantity and a second quantity, wherein the first quantity is the number of development units planned to be completed in the previous predetermined period in the merged development baseline, and the second quantity is the number of development units actually completed in the previous predetermined period in the merged development baseline; and determining the progress tracking result based on the first quantity and the second quantity. Specifically, end-to-end tracking is performed from the perspective of different development batch use case workflows on the development collaboration baseline. This mainly involves analyzing the cumulative planned completion and cumulative actual completion of different development batch use case workflows. The current status of the use case workflows (planned completion, delay, early completion, etc.) can be viewed, and the plans and progress of different development batch use case workflows in future tracking periods can be tracked. End-to-end tracking from the perspective of the development collaboration baseline use case workflows mainly involves analyzing the cumulative planned completion and cumulative actual completion of the use case workflows. The current status of the use case workflows (planned completion, delay, early completion, etc.) can be viewed, and the plans and progress of the use case workflows in future tracking periods can be tracked. Specific data on the plans and progress of the relevant development units of the main project team are shown in Table 3.
[0055] Table 3
[0056]
[0057] In one embodiment of this application, determining the progress tracking result based on the first quantity and the second quantity includes: if the first quantity is less than the second quantity, determining the progress tracking result as the development plan for the previous predetermined cycle being completed ahead of schedule; if the first quantity is equal to the second quantity, determining the progress tracking result as the development plan for the previous predetermined cycle being completed; and if the first quantity is greater than the second quantity, determining the progress tracking result as the development plan for the previous predetermined cycle being delayed. Specifically, by statistically tracking the progress status of all development units related to the main project team in the current and previous predetermined cycles of the development scope baseline, and performing statistical analysis from two dimensions—cumulative planned completion and cumulative actual completion—it is possible to view the current status of different development units, such as planned completion, delay, and ahead of schedule, and to track the development unit plans and progress in future tracking cycles. Analyzing the total number, planned completion, and actual completion status of all development units related to the project team from the perspective of specific projects and systems facilitates progress tracking for specific main project teams and collaborators.
[0058] In one embodiment of this application, the update step includes: obtaining a third development scope baseline, wherein the third development scope baseline is the development scope baseline re-formulated by the main project team based on the progress tracking results; comparing the information corresponding to the third development scope baseline and the first development scope baseline to obtain dissimilar information, wherein the dissimilar information includes first information of the third development scope baseline and second information of the first development scope baseline, wherein the first information and the second information are different but correspond to each other; determining whether to update based on the dissimilar information; and if an update is determined, updating the first information of the first development scope baseline to the second information. Specifically, a development baseline change cycle is established based on the actual situation and needs of development baseline changes. The specific change process is as follows: The main project team or collaborating party submits the development scope baseline and development collaboration baseline for this project; a development baseline comparison tool is used to compare the submitted development scope baseline or collaboration baseline with the development scope baseline and collaboration baseline of the previous week. The development baseline comparison tool automatically reads the user-configured development scope baseline fields to be compared and the unique identifier field; the development baseline comparison tool automatically selects the changed development scope baseline file to be compared and the original development scope baseline file; the development baseline comparison tool queries the corresponding data rows in the old and new versions of the file according to the configured unique identifier field, and performs a consistency comparison of the fields to be compared; the development baseline comparison tool outputs a comparison result file, and identifies the differences in the file. Based on the output results of the development baseline comparison tool, a decision is made on the change information to determine whether a change is needed; for the development baseline information that needs to be changed, a development baseline update tool is used to update the baseline. The development baseline update tool automatically compares and updates the content of the changed development scope baseline file with the original development scope baseline file. The development baseline update tool automatically reads the user-configured development scope baseline field to be updated, as well as the unique identifier field, and the data source development scope baseline field and unique identifier field. The development baseline update tool automatically selects the changed development scope baseline file and the original development scope baseline file. Based on the configured unique identifier field, the development baseline update tool queries the corresponding data rows in the changed development scope baseline file and the original development scope baseline file, and uses the changed development scope baseline file to compare and update the original development scope baseline file.
[0059] This application also provides a software development management device. It should be noted that this software development management device can be used to execute the software development management method provided in this application. The software development management device provided in this application is described below.
[0060] Figure 2 This is a schematic diagram of a management device developed according to an embodiment of this application. For example... Figure 2 As shown, the device includes:
[0061] Compilation unit 10 is used to execute compilation steps, compile development baselines, and obtain the development baselines of the main project team and the collaborating project team.
[0062] Merging unit 20 is used to perform the merging step, merging the development baseline of the main project team and the development baseline of the collaborating party project team to obtain a merged development baseline;
[0063] The tracking unit 30 is used to perform tracking steps, and after the predetermined development cycle of the above-mentioned merged development baseline is completed, to track the development progress of the above-mentioned merged development baseline and obtain the progress tracking result.
[0064] The update unit 40 is used to perform the update step, update the above-mentioned merged development baseline according to the above-mentioned progress tracking results, and obtain the updated above-mentioned merged development baseline;
[0065] The repeating unit 50 is used to perform repeating steps, repeating the above tracking steps and the above update steps at least once, until the software development is completed.
[0066] In the aforementioned software development management device, the compilation unit executes a compilation step to compile a development baseline, obtaining the development baselines of the main project team and the collaborating project team; the merging unit executes a merging step to merge the development baselines of the main project team and the collaborating project team, obtaining a merged development baseline; the tracking unit executes a tracking step to track the development progress of the merged development baseline after a predetermined development cycle according to the aforementioned merged development baseline, obtaining a progress tracking result; the updating unit executes an updating step to update the merged development baseline according to the aforementioned progress tracking result, obtaining an updated merged development baseline; and the repeating unit executes a repeating step to repeat the aforementioned tracking and updating steps until the software development is completed. This device merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle, thereby addressing the issue of incomplete development plans discovered during tracking, avoiding impact on subsequent testing, improving development efficiency, and solving the problem of low efficiency in existing software development technologies.
[0067] In one embodiment of this application, the development baseline includes a development scope baseline, which includes information about development units that develop application functions to be developed. The merging unit includes a first acquisition module and a first processing module. The first acquisition module is used to acquire a first development scope baseline and a second development scope baseline. The first development scope baseline is the development scope baseline of the main project group, and the second development scope baseline is the development scope baseline of the collaborating party project group. The first processing module is used to write the information of the second development scope baseline into the first development scope baseline to obtain the merged development scope baseline of the merged development baseline.
[0068] Specifically, the development baseline preparation steps include: The main project team's development scope baseline. The main project team reviews all development content during the project construction process. Development content not related to this project or system should not be included in the development scope baseline of this project or system; collaborating parties need to fully prepare the development units they developed in cooperation with the main project team; use the merging tool to merge all the main project team and collaborating party development scope baselines into a merged development scope baseline for subsequent development scope baseline comparison, updates, and tracking. Place the development baseline files to be merged into a folder, and select this folder in the development baseline merging tool; the development baseline merging tool automatically extracts the file names from the folder, determines whether the file is a collaborative baseline or a scope baseline. If it is a scope baseline, the development baseline merging tool opens the current main project team's or collaborating party's scope baseline, writes the baseline content into the merged development scope baseline, and adds a field to the baseline to write the file source name and the formulas required for subsequent scope baseline report generation; close the current main project team's or collaborating party's development scope baseline file, open the next file, and repeat this logic until all files in the current folder have been checked.
[0069] In one embodiment of this application, the compilation unit includes a second acquisition module, a first determination module, a second determination module, a first generation module, and a second generation module. The second acquisition module acquires the workflow; the first determination module determines the application functions and development units of the main project team based on the workflow; the second determination module determines the application functions and development units of the collaborating project team based on the workflow; the first generation module generates a first development collaboration baseline based on the application functions and development unit information of the main project team; and the second generation module generates a second development collaboration baseline based on the application functions and development units of the collaborating project team. Specifically, the main project team organizes the use case workflow and business events. The main project team fills in the application functions undertaken by the project in the development collaboration baseline and fills in the corresponding function names, IDs, etc., in the use case workflow column, i.e., fills in the application function information. Each development unit used in the use case workflow is filled in on one line. If the same development unit is used by multiple use case workflows, it is filled in separately under different use case workflows. The main project team develops a collaborative baseline. Within this baseline, the main project team fills in relevant information for each business event or use case workflow and other application functions to be implemented, along with information on their own developed development units and the development units of the collaborating parties, such as "whether it was developed by another project team," "system name," and "unit name." The collaborating parties confirm whether the information, such as "unit name," filled in by the main project team is consistent with the design of their project and system, and whether splitting or merging is necessary. They modify the information filled in by the main project team and complete any information not filled in by the main project team. Based on the use case workflow and other information filled in by the main project team, the collaborating parties supplement the project and system with other development units that need to be added. The collaborating parties confirm, modify, and compile (if not yet identified in the collaborative baseline) the information of other collaborating parties' development units, and so on for the collaborating parties' collaborating parties.
[0070] In one embodiment of this application, the aforementioned development baseline further includes a development collaboration baseline. This development collaboration baseline includes information on the application function to be developed and information on the development units that develop the application function. The merging unit further includes a first comparison module, a second processing module, and a third processing module. The first comparison module compares the first and second development collaboration baselines to obtain information on duplicate development units. The second processing module modifies the first development collaboration baseline based on the duplicate development unit information to obtain a modified first development collaboration baseline, ensuring that the development tasks of the main project team and the collaborating party project team do not overlap. The third processing module writes the information from the second development collaboration baseline into the modified first development collaboration baseline, obtaining the merged development scope baseline of the merged development baseline. Specifically, a merging tool is used to merge the development collaboration baselines of the main project team and the collaborating party into a merged version of the development collaboration baseline for subsequent development collaboration baseline comparison, updates, and tracking. The development baseline files to be merged are compiled according to the following logic: Place the development baseline files to be merged into a folder and select this folder; the development baseline merging tool automatically extracts the file names in the folder, determines whether the file is a collaborative baseline or a scope baseline. If it is a collaborative baseline, the development scope baseline merging tool opens the collaborative baseline of the main project team or collaborator, writes the baseline content into the merged development collaborative baseline, and adds a field in the baseline to write the file source name; close the current development scope collaborative baseline file of the main project team or collaborator, open the next file, and repeat this logic until all files in the current folder have been checked and the process ends.
[0071] In one embodiment of this application, the tracking unit includes a third acquisition module and a third determination module. The third acquisition module acquires a first quantity and a second quantity. The first quantity is the number of development units planned to be completed in the previous predetermined period of the merged development baseline, and the second quantity is the number of development units actually completed in the previous predetermined period of the merged development baseline. The determination module determines the progress tracking result based on the first quantity and the second quantity. Specifically, end-to-end tracking of use case workflows for different development batches is performed from the perspective of the development collaboration baseline. This mainly involves analyzing the cumulative planned completion and cumulative actual completion of use case workflows for different development batches. The current status of use case workflows (planned completion, delay, early completion, etc.) can be viewed, and the plan and progress of use case workflows for different development batches in future tracking periods can be tracked. End-to-end tracking of use case workflows from the perspective of the development collaboration baseline mainly involves analyzing the cumulative planned completion and cumulative actual completion of use case workflows. The current status of use case workflows (planned completion, delay, early completion, etc.) can be viewed, and the plan and progress of use case workflows in future tracking periods can be tracked.
[0072] In one embodiment of this application, the third determining module includes a first determining submodule and a second determining submodule. The first determining submodule is used to determine that the progress tracking result is an early completion of the development plan for the previous predetermined cycle when the first quantity is less than the second quantity; the second determining submodule is used to determine that the progress tracking result is a completion of the development plan for the previous predetermined cycle when the first quantity is equal to the second quantity; and to determine that the progress tracking result is a delayed completion of the development plan for the previous predetermined cycle when the first quantity is greater than the second quantity. Specifically, by statistically tracking the progress of all development units related to the main project team in the current and previous predetermined cycles of the development scope baseline, and performing statistical analysis from two dimensions—cumulative planned completion and cumulative actual completion—it is possible to view the current status of different development units, such as planned completion, delay, and early completion, and to track the development unit plans and progress in future tracking cycles. Analyzing the total number, planned completion, and actual completion of all development units related to the project team from the perspective of specific projects and systems facilitates progress tracking for specific main project teams and collaborators.
[0073] In one embodiment of this application, the updating unit includes a fourth acquisition module, a second comparison module, a fourth determination module, and an updating module. The fourth acquisition module acquires a third development scope baseline, which is the development scope baseline redefined by the main project team based on the progress tracking results. The second comparison module compares the information corresponding to the third development scope baseline and the first development scope baseline to obtain dissimilar information. This dissimilar information includes first information of the third development scope baseline and second information of the first development scope baseline, which are different but correspond to each other. The fourth determination module determines whether to update based on the dissimilar information. The updating module, if an update is determined, updates the first information of the first development scope baseline to the second information. Specifically, a development baseline change cycle is established based on the actual situation and needs of development baseline changes. The specific change process is as follows: The main project team or collaborating party submits the development scope baseline and development collaboration baseline for this project; a development baseline comparison tool is used to compare the submitted development scope baseline or collaboration baseline with the development scope baseline and collaboration baseline of the previous week. The development baseline comparison tool automatically reads the user-configured development scope baseline fields to be compared and the unique identifier field; the development baseline comparison tool automatically selects the changed development scope baseline file to be compared and the original development scope baseline file; the development baseline comparison tool queries the corresponding data rows in the old and new versions of the file according to the configured unique identifier field, and performs a consistency comparison of the fields to be compared; the development baseline comparison tool outputs a comparison result file, and identifies the differences in the file. Based on the output results of the development baseline comparison tool, a decision is made on the change information to determine whether a change is needed; for the development baseline information that needs to be changed, a development baseline update tool is used to update the baseline. The development baseline update tool automatically compares and updates the content of the changed development scope baseline file with the original development scope baseline file. The development baseline update tool automatically reads the user-configured development scope baseline field to be updated, as well as the unique identifier field, and the data source development scope baseline field and unique identifier field. The development baseline update tool automatically selects the changed development scope baseline file and the original development scope baseline file. Based on the configured unique identifier field, the development baseline update tool queries the corresponding data rows in the changed development scope baseline file and the original development scope baseline file, and uses the changed development scope baseline file to compare and update the original development scope baseline file.
[0074] This invention also provides a software development system, including a software development management device, which is used to execute any of the above-described methods.
[0075] The aforementioned software development system includes a software development management device. A compilation unit executes compilation steps to compile a development baseline, obtaining the development baselines of the main project team and the collaborating project team. A merging unit executes merging steps to merge the development baselines of the main project team and the collaborating project team, obtaining a merged development baseline. A tracking unit executes tracking steps to track the development progress of the merged development baseline after a predetermined development cycle, obtaining a progress tracking result. An updating unit executes updating steps to update the merged development baseline based on the progress tracking result, obtaining an updated merged development baseline. A repeating unit executes repeating steps, repeating the tracking and updating steps until software development is completed. This system merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of development progress and updates the merged development baseline in the next predetermined cycle. This addresses issues of incomplete development plans discovered during tracking, avoids impacting subsequent testing, improves development efficiency, and solves the problem of low software development efficiency in existing technologies.
[0076] The aforementioned software development management device includes a processor and a memory. The aforementioned merging unit, tracking unit, updating unit, and repeating unit are all stored in the memory as program units, and the processor executes the aforementioned program units stored in the memory to realize the corresponding functions.
[0077] A processor contains a kernel, which retrieves the corresponding program units from memory. One or more kernels can be configured, and adjusting kernel parameters can address the problem of low efficiency in existing software development technologies.
[0078] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0079] This invention provides a computer-readable storage medium having a program stored thereon, which, when executed by a processor, implements the above-described method.
[0080] This invention provides a processor for running a program, wherein the program executes the method described above during runtime.
[0081] This invention provides a device including a processor, a memory, and a program stored in the memory and executable on the processor. When the processor executes the program, it performs at least the following steps:
[0082] Step S101: Compile the steps, compile the development baseline, and obtain the development baseline of the main project team and the development baseline of the collaborating project team;
[0083] Step S102, merging step, merging the development baseline of the main project team and the development baseline of the collaborating party project team to obtain the merged development baseline;
[0084] Step S103, tracking step: After the development of the above-mentioned merged development baseline is completed within the predetermined development period, the development progress of the above-mentioned merged development baseline is tracked to obtain the progress tracking result.
[0085] Step S104, update step: update the above-mentioned merged development baseline according to the above progress tracking results to obtain the updated above-mentioned merged development baseline;
[0086] Step S105: Repeat the above tracking steps and update steps at least once until the software development is completed.
[0087] The devices mentioned in this article can be servers, PCs, tablets, mobile phones, etc.
[0088] This application also provides a computer program product, which, when executed on a data processing device, is suitable for executing an initialization program having at least the following method steps:
[0089] Step S101: Compile the steps, compile the development baseline, and obtain the development baseline of the main project team and the development baseline of the collaborating project team;
[0090] Step S102, merging step, merging the development baseline of the main project team and the development baseline of the collaborating party project team to obtain the merged development baseline;
[0091] Step S103, tracking step: After the development of the above-mentioned merged development baseline is completed within the predetermined development period, the development progress of the above-mentioned merged development baseline is tracked to obtain the progress tracking result.
[0092] Step S104, update step: update the above-mentioned merged development baseline according to the above progress tracking results to obtain the updated above-mentioned merged development baseline;
[0093] Step S105: Repeat the above tracking steps and update steps at least once until the software development is completed.
[0094] In the above embodiments of the present invention, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0095] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units described above can be a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0096] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0097] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0098] If the aforementioned integrated units are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a computer-readable storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned computer-readable storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0099] As can be seen from the above description, the embodiments of this application achieve the following technical effects:
[0100] 1) In the software development management method of this application, firstly, a development baseline is compiled to obtain the development baseline of the main project team and the development baseline of the collaborating project team; then, a merging step is performed to merge the development baselines of the main project team and the collaborating project team to obtain a merged development baseline; then, a tracking step is performed to track the development progress of the merged development baseline after a predetermined development cycle according to the above-mentioned merged development baseline, and obtain a progress tracking result; then, an updating step is performed to update the merged development baseline according to the above-mentioned progress tracking result, and obtain an updated merged development baseline; finally, a repetition step is performed to repeat the above-mentioned tracking step and the above-mentioned updating step until the software development is completed. This method merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle, thereby solving the problem of incomplete development plans discovered during tracking, avoiding impact on subsequent testing, improving development efficiency, and solving the problem of low efficiency in software development in the prior art.
[0101] 2) In the software development management device of this application, the compilation unit performs a compilation step to compile a development baseline, obtaining the development baseline of the main project team and the development baseline of the collaborating party project team; the merging unit performs a merging step to merge the development baselines of the main project team and the collaborating party project team to obtain a merged development baseline; the tracking unit performs a tracking step to track the development progress of the merged development baseline after a predetermined development cycle according to the above-mentioned merged development baseline, obtaining a progress tracking result; the updating unit performs an updating step to update the merged development baseline according to the above-mentioned progress tracking result, obtaining an updated merged development baseline; the repeating unit performs a repeating step to repeat the above-mentioned tracking step and the above-mentioned updating step until the software development is completed. This device merges the development baselines of the main project team and the collaborating party project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle, thereby solving the problem of incomplete development plans discovered during tracking, avoiding impact on subsequent testing, improving development efficiency, and solving the problem of low efficiency in software development in the prior art.
[0102] 3) The software development system of this application includes a software development management device. A compilation unit executes compilation steps to compile a development baseline, obtaining the development baseline of the main project team and the development baseline of the collaborating project team. A merging unit executes merging steps to merge the development baselines of the main project team and the collaborating project team, obtaining a merged development baseline. A tracking unit executes tracking steps to track the development progress of the merged development baseline after a predetermined development cycle, obtaining a progress tracking result. An updating unit executes updating steps to update the merged development baseline based on the progress tracking result, obtaining an updated merged development baseline. A repeating unit executes repeating steps to repeat the tracking and updating steps until software development is completed. This system merges the development baselines of the main project team and the collaborating project team to facilitate subsequent tracking of the development progress of the development baselines and updates the merged development baseline in the next predetermined cycle. This addresses the issue of incomplete development plans discovered during tracking, avoids impacting subsequent testing, improves development efficiency, and solves the problem of low efficiency in software development in the prior art.
[0103] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A management method of software development, characterized by, The method comprises the following steps: a compiling step of compiling development baselines to obtain a development baseline of a main project team and a development baseline of a partner project team, the development baseline comprising a development scope baseline and a development collaboration baseline; a merging step of merging the development baseline of the main project team and the development baseline of the partner project team to obtain a merged development baseline; a tracking step of tracking the development progress of the merged development baseline after a predetermined period of development according to the merged development baseline to obtain a progress tracking result; an updating step of updating the merged development baseline according to the progress tracking result to obtain an updated merged development baseline; a repeating step of repeating the tracking step and the updating step at least once until the software development is completed; the compiling step comprises the following steps: obtaining a workflow; determining the application functions and development units of the main project team according to the workflow; determining the application functions and development units of the partner project team according to the workflow; generating a first development collaboration baseline according to the information of the application functions and development units of the main project team; and generating a second development collaboration baseline according to the application functions and development units of the partner project team; the updating step comprises the following steps: obtaining a third development scope baseline, the third development scope baseline being a development scope baseline re-established by the main project team according to the progress tracking result; comparing the information corresponding to the third development scope baseline and a first development scope baseline to obtain different information, the first development scope baseline being the development scope baseline of the main project team, the different information comprising first information of the third development scope baseline and second information of the first development scope baseline, the first information and the second information being different and corresponding; determining whether to update according to the different information; and in the case of determining to update, updating the first information of the first development scope baseline to the second information, the first development scope baseline being the development scope baseline of the main project team.
2. The method of claim 1, wherein, The development baseline comprises a development scope baseline, the development scope baseline comprising information of a development unit of an application function to be developed, and the merging step comprises the following steps: obtaining a first development scope baseline and a second development scope baseline, the second development scope baseline being the development scope baseline of the partner project team; writing the information of the second development scope baseline into the first development scope baseline to obtain a merged development scope baseline of the merged development baseline.
3. The method of claim 1, wherein, The development baseline further comprises a development collaboration baseline, the development collaboration baseline comprising information of an application function to be developed and information of a development unit of the application function to be developed, and the merging step further comprises the following steps: comparing the first development collaboration baseline and the second development collaboration baseline to obtain information of the repeated development unit; modifying the first development collaboration baseline according to the information of the repeated development unit to obtain a modified first development collaboration baseline, so that the development tasks of the main project team and the partner project team are not repeated. write information of the second development collaboration baseline into the modified first development collaboration baseline to obtain a merge development range baseline of the merge development baseline.
4. The method of claim 1, wherein, The tracking step comprises: obtaining a first quantity and a second quantity, the first quantity being a quantity of development units planned to be completed in a last predetermined period in the merge development baseline, and the second quantity being a quantity of development units actually completed in the last predetermined period in the merge development baseline; determining the progress tracking result according to the first quantity and the second quantity.
5. The method of claim 4, wherein, Determining the progress tracking result according to the first quantity and the second quantity comprises: in a case where the first quantity is less than the second quantity, determining that the progress tracking result is that the development plan of the last predetermined period is completed in advance; in a case where the first quantity is equal to the second quantity, determining that the progress tracking result is that the development plan of the last predetermined period is completed; in a case where the first quantity is greater than the second quantity, determining that the progress tracking result is that the development plan of the last predetermined period is completed in delay.
6. A management apparatus of software development characterized by comprising: comprises: a compiling unit configured to perform the compiling step, and compile development baselines to obtain a development baseline of a main project team and a development baseline of a partner project team; a merging unit configured to perform the merging step, and merge the development baseline of the main project team and the development baseline of the partner project team to obtain a merge development baseline; a tracking unit configured to perform the tracking step, and track a development progress of the merge development baseline after a predetermined period of development according to the merge development baseline to obtain a progress tracking result; an updating unit configured to perform the updating step, and update the merge development baseline according to the progress tracking result to obtain an updated merge development baseline; a repeating unit configured to perform the repeating step, and repeat the tracking step and the updating step at least once until software development is completed; The compiling unit comprises a second obtaining module, a first determining module, a second determining module, a first generating module and a second generating module, wherein the second obtaining module is configured to obtain a workflow; the first determining module is configured to determine application functions and development units of the main project team according to the workflow; the second determining module is configured to determine application functions and development units of the partner project team according to the workflow; the first generating module is configured to generate a first development collaboration baseline according to information of the application functions and the development units of the main project team; and the second generating module is configured to generate a second development collaboration baseline according to the application functions and the development units of the partner project team. The updating unit comprises a fourth acquisition module, a second comparison module, a fourth determination module and an updating module, wherein the fourth acquisition module is configured to acquire a third development scope baseline, the third development scope baseline being a development scope baseline re-established by the main project team according to the progress tracking result; the second comparison module is configured to compare information corresponding to the third development scope baseline and the first development scope baseline to obtain different information, the different information comprising first information of the third development scope baseline and second information of the first development scope baseline, the first information and the second information being different and corresponding; the fourth determination module is configured to determine whether to update according to the different information; and the updating module is configured to update the first information of the first development scope baseline to the second information in the case of determining to update, the first development scope baseline being the development scope baseline of the main project team.
7. A computer-readable storage medium, characterized in that, The computer readable storage medium comprises a stored program, wherein the program executes the method of any one of claims 1 to 5.
8. A processor, comprising: The processor is configured to run a program, wherein the program executes the method of any one of claims 1 to 5 when running.
9. A software development system comprising a management apparatus of software development, characterized by, The software development management device is configured to execute the method of any one of claims 1 to 5.
Citation Information
Patent Citations
Project coordination method and device based on micro-servitization architecture and storage medium
CN110705956A
Task plan processing system, method and device
CN112884455A