Software systems are modified throughout the life
cycles because of the newly incremented functions to
enhance or adapt existing functionalities or modifications
to fix defects in the stages of the requirements,
specification, design, implementation, and testing.