To be most efficient, an intelligent tutoring system must be based on a thorough analysis of the task that is being trained, and the knowledge, both declarative and procedural, that the learner must acquire in order to perform the task. This paper explores the thesis that constructing a cognitive simulation model of the task is an efficient approach to characterizing this content. Because the simulation model must be explicitly stated in order to carry out the task properly, the model acts as a specification of (1) the exact nature of the user's task in terms of goals and subgoals; (2) the exact procedural knowledge required to accomplish the goals in the task setting; (3) the exact declarative knowledge required to support the procedural knowledge in carrying out the task. Such specifications could be used to both specify the content of instruction and the content of diagnostic tests. Two examples of the applications of this approach are presented, both assuming that the procedural knowledge is represented in the form of production rules. In the first example, by determining what production rules were actually stated by the training materials for a word processing system, it became clear that certain procedures were not correctly stated. The second example concerned the training and testing materials used in experiments in which subjects learned the fictitious inner workings of a simple control panel system, and then had to infer how to operate the control panel to accomplish a simple goal under different situations.