1 Software and software engineering
This section describes the basic characteristics of a ‘good software system’, and considers how such software systems may be developed. Once built, software rarely remains static and can change on a regular basis, so maintaining software is a key activity in software engineering.