Maintenance and reengineering terms are closely coupled with each other. These terms came from the world of hardware objects. Now these entered the world of software and are well suitable for software systems. It is difficult to draw a clear cut line between these two terms. Many a times these are used interchangeably. Reengineering of software systems is a topic of importance and in coming time it will be gaining more attention in the world of software systems. Software managers are often confused over maintenance and reengineering. These two terms should be separated to promote the subject matter because one is problem for the other. I will try to put them in different non overlapping regions. Maintenance and reengineering are two different areas in software engineering. Maintenance is for running the system till the age of the system where as the reengineering make the system new to work for another life span. Scope of reengineering is vast and challenging as compared to maintenance. Reengineering is to reduce the expenses on software systems in the organizations. Reengineering has more scope in the world of software than in the world of hard ware objects. Software systems and software objects do not wear and tear out like hardware objects in the real world. Maintenance is close to repair/mend where as reengineering is very close to new development.