An investigation of rule induction based prediction systems
1999
Sign up for access to the world's latest research
Abstract
AI
AI
This paper investigates the efficacy of rule induction (RI) methods in constructing prediction systems for software development effort, an area where traditional estimation techniques have shown significant inaccuracies. The study highlights the benefits of RI, particularly its transparency and interpretability compared to neural networks, and notes preliminary findings indicating that while RI can outperform other methods under specific conditions, it currently appears to yield less accurate predictions overall. The authors recommend further exploration into the contexts in which RI may be more effective.
Related papers
International Journal of Advanced Computer Science and Applications, 2011
Accurate software effort estimation is an important part of software process. Effort is measured in terms of person months and duration. Both overestimation and underestimation of software effort may lead to risky consequences. Also, software project managers have to make estimates of how much a software development is going to cost. The dominant cost for any software is the cost of calculating effort. Thus, effort estimation is very crucial and there is always a need to improve its accuracy as much as possible. There are various effort estimation models, but it is difficult to determine which model gives more accurate estimation on which dataset. This paper empirically evaluates and compares the potential of Linear Regression, Artificial Neural Network, Decision Tree, Support Vector Machine and Bagging on software project dataset. The dataset is obtained from 499 projects. The results show that Mean Magnitude Relative error of decision tree method is only 17.06%. Thus, the performance of decision tree method is better than all the other compared methods.
Smart Technology & Smart Management, 2016
ACM SIGSOFT Software Engineering Notes, 2010
Software effort estimation is an important area in the field of software engineering. If the software development effort is over estimated it may lead to tight time schedules and thus quality and testing of software may be compromised. In contrast, if the software development effort is underestimated it may lead to over allocation of man power and resource. There are many models proposed in the literature for estimating software effort. In this paper, we analyze machine learning methods in order to develop models to predict software development effort we used Maxwell data consisting 63 projects. The results show that linear regression, MSP and M5Rules are effective methods for predicting software development effort.
International Journal of Advanced Computer Science and Applications, 2023
Software engineering effort estimation plays a significant role in managing project cost, quality, and time and creating software. Researchers have been paying close attention to software estimation during the past few decades, and a great amount of work has been done utilizing a variety of machinelearning techniques and algorithms. In order to better effectively evaluate predictions, this study recommends various machine learning algorithms for estimating, including k-nearest neighbor regression, support vector regression, and decision trees. These methods are now used by the software development industry for software estimating with the goal of overcoming the limitations of parametric and conventional estimation techniques and advancing projects. Our dataset, which was created by a software company called Edusoft Consulted LTD, was used to assess the effectiveness of the established method. The three commonly used performance evaluation measures, mean absolute error (MAE), mean squared error (MSE), and R square error, represent the base for these. Comparative experimental results demonstrate that decision trees perform better at predicting effort than other techniques.
22nd International Symposium on Computer and Information Sciences, ISCIS 2007 - Proceedings, 2007
In software engineering, the main aim is to develop projects that produce the desired results within limited schedule and budget. The most important factor affecting the budget of a project is the effort. Therefore, estimating effort is crucial because hiring people more than needed leads to a loss of income and hiring people less than needed leads to an extension of schedule. The main objective of this research is making an analysis of software effort estimation to overcome problems related to it: budget and schedule extension. To accomplish this, we propose a model that uses machine learning methods. We evaluate these models on public datasets and data gathered from software organizations in Turkey. It is found out in the experiments that the best method for a dataset may change and this proves the point that the usage of one model cannot always produce the best results.
International Journal of Computer Applications, 2014
Software development effort estimation is the process of predicting the effort required to develop or maintain software based on vague, incomplete or uncertain inputs. Accurate estimate of software development effort is required in the early stages of development life cycle for planning the development activities. Determination of software cost, allocation of resources, scheduling and monitoring of development activities are all dependent on the effort. Hence effort estimation is crucial for the control, quality and success of all software development projects. This paper provides an overview of the three general categories of estimation models namely; Expert Judgment based models, Algorithmic models and Non Algorithmic models. Moreover a comparison of different machine learning techniques, namely Fuzzy Logic, Artificial Neural Network, Case Based Reasoning and Fuzzy Neural Network is done in order to study which machine learning method is more suitable in which situation. Advantages and Disadvantages of these four machine learning techniques are identified as well as it was found that when applying these techniques to the COCOMO dataset the fuzzy logic and Fuzzy Neural Network showed better performance compared to other techniques.
International Conference on Enterprise Information Systems, 2008
Reliable and accurate software cost estimations have always been a challenge especially for people involved in project resource management. The challenge is amplified due to the high level of complexity and uniqueness of the software process. The majority of estimation methods proposed fail to produce successful cost forecasting and neither resolve to explicit, measurable and concise set of factors affecting productivity. Throughout the software cost estimation literature software size is usually proposed as one of the most important attributes affecting effort and is used to build cost models. This paper aspires to provide size and effort-based estimations for the required software effort of new projects based on data obtained from past completed projects. The modelling approach utilises Artificial Neural Networks (ANN) with a random sliding window input and output method using holdout samples and moreover, a Genetic Algorithm (GA) undertakes to evolve the inputs and internal hidden architectures and to reduce the Mean Relative Error (MRE). The obtained optimal ANN topologies and input and output methods for each dataset are presented, discussed and compared with a classic MLR model.
Journal of Network and Information Security, 2017
Effective software project estimation is one of the most challenging and important activities in software development. Proper project planning and control is not possible without a sound and reliable estimate. As a whole, the software industry doesn't estimate projects well and doesn't use estimates appropriately. We suffer far more than we should as a result and we need to focus some effort on improving the situation. Effort estimation is important to minimize the cost of a software project. The existing situation may lead to serious consequences to the company as because of poor effort estimation a major percentage of the project turns out to be either more expensive than expected, late on deliver and many more issues. Not properly giving importance to the effort estimation task by under-staffing it, running the task of low quality deliverables and setting too short schedule resulting in loss of credibility as deadlines are missed always lead to problems. The current system available for effort estimation produces non-comprehensible results. Hence the purpose of this project is to produce a software system which produces a more accurate and comprehensible results using modern tools and make it easier for the project manager to easily identify the effort needed to complete a software project in terms size of project, cost etc. The various algorithm used are Support vector machine(SVM) which are best for both classification and regression and an Active Learning Based Approach (ALBA)for rule extraction from the output of SVM to produce a comprehensible output for rule.
IOP Conference Series: Materials Science and Engineering, 2019
Nowadays the significant trend of the effort estimation is in demand. It needs more data to be collected and the stakeholders require an effective and efficient software for processing, which makes the hardware and software cost development becomes steeply increasing. This scenario is true especially in the area of large industry, as the size of a software project is becoming more complex and bigger, the complexity of estimation is continuously increased. Effort estimation is part of the software engineering economic study on how to manage limited resources in a way a project could meet its target goal in a specified schedule, budget and scope. It is necessary to develop or adopt a useful software development process in executing a software development project by acting as a key constraint to the project. The accuracy of estimation is the main critical evaluation for every study. Recently, the machine learning techniques are becoming widely used in many effort estimation problems bu...
2017
Accurate Software Effort Estimation is vital to the areas of Software Project Management. It is a process to predict the Effort in terms of cost and time, required to develop a software product. Traditionally, researchers have used the off the shelf empirical models like COCOMO or developed various methods using statistical approaches like regression and analogy based methods but these methods exhibit a number of shortfalls. To predict the effort at early stages is really difficult as very less information is available. To improve the effort estimation accuracy, an alternative is to use machine learning (ML) techniques and many researchers have proposed plethora of such machine learning based models. This paper aims to systematically analyze various machine learning models considering the traits like type of machine learning method used, estimation accuracy gained with that method, dataset used and its comparison with empirical model. Although researchers have started exploring Mach...

Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
References (6)
- Boehm, B.W. (1981). Software Engineering Economics. New York: Prentice Hall.
- Desharnais, J.M., (1989) Analyse statistique de la productivitie des projets informatique a partie de la technique des point des fonction. Unpublished Masters Thesis, University of Montreal.
- Kemerer, C.F. (1987). An Empirical Validation of Cost Estimation Models. Comms. of the ACM, 30 (5): 416-429.
- Kennedy, H.C., Chinniah, C., Bradbeer, P. and Morss, L. (1997) The Construction and Evaluation of Decision Trees: A Comparison of Evolutionary and Concept Learning Methods inCorne, D. and Shapiro, J. L. (Eds.). (1997) Evolutionary Computing. AISB International Workshop, Manchester, UK April 7-8, 1997. Springer-Verlag, LNCS 1305.
- Langley, P. (1996). Elements of Machine Learning. Morgan Kaufman, San Mateo.
- Shepperd, M.J., and Schofield, C. (1997). Estimating software project effort using analogies. IEEE Transactions on Software Engineering, 23(11), 736- 743.