Navigation:Michael Milutis |Home |Subscribe |About the Newsletter |Software Best Practices Events |ArchivesSoftware Best Practices InterviewsAbout our ContributorsSoftware Best Practices Reading ListSoftware Best Practices LinksAbout the InstituteAbout the SponsorSoftware ProcessesSoftware MetricsSoftware EstimationIT GovernanceChat LiveSoftware Best Practices Conferences - North AmericaSoftware Best Practices Conferences - EuropeSoftware Best Practices Conferences - Asia PacificSoftware Best Practices WorkshopsSoftware Best Practices Webinars
Home  -  Contact Us  -  Site Map

 Subscribe to RSS
 What is RSS?


The Software Best Practices Conferences

Implementations Workshop



Software ProcessesSoftware MetricsSoftware EstimationIT GovernanceCAI
Subscribe for Free!

All 2010 webinar registration links, topics, and descriptions now available for download!  

Interested in sponsoring or advertising?
Click HERE for details!

ITMPI on Twitter!

The ITMPI is now on Twitter!
Follow us at http://www.twitter.com/itmpi



Software Estimation

Risks, Requirements, and Estimation of a Software Project
The purpose of this article by Roberto Meli is to make a practical contribution to those interested in achieving a successful software project by knowingly and methodically reducing the major risks associated with it. (14 pages)
Click Here to Read "Risks, Requirements, and Estimation of a Software Project"!

Software Estimation, Measurement and Metrics
Poor size estimation is one of the main reasons major software-intensive acquisition programs ultimately fail. Size is the critical factor in determining cost, schedule, and effort. The failure to accurately predict (usually too small) results in budget overruns and late deliveries which undermine confidence and erode support for your program. Size estimation is a complicated activity, the results of which must be constantly updated with actual counts throughout the life cycle. Size measures include source lines-of-code, function points, and feature points. Complexity is a function of size, which greatly impacts design errors and latent defects, ultimately resulting in quality problems, cost overruns, and schedule slips. Complexity must be continuously measured, tracked, and controlled. Another factor leading to size estimate inaccuracies is requirements creep which also must be baselined and diligently controlled. (36 pages)
Click Here to Read "Software Estimation, Measurement and Metrics"!

Building a Fort: Lessons in Software Development
In this article from his blog site, Steve McConnell compares the experience of building a tree house for his kids with software construction. (17 pages)
Click Here to Read "Building a Fort: Lessons in Software Development"!

The 5 Pitfalls of Estimating a Software Project
It took 6 years for the Christopher Hawkins to learn how to produce an estimate that accurate. Along the way the author noticed a set of behaviors that always lead to blown estimates and broken budgets. Avoiding these pitfalls will put any organization on the road to more accurate estimating, happier clients, and profitable projects. (4 pages)
Click Here to Read "The 5 Pitfalls of Estimating a Software Project"!

Software Development Cost Estimation Approaches: A Survey
This paper summarizes several classes of software cost estimation models and techniques: parametric models, expertise-based techniques, learning-oriented techniques, dynamics-based models, regression-based models, and composite-Bayesian techniques for integrating expertise based and regression-based models. Experience to date indicates that neural-net and dynamics-based techniques are less mature than the other classes of techniques, but that all classes of techniques are challenged by the rapid pace of change in software technology. The primary conclusion is that no single technique is best for all situations, and that a careful comparison of the results of several approaches is most likely to produce realistic estimates. (46 pages)
Click Here to Read "Software Development Cost Estimation Approaches: A Survey"!

Quantifying Soft Factors
The role that soft, human-oriented factors play in software effectiveness sometimes gets lost in discussions of best practices, process models, and other more complex topics. By Steve McConnell. (3 pages)
Click Here to Read "Quantifying Soft Factors"!

Limitations of Estimation
As early as 1968, A. M. Pietrasanta at the IBM System Research Institute stated: "Anyone who expects a quick and easy solution to the multi-faceted problem of resource estimation is going to be disappointed." Are you still having problems with estimation? The author, Linda M. Laird, explains what is reasonable to expect in estimation, what is not, and what you can do about it. In practical terms, it comes down to how much you really know about the project when you are estimating it, and how much uncertainty is inherent. (12 pages)
Click Here to Read "Limitations of Estimation"!

UKHEC Report on Software Estimation
This report by K. Kavoussanakis and Terry Sloan of the University of Edinburgh presents an overview of software estimation history and defines basic software estimation terms while also providing an inventory of software estimation methods, software estimation processes, and software estimation tools. Includes an excellent list of relevant web links and references for further software estimation reading. (23 pages)
Click Here to Read "UKHEC Report on Software Estimation"!

