There’s a saying in software development: the first ninety percent of development takes ninety percent of the time, and the last ten percent takes the other ninety percent. This isn’t meant to be a scare tactic, causing project managers to throw up their hands in exasperation, but certainly a problem we need to understand. Jeff Atwood, from Coding Horror, tries to explain:
This software developer does not have a detailed list of all the things he needs to do. Which means, despite adamantly claiming that he is 99 percent done — he has no idea how long development will take! There’s simply no factual basis for any of his schedule claims.
What this means, is that you can’t accurately estimate a project without knowing everything that needs to be done. In other words, until you know what 100% complete means, you can’t say how close 90% or even 99% is. For a small website project there is a long list of little things, each taking only a few minutes, that can add up to many hours in total. They have to be done, but they are usually put off for the last day of development, or even worse, the dreaded “launch day”. The privacy policy is the perfect example of this.
Does the client have an existing privacy policy? If so then you need to schedule at least 10-20 minutes to convert it to the new site layout. What if they don’t? Then you may need to spend 10 minutes consulting with the client and up to a week for them to get their legal team to approve the new content. Will it contain links and headers? Will there be bold and italic font? When all is said and done, the page that started as an afterthought, can add an extra 2-4 hours and 5 business days to the project.
Now think of all the other little things that need to be done for a website launch.
- Do you have a user friendly sitemap and a robot friendly sitemap.xml?
- What about form validation?
- Are all the social media links hooked up to the right places?
- Do they need to integrate their Twitter feed via the API?
- Has it been tested on Mac & PC? Don’t forget the client uses IE6.
These are all the little things that probably don’t get mentioned during the pitch for an awesome new design featuring a community forum. Unfortunately, if they’re not included in the quote, the client may assume they are so minuscule as to not require mention. While this may be true on their own, combined they can cost hundreds of dollars and you’ll be the one footing the bill for that assumption. You can give yourself a safety net by including “15 additional pages” in your estimate, but that doesn’t paint an accurate picture of the work either. In fact, it gives the client even more leeway to request expensive features on those “additional” pages.
If the developers don’t know about all the little things, they can’t accurately estimate a project in the first place. Trying to give an exact hour estimate on how long an entire project will take, without knowing all the work required, is kind of like asking a contractor how long it takes to build a house without showing them any plans or drawings.
Let’s return to our original quote, which says the last 10% of any work is takes just as much work as the previous 90%. Why is that? Some would argue that the first 90% is spent making features “work” and the last 10% is used to perfect them. However I would argue that the last 10% is actually the 50% or more of the “features” that you forgot to estimate for.
With Evenflow, you have a permanent list of all the little things that need to be done for any project type. The privacy policy may only take 30 minutes on average, but that is 30 minutes you should be billing for. In Evenflow, you can choose to show or hide the exact time and prices for all those little things, so the choice is yours whether the client knows how all those things add up. It can certainly help explain your price for the kind of client who doesn’t understand how much work is actually involved with making a website.
Pingback: Your Estimates are Wrong and It’s Costing You - Evenflow