Software Estimation Best Practices

Eliminating the 18-Hour Work Day in Software Development

Software Development "Death March"

This post was originally published on Linkedin. Join the QSM Linkedin Group and Company Page to stay up-to-date with more content like this.

It may seem absurd to think about working an 18-hour day, but it happens all the time in the software development community. If managers don’t accurately estimate project schedules based on a clearly defined scope of work, managers and their development teams may find themselves working long days to deliver on promised deadlines and deliverables.

Being overworked in an environment where a project is running over schedule can also lead to the delivery of a defective or flawed product, which is bad for both the development organization and the business unit for which the product is being developed. One article that I read recently states that time pressures cause employees to cut corners and that the 18-hour workday does not allow for forward or creative thinking. This can be disastrous to an organization that values both the quality of work and the out-of-the-box thinking of its development team.

In QSM’s database of more than 10,000 completed software projects, we found that approximately 31% of software projects were delivered late. This means that a lot of staffers are potentially being subjected to long hours to get their jobs completed on time – and many are still coming up short.

Here are some tips to help project managers start off on the right foot so they can keep projects on schedule and eliminate the 18-hour workday.  

1. Push Back on Forced Schedules

This can be a tough one, as this request often comes from a higher-up. Someone throws out a speculative date to complete a project, and it just sticks. Perhaps that completion date is driven by budgets, personal schedules, or simple ambition. But it’s also a major reason for projects not being completed on time. Not putting more thought into a project estimate can have an incredibly negative trickle-down effect that puts everyone in a tight spot. 

If a schedule seems unrealistic, managers should not just speculate. Instead, they should complete their due diligence and utilize data and analysis to help lead a conversation and set expectations for what can be reasonably accomplished in a set amount of time.  

2. Estimate Early and Often

Continuous estimation is one of the best ways for project managers to ensure they’ve set realistic schedules. Continuous estimation occurs throughout each phase of a project. It includes a pre-project feasibility analysis, ongoing estimation during development, and even a final estimation when the project is complete. This discipline ensures that the project stays on budget and on schedule – two of the hallmarks of a successful project. There are tools available to help with this process, and managers should familiarize themselves with all of their options.

Managers must remember that the more accurate data they use to estimate, the more they will be able to reduce risk, maximize efficiency, and set feasible schedules to reduce project failure rates within their portfolios.  

Which leads me to my last tip: 

3. Be Realistic, Not Optimistic

There’s definitely a place in life for optimism, but when it comes to making sure software projects are successful, realism is key. The ability to realistically predict schedules comes from accurate data. Scope, team size, and project size data all contribute to setting an attainable schedule. Quantifying these factors by utilizing benchmark data from past completed software projects is incredibly valuable for setting realistic project goals and avoiding overworking or overstaffing, which can negatively impact quality and result in job dissatisfaction. 

Do you have any questions or examples of overrun projects that lead to long workdays? I’d love to hear from you and to discuss how estimation can help reduce or even eliminate project overruns.

Blog Post Categories 
Schedule Estimation