Complex machines can fail in complex ways. Often the nature of the fault can be determined only through the interpretation of machine behavior over time. This book presents a novel approach to the representation and recognition of temporally distributed symptoms. Existing diagnostic expert systems usually operate under a set of simplifying assumptions that limit their applicability. A common assumption is that the device to be diagnosed has a static behavior, with the relation between inputs and outputs constant over time. In most realistic application domains this assumption is violated and both the normal, intended function of the device and the potential malfunctions are complex behaviors over time. This book addresses the problem of systematically treating information about fault symptoms that are spread out over periods of time. These symptoms are characterized by a specific order of events, and in the general case a single snapshot of the device state does not suffice to recognize the symptoms. Instead one has to plan a measurement sequence that consists of several observations at more than one time point. Starting with a classification of various types of dynamic faulty behavior, the author identifies temporally distributed systems (TDSs) and designs a representation language that allows TDSs to be specified in a declarative manner. The definition of a successful match of a measurement sequence against a TDS specification is operationalized as an algorithm which plans such an observation sequence based on the TDS specification. The author demonstrates that his novel solution is a generic, paradigm-independent building block for diagnostic expert systems by embedding it into the frameworks of both an associative and a model-based diagnostic system. The book will be valuable both for researchers working on applications of temporal reasoning and prospective users of technical expert systems.