Making visible the ‘So what—?’ factor
Most technically oriented people come to accept key facts without seeing actual evidence of why or how ‘it’ is true. How many of you have seen the astronomical data showing the Earth revolves around the Sun intend of vice-versa? Yet we believe it to be so. Similarly we believe many things without direct evidence because we have little choice but to trust the system which informs us. Do we really know how important training is to produce good software? Is this a matter of opinion or can we come up with hard numbers defining the value of training? Augment’s Software Production Simulation is a way of finding out the answer to this question. How can we use an approximating approach i.e. simulation to confirm our professional opinions?
To get a good answer you must have a good question. And in this case there are many good questions!
- What is good code? Are there standards for each language? Are software quality metrics applications accurate or even useful?
- What is a good programer? What is an expert programmer?
- How do we understand the labor costs of producing good code in terms of the separate operations involved: Specifications, Requirements, Design, Coding, Unit Testing, Integration Testing, Verification & Validation, Acceptance Testing and Validation, Configuration Control ….and of course…Training?
- What if we have a large amount of variation in estimating what good code is from programmer to programmer?
- Do the costs of each programmer sum additively or non-linearly?
- How do we apprentice new programmers without reducing productivity of expert production programmers?
- What happens if we accidentally insert a half-trained programmer into the production stream?
- Even if we some how got accurate costing data how would we use it to show the value of training and change the training or production system?