Software systems on electronically controlled diesel truck engines typically provide diagnostic features to enable the engine mechanic to identify and debug system problems. As future systems become more sophisticated, so will the diagnostic requirements. The advantages of serviceability and accuracy found in todays electronic systems must not be allowed to degrade due to this increased sophistication. One method of maintaining a high level of serviceability and accuracy is to place an even greater priority on diagnostics and servicing in the initial design phase of the product than is done today. In particular, three major goals of future diagnostic systems should be separation of component failures from system failures, prognostication of failures and analysis of engine performance. This paper will discuss a system to realize these goals by dividing the diagnostic task into the Electronic System Diagnostics, Engine System Diagnostics and the Diagnostic Interface.