Cristopher Stauffer wrote:I think it is both valuable and possible within a well designed system.
Let's say for example that there is a QA process at a factory, one in which widgets that "pass" testing
Sorry if this sounds pedantic, but what you're describing is not QA (which stands for Quality
Assurance) but QC (Quality Control). Indeed, QA came about specifically because of the (relative) failure of QC-based systems; and several programming methodologies (
XP and
TDD spring immediately to mind, but there are many others) are specifically designed to mitigate the write→test→deploy cycle.
What you want to do is
prevent errors, not filter them out; and an execution-path checker says to me that you've resigned yourself to the fact that you've failed in that goal.
Which is not to say that refactoring tools aren't useful, but I've not really found a need for anything more than the ones which come with most IDEs.
Winston