People must realize perfection is never realized. I am a software engineer by trade. The fact that the engineer fields exist is proof that the perfect design is never achieved. If it was then you could never improve it. When I look back at code I did a year ago, I wonder why I did it that way.
I used to work for Boeing and one of the things they drilled into our heads was not to make changes unless the existing system did not work. Us designers would look at some of our past work and think, damn I better change this because this is not the correct way to do this. We did not want somebody to look at our work and wonder what an idiot we were for doing it that way. The way it was done worked fine but could have been done better.
One of the major problems with constant changes is that it invalidates past assumptions. You might look at the change and say; this is a real minor change and is low risk. You implement the change and later realize that it totally changes this other assumption and now you need to change this other section to work with it. Now this new section change changes an assumption over in this other section and you get a cascading set of changes that grossly changes the scope of the original minor change.