Software Estimation Perspectives
The ability to scope software projects accurately is an essential element of the software engineering discipline. The attached article by Barry W. Boehm and Richard E. Fairley outlines some of the most fundamental issues at the heart of software estimation while also providing an annotated bibliography of six articles, each consistent with the theme of "Recent Developments in Software Estimation." (4 pages)
Click Here to Read "Software Estimation Perspectives"!

Software Project Estimation
Effective software estimates come about as a result of software process definition and continuous software process improvement, software process education and training, software measurement, good software project management, and the proper use of tools, techniques, and sufficient resources. In light of this, it could be several years before you've had enough time and software project cycles to establish the basics from which better software estimates are consistently made. Nevertheless, this article by independent software engineering consultant Kathleen Peters, in addition to outlining the basics of software estimation, recommends a few things you can do right now to make a difference with your software estimates. (14 pages)
Click Here to Read "Software Project Estimation"!

A CAI State of the Practice Interview with Dr. Elizabeth Clark, President of Software Metrics, Inc.
Dr. Elizabeth Clark has been involved in the practical application of software measurement for predicting, controlling and improving software process and software quality since 1979. She is the President of Software Metrics, Inc., a consulting company she co-founded in 1983. Dr. Clark is a primary contributor to Practical Software Measurement. She is also a certified PSM instructor and has conducted numerous PSM training classes and workshops within the United States and Australia. Dr. Clark was a principle contributor to the Software Engineering Institute's (SEI) core measures and, through her affiliation with the Institute for Defense Analyses, has acquired extensive experience in performing independent software cost analyses for government clients. Her experience covers a range of weapons platforms as well as large information systems. Our interview between Elizabeth Clark and Michael Milutis, Executive Director of the IT Metrics and Productivity Institute (ITMPI), took place in September of 2005.
Click Here to Read the Interview with Dr. Elizabeth Clark!

Software Estimation: Challenges and Research
Software cost and schedule estimation supports the planning and tracking of software projects. Because software is complex and intangible, software projects have always been harder to estimate than hardware projects. In this article, Richard D. Stutzke reviews the challenges facing software cost estimators and describes the software estimation research work under way to address these challenges. (6 pages)
Click Here to Read "Software Estimation: Challenges and Research"!

So What is the State of Software Estimation?
Why are 21% of companies experiencing software schedule overruns exceeding one year, and why are 11% overrunning their software budget by more than US $1 million? In this article, E.M. Bennatan speculates that one of the problems with software overruns is that software estimation is not entirely in the hands of the developers; it is heavily influenced by behavioral and political factors. According to Bennatan, the solution to better software estimation lies in bringing customers, users, and senior management closer to the development process. (2 pages)
Click Here to Read "So What is the State of Software Estimation?"!

Software Estimation: Perfect Practice Makes Perfect
Accurate software estimation has long been a headache for software developers. Much of the problems software developers face with software estimation stem from lack of good software estimation training and practice. This article by David Henry of the Linux NetworkX is the result of the author's experimentation with different software estimation training methods. It is intended to give practical advice to managers or technical leads who wish to initiate a software estimation process in their organization. (7 pages)
Click Here to Read "Software Estimation: Perfect Practice Makes Perfect"!

Reducing Bias in Software Project Estimates
Nearly every software development estimate has been, or will be, biased. Biases in the software estimating process contribute to poor software estimates, which can affect the success or failure of a software project. Understanding the psychological impact of bias in developing software estimates is essential for information technology project managers and their teams. This article by David Peeters and George Dewey explores 1) how biases affect bottom-up ,task level effort estimates for software development; and 2) various bias-reduction strategies that can be employed to improve the quality of your software estimates. (9 pages)
Click Here to Read "Reducing Bias in Software Project Estimates"!

Software Development Cost Estimation Approaches - A Survey
This paper by Barry Boehm and Sunita Chulani summarizes several classes of software cost estimation models and techniques: parametric cost estimation models, expertise-based techniques, learning-oriented techniques, dynamics-based models, regression-based models, and composite-Bayesian techniques for integrating expertise-based and regression-based models. The primary conclusion of the paper is that no single software cost estimation technique is best for all situations, and that a careful comparison of the results of several software cost estimation approaches is most likely to produce realistic estimates. (46 pages)
Click Here to Read "Software Development Cost Estimation Approaches - A Survey"!

