Software engineering metrics and models
Software engineering metrics and models
An empirical validation of software cost estimation models
Communications of the ACM
Calibrating a software cost estimation model: why and how
Information and Software Technology
Calibrating estimation tools for software development
Software Engineering Journal
A Pattern Recognition Approach for Software Engineering Data Analysis
IEEE Transactions on Software Engineering - Special issue on software measurement principles, techniques, and environments
Applied software measurement (2nd ed.): assuring productivity and quality
Applied software measurement (2nd ed.): assuring productivity and quality
Measuring software reuse: principles, practices, and economic models
Measuring software reuse: principles, practices, and economic models
Estimating Software Project Effort Using Analogies
IEEE Transactions on Software Engineering
Software Metrics: A Rigorous Approach
Software Metrics: A Rigorous Approach
Software Engineering Economics
Software Engineering Economics
Proceedings of the Conference on The Future of Software Engineering
Proceedings of the Conference on The Future of Software Engineering
A replicated assessment and comparison of common software cost modeling techniques
Proceedings of the 22nd international conference on Software engineering
On the many ways software engineering can benefit from knowledge engineering
SEKE '02 Proceedings of the 14th international conference on Software engineering and knowledge engineering
Disaggregating and Calibrating the CASE Tool Variable in COCOMO II
IEEE Transactions on Software Engineering
The Intelligent Electronic Shopping System Based on Bayesian Customer Modeling
WI '01 Proceedings of the First Asia-Pacific Conference on Web Intelligence: Research and Development
When Will It Be Done? Machine Learner Answers to the 300-Billion-Dollar Question
IEEE Intelligent Systems
Cost estimation for web applications
Proceedings of the 25th International Conference on Software Engineering
Empirical Software Engineering
A Procedure for Assessing the Influence of Problem Domain on Effort Estimation Consistency
Software Quality Control
Meta-knowledge in systems design: panacea … or undelivered promise?
The Knowledge Engineering Review
Continuous Productivity Assessment and Effort Prediction Based on Bayesian Analysis
COMPSAC '04 Proceedings of the 28th Annual International Computer Software and Applications Conference - Volume 01
Preliminary Data Analysis Methods in Software Estimation
Software Quality Control
Validation methods for calibrating software effort models
Proceedings of the 27th international conference on Software engineering
Simple software cost analysis: safe or unsafe?
PROMISE '05 Proceedings of the 2005 workshop on Predictor models in software engineering
Feature subset selection can improve software cost estimation accuracy
PROMISE '05 Proceedings of the 2005 workshop on Predictor models in software engineering
A Probabilistic Model for Predicting Software Development Effort
IEEE Transactions on Software Engineering
Finding the Right Data for Software Cost Modeling
IEEE Software
Development of a hybrid cost estimation model in an iterative manner
Proceedings of the 28th international conference on Software engineering
Portfolio management of software development projects using COCOMO II
Proceedings of the 28th international conference on Software engineering
Using industry based data sets in software engineering research
Proceedings of the 2006 international workshop on Summit on software engineering education
A quality-based cost estimation model for the product line life cycle
Communications of the ACM - Software product line
Selecting Best Practices for Effort Estimation
IEEE Transactions on Software Engineering
Column Pruning Beats Stratification in Effort Estimation
PROMISE '07 Proceedings of the Third International Workshop on Predictor Models in Software Engineering
Inconsistency of expert judgment-based estimates of software development effort
Journal of Systems and Software
The business case for automated software engineering
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
An empirical analysis of software effort estimation with outlier elimination
Proceedings of the 4th international workshop on Predictor models in software engineering
Complementing approaches in ERP effort estimation practice: an industrial study
Proceedings of the 4th international workshop on Predictor models in software engineering
An empirical study of the Cobb-Douglas production function properties of software development effort
Information and Software Technology
A constrained regression technique for cocomo calibration
Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement
Reducing biases in individual software effort estimations: a combining approach
Proceedings of the Second ACM-IEEE international symposium on Empirical software engineering and measurement
On the effectiveness of early life cycle defect prediction with Bayesian Nets
Empirical Software Engineering
Integrating Portfolio Management and Simulation Concepts in the ERP Project Estimation Practice
REFSQ '08 Proceedings of the 14th international conference on Requirements Engineering: Foundation for Software Quality
Managing Uncertainty in ERP Project Estimation Practice: An Industrial Case Study
PROFES '08 Proceedings of the 9th international conference on Product-Focused Software Process Improvement
Uncertainty in ERP Effort Estimation: A Challenge or an Asset?
IWSM/Metrikon/Mensura '08 Proceedings of the International Conferences on Software Process and Product Measurement
A study of project selection and feature weighting for analogy based software cost estimation
Journal of Systems and Software
Can we build software faster and better and cheaper?
PROMISE '09 Proceedings of the 5th International Conference on Predictor Models in Software Engineering
On the Relative Merits of Software Reuse
ICSP '09 Proceedings of the International Conference on Software Process: Trustworthy Software Development Processes
Practical challenges of requirements prioritization based on risk estimation
Empirical Software Engineering
Improved decision-making for software managers using Bayesian networks
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
Software cost estimation using fuzzy logic
ACM SIGSOFT Software Engineering Notes
Applying support vector regression for web effort estimation using a cross-company dataset
ESEM '09 Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement
Using Support Vector Regression for Web Development Effort Estimation
IWSM '09 /Mensura '09 Proceedings of the International Conferences on Software Process and Product Measurement
An application of Bayesian network for predicting object-oriented software maintainability
Information and Software Technology
Probabilistic estimation of software size and effort
Expert Systems with Applications: An International Journal
A probabilistic model for predicting software development effort
ICCSA'03 Proceedings of the 2003 international conference on Computational science and its applications: PartII
ICACT'10 Proceedings of the 12th international conference on Advanced communication technology
Proceedings of the 7th International Conference on Frontiers of Information Technology
Stable rankings for different effort models
Automated Software Engineering
How effective is Tabu search to configure support vector regression for effort estimation?
Proceedings of the 6th International Conference on Predictive Models in Software Engineering
Bayesian reasoning for software testing
Proceedings of the FSE/SDP workshop on Future of software engineering research
International Journal of Bio-Inspired Computation
A second look at Faster, Better, Cheaper
Innovations in Systems and Software Engineering
Measuring the heterogeneity of cross-company dataset
Proceedings of the 11th International Conference on Product Focused Software
Investigating the use of Support Vector Regression for web effort estimation
Empirical Software Engineering
An analysis of trends in productivity and cost drivers over years
Proceedings of the 7th International Conference on Predictive Models in Software Engineering
Local bias and its impacts on the performance of parametric estimation models
Proceedings of the 7th International Conference on Predictive Models in Software Engineering
A review of studies on expert estimation of software development effort
Journal of Systems and Software
Functional Link Artificial Neural Networks for Software Cost Estimation
International Journal of Applied Evolutionary Computation
International Journal of Intelligent Information Technologies
A formal approach to technical debt decision making
Proceedings of the 9th international ACM Sigsoft conference on Quality of software architectures
Software effort estimation as a multiobjective learning problem
ACM Transactions on Software Engineering and Methodology (TOSEM) - Testing, debugging, and error handling, formal methods, lifecycle concerns, evolution and maintenance
MND-SCEMP: an empirical study of a software cost estimation modeling process in the defense domain
Empirical Software Engineering
Hi-index | 0.01 |
To date many software engineering cost models have been developed to predict the cost, schedule, and quality of the software under development. But, the rapidly changing nature of software development has made it extremely difficult to develop empirical models that continue to yield high prediction accuracies. Software development costs continue to increase and practitioners continually express their concerns over their inability to accurately predict the costs involved. Thus, one of the most important objectives of the software engineering community has been to develop useful models that constructively explain the software development life-cycle and accurately predict the cost of developing a software product. To that end, many parametric software estimation models have evolved in the last two decades [25], [17], [26], [15], [28], [1], [2], [33], [7], [10], [22], [23].Almost all of the above mentioned parametric models have been empirically calibrated to actual data from completed software projects. The most commonly used technique for empirical calibration has been the popular classical multiple regression approach. As discussed in this paper, the multiple regression approach imposes a few assumptions frequently violated by software engineering datasets. The source data is also generally imprecise in reporting size, effort, and cost-driver ratings, particularly across different organizations. This results in the development of inaccurate empirical models that don't perform very well when used for prediction. This paper illustrates the problems faced by the multiple regression approach during the calibration of one of the popular software engineering cost models, COCOMO II. It describes the use of a pragmatic 10 percent weighted average approach that was used for the first publicly available calibrated version [6]. It then moves on to show how a more sophisticated Bayesian approach can be used to alleviate some of the problems faced by multiple regression. It compares and contrasts the two empirical approaches, and concludes that the Bayesian approach was better and more robust than the multiple regression approach.Bayesian analysis is a well-defined and rigorous process of inductive reasoning that has been used in many scientific disciplines (the reader can refer to [11], [35], [3] for a broader understanding of the Bayesian Analysis approach). A distinctive feature of the Bayesian approach is that it permits the investigator to use both sample (data) and prior (expert-judgment) information in a logically consistent manner in making inferences. This is done by using Bayes' theorem to produce a 'postdata' or posterior distribution for the model parameters. Using Bayes' theorem, prior (or initial) values are transformed to postdata views. This transformation can be viewed as a learning process. The posterior distribution is determined by the variances of the prior and sample information. If the variance of the prior information is smaller than the variance of the sampling information, then a higher weight is assigned to the prior information. On the other hand, if the variance of the sample information is smaller than the variance of the prior information, then a higher weight is assigned to the sample information causing the posterior estimate to be closer to the sample information.The Bayesian approach discussed in this paper enables stronger solutions to one of the biggest problems faced by the software engineering community: the challenge of making good decisions using data that is usually scarce and incomplete. We note that the predictive performance of the Bayesian approach (i.e., within 30 percent of the actuals 75 percent of the time) is significantly better than that of the previous multiple regression approach (i.e., within 30 percent of the actuals only 52 percent of the time) on our latest sample of 161 project datapoints.