Focused on planning for software projects, this IEEE presentation by Keith Ciocco explains some of the key components of a successful estimation process. This is a summary level view focusing on the importance of leveraging historical data, sizing, and measuring productivity when estimating at the organizational and project level. This presentation includes a demonstration of the SLIM Suite of tools to show how we can automate and streamline the estimation process.
Beginning with the release of SLIM-Suite v8.1, two new SLIM-Estimate solution methods were added to let you see what a “typical” project would look like: that is, the resources it would require, based upon historical projects from either the QSM database or your own. The two methods are:
- Solve from Trends Wizard
- Trend Based Solution
SLIM-Estimate provides several different ways to solve the software production equation and produce an estimate. The solution method you select depends upon the information you have available. The traditional methods, known as Quick Estimate Wizard and Detailed Method, take inputs of Size and Productivity (PI), and calculate Effort and Time. The Solve for Size Wizard, perfect for time-boxed estimates, takes inputs of Time, Effort, and PI, and determines the amount of functionality that combination of resources can produce.
The trend solutions require only one input – Size. Using the specified Primary Trend Group, Time and Effort are read from the average trend line and productivity (PI) is calculated. These methods extend the capabilities of producing a defensible project estimates very early in the life cycle. You can determine the feasibility of project goals, assess risk, and manage stakeholder expectations even if all you can estimate is a relative application size, expressed as a “T-shirt” or bin size, as shown in the figure below.
When an organization wants to proactively manage their software activities from inception through development and sustainment, an enterprise software estimation or acquisition Center of Excellence (COE) is a great solution. A significant portion of our professional services business at QSM is helping companies design and stand up enterprise COE operations.
There are three main components to a successful COE implementation. They are:
- People – Finding people with the right characteristics and developing their skills;
- Business Processes – developing the right business processes to support decision making; and
- Tools – Acquiring and configuring analytical tools to support the business processes.
Our clients often ask us to identify the best characteristics and skills for a person that they plan to staff into a COE. We went back and looked at our most successful implementations, and here is what we found.
Ideal Enterprise COE Skill Set:
Software size, the amount of functionality in a given software release, is arguably the most important of the five core metrics of software estimation. There is little point in tracking effort, duration, productivity and quality if you are unable to quantify what you are building.
Yet, despite its critical importance, software sizing is often a difficult concept for many to understand and use properly in the estimation process. Sometimes a picture is better than 1,000 words. With that ideal of visual simplicity in mind, we developed a software sizing infographic that helps explain:
- Why we care about size
- Challenges in sizing
- When size should be measured during the software development life cycle (SDLC) to narrow the cone of uncertainty
- The difference between functional and technical size
- The most popular sizing methods and when to use them
The infographic begins by introducing the five core metrics of software estimation (size (scope), schedule (duration), effort (cost), quality (defects) and productivity) and the nonlinear relationship between them.
At QSM, we have one of the largest industry databases in the world of completed software projects. The data comes from our clients with their permission and this data has been the backbone of our software estimation business for over 35 years. We can see what is reasonable on software development projects as it relates to cost, team size, effort, duration, size, and reliability. Because of our experience we are often asked about risk factors and estimation accuracy early in the project lifecycle. We explain that increased accuracy comes with having historical data and good sizing information.
But what happens on the early estimates when clients don’t have history and detailed sizing information? Can they still generate scope level estimates so they can make good business decisions? The answer is yes. Risk management techniques can be applied and project uncertainty can be calculated so organizations can plan effectively. This is very important because big business decisions are often made early. Decision-makers need to know if they should move forward with a project and they need to know how much time and effort to allocate.
We use SLIM-Estimate, which is a leading estimation tool that leverages the Putnam Model. It generates reliable estimates based on QSM’s time-tested forecasting models and historical data and it also provides scope level estimates when project information is hard to find. It will allow you to see the chance you have of hitting your project goals and it will allow you to factor in your uncertainty.
How in the world does landing on an aircraft carrier relate to software estimation? Anyone who has ever experienced the terror joy of landing a jet on an aircraft carrier, especially on that dark, stormy night with no moon and a pitching deck, appreciates the importance of a good start. Your line-up is critical, as is your airspeed, angle-of-attack and attention to the "ball" – that tiny little yellow dot between the rows of green lights. As a former Bombardier/Navigator in the Grumman A6E Intruder, I have teamed with pilots on over 300 landings, all of which I have lived through. My job was to monitor and call the line-up and radar altimeter, handle the radios, manage the fuel and generally avoid sounding terrified for the entire evolution.
The process was made significantly easier if we arrived at the 3/4 mile point behind the ship at the right airspeed, gross weight, angle of attack, altitude and line up. Sort of like juggling a bunch of skittish cats.
But when all those parameters came together, we had a good start. When embarking on a software development project, or any engineering project, it’s equally important to have a strong foundation. That means having a solid idea of the characteristics of the project, what resources are (or should be) available, what duration is most likely and how good does it have to be. A software estimation tool can provide the project manager with this essential information.
QSM is pleased to announce the launch of a new workshop series focused on addressing the challenges organizations encounter when implementing software estimation processes. The series offers eight customizable workshops that are tailored to meet the unique needs of each individual company and its business goals.
Workshops include product training for users of QSM's SLIM Suite, as well as estimation fundamentals that are tool agnostic:
QSM's recent webinar, Organizational Success; A Practical Guide to the Estimation Center of Excellence, presented by J.D. Ottenbreit, featured a lively Q&A session from our audience. Here are the highlights:
Q: You mentioned that data is critical to an Estimation Center of Excellence, what if we don’t have any good data yet?
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.
Software 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.