Practical Software Estimation Measurement

Blogs

A Software Metrics Snow Job

I like to ski.  I mean really like to ski.  I've done it for a long time and I fancy I'm quite good at it.  I Iike to have the latest gear too.  So I have this Ski Tracks app on my iPhone see.  It's very cool.  When I start skiing for the day I set it going and it records every run I make: the altitude, the speed.  Heck, it even tracks your runs on a map that you can export and relive on Google Earth.  Really. 

Ski Tracks also summarizes your days' efforts showing the total number of runs, the total vertical skied, the maximum altitude, the time spent skiing, the distance traveled, the angle of the slope…

A Hard Day on the Slopes

Software Metrics Snow JobSitting in the condo at the end of a hard day on the slopes of Breckenridge Resort in Colorado, I checked my Ski Tracks for the day.  "Woohoo!" I said.  "Glenn, come check this out!"  My ski buddy Glenn ambled in from the kitchen; we've skied together for several years, ever since our respective spouses decided that for some reason they didn't want to ski with us anymore. 

"Look at this," I exclaimed holding up my iPhone showing the summary of my day's skiing.  "Just check out this top speed!!"

Glenn squinted at the screen.  "Hmmm, 54.8 mph," he observed.

"How about that?" I asked rhetorically, "have the ol' legs still got it or what?"  I was inordinately pleased with myself.  I mean, 54.8 mph is FAST.

Blog Post Categories 
Metrics Benchmarking

Webinar - Organizational Success: A Practical Guide to the Estimation Center of Excellence

On Thursday, Dec. 4 at 1:00 PM EST, QSM's J.D. Ottenbreit will present "Organizational Success: A Practical Guide to the Estimation Center of Excellence."

High performing companies already know that superior software estimation is not only possible, but essential to gaining and keeping a competitive edge while simultaneously helping to protect IT investments and drive positive project outcomes. One way to enable proven best practices with the estimation discipline is to formalize an Estimation Center of Excellence (ECoE). While most organizations have unique features and challenges, establishing such a center has certain foundational elements. A well-thought out launch and execution can dramatically increase transparency, collaboration and value across an enterprise or division.

In this session, J.D. Ottenbreit, QSM's Commercial Director of Professional Services, will provide an executive level webinar to cover some of the practical steps, pitfalls and critical success factors involved with bringing to life a truly successful, sustainable ECoE. The webinar is based on real-life lessons learned and case studies from QSM - a recognized industry leader and pioneer in the field of software estimation and control.

Watch the replay!

Blog Post Categories 
Webinars Estimation

Announcing the QSM Software Almanac: 2014 Research Edition

QSM Software Almanac: 2014 Research EditionAfter many months of research, I’m pleased to announce that today QSM has released the 2014 version of its Software Almanac.  A follow-up to the previous version released in 2006, this 200+ page book includes more than 20 articles on topics such as metrics, agile methodology, long term planning, and trends in software development.  

The Almanac is one of the few research compendiums that studies how software development has evolved since 1980.  The source of this research is the QSM Metrics Database, which contains data from over 10,000 completed software projects from North and South America, Australia, Europe, Africa, and Asia, representing over 740 million lines of code, 600+ development languages, and 105,833 person years of effort.  

The field of software development has long focused on finding predictable and repeatable processes that improve quality and productivity, which is why many organizations are taking an interest in agile methodology. As such, this year’s Almanac focuses on this topic, which has generated increased interest since the 2006 release. Specifically, it takes a close look at projects that have been based on agile methodologies and successfully completed within the past five years.

Blog Post Categories 
QSM News Articles

Webinar - IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balancing the Scale

On Wednesday, Nov. 13 at 11:00 AM EST, QSM's Larry Putnam, Jr. will present IT Demand Management and Capacity Planning: Why Estimation Is Vital to Balancing the Scale, a PDU-approved webinar for ITMPI.

Estimation is critical to IT demand management as today's senior IT executives deal with a familiar challenge - how to balance the size of the development team with the company's software wish list. Modern estimation techniques offer critical insight into this challenge. In this webinar, you will learn the ins and outs of estimation and how to effectively utilize estimation to ensure project success.

Larry Putnam, Jr. has 25 years of experience using the Putnam-SLIM Methodology. He has participated in hundreds of estimation and oversight service engagements, and is responsible for product management of the SLIM-Suite of measurement tools and customer care programs. Larry has delivered numerous speeches at conferences on software estimation and measurement, and has trained - over a five-year period - more than 1,000 software professionals on industry best practice measurement, estimation and control techniques and in the use of the SLIM-Suite.

Register now!

What Software Project Benchmarking and Estimating Can Learn from Dr. Seuss

