A component-based software development system
By using a component-based software development system, the development process is optimized through component storage, configuration, and monitoring modules, solving the problems of long development time and high cost of existing methods, and achieving efficient and low-cost software development.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN NEPENTROPY TECH CO LTD
- Filing Date
- 2022-07-14
- Publication Date
- 2026-07-07
AI Technical Summary
Existing structured and object-oriented development methods are time-consuming and expensive, making it difficult to meet the needs of high efficiency and low cost in software development.
A component-based software development system is adopted, including a component storage module, a configuration module, and a development module. Through technologies such as component classification, information catalog generation, requirement analysis, monitoring, and task management, the software development process is optimized.
It shortens software development time, reduces development costs, improves development efficiency and resource utilization, and ensures the reliability of component functions and the accuracy of the development process.
Smart Images

Figure CN115202620B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of software development technology, and in particular to a component-based software development system. Background Technology
[0002] Currently, with the development of economy and science and technology, the demand for intelligent products in human production and life is increasing, leading to a continuous surge in demand for software products and services across all industries. Under these circumstances, the requirements for the quality and efficiency of software development are also becoming increasingly stringent. However, traditional structured development methods and object-oriented development methods suffer from being time-consuming and costly. Summary of the Invention
[0003] The present invention aims to at least partially solve one of the technical problems in the aforementioned technologies. Therefore, the object of the present invention is to propose a component-based software development system that shortens software development time and reduces development costs.
[0004] To achieve the above objectives, embodiments of the present invention propose a component-based software development system, comprising:
[0005] The component storage module is used to store components used in software development;
[0006] The configuration module is used to receive the user's software development requirements, parse the software development requirements, and configure the component package based on the component storage module according to the parsing results.
[0007] Development module, used for:
[0008] The software development model is determined based on the component package;
[0009] Software development is carried out based on the software development model.
[0010] According to some embodiments of the present invention, a component storage module includes:
[0011] The component classification module is used to classify the components to be stored according to their functions;
[0012] The component information module is used to record the components of each category in the component classification module and the storage location of each component, and to generate a component information directory.
[0013] According to some embodiments of the present invention, the component information module includes:
[0014] The input module is used to create a document and input the attribute information of each component included in each category of the component classification module based on the first preset rule to obtain component information text;
[0015] The traversal module is used for:
[0016] The input positions of the attribute information of each component included in each category in the component information text are adjusted based on the second preset rule to obtain the adjusted component information text;
[0017] Based on the adjusted component information text, determine the parent-child relationship between the first input information corresponding to the first input position and the second input information corresponding to the second input position of each component included in each category;
[0018] A tree-structured component information tree is generated based on the parent-child relationship; the component information tree consists of several nodes, each node corresponding to the attribute information of a component;
[0019] Based on the attribute information of the components corresponding to the plurality of nodes, the component information tree is traversed according to a preset traversal method to obtain a plurality of first attribute nodes and second attribute nodes with the first attribute nodes as parent nodes; the first attribute nodes correspond to the first input information of the component, and the second attribute nodes correspond to the second input information of the component.
[0020] The fill module is used for:
[0021] Create a two-dimensional table;
[0022] The first attribute node and the second attribute node are deployed according to the mapping relationship to form the row and column information of the two-dimensional table;
[0023] The first and second entered information are filled according to the row and column information of the two-dimensional table to obtain several function lists, with one row of data corresponding to one function list;
[0024] Several function lists are converted into text information and then concatenated to obtain a component information directory.
[0025] According to some embodiments of the present invention, the configuration module includes:
[0026] The first receiving module is used to receive the user's software development requirements;
[0027] The first parsing module is used to parse the software development requirements;
[0028] The second receiving module is used to receive the component information directory generated by the component information module;
[0029] The first determining module is used to determine the required components and configure the component package based on the parsing results and the component information directory.
[0030] According to some embodiments of the present invention, the first parsing module includes:
[0031] The preprocessing module is used to identify the types of characters included in the software development requirements, compare them with the characters included in the blacklist, and remove the characters that match the comparison to obtain the requirement correction text;
[0032] The extraction module is used to extract keywords from the required revision text to obtain the target requirements;
[0033] The first conversion module is used to convert the target requirements into development component requirements and generate a component requirement list.
[0034] According to some embodiments of the present invention, it further includes:
[0035] The monitoring module is used to monitor several build processes during the process of the development module determining the software development model based on the component package;
[0036] The first creation module is used for:
[0037] Based on the monitoring results, identify the abnormal build process and analyze the cause of the abnormality of the abnormal build process;
[0038] Based on the cause of the anomaly, when it is determined that a key component is missing, a new component requirement is generated; a new component is created based on the new component requirement, and the new component is added to the anomaly build process.
[0039] According to some embodiments of the present invention, it further includes:
[0040] The second receiving module is used to receive the component requirement list generated by the first conversion module and the component information catalog generated by the component information module before the development module determines the software development model based on the component package;
[0041] The tag module is used for:
[0042] Each first component in the component requirement list is compared with each second component in the component information directory;
[0043] Identify the first component that does not match any of the second components as the target component, and mark it on the component requirement list to obtain the marked list;
[0044] The second creation module is used to receive the tag list determined by the tagging module, generate new components, and send them to the component storage module;
[0045] The component storage module is also used to store the newly added components.
[0046] According to some embodiments of the present invention, it further includes: a task management module, used to create software development tasks, monitor the progress of the software development tasks in real time, and display the progress;
[0047] The task management module includes:
[0048] Create a task module for:
[0049] Receive the software development requirements sent by the configuration module, create several software development tasks according to the software development requirements, and treat each software development task as a task node;
[0050] Each software development task is divided into several sub-tasks, and sub-nodes are set for each sub-task;
[0051] The progress detection module is used to determine the progress information of the software development task based on the trigger responses of task nodes and sub-nodes, and display it in the data interface.
[0052] According to some embodiments of the present invention, a progress detection module includes:
[0053] The second determining module is used to determine the progress information of the software development task based on the trigger responses of the task nodes and child nodes.
[0054] The second conversion module is used to convert the process information of the software development task into task status text data.
[0055] The third module is used to create a new progress display text;
[0056] Add a module to add the task status text data to the progress display text in reverse chronological order;
[0057] The fourth module is used to create a new progress bar;
[0058] The decomposition module is used to divide the progress bar into several progress bar segments according to the child nodes;
[0059] The first calculation module is used for:
[0060] Get the task quantity of each subtask;
[0061] Obtain the parameters that affect the execution speed of the subtask;
[0062] Obtain the execution time of the subtask corresponding to the current progress bar segment;
[0063] The task amount of the subtask, the parameters affecting the execution speed of the subtask, and the execution time of the subtask corresponding to the current progress bar segment are input into a preset time calculation model to calculate the predicted remaining execution time of the corresponding subtask.
[0064] Calculate the task execution speed of the current progress bar segment based on the predicted remaining execution time of the sub-task;
[0065] The predicted remaining execution time of the several subtasks is summed to obtain the predicted remaining execution time of the corresponding software development task.
[0066] The fifth module is used to create timers in the data interface;
[0067] The refresh module is used to refresh several progress bar segments corresponding to the task node by using the timer to call a preset refresh progress bar method when the task node is detected to be triggered.
[0068] The display module is used for:
[0069] The progress display text, the progress bar, the task execution speed of the current progress bar segment, and the predicted remaining execution time of the software development task are displayed in the data interface.
[0070] The refreshed task node will be displayed in the data interface along with several progress bar segments.
[0071] According to some embodiments of the present invention, it further includes:
[0072] The sixth module is used for:
[0073] When the development module performs software development according to the software development model, it obtains the monitoring instructions issued by the development module, parses the monitoring instructions, and determines the monitoring requirements corresponding to several components respectively.
[0074] According to the monitoring requirements, different levels of monitoring component interfaces are set, and the access interfaces on the corresponding components are monitored based on the monitoring component interfaces.
[0075] The acquisition module is used to acquire several monitoring component reports obtained by monitoring the access interfaces on the corresponding components through the monitoring component interfaces.
[0076] The second parsing module is used to parse the reports of the plurality of monitoring components respectively, and to perform statistics on the data in each of the monitoring component reports to obtain a plurality of monitoring statistical results; one monitoring component report corresponds to one monitoring statistical result;
[0077] The judgment module is used for:
[0078] The monitoring and statistical results are compared with preset threshold data to determine whether there are any abnormalities.
[0079] When an anomaly is detected, acquire the abnormal data;
[0080] Based on the abnormal data and the preset abnormality level data, determine the abnormality level and abnormality category;
[0081] The third determining module is used for:
[0082] Based on the aforementioned anomaly level and the preset anomaly level-error reporting method data table, determine the target error reporting method and issue an alarm prompt;
[0083] Based on the anomaly category and the preset anomaly category-handling strategy data table, a target handling strategy is determined, and anomaly handling is performed according to the target handling strategy.
[0084] Other features and advantages of the invention will be set forth in the following description, and will be apparent in part from the description, or may be learned by practicing the invention. The objects and other advantages of the invention may be realized and obtained by means of the structures particularly pointed out in the written description and the accompanying drawings.
[0085] The technical solution of the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description
[0086] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:
[0087] Figure 1 This is a block diagram of a component-based software development system according to an embodiment of the present invention;
[0088] Figure 2 This is a block diagram of a component storage module according to an embodiment of the present invention;
[0089] Figure 3 This is a block diagram of a configuration module according to an embodiment of the present invention. Detailed Implementation
[0090] The preferred embodiments of the present invention will be described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.
[0091] like Figure 1 As shown in the figure, an embodiment of the present invention proposes a component-based software development system, including:
[0092] The component storage module is used to store components used in software development;
[0093] The configuration module is used to receive the user's software development requirements, parse the software development requirements, and configure the component package based on the component storage module according to the parsing results.
[0094] Development module, used for:
[0095] The software development model is determined based on the component package;
[0096] Software development is carried out based on the software development model.
[0097] The working principle of the above technical solution is as follows: A component storage module stores components used for software development. This module contains a large number of components with different functions and roles, facilitating component calls during software development. A configuration module receives user software development requirements, parses these requirements, and configures component packages based on the components stored in the component storage module. User requirements include software operation scenarios, functional requirements, and performance requirements. The configuration module enables more organized configuration of component packages, improving software development efficiency. A development module determines a software development model based on the component packages and performs software development according to the model. Software development models include waterfall, spiral, iterative incremental, agile development, and software testing models. The module determines the most suitable software development model, saving software development resources and shortening development time.
[0098] The beneficial effects of the above technical solution are as follows: by accurately configuring software development component packages according to the received software development requirements of users, software development resources are effectively allocated, software development efficiency is improved, and the functional reliability of each component is guaranteed. This not only shortens the software development time but also reduces development costs.
[0099] According to some embodiments of the present invention, such as Figure 2 As shown, the component storage module includes:
[0100] The component classification module is used to classify the components to be stored according to their functions;
[0101] The component information module is used to record the components of each category in the component classification module and the storage location of each component, and to generate a component information directory.
[0102] The working principle of the above technical solution is as follows: A component classification module categorizes components to be stored according to their functions, making the component storage module more orderly and organized. A component information module records the components in each category of the component classification module and their corresponding storage location, generating a component information directory. The component information directory includes the name and storage location information of each component category, clearly displaying component information and enabling quick location determination of the required component when calling it, saving time.
[0103] The beneficial effects of the above technical solution are as follows: by generating a component information catalog after classifying the components, the disorder of component storage is reduced, making it easier to quickly determine the information of the called component and reducing the component call time.
[0104] According to some embodiments of the present invention, the component information module includes:
[0105] The input module is used to create a document and input the attribute information of each component included in each category of the component classification module based on the first preset rule to obtain component information text;
[0106] The traversal module is used for:
[0107] The input positions of the attribute information of each component included in each category in the component information text are adjusted based on the second preset rule to obtain the adjusted component information text;
[0108] Based on the adjusted component information text, determine the parent-child relationship between the first input information corresponding to the first input position and the second input information corresponding to the second input position of each component included in each category;
[0109] A tree-structured component information tree is generated based on the parent-child relationship; the component information tree consists of several nodes, each node corresponding to the attribute information of a component;
[0110] Based on the attribute information of the components corresponding to the plurality of nodes, the component information tree is traversed according to a preset traversal method to obtain a plurality of first attribute nodes and second attribute nodes with the first attribute nodes as parent nodes; the first attribute nodes correspond to the first input information of the component, and the second attribute nodes correspond to the second input information of the component.
[0111] The fill module is used for:
[0112] Create a two-dimensional table;
[0113] The first attribute node and the second attribute node are deployed according to the mapping relationship to form the row and column information of the two-dimensional table;
[0114] The first and second entered information are filled according to the row and column information of the two-dimensional table to obtain several function lists, with one row of data corresponding to one function list;
[0115] Several function lists are converted into text information and then concatenated to obtain a component information directory.
[0116] The working principle of the above technical solution is as follows: The input module creates a document and inputs the attribute information of each component in each category of the component classification module based on a first preset rule, obtaining component information text. The first preset rule is to input based on the priority of preset component categories. The attribute information of each component includes component function, component name, and component position, facilitating the generation of information catalogs. The traversal module adjusts the input position of the attribute information of each component in each category of the component information text based on a second preset rule, obtaining adjusted component information text. The second preset rule is to sort based on the component position information, facilitating the adjustment of the component information text from a disordered to an ordered state. For example, the input positions of the component function, component name, and component position of each component in each category of the component information text are the second position, the third position, and the fourth position. The first, second, and third positions are entered based on the format of component function – component name – component position. The parent-child relationship between the first entry information corresponding to the first entry position and the second entry information corresponding to the second entry position of each component in each category is determined according to the adjusted component information text. The first entry information corresponds to the component function; the second entry information corresponds to the component name; the first entry information precedes the second entry information. This facilitates the generation of a tree-structured component information based on the parent-child relationship. A tree-structured component information tree is generated based on the parent-child relationship. The component information tree consists of several nodes, each node corresponding to the attribute information of a component. Based on the attribute information of the components corresponding to the several nodes, the component information tree is traversed according to a preset traversal method to obtain several first attribute nodes and second attribute nodes with the first attribute nodes as their parent nodes. This facilitates obtaining ordered attribute information for each component. The first attribute node corresponds to the first input information of the component, and the second attribute node corresponds to the second input information of the component. The preset traversal method is breadth-first traversal, that is, traversing in the order of first traversing the root node and then traversing the lower-level child nodes. This facilitates determining the first input information before determining the second input information, and improves the logic of the generated directory. The filling module is used to: create a two-dimensional table; deploy the first attribute node and the second attribute node into the row and column information of the two-dimensional table according to the mapping relationship; fill the first input information and the second input information according to the row and column information of the two-dimensional table to obtain several function lists, with one row of data corresponding to one function list. This facilitates the division and orderly arrangement of component information according to function; convert several function lists into text information and concatenate them to obtain the component information directory. This facilitates obtaining a component information directory converted into text data.
[0117] The beneficial effects of the above technical solution are as follows: By inputting the attribute information of each component according to the first and second preset rules, it is easier to arrange the disorganized component information in a reasonable and orderly manner. By generating a component information tree based on the attribute information of each component and then traversing it, it is easier to obtain a more logical component information directory, thereby helping to improve software development efficiency.
[0118] like Figure 3 As shown, according to some embodiments of the present invention, the configuration module includes:
[0119] The first receiving module is used to receive the user's software development requirements;
[0120] The first parsing module is used to parse the software development requirements;
[0121] The second receiving module is used to receive the component information directory generated by the component information module;
[0122] The first determining module is used to determine the required components and configure the component package based on the parsing results and the component information directory.
[0123] The working principle of the above technical solution is as follows: A first receiving module receives the user's software development requirements. These requirements are non-technical, such as simply describing the desired user experience or comparing the software with similar software. A first parsing module parses these requirements to obtain more professional specifications suitable for software developers. A second receiving module receives the component information catalog generated by the component information module to determine the required components based on the parsed development requirements. A first determining module determines the required components based on the parsing results and the component information catalog, and configures the component package. The component package contains all the required components configured according to the parsed software development requirements to determine the most suitable software development model.
[0124] The beneficial effects of the above technical solution are: to analyze the user's software development requirements, obtain more professional development requirements, ensure the accuracy of the basic requirements for software development, avoid invalid development work caused by the misunderstanding of software developers, and ensure the accuracy of the required components during the configuration of component packages.
[0125] According to some embodiments of the present invention, the first parsing module includes:
[0126] The preprocessing module is used to identify the types of characters included in the software development requirements, compare them with the characters included in the blacklist, and remove the characters that match the comparison to obtain the requirement correction text;
[0127] The extraction module is used to extract keywords from the required revision text to obtain the target requirements;
[0128] The first conversion module is used to convert the target requirements into development component requirements and generate a component requirement list.
[0129] The working principle of the above technical solution is as follows: A preprocessing module identifies the types of characters included in the software development requirements, compares them with characters in a blacklist, and removes characters that match the comparison, resulting in revised requirement text. The revised requirement text is the software development requirement text after removing interfering characters. The blacklist includes non-standard characters and interfering characters. This process removes interference from the software development requirements, facilitating the acquisition of effective software development requirement information. An extraction module extracts keywords from the revised requirement text to obtain target requirements. Target requirements are text information recording several keywords, facilitating the determination of professional software development requirements based on keywords. A first conversion module converts the target requirements into development component requirements and generates a component requirement list. The component requirement list includes the functions and names of the required components. Generating the component requirement list in one go saves software development time, thereby improving software development efficiency.
[0130] The beneficial effects of the above technical solution are as follows: Preprocessing user software development requirements effectively eliminates interference from characters in the parsed requirements. Keyword extraction facilitates the identification of truly useful information from ambiguous or lengthy requirement revision texts. Transforming non-technical user software development requirements into professional requirements for software developers ensures the accuracy and reliability of the foundational software development phase, facilitating the development work of software developers.
[0131] According to some embodiments of the present invention, it further includes:
[0132] The monitoring module is used to monitor several build processes during the process of the development module determining the software development model based on the component package;
[0133] The first creation module is used for:
[0134] Based on the monitoring results, identify the abnormal build process and analyze the cause of the abnormality of the abnormal build process;
[0135] Based on the stated cause of the anomaly, if a critical component is found to be missing, a new component requirement is generated.
[0136] Create a new component according to the new component requirements, and add the new component to the abnormal build process.
[0137] The working principle of the above technical solution is as follows: A monitoring module monitors several build processes during the development module's process of determining the software development model based on the component package, ensuring accurate determination of the software development model and improving software development efficiency. A first creation module is used to: identify abnormal build processes based on the monitoring results and analyze the reasons for their abnormality; based on the reasons for the abnormality, when it is determined that a key component is missing, generate a new component requirement; the new component requirement includes the function and name of the component to be created; create a new component based on the new component requirement, and add the new component to the abnormal build process to resolve the abnormal state of that build process.
[0138] The beneficial effects of the above technical solution are: based on the monitoring of the construction process, it is convenient for software developers to understand the status of development components, generate the requirement to create new components in a timely manner when anomalies occur, and generate components to return to the normal state. It also ensures the accuracy of the software development model in the process of determining software development modules and improves software development efficiency.
[0139] According to some embodiments of the present invention, it further includes:
[0140] The second receiving module is used to receive the component requirement list generated by the first conversion module and the component information catalog generated by the component information module before the development module determines the software development model based on the component package;
[0141] The tag module is used for:
[0142] Each first component in the component requirement list is compared with each second component in the component information directory;
[0143] Identify the first component that does not match any of the second components as the target component, and mark it on the component requirement list to obtain the marked list;
[0144] The second creation module is used to receive the tag list determined by the tagging module, generate new components, and send them to the component storage module;
[0145] The component storage module is also used to store the newly added components.
[0146] The working principle of the above technical solution is as follows: A second receiving module receives the component requirement list generated by the first conversion module and the component information directory generated by the component information module before the development module determines the software development model based on the component package; a marking module compares each first component in the component requirement list with each second component in the component information directory; identifies the first component that does not match any of the second components as the target component and marks it on the component requirement list to obtain a marking list; the marking list is a list of missing components for software development in the component storage module, which helps to quickly identify the components that need to be added; a second creation module receives the marking list determined by the marking module and generates new components to send to the component storage module; the component storage module is also used to store the new components so that the configuration module can quickly identify the new components and obtain the component package, improving software development efficiency.
[0147] The beneficial effects of the above technical solution are: by comparing the component requirement list with the component information catalog one by one, it is easy to accurately determine the components that need to be added, avoid omissions, and help to achieve reasonable utilization of the storage space of the component storage module and strict control of the software development process.
[0148] According to some embodiments of the present invention, it further includes: a task management module, used to create software development tasks, monitor the progress of the software development tasks in real time, and display the progress;
[0149] The task management module includes:
[0150] Create a task module for:
[0151] Receive the software development requirements sent by the configuration module, create several software development tasks according to the software development requirements, and treat each software development task as a task node;
[0152] Each software development task is divided into several sub-tasks, and sub-nodes are set for each sub-task;
[0153] The progress detection module is used to determine the progress information of the software development task based on the trigger responses of task nodes and sub-nodes, and display it in the data interface.
[0154] The working principle of the above technical solution is as follows: A task creation module is used to: receive software development requirements sent by the configuration module; create several software development tasks according to the software development requirements; and treat each software development task as a task node. The software development tasks are divided according to different functions in the software development requirements. Each software development task is divided into several sub-tasks, and sub-nodes are set for the sub-tasks to improve operation and management efficiency. A progress detection module is used to determine the progress information of the software development task based on the trigger responses of the task nodes and sub-nodes, and display it in the data interface. The progress information includes the name of the task being executed, the task content, etc.
[0155] The beneficial effects of the above technical solution are: it breaks down tasks into smaller, more manageable parts, facilitating operation and management; and it allows for quicker understanding of the current status of software development tasks through triggering mechanisms, thereby enabling better overall control of the software development progress.
[0156] According to some embodiments of the present invention, a progress detection module includes:
[0157] The second determining module is used to determine the progress information of the software development task based on the trigger responses of the task nodes and child nodes.
[0158] The second conversion module is used to convert the process information of the software development task into task status text data.
[0159] The third module is used to create a new progress display text;
[0160] Add a module to add the task status text data to the progress display text in reverse chronological order;
[0161] The fourth module is used to create a new progress bar;
[0162] The decomposition module is used to divide the progress bar into several progress bar segments according to the child nodes;
[0163] The first calculation module is used for:
[0164] Get the task quantity of each subtask;
[0165] Obtain the parameters that affect the execution speed of the subtask;
[0166] Obtain the execution time of the subtask corresponding to the current progress bar segment;
[0167] The task amount of the subtask, the parameters affecting the execution speed of the subtask, and the execution time of the subtask corresponding to the current progress bar segment are input into a preset time calculation model to calculate the predicted remaining execution time of the corresponding subtask.
[0168] Calculate the task execution speed of the current progress bar segment based on the predicted remaining execution time of the sub-task;
[0169] The predicted remaining execution time of the several subtasks is summed to obtain the predicted remaining execution time of the corresponding software development task.
[0170] The fifth module is used to create timers in the data interface;
[0171] The refresh module is used to refresh several progress bar segments corresponding to the task node by using the timer to call a preset refresh progress bar method when the task node is detected to be triggered.
[0172] The display module is used for:
[0173] The progress display text, the progress bar, the task execution speed of the current progress bar segment, and the predicted remaining execution time of the software development task are displayed in the data interface.
[0174] The refreshed task node will be displayed in the data interface along with several progress bar segments.
[0175] The working principle of the above technical solution is as follows: The second determining module is used to determine the progress information of the software development task based on the trigger responses of task nodes and child nodes; the progress information includes the name and content of the currently executing task; the second conversion module is used to convert the progress information of the software development task into task status text data; the task status text data includes the task name and task content for display; the third creation module is used to create a new progress display text to store several task status text data for orderly display; the adding module is used to add the task status text data to the progress display text in reverse chronological order; and so on. The progress bar is arranged in reverse order, with newer task status text data appearing at the front of the progress display for emphasis and improved user-friendliness. The fourth module creates a new progress bar; this bar is a fixed-length, narrow-width, long blank rectangle that fills with color to indicate progress changes for easier visualization. The decomposition module divides the progress bar into segments based on its child nodes for more precise control over the amount of progress change. The first calculation module obtains the workload of each subtask (the amount of data to be processed) and identifies factors affecting the execution speed of each subtask. Parameters; parameters include processor speed, task type, and memory speed; obtain the execution time of the subtask corresponding to the current progress bar segment; input the task amount of the subtask, the parameters affecting the execution speed of the subtask, and the execution time of the subtask corresponding to the current progress bar segment into a preset time calculation model to calculate the predicted remaining execution time of the corresponding subtask; calculate the task execution speed of the current progress bar segment based on the predicted remaining execution time of the subtask; sum the predicted remaining execution times of several subtasks to obtain the predicted remaining execution time of the corresponding software development task; so as to reasonably manage subsequent software development overall. The system includes: a task assignment module; a fifth creation module for creating a timer in the data interface; a refresh module for refreshing the progress bar segments corresponding to the task node by calling a preset refresh progress bar method using the timer when the task node is detected to achieve a dynamic refresh effect; and a display module for displaying the progress display text, the progress bar, the task execution speed of the current progress bar segment, and the predicted remaining execution time of the software development task in the data interface; and displaying the refreshed progress bar segments corresponding to the task node in the data interface so that software developers and users can understand the software development progress in real time.
[0176] The beneficial effects of the above technical solution are: It facilitates the determination of real-time software development task progress using the trigger responses of task nodes; displaying the software development task progress using a progress bar allows software developers and users to more intuitively understand the execution status of software development tasks, improving user-friendliness; and it facilitates effective management of software development tasks, improving software development efficiency.
[0177] According to some embodiments of the present invention, it further includes:
[0178] The sixth module is used for:
[0179] When the development module performs software development according to the software development model, it obtains the monitoring instructions issued by the development module, parses the monitoring instructions, and determines the monitoring requirements corresponding to several components respectively.
[0180] According to the monitoring requirements, different levels of monitoring component interfaces are set, and the access interfaces on the corresponding components are monitored based on the monitoring component interfaces.
[0181] The acquisition module is used to acquire several monitoring component reports obtained by monitoring the access interfaces on the corresponding components through the monitoring component interfaces.
[0182] The second parsing module is used to parse the reports of the plurality of monitoring components respectively, and to perform statistics on the data in each of the monitoring component reports to obtain a plurality of monitoring statistical results; one monitoring component report corresponds to one monitoring statistical result;
[0183] The judgment module is used for:
[0184] The monitoring and statistical results are compared with preset threshold data to determine whether there are any abnormalities.
[0185] When an anomaly is detected, acquire the abnormal data;
[0186] Based on the abnormal data and the preset abnormality level data, determine the abnormality level and abnormality category;
[0187] The third determining module is used for:
[0188] Based on the aforementioned anomaly level and the preset anomaly level-error reporting method data table, determine the target error reporting method and issue an alarm prompt;
[0189] Based on the anomaly category and the preset anomaly category-handling strategy data table, a target handling strategy is determined, and anomaly handling is performed according to the target handling strategy.
[0190] The working principle of the above technical solution is as follows: The sixth creation module is used to: obtain monitoring instructions issued by the development module when the development module is developing software according to the software development model; parse the monitoring instructions to determine the monitoring requirements corresponding to several components; the monitoring instructions include the interfaces to be monitored and the monitoring requirements corresponding to different components; set different levels of monitoring component interfaces according to the monitoring requirements; and monitor the access interfaces on the corresponding components based on the monitoring component interfaces to monitor component interface anomalies at any time; the acquisition module is used to obtain several monitoring component reports obtained by the monitoring component interfaces monitoring the access interfaces on the corresponding components; the monitoring component reports include data on the total number of component calls and the time consumed by each call; the second parsing module is used to parse the several monitoring component reports respectively, and statistically analyze the data in each monitoring component report to obtain several monitoring statistical results; one monitoring component report corresponds to one monitoring statistical result; obtaining the monitoring statistical results helps to determine whether there are any call anomalies in the component interfaces; the judgment module... The system is used to: compare the monitoring and statistical results with preset critical data to determine whether there are any abnormalities; when an abnormality is determined, acquire abnormal data; the abnormal data includes the name of the component with the abnormality and the abnormality itself, so as to determine the abnormal component and the type of abnormality based on the abnormal data; determine the abnormality level and the abnormality category based on the abnormal data and preset abnormality level data; the abnormality level is divided into 1-5 levels, with the smaller the number, the more severe the abnormality; the third determination module is used to: determine the target error reporting method based on the abnormality level and the preset abnormality level-error reporting method data table, and issue an alarm prompt; the abnormality level-error reporting method data table includes the correspondence between abnormality level and error reporting method, so as to quickly determine the corresponding error reporting method; determine the target processing strategy based on the abnormality category and the preset abnormality category-processing strategy data table, and perform abnormality processing based on the target processing strategy; the abnormality category-processing strategy data table includes the correspondence between abnormality category and abnormality processing strategy, so as to quickly determine the corresponding processing strategy based on the abnormality category, thereby improving the efficiency of software development.
[0191] The beneficial effects of the above technical solution are as follows: By creating a monitoring component interface, the calling status of the component can be monitored during the software development process. When a component call fails, exception data can be obtained in a timely manner, making it easier to identify the component that has failed, quickly determine the exception type, determine the strategy for handling the exception, reduce the software development time caused by exceptions, improve software development efficiency, and facilitate the reduction of software development costs.
[0192] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. A component-based software development system, characterized in that, include: A component storage module, used to store components for software development, includes: a component classification module, used to classify the components to be stored according to their functions; and a component information module, used to record the components in each category of the component classification module and the corresponding storage location of each component, and to generate a component information directory; wherein, the component information module includes: The input module is used to create a document and input the attribute information of each component included in each category of the component classification module based on the first preset rule to obtain component information text; The traversal module is used for: The input positions of the attribute information of each component included in each category in the component information text are adjusted based on the second preset rule to obtain the adjusted component information text; Based on the adjusted component information text, determine the parent-child relationship between the first input information corresponding to the first input position and the second input information corresponding to the second input position of each component included in each category; A tree-structured component information tree is generated based on the parent-child relationship; the component information tree consists of several nodes, each node corresponding to the attribute information of a component; Based on the attribute information of the components corresponding to the plurality of nodes, the component information tree is traversed according to a preset traversal method to obtain a plurality of first attribute nodes and second attribute nodes with the first attribute nodes as parent nodes; the first attribute nodes correspond to the first input information of the component, and the second attribute nodes correspond to the second input information of the component. The fill module is used for: Create a two-dimensional table; The first attribute node and the second attribute node are deployed according to the mapping relationship to form the row and column information of the two-dimensional table; The first and second entered information are filled according to the row and column information of the two-dimensional table to obtain several function lists, with one row of data corresponding to one function list; Several function lists are converted into text information and concatenated to obtain a component information directory; The configuration module is used to receive the user's software development requirements, parse the software development requirements, and configure the component package based on the component storage module according to the parsing results. Development module, used for: The software development model is determined based on the component package; Software development is carried out based on the software development model.
2. The component-based software development system as described in claim 1, characterized in that, The configuration module includes: The first receiving module is used to receive the user's software development requirements; The first parsing module is used to parse the software development requirements; The second receiving module is used to receive the component information directory generated by the component information module; The first determining module is used to determine the required components and configure the component package based on the parsing results and the component information directory.
3. The component-based software development system as described in claim 2, characterized in that, The first parsing module includes: The preprocessing module is used to identify the types of characters included in the software development requirements, compare them with the characters included in the blacklist, and remove the characters that match the comparison to obtain the requirement correction text; The extraction module is used to extract keywords from the required revision text to obtain the target requirements; The first conversion module is used to convert the target requirements into development component requirements and generate a component requirement list.
4. The component-based software development system as described in claim 1, characterized in that, Also includes: The monitoring module is used to monitor several build processes during the process of the development module determining the software development model based on the component package; The first creation module is used for: Based on the monitoring results, identify the abnormal build process and analyze the cause of the abnormality of the abnormal build process; Based on the cause of the anomaly, when it is determined that a key component is missing, a new component requirement is generated; a new component is created based on the new component requirement, and the new component is added to the anomaly build process.
5. A component-based software development system as described in claim 3, characterized in that, Also includes: The second receiving module is used to receive the component requirement list generated by the first conversion module and the component information catalog generated by the component information module before the development module determines the software development model based on the component package; The tag module is used for: Each first component in the component requirement list is compared with each second component in the component information directory; Identify the first component that does not match any of the second components as the target component, and mark it on the component requirement list to obtain the marked list; The second creation module is used to receive the tag list determined by the tagging module, generate new components, and send them to the component storage module; The component storage module is also used to store the newly added components.
6. The component-based software development system as described in claim 1, characterized in that, Also includes: The task management module is used to create software development tasks, monitor the progress of the software development tasks in real time, and display the results. The task management module includes: Create a task module for: Receive the software development requirements sent by the configuration module, create several software development tasks according to the software development requirements, and treat each software development task as a task node; Each software development task is divided into several sub-tasks, and sub-nodes are set for each sub-task; The progress detection module is used to determine the progress information of the software development task based on the trigger responses of task nodes and sub-nodes, and display it in the data interface.
7. A component-based software development system as described in claim 6, characterized in that, The progress detection module includes: The second determining module is used to determine the progress information of the software development task based on the trigger responses of the task nodes and child nodes. The second conversion module is used to convert the process information of the software development task into task status text data. The third module is used to create a new progress display text; Add a module to add the task status text data to the progress display text in reverse chronological order; The fourth module is used to create a new progress bar; The decomposition module is used to divide the progress bar into several progress bar segments according to the child nodes; The first calculation module is used for: Get the task quantity of each subtask; Obtain the parameters that affect the execution speed of the subtask; Obtain the execution time of the subtask corresponding to the current progress bar segment; The task amount of the subtask, the parameters affecting the execution speed of the subtask, and the execution time of the subtask corresponding to the current progress bar segment are input into a preset time calculation model to calculate the predicted remaining execution time of the corresponding subtask. Calculate the task execution speed of the current progress bar segment based on the predicted remaining execution time of the sub-task; The predicted remaining execution time of the several subtasks is summed to obtain the predicted remaining execution time of the corresponding software development task. The fifth module is used to create timers in the data interface; The refresh module is used to refresh several progress bar segments corresponding to the task node by using the timer to call a preset refresh progress bar method when the task node is detected to be triggered. The display module is used for: The progress display text, the progress bar, the current task execution speed of the progress bar segment, and the predicted remaining execution time of the software development task are displayed in the data interface. The refreshed task node will be displayed in the data interface along with several progress bar segments.
8. The component-based software development system as described in claim 1, characterized in that, Also includes: The sixth module is used for: When the development module performs software development according to the software development model, it obtains the monitoring instructions issued by the development module, parses the monitoring instructions, and determines the monitoring requirements corresponding to several components respectively. According to the monitoring requirements, different levels of monitoring component interfaces are set, and the access interfaces on the corresponding components are monitored based on the monitoring component interfaces. The acquisition module is used to acquire several monitoring component reports obtained by monitoring the access interfaces on the corresponding components through the monitoring component interfaces. The second parsing module is used to parse the reports of the plurality of monitoring components respectively, and to perform statistics on the data in each of the monitoring component reports to obtain a plurality of monitoring statistical results; one monitoring component report corresponds to one monitoring statistical result; The judgment module is used for: The monitoring and statistical results are compared with preset threshold data to determine whether there are any abnormalities. When an anomaly is detected, acquire the abnormal data; Based on the abnormal data and the preset abnormality level data, determine the abnormality level and abnormality category; The third determining module is used for: Based on the aforementioned anomaly level and the preset anomaly level-error reporting method data table, determine the target error reporting method and issue an alarm prompt; Based on the anomaly category and the preset anomaly category-handling strategy data table, a target handling strategy is determined, and anomaly handling is performed according to the target handling strategy.