Practical Software Measurement


Bringing Reality to the Agile View of the World

I recently came across this blog post by David Gordon and I believe it nicely summarizes the problem many C-level executives find with the #NoEstimates agile view. At the end of the day, they need realistic numbers in order for their organizations to make a profit and remain competitive in their markets. It's simply not enough to start development without some sort of upfront plan as to how much the overall project will cost. Gordon gives a nice analogy:

Now, picture a carpenter who has been asked to bid on framing a group of houses. He replies that he can’t tell how long it will take, because his crew hasn’t built that model before. But if the home builder gives them, say, $400,000, they will work diligently, and when the money runs out, they can decide together whether to put more money into the construction. You’re probably thinking that the builder won’t ever do business with that carpenter, and neither will anyone else in town. But that’s because the carpenter isn’t an employee—he has competition. This helps explain why certain software developers think #NoEstimates is a fine idea—they don’t perceive that they have competition.

Unfortunately for developers, this is not a sustainable way of operating - as many organizations continue to outsource more and more positions, developers will need to be able to justify their work as a business case. Gordon argues it's worthwhile for developers to learn software estimating best practices and to "...take some time away from learning the newest cool development tool to become viable as a contingent worker." I have to say that I agree.

Blog Post Categories 
Agile Estimation

The Impossible Region, Revisited

In software estimation, some discovered relationships turn out to be true primary principals of software development.

Way back in 1978, Larry Putnam, Sr. discovered that the relationship between project duration and project effort was exponential.1  His equation equated to:

Duration in months = 2.15 times the cube root of effort in manmonths

In his 1981 book, Barry Boehm described the nominal relationship in COCOMO2 as:

Duration in months = 2.5 times the cube root of effort in manmonths

Very similar results.  Is that something specific to the way projects were managed way back then?  Or, is this a true fundamental law of software project management?

Sometimes, it is fun and also informative to revisit pioneering work to see how things have (or have not!) changed over the decades since.  I have used updated benchmarking data to check this staffing relationship and found it to be surprisingly persistent. 

I took project Main Build (Design through Test) effort and Main Build duration from the QSM database, for projects that have competed in the 21st century.

The following graph has duration in months on y axis, and effort in personmonths on x axis.

The exponential regression shows that the “nominal” duration of these projects = 2.0 x cubed root of effort.  

Software Project Impossible Regision

Blog Post Categories 

Can We Increase Project Success by Tracking the Big Picture?

Many of the project managers that I speak with track their software and systems projects at a very detailed level. They use detailed spreadsheets or other tools to track hours and tasks on a daily basis. This is fine, but it's important to manage the big picture so we can avoid assigning detailed tasks to duration and budget goals that are unrealistic.

By "big picture" I mean tracking at the project release level and focusing on a few key actuals: size, duration, effort, reliability, and efficiency. It's important to track these actuals to a reliable plan. These are the measures that can give us the biggest and quickest insight into a project’s potential success or failure. You can see this analysis in the SLIM-Control graphs below, showing the blue plans versus the red actuals.

Software Project Tracking

Once the project is underway and we start tracking the actuals, we can generate new project forecasts based on the actual work delivered, time elapsed, and effort spent. These new forecasts are empirically-based. This will enable us to adapt to change requests, see when the project will finish and how much it will cost. The SLIM-Control graphs below show the blue plans versus the red actuals plus the new forecasts shown in white. SLIM-Control is curve-fitting to the actuals and running empirically-based mathematical models to generate the new forecasts.

Software Project Forecast

Blog Post Categories 
Project Management SLIM-Control

New Article: Avoiding a Doomed Software Project by Checking the Staff Build-Up Plan

Forecasting from Defect Signals

The staff build-up plan defines how many, what kind, and when staff are needed for the entire project. Too many or too few, bringing them on too early or late, employing the wrong mix of expertise or experience - avoiding all these pitfalls with a staff build-up plan will ensure a successfully staffed project. Reviewing proposals for a complex project, such as major software development or support, is a challenging activity. Since labor is the major cost and feasibility determinant for such projects, requiring the submission of a "staff build-up plan" and verifying its realism is crucial in determining whether a proposed project can realistically succeed. In this article for Contract Management Magazine, QSM's Gene Shuman identifies the key components of an effective staff build-up plan.

Read the full article!

Blog Post Categories 
Effort Project Management

QSM Named One of 20 Most Promising Productivity Tools Solution Providers by CIO Review

CIO Review Top Productivity Tools

QSM is pleased to announce we have recently been selected as one of the 20 Most Promising Productivity Tools Solution Providers by CIO Review. In the last few months, CIO Review has analyzed hundreds of productivity tools solution providers and shortlisted the companies that are at the forefront of tackling challenges in the arena. A distinguished panel comprising of CEOs, CIOs and analysts including CIO Review’s editorial board has selected the final list of Productivity Tools Solution Provider of 2015. In their selection process, they looked at the vendor’s capability to fulfill the need for cost-effective and flexible solutions that add value to the productivity tools landscape.