Software Estimation and Dr. SeussSoftware project benchmarking and estimating leverages the power of historical project data to do solid project estimates, yet the concepts behind such processes are often not well understood.  Benchmarking and estimating rely on productivity comparisons with completed (actual) projects in a historical database and on parametric equations that mimic real life.  I find that technical concepts such as software estimation or benchmarking often can be explained by using analogies that work in other industries.  As I was thinking about benchmarking and estimating this week, the popular children’s book, Dr. Seuss's Green Eggs and Ham, came to mind.

I was talking about data mining, benchmarking, and the SLIM Suite of software estimating tools with QSM’s research director, Kate Armel. It seems that many project estimators believe that creating microscopic slices of project data is the key to precision in estimating and benchmarking, when, in reality, bigger chunks of data take less time to assemble and provide greater value.  Projects are never exact duplicates of each other, however, there are valuable trends and patterns that come out of a few common characteristics.

Blog Post Categories 
Benchmarking Estimation

Probability, Baseball, and Project Estimation

How is baseball analysis like software project management?  One way is the ability to continually update estimates and forecasts, as the situation and our knowledge change.  As Larry Putnam Jr recently wrote, “project estimation should continue throughout the entire project lifecycle”. 

Walter Shewhart, the father of Statistical Process Control, explained it like this:

“…since we can make operationally verifiable predictions only in terms of future observations, it follows that with the acquisition of new data, not only may the magnitudes involved in any prediction change, but also our grounds for belief in it.”

Here is a baseball example that should appear very familiar to software estimators who are familiar with the often quoted cone of uncertainty.  The following graph is taken from Curve Ball: Baseball, Statistics, and the Role of Chance in the Game, by Jim Albert and Jay Bennett.

Baseball Software Project Probability

The above model is based upon only a few simple items:  The number of homeruns hit so far; the number of games played so far and number remaining; and the total number of games in a season.  We could try to improve the model, especially early in the season, by incorporating more information.  For example:  

Blog Post Categories 
Estimation Data Project Management

New Article: Estimate Before, During, and After the Software Project

Estimate Before, During, and After the Software Project

A common misperception is that an estimator’s job is done after a software project’s parameters are set. On the contrary, software estimation should be conducted throughout the project lifecycle to reflect inevitable changes and to improve estimates on other projects. In this article, originally published in Projects at Work, Larry Putnam Jr. identifies three ways to maximize estimating efforts — before, during and after your project is complete.

Read the full article!

Blog Post Categories 
Estimation Articles PPM

From Proposal to Project Webinar Replay and Q&A Highlights

From Proposal to Project: Getting Resource Demand Early

QSM's recent webinar, From Proposal to Project: Getting Resource Demand Early, presented by Andy Berner and Keith Ciocco, featured a thoughtful Q&A session from our audience. Here are the highlights:

Q: Which PPM products does SLIM work with right now?

A: We're working with customers to see what products they're interested in. It's adaptable to multiple PPM systems and we'd like your input on which ones we should deliver for you early. We can work with you so you can build a customized input to your own system. So the framework is very general and is released as part of the SLIM product. We will be providing adapters to common PPM systems and that's what we would like to learn from our design partners - which ones to deliver first. (Note: if you are a SLIM customer or prospect, you can request to join our design group by emailing Keith Ciocco).

Q: You showed SLIM-WebServices. Does that come with the desktop tool? Do you use them separately or together?

The "Typical Software Project" Over Time

What does a typical software project in the QSM historical database look like, and how has “what’s typical” changed over time? To find out, we segmented our IT sample by decade and looked at the average schedule, effort, team size, new and modified code delivered, productivity, language, and target industry for each 10 year time period.

The QSM benchmark database represents:

  • 8,000+ Business projects completed and put into production since 1980.
  • Over 600 million total source lines of code (SLOC).
  • 2.6 million total function points.
  • Over 100 million person hours of effort.
  • 600+ programming languages.

During the 1980s, the typical software project in our database delivered 154% more new and modified code, took 52% longer, and used 58% more effort than today’s projects.   The table below captures these changes:

Blog Post Categories 
Team Size Languages QSM Database Effort

Is Better Software Productivity Always the Right Goal?

Some years ago, the large systems integrator I worked for brought in a new CEO in an attempt to jump start the company.  We had lost our position as number one in the industry and leadership had become stagnant and ingrown.  The new CEO, who did not have a software background, liked to promise that we could deliver our projects “Faster, Better, and Cheaper."  That sounds wonderful, but is rapid process improvement in three dimensions really possible?  The short answer is “No” – at least not in the short term.  Here’s why.

To deliver a software project faster one of two things has to occur:  

  • Productivity must increase or
  • More effort (cost) must be applied to the project.  

Increasing productivity is a long term strategy that entails improving how the organization works.  It has nothing to do with mandating unpaid overtime or telling developers to “work smarter.”  In fact, those strategies are usually counterproductive.  

Blog Post Categories 
Productivity