473,383 Members | 1,788 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,383 software developers and data experts.

How to estimate software development cost and charges?

Me and my friend set up a software company recently,
and my first project is to develop a software for my friend's company,
the project was estimated to be completed in 1 month,
but I took 3 months to complete the project.
After reviewed my project development progress,
I realize that root cause is due to I didn't analyze the project in detail,
so I only estimate total man hour required base on
project main features instead of detail functions.

Few days ago, he gave me another project, and this time I wanted to
analyze the project in detail before I start to estimate total man hour required,
but when I look at the requirement specification, I think it will take me
2 to 3 weeks just to analyze the project. I can charge the analysis fee
because my friend is the shareholder.

If I get a project from a customer, and if the project may take
me 2 to 3 weeks to analyze the project in detail, how can I charge my
customer for the detail analysis?

In current software development market, software company can not start project
before customer agree on the estimated man hour. If I do not take 3 weeks to
analyze a project in detail, I may end up with losing money due to under
estimate the project. If I take 3 weeks to analyze a project in detail,
but the customer think the project is too expensive,
and do not want to proceed, my time will be wasted.
Sep 9 '14 #1
3 2376
Draw message sequencing charts, identify components, estimate number of functions , estimate line of code, put 20% buffer to your estimate.
Sep 10 '14 #2
Luuk
1,047 Expert 1GB
Try to get some project which you can invoice after the project is finished. Add the 'no-cure, no-pay' thing, some customers like this because if you do not deliver, they are not charged. (Make sure to make a detailed agreement on what is to be delivered!)

Still do make an estimate on the time needed to complete the project. In the end you can make a 'good' guess on how much your estimate differs from the real world, in the example above there was a factor 3 (3 months in stead of 1 month)

Based on this factor you could make an estimate, and put a factor 3 over it. This factor will become more precise as you get more experience.
Sep 12 '14 #3
I build a nearly complete data model, including all tables and columns and then multiply the number of columns by 4 hours. Make that 3 hours if I am using a productivity enhancer like MVC 5 or Ruby on Rails. Make that 5 to 8 hours if there are unusual conditions which will add to the time. For example: COTS software will take longer. High bureaucracy environments will take longer. Detailed and functional testing harness development will take longer. Unfamiliar technologies will take longer. Add an hour for each unusual condition.

Of course you can charge your customer for data model construction because that takes some time and it is part of the development job.
Aug 12 '16 #4

Sign in to post your reply or Sign up for a free account.

Similar topics

2
by: sympatico | last post by:
I am looking for a good document of spread sheet that can help me better estimate the amount of time and money a software development project should take. I am using .NET Framework I have been...
2
by: alacmathew | last post by:
Hi everybody I am a project manager with a mid level software development company Some days back I came across a posting in a forum where a person otherwise a competent finance professional wanted to...
0
by: Faith0G | last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
0
by: ryjfgjl | last post by:
In our work, we often need to import Excel data into databases (such as MySQL, SQL Server, Oracle) for data analysis and processing. Usually, we use database tools like Navicat or the Excel import...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.