Software Cost Estimating Methods for Large Projects
Software estimating is simple in concept, but difficult and complex in reality. The larger the software project, the more cost estimation factors there are that must be evaluated. The difficulty and complexity required for successful software cost estimates, particularly on large software projects, will exceed the manual software estimating capabilities of most software project managers. Although automated software estimates often outperform human software estimates in terms of accuracy, no single method of software estimation is totally error-free. This article by Capers Jones explores current software cost estimation best practices and shows how a combination of software cost estimating tools coupled with software project management tools, under the careful guidance of experienced software project managers and software estimating specialists, can maximize software estimation accuracy. (9 pages)
Click Here to Read "Software Cost Estimating Methods for Large Projects"!

Estimation Games
Over 30 plus years of commercial computing has led to the development of a series of sophisticated political games that have become a replacement for software estimation as a formal process. Like all good games these "estimation games" have been passed on from generation to generation by "children" IT people learning from "adult" IT managers who, of course, learned their software estimation games from earlier adults. This article by The Thomsett Group explores and dissects a wide variety of software estimation games, from "Double Dummy Spit" to "X Plus" to "Spanish Inquisition". If it's funny, it's because it's true. (11 pages)
Click Here to Read "Estimation Games"!

Painless Software Schedules
Making a software schedule is something almost no programmer wants to do. The vast majority just try to get away with not making a software schedule at all. Why is this the case? Two key reasons. First, it's a real pain. Second, nobody believes that a software schedule is worth anything (except for upper management, which simultaneously believes that "no software project is ever on time.") In short, why go to all the trouble to develop a software schedule if it's not going to be right and if nobody will ever actually believe it? This article by software programmer and writer Joel Spolsky seeks to answer this question while providing a simple, painless way to make software schedules that are actually correct. (9 pages)
Click Here to Read "Painless Software Schedules"!

To Err is Human, To Estimate Divine
Poor software project estimation is the dirty little secret of application development. Nearly all software projects are either canceled or come in over budget or behind schedule. A recent study of 100 companies found the average company completes only 37% of major IT projects on time, while only 42% finish on budget. The Standish Group International, whose 1995 Chaos Report highlighted IT project failures, found that 40% of application development projects are canceled before completion. Standish Group calculated that these failed and struggling software projects were costing U.S. companies and government agencies $145 billion annually. While many factors are leading to poor software project estimation, this article by Phillip Gordon explores two tools that can help developers improve value by turning informal record keeping into a managed process. (4 pages)
Click Here to Read "To Err is Human, To Estimate Divine"!

Estimating Software Earlier and More Accurately
Software practitioners are frequently challenged to provide early and accurate software project estimates. It speaks poorly of the software community that the issue of accurate estimating, early in the lifecycle, has not been adequately addressed and standardized. This article by David Herron of the David Consulting Group will consider the use of a basic estimating model utilizing functional sizing as one of the key components. According to the author, the value to be gained from utilizing a functional sizing technique, such as Function Points, is primarily in the capability to accurately estimate a project early in the development process. (4 pages)
Click Here to Read "Estimating Software Earlier and More Accurately"!

Estimation of Maintenance Tasks
Software maintenance is defined as the modification of a software product after delivery to correct faults, to improve performance, or to adapt the product to a changed environment. Such maintenance usually exceeds other application development costs. Nevertheless, project estimation often does not include the estimation of maintenance efforts for the lifetime of an application system. In this article by Manfred Bundschuh, President of the German Software Metrics Association, the author explores how metrics can be used for the estimation of software maintenance efforts. (11 pages)
Click Here to Read "Estimation of Maintenance Tasks"!

A CAI State of the Practice Interview with Barry Boehm
Barry Boehm received his B.A. degree from Harvard in 1957, and his M.S. and Ph.D. degrees from UCLA in 1961 and 1964, all in Mathematics. Between 1989 and 1992, he served within the U.S. Department of Defense (DoD) as Director of the DARPA Information Science and Technology Office, and as Director of the DDR&E Software and Computer Technology Office. His current research interests include software process modeling, software requirements engineering, software architectures, software metrics and cost models, software engineering environments, and knowledge-based software engineering. His contributions to the field include the Constructive Cost Model (COCOMO), the Spiral Model of the software process, the Theory W (win-win) approach to software management and requirements determination and two advanced software engineering environments: the TRW Software Productivity System and Quantum Leap Environment. Our interview between Barry Boehm and Michael Milutis, Executive Director of the IT Metrics and Productivity Institute, took place in April of 2006.
Click Here to Read the Interview with Barry Boehm!

