Continuing on my stats-a-holism, here is David A. Wheeler's 'sloccount'
run on top of harmony classlib trunk of today

----------------------------------------------------------------------

SLOC    Directory       SLOC-by-Language (Sorted)
942739  modules         java=867844,ansic=61533,cpp=12807,asm=555
4633    support         java=4629,perl=4
12      depends         sh=12

Totals grouped by language (dominant language first):
java:        872473 (92.09%)
ansic:        61533 (6.50%)
cpp:          12807 (1.35%)
asm:            555 (0.06%)
sh:              12 (0.00%)
perl:             4 (0.00%)

Total Physical Source Lines of Code (SLOC)                = 947,384
Development Effort Estimate, Person-Years (Person-Months) = 266.92
(3,203.05)
 (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05))
Schedule Estimate, Years (Months)                         = 4.48 (53.71)
 (Basic COCOMO model, Months = 2.5 * (person-months**0.38))
Estimated Average Number of Developers (Effort/Schedule)  = 59.64
Total Estimated Cost to Develop                           = $ 36,057,364
 (average salary = $56,286/year, overhead = 2.40).

----------------------------------------------------------------------

Then I ran it against the DRLVM trunk of today:

----------------------------------------------------------------------

SLOC    Directory       SLOC-by-Language (Sorted)
281088  vm              cpp=223849,java=38033,ansic=18140,asm=1066
1093    build           ansic=601,java=458,sh=34
401     src_test        java=401

Totals grouped by language (dominant language first):
cpp:         223849 (79.22%)
java:         38892 (13.76%)
ansic:        18741 (6.63%)
asm:           1066 (0.38%)
sh:              34 (0.01%)

Total Physical Source Lines of Code (SLOC)                = 282,582
Development Effort Estimate, Person-Years (Person-Months) = 74.94 (899.32)
 (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05))
Schedule Estimate, Years (Months)                         = 2.76 (33.15)
 (Basic COCOMO model, Months = 2.5 * (person-months**0.38))
Estimated Average Number of Developers (Effort/Schedule)  = 27.13
Total Estimated Cost to Develop                           = $ 10,123,795
 (average salary = $56,286/year, overhead = 2.40).

-----------------------------------------------------------------------

So, according to Wheeler's metric, Harmony would have taken 46 million
dollars to build.

NOTE: of course I'm perfectly aware that this is an incredibly bogus
metric. I'm also aware that there are days that I write several hundreds
(if not thousands) of lines of code and days that I write one....
(especially when it's a nasty bug to fix).

So, while the dollarized metrics are to be taken with a grain of salt
(or tongue-in-cheek if you wish), the SLOC breakdowns by language are
actually useful.

BTW, if you have better suggestions on what folders of our svn repo I
should run this tool against, just say so.

-- 
Stefano.

Reply via email to