Software Evolution is the process of developing software using software engineering principles and methods.
This involves the initial development of software, its maintenance, and timely updates until and unless desired software is developed, which fulfills the expected requirements from the software.