Why would one think of re-engineering of a product/project in the first place or redoing the same stuff again?
What factors really decide that we need to re-engineer the product or site? They would be something as follows:
The functionality is not designed as per the requirement
The designed code is in written in such a way that no up-gradation is possible.
Do we have the bandwidth and budget to do so?
Now what needs to be considered while redoing the old project?
Do we require to redo the entire project/product again or only a part of would be sufficient?