|
|
The Usage of Estimating Tools for Software
Project Development - A Survey Study
Ho Leung Tsoi
Abstract Cost overruns an schedule delays are two widely recognised problems in the software industry. To address the problems, there have been a number of software cost estimating (SCE) tools developed in the past two decades. This paper investigates the usage of estimating tools for software project development and presents two survey studies that were carried out by the Software Quality Institute (SQI) and the Australian Software Metrics Association (ASMA). The aim of these two studies was to gain an insight into the reasons for this apparent lack of use of estimating tools in industry in order to be able to take appropriate actions for improvement. Keywords: Cost Estimation, Cost and Schedule Overruns, Project Management 1. INTRODUCTION Nowadays software manufacturers are faced with a bewildering task with regard to development software - meeting customer requirements and expectations, achieving the desired level of quality, and making development within the budget and schedule. Although there are many estimating tools available that can be used for software development, many projects still suffer from late completion time and exceed budgets. A great number of software applications fail to meet user requirements and quality requirements and result in unacceptable maintenance costs. When planned budget and duration have been overrun, many projects are forced to abort; missing implementing some minor modules; quality will be sacrificed; or delivered without thorough debugging. In 1984, a survey study was carried out by Jenkins and the developers of 72 information system development projects in 23 major US corporations were interviewed (Jenkins et al.1984). The results showed that the average cost and schedule overruns were 36% and 22%, respectively. Similar study was carried out by the researchers of the University of Arizona and yielded 191 responses. They claimed that the average cost overruns were 33% and very close to the findings reported by Jenkins and Phan (Jenkins et al 1984; Phan et al. 1988). To address the problem, many estimating tools have been developed. However, the low level use of these tools was found by several recent survey studies (IPL 1989; Heemstra et al. 1989; Moores and Edwards 1992). This paper is concerned with investigating the reasons why the level of use is so low. The study is divided into two stages, Stage I : General Study: A general survey study was conducted to investigate why estimating tools are still not in common use. The second objective is to determine if SCE tools are good for software development. Stage II : Detail Study : Basing on the results of stage I, a detail survey study was carried out to identify the reasons for the problem in the IS community. 2 STAGE I : GENERAL STUDY 2.1 Motivation of the Study The aim of the study in this stage was to identify why estimating tools are not in common use. Besides, the study also aimed to answer the questions:
2.2 Research Method The method of data collection for this survey study was a questionnaire. The questionnaire was refined and piloted through several project management experts and students. All students enrolled in their second year of the Graduate Diploma of Software Quality at Griffith University. They were either computer science or Information System majors who had previously taken several programming and software engineering courses. Some participants had had several years programming experience in industry. A number of modifications were made after the piloting process. A single round mailed survey approach was adopted because it seems appropriate for the exploratory nature of this study. The questionnaire consisted of three sections: Respondent/Organisation Background, Project Management Practices, and Tool Investigation. The questionnaire was five pages and required around 15 minutes to complete. The population of investigation for this research was the Australian software development organisations. Three hundred and eighty-four (384) questionnaires were sent out to the target companies. A total of 78 completed questionnaires were returned and is considered a useable response. This represented a useable response rate of approximately 20 percent taking into account. This rate was deemed acceptable and understandable for the length of the questionnaire and inaccuracies in the mailing list. Several demographic characteristics of the respondents are listed in Appendix 1. 2.3 Summary for Stage I This study at this stage had two major objectives. The first objective was to determine if the use of SCE tools remained low. The result showed that the vast majority of respondents (59%) did not use tools for software development. It was closed to the findings from previous study (Moores and Edwards, 1992). The second objective was to determine if SCE tools are good for software development. This problem was investigated by FIVE aspects: Resources: When asked “Are adequate resources provided for planning the software project?”, 78% SCE tools users replied “yes” while just 52% non-tools users replied “yes”. It suggests that estimating tools are useful to get more resources for planning software project. It may be the reason that the estimates from SCE tools are more scientific and understandable, project leaders are easy to use it as a means of communication to discuss the resource requirements with top managers or users. It increases the possibility of getting an adequate level of resources. Moreover, SCE tools draw the attention of project leaders to a number of aspects which they would otherwise have overlooked. So project leaders can request missing resources as early as possible. Planning: When asked “Does the project follow a written organisational policy for planning software projects?”, 65% SCE tools users replied “yes” while just 43% non-tools users replied “yes”. It may be a reason that an estimate is derived from project requirements. It gives more information than project leaders is used to in their everyday practice. This result suggests that SCE tools are good for software project planning. Personnel: When asked “Do all affected groups and individuals agree to their commitments related to the software project?”, 87% SCE tools users replied “yes” while just 65% non-tools users replied “yes”. This result shows that the commitment of management can be improved by using SCE tools. It is possible that development members understand the meanings and requirements from the estimate. In other words, SCE tools are good for team members to understand their role and responsibility in project development. Tracking: When asked “Are estimations documented for use in tracking the software project?”, 91% SCE tools users replied “yes”. This result, however, may also suggest that estimating tools are used not only for cost estimate but also for the purpose of monitoring and tracking. One more question was asked for further clarification. When asked “Does the project follow a written organisational policy for both tracking and controlling its software development activities?”, 58% SCE tools users replied “yes” while only 25% non-tools users replied “yes”. This result, however, may suggest that estimating tools improve both tracking and controlling mechanisms of the organisation. The missing events can be discovered out as early as possible in the development cycle. In other words, it is possible that, in the mind of a project manager, an estimate from SCE tools acts not only a check-list but a tracking and monitoring mechanism. Controlling: When asked “Is corrective action taken when actual results deviate significantly from the project’s software plans?” The responding “yes” for SCE tools and non-tool users were 89% and 84%, respectively. Obviously no matter whether using SCE tools or not, the vast majority of respondents see corrective actions as a useful method to regain control over deviated projects. The results indicate that SCE tools provide several benefits for software development and are summarised in table 1. Table 1: A summary of the finding in the General Study (stage I)
3. STAGE II : DETAIL STUDY 3.1 Motivation of the Study The results from stage I showed that SCE tools are benefitial for software development. Why doesn’t the project management use them? The motivation of the study in this stage is to gain insight into the reasons why there is a low level of use of SCE tools in industry. 3.2 Research Method A survey study was carried out to gather information from computer professionals and their organisations. All data for this study was collected using a mail survey. A questionnaire was developed and pilot-tested by several software experts. Based on the pilot test and personal interviews with several selected individuals in both industry and academia, the questionnaire was further refined to improve clarity. The questionnaire included general questions on the background of company and personal characteristics, the problems existing in software development, and the importance of the level of use for SCE tools. In addition, the questionnaire was sent with a covering letter explaining the purpose of the study and further informed the company that they would be provided with a summary of research results, if they so desired. In summary, the questionnaire, consisting of three sections, was very detailed (9 pages) and require around 30 minutes to complete. The first section contained questions that measured the demographic characteristics of the responding organisations. The second section measured the respondent’s attitude towards using cost estimation. The third section measured the cause of the low level use of SCE tools in software development. 3.3 Characteristic of the Respondents After a comprehensive pilot test and revision, the questionnaires were sent to 106 IS organisations which were selected at random from the membership database of the Australian Software Metrics Association and the SQI. The sample included banking and finance, education and training, manufacturing/engineering, computer sales/services, transport and communication, and government sections. Of the 106 questionnaires mailed, a total of 21 usable responses were received, yielding a response rate of 19.8 percent. The previous stage I study also exhibited similar response rate of 20 percent. This rate is deemed acceptable and understandable given the length of the questionnaire. The results are processed mainly using the spreadsheet package Excel and SPSS running on a 486DX-100 microcomputer. Several demographic characteristics of the respondents, such as type of responding organisations, total number of employees, and number of IS staff, are summarised in this section. The 21 respondents can be mainly classified into three types of software manufacturers, namely In-house Software, Commercial Software, and Tailor-made Software. table 2 provides information on the general characteristics to the organisations. Respondents were mainly from the organisations producing in-house software for their organisation (44.83%), commercial (13.79%), tailor-made software for clients (31.03%). It should be noted that more than one type of software have been developed by a responding organisation. For this survey, 10.34% of the responding organisations developed other types of software, which include package implementation and embedded software (see table 2). Companies show that the responding organisations are predominantly between small to large size (see table 3). The number of computing staff ranged from 2 to 300. As the sample represents a wide variety of sizes and industries, the results of the study can be probably seem as the generic to software project development in real life. The respondents of the questionnaire were also required to answer several personal questions, such as their job title, length of programming experience, etc. The results of these questions are summarised in table 4. The vast majority of the respondents are managers (71.34%), including top manager, project manager, technical manager, with 15.6 years (on average) software experience. 3.4 Survey Findings Are estimating tools still in low level in use? Yes. All respondents were asked to recall the frequency with which the event occurred as: (a) Always; (b) usually; (c) sometimes; (d) seldom/rarely; or (e) never. When asked “Are estimating tools used for project development?” Only 33.3% respondents claimed that SCE tools were at least sometimes (including usually and always) used. Therefore, the majority of respondents seldom/rarely or never use estimating tools for project planning. The finding was close to the results of Stage I (41%) and Moores in 1992 (30%) (Moores and Edwards, 1992). While the finding of this study is compared (See table 5) with the three earlier surveys (IPL 1989; Heemstra 1989, and Moores 1992), it shows a higher use of estimating tools within the target sample. Although still in the minority, this would seem to support the suggestion from Stage I that SCE tools are becoming more common in use. Since the responding organisations vary from small to very large in relation to the number of people employed within the organisation, it adds validity to this study’s findings. There are many reasons and, without going into detail, some of them can be listed as below:
Thus the finding of low level use of estimating tools from these four survey studies may be incorrect several years later. Researchers should be aware of this point that may appear in future studies. One further question was asked to investigate the application of SCE tools. When asked “Do you still consider estimating tools as a useful tools in software development?”, 83.3% non-tools users replied “yes”. No matter whether using estimating tools or not, the vast majority of respondents still consider estimating tools as a useful tools in software development. Is it surpriseing that SCE tools aren’t common in use? Based on the samples of this study, this section presented the reasons which caused the problem. Several obvious reasons were identified and can be classified into FOUR categories: (A) Technical Aspect: Three major technical issues, namely poor estimates, lack of guidelines and lack of historical data (see table 6), are highlighted as the cause of the low level of use of SCE tools. Especially lack of historical data, it had the most support from the sample because all respondents agreed that it is a major cause of the problem. For further analysis, the above technical issues are tested by the following hypotheses: H10: The difference is zero between the agreement and disagreement population of the factor of poor estimates H11: The population of agreement is greater than disagreement population of the factor of poor estimates H20: The difference is zero between the agreement and disagreement population of the factor of lack of guidelines H21: The population of agreement is greater than disagreement population of the factor of lack of guidelines H30: The difference is zero between the agreement and disagreement population of the factor of lack of historical data H31: The population of agreement is greater than disagreement population of the factor of lack of historical data These hypotheses can jointly be tested by the non-parametric sign test (Rees 1985; Harnett and Murphy 1990) and the one-sided test was carried out at the 5% significance level. table 6 presents the findings of the hypothesis testing. As the r-values are less than 0.05 (significance level), all null hypotheses can be rejected. It remains an acceptable view that the population of agree is significant greater than disagree population. It is admitted that nobody wants to waste the time to get inaccurate estimates. Many researchers claim that the estimates from SCE tools can not be relied upon. Kemerer (Kemerer 1987) reported that the average percentage error in person-month estimates of 772 percent for the SLIM model, 610 percent for COCOMO, 85 percent for ESTIMACS, and 103 percent for Function Point Analysis model. Similar results were yielded from the experiments by Mohanty (Mohanty 1981) and Abdel (Abdel-Hamid and Madnick 1987). The poor quality of estimates is very disappointing. Fortunately, the results after calibration of the models proved to be significantly better. Kemerer advocates calibration and claims that SCE model must be calibrated before it is actually applied. The calibration process ensures the model can be adapted to the environment of its use and improved the quality of estimates. To calibrate a model, the major condition is that a lot of historical data, from completed projects, must be available. This kind of data can support project management in making estimates. Unfortunately, many IS organisations record no data on an ongoing project. As a result, many organisations are forced to give up the use of SCE tools for software development. To tackle this problem, IS organisations are encouraged to build up their own project database not only for applying SCE models but also tracking and monitoring the development process. (B) Development Aspect: Two development issues, insufficient time and budget (see table 6), are highlighted as the causes of the low level of use of SCE tools. According to the survey, over 80% of the respondents stated that they usually had insufficient time and budget applying the SCE tools. For further analysis, the above development issues are tested by the following hypotheses: H40: The difference is zero between the agreement and disagreement population of the factor of insufficient time H41: The population of agreement is greater than disagreement population of the factor of insufficient time H50: The difference is zero between the agreement and disagreement population of the factor of insufficient budget H51: The population of agreement is greater than disagreement population of the factor of insufficient budget As previously mentioned, a one-sided test was carried out at the 5% significance level. The results are reported in table 6. The statistical test shows that all null hypotheses are rejected. In other words, there are significant differences between the population of agreement and disagreement subjects. A clear majority felt that insufficient budget and time are important factors. There is no doubt that project managers have to confront many different kinds of problems, such as technology, management, and personnel, in the software development cycle. For example, the typical situation at an early stage of development is that the project managers have to make an estimation too quickly with a preliminary specification. Thus estimations are made hurriedly with insufficient time to apply SCE models. Moreover, too often it is the case that no budget is available at that moment. Under these two critical constraints, it is not surprising that SCE tools have a low level of use. To tackle this problem, automated SCE tools are to be encouraged to be developed. (C) Management Aspect: Two management issues, no consideration and unawareness of importance, are highlighted as the causes of the low level of use of SCE tools. Over 80% of the respondents said that ignoring the importance of estimates in performance reviews and the unawareness of the importance of tools are two critical reasons. For further analysis, two pair of hypotheses are listed as below: H60: The difference is zero between the agreement and disagreement population for the factor of no consideration H61: The population of agreement is greater than disagreement population for the factor of no consideration H70: The difference is zero between the agreement and disagreement population for the factor of unaware the importance H71: The population of agreement is greater than disagreement population for the factor of unaware the importance As previously mentioned, a one-sided test was carried out at the 5% significance level. The results of are reported in table 6. The statistical test shows that all null hypotheses are rejected. In other words, there are significant differences between the population of agreement and disagreement subjects. It is admitted that if the importance of estimates is not highlighted in evaluation stage or is not a concern of the top management, the project management will not spend an extra effort to apply the SCE tools for estimation. Top management and project management are encouraged to evaluate the estimates in performance reviews. This arrangement will enhance the tracking and monitoring. After evaluation, the missing events can be discovered as early as possible during development. (D) Others: Two important issues are highlighted as the cause of the low level of use of SCE tools: “Project planning (management) tool is being used in place of estimating tools” - over 63.6% of the respondents said that project planning (management) tools was being used in place of estimating tools. The finding is very close to the results reported by Edwards in 1994 (64%) (Edward and Moores, 1994). Edwards claims that estimating tools are not widely used because planning tools are being used instead. As a result, if a client wishes to further negotiate the cost, the argument would be more sensibly based around the proposed project plan rather than on the way in which an estimating tool generates its result. Moreover, project management tools are in almost universal use and easy to be used in place of estimating tools. To further analysis, one pair of hypothesis is listed as below: H80: The difference is zero between the agreement and disagreement population for the factor of replacement H81: The population of agreement is greater than disagreement population for the factor of replacement The results of the tests are surprising (see table 6) because the calculated probability (p-value=0.2744) is greater than 0.05 (significance level). We cannot reject the null hypotheses. In other words, the significant relationship is found not in the direction hypothesised. We cann’t draw the conclusion that project manager would rather estimate using a planning tool than SCE tool. Although the population studied between Edward and this study was somewhat different, but it is reasonable to claim that further studies are needed to verify this proposition and to more fully understand the reasons behind it. “Customer do not request” - a clear majority (84.6%) of the respondents said that customers play an important role in SCE application. For further analysis, one pair of hypothesis is listed as below: H90: The difference is zero between the agreement and disagreement population for the factor of no request H91: The population of agreement is greater than disagreement population for the factor of no request The null hypothesis is rejected (see table 6). Form this analysis seems to be that there is significantly difference between agreement and disagreement population. Obviously, if the customer does not request the use of SCE tools why project management have to spend extra effort to apply SCE tools for estimation. The result may explain why estimating tools are not widely used: as simple as possible, personal judgment will be used in place of estimating tools. Thus customers also play an important role to the software development. 3.5 Study Limitations The major limitation of this study is the low response rate. Out of 106 questionnaires sent out, only 21 (19.8%) were returned. A higher response rate would be desired but this problem is common to all lengthy questionnaires. Another weakness of the study is also common to all surveys. The inconsistency of the personalitiness, working experience and educational background may lead to inaccuracies. Besides, the data wes collected using a mail questionnaire in a particular geographic location (Australia). People in other countries may have different opinions on the questions asked in this study. Thus further research is needed to verify the findings of this study. 4. SUMMARY AND CONCLUSION This study has attempted to measure the level the use of SCE tools in industry and the cause of why SCE tools are not in common use. Results from this study have highlighted several interesting points. Only 33.3% of the respondents said that they had at least sometimes used SCE tools for software development. It is close to the result from the general study (in stage I). While the finding of this study is compared with the three earlier surveys (IPL 1989; Heemstra et al.; Moores and Edward 1992), it shows a higher use of estimating tools within the target sample. However, because the population studied was somewhat different, it is not fair to directly compare the results from these studies. In general, it is reasonable to say that SCE tools are more common in use among organisations because of the improvement of tools. Results from this study simply quantify the bright future of using SCE tools in software development. It also reveals from general study (stage I) that a lot of benefits that will be obtained after the application of SCE tools. Why project managers don’t adopt SCE tools? Several factors were identified in the factor analysis and may provide some identifications about this question. A clear majority (100%) felt that insufficient historical data was a critical factor. Almost all (91.7%) responds said that ignoring the estimates in later performance reviews was another factor. The results suggest that better management may be more effective in improving the problem rather than just focusing on technical aspect. Besides, customers also play an important role in software development. They are encouraged to request the developers to make an estimate by using the SCE tools. This will not only force the developers to pay more attention to cost, but also protect the customers’ benefits. The results from this study seem to identify the clear reasons why estimating tools fail to be in greater use. In summary, this study has made four main contributions to the research on the SCE tools application. Firstly, SCE tools are suffering from some technical problems which appears to militate against their use. Fortunately, these problems are partially solved, such as by using calibration to improve the accuracy. Secondly, Heemstra claims that cost estimation is a management problem (Heemstra 1992). This study supports that software cost estimating process is also a management issue which now become apparent. Thirdly, customers play an important role in controlling the cost of software development. Fourthly, many researchers believed that estimating tools were not widely used because planning tools that were being used instead. The result from this study shows that more in-depth studies are needed to verify this proposition and to more fully understand the reasons behind it. 5. ACKNOWLEDGMENTS The authors would like to thank Miss Simone Brown, Mr James Kelly, Mr Barrie Brandon and the students in the Graduate Diploma of Software Quality at Griffith University for their invaluable support in doing this empirical study. We would also like to express our thanks to all the people who responded to the lengthy questionnaire. The research described in this paper is supported by the Software Quality Institute (SQI) and the Australian Software Metrics Association (ASMA). Table 2: Types of organisations in the sample.
Table 3: Company characteristics.
Ta ble 4: Background of Respondents
Table 5: A comparison of recent survey results
Table 6: Result of the statistical tests
* = 5% signification level
Appendix 1: Several demographic characteristics of the respondents in Stage I
References Abdel-Hamid, T.K. and Madnick, S.E. 1987,: “On the Portability of Quantitative Software Estimation Models”, Information and Management Confidential report produced by Information Processing Limited, Eveleigh House, Gove Street, Bath, 1989 Edward, J.S. and Moores T.T. 1994, “A Conflict Between the Use of Estimating and Planning Tools in the Management of Information Systems”, Eur. Journal Information Systems Vol. 3 No.2 1994 Heemstra, F.J., Kusters, R. and Genuchten, V. 1989, “Selections of Software Cost Estimation Models”, Report TUE/BDK University of Technology Eindhoven Harnett D.L. and Murphy, J.L 1990, Introductory Statistical Analysis, Addison-Wesley Publishing Company Heemstra, F. J. 1992, “Software Cost Estimation”, Information and Software Technology, Vol. 34 No 10 October Jenkins, A.M., Naumann, J.D., and Wetherbe, J.C. 1985, “Empirical Investigation of Systems Development Practices and Results”, Information Management Jones, C. 1994, “Source of Error in Software Cost Estimating”, SPR technical paper, version 2 Kemerer, C.F. 1987, “An Empirical Validation of Software Cost Estimation Models”, Communication of the ACM Mohanty, S.N. 1981, Software Cost Estimation: Present and Future, Software-practice and experience Moores, T.T. and Edwards, J.S. 1992, “Could Large UK Corporations and Computing Companies Use Software Cost Estimating Tools? - a survey,” Eur. Journal Information Systems Vol. 1 No.5 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Assumption University of Thailand |