A CAI State of the Practice Interview with Steve McConnell, Author of Software Estimation: Demystifying the Black Art
Steve McConnell is CEO and chief software engineer at Construx Software, where he oversees software engineering practices, teaches classes, and writes books and articles. Steve is the author of the computing industry classics Code Complete and Rapid Development, both winners of Software Development magazine's Jolt award for outstanding software development books. He is also the author of Software Project Survival Guide and numerous technical articles. Steve was editor-in-chief of IEEE Software magazine from 1998 to 2002. His newest book is Software Estimation: Demystifying the Black Art.
Click here to Read the Interview with Steve McConnell!

Sizing and Estimating for Real Time Software - the COSMIC FFP Method
In this paper by Charles Symons, creator of the Mark II Function Point, the author describes the COSMIC FFP method and how it can be used for sizing real time software requirements, and hence be leveraged as the key ingredient for project estimating and project performance measurement. This article is made available courtesy of DACS. It may not be reprinted without explicit permission of DACS. (12 pages)
Click here to Read "Sizing and Estimating for Real Time Software - the COSMIC FFP Method"!

How Software Estimation Tools Work
Since the mid 1990's there have been about 50 commercial software cost estimation tools marketed in the United States and another 25 in Europe, although not all at the same time. Many of these tools are "black boxes" and their methods of operation are proprietary and regarded as trade secrets by their owners. However, there is a basic sequence of activities that must be carried out. This article by Capers Jones discusses eight essential steps of accurate software estimation: 1) Sizing project deliverables; 2) Estimating quality and defect removal efficiency; 3) Selecting project activities; 4) Estimating staffing levels; 5) Estimating Effort; 6) Estimating costs; 7) Estimating schedules; 8) and Estimating requirements growth during development. (28 pages)
Click here to Read "How Software Estimation Tools Work"!

Estimation (Chapter Excerpt from "Applied Software Project Management")
To someone who has never estimated a project in a structured way, estimation seems little more than attempting to predict the future. This view is reinforced when off-the-cuff estimates are inaccurate and projects come in late. But a good formal estimation process, one that allows the project team to reach a consensus on the estimates, can improve the accuracy of those estimates, making it much more likely that projects will come in on time. In this article by Andrew Stellman and Jennifer Greene, the authors explain how a project manager can help the team to create successful estimates for any software project by using sound techniques and understanding what makes estimates more accurate. (21 pages)
Click here to Read "Estimation (Chapter Excerpt from "Applied Software Project Management")"!

5 Logical Components of Function Point Approximation
Function Point approximations have proved to be helpful during feasibility studies and at project starts. In this article, Manfred Bundschuh, president of the German Software Metrics Association, demonstrates the results of such approximation. (13 pages)
Click Here to Read "5 Logical Components of Function Point Approximation"!

A Holistic Dynamic Classification Framework for Software Estimation
In this article, Manfred Bundschuh outlines a holistic dynamic classification framework for improving your software project estimates. (8 pages)
Click Here to Read "A Holistic Dynamic Classification Framework for Software Estimation"!

Estimation of IT Projects
In this article, Manfred Bundschuh explains how to achieve expertise in IT project estimation. (11 pages) 
Click Here to Read "Estimation of IT Projects"!

Executing the Estimate
The key to consistent project success is effective software sizing, but sizing is often the most difficult part of the project estimate. Project managers grapple with being able to accurately estimate the amount of code needed to satisfy product requirements, and they struggle to quantify risks and uncertainties associated with their estimates. Learn more about how to master this technique in this article by Dan Galorath. (9 pages) 
Click Here to Read "Executing the Estimate"!

Software Estimating Rules of Thumb
Accurate software estimating is too difficult for simple rules of thumb. Yet in spite of the availability of more than 50 commercial software estimating tools, simple rules of thumb remain the most common approach. Rules based on the function point metric are now replacing the older LOC rules. This article by Capers Jones assumes IFPUG counting rules version 4.1. (11 pages)
Click Here to Read "Software Estimating Rules of Thumb"!

Controlling Software Acquisition Costs with Function Points and Estimation Tools
Too often, organizations that contract for software development services are at the mercy of vendors for cost and schedule estimates. Once a program office releases a request for proposal (RFP) for software development, it must somehow evaluate the validity of cost and schedule estimates that come back with the proposals. Or, a program might have a limited budget or schedule but not a clear understanding of what amount of development is actually feasible within these limitations. This article by Ian Brown proposes an approach that can help buyers of software take control of this situation by providing the ability to objectively evaluate software development proposals, select the best value for their needs, and effectively manage acquisition costs from kickoff to product delivery. (10 pages)
Click Here to Read "Controlling Software Acquisition Costs with Function Points and Estimation Tools"!

