'System Identification' shows the student reader how to approach the system identification problem in a systematic fashion. The process is divided into three basic steps: experimental design and data collection; model structure selection and parameter estimation; and model validation, each of which is the subject of one or more parts of the text. Following an introduction on system theory, particularly in relation to model representation and model properties, the book contains four parts covering: data-based identification, non-parametric methods for use when prior system knowledge is very limited; time-invariant identification for systems with constant parameters; time-varying systems identification, primarily with recursive estimation techniques; and model validation methods. A fifth part, composed of appendices, covers the various aspects of the underlying mathematics needed to begin using the text. The book uses essentially semi-physical or gray-box modeling methods although data-based, transfer-function system descriptions are also introduced. The approach is problem-based rather than rigorously mathematical. The use of finite input–output data is demonstrated for frequency- and time-domain identification in static, dynamic, linear, nonlinear, time-invariant and time-varying systems. Simple examples are used to show readers how to perform and emulate the identification steps involved in various control design methods with more complex illustrations derived from real physical, chemical and biological applications being used to demonstrate the practical applicability of the methods described.