Economist article on Software Tools and Quality

I subscribe to article alerts on Software topics from The Economist[2]. Normally, I use the alerts to watch out for stuff to read on the weekend when I get the hard copy on Friday. I'm pretty interested in using tools to improve the quality of my work and I was pretty motivated to read Software that makes software better[3]. The Economist is a great magazine for capturing the essence of a particular field from the perspective of an educated outsider. True to form they have broadened my horizons even in a field in which I have considerable expertise.

Some of the key points that I have gleaned from the article include:

Computer science is really a social science. Finally, someone said it. Communication and teamwork is very important. They didn't teach this to me in school when I was studying compsci before the Internet age. I had to learn this at the school of hard knocks.

As a developer of commercial software in a global development environment I understand the desire to have an integrated approach to all aspects of the software development process. It's hard to model the development processes and work flow of an organization in a single tool but there are efforts to do this. IBM Jazz[4] is one project which is attempting to do this.

Dynamic analysis is the activities that most QA organizations focus on. Static analysis is usually the activity of code reviews. Static analysis tools (including CheckStyle[5]) can automate a lot of the more tedious aspects of code reviews so that developer-to-developer code reviews can focus more on design and business logic principles.

FindBugs[6] is a static analysis tool seems to be mentioned in a lot of places. and is worth evaluating.

In the past I have used the Eclipse TPTP for static analysis but it's really hard to find information on the project site on how to do this. It may be that Eclipse could be trying to bury TPTP as a static analysis tool since there are no references to a series of articles on TPTP and static analysis[7] in the resources section[8].