|Budget Amount *help
¥2,200,000 (Direct Cost : ¥2,200,000)
Fiscal Year 1999 : ¥800,000 (Direct Cost : ¥800,000)
Fiscal Year 1998 : ¥1,400,000 (Direct Cost : ¥1,400,000)
In this research, we developed a software process simulator that estimates the quality of the final product and the effort needed, for a given software project. We have used an extended stochastic Petri-net to describe the software project, and implemented the simulator which supports description of the target process and executes the process described as a Petri-net.
In the description, each transition represents a primitive activity of software development such as thinking, communicating and writing. On the other hand, each place represents an intermediate stage between the primitive activities. Then a Petri-net is defined for each development phase such as design, coding and testing. For estimation, we introduce several attributes into a toke. When the token is moved by firing of a transition, the values of these attributes are updated with the probability assigned to the transition.
The most important problem in application of the simulator is to determine the values of several parameters. By analyzing actual project data, we have derived specific properties that can characterize each development phase. Using theses properties, we proposed a heuristic S to solve the problem. The heuristic S assigns priorities to the parameters based on preliminary experiments, and then searches an optimal value for each parameter successively in the order of the priorities.
Then we conducted simulation experiments, jointly with Software Engineering Process Group (SEPG) at a certain company, to show the usefulness of the simulator. The case study showed that the simulator can estimate the number of defects that remained in final products and the efforts needed by projects. As a result of detailed analysis by SEPG, we can conclude that the accuracy of the estimation by the proposed simulator is sufficiently high from the practical point of view.