Practical Software Estimation Measurement

Blogs

Top 5 Resources for Increasing Software Development Predictability in 2020

Top 5 Software Estimation Resources in 2019
As we enter a new decade, it's important to take a look back at where we've been. The past 10 years saw the introduction of the Ipad, Microsoft Azure, Uber, 4G networks, and Instagram. Some might look back and call this the era of cloud computing and artificial intelligence with increased connectivity and efficiency in technology like never before. But software development goals have remained largely the same: to reduce cost and time to market, increase quality and maintainability, and allocate resources more efficiently. I'm willing to bet those goals will not change in the coming decade. At QSM, we have always believed that the only way to combat the unknown is with practical measurement and metrics grounded in data from our past. As we look to 2020, let's take a look at our top 5 resources from 2019, featuring the most current insights from our industry experts on the state of software estimation and project management and development trends. 

What better way to get a bird's eye view of software development's history than with a look at long-term trends? Leveraging QSM's industry database of over 13,000+ completed projects, Katie Costantini's "Long Term Trends from 40 Years of Completed Software Project Data" took a high-level look at changes to software schedules, effort/cost, productivity, size, and reliability metrics from 1980 to 2019. The study compared insights to similar studies QSM has completed at regular intervals over the past four decades and answered questions like, 'what is the "typical" project over time?' and 'why are projects "shrinking?"

Blog Post Categories 
Metrics Estimation QSM Database

Introducing an Estimating Tool to your Process Isn’t all that Scary

Software Estimation Tool

Many organizations have a need and interest in introducing tools for estimating their IT development efforts, but are reticent due to the perceived disruption, or all out difficulty of execution.  Estimating touches many parts and processes of the organization, so implementation can seem daunting. However, many organizations I work with are surprised by the relative ease of the integration and how the results pay off in spades.

While a process may have been in place for years, or merely months, any good estimating tool should be able to adapt and be woven into that process.  This includes aligning the estimating tool to the nomenclature of the environment and customizing the tool to an organization’s project types such as Cloud, Agile, ERP, Waterfall etc.  Even a seemingly small step of branding the tool itself to the corporate identity, via company logo placement, can help.  Once a tool has your environmental language and “feel” embedded, it starts to belong.  Initially, all of this can be accomplished at a very centralized level – one or two projects with no need for disrupting the work of the project staff.   

Blog Post Categories 
Estimation

Webinar Replay: Is Software Estimation Needed When Cost and Schedule Are Fixed?

Fixed Cost and Schedule Estimation Webinar

If you were unable to attend our recent webinar, a replay is now available.

In many agile and even non-agile development environments, the budget, team size, and schedule are fixed based on an organization’s predetermined targets. This leads many project managers to question how they should proceed with target negotiations and some even wonder if they should estimate at all. The problem is, without a reliable estimate, the amount of functionality promised within the time and money constraints could be difficult to achieve. This could cause the product delivery to be short on features, or late and over budget.

Join Keith Ciocco for this webinar as he demonstrates the role of scope-level estimation tools in evaluating if targets are reasonable and in determining how much functionality can be delivered. This crucial analysis helps set customer expectations and provides data-driven leverage for negotiations.

Keith Ciocco has more than 30 years of experience working in sales and customer service, with 25 of those years spent with QSM. As Vice President, his primary responsibilities include supporting QSM clients with their estimation and measurement goals, managing business development and existing client relations. He has developed and directed the implementation of the sales and customer retention process within QSM and has played a leading role in communicating the value of the QSM tools and services to professionals in the software development, engineering and IT industries.   

Blog Post Categories 
Agile Webinars Estimation

Webinar Replay: Perspective and Predictability in Agile Release Planning

Agile Release Planning Webinar

If you were unable to attend our recent webinar, "Perspective and Predictability in Agile Release Planning," a replay and slides are now available.

Whether you release on-demand or according to a regular schedule, being able to visualize how many sprints it will take provides instant feedback so you can explore a range of schedule, scope, and staffing alternatives. Couple this with the ability to leverage project data - size, cost, schedule, and team performance - and you give your IT planning and decision-making processes a massive upgrade.

Join Laura Zuber for this PDU-approved webinar to learn how SLIM tools employ flexible project models and machine learning to provide information about projects that might not be obvious, enabling you to improve communication among stakeholders across the project lifecycle.

Watch the replay!

Blog Post Categories 
Agile Webinars

New Webinar: Perspective and Predictability in Agile Release Planning

Agile Release Planning Webinar

Whether you release on-demand or according to a regular schedule, being able to visualize how many sprints it will take provides instant feedback so you can explore a range of schedule, scope, and staffing alternatives. Couple this with the ability to leverage project data - size, cost, schedule, and team performance - and you give your IT planning and decision-making processes a massive upgrade.

Join Laura Zuber on ThursdaySept. 12 at 1:00 PM EDT for this PDU-approved webinar to learn how SLIM tools employ flexible project models and machine learning to provide information about projects that might not be obvious, enabling you to improve communication among stakeholders across the project lifecycle.

Watch the replay!

Blog Post Categories 
Agile Webinars

White Paper: Long Term Trends from 40 Years of Completed Software Project Data

Software Project Size over Time

