From a practical point of view: Many people live without it, but it is helpful and finds bugs quite cheaply. In my environment, static analysis is quite expensive, probably 2 to 3 times slower than build with optimisations turned in which is probably 2 to 3 times slower than build without optimisations. So I do it not on every build, that would just slow me down, and 99% of the time find nothing, but say a week before a release is a good time. If you are on top of it, you will have only a few problems, and not much work to fix these problems. (In addition, the static analyser wants to analyse _everything_ so it is a complete rebuild every time).