Computer based teaching and training systems in general, and Intelligent Tutoring Systems (ITSs) in particular, are usually based on similar fundamental structures. In contrast to this, analyses of the state of the art of teaching and training system development have revealed that software engineering techniques are seldom used for realizing those systems. In the last years, some approaches tried to change this: pattern mining took place; methods covering the specifics of ITS project development have been deployed. These approaches usually focus on a specific system type or on a certain application domain, thus re-usability is often not possible. What is missing is a combination of different approaches in a pattern language or a pattern catalogue for ITS. The purpose of such a pattern catalogue is to provide pattern for different types of software and to support the software development starting from design and ending with the implementation. A step towards a pattern language for ITS is described in this paper.