Function Point Estimation Methods: A Comparative Overview
The appearance of the Function Point technique has allowed the ICT community to increase significantly the practice of software measurement, with respect to the use of the traditional 'Lines of Code approach.' A FP count, however, requires a complete and detailed level of descriptive documentation, like the Functional Specifications of the software system under measurement, to be performed. There are at least two situations in which having an estimation method, compatible but alternative to the standard rules for FP, could be decisive. The first case occurs when the development or enhancement project is in such an early phase that it is simply not possible to perform a FP count. The second case occurs when an evaluation of the existing software asset is needed, but the necessary documentation or the required time and resources to perform a detailed FP calculation are not available. Based on these and other analogous situations, the demand of methods for estimating - not counting - Function Points has risen from the organizations involved in software business. The technical literature offers several estimation methods that can be examined and compared. This paper by Roberto Meli and Luca Santillo presents, therefore, the characteristics of some outstanding methods and a general benchmarking model, useful for the evaluation of any additional method, as well. (14 pages)
Click Here to Read "Function Point Estimation Methods: A Comparative Overview"!

Inside SEER-SEM
The System Evaluation and Estimation of Resources - Software Estimating Model (SEER-SEM) is a commercially available software project estimation model used within defense, government, and commercial enterprises. Introduced over a decade ago and now in its seventh release, it offers a case study in the history and future of such models. SEER-SEM and its brethren are built upon a mix of mathematics and statistics; this article by Lee Fischman, Karen McRitchie, and Dan Galorath provides insight into its inner workings and basis of estimation.
Click Here to Read "Inside SEER-SEM"!

A CAI State of the Practice Interview with Roberto Meli
Roberto Meli is an expert in project management, software development methodologies, and software metrics. He attends to and teaches training courses in Italy and foreign countries and is a coordinator of GUFPI - ISMA CPC (Counting Practices Committee, Technical Committee for the Rules of function point counting). Since 1990 he has been the Managing Director and CIO for DPO. Our interview between Roberto Meli and Michael Milutis, Executive Director of the IT Metrics and Productivity Institute, took place in August of 2008.
Click Here to Read the Interview with Roberto Meli!

A CAI State of the Practice Interview with Daniel Galorath
Daniel Galorath is one of the principal developers of the SEER-SEM™ software evaluation model. His teaching experience includes development and presentation of courses in Software Cost, Schedule, and Risk Analysis; Software Management; Software Engineering; and Weapons Systems Architecture. His company, Galorath Incorporated, has developed tools, methods, and training for software cost, schedule, risk analysis, and management decision support. Among Mr. Galorath's published works are papers encompassing software cost modeling, testing theory, software life cycle error prediction and reduction, and software and systems requirements definition. Most recently, Mr. Galorath was named winner of the 2001 International Society of Parametric Analysts (ISPA) Freiman Award. awarded to individuals who have made outstanding contributions to the theoretical or applied aspects of parametric modeling. Dan is also the author of Software Sizing, Estimation, and Risk Management. Our interview between Dan Galorath and Michael Milutis, Executive Director of the IT Metrics and Productivity Institute, took place in June of 2007.
Click Here to Read "An Interview with Daniel Galorath"!

Using Earned Value Management Indexes as a Team Development Factor and a Compensation Tool
The objective of this paper by Ricardo Vargas is to present the main components of the development of a project team, the motivational characteristics inherent to the team work and an interrelation proposal between the earned value analysis and team development through the SPI and CPI indexes obtained by the tool and team development models and the compensation and reward in the project, allowing to reduce the evaluation subjectiveness of the human resource in the project. The paper presents a brief report about the team development and compensation policies, as well as an introduction to the earned value concept aiming to align the approached concepts. (10 pages)
Click Here to Read "Using Earned Value Management Indexes as a Team Development Factor and a Compensation Tool"

Earned Value Probabilistic Forecasting Using Monte Carlo Simulation
The aim of this article by Ricardo Vargas is to present a proposal of interconnection between models and probabilistic simulations of projects as possible ways to determine EAC (Final Cost) through Earned Value Analysis. (12 pages) 
Click Here to Read "Earned Value Probabilistic Forecasting Using Monte Carlo Simulation"

Earned Value Analysis in the Control of Projects: Success or Failure?
The objective of this paper by Ricardo Vargas is to present and discuss the main obstacles and benefits of the use of the Earned Value Analysis in projects, including factors to be improved and implemented during the project plan and actions to be taken while the project is accomplished and controlled. (8 pages) 
Click Here to Read "Earned Value Analysis in the Control of Projects: Success or Failure?"



 
 
 
  



For more information on software best practices and IT management, please contact Michael Milutis, the IT Metrics and Productivity Journal Executive Director, at michael_milutis@compaid.com