Prediction device, prediction method, and prediction program
The prediction device addresses the challenge of inaccurate project scheduling by using machine learning to predict task completion times based on attribute information, enhancing scheduling accuracy and productivity.
Patent Information
- Application Number
- JP2021153472
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-09-21
- Publication Date
- 2025-05-20
- Estimated Expiration
- 2041-09-21
AI Technical Summary
Conventional techniques for project scheduling do not adequately account for various factors related to project tasks, leading to inaccurate time predictions and inefficient scheduling.
A prediction device that acquires attribute information and time information for project tasks, using machine learning to predict task completion times based on learned relationships between these factors, thereby supporting more accurate scheduling.
Enables users to create optimal project schedules, improving work efficiency and productivity by providing accurate time estimates for project tasks.
Smart Images

Figure 0007680317000001 
Figure 0007680317000002 
Figure 0007680317000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a prediction device, a prediction method, and a prediction program. [Background technology]
[0002] Conventionally, techniques have been proposed for supporting management of each task in a project consisting of a plurality of tasks. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2020-9350 A Summary of the Invention [Problem to be solved by the invention]
[0004] However, the above-mentioned conventional techniques do not necessarily support a user in appropriately creating a schedule for promoting a project.
[0005] For example, the above-mentioned conventional technology generates a time chart based on the start time of a task and the time required to execute the task, and provides the generated time chart to a user. In addition, the above-mentioned conventional technology generates an actual line prediction model by performing machine learning using teacher data in which a scheduled line in the time chart is used as an input layer and an actual line of each task for the scheduled line is set as an output layer, and when a time chart including a new scheduled line is obtained, a predicted actual line is calculated using this actual line prediction model.
[0006] Here, the time required to execute a task can vary depending on various factors (elements) related to the project that comprises this task, but the above-mentioned conventional technology only uses actual results based on performance information including the start and end times of the task as training data.
[0007] In other words, the above-mentioned conventional technology does not take into account various factors related to the project, and simply uses actual information on the time required to execute a task as learning data. For this reason, the above-mentioned conventional technology has room for improvement in terms of accurately predicting the required time. Therefore, the above-mentioned conventional technology is not necessarily able to support users in appropriately creating a schedule for promoting a project.
[0008] Therefore, an object of the present invention is to support a user in appropriately creating a schedule for promoting a project. [Means for solving the problem]
[0009] A prediction device according to one embodiment of the present invention is characterized in having an acquisition unit that acquires, as actual information in a project related to system development, attribute information on attributes of the project and time information on the work time required to complete tasks included in the project, and a prediction unit that predicts the work time required to complete each task constituting the project to be predicted based on a model that has learned the relationship between the attribute information and the time information and the attribute information corresponding to the project to be predicted.
[0010] A prediction method according to one aspect of the present invention is a prediction method executed by a prediction device, and includes an acquisition step of acquiring, as actual information in a project related to system development, attribute information on attributes of the project and time information on the work time required to complete tasks included in the project, and a prediction step of predicting the work time required to complete each task constituting the project to be predicted, based on a model that has learned the relationship between the attribute information and the time information and the attribute information corresponding to the project to be predicted.
[0011] A prediction program according to one embodiment of the present invention is characterized in that it causes a prediction device to execute an acquisition step of acquiring, as actual information in a project related to system development, attribute information on attributes of the project and time information on the work time required to complete tasks included in the project, and a prediction step of predicting the work time required to complete each task constituting the project to be predicted, based on a model that has learned the relationship between the attribute information and the time information and the attribute information corresponding to the project to be predicted. Effect of the Invention
[0012] According to the present invention, for example, it is possible to support a user in appropriately creating a schedule for promoting a project. [Brief description of the drawings]
[0013] [Figure 1] FIG. 1 is a diagram illustrating an example of a prediction system according to an embodiment. [Diagram 2] FIG. 2 is a diagram illustrating an example of a prediction process according to the embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of the configuration of a prediction device according to the embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of an original data storage unit according to the embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of a model data storage unit according to the embodiment. [Figure 6] FIG. 6 is a flowchart showing a model generation process procedure according to the embodiment. [Figure 7] FIG. 7 is a flowchart illustrating a prediction process procedure according to the embodiment. [Figure 8] FIG. 8 is a block diagram illustrating an example of a hardware configuration of the prediction device according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0014] An example of a form for implementing a prediction device, a prediction method, and a prediction program (hereinafter, referred to as an "embodiment") will be described in detail below with reference to the drawings. Note that the prediction device, the prediction method, and the prediction program are not limited to this embodiment. Also, the same components in the following embodiments are given the same reference numerals, and duplicated descriptions will be omitted.
[0015] [Embodiment] 1. Introduction In projects, it is important to make work more efficient and to improve productivity. Here, the work that needs to be done until the project is completed is divided into smaller tasks, and each divided task is called a task. In order to improve work efficiency and productivity, it is important to know how to manage these tasks.
[0016] For example, since a project is promoted while checking the progress of each task, it is important to properly schedule the time by managing the time for each task. For example, since a person in charge of each task is assigned to the task, the project may be scheduled based on the estimated time required for each person to complete the task.
[0017] However, because a project may contain various attributes depending on the content, it may be difficult to properly estimate the amount of work time required for each task that constitutes the project. Furthermore, if the required time cannot be properly estimated, it may affect the scheduling of the entire project, making it difficult to improve work efficiency and productivity.
[0018] The present invention has been made in light of the above circumstances, and has an objective to provide a technology that can support a user in properly putting together a schedule for promoting a project. For this objective, the present invention performs machine learning using a set of attribute information on project attributes and time information on the work time required to complete tasks included in the project as learning data (teaching data) as actual project information, and predicts the work time required to complete each task (i.e., the time required to complete a task) for each task constituting the project to be predicted based on the learning results. Then, the present invention provides information on the prediction results to the user.
[0019] According to the present invention, the user can properly grasp the amount of work time required for each task in the current project, and can therefore create an optimal schedule for the project. As a result, the user can improve the work efficiency and productivity of the project.
[0020] In the following embodiment, the project is described as a project related to system development. Examples of projects related to system development include a new project for constructing a new system that runs a specific application, an enhancement project for enhancing an existing system that runs a specific application, and a conservative project for maintaining an existing system that runs a specific application. Of course, projects related to system development are not limited to these examples.
[0021] Furthermore, the prediction process according to the embodiment described below can be applied not only to projects related to system development but also to various other projects. For example, the prediction process according to the embodiment can be applied to various projects in the manufacturing industry.
[0022] [2. About the System] First, a configuration of a prediction system according to an embodiment will be described with reference to Fig. 1. Fig. 1 is a diagram illustrating an example of a prediction system according to an embodiment. Fig. 1 illustrates a prediction system 1 as an example of the prediction system according to an embodiment.
[0023] As shown in Fig. 1, the prediction system 1 includes a terminal device 10 and a prediction device 100. The terminal device 10 and the prediction device 100 are connected to each other via a network N so as to be able to communicate with each other via a wired or wireless connection. Note that the prediction system 1 shown in Fig. 1 may include any number of terminal devices 10 and any number of prediction devices 100.
[0024] The terminal device 10 may be an information processing terminal used by a user (end user). The terminal device 10 is realized by, for example, a smartphone, a tablet terminal, a notebook PC (Personal Computer), a desktop PC, a mobile phone, a PDA (Personal Digital Assistant), or the like.
[0025] Furthermore, the terminal device 10 may be installed with an application for realizing transmission and reception of information between the terminal device 10 and the prediction device 100. Furthermore, such an application may be implemented as a dedicated application for accessing the prediction device 100, or may be a general-purpose application such as a browser.
[0026] In this embodiment, a user may be a person who wants to know the amount of time required for a task, or a person who is responsible for scheduling a specific project, and an example of such a person may be a member participating in a specific project.
[0027] The prediction device 100 is an information processing device (server device) that performs prediction processing according to the embodiment. Specifically, the prediction device 100 acquires attribute information on attributes of a project related to system development and time information on the work time required to complete a task included in the project as performance information of the project. Then, the prediction device 100 predicts the work time required to complete each task constituting the project to be predicted based on a model that has learned the relationship between the attribute information and the time information and the attribute information corresponding to the project to be predicted.
[0028] In the present embodiment, the prediction device 100 is described as also generating a model used in the prediction process, but the generation of the model may be performed by a specific learning device other than the prediction device 100. In such a case, the prediction device 100 performs the prediction process according to the embodiment using the model generated by this learning device.
[0029] Furthermore, if the terminal device 10 is an edge computer that performs edge processing near the user, the prediction device 100 may be, for example, a cloud computer that performs processing on the cloud side.
[0030] In addition, in the example of FIG. 1, the terminal device 10 and the prediction device 100 are shown as separate, different devices, but the terminal device 10 and the prediction device 100 may be integrated. As an example of such integration, for example, a function described in the following embodiment as being performed by the prediction device 100 may be implemented on the terminal device 10 side. As a specific example, a configuration may be adopted in which the prediction program according to the embodiment is introduced into the terminal device 10 to cause the terminal device 10 to operate as the prediction device 100. In other words, the terminal device 10 may perform a series of prediction processes including model generation by machine learning.
[0031] [3. Specific examples of prediction processing] Next, a specific example of the prediction process according to the embodiment will be shown with reference to Fig. 2. Fig. 2 is a diagram showing an example of the prediction process according to the embodiment. The prediction process shown in Fig. 2 includes a process of generating a model by machine learning using learning data (steps S11 to S13) and a process of predicting an actual work time by applying information acquired from a user to this model (steps S21 and S22).
[0032] (Model Generation) First, model generation performed as a preliminary step of the prediction process will be described. In the example of Fig. 2, the prediction device 100 collects original data ORDAn, which is the source of learning data, from performance information of any past project PJn, and generates a prediction model using learning data (teaching data) based on the collected original data ORDAn.
[0033] In addition, the original data ORDAn may include attribute information on the attributes of the project PJn and time information on the work time required to complete each task included in the project PJn. Thus, the prediction device 100 acquires attribute information on the attributes of the project PJn and time information on the work time required to complete each task included in the project PJn.
[0034] Here, the attribute information on the attributes of the project PJn may be any information that is considered to have a correlation with the work time required to complete each task included in the project PJn. For example, the inventors of the present invention have found out what kind of attribute information has a correlation with the work time, and have thereby realized a highly accurate prediction process.
[0035] For example, the attribute information regarding the attributes of project PJn may be information regarding the scale of project PJn. Furthermore, the attribute information regarding the attributes of project PJn may be information regarding the team participating in project PJn. Furthermore, the attribute information regarding the attributes of project PJn may be information regarding the characteristics of project PJn. Furthermore, the attribute information regarding the attributes of project PJn may be information regarding the system that was the subject of development by project PJn. Details of these pieces of information will be described later.
[0036] In addition, time information regarding the work time required to complete each task included in the project PJn may include estimated work time, which is the work time estimated to be required to complete the task, and actual work time actually required to complete the task.
[0037] From here on, model generation will be described using a specific example of project PJn. For example, in the example of FIG. 2, project PJ1 is shown as an example of project PJn. In this example, the prediction device 100 acquires, as performance information of project PJ1, a set of attribute information on the attributes of project PJ1 and time information on the work time required to complete each task included in project PJ1. Then, the prediction device 100 collects the acquired set as original data ORDA1 (step S11).
[0038] 2, project PJ2 is shown as an example of project PJn. In this example, the prediction device 100 acquires, as performance information on project PJ2, a set of attribute information on attributes of project PJ2 and time information on work time required to complete each task included in project PJ2. Then, the prediction device 100 collects the acquired set as original data ORDA2 (step S11).
[0039] 2, project PJ3 is shown as an example of project PJn. In this example, the prediction device 100 acquires, as performance information on project PJ3, a set of attribute information on attributes of project PJ3 and time information on working time required to complete each task included in project PJ3. Then, the prediction device 100 collects the acquired set as original data ORDA3 (step S11).
[0040] Note that there is no limitation on the method by which the prediction device 100 acquires the performance information. For example, in the example of Fig. 2, a method may be adopted in which the prediction device 100 acquires performance information registered by people who participated in the projects PJ1, PJ2, and PJ3, or in the case where performance information is automatically accumulated in a specific device, the prediction device 100 may acquire the performance information from this device.
[0041] Next, the prediction device 100 generates learning data to be used for model training from the original data ORDAn collected in step S11 (step S12). For example, the prediction device 100 generates learning data to be used for model training by performing a cleansing process on the original data ORDAn. The example in FIG. 2 shows an example in which the prediction device 100 generates learning data LDn from the original data ORDAn.
[0042] Next, the prediction device 100 generates a model that outputs information on the work time required to complete each task constituting the project to be predicted, for which attribute information is input, by machine learning using the learning data LDn (step S13). For example, the prediction device 100 generates a prediction model Mn that outputs information used to predict the work time required to complete each task constituting the project to be predicted, using attribute information corresponding to the project to be predicted as input, by having the model learn the relationship between attribute information and time information included in the learning data LDn. In the example of FIG. 2, it is assumed that the prediction device 100 generates a prediction model M1 from learning data LD1, which is an example of the learning data LDn.
[0043] (Prediction processing) Next, a prediction process using the prediction model Mn will be described. In the example of Fig. 2, a user U1 who is one of the members participating in a new project PJx related to system development wants to know the time required for task TS1 for which he is in charge. Fig. 2 also shows an example in which user U1 estimates "6 hours" (estimated work time "6 hours") as the work time required to complete task TS1.
[0044] In this example, the terminal device 10 transmits attribute information on the attributes of the new project PJx and time information on the work time required to complete the task TS1 to the prediction device 100 as input information to be input to the prediction model M1 in response to an operation by the user U1. Note that the time information here may be information indicating the estimated work time "6 hours" estimated by the user U1. The terminal device 10 may also transmit identification information for identifying the task TS1 as input information.
[0045] The prediction device 100 inputs the input information received from the terminal device 10 to the prediction model M1 (step S21). The prediction model M1 outputs information that can be used to predict the work time required to complete one task TS1 constituting a project PJx (an example of a project to be predicted) in accordance with the input information input by the prediction device 100. For example, the prediction model M1 may output a score used to estimate the work time required to complete the task TS1.
[0046] Then, the prediction device 100 predicts the work time required to complete the task TS1 based on the output information output by the prediction model M1, and provides the prediction result to the user U1 (step S22). For example, the prediction device 100 notifies the terminal device 10 of the prediction result.
[0047] 1 and 2, the prediction device 100 included in the prediction system 1 generates a model from learning data obtained from performance information of a system development project, and predicts the work time required to complete each task constituting the project to be predicted based on the generated model and attribute information corresponding to the project to be predicted. Such a prediction device 100 enables the user to appropriately create a schedule for promoting the project.
[0048] 4. Configuration of the prediction device From here, the prediction device 100 according to the embodiment will be described with reference to Fig. 3. Fig. 3 is a diagram showing an example of the configuration of the prediction device 100 according to the embodiment. As shown in Fig. 3, the prediction device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.
[0049] (Regarding communication unit 110) The communication unit 110 is realized by, for example, a network interface card (NIC) etc. The communication unit 110 is connected to a network by wire or wirelessly, and transmits and receives information to and from the terminal device 10, for example.
[0050] (Regarding the storage unit 120) The storage unit 120 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk, an optical disk, etc. The storage unit 120 has an original data storage unit 121, a training data storage unit 122, a model data storage unit 123, and a prediction result storage unit 124.
[0051] (Regarding the original data storage unit 121) The original data storage unit 121 stores information about original data that is the source of learning data. Specifically, the original data storage unit 121 stores performance information in a project as information about the original data.
[0052] Here, Fig. 4 shows an example of the original data storage unit 121 according to the embodiment. As described in Fig. 2, the performance information of the project includes attribute information on the attributes of the project. The attribute information on the attributes of the project may be information on the scale of the project, information on the team participating in the project, information on the characteristics of the project, or information on the system that was the subject of development by the project, and the original data shown in Fig. 4 focuses on the information on the characteristics of the project.
[0053] For example, project participants draw up a project plan to advance the project. For example, users manage tasks so that the project can proceed efficiently. For example, users break down the project into processes, such as a launch process, an analysis process, a design process, a manufacturing process, and the like. In addition, users define tasks by further classifying each process into requirements definition, basic design, detailed design, operational design, manufacturing, testing, and the like. Thus, the original data shown in FIG. 4 corresponds to information on tasks defined in accordance with classifying the project into processes (i.e., work steps). Such original data may be created when drawing up a project plan, and corresponds to classification information for each task included in the project, which is classified in a hierarchical manner.
[0054] In the example of Fig. 4, the original data has items such as "project type" and "project ID". Also, in the example of Fig. 4, the original data includes "task classification information", "definition information", "function information", "person in charge information", and "time information" as examples of "information regarding project characteristics". Note that "project type" and "project ID" may also be included in "information regarding project characteristics".
[0055] Also, according to the example in Figure 4, "task classification information" includes items such as "major category," "medium category," "first minor category," and "second minor category." "Definition information" includes an item such as "task content." "Function information" includes an item such as "function content." "Person in charge information" includes items such as "name" and "career." "Time information" includes items such as "estimated work hours" and "actual work hours."
[0056] From here on, the original data will be described in more detail. The original data shown in FIG. 4 focuses on the design process among various existing processes (work steps), but in reality, it may include a start-up process, an analysis process, a manufacturing process, and the like in addition to the design process. Also, since the process differs depending on the contents of the project, the original data shown in FIG. 4 is merely an example. In other words, the information processing according to the embodiment is not a process that cannot be realized without the data configuration shown in FIG. 4.
[0057] First, "project type" is information about the type of project, and examples include "new development," "enhancement," and "maintenance," as shown in FIG. 4. "New development" is, for example, a project to build a new system that runs a specified application. "Enhancement" is, for example, a project to enhance an existing system that runs a specified application. "Maintenance" is, for example, a project related to the maintenance of an existing system that runs a specified application.
[0058] "Project ID" indicates identification information for identifying a project. FIG. 4 shows an example in which a project type "new development" is associated with a project ID "PJ1." This example shows an example in which a past project (project PJ1) identified by the project ID "PJ1" was a project belonging to the project type "new development." Note that the following explanation will be given using the example of project PJ1.
[0059] "Major categories" shows the results of broadly categorizing the work processes of project PJ1, and as mentioned above, this categorization results in launch processes, analysis processes, design processes, manufacturing processes, etc. Project PJ1 may also be broadly categorized into four types, launch processes, analysis processes, design processes, and manufacturing processes, just like in this example, but the example in Figure 4 shows only the example of the design process.
[0060] "Medium classification" refers to the result of further categorizing the results of the "major classification," and as mentioned above, this classification result includes requirements definition, basic design, detailed design, operational design, manufacturing, testing, etc. Figure 4 shows an example in which the major classification "design process" is categorized into the medium classifications "basic design" and "detailed design."
[0061] The "First Subcategory" indicates the classification result that is a further detailed classification of the classification result of the "Medium Category." Figure 4 shows an example in which the medium category "basic design" is classified into the first subcategory "screen design" and "program design."
[0062] The "Second Subcategory" indicates a classification result in which the classification result of the "First Subcategory" is further classified into more detailed categories. Figure 4 shows an example in which the first subcategory, "Screen Design," is classified into the second subcategory, "Customer Management Screen Design" and "Case Management Screen Design."
[0063] "Task content" is information indicating the content of a task defined based on the classification results as a "major category", the classification results as a "medium category", the classification results as a "first minor category", and the classification results as a "second minor category". FIG. 4 shows an example in which the second minor category "customer management screen design" is associated with the task contents "reviewing screen layout", "reviewing screen functions", and "reviewing screen input checks". This example shows an example in which a task with the content "reviewing screen layout", a task with the content "reviewing screen functions", and a task with the content "reviewing screen input checks" are defined as tasks belonging to the second minor category "customer management screen design".
[0064] Here, in FIG. 4, specific information is written in parentheses for each of the classification results as the "first minor category", the classification results as the "second minor category", and the task contents. This information is deliverable information indicating the deliverable obtained in the work process. For example, in the example of FIG. 4, "screen design document" is written in parentheses corresponding to the first minor category "screen design". This example means that the work process "screen design" will produce a deliverable called "screen design document". Also, in the example of FIG. 4, "customer management screen design document" is written in parentheses corresponding to the second minor category "customer management screen design". This example means that the work process "customer management screen design" will produce a deliverable called "customer management screen design document". Also, in the example of FIG. 4, "screen layout specification document" is written in parentheses corresponding to the task content "screen layout consideration". This example means that the work process "screen layout consideration" will produce a deliverable called "screen layout specification document".
[0065] Here, for example, assume that project PJ1 is a project related to a specific application. In this case, "functional content" is information indicating what function the corresponding work process is intended to realize in this application, and the content of that function. FIG. 4 shows an example in which task content "screen layout consideration" is associated with functional content "function A11." This example shows an example in which the task "screen layout consideration" is an operation corresponding to a function "function A11" among the functions of the application.
[0066] "Person in charge information" indicates information about the person in charge of each task defined in "Definition information". Therefore, "Name" is information about the name of the person in charge. Also, "Career" indicates information about the career of the person in charge. Figure 4 shows an example in which the task content "Consideration of screen layout" is associated with the name "NA11". This example shows an example in which the name of the person in charge of the task "Consideration of screen layout" is "NA11". Figure 4 also shows an example in which the task content "Consideration of screen layout" is associated with the career "PF11". This example shows an example in which the career of the person in charge of the task "Consideration of screen layout" is "PF11".
[0067] Here, the "person in charge information" will be described in more detail. For example, the following information can be given as the person in charge information that is considered to have a correlation with the work time required to complete a task. For example, in the example of FIG. 4, the "person in charge information" may be information indicating the time when the person in charge participated in project PJ1, and information indicating the possession status of qualifications related to the contents of project PJ1. Furthermore, the "person in charge information" may be information indicating what kind of projects and teams the person in charge has belonged to, in addition to project PJ1, in other words, team history information for each project. Furthermore, the "person in charge information" may be language history information indicating the history of the person in the programming language required for project PJ1, or language information indicating the programming language in which the person in charge excels. Furthermore, the "person in charge information" may be attendance information indicating the attendance tendency of the person in charge.
[0068] Moreover, the performance information of the project also includes "time information" regarding the work time required to complete the tasks included in the project. As shown in FIG. 4, the "time information" may include "estimated work time", which is the work time estimated to be required to complete the task, and "actual work time", which is the work time actually required to complete the task. FIG. 4 shows an example in which the task content "screen layout consideration" is associated with the estimated work time "ETM11". This example shows an example in which a person in charge of the task "screen layout consideration" estimates that this task requires about "ETM11" time. FIG. 4 also shows an example in which the task content "screen layout consideration" is associated with the actual work time "ATM11". This example shows an example in which a person in charge of the task "screen layout consideration" actually required about "ATM11" time to complete the task.
[0069] Here, although not shown in FIG. 4, the information on the project characteristics may further include information indicating the degree of difficulty of the project. The degree of difficulty of the project may be calculated based on the balance of Q (quality), C (cost), and D (delivery). For example, in a "new development" project, there is a tendency for high importance to be specified for all of QCD, such as "S rank" for the importance of Q, "S rank" for the importance of C, and "S rank" for the importance of D. Therefore, a value indicating a high degree of difficulty may be calculated for a "new development" project. On the other hand, since "enhancement" and "maintenance" projects have flexibility in the delivery date, a value indicating a lower degree of difficulty may be calculated for them compared to a "new development" project.
[0070] So far, we have explained examples of attribute information on project attributes, particularly information on project characteristics, using Figure 4. Below, we will also explain examples of attribute information on project attributes, such as information on the scale of the project, information on the team involved in the project, and information on the system that was the subject of development by the project.
[0071] For example, the information on the scale of the project may be the estimated number of man-hours estimated for the project, or the information on the scale of the project may be the estimated amount of money estimated for the project.
[0072] Furthermore, the information on the teams participating in the project may be information indicating the person in charge of each team. The information indicating the person in charge may be, for example, information that can identify which member of the team is the project manager (PM) and which member is the project leader (PL).
[0073] Furthermore, the information on the teams participating in the project may be information indicating the member composition of each team. The information indicating the member composition may be, for example, the team name, the names of the members, and the roles (positions) of the members. The information indicating the member composition may also include information indicating the compatibility between the members (for example, information indicating which members have good (or bad) compatibility with each member).
[0074] The compatibility between the members may be determined by a specific person or may be determined by the prediction device 100. For example, when the prediction device 100 compares the work efficiency calculated based on the history information of the work process in which the joint work was required with the average work efficiency of the joint work and determines that the work efficiency has improved, the prediction device 100 may determine that the compatibility between the members who participated in the joint work is good. On the other hand, when the prediction device 100 determines that the work efficiency has decreased, the prediction device 100 may determine that the compatibility between the members who participated in the joint work is bad.
[0075] Furthermore, the information on the system that is the subject of development in the project may be information indicating the system configuration of the system that is the subject of development. The information indicating the system configuration may be, for example, information indicating whether the system is a system configured with a cloud server or a serverless system that does not have a server.
[0076] The information about the system that is the subject of development in the project may be information indicating the type of application that is provided to users by the system that is the subject of development. The information indicating the type of application may be, for example, information indicating whether the application is a native application or a web application.
[0077] (Regarding the learning data storage unit 122) The learning data storage unit 122 stores information about learning data generated based on original data stored in the learning data storage unit 122. Although not shown, the learning data storage unit 122 may store the original data itself as learning data. On the other hand, the learning data storage unit 122 may store data obtained as a result of performing a cleansing process on the original data as learning data. Furthermore, the learning data storage unit 122 may store data obtained by performing a predetermined processing process on the original data as learning data.
[0078] Regarding the processing, for example, the prediction device 100 can process the original data as shown in FIG. 4 into data classified by deliverables instead of processes. The prediction device 100 can also process the original data as shown in FIG. 4 by grouping the data by person in charge. Taking FIG. 4 as an example, the importance of various items such as task classification information, definition information, function information, and person in charge information may be determined when the model is trained. Therefore, the prediction device 100 may perform processing such as weighting so that learning is performed according to the importance.
[0079] (Regarding the model data storage unit 123) The model data storage unit 123 stores information about the prediction model Mn generated by the prediction device 100. Here, Fig. 5 shows an example of the model data storage unit 123 according to the embodiment. In the example of Fig. 5, the model data storage unit 123 has items such as "model ID", "prediction target", and "model data".
[0080] "Model ID" indicates identification information for identifying a prediction model Mn. For example, a prediction model Mn identified by a model ID "M1" corresponds to the prediction model M1 shown in the example of FIG. 2. "Prediction target" indicates a prediction target of a corresponding model. Furthermore, "model data" indicates data of the corresponding model. For example, the "model data" includes information including nodes in each layer, functions employed by each node, connection relationships between the nodes, and connection coefficients set for connections between the nodes.
[0081] 5, the model (prediction model M1) identified by the model ID "M1" predicts "work time" (the work time required to complete each task constituting the project to be predicted) and is used to predict the work time corresponding to the input attribute information. Also, the model data of the prediction model M1 is model data MD1.
[0082] The prediction model M1 (model data MD1) includes an input layer to which attribute information is input, an output layer, a first element belonging to a layer other than the output layer that is any layer from the input layer to the output layer, and a second element whose value is calculated based on the first element and the weight of the first element, and is a model for causing a computer to function such that, for the attribute information input to the input layer, each element belonging to each layer other than the output layer is treated as a first element, and a calculation is performed based on the first element and the weight of the first element, thereby outputting a score used to predict work time from the output layer.
[0083] Here, the prediction model M1 etc. is "y = a 1 *x 1 +a 2 *x 2 +···+ai *x i " is used. In this case, for example, the first element included in the prediction model M1 corresponds to input data (xi) such as x1, x2, etc. The weight of the first element corresponds to the coefficient ai corresponding to xi. Here, the regression model can be regarded as a simple perceptron having an input layer and an output layer. When each model is regarded as a simple perceptron, the first element corresponds to any node in the input layer, and the second element can be regarded as a node in the output layer.
[0084] Also, it is assumed that the prediction model M1 etc. is realized by a neural network having one or more intermediate layers such as DNN. In this case, for example, the first element included in the prediction model M1 corresponds to any node of the input layer or intermediate layer. Also, the second element corresponds to a next-stage node which is a node to which a value is transmitted from the node corresponding to the first element. Also, the weight of the first element corresponds to a connection coefficient which is a weight considered for a value transmitted from the node corresponding to the first element to the node corresponding to the second element.
[0085] (Regarding the prediction result storage unit 124) The prediction result storage unit 124 stores information about the prediction result predicted using the prediction model Mn. Although not shown, the prediction result storage unit 124 stores, for example, the work time predicted for each task constituting the project to be predicted, which is the work time required to complete the task, in association with the project ID that identifies this project.
[0086] (Regarding the control unit 130) 3, the control unit 130 is realized by a central processing unit (CPU), a micro processing unit (MPU), or the like executing various programs (for example, the prediction program according to the embodiment) stored in a storage device inside the prediction device 100 using a RAM as a working area. The control unit 130 is also realized by an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
[0087] As shown in Fig. 3, the control unit 130 has an acquisition unit 131, a data control unit 132, a generation unit 133, a reception unit 134, a prediction unit 135, and a provision unit 136, and realizes or executes the functions and actions of information processing described below. Note that the internal configuration of the control unit 130 is not limited to the configuration shown in Fig. 3, and may be other configurations as long as they perform the information processing described below. Also, the connection relationship between the processing units in the control unit 130 is not limited to the connection relationship shown in Fig. 3, and may be other connection relationships.
[0088] (Regarding the acquisition unit 131) The acquiring unit 131 acquires attribute information on project attributes as performance information on a project related to system development.
[0089] The acquiring unit 131 acquires information on the scale of a project as the attribute information. For example, the acquiring unit 131 acquires an estimated number of man-hours estimated for the project or an estimated amount of money estimated for the project as the information on the scale of the project.
[0090] Furthermore, the acquisition unit 131 acquires information about the teams participating in the project as attribute information. For example, the acquisition unit 131 acquires information indicating a person in charge of each team, information indicating a member composition of each team, or information indicating compatibility between members of each team as information about the teams participating in the project.
[0091] Furthermore, the acquiring unit 131 acquires information on project characteristics as the attribute information. For example, the acquiring unit 131 acquires information indicating the type of project or information indicating the degree of difficulty of the project as the information on project characteristics.
[0092] Also, for example, the acquisition unit 131 acquires, as information on the characteristics of the project, classification information for each task included in the project, which is classified in a hierarchy. As an example, the acquisition unit 131 acquires, as the classification information, a set of task classification information in which the work processes to which the tasks belong are classified in a hierarchy, definition information indicating the contents of the tasks defined according to the task classification information, and deliverable information indicating the deliverables obtained for each work process.
[0093] Here, the acquisition unit 131 may further acquire, for each task, information on the person in charge of the task as information on the characteristics of the project. For example, the acquisition unit 131 acquires, as the information on the person in charge, information indicating the time when the person in charge participated in the project, information indicating the holding status of qualifications related to the content of the project, team history information indicating what kind of project and what kind of team the person in charge belonged to, language history information indicating the history of the programming language required for the project, language information indicating the programming language in which the person in charge is good, or attendance information indicating the attendance tendency of the person in charge.
[0094] Furthermore, the acquisition unit 131 acquires, as attribute information, information about the system that is the subject of development by the project. For example, the acquisition unit 131 acquires, as the information about the system, information indicating the system configuration of the system or information indicating the type of application provided to the user by the system.
[0095] The acquisition unit 131 also acquires time information on the work time required to complete a task included in a project as actual performance information in the project related to the development of the system. For example, the acquisition unit 131 acquires, as time information for each task, an estimated work time, which is the work time estimated to be required to complete the task, and an actual work time, which is the work time actually required to complete the task. The time information corresponds to the objective variable whose explanatory variable is the attribute information described above.
[0096] 2, the acquisition unit 131 acquires, as performance information for the project PJ1, a set of attribute information on the attributes of the project PJ1 and time information on the work time required to complete each task included in the project PJ1. The acquisition unit 131 then collects the acquired set as original data ORDA1.
[0097] 2, the acquisition unit 131 acquires, as performance information for the project PJ2, a set of attribute information on the attributes of the project PJ2 and time information on the work time required to complete each task included in the project PJ2. The acquisition unit 131 then collects the acquired set as original data ORDA2.
[0098] 2, the acquisition unit 131 acquires, as performance information for the project PJ3, a set of attribute information on the attributes of the project PJ3 and time information on the work time required to complete each task included in the project PJ3. The acquisition unit 131 then collects the acquired set as original data ORDA3.
[0099] Furthermore, the acquiring section 131 may store the acquired attribute information and time information in the original data storage section 121 in association with each other.
[0100] (Regarding data control unit 132) The data control unit 132 generates learning data to be used for model learning from the original data, using the performance information acquired by the acquisition unit 131, specifically, a set of attribute information and time information, as the original data. For example, the data control unit 132 may generate learning data to be used for model learning by performing a cleansing process on the original data.
[0101] The data control unit 132 may also perform a predetermined processing process on the original data. For example, the data control unit 132 may process the original data classified by process into data classified by deliverable. The data control unit 132 may also aggregate the original data classified by process by person in charge. In addition, when the importance of each of various items such as task classification information, definition information, function information, and person in charge information is determined when the model is trained, the data control unit 132 may perform weighting according to the importance so that training according to the importance is performed.
[0102] In the example of FIG. 2, the data control unit 132 generates learning data LDn (LD1) from original data ORDAn (ORDA1 to ORDA3).
[0103] (Regarding the generation unit 133) The generation unit 133 uses a set of attribute information and time information as learning data and has the model learn the relationship between the attribute information and the time information, thereby generating a model that outputs the work time required to complete each task constituting the project to be predicted to which the attribute information is input. For example, the generation unit 133 generates a prediction model Mn that outputs information (e.g., a score) used to predict the work time required to complete a task.
[0104] The generation unit 133 may generate the prediction model Mn using any learning algorithm. For example, the generation unit 133 generates the prediction model Mn using a learning algorithm such as a neural network, a support vector machine (SVM), clustering, or reinforcement learning. As an example, when the generation unit 133 generates the prediction model Mn using a neural network, the prediction model Mn has an input layer including one or more neurons, an intermediate layer including one or more neurons, and an output layer including one or more neurons.
[0105] The generating unit 133 also stores the generated prediction model Mn in the model data storage unit 123. Specifically, the generating unit 133 generates a prediction model Mn that includes an input layer to which attribute information is input, an output layer, a first element belonging to any layer from the input layer to the output layer other than the output layer, and a second element whose value is calculated based on the first element and the weight of the first element, and outputs a score used to predict the task time from the output layer by performing a calculation based on the first element and the weight of the first element for the attribute information input to the input layer, with each element belonging to each layer other than the output layer as the first element. Then, the generating unit 133 stores the generated prediction model Mn in the model data storage unit 123.
[0106] According to the example of FIG. 2, the generation unit 133 generates the prediction model M1 by performing learning using the learning data ORDA1 to ORDA3, etc. as learning data (teacher data). For example, the generation unit 133 generates the prediction model M1 based on attribute information included in the learning data ORDA1 to ORDA3, etc. For example, the generation unit 133 extracts features from information on the scale of the project included in the learning data ORDA1 to ORDA3, etc., and generates the prediction model M1 using the extracted features. Also, for example, the generation unit 133 extracts features from information on the team that participated in the project included in the learning data ORDA1 to ORDA3, etc., and generates the prediction model M1 using the extracted features. Also, for example, the generation unit 133 extracts features from information on the characteristics of the project included in the learning data ORDA1 to ORDA3, etc., and generates the prediction model M1 using the extracted features. Furthermore, for example, the generating unit 133 extracts features from information about the systems that are the development targets of the projects included in the learning data ORDA1 to ORDA3, and generates a prediction model M1 using the extracted features.
[0107] To give a specific example, when the correct answer information is a score indicating the time information contained in the learning data ORDA1 (score "SC1"), the generation unit 133 performs a learning process so that when attribute information contained in the learning data ORDA1 is input, the score output by the prediction model M1 approaches "SC1".
[0108] Also, for example, when the correct answer information is a score indicating the time information contained in the learning data ORDA2 (score "SC2"), the generation unit 133 performs a learning process so that when attribute information contained in the learning data ORDA2 is input, the score output by the prediction model M1 approaches "SC2".
[0109] Also, for example, when the correct answer information is a score indicating the time information included in the learning data ORDA3 (score "SC3"), the generation unit 133 performs a learning process so that when attribute information included in the learning data ORDA3 is input, the score output by the prediction model M1 approaches "SC3".
[0110] (Regarding the reception unit 134) The receiving unit 134 receives input information from a user (terminal device 10) to be input to the prediction model Mn generated by the generation unit 133. For example, the receiving unit 134 receives, as input information to be input to the prediction model Mn, attribute information on attributes of the project to be predicted and time information on the work time required to complete the task, which is the work time for each task constituting the project. Note that the time may be information indicating an estimated work time estimated by the user for each task.
[0111] In the example of FIG. 2, the receiving unit 134 receives, as input information, attribute information on the attributes of a new project PJx and information indicating an estimated work time estimated for a task TS1 from a user U1.
[0112] (Regarding the prediction unit 135) The prediction unit 135 predicts the working time required to complete each task that constitutes the project to be predicted, based on a model (the prediction model Mn generated by the generation unit 133) that has learned the relationship between attribute information on the attributes of projects that have been carried out in the past and time information on the working time required to complete the tasks included in the projects, and the attribute information corresponding to the project to be predicted.
[0113] For example, the prediction unit 135 inputs the input information received by the receiving unit 134 to the prediction model Mn. More specifically, the prediction unit 135 inputs a pair of attribute information related to the attributes of the project to be predicted and an estimated work time estimated for each task constituting the project to be predicted to the prediction model. The prediction model Mn outputs information used to predict the work time required to complete each task constituting the project to be predicted, according to the input information. The prediction unit 135 predicts the work time required to complete each task constituting the project to be predicted, based on the output information output by the prediction model Mn.
[0114] (About the provider 136) The providing unit 136 provides the prediction result (work time for each task) by the prediction unit 135 to a user who has requested the prediction of the work time (a user who has transmitted input information). For example, the providing unit 136 transmits the prediction result to the terminal device 10 of the user.
[0115] 5. Processing Procedure Next, the procedure of the prediction process according to the embodiment will be described with reference to Fig. 6 and Fig. 7. Fig. 6 shows the procedure of model generation performed as a preliminary step of the prediction process. Fig. 7 describes the procedure of the prediction process using the generated model.
[0116] [5-1. Processing Procedure (1)] First, a description will be given of Fig. 6. Fig. 6 is a flowchart showing the procedure of a model generation process according to the embodiment.
[0117] First, the acquisition unit 131 acquires attribute information on the attributes of the project PJn and time information on the work time required to complete each task included in the project PJn (step S101). For example, the acquisition unit 131 may acquire, as the attribute information, information on the scale of the project PJn, information on the team participating in the project PJn, information on the characteristics of the project PJn, and information on the system that was the subject of development by the project PJn. Also, for example, the acquisition unit 131 may acquire, as the time information, an estimated work time that is the work time estimated to be required to complete the task, and an actual work time that is actually required to complete the task, for each task included in the project PJn.
[0118] Next, the generating unit 133 generates a prediction model Mn that predicts the work time required for each task included in the project PJx to be predicted by having the model learn the relationship between the attribute indicated by the attribute information and the work time indicated by the time information (step S102). For example, the generating unit 133 generates a prediction model Mn that outputs information used to predict the work time required for each task constituting the project PJx to be predicted, using a pair of attribute information and time information as learning data.
[0119] [5-2. Processing Procedure (2)] First, a description will be given of Fig. 7. Fig. 7 is a flowchart showing a prediction process procedure according to the embodiment.
[0120] First, the receiving unit 134 determines whether or not attribute information indicating the attributes of the project PJx to be predicted and time information indicating the estimated work time for each task that constitutes the project PJx, which is estimated to be required to complete the tasks, have been received from the user (step S201).
[0121] While it is determined that the attribute information and the time information have not been received (Step S201; No), the receiving unit 134 waits until it can determine that the attribute information and the time information have been received.
[0122] On the other hand, when it is determined that the attribute information and the time information have been received (step S201; Yes), the prediction unit 135 inputs the received attribute information and time information to the prediction model Mn (step S202).
[0123] Furthermore, the prediction unit 135 predicts the work time required for each task included in the project PJx to be predicted, based on the output information output by the prediction model Mn in response to the input information (step S203).
[0124] The providing unit 136 provides the prediction result (work time for each task) by the prediction unit 135 to the user who requested the prediction of the work time (the user who transmitted the input information) (step S204). For example, the providing unit 136 transmits the prediction result to the terminal device 10 of the user.
[0125] [6. Hardware Configuration] Next, a hardware configuration example of the prediction device 100 according to the embodiment will be described. FIG. 8 is a block diagram showing a hardware configuration example of the prediction device 100 according to the embodiment. Referring to FIG. 8, the prediction device 100 has, for example, a processor 801, a ROM 802, a RAM 803, a host bus 804, a bridge 805, an external bus 806, an interface 807, an input device 808, an output device 809, a storage 810, a drive 811, a connection port 812, and a communication device 813. Note that the hardware configuration shown here is an example, and some of the components may be omitted. In addition, components other than those shown here may be further included.
[0126] (Processor 801) The processor 801 functions, for example, as an arithmetic processing device or control device, and controls all or part of the operation of each component based on various programs recorded in the ROM 802, the RAM 803, the storage 810, or the removable recording medium 901.
[0127] (ROM802, RAM803) The ROM 802 is a means for storing the programs to be read into the processor 801, data to be used for calculations, etc. The RAM 803 temporarily or permanently stores, for example, the programs to be read into the processor 801, various parameters that change appropriately when the programs are executed, etc.
[0128] (host bus 804, bridge 805, external bus 806, interface 807) The processor 801, ROM 802, and RAM 803 are connected to each other via, for example, a host bus 804 capable of high-speed data transmission. On the other hand, the host bus 804 is connected to an external bus 806 having a relatively low data transmission speed via, for example, a bridge 805. In addition, the external bus 806 is connected to various components via an interface 807.
[0129] (Input device 808) Examples of the input device 808 include a mouse, a keyboard, a touch panel, a button, a switch, and a lever. Furthermore, a remote controller capable of transmitting control signals using infrared rays or other radio waves may be used as the input device 808. The input device 808 also includes an audio input device such as a microphone.
[0130] (Output Device 809) The output device 809 is a device capable of visually or audibly notifying the user of acquired information, such as a display device such as a CRT (Cathode Ray Tube), LCD, or organic EL, an audio output device such as a speaker or a headphone, a printer, a mobile phone, a facsimile, etc. The output device 809 according to this embodiment also includes various vibration devices capable of outputting tactile stimuli.
[0131] (Storage 810) The storage 810 is a device for storing various types of data. For example, a magnetic storage device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, or a magneto-optical storage device may be used as the storage 810.
[0132] (Drive 811) The drive 811 is a device that reads information recorded on a removable recording medium 901 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and writes information to the removable recording medium 901.
[0133] (Connection port 812) The connection port 812 is a port for connecting an external device 902, such as a Universal Serial Bus (USB) port, an IEEE1394 port, a Small Computer System Interface (SCSI), an RS-232C port, or an optical audio terminal.
[0134] (Communication device 813) The communication device 813 is a communication device for connecting to a network, such as a communication card for wired or wireless LAN, Bluetooth (registered trademark), or WUSB (Wireless USB), a router for optical communications, a router for ADSL (Asymmetric Digital Subscriber Line), or a modem for various types of communications.
[0135] (Removable recording media 901) The removable recording medium 901 is, for example, a DVD medium, a Blu-ray (registered trademark) medium, an HD DVD medium, various semiconductor storage media, etc. Of course, the removable recording medium 901 may be, for example, an IC card equipped with a non-contact type IC chip, or an electronic device.
[0136] (External connection device 902) The external connection device 902 is, for example, a printer, a portable music player, a digital camera, a digital video camera, or an IC recorder.
[0137] The storage unit 120 according to the embodiment is realized by the ROM 802, the RAM 803, and the storage 810. The control unit 130 according to the embodiment realized by the processor 801 reads out and executes each control program (for example, a prediction program according to the embodiment) that realizes the acquisition unit 131, the data control unit 132, the generation unit 133, the reception unit 134, the prediction unit 135, and the provision unit 136 from the ROM 802, the RAM 803, etc.
[0138] [7. Other] Among the above-mentioned processes, all or part of the processes described as being performed automatically may be performed manually. Also, all or part of the processes described as being performed manually may be performed automatically by a known method. In addition, the information including the processing procedures, specific names, various data and parameters shown in the above documents and drawings may be changed arbitrarily unless otherwise specified. For example, the various information shown in each drawing is not limited to the illustrated information.
[0139] In addition, each component of each device shown in the figure is a functional concept, and does not necessarily have to be physically configured as shown in the figure. In other words, the specific form of distribution and integration of each device is not limited to that shown in the figure. Furthermore, each component may be configured by distributing and integrating functionally or physically in any unit, in whole or in part, depending on various loads and usage conditions. Furthermore, each process described above may be executed in appropriate combination within a range that does not contradict.
[0140] The above describes the embodiments of the present application in detail with reference to several drawings. However, these are merely examples, and the present invention can be embodied in other forms that incorporate various modifications and improvements based on the knowledge of those skilled in the art, including the aspects described in the Disclosure of the Invention section. [Explanation of symbols]
[0141] 1. Prediction System 10 Terminal Equipment 100 Prediction Device 120 Storage section 121 Original data storage unit 122 Learning data storage unit 123 Model Data Storage Unit 124 Prediction result memory unit 130 Control section 131 Acquisition Department 132 Data Control Section 133 Generation part 134 Reception Department 135 Prediction Department 136 Provision Department
Claims
1. an acquisition unit that acquires, as performance information of a project related to the development of a system, attribute information related to attributes of the project and time information related to work time required to complete a task included in the project; a prediction unit that predicts an operation time required to complete each task constituting a project to be predicted, based on a model that has learned the relationship between the attribute information and the time information and attribute information corresponding to the project to be predicted; A prediction device comprising:
2. a generation unit that generates, as the model, a model that outputs an operation time required to complete each task constituting the project to be predicted, for which attribute information is input, by learning the relationship using a pair of the attribute information and the time information as learning data; The prediction unit predicts an operation time required to complete each task constituting the project to be predicted, based on the model generated by the generation unit and attribute information corresponding to the project to be predicted. The prediction device according to claim 1 .
3. The acquisition unit acquires, as the attribute information, at least one of information on a scale of the project, information on a team participating in the project, information on characteristics of the project, and information on the system that was the subject of development by the project.
3. The prediction device according to claim 1 or 2.
4. When acquiring information on the characteristics of the project from the attribute information, the acquisition unit acquires at least one of the following information on the characteristics of the project: information indicating a type of the project; information indicating a difficulty level of the project; classification information for each task included in the project, the classification information being hierarchically classified; and information on a person in charge of each task included in the project. The prediction device according to claim 3 .
5. When acquiring the classification information from among the information on the characteristics of the project, the acquisition unit acquires, as the classification information, a set of task classification information in which work processes to which the tasks belong are hierarchically classified, definition information indicating the contents of the tasks defined according to the task classification information, and deliverable information indicating the deliverables obtained for each of the work processes. The prediction device according to claim 4 .
6. When acquiring information on the person in charge from among the information on the characteristics of the project, the acquisition unit acquires at least one of the following information on the person in charge: information indicating when the person in charge joined the project; information indicating the holding status of qualifications related to the content of the project; team history information indicating what kind of project the person in charge has belonged to what kind of team; language history information indicating the history of the person in a programming language required for the project; language information indicating a programming language that the person in charge is good at; and attendance information indicating the attendance tendency of the person in charge.
6. The prediction device according to claim 4 or 5.
7. When acquiring information related to the system from among the attribute information, the acquisition unit acquires, as the information related to the system, information indicating a system configuration of the system or information indicating a type of application provided to a user by the system. The prediction device according to any one of claims 3 to 6.
8. The acquisition unit acquires, as the time information for each task, an estimated work time, which is the work time estimated to be required to complete the task, and an actual work time, which is the work time actually required to complete the task. The prediction device according to any one of claims 1 to 7.
9. A prediction method executed by a prediction device, comprising: an acquisition step of acquiring, as performance information of a project related to the development of a system, attribute information related to attributes of the project and time information related to working time required to complete tasks included in the project; a prediction step of predicting the work time required to complete each task constituting the project to be predicted based on a model that has learned the relationship between the attribute information and the time information and attribute information corresponding to the project to be predicted; A prediction method comprising:
10. an acquisition step of acquiring, as performance information of a project related to the development of a system, attribute information related to attributes of the project and time information related to the work time required to complete a task included in the project; a prediction step of predicting a task time required to complete each task constituting a project to be predicted based on a model that has learned the relationship between the attribute information and the time information and attribute information corresponding to the project to be predicted; A prediction program for causing a prediction device to execute the above.
Citation Information
Patent Citations
Process control system, process control method, program, and process control device
JP2013030036A
System, method and program for supporting task management
JP2020009350A
System and method for managing inherent project uncertainty
US20090055237A1
Predicting likelihood of on-time product delivery, diagnosing issues that threaten delivery, and exploration of likely outcome of different solutions
US20130325763A1
Method and system for estimating costs for a complex project
US8458009B1