Although the software industry is known for growth and change, one thing has remained constant: the struggle to reduce cost, improve time to market, increase quality and maintainability, and allocate resources most efficiently. So how can we combat future challenges in a world where everything is software, from the systems in your car to the thermostat in your home to the small computer in your pocket? By using practical measurement and metrics, we can get a bird's-eye view of where we've been and where we could go, while keeping us grounded in data. Leveraging QSM's industry database of over 13,000+ completed projects, Katie Costantini takes a high-level look at changes to software schedules, effort/cost, productivity, size, and reliability metrics from 1980 to 2019. The current study compares insights to similar studies QSM has completed at regular intervals over the past four decades and answers questions like, 'what is the "typical" project over time?' and 'why are projects "shrinking?"' The results may surprise you!

Read the full white paper!

4 Key Studies on Team Size

Software Team Size

It seems like ever since the dawn of software development, humans have struggled with the question of team size. What team size is most productive? Most economical? When does adding more people to a project cease to make sense? So it comes as no surprise that one of the most popular articles on our website is a study Doug Putnam did in 1997 on team size, Team Size Can Be the Key to a Successful Project. The article leveraged data from 491 completed projects in the QSM Database to determine what is the optimal team size - "optimal" being most likely to achieve the highest productivity, the shortest schedule, and the cheapest cost with the least amount of variation in the final outcome. The study determined that for medium-sized (35,000 to 95,000 new or modified source lines of code) systems, smaller teams of 3-7 people were optimal. This article continues to be referenced today, especially by the agile community.

The topic of team size reappeared again in Don's Beckett study of Best in Class and Worst in Class projects for the 2006 QSM Software Almanac. To identify top and bottom performers, he ran regression fits for effort and schedule vs. project size through a sample of nearly 600 medium and high confidence IT projects completed between 2001 and 2004. On average, Best in Class projects delivered 5 times faster and used 15 times less effort than Worst in Class projects. What made the Best in Class projects perform so much better? Best in Class projects used smaller teams (over 4 times smaller, on average) than the worst performers.

Blog Post Categories 
Team Size

Monitoring Software Project Progress by Money Spent Can Be Misleading

Sound financial practices are a core value of any successful enterprise; and should be.  It may come as a surprise that monitoring money spent against planned expenditures is not the best way to evaluate the progress of software projects.  The reason is simple:  by the time financial measures indicate that a project is off track, it is often too late to take effective corrective actions or identify alternative courses of action.

Here is an example that illustrates this.  Let’s take a hypothetical project plan with these characteristics:

  • Planned project duration of 1 year
  • Full time staff of 6 for the length of the project
  • Billing rate of $100/hour
  • 335 business requirements to complete
  • Project begins at the start of June and is scheduled to complete May 31 of the following year

According to this plan, the project should have a labor cost $1.245 million.  Now, using a software project monitoring tool, SLIM-Control, let’s see what the project looks like at the end of September. 

Software Project Cost

If we only look at money spent, the project is on track since planned and actual expenditures are exactly the same.  However, when we look at the progress of the actual work completed, a different story emerges.  The project got off to a slow start and the gap between what was planned and what has been delivered has increased every month.  Unless this is rectified, the project will last longer and cost more than originally planned.  Here is a forecast of what will happen if the current trend continues.  The project will complete over two months late and cost an additional $215,000.

Blog Post Categories 
Effort SLIM-Control Tracking

New Resource: QSM Software Almanac: 2019 Edition

QSM Software Almanac: 2019 Edition

We are pleased to announce the release of the QSM Software Almanac: 2019 Edition, an essential resource for anyone involved in the planning, management, or budgeting of software and systems projects and portfolios. This year's almanac focuses on agile development and the continued relevance and application of estimation and metrics.

The 2019 Almanac presents 18 articles from several perspectives, including both private and public. These articles show that there is indeed a compelling need to apply the basic principles of software estimation to projects, regardless of the methodology used, and that traditional metrics – even sizing metrics – can and should be applied to agile projects. Over the course of this book, the authors examine agile sizing approaches, effort and productivity, estimation best practices, as well as project and portfolio management best practices. All the articles offer research and insights into the foundational skills associated with parametric estimation and adapting those existing skills to account for changing conditions.    

Much of the content in the 2019 QSM Software Almanac is derived from the QSM Metrics Database, drawing data from over 13,000 completed software projects from North and South America, Australia, Europe, Africa, and Asia, representing over 1.2 billion lines of code, 600+ development languages, and 120 million person hours of effort.

We invite you to download the full, complimentary version of the 2019 QSM Almanac below.

Blog Post Categories 
Articles QSM News QSM Database Agile Estimation

How Machine Learning Algorithms Can Dramatically Improve your Estimation Predictions

At QSM, we have been on the leading edge of software estimation technology for 40 years.  One of our recent innovations is to incorporate machine learning into our SLIM-Suite of estimation and measurement tools.  If you are not familiar, the whole concept of machine learning is to “train” your algorithms with data to improve the accuracy of their predictions.  Simple in concept, but the devil is in the details.  In software project estimation, we are always asked to provide timely decision-making predictions based on skimpy information.  Depending on the situation, our analysis will typically focus on one or several of the following criteria:

  1. Schedule (Time to market)
  2. Effort (Cost to develop)
  3. Staffing and Resources Required
  4. Required Reliability at Delivery
  5. Minimum-Maximum Capability or Functionality Tradeoffs

We start the training process by utilizing data from completed projects using these five core metrics.  The data usually resides in tools like Jira or PPM products. Once obtained, we run statistical analysis on the data to determine typical behaviors and variability.

Estimation Machine Learning
Figure 1. Project data used in SLIM Machine Learning Training Process.  Triangles represent completed projects.  Lines are curve fits of the average behavior and statistical variation in the positive and negative directions.  These charts show how time, effort and staffing change depending on the size of the product to be developed. 

Blog Post Categories 
Estimation