I was reading software engineering a practitioner's approach when I came across this question. I think the answer is no but I don't have much of a valid reason so I would like to hear other people's opinion .
closed as too broad by gnat, Robbie Dee, Euphoric, Doc Brown, Thomas Owens♦ Apr 10 '17 at 11:34
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
The answer is no because refactoring is explicitly not about "the entire design". Refactoring is about improving small aspects of the design, one at a time, without changing the functionality.
It is possible to do major overall changes in a design through a sequence of small refactoring steps, but it is not the typical case, nor can large changes always be done that way.
"Refactoring" is any change that tries to modify your source code without changing what the source code does. There is no requirement how small or big that change would be.
You would use refactoring to improve your source code. Often small changes will only lead to small improvements, while big changes may lead to big improvements. You decide what amount of changes produce the best ratio of improvement to effort.
There's always the risk that a change introduces a bug. Making small changes, you are less likely to introduce bugs, and if you do, they will be easier to find and fix. That's why refactoring is often done in a series of small steps. But refactoring may be done by throwing away some code and rewriting it from scratch, or doing small steps before a design is completely changed.
You just do what is best depending on the situation.