4 ms·
>all features and edge casss should have a test. Yeah, but the interesting problem is what happens next. Let's say a test case reveals that there's a flaw in t
by mikehollinger 10y ago
>all features and edge casss should have a test.
Yeah, but the interesting problem is what happens next. Let's say a test case reveals that there's a flaw in the next-gen system. You fix it. It later turns out that the same flaw exists in the legacy system. What do you do?
Do you revert the fix, or leave it in place?
- philipov 10y agoYeah, I had to explain to a client once that our new version of their analytics query produced different results because their original SAS code didn't mind referencing variables before they're declared, and so one of the numbers in the analysis used to always be 0. They did NOT appreciate hearing that they had been running a bugged query for years...
- cle 10y agoRevert the fix and add it to your backlog. You've got enough to worry about when porting/rewriting, don't add additional dimensions of complexity and risk by trying to change business logic at the same time. Minimize risk by minimizing change...then when the new system is up on its feet, go back and fix all the mistakes you found.
- kwhitefoot 10y agoI upvoted that but I suspect that there will never be an opportunity to "go back and fix all the mistakes you found". At least there never is for me.