Slashdot Mirror


Estimating Software Development Costs?

Stu Lalison asks: "I'm an MBA student (but I'm not evil, I promise!) and am working on a business plan that involves having some custom software written for a handheld computer. I've done some research into estimating the costs involved in software production, but when estimating the time involved in writing the software, it usually says 'judge on past projects.' I'm not a programmer, so I don't have any past projects to judge on. I'm wondering if the Slashdot community can give me some ballpark figures on how long it takes a professional programmer to code different parts of a program. I've identified 3 needs of my application: a front-end user interface, a database w/ search function (of about 10 megabytes of data), and integration of both of these into a (currently existing) commercial mapping application. It seems like these aren't huge tasks, but getting (even a rough) handle on their actual complexity will help me greatly. Also, how much development time would be required to port an application like this from, say, a Palm OS device to a 3G handset? Thanks in advance!"

2 of 53 comments (clear)

  1. Bad Voodoo by Kiaser+Zohsay · · Score: 3, Interesting

    Software Estimation is fscking black art. If all you're doing is wiring together pre-built components for a database browser, then function points or some of the other metrics can get you pretty close. But any time you are solving problems that have not been solved before, like on a new platform (handheld), then the software isn't done until the problems are solved. And you may not know for sure that the problems are solved until the second or third release.

    As a programmer, I have long been troubled by the fact that the primary guages for success or failure on software projects are the schedule and the budget, the two items that programmers have the least amount of influence over.

    --
    I am not your blowing wind, I am the lightning.
  2. Re:Rough Estimation by eric2hill · · Score: 3, Interesting

    My point was NOT to simply guess on the time, but to give an example of how you take a project estimate and double it.

    You're right that the poster doesn't supply NEARLY enough information, but on the other hand, I think that 7 months is about right given the sketchy details provided.

    I'm currently working on a project to build a customer relationship database that is replicated to salespeoples' computers. The spec was for 6 weeks of development time, and I'm going to have it done inside of 5 weeks.

    Good software doesn't have to take years to build, or piles of money. You just need to choose the right tools for the job, plan a good specification about what the application needs to do, and IMPLEMENT the frigging thing. A lot of people now-a-days try to over-architect the app before any code gets written. I believe that properly designed code can be refactored as it's being built, getting the product out the door quickly, and implementing new (changed/additional/etc) features in later versions.

    --
    LOAD "SIG",8,1
    LOADING...
    READY.
    RUN