In the U.S., gasoline is priced per-gallon, with 9/10 of a cent tacked on; $2.789, $3.049, etc. It’s one of the few retail items in which prices include a fraction of a cent. Ever wonder why?
It turns out, it’s a holdover from the original 1930s’ federal gasoline tax when gasoline prices were well under 25 cents per gallon. Retailers added the tax to the price, and it became the price plus 9/10 of a cent. The federal gasoline tax (which was supposed to expire in 1934 but is still alive) is now 18.4 cents per gallon, but retailers continue to keep the 9/10 cent in the price.
With that little pricing mystery solved, let’s tackle a bigger one: How much does custom software development cost? Or stated another way: How much should custom software development cost?
Let’s examine the traditional pricing model for custom software development.
The Traditional Model: Time and Materials
Most custom software development contracts have been (and still are) “time and materials” (T&M). Clients are charged per-hour for every resource person (developer, tester, project manager, and so on) working on the project, plus “materials” such as travel expenses.
Some shops charge a different rate for each resource. Some charge a “blended rate,” which is a kind of average based on the expected contributions of each resource.
In theory, a T&M arrangement means the price paid for the software has a direct relationship with its actual cost. The shop determines an hourly rate for each resource based on the resource’s salary, benefits and taxes, with overhead and profit added. The worker-hours it takes to develop and deliver the software determines the final cost.
The T&M model has some flaws:
- Under the T&M model, the provider has little incentive to stick to the estimated timeline. The longer the project takes, the more money made.
- If the client runs out of budget before the project ends, they’re caught in a squeeze play: They either cough up additional money or are stuck with incomplete or even dysfunctional software.
- Knowing this, less-scrupulous providers are incentivized to lowball the estimate in order to win the contract, knowing full well it will take longer and cost more than the estimate. The client will most likely come up with the money somehow rather than write off the whole project.
The risks are not all on the client, though. Less-than-scrupulous providers can ride this model for a time, but eventually, it will catch up with them. Few clients will put up with this behavior, and some will go as far as terminating the contract and handing the project over to someone else. It won’t take too many of these unhappy customers to give the shop a reputation for lowball estimates, broken promises, and a focus on revenues over-delivering quality software.
A Better Way: Fixed-Price Contracts
The fixed-price contract is a better model for pricing custom software. Under this model, the provider analyzes the project and proposes an overall fixed price for the work. No matter how many worker-hours the project takes, the client pays one price. To further incentivize the shop to deliver by a specific date, the contract might include a penalty clause for late delivery and a bonus clause for finishing the project early.
The fixed-price model has numerous advantages, for both the client and the development shop:
- The client knows in advance exactly how much the project will cost; there are no nasty surprises.
- The provider is incentivized to deliver the promised software on time, thereby freeing up those resources for other projects.
It’s a win-win for everyone.
But wait, doesn’t that mean all the risk is on the software shop? What if the estimate turns out to be way too low?
- First, all the risk should be on the provider. The customer shouldn’t be penalized for the developer’s inability to produce accurate estimates and demonstrate effective project management.
- Second, any fixed-price contract should have some contingency built-in. Every project has unexpected obstacles, so experienced providers pad the estimate a bit so they don’t end up taking a loss on the project.
- And: if you’re that bad at estimating a project, maybe you shouldn’t be in the custom software development business.
How AndPlus Does It
AndPlus can offer fixed-price project proposals in large part because we’ve been in this business a long time. We know how to produce accurate project estimates. We’ve seen it all and know what things can go wrong for a given type of project, so we can deliver an accurate estimate.
We use a tried-and-true development methodology that time-boxes most projects into 20-week cycles. If a project can’t be completed in that time, then we divide it into multiple projects, delivering the minimum viable product during the first project and adding features and functionality in subsequent projects.
That way, even if clients pull the plug after the first cycle, they still get working software and don’t have to shell out for unexpected additional work.
Our advice to potential clients weighing fixed-price vs. T&M proposals is: Take the fixed-price proposal, even if it isn’t from AndPlus. The bid may be higher than the T&M proposal, but the reduced risk is worth the extra expense. The T&M project stands a good chance of costing more than the fixed-price offer, anyway.
There shouldn’t be any mystery in custom software development pricing. With fixed-price contracts, the mystery is solved.