ABSTRACT

A serious problem exists in the current methodology of developing educational software. Each application is developed independently, and teaching knowledge is hard-coded into individual applications. There is little re-use of teaching code or teaching knowledge between applications because we lack a standard language for representing the knowledge, a standard interface to allow applications to access the knowledge, and a set of tools to allow designers to manipulate the knowledge.