\chapter{General Introduction} This report starts by introducing the teaching machine {\rm oggin} and then enhancing its teaching function and method by rewriting it as the {\rm oggin} simulation CAL tool {\rm newogg}. The report then goes on to describe the design and implementation of {\rm newogg}. The last section of this report is a discussion of the output of {\rm newogg} and the difference between {\rm oggin} and {\rm newogg}. \\ \\ \noindent The project was to design a CAL tool for {\rm oggin} which is a teaching aid. Chapter 2 is a brief introduction to the {\rm oggin} machine. This chapter was adapted from {\rm An Introduction to the oggin machine} by {\sc Dr D.Budgen}. It provides the background knowledge applicable to the report. \\ \\ \noindent A project usually starts from a rough idea, then enters the stage of implementation and revision, revision and implementation, and finally results in an useful product. Such a development of a project is valuable for reference. The development of producing {\rm newogg}, including its background and the tools used, are discussed in chapter 3. \\ \\ \noindent The essential part of a project is what it is designed to be and how the design is implemented. This part always contains useful information for other relevant projects. The design and implementation of {\rm newogg} is introduced in chapter 4, including a description of limitations of the tools used. \\ \\ \noindent The value of a product will be reduced if people cannot use it properly or effectively due to their lack of knowledge of the product. Chapter 5 explains what {\rm newogg} can produce and how to exploit its output effectively through narrating a series of output examples. \\ \\ \noindent {\rm newogg} is built on the base of {\rm oggin}. Their differences are discussed in chapter 6 through the comparison between their structure, input data, error message and benefits of output. \\ \\ \noindent Where the product is available and how to use it is important to the user. Chapter 7 is an user guide which describes useful and crucial information for the user. \\ \\ \noindent Chapter 8 concludes the achievement of the project and possible extensions. Anyone who is interested in extending {\rm newogg} can revise it and make it more useful, and this chapter gives some suggestions.