COCOMO - appropriate for languages like Python?

James J. Besemer jb at cascade-sys.com
Thu Jul 11 01:11:52 EDT 2002


"Delaney, Timothy" wrote:

> How does it deal with negative LOC? There are many cases where I consider
> myself much more productive if I can *reduce* the code base.

I don't know.

But of course I'll hazard a guess.  ;o)

I imagine the cases where adding a feature or fixing a bug actually makes the
overall code smaller are infrequent enough to be ignored.  That is, in the
overall scope of the project, the code grows by G and shrinks by S and S is
much smaller than G.  Again, the models apply (if at all) to projects overall
and not to individual programmer tasks.

Another angle here: I too can think of cases where I make the code "better"
by making it smaller.  E.g., replacing some hairy decision tree with a table
driven approach.  Or some predecessor's gunked up spaghetti code with
something clean and readable.  Often I am lucky in that I get paid to perform
subtle optimizations like this that don't have a direct bearing on the
product's overall functionality.  Question is: is my productivity in this
case positive or negative?  If I "improve" something that does not materially
affect the user, it could be argued that this is in fact negative
productivity.  After all, the client is paying something for nothing.  At
best, if you argue that the improved code reduces long-term maint costs, then
the client is trading off a direct up-front cost for a long term benefit of
dubious value.

There are all sorts of different ways to view "programmer productivity."

Regards

--jb

p.s. Didja get that winreg stuff to work?

--
James J. Besemer  503-280-0838 voice
http://cascade-sys.com  503-280-0375 fax
mailto:jb at cascade-sys.com







More information about the Python-list mailing list