A software development management system and method
By combining software development management systems that combine blockchain technology, it solves the problem of difficulty to meet the needs of rapid changes in projects, realizes real -time project monitoring and risk prediction, and improves software development efficiency and quality.
Patent Information
- Application Number
- CN202410941558.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-15
- Publication Date
- 2025-01-28
- Estimated Expiration
- 2044-07-15
AI Technical Summary
Traditional software development management methods are difficult to adapt to rapidly changing project needs and dynamic technical environments, resulting in increased project management complexity, inability to effectively monitor and adjust project progress, and lack the ability to predict and prevent potential risks.
A software development management system combined with blockchain technology, including project management modules, demand management modules, code management modules, test management modules, defect management modules and team collaboration and communication modules, ensure the complete data through blockchain technology Sexuality, transparency and non -tampering, realize real -time project monitoring and adjustment, predict and prevent risk.
The efficiency of software development has been improved, the error rate is reduced, and the project is carried out smoothly according to the plan, improved customer satisfaction, reduced project risks and costs, optimized the development process, and improved the quality and efficiency of software development.
Smart Images

Figure CN118552159B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of management systems, and in particular relates to a software development management system and method. Background Art
[0002] Software development management involves planning, organizing, monitoring, and controlling software projects from planning to implementation. It encompasses the management of project scope, timelines, costs, and quality, ensuring projects are completed on time, to quality, and within budget. Software development management emphasizes the importance of teamwork, requirements analysis, and design, as well as the necessity of testing and quality assurance. Effective management can improve project success rates and customer satisfaction, while reducing project risks and costs, optimizing development processes, and enhancing the quality and efficiency of software development.
[0003] With the rapid development of information technology, software development projects are becoming increasingly complex. This complexity complicates project management, and traditional project management methods are no longer able to meet these rapidly changing project requirements and evolving technological environments. Therefore, there is an urgent need for a more efficient and intelligent software development management system to ensure the smooth progress and implementation of projects. Such a system must be able to flexibly adapt to various changes, provide real-time project monitoring and adjustment mechanisms, and ensure that projects maintain the correct direction and pace in a dynamically changing environment. Furthermore, it must be able to predict and prevent potential risks, optimize resource allocation, improve development team efficiency, and ultimately achieve project goals accurately. Furthermore, to address these issues and ensure information integrity, it is necessary to explore technical solutions that incorporate blockchain technology to enhance the information security of software development management systems. Summary of the Invention
[0004] In response to the problems existing in the prior art, the present invention provides a software development management system and method, which has the advantages of improving software development efficiency and reducing error rate, and solves the problems of the prior art.
[0005] The present invention is implemented as follows: a software development management system includes a central processing module, the central processing module is signal-connected to a project management module, a requirement management module, a code management module, a test management module, a defect management module, and a team collaboration and communication module, wherein:
[0006] Project Management Module: Incorporating blockchain technology to create project plans, assign tasks, monitor progress, manage documents, and provide file reports and analysis, allowing project teams to stay informed of project status and make appropriate adjustments.
[0007] Requirements Management Module: Combined with blockchain technology, it collects, organizes, analyzes, and tracks software project requirements, performs requirement classification, prioritization, and version control, enabling project teams to accurately understand and meet user needs;
[0008] Code management module: Combined with blockchain technology, it improves code quality and maintainability through source code version control, code review, code merging, and code deployment, and improves development efficiency through branch management;
[0009] Test management module: This module uses blockchain technology to conduct testing through at least one of the following methods: test case management, test plan development, test execution, and test result analysis, ensuring that the software is fully verified and tested before release.
[0010] Defect Management Module: This module uses blockchain technology to track and manage defects and issues found in software projects. It integrates the processes of defect entry, classification, allocation, resolution, and verification, and provides statistical and analytical functions to enable project teams to understand the distribution and trends of defects.
[0011] Team collaboration and communication module: By combining blockchain technology and providing a variety of team collaboration and communication tools and methods, it supports real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks.
[0012] As a preferred embodiment of the present invention, a task-based communication module is further included. The task-based communication module is signal-connected to the project management module, the code management module, and the team collaboration and communication module. The task-based communication module includes the following units:
[0013] Task box design and display unit: Multiple task boxes are designed in the display interface, each of which is used to display a single task. In addition to displaying the task name or description, the task box also features a progress bar or percentage to display the task's execution progress in real time. A time statistics function is also added so that staff can intuitively understand the completion status of the task. The display interface layout is the same for everyone to ensure consistency and readability of information.
[0014] Real-time communication channel generation unit: When the code of a task is completed or updated, the system automatically seals the code of the task and generates an independent communication channel for it. This communication channel is associated with the task and displayed on the corresponding task box. Each task has a corresponding real-time communication channel to facilitate subsequent communication and collaboration;
[0015] The task communication request and response unit, when it is necessary to communicate with the task executor about a task, wakes up the task box where the task is located through the preset first command and sends a communication request. On the task executor's interface, the task box of the task lights up, indicating a new communication request. The task executor can choose to respond through the preset second command;
[0016] Screen sharing and voice communication unit: When the task executor chooses to agree to the communication request, the corresponding task box is automatically enlarged to the magnified mode on both parties' computers, and the specific content of the task is displayed inside the task box. The system also activates the screen sharing function, allowing both parties to view and discuss the content of the task in real time. It also supports voice communication function to ensure real-time and efficient communication.
[0017] The interactive feedback and operation optimization unit collects user interaction feedback in real time throughout the communication process. Based on this feedback, the system continuously optimizes the operation experience and communication efficiency, ensuring that staff can communicate and collaborate on tasks more conveniently and quickly.
[0018] Task calling unit: people within the set range are allowed to drag and drop task contents in the task box, thereby quickly calling the corresponding task contents.
[0019] As a preferred embodiment of the present invention, the task-based communication module also includes a split-screen viewing and multi-tasking processing unit: if two tasks belong to the same executor, when communicating, the two tasks will be enlarged at the same time on the same computer, and the executor will view and process two related tasks at the same time, reducing the time and energy consumption of task switching.
[0020] As a preferred embodiment of the present invention, the task-based communication module includes a task box border functional component, and the task box border functional component includes:
[0021] Communicate application and merge task content units to:
[0022] Drag content: The staff drags the content in task A to task B through a certain border;
[0023] Automatically trigger a communication request: After the system detects the drag operation, it automatically triggers a communication request and sends a communication request to the executor of Task B;
[0024] Content merging: When the executor of Task B agrees to the communication request, the system will merge the contents of Task A and Task B and display them in the same task box;
[0025] Real-time discussion: Through screen sharing and voice communication, staff can discuss the merged content in real time to ensure that both parties have a common understanding of the task content;
[0026] Content integration and testing unit, used for:
[0027] Drag content: The staff drags the content in one task box to another task box through the bottom border;
[0028] Content fusion: The system automatically merges the contents of the two task boxes to generate a new code module;
[0029] Automatic testing: The system tests the merged code modules to check for errors or conflicts.
[0030] Result feedback: After the test is completed, the system will feedback the test results to the staff.
[0031] As a preferred embodiment of the present invention, the task box border functional component further includes:
[0032] Box-linked documents or resource units: When the user hovers the mouse over one of the borders of a task box, a pop-up menu will be displayed, allowing the user to quickly link to documents, images, and codes related to the task. After clicking these links, the documents, images, and codes related to the task will be opened directly in a window next to the task box, making it easy for users to refer to them at any time while working on the task;
[0033] Quickly add annotation unit to the border: users can quickly add annotations or notes to the task by clicking one of the borders of the task box. The annotations will be displayed directly on the border of the task box or as a floating text box for other team members to view;
[0034] Set reminder or deadline unit: Users click one of the borders of the task box to pop up a date picker for setting a reminder or deadline for the task. After setting the date, the system will remind the user and relevant team members through desktop notifications or emails at the specified time;
[0035] Border corner trigger task priority adjustment unit: users can quickly adjust the priority of a task by clicking a corner point of the task box.
[0036] As a preferred embodiment of the present invention, the task-based communication module further includes a third-party communication component, and the third-party communication component includes:
[0037] Third-party access request and permission management unit: A third-party user sends an access request to the two parties currently communicating through the interface or command provided by the system. When an access request is received, the two parties or the task manager will receive a notification and choose whether to agree to the request;
[0038] Extension unit of real-time communication channel: once a third party is allowed to access, the system will extend the current communication channel in real time to include the third party user;
[0039] Multi-user screen sharing and voice communication unit: when a third party accesses the unit, its screen automatically switches to the corresponding zoom mode and displays the content being shared.
[0040] As a preferred embodiment of the present invention, the task-based communication module further includes a communication channel destruction component, and the communication channel destruction component includes the following units:
[0041] Task completion detection subunit: used to monitor the completion status of all tasks, and to determine whether a task has been completed by checking the progress bar or percentage of each task box and whether a signal confirming the completion of the task has been received from the task executor;
[0042] Archiving Processing Unit: When the task completion detection unit confirms that all tasks have been completed, the archiving processing unit is triggered to package and archive the task codes and documents for storage;
[0043] Communication channel management unit: When all tasks are completed and archived, the communication channel management unit disconnects the communication channels associated with these tasks;
[0044] Task clearing unit: After the communication channel is disconnected, the task clearing unit removes the task boxes related to the completed and archived tasks from the display interface;
[0045] Data destruction unit: After the archiving process is completed, while destroying the session key, the destroyed session key is transformed and dispersed, and then randomly inserted into the data to be destroyed, thereby destroying the information carried in the data, and then the data is destroyed.
[0046] As a preferred embodiment of the present invention, the communication channel management unit includes a communication channel and task matching subunit: used for regulating the number of communication channels and tasks, matching multiple communication channels for one task, or associating multiple tasks to the same communication channel.
[0047] A software development management method uses the software development management system and includes the following steps:
[0048] Integrate blockchain technology to create project plans, assign tasks, monitor progress, manage documents, and conduct file reports and analysis, so that project teams can understand the project status in a timely manner and make corresponding adjustments;
[0049] Combined with blockchain technology, it collects, organizes, analyzes and tracks software project requirements, classifies, prioritizes and version controls requirements, enabling project teams to accurately understand and meet user needs;
[0050] Integrating blockchain technology to improve code quality and maintainability through source code version control, code review, code merging, and code deployment, and improving development efficiency through branch management;
[0051] Integrate blockchain technology to conduct testing through at least one of test case management, test plan development, test execution, and test result analysis to ensure that the software is fully verified and tested before release;
[0052] By combining blockchain technology to track and manage defects and issues found in software projects, and integrating the defect entry, classification, allocation, resolution, and verification processes, it provides statistical and analytical functions, enabling project teams to understand the distribution and trends of defects.
[0053] Combining blockchain technology with a variety of team collaboration and communication tools and methods, it supports real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks.
[0054] Compared with the prior art, the present invention has the following beneficial effects:
[0055] The requirements management module's precise requirements collection and analysis capabilities enable project teams to more accurately meet user needs and improve customer satisfaction. The code management module, through version control and code review, improves code quality and maintainability, reducing subsequent maintenance costs. The comprehensive testing capabilities of the test management module ensure software stability and reliability before release. The defect management module, through defect tracking and management, helps project teams understand defect distribution and trends, providing a basis for software quality improvement. Furthermore, the team collaboration and communication module provides a variety of collaboration and communication tools, facilitating real-time communication and collaboration among team members and improving work efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] Figure 1 is a block diagram of a software development and management system provided by an embodiment of the present invention;
[0057] Figure 2 is a schematic diagram of a task interface provided by an embodiment of the present invention;
[0058] Figure 3 It is a framework of the task-based communication module provided by the embodiment of the present invention. Figure 1 ;
[0059] Figure 4 It is a framework of the task-based communication module provided by the embodiment of the present invention. Figure 2 ;
[0060] Figure 5 is a block diagram of a functional component of a task box border provided by an embodiment of the present invention;
[0061] Figure 6 is a block diagram of a third-party communication component provided by an embodiment of the present invention;
[0062] Figure 7 This is a frame of the communication channel destruction component provided by the embodiment of the present invention. Figure 1 ;
[0063] Figure 8 This is a frame of the communication channel destruction component provided by the embodiment of the present invention. Figure 2 . DETAILED DESCRIPTION
[0064] In order to further understand the content, features and effects of the present invention, the following embodiments are given as examples and described in detail with reference to the accompanying drawings.
[0065] The structure of the present invention is described in detail below with reference to the accompanying drawings.
[0066] See Figures 1-8 An embodiment of the present invention provides a software development management system, including a central processing module, wherein the central processing module is signal-connected to a project management module, a requirement management module, a code management module, a test management module, a defect management module, and a team collaboration and communication module, wherein:
[0067] Project Management Module: Incorporating blockchain technology to create project plans, assign tasks, monitor progress, manage documents, and provide file reports and analysis, allowing project teams to stay informed of project status and make appropriate adjustments.
[0068] Requirements Management Module: Combined with blockchain technology, it collects, organizes, analyzes, and tracks software project requirements, performs requirement classification, prioritization, and version control, enabling project teams to accurately understand and meet user needs;
[0069] Code management module: Combined with blockchain technology, it improves code quality and maintainability through source code version control, code review, code merging, and code deployment, and improves development efficiency through branch management;
[0070] Test management module: This module uses blockchain technology to conduct testing through at least one of the following methods: test case management, test plan development, test execution, and test result analysis, ensuring that the software is fully verified and tested before release.
[0071] Defect Management Module: This module uses blockchain technology to track and manage defects and issues found in software projects. It integrates the processes of defect entry, classification, allocation, resolution, and verification, and provides statistical and analytical functions to enable project teams to understand the distribution and trends of defects.
[0072] Team collaboration and communication module: By combining blockchain technology and providing a variety of team collaboration and communication tools and methods, it supports real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks.
[0073] Among them, the function table of the software development management system is as follows:
[0074] Project Management Module Function Table
[0075] Function describe Create a project plan Help project teams develop detailed project plans, including task assignments, timelines, and resource allocation Assign tasks Assign tasks to team members according to the project plan, ensuring everyone has a clear understanding of their responsibilities and tasks Monitor progress Track project progress, identify and resolve project problems and risks in a timely manner, and ensure that the project proceeds as planned Manage documents and file reports Centrally manage project-related documents and files to facilitate team members to access and collaborate, and generate various reports, such as project progress reports, problem reports, etc. Analysis functions Through data analysis, the project team can understand the project status, identify potential problems and opportunities, and provide a basis for project adjustments.
[0076] Demand Management Module Function Table
[0077] Function describe Requirements Gathering Collect user requirements for software projects through various means Demand organization Classify, organize and analyze the collected requirements Demand Tracking Track the status of requirements and update changes in requirements in a timely manner Demand Classification Classify the needs into different categories according to their characteristics Prioritization Sort by urgency and importance of needs Version Control Perform version control on requirement documents to ensure their accuracy Requirements change management Manage requirement changes to ensure the project team can respond to changes in a timely manner
[0078] Code management module function table
[0079] Function describe Version Control Ensure code quality and maintainability through version control Code Review Review code to ensure code quality Code Merge Merge code from different branches into the main branch Code deployment Deploy the code to production Branch Management Improve development efficiency through branch management
[0080] Test Management Module Detailed Information Table
[0081] Module Function Specific content Test case management Through test case management, test cases can be effectively stored, tracked and maintained to ensure the comprehensiveness and consistency of testing. Test plan development Develop test plans, arrange test resources, and ensure that test activities are carried out as planned to verify whether software functions and performance meet requirements. Test Execution Execute test cases according to the test plan, record test results, and promptly discover and feedback software problems. Test result analysis Analyze test results, evaluate software quality, and provide a basis for software improvement. Test Type Combine multiple test types such as functional testing, performance testing, compatibility testing, etc. to ensure software quality. Automation tools and frameworks Provide automated testing tools and frameworks to improve testing efficiency and accuracy.
[0082] Defect Management Module Function Table
[0083] Function describe Defect Entry Record and enter newly discovered defects and issues Defect classification Classify defects according to their nature to facilitate management Defect Assignment Assign defects to appropriate team members for processing Defect resolution Team members handle and resolve defects assigned to them Defect Verification Confirm whether the resolved defects meet the expected results Statistics and Analysis Provides data analysis on defect distribution and trends
[0084] Teamwork and Communication Module
[0085] Tools and methods Function Share project information in real time Support team members to view and update project progress in real time Discussion Questions Provide an online discussion platform to facilitate team members to raise and solve problems Exchange ideas Support team members to share and discuss innovative ideas Collaborate to complete tasks Provide task assignment and collaboration tools to help team members complete tasks efficiently
[0086] In the above setup, first, the project management module enables the system to create project plans, assign tasks, and monitor progress, ensuring that projects proceed as planned. Simultaneously, the requirements management module collects, organizes, and analyzes user requirements, providing accurate requirements information to the project team. The code management module ensures code quality and maintainability through methods such as version control and code review. The test management module ensures that software is fully validated before release, while the defect management module tracks and manages defects discovered within the project. Finally, the team collaboration and communication module provides a variety of tools to support real-time communication and collaboration among team members.
[0087] Through the above settings, the project team can understand the project status in real time and make flexible adjustments based on requirements to ensure that the project proceeds smoothly as planned. The precise requirements collection and analysis capabilities of the requirements management module enable the project team to more accurately meet user needs and improve customer satisfaction. The code management module improves code quality and maintainability through version control and code review, reducing subsequent maintenance costs. The comprehensive testing capabilities of the test management module ensure the stability and reliability of the software before release. The defect management module helps the project team understand the distribution and trends of defects through defect tracking and management, providing a basis for software quality improvement. In addition, the team collaboration and communication module provides a variety of collaboration and communication tools to promote real-time communication and collaboration among team members, thereby improving work efficiency.
[0088] The specific solutions and effects of applying blockchain technology to each of the above modules are as follows:
[0089] 1. Integration of central processing module and blockchain
[0090] Data integrity: Blockchain technology ensures data integrity and immutability across all modules in the system. All project data, requirements, code, test results, and defect reports can be securely stored on the blockchain.
[0091] Transparency and auditability: Due to the distributed ledger nature of blockchain, all project stakeholders can view and verify project data in real time, thereby improving the transparency and auditability of the project.
[0092] 2. Blockchain application in project management module
[0093] Project planning and task allocation: Blockchain can record the complete history of project plans and task allocation, including modifications and updates, ensuring that project team members can clearly understand the progress and changes of the project.
[0094] Progress monitoring: The timestamp function on the blockchain can ensure real-time updating and verification of project progress and prevent tampering of progress data.
[0095] 3. Blockchain application of demand management module
[0096] Demand collection and analysis: Blockchain technology can ensure the originality and integrity of requirements and prevent them from being tampered with or misunderstood during the transmission process.
[0097] Requirement version control: Every transaction on the blockchain can be regarded as a version change, so the change history of requirements can be easily tracked.
[0098] 4. Blockchain application of code management module
[0099] Version control: Blockchain can record every submission and change of the code, ensuring the integrity and traceability of the code.
[0100] Code review: Through smart contracts, code review rules can be automatically executed to improve code quality and security.
[0101] 5. Blockchain application of test management module
[0102] Test cases and test plans: Blockchain can ensure the integrity and consistency of test cases and test plans, preventing them from being tampered with during the testing process.
[0103] Test result verification: Test results on the blockchain can be verified by all relevant parties, ensuring the fairness and credibility of the test results.
[0104] 6. Blockchain application in defect management module
[0105] Defect entry and tracking: Blockchain can ensure the transparency and fairness of the defect entry and tracking process, preventing defects from being missed or handled incorrectly.
[0106] Defect statistics and analysis: Based on the defect data on the blockchain, more accurate statistics and analysis can be performed, providing a basis for project improvement.
[0107] 7. Blockchain application of team collaboration and communication module
[0108] Project information sharing: Blockchain can ensure real-time sharing and verification of project information, improving the efficiency of team collaboration.
[0109] Discussion and decision-making records: Blockchain can record all discussions and decision-making processes, ensuring transparency and traceability of communication and collaboration among team members.
[0110] By introducing blockchain technology, software development management systems can further improve the transparency, auditability, and data integrity of projects, providing stronger guarantees for project success.
[0111] Furthermore, existing technologies usually establish communication channels based on staff members, which has several drawbacks:
[0112] First, when communication or task invocation is needed, others don't know who the task's executor is or the task's progress. Therefore, they need to ask the task assigner, who then searches for the task's executor. This makes communication more complex and less efficient.
[0113] Second, when remote communication is needed, when each person has multiple tasks, when a task needs to be communicated, it is necessary to first communicate with the worker corresponding to the task through communication (if the executor of the task is known, otherwise it is necessary to first ask the person who assigns the task). Then the other party finds the task, and then sends the content of the task through the communication software, and then communicates through screen sharing, which is not conducive to improving communication efficiency.
[0114] In order to solve the above problem, a task-based communication module is further included. The task-based communication module is signal-connected to the project management module, the code management module, and the team collaboration and communication module. The task-based communication module includes the following units:
[0115] Task box design and display unit: Multiple task boxes are designed in the display interface, each of which is used to display a single task. In addition to displaying the task name or description, the task box also features a progress bar or percentage to display the task's execution progress in real time. A time statistics function is also added so that staff can intuitively understand the completion status of the task. The display interface layout is the same for everyone to ensure consistency and readability of information.
[0116] Real-time communication channel generation unit: When the code of a task is completed or updated, the system automatically seals the code of the task and generates an independent communication channel for it. This communication channel is associated with the task and displayed on the corresponding task box. Each task has a corresponding real-time communication channel to facilitate subsequent communication and collaboration;
[0117] The task communication request and response unit, when there is a need to communicate with the task executor about a task, uses a preset first command (such as a specific key + double-clicking the mouse) to wake up the task box where the task is located and send a communication request. On the task executor's interface, the task box of the task lights up, indicating a new communication request. The task executor can choose to respond through a preset second command (such as agree, reject, or postpone).
[0118] Screen sharing and voice communication unit: When the task performer chooses to agree to the communication request, the corresponding task box is automatically enlarged to a magnified mode (such as full screen or half screen) on both parties' computers, and the specific content of the task (such as code) is displayed inside the task box. The system also activates the screen sharing function, allowing both parties to view and discuss the content of the task in real time. It also supports voice communication function to ensure real-time and efficient communication.
[0119] The interactive feedback and operation optimization unit collects user interactive feedback in real time throughout the entire communication process, such as the display speed of the task box, the response speed of the communication channel, the stability of screen sharing, etc. Based on this feedback, the system continuously optimizes the operation experience and communication efficiency to ensure that staff can communicate and collaborate on tasks more conveniently and quickly.
[0120] Task calling unit: people within the set range are allowed to drag and drop task contents in the task box, thereby quickly calling the corresponding task contents.
[0121] The above setup works as follows: First, the Task Box Design and Display Unit creates a separate task box for each task on the display interface, displaying the task's progress and time statistics in real time. When the task code is updated, the Real-Time Communication Channel Generation Unit creates a separate communication channel for it and associates it with the task box. When communication regarding a task is needed, the Task Communication Request and Response Unit allows for sending and responding to communication requests, followed by the screen sharing and voice communication units to enable real-time viewing and discussion of task content. Throughout the communication process, the Interactive Feedback and Operation Optimization Unit continuously collects user feedback to optimize the operational experience and communication efficiency.
[0122] The beneficial effects of these settings include: by displaying task progress and communication channels in real time, workers can clearly understand task status and related communication channels, reducing unnecessary inquiries and waiting time. Screen sharing and voice communication functions make remote communication intuitive and efficient, improving the efficiency of problem solving. Furthermore, the interactive feedback and operation optimization unit ensures that the system is continuously optimized based on user feedback, enhancing the user experience. Furthermore, the drag-and-drop function of the task call unit further simplifies the process of calling task content, further improving work efficiency. The entire system helps reduce communication barriers and improve the efficiency and responsiveness of team collaboration.
[0123] Furthermore, the above settings also have the following functions:
[0124] Real-time task progress synchronization and communication: Combining the task box design and display unit with the real-time communication channel generation unit, when a task's progress changes, the system not only updates the progress bar or percentage in the task box but also sends progress update notifications to all relevant personnel via the real-time communication channel. Relevant personnel can immediately view and communicate on the progress.
[0125] Instant Collaboration on Code Updates: When a task's code is updated, the real-time communication channel generation unit stores the new code and creates a new communication channel. Through the task communication request and response unit, all relevant personnel can immediately see the code update notification and collaborate instantly on code changes through screen sharing and voice communication. For example, if the content of Task A is referenced by another task, any changes or modifications to Task A will be automatically sent to the referencing party via the communication channel, ensuring the accuracy of the tasks.
[0126] Visualize Task Dependencies: Added a new feature to the task box design and display unit to visualize task dependencies. This intuitively displays the dependencies between tasks using lines, arrows, or colors. This allows users to more clearly understand which tasks need to be completed first and which tasks can be carried out in parallel, allowing for more efficient work scheduling.
[0127] Automated Task Reminders and Push Notifications: The system automatically generates task reminders and push notifications based on task progress, dependencies, and other information. For example, if a task is behind schedule, the system can automatically send a reminder to the task performer. When a task is completed and triggers the execution of other tasks, the system can automatically push related tasks to relevant personnel. This way, users can ensure smooth progress without having to constantly monitor task status.
[0128] Furthermore, the task-based communication module also includes a split-screen viewing and multi-tasking processing unit: if two tasks belong to the same executor, when communicating, the two tasks will be enlarged at the same time on the same computer, and the executor can view and process two related tasks at the same time, reducing the time and energy consumption of task switching.
[0129] For tasks that require comparison or contrast (such as different versions of code or different design solutions), split-screen viewing can greatly improve comparison efficiency. The system provides auxiliary tools such as highlighting and difference comparison to help users quickly identify differences between two tasks.
[0130] This setting also provides the following features:
[0131] Drag and drop data between tasks: Users can quickly transfer data or files between two tasks, improving work efficiency. This feature allows users to drag and drop files or data from one task box to another.
[0132] Customizable task associations: Users can customize the relationships between tasks for more flexible task management and collaboration. Users can set a task as a predecessor or successor to another task, and the system will automatically adjust the order and priority of task execution based on these relationships.
[0133] Task merging and splitting: Users can easily split overly large or complex tasks, and similar tasks can be merged to improve task management efficiency. The system provides tools for merging and splitting tasks, allowing users to easily adjust task structures as needed. The system also automatically recommends appropriate merging or splitting strategies based on historical data and user feedback.
[0134] These features can not only solve the problem of communicating with oneself, but also improve the ability and efficiency of multitasking, helping users better manage and perform tasks.
[0135] Furthermore, the task-based communication module includes a task box border functional component, and the task box border functional component includes:
[0136] Application scenario: During project management, staff often need to communicate and collaborate on multiple tasks. By functionalizing the task box border, you can easily trigger communication requests and merge task content, improving work efficiency.
[0137] Communicate application and merge task content units to:
[0138] Drag content: The staff drags the content in one task box (task A) to another task box (task B) through a certain border;
[0139] Automatically trigger a communication request: After the system detects the drag operation, it automatically triggers a communication request and sends a communication request to the executor of Task B;
[0140] Content merging: When the executor of Task B agrees to the communication request, the system will merge the contents of Task A and Task B and display them in the same task box;
[0141] Real-time discussion: Through screen sharing and voice communication, staff can discuss the merged content in real time to ensure that both parties have a common understanding of the task content.
[0142] The advantages of communicating applications and merging task content units include: improved efficiency in task communication and collaboration, reduced manual work, and lowered error rates. Real-time discussions ensure a shared understanding of the task content.
[0143] Content integration and testing unit, used for:
[0144] Application Scenario: During software development, different code modules often need to be integrated and tested. By functionalizing the border of the task box, you can easily trigger content integration and conduct testing to ensure code correctness and stability.
[0145] Dragging content: The staff drags the content in a task box (task A, containing code module 1) to another task box (task B, containing code module 2) through the bottom border.
[0146] Content fusion: The system automatically merges the contents of the two task boxes to generate a new code module.
[0147] Automatic testing: The system tests the merged code modules to check for errors or conflicts.
[0148] Result feedback: After the test is completed, the system will provide feedback to the staff on the test results, such as whether the test passed or what specific problems existed.
[0149] Advantages of the content integration and testing unit: It simplifies the code integration and testing process, improves the efficiency of code development and testing, and ensures the correctness and stability of the code through real-time feedback.
[0150] Furthermore, the task box border functional component also includes:
[0151] Box-linked document or resource unit: When the user hovers the mouse over one of the borders of the task box, a pop-up menu will be displayed, allowing the user to quickly link to documents, images or other resources related to the task. After clicking these links, the relevant resources can be opened directly in a window next to the task box, making it easy for users to refer to them at any time while working on the task;
[0152] Quickly add annotation unit to the border: users can quickly add annotations or notes to the task by clicking one of the borders of the task box. The annotations will be displayed directly on the border of the task box or as a floating text box for other team members to view;
[0153] Set reminder or deadline unit: Users click one of the borders of the task box to pop up a date picker for setting a reminder or deadline for the task. After setting the date, the system will remind the user and relevant team members through desktop notifications or emails at the specified time;
[0154] Border corner trigger task priority adjustment unit: users can quickly adjust the priority of the task by clicking a corner of the task box (such as the upper left corner, upper right corner, etc.). The priority can be represented by color coding, numerical labels or icons, making it easier for team members to quickly identify the importance of the task.
[0155] Through these functional designs, the task box is not only a container for displaying task information, but also an efficient work tool that integrates multiple operations and functions, further improving the efficiency and convenience of team collaboration.
[0156] It should be noted that the task box can be set to a polygonal form such as a pentagon or hexagon, so it can carry more functions. The number of task boxes can be increased or decreased according to the number of tasks, without any limit.
[0157] Furthermore, the task-based communication module further includes a third-party communication component, and the third-party communication component includes:
[0158] Third-party access request and permission management unit: A third-party user sends an access request to the two parties currently communicating through the interface or command provided by the system. When an access request is received, the two parties or the task manager will receive a notification and choose whether to agree to the request;
[0159] Permission management: Set different permission levels, such as team members, leadership, and customers.
[0160] Extension of real-time communication channels: Once a third party is allowed to access, the system will extend the current communication channel to include the third party user. This can be achieved by adding a new user ID to the task box or adding the third party's video / audio stream to the communication interface.
[0161] Information sharing: The system should ensure that all connected users can see the same task information, screen sharing content and real-time communication.
[0162] Multi-user screen sharing and voice communication: When a third party accesses the system, their screen automatically switches to the appropriate zoom mode and displays the shared content. Voice communication supports multiple participants simultaneously, ensuring all users can hear and express their opinions in real time.
[0163] Furthermore, the task-based communication module further includes a communication channel destruction component, and the communication channel destruction component includes the following units:
[0164] Task completion detection subunit: used to monitor the completion status of all tasks, and to determine whether a task has been completed by checking the progress bar or percentage of each task box and whether a signal confirming the completion of the task has been received from the task executor;
[0165] Archiving Processing Unit: When the task completion detection unit confirms that all tasks have been completed, the archiving processing unit is triggered to package and archive the task codes and documents for storage;
[0166] Communication Channel Management Unit: Once all tasks are completed and archived, the Communication Channel Management Unit disconnects the communication channels associated with those tasks. This process includes shutting down the real-time communication service, clearing communication records, and destroying session keys to ensure data security and privacy.
[0167] Task Clearer: After the communication channel is disconnected, the Task Clearer removes the task boxes associated with completed and archived tasks from the display interface. It also deletes the task information from the internal data structure, including task name, description, and progress.
[0168] Data destruction unit: After archiving is complete, the session key is transformed and dispersed, then randomly inserted into the data to be destroyed, destroying the information carried in the data. This setup prevents information leakage even if stolen.
[0169] By integrating the functions of these various units, it is possible to automatically disconnect communication channels, clear tasks, and destroy related data after all tasks are completed and archived. These functions can also collaborate with other units (such as the real-time communication channel generation unit and the task communication request and response unit) to improve the efficiency and security of the entire system.
[0170] Furthermore, the communication channel management unit includes a communication channel and task matching sub-unit: used to regulate the number of communication channels and tasks; for example, matching multiple communication channels for a task, or associating multiple tasks with the same communication channel.
[0171] A task can be associated with two communication channels, with the following effects:
[0172] 1. Parallel communication: When a task requires the simultaneous participation of multiple teams or individuals, each team or individual can have its own independent communication channel to facilitate real-time communication and collaboration among themselves while also staying synchronized with the main task.
[0173] 2. Information diversion: Different communication channels can be used to discuss different types of task details or issues, avoiding information confusion in a single channel and improving communication efficiency.
[0174] 3. Flexibility: In some cases, it may be necessary to temporarily add or adjust communication channels based on the progress or needs of the task. This flexibility can ensure smooth task communication.
[0175] Multiple tasks are associated with one communication channel, which has the following effects:
[0176] 1. Centralized management: When multiple tasks belong to the same project or have similar goals, associating them with the same communication channel can facilitate centralized discussion and coordination among project managers or team members, thereby improving management efficiency.
[0177] 2. Information Sharing: In a single communication channel, team members can share information, resources, and experience on multiple tasks, promoting knowledge transfer and team collaboration.
[0178] 3. Simplified operations: There is no need to create a separate communication channel for each task, which reduces operational complexity and allows team members to focus more on the task itself.
[0179] In summary, whether one task is associated with multiple communication channels, or multiple tasks are associated with one communication channel, you can flexibly choose according to the specific task requirements and team collaboration methods to achieve the best communication effect.
[0180] A software development management method uses the software development management system and includes the following steps:
[0181] Integrate blockchain technology to create project plans, assign tasks, monitor progress, manage documents, and conduct file reports and analysis, so that project teams can understand the project status in a timely manner and make corresponding adjustments;
[0182] Combined with blockchain technology, it collects, organizes, analyzes and tracks software project requirements, classifies, prioritizes and version controls requirements, enabling project teams to accurately understand and meet user needs;
[0183] Integrating blockchain technology to improve code quality and maintainability through source code version control, code review, code merging, and code deployment, and improving development efficiency through branch management;
[0184] Integrate blockchain technology to conduct testing through at least one of test case management, test plan development, test execution, and test result analysis to ensure that the software is fully verified and tested before release;
[0185] By combining blockchain technology to track and manage defects and issues found in software projects, and integrating the defect entry, classification, allocation, resolution, and verification processes, it provides statistical and analytical functions, enabling project teams to understand the distribution and trends of defects.
[0186] Combining blockchain technology with a variety of team collaboration and communication tools and methods, it supports real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks.
[0187] Working principle of the present invention:
[0188] The usage process of the software development management system set up is as follows:
[0189] 1. Project initiation and planning
[0190] Use the Project Management module to create project plans, including project goals, timelines, resource allocation, and more.
[0191] Assign tasks to project team members and ensure everyone has clear responsibilities.
[0192] 2. Requirements Collection and Management
[0193] Collect software requirements from users or the market through the requirements management module.
[0194] Organize and analyze requirements, classify and prioritize them, and control requirement versions.
[0195] Support requirement change management to ensure that the project team can adjust the development plan in a timely manner.
[0196] 3. Coding and code management
[0197] Use the code management module to perform version control on the source code and ensure that every change is recorded.
[0198] Conduct code reviews to ensure code quality.
[0199] Use branch management to develop different functions or fix different defects in parallel to improve development efficiency.
[0200] Code merging and deployment ensures that the final product meets the design requirements.
[0201] 4. Testing and Quality Assurance
[0202] Use the test management module to develop test plans and design test cases.
[0203] Perform various test types (such as unit testing, integration testing, system testing, etc.) to ensure that the software functions properly and has stable performance.
[0204] Use automated testing tools and frameworks to improve testing efficiency.
[0205] Analyze test results to identify and fix software defects.
[0206] 5. Defect tracking and management
[0207] Use the defect management module to record defects and problems found in software projects.
[0208] Categorize and assign defects to ensure that each defect has someone responsible for resolving it.
[0209] Track and verify the resolution status of defects.
[0210] Provides statistical and analytical functions to help project teams understand the distribution and trends of defects.
[0211] 6. Teamwork and Communication
[0212] Use team collaboration and communication modules to achieve real-time sharing of project information.
[0213] Discuss issues and exchange ideas through various communication methods such as instant messaging, email, and phone.
[0214] Support team members to collaborate online and complete tasks together.
[0215] 7. Project monitoring and adjustment
[0216] Use the project management module to continuously monitor project progress and ensure it is on track.
[0217] If you find that the project deviates from the plan or encounters problems, adjust the project plan or resource allocation in a timely manner.
[0218] 8. Project completion and summary
[0219] After the project is completed, a summary and evaluation will be conducted on the project, including the achievement of project goals, resource utilization, lessons learned, etc.
[0220] Organize project documents and materials to provide reference for future projects.
[0221] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that includes a list of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus.
[0222] While embodiments of the present invention have been shown and described, it will be appreciated by those skilled in the art that various changes, modifications, substitutions, and variations may be made to these embodiments without departing from the principles and spirit of the invention, and that the scope of the invention is defined by the appended claims and their equivalents.
Claims
1. A software development management system, comprising a central processing module, characterized in that: The central processing module is signal-connected to the project management module, the demand management module, the code management module, the test management module, the defect management module, and the team collaboration and communication module, wherein: the project management module: combines blockchain technology to create project plans, assign tasks, monitor progress, manage documents, and file reports and analyses, so that the project team can understand the project status in a timely manner and make corresponding adjustments; Requirements management module: Combine blockchain technology to collect, organize, analyze and track software project requirements, classify, prioritize and version control requirements, so that the project team can accurately understand and meet user needs; Code management module: Combined with blockchain technology, it improves the quality and maintainability of code through source code version control, code review, code merging and code deployment, and improves development efficiency through branch management; Test management module: Combined with blockchain technology, the module conducts testing through at least one of test case management, test plan formulation, test execution, and test result analysis to ensure that the software can be fully verified and tested before release; Defect management module: Combined with blockchain technology, it tracks and manages defects and problems found in software projects. It combines the process of defect entry, classification, allocation, resolution and verification, provides statistical and analytical functions, and enables the project team to understand the distribution and trend of defects. Team collaboration and communication module: Combined with blockchain technology, it provides a variety of team collaboration and communication tools and methods to support real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks; It also includes a task-based communication module, which is signal-connected to the project management module, the code management module and the team collaboration and communication module. The task-based communication module includes the following units: a task box design and display unit, which designs multiple task boxes in the display interface, each task box is used to display a task separately, and in addition to displaying the name or description of the task, the task box also designs a progress bar or percentage to display the execution progress of the task in real time, and adds a time statistics function so that the staff can intuitively understand the completion status of the task. The display interface layout of each person is the same to ensure the consistency and readability of the information; Real-time communication channel generation unit: when the code of a task is completed or updated, the system automatically seals the code of the task and generates an independent communication channel for it. This communication channel is associated with the task and displayed on the corresponding task box. Each task has a corresponding real-time communication channel to facilitate subsequent communication and collaboration; The task communication request and response unit, when it is necessary to communicate with the task executor about a task, wakes up the task box where the task is located through the preset first command, and sends a communication request. On the interface of the task executor, the task box of the task lights up, indicating that there is a new communication request. The task executor can choose to respond through the preset second command; Screen sharing and voice communication unit: When the task executor chooses to agree to the communication request, the corresponding task box is automatically enlarged to the enlarged mode on both parties' computers, and the specific content of the task is displayed inside the task box; the system also starts the screen sharing function, so that both parties can view and discuss the content of the task in real time, and supports the voice communication function to ensure the real-time and efficient communication; The interactive feedback and operation optimization unit collects user interactive feedback in real time during the entire communication process. Based on this feedback, the system continuously optimizes the operation experience and communication efficiency to ensure that staff can communicate and collaborate on tasks more conveniently and quickly. Task calling unit: people within the set range are allowed to drag and drop task contents in the task box, thereby quickly calling the corresponding task contents.
2. A software development management system as claimed in claim 1, characterized in that: The task-based communication module also includes a split-screen viewing and multi-tasking processing unit: if two tasks belong to the same executor, when communicating, the two tasks will be enlarged simultaneously on the same computer, and the executor will view and process two related tasks at the same time, reducing the time and energy consumption of task switching.
3. A software development management system as claimed in claim 1, characterized in that: The task-based communication module includes a task frame border functional component, and the task frame border functional component includes: a communication application and merging task content unit, which is used to: Drag content: The staff drags the content in task A to task B through a certain border; Automatically trigger communication request: After the system detects the drag operation, it automatically triggers the communication request and sends a communication request to the executor of task B; Content merging: When the executor of Task B agrees to the communication request, the system merges the contents of Task A and Task B and displays them in the same task box; Real-time discussion: Through screen sharing and voice communication functions, staff can discuss the merged content in real time to ensure that both parties have a common understanding of the task content; Content fusion and testing unit, used for: Drag content: The staff drags the content in one task box to another task box through the bottom border; Content fusion: The system automatically merges the contents of the two task boxes to generate a new code module; Automatic testing: The system tests the merged code modules to check for errors or conflicts; Result feedback: After the test is completed, the system will feedback the test results to the staff.
4. A software development management system as claimed in claim 3, characterized in that: The task box border functionalization component also includes: Box-linked documents or resource units: When the user hovers the mouse over one of the borders of a task box, a pop-up menu will be displayed, allowing the user to quickly link to documents, images, and codes related to the task. After clicking these links, the documents, images, and codes related to the task will be opened directly in a window next to the task box, making it easy for users to consult them at any time while processing tasks; Quickly add annotation unit on the border: Users can quickly add annotations or notes to the task by clicking one of the borders of the task box. The annotation is displayed directly on the border of the task box or as a floating text box for other team members to view; Set reminder or deadline unit: When the user clicks one of the borders of the task box, a date picker pops up to set a reminder or deadline for the task. After setting the date, the system will remind the user and related team members through desktop notifications or emails at the specified time; Border corner trigger task priority adjustment unit: users can quickly adjust the priority of a task by clicking a corner of the task box.
5. A software development management system as claimed in claim 1, characterized in that: The task-based communication module also includes a third-party communication component, which includes: a third-party access request and authority management unit: a third-party user sends an access request to the two parties currently communicating through an interface or command provided by the system. When the access request is received, the two parties currently communicating or the task manager will receive a notification and choose whether to agree to the request; Extension unit of real-time communication channel: once a third party is allowed to access, the system will extend the current communication channel in real time to include the third party user; Multi-user screen sharing and voice communication unit, when a third party accesses, its screen automatically switches to the corresponding magnification mode and displays the content being shared.
6. A software development management system as claimed in claim 1, characterized in that: The task-based communication module further includes a communication channel destruction component, which includes the following units: a task completion detection subunit: used to monitor the completion of all tasks, and to determine whether a task has been completed by checking the progress bar or percentage of each task box and whether a signal confirming the completion of the task has been received from the task executor; Archiving processing unit: When the task completion detection unit confirms that all tasks have been completed, the archiving processing unit is triggered to package and archive the task codes and documents for storage; Communication channel management unit: When all tasks are completed and archived, the communication channel management unit disconnects the communication channels associated with these tasks; Task clearing unit: After the communication channel is disconnected, the task clearing unit removes the task boxes related to the completed and archived tasks from the display interface; Data destruction unit: After the archiving process is completed, while destroying the session key, the destroyed session key is transformed and dispersed, and then randomly inserted into the data to be destroyed, thereby destroying the information carried in the data, and then the data is destroyed.
7. A software development management system as claimed in claim 6, characterized in that: The communication channel management unit includes a communication channel and task matching subunit: used to adjust the number of communication channels and tasks, match multiple communication channels for one task, or associate multiple tasks with the same communication channel.
8. A software development management method, characterized in that: Use the software development management system described in any one of claims 1 to 7, and include the following steps: create project plans, assign tasks, monitor progress, manage documents, and file reports and analysis in combination with blockchain technology, so that the project team can understand the project status in a timely manner so as to make corresponding adjustments; Combine blockchain technology to collect, organize, analyze and track software project requirements, classify, prioritize and version control requirements, so that project teams can accurately understand and meet user needs; Combined with blockchain technology, the quality and maintainability of code can be improved through source code version control, code review, code merging and code deployment, and development efficiency can be improved through branch management; Combine blockchain technology to conduct testing through at least one of test case management, test plan formulation, test execution and test result analysis to ensure that the software can be fully verified and tested before release; By combining blockchain technology to track and manage defects and problems found in software projects, combined with the process of defect entry, classification, allocation, resolution and verification, it provides statistical and analytical functions, allowing project teams to understand the distribution and trends of defects; Combining blockchain technology with a variety of team collaboration and communication tools and methods supports real-time sharing of project information, discussion of issues, exchange of ideas, and collaborative completion of tasks.
Citation Information
Patent Citations
Integrated iteration software development process control system and method
CN106327152A
Software testing process control method and device, equipment and medium
CN113742227A
Software development integrated control system based on block chain
CN114358746A
Software development management system based on big data and use method thereof
CN117541194A