[evla-sw-discuss] Re: Software sizes

Ron Heald rheald at aoc.nrao.edu
Mon Nov 4 12:22:39 EST 2002


Just for another comparison I've attached a line count done for the VLT
about a year ago.  These guys are definitely "heavyweights" and
demonstrate what can be done given enough resources.

The interesting number is 2.4 million lines (or about 160 FTE's) for the
"common software", telescope and instrument control.

Ron

======================================================================

Subject: Re: VLT software metrics
   Date: Mon, 10 Sep 2001 19:04:37 +0200
   From: Michele Zamparelli <mzampare at eso.org>
 
included you find an estimate of the lines of code for the VLT project.
The measure does not include comment or empty lines.

The tool I used is called sloccount, publicly available.

The list is separated between "VLT" part:
- VLT common software
- Telescope Control System
- Instrument software 

and the Dataflow  ("DMD") part:
- Exposure Time calculators 
- Phase 1 and phase 2 proposal handling
- On Line reduction pipeline
- Midas reduction system 
- Archival system

Both contain probably much more than that, but I do not know all the
details.

For the VLT, I have an estimate of 250 man-year.

================================================================

VLT 
---
3SLOC    Directory       SLOC-by-Language (Sorted)
364569  TCS_SOURCE     
ansic=230759,cpp=56685,sh=33109,tcl=30483,fortran=10358,
                        csh=2826,awk=200,yacc=64,lex=46,asm=39
285633  CCS            
ansic=175036,cpp=80179,tcl=23080,sh=5673,java=1616,
                        csh=49
192027  fors           
ansic=101562,cpp=47039,tcl=24517,sh=16715,csh=2178,
                        awk=16
167487  isaac           ansic=83243,tcl=41683,cpp=34508,sh=7998,csh=55
157176  DMD             ansic=113925,cpp=43251
140954  UVESSource      tcl=50322,cpp=42159,ansic=33773,sh=9963,csh=4737
119502  ICB             ansic=93854,tcl=18095,cpp=7185,sh=337,csh=31
116498  SLX             ansic=83758,cpp=27362,yacc=3858,tcl=837,lex=512,
                        sh=132,csh=39
109446  VINCISource     cpp=45647,ansic=37813,tcl=20309,sh=5658,csh=19
106504  CCD             ansic=69850,asm=24755,tcl=5600,sh=3288,cpp=1667,
                        csh=1344
101635  FCD             ansic=42495,cpp=33660,tcl=17470,sh=6901,csh=1109
98405   test_camera     cpp=49073,ansic=25061,tcl=16222,sh=6776,csh=1273
85273   IRD             ansic=52521,cpp=18723,tcl=12661,sh=1368
69766   LCC             ansic=68211,tcl=1362,sh=193
49641   Kit            
sh=17528,lisp=12148,ansic=10204,cpp=5368,tcl=2926,
                        java=806,yacc=261,lex=195,csh=112,sed=93
41803   examples        cpp=26436,ansic=10909,tcl=2363,sh=1325,csh=770
35779   HOS             tcl=15914,ansic=11214,sh=5083,cpp=3568
34954   Motor           ansic=23279,tcl=7383,sh=4292
33116   TCS             cpp=28404,ansic=2637,sh=1120,tcl=763,csh=192
29646   Drivers         ansic=23391,tcl=4881,sh=905,cpp=469
24425   OSB             cpp=22946,ansic=1048,tcl=430,sh=1
21627   INS             tcl=12916,ansic=6801,cpp=1366,sh=371,csh=173
14314   PANEL           tcl=14239,sh=75
7279    Qserver         ansic=7279
0       TPOINT          (none)
0       DICB            (none)


ansic:      1308623 (54.36%)
cpp:         575695 (23.91%)
tcl:         324456 (13.48%)
sh:          128811 (5.35%)
asm:          24794 (1.03%)
csh:          14907 (0.62%)
lisp:         12148 (0.50%)
fortran:      10358 (0.43%)
yacc:          4183 (0.17%)
java:          2422 (0.10%)
lex:            753 (0.03%)
awk:            216 (0.01%)
sed:             93 (0.00%)

Total Physical Source Lines of Code (SLOC)                   = 2407459
generated using 'SLOCCount' by David A. Wheeler.


DMD
---
SLOC    Directory       SLOC-by-Language (Sorted)
548039  midas01SEPpl1.3 ansic=374095,fortran=168699,sh=5243,awk=2
254103  skycat-2.7      ansic=168936,tcl=41927,cpp=40804,sh=2337,csh=76,
                        lisp=23
98740   dfsint          sh=98239,cpp=468,ansic=26,perl=7
89165   etc             cpp=70891,java=16463,perl=1416,csh=217,sh=178
80265   ohs            
java=73934,python=3293,sh=2177,tcl=720,ansic=114,
                        awk=27
65692   isaac-3.0       ansic=65439,python=143,sh=105,csh=5
57345   phrs-69.1       tcl=56772,sh=573
51451   fors2-1.8.1     ansic=46466,sh=4304,fortran=681
22321   quality         cpp=19107,ansic=2485,sh=729
17654   gasgano         java=17603,sh=51
15900   gui             tcl=13631,sh=2061,ansic=208
14310   uves-1.2.0      fortran=7285,ansic=6249,sh=776
11557   dfsCore         cpp=8719,ansic=2838
10318   ftu             ansic=5917,cpp=4157,python=244
10238   olas            cpp=8598,sh=864,perl=776
7419    mcdgui          tcl=6357,cpp=990,sh=72
6635    pipe            cpp=6520,sh=115
5409    cdpacker        python=5409
5216    util            cpp=5216
4279    arcOro          cpp=4279
3252    dfsBase         cpp=3252
2942    dfslog          java=2929,sh=13
2126    crypt           ansic=2126
2036    log             cpp=1472,ansic=497,sh=67
1373    scripts         sh=1371,csh=2
1112    admin           sh=690,csh=422
783     qucutil         java=783
312     arcUtil         java=298,sh=14
226     boot            sh=226


ansic:       675396 (48.58%)
fortran:     176665 (12.71%)
cpp:         174473 (12.55%)
sh:          120205 (8.65%)
tcl:         119407 (8.59%)
java:        112010 (8.06%)
python:        9089 (0.65%)
perl:          2199 (0.16%)
csh:            722 (0.05%)
awk:             29 (0.00%)
lisp:            23 (0.00%)

Total Physical Source Lines of Code (SLOC)                   = 1390218
generated using 'SLOCCount' by David A. Wheeler.



More information about the evla-sw-discuss mailing list