Revisiting The Facts and Fallacies of Software Engineering

read some of this on the AW website a couple of years ago, good stuff. But how best to get your manager to read it?

The silver bullet has born. Having good processes is the answer to everything. If you have bad people, you can always get better ones with a good hiring process.

  1. Its about the quality of all the people who participate in the software development, not only programmers. And even if you have great programmers, you are in deep trouble, if you don’t have good processes.
  2. The worst programmers wouldn’t be that bad, if you had better processes that enabled the professional and productive approach in software development.
  3. It would be easier to add more people to a late project, if you had good development processes.
  4. You need real processes. Hype is not enough.
  5. You need to invest in a process before it starts to create profit.
  6. Software developers talk a lot about processes, but seldom use them.
  7. One of the two most common causes of runaway projects is poor estimation process.
  8. Software estimation usually occurs at the wrong time, because you don’t have a proper process that says when you should estimate and when not.
  9. Software estimation is usually done by the wrong people, because your process is not sufficiently advanced.
  10. It is not surprising that software processes are bad. You should enhance them.
  11. There is a disconnect between software management and their programmers, because you have good managers and good programmers, but a bad process that doesn’t connect the two.
  12. The answer to a feasability study is almost always “yes”, because you are positive instead of using objective processes.
  13. Reuse-in-the-small is a solved problem, but you should have a process for it in order to help solve the reuse-in-the large.
  14. Reuse-in-the-large remains a mostly unsolved problem, because you only do reuse-in-the-small and mostly without a process.

And so on. Surely people are important, because without them you can’t do anything - except with automated processes. But processes are the core of everything. For example even a good programmer has a living process: 1) Inhale 2) Exhale 3) Repeat until death. If you don’t breath properly but only in small amounts, your brains don’t get enough oxygen. You cannot be good without exercise processes.

“Yes, you HAVE pasted other people’s thoughts on all of the subjects covered in this wonderful book. And then linked to your old posts about the exact same things over and over again.”

Well, that’s how people make money, by re-packaging/re-thinking/re-stating the products/thoughts/statements of others. Everyone is free to do the same, don’t get upset because someone else is successful at it and you are not!

Points 21 and 22 seem to be missing from the list of “55 facts”…