Sign in to follow this  

Accurately estimating programming cost?

This topic is 1094 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

As an artist and business student who is working towards producing a game, what are reliable methods for me to estimate what my programming needs will cost?

 

A description of what I have in mind is a top down space sim. Think FTL combined with planets crew can land on, explore and build.

 

While I'd appreciate a range for this type of game. I would like to learn how to make future estimations too.

Edited by tonemgub

Share this post


Link to post
Share on other sites


what are reliable methods for me to estimate what my programming needs will cost?

Sorry, but the true question would be

What are reliable methods for me to estimate what my programming needs will cost?

There is no reliable method, at work we estimate hundreds of projects per year and it is incredible hard to do estimation which comes close to the final costs. Some projects runs super, some projects are desasters, if you need to estimate the costs of only a single project, the finacial risks are extremely high.

Share this post


Link to post
Share on other sites

The easiest way to estimate the cost of any project is to break it down into smaller parts and then make an estimate for each part based on your experience with similar tasks in other projects.

 

If you are buying services you should ask the contractors for an estimate and check their references.

Share this post


Link to post
Share on other sites
You need an experienced lead programmer -who is familiar with their team of programmers- to make the estimates ;)

You can't just make estimates in a vacuum.
Said lead will break down the design into a list of technical features, identify the dependencies on other features, make a rough list of tasks, then refine it into more precise tasks. They'll estimate all those tasks with regards to the capabilities of their team.
If they've been given 5 veterans who they've worked with in the past, you're going to get a much lower total estimate than if they've been given 15 university graduates.
Ideally the actual staff will have input on generating these estimates (and then the lead might multiply the staff's numbers by Pi just to be safe).

Sometimes you might have to commit some experienced programmers to the project first, in a "pre-production" phase, so they can experiment on different approaches to solving the design requirements before estimates can even be guessed at...
e.g. If you haven't yet chosen an engine, you'll probably want your core team to evaluate your options and make that decision before going on to create the detailed task list.

Share this post


Link to post
Share on other sites

It has been my experience that the most accurate way to estimate costs is to ask the lead engineer for an estimate, then take that, add 3, and move it to the next larger unit (eg. "it'll take three days" means 3 days + 3 extra moved from days to weeks, so your accurate estimate is 6 weeks).  This revised estimate includes all the things the engineer doesn't do, like QA and testing and packaging and translations and closing bugs properly.

 

Understand that if you give that estimate to management they will reduce it by at least half, so you will have 3 weeks to implement it.  Sales will then decide to launch it one week into your development cycle.  By the time all the bug fixing and overtime has been completed, it will have taken the original 6 weeks.  The magical thinking of tweaking numbers in a spreadsheet doesn't alter the hard facts of reality.

 

Really, it's all a game.

Share this post


Link to post
Share on other sites

An alternate way of estimating costs is to compare it to rough costs and to find comparable titles. You say you want to start with FTL - Faster Than Light, plus a lot of features.

 

FTL started as four people with multiple months in their basements (we'll simplify to 1.5 FTE) followed by $200,000 kickstarter money in Shanghai, China. Combined with everything it took them over a half year, if I'm reading that correctly. In the US you need to estimate 10,000 per man-month.  I'm not sure what that will buy you in China, but Google suggests it is about 20% cheaper.  200000/8000=25 man months. It took four people about six months, so that sounds about right. 

 

Then you are asking to roughly double the size in new features, so we'll double that to 90 man months. Plus since your project is larger there will be more experimentation and more administrative costs, making it about 120 man months.  

 

From my own experience in smaller games, that number sounds about right for a FTL style game. You can look up various similarly-sized games and see if that feels about the same scale to you.

 

The game would have a very simplistic feel to it, and may or may not be fun (that is up to your design and implementation). 

 

 

You want it in the USA, so the 120 man months is around 1.2 million dollars for your simple little game, if you are paying for it.

 

If that means the development team is you and your nine other close friends, all of you willing to work about 2000 hours on it as a full time job, it would take about a year.  

Edited by frob

Share this post


Link to post
Share on other sites

A friend of mine who's a project manager for Microsoft has always maintained there isn't a good guide to how long a project will take. They plan for schedule A, hope for schedule B, and get schedule C. Sometimes those schedules match up, but more often than not they don't. If you somehow come up with a really good way to predict that, then you can make major dollars at any software company. 

Edited by cadjunkie

Share this post


Link to post
Share on other sites

It is very hard to reliably estimate programming costs when one has no reliable means to identify scope.

In other words, the description of what you're trying to achieve is infinitely too simple, and leaves a lot to the interpretation.

While there are good methods to evaluate, you also need to have either:

 

a - A fairly good understanding of your project's scope (features, mvp definition, etc.) Hopefully a GDD, wireframes, asset lists, etc.

 

or

 

b - A relatively good understanding of your direction, with the knowledge that, through iterating on your game core, budgeting will keep evolving and cannot be measured until the project is actually done.

 

 

All projects I've been involved with used either of the above, and generally a lot more of B than A.

Share this post


Link to post
Share on other sites

Software estimation is a skill and like all skills the more you use it the better you get at it.  I would recommend reading Software Estimation: Demystifying the Black Art as it provides several different ways to approach estimating.  Also I would start estimating every task and keeping track of every actual time spent.  This will provide you will valuable practical experience.  When I started estimating software for contract work I broke down the application into smaller pieces and created estimates for those pieces, tallied up all that time and doubled it. smile.png As the project went on I realized some tasks took less than double and some took more than double.  Over the long haul I got better at it.

 

You might also want to reach out to the creator of Limit Theory. This was a Kickstarter that I supported in Dec 2012, which had an expected delivery date of Jan 2014.  He's still working on it and has been providing regular updates.  He estimated a year and it's going on 2.  Remember that games that a long time.

Share this post


Link to post
Share on other sites

This topic is 1094 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this