Here is my formula:
Man-hours x cost-of-labor x overhead x profit-margin.
Ignoring the local (and organizational) variability of the latter three
factors, what you're really asking about is how to estimate man hours
for a project.
Unfortunately for you, your question focusing on platforms, tools, and
languages misses the point entirely. While those things can affect a
programmers productivity, a far greater factor is the actual programmer,
with the best programmers being as much as 10x more productive than an
average one (and an average one being 2-3x more productive than a poor
one).
Find the best programmers you can, and *they* will tell you what
platforms, tools, and languages they are going to use. And don't argue
with them (unless they tell you they want to experiment with something
new that they don't have any experience with). The best programmers will
also typically be able to give you reasonably good estimates.
Cheers,
- Michael
Man-hours is the amount of time it takes to do the work. So, if you
think a project will take you three work-days to complete, then you are
looking at 24 man-hours for your estimate.
> cost of labor = 1$ per hour
Wow, that's pretty low for software development, even in India.
> here what is overhead and profit margin and how to get
> this values..........
Overhead is all of your other costs on top of labor: office rent,
electricity, equipment, professional services (accounting, legal),
taxes, internet access, cost of sales, and so on:
http://en.wikipedia.org/wiki/Overhead_(business)
There is probably some rule of thumb for your jurisdiction (example:
25%), but your overhead may be much lower since you are just starting
out. Ask a local business person for advice.
Profit margin is the percentage of money you expect to be left over
after *all* costs have been paid for:
http://en.wikipedia.org/wiki/Profit_margin
All of these (cost-of-labor, overhead, and profits) depend on your local
business conditions and/or customs, and don't have much to do with
programming per-se.
- Michael
I have no idea what your local business conditions are. Talk to your
colleagues, check out your competitors, survey your local job boards,
etc.
By the way, the formula I gave is the *simple* one, in that it assumes a
single developer. Things get a bit more complicated for multi-person
teams.
Good luck!
- Michael