An Integrated Resource Planning for Multiple Software Projects 指導教授:葉榮懋 學生:朱獻翔 學號:M97U0222 Contents 1. 2. 3. 4. 5. 6. 7. Abstract Introduction Research Background Workflow of Projects Taguchi ' s Parameter Design Experimental Results Conclusion Abstract In a multi-project and multi-resource environment, a resource planning is to decide what needs to be done, by whom, when, and in which project. In this article, an integrated method, which includes critical resource diagram, heuristic methods and Taguchi's parameter design, is proposed to solve resource planning problems for multiple projects with different starting time. Key Words:Parameter Design, Heuristic Method, Resource Planning Introduction In a multi-project and multi-resource environment, competitions arise for human resource among software projects since skillful resources are difficult to find. In this matter, some resources are assigned to multiple software projects simultaneously to achieve a costeffectively resource planning. Those human resources are called as common resources, otherwise are called as non-common resources who are full time involved in a single software project. 1. 2. Resources planning for multiple software projects considers what tasks should be done, when, by whom, and in which project. In this concern, there are two major problems for resource planning. Task Priority Resource policy For the first problem of task priority, researchers discussed heuristic methods for multiple software projects and multiple resources over decades. Scheduling heuristic methods are used to prioritize competing activities for allocating constrained resources. Fendley ( 1968 ) recommended the “shortest operation first” rule inferior to a “minimum slack” in the situation of a single project . Patterson ( 1973 ) found that a “ shortest operation first ”rule performed well in multi-project and multi-resource problems. However, the “minimum slack ” as compared with several heuristic methods by Davis and Patterson ( 1975 ) achieves shortest duration. Later , Kurtulus and Davis ( 1982 ) examined heuristic methods including “minimum slack” rule,“ shortest activity from Shortest project”(SASP), and “maximum total work content”. They recommended that the SASP rule and “maximum total work content ” are better than “ minimum slack ”rule . Dumond and Mabert (1988) found that the SASP method is more effective in terms of reducing mean completion time in a dynamic environment. 。 For the second problem of resource policy, methods for achieving optimal resource planning are widely discussed. Davis (1973) classified the most popular solving procedures into two major categories : optimal procedures and heuristic methods . Simulation is also proposed by researchers to solve the resource planning problems ( Van Slyke;1963 Schonberger 1981). Design of experiment method is another effective procedure for resource planning problems. antell, Jung , and Warner ( 1992 ) had applied Taguchi’s parameter design with PERT / CPM to solve a single project management problem . Multiple software projects can be classified into two categories: projects with same starting time and projects with different starting time. Research Background Institute of Information Industry is a leading organization in software industry in Taiwan. One of their recent software products is reusable data retrieval kernel software. By using this kernel software, they started to implement many data retrievable application systems for business, which have highly similarity in system structure. The kernel software had been proved as a successful quick tool for developing application systems. They held many application projects to meet requirements of different customers. However, the existing resources are limited. They have to decide who will involve, in which project with how many working hours. Therefore, the planning problem occurs in a multi-project and multi -resource environment. We then use this case as a background example to develop an proposed integrated method. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. The framework of an application system includes the following software components: DBa DBd DBb DBk DBf Ma Md Mb Qk Qf Those software components are developed by C language and each has its own architecture and functions. Workflow of Projects Graphical scheduling tools are often used to describe the relationships among project tasks and human resources, such as PERT / CPM. Badiru (1992 and 1993) proposed a critical resource diagram (CRD) takes a reverse view to activity scheduling, and focuses on resource scheduling so that the workflow among resources can be observed. Since CRD can appropriately demonstrates the position of a resource, in a project, it is adopted as the major scheduling tool to show the workflow of the application project. In Figure 1, each node refers to a task and its corresponding resource unit, a human resource who is in charge of the task. In this study, two application projects, denoted as Project 1 and 2, are taken as examples for developing proper project planning of multiple-software project with multiple resources. To present the workflow of these two projects, an augmenting CRD for both projects is shown in Figure 2. Taguchi ' s Parameter Design In this section, Taguchi ' s parameter design is applied to solve resource planning problems The general steps of Taguchi ' s parameter design include : ( 1 ) define desired improvement or objective ; ( 2 ) select factors and factor levels ; ( 3 ) lay out design arrays ; ( 4 ) conduct experiments ; and ( 5 ) evaluate performance . Cost Mode The objective of multiple projects with n project with n projects and m resources is to minimize the total project cost including tardiness cost and resource cost . The cost model is given below: n n m PC (CTi DTi ) DCi (TLij RC j ) i i i 1 j 1 Factors and Factor Levels For the two projects, factors and factor levels are illustrated with two major categories: 1. Resource Factors 2. Noise Factors Layout of Parameter Design The layout of this parameter design is set up as follows : an inner array using a two -level factorial design to include six controllable factors with 26 = 64 level combinations , and an outer array using two L81 orthogonal arrays for Project 1 and 2 , each contains ten noise factors of task complexity . EXPERIMENTS FOR MULTI – PROJECTS First In, First serve (FIFS) Based on the FIFS method, the first component for common resource is completed in Project l, the next is in Project 2, then back to Project 1, and will be continue alternatively until all components are finished. Therefore, the back to Project l, and will be until all components are task priorities for common resources A and B will be [DBa – DBa’DBd – DBd’- DBb – DBb’] and [DBk – DBk’- DBf – DBf’], respectively. These task priorities are presented by resource links as shown in Figure4. Each trial produces a critical duration time and its corresponding project cost by following the computational rule of CRD and the cost model Namely, for each combination of controllable factors, there are 81response data for each project , then its average , standard deviation , and SN ratio are obtained accordingly . An optimal condition will be chosen by minimizing the summation of average costs of projects. An optimal condition is A1B2C1D2E1F2, which means that resources A , C , and E need normal work rate only while resources B , D , and F need overtime . In Table 3, some selected results for other conditions are listed for comparison. Shortest Activity form Shortest Project (SASP) The method of SASP determines task priority by judging task duration and the remaining critical path time. Since the scale of Project 2 is much smaller that Project l, the critical path time of Project 2 is much shorter than Project 1. In this case, task priorities for common resources will do all the responded tasks first in Project 2, then back to Project 1 to finish the rest of tasks. Therefore , the task priorities for common resources A and B will be [DBa – DBa’-DBd’DBb’- DBd - DBb] and [ DBk – DBk’- DBf’ - DBf] respectively These task priorities are presented by resource links as shown in Figure 5. An optimal condition is A1B2C1D2E1F1, which means that only B and D need overtime . Some selected results of two projects by using SASP are listed in Table 4 for comparison. Experimental Results In this section, experimental results of FIFS and SASP heuristic methods for multiple software projects are compared and summarized as follows: 1. The optimal condition is A1B2C1D2E1F2 by using FIFS, while A1B2C1D2E1F1by using SASP. It is clear that overtime is not necessary for resource F. 2. For FIFS method, the resulting total cost is $ 458,560 =343029 + 1115531 for Project 1 and 2; for SASP method, the total cost is $ 441,949=343882 + 98067. Hence SASP can achieve lower cost than FIFS. 3 For Project 1, both, heuristic methods achieve same project duration time of 86 day. For Project 2, SASP obtains shorter duration time (29 Days) than FIFS (43 Days). On the other hand, since the objective in this experiment is total project cost instead of duration, it is clear that duration for the optimal condition it minimized. Conclusions In this study , an integrated method , which includes critical resource diagram ( CRD ) , heuristic methods such as SASP or FIFS,and Taguchi ' s parameter design , was proposed to solve resource planning for multiple projects with different starting time . The main purpose of the integrated method is to determine the work rate level of each resource (normal or overtime) to achieve robust performance of multiple projects against noise factors of task complexity. In this article, we have discussed resource planning problems for multiple projects having different project starting time, resource planning for multiple projects With same starting time can be further discussed. Moreover, other heuristic methods for task priority can be studied and compared. 讀後心得 在期刊論文中,使用啟發式田口解法,覺得在很複 雜,應用實驗設計的L81,再使用64的組合,出作 FIFS與SASP的最佳成本預估,但文中說到延遲的成 本,說的很不清楚,也沒有作出來,讀後感覺作者 留一伏筆,最後建議也寫到可用其他解法與派工方 法作為比較,在討論資源規劃問題中多個專案都有 不同的專案開始的時間,資源規劃對於多個專案同 時啟動時間可以進一步討論,此外,其他啟發式方 法的優先作業順序,可以再研究和比較。