In this chapter, we consider the nature of software evolution: What kinds of software systems are evolved? Which quality aspects of software systems play a role throughout evolution? What kinds of software changes exist, and which evolution processes are considered? What is the impact of these changes? The purpose of this chapter is to clarify the fundamental aspects of software evolution, which are being taken up again in the following chapters. Hence, this chapter shall explain the basic terminology used in this book. To a small extent, it shall also provide a domain analysis of the area of software evolution. And finally, for more details,