Do you use any scientific basis to come up with mathematically accurate metrics for determining the performances of the individual members in your team? Is there a system of productivity measurement for software development teams that yeilds meticulous results?

I am reading this book called "Practical Software Measurement" by Bob Hughes, and feeling like someone's hitting my head with a block of wood
all the time.

The advise is poles apart from all the common sense advise people like
Joel (ww.joelonsoftware.com) and myself for my own thinking, have on
software development.

In the book, there's a productivity metrics factor given as the
quotient of the size of the project in SLOC as the divided and the
effort in staff-days as the divisor.

The problem I see with his approach is:

(1) Project size (SLOC): How would you arrive at an SLOC of something
that has not yet begun? You could refer past project experience, like
all books say, but I see fatal flaws in that.

(2) Past projects reflect past environments. They are dependant on
historical factors such as the organization culture, the management of
the project, the skill of the people who were involved in the project,
the language that was chosen for the project, the skill level of the
people with that language, the cyclomatic complexity of the project. A
12,000 SLOC business application would have taken 12 weeks, but a
12,000 SLOC compiler would probably take more than a year and a half to
develop. Or for that matter a real-time or embedded system would take
longer. You cannot apply historical data without factoring for the
changes.

There's something that happens in your head when you are a programmer
for a long time. That thing doesn't happen in the heads of these
authors and management types.

I am confused. Why do these books have things that do not apply in the
real world. Real world is unpredictable, subjective and intuitive.