Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2005
The software cost estimation is an important task within projects. It determines the success or failure of a project. In order to improve the estimation, it is very important to identify and study the most relevant factors and variables. This paper describes a method to perform this estimation based on AI techniques and using Data Mining methodologies.
Procedia Technology, 2012
Software Cost Estimation (SCE) is one of important topics in producing software in recent decades. Real estimation requires cost and effort factors in producing software by using of algorithmic or Artificial Intelligent (AI) techniques. Boehm developed the Constructive Cost Model (COCOMO) that is one of the algorithmic SCE models. Also, these models contain three increasingly basic, intermediate and detailed forms, i.e. basic COCOMO is suitable for quick, early, rough order of among the estimates of required effort in producing software, but its accuracy is limited due to its loss of factors to account for difference between cost drivers. Intermediate COCOMO assumes these project attributes into account. In addition detailed COCOMO accounts for individual project phases used. The COCOMO algorithmic techniques families have used since 1981. In recent years, some techniques emerged by using intelligent techniques to solve and estimate the effort required in producing software. In this paper, different data mining techniques to estimate software costs are presented and then the results of each technique are evaluated and compared. However, NASA's projects to train and test each of these techniques are applied. Then, data set to train and test the data mining techniques improve the estimation accuracy of the models in many cases. We show the comparison between COCOMO model and data mining techniques here. The results indicate that these methods result in many benefit answers. Also we show the comparison of the estimation accuracy of COCOMO model with data mining techniques. Data mining techniques improve the estimation accuracy of the models in many cases. So the estimated effort more improvement in this models.
International Journal of Advanced Computer Science and Applications, 2021
This project involves research about software effort estimation using machine learning algorithms. Software cost and effort estimation are crucial parts of software project development. It determines the budget, time and resources needed to develop a software project. One of the well-established software project estimation models is Constructive Cost Model (COCOMO) which was developed in the 1980s. Even though such a model is being used, COCOMO has some weaknesses and software developers still facing the problem of lack of accuracy of the effort and cost estimation. Inaccuracy in the estimated effort will affect the schedule and cost of the whole project as well. The objective of this research is to use several algorithms of machine learning to estimate the effort of software project development. The best machine learning model is chosen to compare with the COCOMO.
ISRN Software Engineering, 2012
In this research, a hybrid cost estimation model is proposed to produce a realistic prediction model that takes into consideration software project, product, process, and environmental elements. A cost estimation dataset is built from a large number of open source projects. Those projects are divided into three domains: communication, finance, and game projects. Several data mining techniques are used to classify software projects in terms of their development complexity. Data mining techniques are also used to study association between different software attributes and their relation to cost estimation. Results showed that finance metrics are usually the most complex in terms of code size and some other complexity metrics. Results showed also that games applications have higher values of the SLOCmath, coupling, cyclomatic complexity, and MCDC metrics. Information gain is used in order to evaluate the ability of object-oriented metrics to predict software complexity. MCDC metric is shown to be the first metric in deciding a software project complexity. A software project effort equation is created based on clustering and based on all software projects' attributes. According to the software metrics weights values developed in this project, we can notice that MCDC, LOC, and cyclomatic complexity of the traditional metrics are still the dominant metrics that affect our classification process, while number of children and depth of inheritance are the dominant from the object-oriented metrics as a second level.
International Journal of Engineering Sciences & Research Technology, 2014
Effort Estimation is an important task in cost prediction of the software. This task comes under the planning phase of software project management. In this paper, a review of different data mining techniques used for effort estimation has been presented. The techniques taken into consideration are Clustered techniques (K-Means, K-NN-K-Nearest Neighbour), Regression techniques (MARS- Multivariate analysis for regression splines, OLS - Ordinary least square regression, SVR-Support vector regression, CART- classification and regression trees ) and classification techniques (SVM-Support vector machine, CBR-Case based reasoning). We can use the hybrid approach of these techniques for improving effort estimation.
Software Cost Estimation (SCE) is one of complex problems in software engineering area. So, a lot of attention has been allocated to solving this problem. Thus the correct estimate of the cost and effort required for software companies and company executives and companies is very significant. In required effort prediction, estimated size and cost of the project with high accuracy is still vast challenge for projects masters. In 1981, had been developed algorithmic models which called Constructive Cost Model (COCOMO) by Boehm. These models were used for required effort prediction. Since, COCOMO 81 is not suitable model for responding new requirements in recent years, so COCOMO II model in 2000 published. COCOMO II is most transparent model among algorithmic models (COCOMO family) for estimates the cost of software. Today's, there are very smart methods more efficient and effective algorithmic COCOMO methods, so many research and review the data mining techniques to estimate the true cost of software is done. This paper a survey of the literature of application of data mining techniques in SCE collected form software databases as well as international conferences and journals. Data mining techniques of expert systems were selected according to a set of criteria of work relevancy their internal architecture techniques were reviewed. The techniques are Fuzzy Decision Trees (FDTs), Artificial Neural Networks (ANN), Bayesian Networks (BN) classifiers and etc. Our work addresses the issue of software effort prediction via these methods using historical project data samples. A classification considering the main goal of the methods has been made. For each category, a discussion of the suitability of SCE data mining techniques is presented in required effort and cost prediction. The results of survey conducted indicate that in most cases, these methods very efficacious compare with algorithmic COCOMO models.
Journal of Computer Science, 2013
Accurate software development effort estimation is critical to the success of software projects. Although many techniques and algorithmic models have been developed and implemented by practitioners, accurate software development effort prediction is still a challenging endeavor in the field of software engineering, especially in handling uncertain and imprecise inputs and collinear characteristics. In this study, a hybrid intelligent model combining a neural network model integrated with fuzzy model (neuro-fuzzy model) has been used to improve the accuracy of estimating software cost. The performance of the proposed model is assessed by designing and conducting evaluation with published project and industrial data. Results have shown that the proposed model demonstrates the ability of improving the estimation accuracy by 18% based on the Mean Magnitude of Relative Error (MMRE) criterion.
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.
Smart Technology & Smart Management, 2016
Global Disclosure of Economics and Business
Machine Learning is an application of artificial intelligence that allows computers to learn and develop without explicit programming. In other words, the goal of ML is to let computers learn on their own without human involvement and then alter their activities. ML also allows huge data processing. Project management planning and evaluation are vital in project execution. Project management is difficult without a realistic and logical plan. We give a complete overview of works on Machine Learning in Software Project Management. The first category contains software project management research articles. The third category includes research on the phases and tests that are the parameters used in machine-learning management and the final classes of the results from the study, contribution of studies in production, and promotion of machine-learning project prediction. Our contribution also provides a broader viewpoint and context for future project risk management efforts. In conclusion...
International Journal of Modeling and Optimization, 2011
It is well known fact that predicting software effort for the software development projects with any acceptable degree remains challenging. In this paper we have used the organic software projects because in each case the projects size lies between 2-50 KLOC. In this paper we have applied the linear regression model i.e. Effort =-1.5 + 0.1804 FP to predict the software project effort and function point, and on the basis of the fuzzy logic we have also predicted the software project effort. After obtaining the software effort, project manager can arrange the project progress, control the cost and ensures the quality more accurately.
A tool named 2CEE was developed for developing new software cost estimation model using data mining technique. The accuracy of these models has been validated internally through N-Fold Cross Validation (also called Leave One Out Cross Validation. However these newly developed models are well predicted and validated in the real world through various researches. This paper is going to find out how well this machine learning algorithm such as Naive Bayes classification and neural network can be applied for cost estimation using COCOMO II cost model for comparisons. This estimate the new project with comparing the past project data or cost driver in past project data with the help of data mining tool Weka.
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.
JITK (Jurnal Ilmu Pengetahuan dan Teknologi Komputer), 2021
Software development involves several interrelated factors that influence development efforts and productivity. Improving the estimation techniques available to project managers will facilitate more effective time and budget control in software development. Software Effort Estimation or software cost/effort estimation can help a software development company to overcome difficulties experienced in estimating software development efforts. This study aims to compare the Machine Learning method of Linear Regression (LR), Multilayer Perceptron (MLP), Radial Basis Function (RBF), and Decision Tree Random Forest (DTRF) to calculate estimated cost/effort software. Then these five approaches will be tested on a dataset of software development projects as many as 10 dataset projects. So that it can produce new knowledge about what machine learning and non-machine learning methods are the most accurate for estimating software business. As well as knowing between the selection between using Par...
2015
For any software organization three fundamental and essential requirements are- delivering a software product on time, with an agreed level of quality and within budget. Both underestimation and overestimation of software cost may cause adverse effect on s/w quality, budget, schedule, company's business reputation and competitiveness. Thus with the hope of managing project well within budget and schedule, a myriad of cost estimation models have been proposed. This paper proposes a new Computational Intelligence based approach that encompasses merits of 3 techniques namely Particle Swarm Optimization, Analogy Based Estimation, and Genetic Programming. This hybrid approach can effectively enhance the accuracy and prediction power of estimation model.
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.
One of the major challenges for software, nowadays, is software cost estimation. It refers to estimating the cost of all activities including software development, design, supervision, maintenance and so on. Accurate cost-estimation of software projects optimizes the internal and external processes, staff works, efforts and the overheads to be coordinated with one another. In the management software projects, estimation must be taken into account so that reduces costs, timing and possible risks to avoid project failure. In this paper, a decision- support system using a combination of multi-layer artificial neural network and decision tree is proposed to estimate the cost of software projects. In the model included into the proposed system, normalizing factors, which is vital in evaluating efforts and costs estimation, is carried out using C4.5 decision tree. Moreover, testing and training factors are done by multi-layer artificial neural network and the most optimal values are alloc...
2018
Software Cost Estimation has become an important factor to determine the efficiency of software development. There are many model of cost estimation like algorithmic model, top-down, and expert judgement. From all those models, Development in Algorithmic model is higher than the others. In this paper we present a comparative analysis of software cost project using algorithmic methods.
2010 36th EUROMICRO Conference on Software Engineering and Advanced Applications, 2010
Decision making under uncertainty is a critical problem in the field of software engineering. Predicting the software quality or the cost/ effort requires high level expertise. AI based predictor models, on the other hand, are useful decision making tools that learn from past projects' data. In this study, we have built an effort estimation model for a multinational bank to predict the effort prior to projects' development lifecycle. We have collected process, product and resource metrics from past projects together with the effort values distributed among software life cycle phases, i.e. analysis & test, design & development. We have used Clustering approach to form consistent project groups and Support Vector Regression (SVR) to predict the effort. Our results validate the benefits of using AI methods in real life problems. We attain Pred(25) values as high as 78% in predicting future projects.
Zenodo (CERN European Organization for Nuclear Research), 2023
This paper introduced the concept of a hybrid machine learning method for estimating software project cost. The literature review of some of the models commonly used in the software project cost estimation was carried out. A hybrid method of algorithms comprising Random Forest (RF), Kalman Filter (KF) and Support Vector Machine (SVM) algorithms respectively were proposed to predict the software project cost and its completion time for software projects. The proposed architecture of the model was presented as well as the proposed the model.
A REVIEW OF MACHINE LEARNING MODELS FOR SOFTWARE COST ESTIMATION, 2019
Article History Software cost estimation is a critical task in software projects development. It assists project managers and software engineers to plan and manage their resources. However, developing an accurate cost estimation model for a software project is a challenging process. The aim of such a process is to have a better future sight of the project progress and its phases. Another main objective is to have clear project details and specifications to assist stakeholders in managing the project in terms of human resources, assets, software, data and even in the feasibility study. Accurate estimation results with definitely helps the project manager to do better estimation for the project cost, the time required for various project phases and resources or assets. This paper builds a software cost estimation model using machine learning approach. Different machine learning algorithms are applied to two public datasets to predict the software cost in the early stages. Results show that machine learning methods can be used to predict software cost with a high accuracy rate. Contribution/Originality: This study contributes to the existing literature by enhancing the results of thirteen Machine Learning algorithms on two datasets. The evaluation criteria used in this work are R², MAE, RMAE, RAE, and RRSE. The aim of the proposed model is to predict the effort using dataset attributes and compare them with the actual effort in order to measure the error using different criteria.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.