Hi All,
We (developers) think we should do large grand refactoring in our project, because:
- With long time (more than 1 year) bug fixing too much hard code/hard logic been involved.
- Pickup one piece of code, nobody in this big team can confidentially tell you what will happen if you change that, because code are sticked together.
- We are facing fidelity problems, that our software must give exactly same output for old input. In other side we have lots of new feature requirement. We want change code but every change may cause regression (fidelity) problem.
We want refactoring code to simplify the complexity, but we don't know how to convince our boss and ourselves. They need some thing to prove that work will useful.
The software we are working on is really big and complex. And the refactoring we planed is not a days job by one or two man. We have a big test team and automatic test utility (not Unit Test) but even that can not cover all our input.
Currently we are counting/classing problems in code by review bugs and codes, we try to find a way to which one should be refactoring first, but we are not sure if it's helpful.
Thanks, Trapped Developer in Large Complex Software