QSM establishes a productivity baseline for its customers’ projects, identifying immediate opportunities for improvement, while providing the ability to measure the return-on-investment (ROI) once those improvements have been implemented. QSM's Software Lifecycle Management (SLIM) tools support better decision making at each stage of the project development lifecycle.

Read the full report.

Blog Post Categories 
Productivity QSM News

The 2016 Software Almanac: A Look Back at 35 Years of Predictive Analytics for Business Intelligence

QSM Software Almanac: 2016 Edition

Let’s face it -- times have changed since the initial principles of predictive analytics and software estimation were established. Today more than ever, we live in a time where there is an incredible dependence on software – it is the cornerstone of almost every business. Risk management and cyber vulnerabilities are now major concerns that weren’t even on the radar decades ago. 

The 2016 version of the QSM Almanac, released earlier this week, takes a truly unique look at the last 35 years of predictive analytics and estimation for business intelligence to determine if its previously developed principles are still applicable today, and, if so, how those principles apply to the current state of software projects. The results are somewhat incredible, and I thought I could share a few of the highlights from this year’s resource as a preface to the full (and free) Almanac, which can be downloaded here:

Blog Post Categories 

Do We Need to Estimate Agile Projects?

We speak to a number of scrum masters, project managers, and CIOs each month. QSM does research on software development projects - all types, including agile and waterfall. We work with a huge database of completed software projects, updated with new industry data on a regular basis. We provide predictive analytics and we study cost, schedule, risk, quality, size, resource demand management, business intelligence, and vendor management.

Within the last couple of years, we have been hearing some agile managers say that there is no need to estimate agile projects. They say that they are managing in smaller increments or sprints and that they already know how much velocity can be achieved. They also say they are constantly “grooming the backlog” so there is no need for a formal estimation model to forecast the amount of work that needs to be done. They are managing at the sprint and task level so they feel like they have everything under control.

The bottom line is that agile projects still need to be estimated to see the big picture: the release estimate. It's essential to know the release cost and effort before the project plan is handed off to the scrum master and before committing to the customer. The negative feedback we hear regarding estimation is somewhat ironic because agile processes actually lend themselves very well to formal estimation since they promote the use of size measures like user stories, story points, and epics. Having good size information is a big part of estimating successfully.

Blog Post Categories 
Agile Estimation

What Are We Missing in the Proposal Process to Win Business?

Major corporations spend millions of dollars each year writing proposals to win software and systems business. They typically have a team of people that spend hours or days in strategy meetings to write what they hope will be a winning bid. Usually these companies are responding to a “Request for Proposal” which is sent out to a number of competitors. It’s almost like a sporting event. Let the games begin! Our team versus theirs. Sometimes jobs are on the line. No one wants to have to lay off people because there is not enough business coming in the door.

As part of this process, a project plan will be created. Oftentimes the team will work out a plan based on some previous experience and the opinions of a number of subject matter experts. Usually the plan will include a detailed spreadsheet with a larger number of tasks and the hours that it will take to complete each task.

The fact is most people don’t have a way to validate whether or not the plan is reliable. They also can’t see what chance they have of achieving their overall promised schedule, quality, and budget goals. They don’t have an easy way to negotiate these proposal decisions internally or with the client.

What's missing? A top-down, empirically-based estimate. Running a top-down estimate allows the proposal team to generate a “big picture” estimate for cost, duration, risk, and quality based on historical data and time tested mathematical models. With SLIM-Estimate (shown below), the team can run an overall project level estimate, and sanity-check their proposal with industry trends to make sure that their numbers are competitive and realistic.

Blog Post Categories 
Demand Management

Webinar Replay: Top Down Resource Demand - The Missing Ingredient in Resource Capacity Planning

If you were unable to attend our recent webinar presented by QSM's Andy Berner, a replay is now available.

As companies try to innovate and at the same time keep software development costs in line, balancing the projects you plan with the resources you need becomes a major challenge. Portfolio and resource management systems, such as CA PPM (formerly known as CA Clarity), have many of the ingredients you need to meet that challenge, but a key ingredient is missing: credible resource demand for the projects you plan to do.

Andy Berner shows how QSM SLIM-Estimate’s Top-Down Resource Demand capabilities provide that missing ingredient. He explains how SLIM-Estimate predicts resource needs for your projects and why it provides the best demand estimates for resource planning. He demonstrates how SLIM-Estimate provides demand information in a way that matches your resource planning process, and how integration with SLIM-Estimate enables the successful use of the resource management capabilities of your portfolio management system.

Watch the replay!