Wednesday, February 6, 2008

Person month calculations on an opensource project

I was browsing the web and came upon the botlist project on archives the source of various projects and adds the source to their search engine. It also collects interesting project statistics on a particular project. Here are the botlist numbers:

Development Cost
Lines of code: 27,137
Person months (PM): 27.14
Labor Cost/Month: $5000

Here is a larger project (jboss)
Development Cost
LOC: 1,695,805
Lines of code: 1,695,805
Person months (PM): 1695.81
Labor Cost/Month: $5000

Here is a question; what does it take to develop a useful opensource (or possibly commercial) project. I am going to use some arbitrary numbers for the sake of argument. And yes, number of lines of code is a bad metric to use, but there is a big difference between 10 lines of code, 100,000 lines of code and a million lines of code.

I want to create a project which will end up with 200,000 lines of code. It is a generic widget server. Developed in java, python, or C#.

According to

200,000 / 1000 lines of code = 200 person months.

It would take one person to develop this project over the course of 200 months. You get the interest of the community, so now you have 10 developers. So, it will take 20 months together. One year and 8 months to create this project. And it will cost $1,000,000 to pay those developers. $100,000 per developer, about $83,000 dollars a year.

That is all.

No comments: