Engineering systems are rarely designed from scratch. They are socio-technical engineering systems that evolve over generations of products and policies. This chapter uses tram transportation to illustrate how engineering systems evolve over many decades. A brief comparison between trams in the UK and Germany illustrates that systems that are at one point very similar can develop in very different ways due to seemingly innocuous decisions. The evolution of systems is explained in terms of two concepts, path dependency, which explains how future designs are restricted by decisions taken in the past, and engineering change, which handles the effects of a change on parts of the system and neighbouring systems. To understand the impact of chang...