David A. Robinson, Callum R. Lester and Neil M. Hamilton
Medical Faculty Computer Assisted Learning Unit,
University of Aberdeen, Scotland, U.K.
One of the central issues regarding delivery of learning material is the distribution of CAL, sharing of learning materials and collaborative development .
Java is a programming language offering many advantages over existing languages when tackling the issues surrounding delivery. The main thrust of its rapid acceptance is its distributive power due to its platform independence and inherent security. The platform independence provides the facility for small applications known as applets to be written and embedded into Web pages. Applets can be used for many things including text and graphics manipulation, user interaction, client side data handling, database interaction and so on. For the purposes of the Java Medi-CAL project we needed the applets to provide a means for students to be asked questions and then to provide feedback based on their responses. Our initial efforts concentrated on developing a level of user interaction comparable with a successful legacy software engine written in the Visual Basic (Microsoft Corporation) programming environment some years before.
Approximately three months into the project the introduction of fourth generation Web browsers made a new technology available to us, Dynamic HTML. In the words of the Microsoft Corporation (URL Ref. 1) "Web authors today face significant challenges when making their Web pages interactive. The static nature of HTML pages limits their creative choices, and interactive components can be difficult to build and reuse. In addition, using proprietary extensions means authoring browser-specific Web pages.
...Dynamic HTML technology helps to remove these barriers for content providers and offers users more engaging and interactive Web pages. Dynamic HTML provides authors with enhanced creative control so they can manipulate any page element at any time. Dynamic HTML is also the easiest way to make Web pages interactive, using open, standards-based technologies."
At the time of writing this paper our incorporation of Dynamic HTML (DHTML) techniques was at a rudimentary stage. It was however apparent that a marriage of Java applets and DHTML content provided us with a very powerful medium in which to present learning materials on the Internet. It is difficult to predict how the Internet will continue to develop and although the widespread acceptance of DHTML into Web development could not be assured it was felt that this new technology was a natural progression for the Web and one we should pursue.
The project deals with the design and creation of thirty Interactive Multimedia Model Patients (and their associated hypermedia Learning Guides) which will be integrated as learning resources throughout the undergraduate Child Health components of the medical and nursing curricula in Scotland, U.K. (URL Re.f 2). The Model Patients will take the form of Java enhanced Web pages, be delivered on demand at each of the participating institutions and make full use leading edge digital video technologies (MPEG and MPEG II video in some cases).
2.1. Project background
With the founding of a Common Core Curriculum within Child Health teaching in Scotland (by the majority of those involved in the present project), and the fact that much of the material is relevant to the areas of Child Health in training of nursing students, the opportunity to collaborate in the development and sharing of these and other resources is now highly desirable.
The project seeks to address this need by creating core multimedia applications in the form of interactive multimedia Model Patient applications which can be delivered to all the participating institutions using the WWW as a delivery medium and integrated learning environment.
2.2. Project description
The Model Patients take the form of Java enhanced Web pages, be delivered on demand at each of the participating institutions and make full use of leading edge digital video technologies (MPEG). Not only will this project deliver critical curriculum components across the WWW but will afford an opportunity to assess the performance of the Aberdeen Metropolitan Area Network (AbMAN) in handling this material through collaboration with the JISC JTAP-288 Video Medi-CAL project (URL Ref. 3).
Thirty Model Patient applications and their supporting Learning Guides will be constructed over a period of eighteen months.
The Model Patient applications allow the medical students to interactively manage a patient's illness, simulating the decisions and responses that the clinician faces in real life, a task which cannot be readily achieved by traditional methods of teaching. Students are required to answer questions and make decisions about the patient's management as they work through each case.
The traditional approach to the production of CAL has been for subject specialists to write the courseware drawing on the expertise of computer programmers should complex situations arise [3,5]. There is a body of evidence suggesting that such approaches are incapable of producing CAL for complex situations such as those needed to teach some science subjects. In these situations the emphasis is on the level of programming permitted by the authoring environment. To date the problem has been finding a balance between the ease of use and the deliverable power of point and click authoring systems and the complexity of a pure programming language.
Muldner and Elammari  first analysed several point and click authoring environments such as Authorware (Macromedia Inc.) and then went on to describe their system based on the C++ programming language. With their system, they developed an authoring environment capable of delivering complex CAL such as would be required to teach computer science subjects. They argued that the provision of a powerful authoring environment can only be achieved by using a programming language as the foundation. Packages providing facilities for programming language routines to be incorporated were considered as falling short.
Accepting their argument and that the requirements of medical teaching are often complex, Java offers possibly the best CAL development solution available. Not only are many of the required user interface requirements inherent in Javas design but Java is a programming language offering developers a high degree of control. Coupled with simultaneous multi-platform development Java could potentially provide a very powerful CAL authoring tool.
As visual methods for creating Java resources become available some of the complexities will be hidden. Developers will however need to invest time and effort in learning the Java programming language. The answer may be to either train CAL developers as Java programmers or incorporate Java programmers into the CAL development team. The Java applets developed within this project do allow non-programmers to use them although some knowledge of HTML would be required.
The emerging technology of DHTML presents Web-based educators with unprecedented control over Web page content without the need for proprietary browser plug-ins. Standards have yet to be finalised but a preliminary version of the requirements for the Document Object Model has been published by the World Wide Web Consortium (W3C).
Web browsers such as Internet Explorer (Microsoft Corporation) provide a standard user interface across many different platforms. This uniformity offers unprecedented power to developers choosing to incorporate Web browsers as the vehicle for interface delivery of their CAL resources. In addition to providing a flexible container, the Web browser handles all necessary machine specific hardware interaction. At the time of writing companies such as Microsoft were commenting that the Web browser could provide a common interface for many of their products such as word-processors and spreadsheets. The active desktop concept is the first evidence of this philosophy and has been introduced with the release of Internet Explorer 4.0 (Microsoft Corporation).
5.1. Applet development
During the time this research was being carried out various visual development packages became available. These facilitate drag and drop type designer interfaces providing an efficient method of creating a Graphical User Interface (GUI) with a minimal amount of coding. Java programming skills are then required in much the same way as with the non drag and drop environments to create the desired functionality.
The applets we developed needed to be reusable. In addition an applet may in one case need to ask three questions and the next time it was used five questions. This meant we could not hard code the GUI but needed to create it "on-the-fly" at runtime. By adopting this method of development we could not make use of graphical GUI builders. All our GUIs were hand coded and initialised by feeding the applet with data in the form of parameters from the HTML code on the page in which the applet was being used. This technique increased the initial project development time but there was a subsequent decrease in time spent building the educational content once the applets had been written.
We made use of several Integrated Development Environments (IDE) including Microsoft J++ and Sun Systems Java Workshop. Both packages provided adequate facilities for applet development and the choice became one of personal preference between the developers.
5.2. DHTML development
All Dynamic HTML development including scripting was hand coded using a simple text editor. At the time of writing several tools are coming to the market to automate this task.
Java proved to be a suitable way of creating simple programs with GUI front ends. The Alternative Windowing Toolkit provided an extensive set of standard GUI objects. Unfortunately in its present form, the AWT will not produce front ends that look as impressive as native Windows (Microsoft Corporation) or Macintosh (Apple) programs because of the limitations of cross platform development .
The real power of Java in the context of CAL authoring comes from the simultaneous cross platform development and the absolute control afforded to the programmer. Muldner and Elammari  make reference to the importance of having the complete control offered by a true programming language and go on to say how it becomes more apparent as the complexity of the subject matter increases. Although the CAL we produced could not be described as complex the principles explored are the building blocks on which more intricate models can be developed.
The lack of a direct comparison between Java and an authoring system forced us to look for another method of evaluation. Philip Barker  provided the basis for such an assessment. The evaluation questions would benefit from being weighted but if they are applied to Java on the basis of a positive response being one point and a negative response zero, Java scores a very impressive forty out of forty five.
The areas of Java found wanting related to its ease of use, ease of learning and its access to third party software. The ease of use issue is being addressed now by visual development products and this in turn should aid the learning process. Our work suggested that Java as a CAL production language is extremely well positioned to provide the basis for the next generation of authoring systems.
As previously stated our experiments with DHTML are at a rudimentary stage. At this point we have been sufficiently impressed by the capabilities of DHTML to believe it will form a significant part of our future development work. We believe Java and DHTML will provide us with adequate tools to provide media rich Computer Assisted learning across the Internet.
As the initial part of an on-going beta test phase, five students were given some background information to the project and asked if they were familiar with the use of a Web browser. All the students were familiar with Web browsers and no further instruction was provided. During the hands on phase of the beta test the students were advised when they arrived at an incomplete section of the package such as a video clip that was awaiting a voice over.
Below is a list of comments made by the participating students and suggested solutions.
The general view from the five students was very positive. They unanimously gave their full backing to the project and the first Web based applications. They highlighted several usability issues, which are currently being addressed.
In our opinion the ability of Java and DHTML to deliver dynamic Web content is a reality and the tools are becoming available to assist programmers with this delivery.
The key to this statement are the words assist programmers because this may be the factor that inhibits the growth of Java/DHTML enhanced CAL Web pages. Notwithstanding the simplicity of Java compared to other languages, a great deal of effort is required to become proficient in its use. The question is whether or not CAL developers can find the resources required to develop the principles we have demonstrated. The answer from a commercial standpoint has to be looked at in terms of cost and benefit.
The potential for simultaneous cross platform development offered by Java/DHTML appears at first glance to be a programmers holy grail. This also holds true from the CAL production companies point of view with the added benefit of providing an inherent and economic means of distribution. We have noted that the benefits of cross platform development have an associated cost in terms of the aesthetic qualities of the finished product. The face of computing is constantly changing and functionally limited computer programs with crude often text based user interfaces have been replaced by slick design and user friendly GUIs. The expectations of both business users and academics alike have been raised and our concern is that with the present lowest common denominator  GUI provided by Java user expectations may not be met. It should be noted however that the GUI issue is being addressed by the SWING project (URL Ref. 5).
One final point directly related to Java is the way the language is to be developed. The attractions of Java stem from its cross platform format. If this is partially compromised by introducing machine specific elements then the whole thrust of the language's development may be lost. It can only be hoped that initiatives such as Sun Microsystems 100% Pure Java compliance are embraced so ensuring the languages continued success (URL Ref. 6).
Java/DHTML undoubtedly has increased the possibilities available to people who wish to deliver more dynamic Web content and as has been shown here provides a dramatic improvement over static HTML only pages. Although the project is at an early and inconclusive stage the success demonstrated to date suggests multi-platform networked delivered CAL is already a reality.
 Barker, P., Multi-Media Computer Assisted Learning.
Kogan Page Ltd, London, 13, 1989, p. 222 (ISBN 1-85091-862-7).
 Cornell, G. and Horstmann, C. S., Core Java.
SunSoft Press (Prentice-Hall), California, 1, 1996, pp. 1216, 177 (ISBN 0-13-565755-5).
 Dean C., and Whitlock Q., A Handbook of Computer Based
Training. Kogan Page Ltd, London, 8, 1991, p. 123 (ISBN 1-85091-590-3).
 Dearing, R., Higher education in the learning society, Report of the Committee under the Chairmanship of Sir Ron Dearing, London, HMSO, 1997.
 Hamilton, N.M., Key strategic models for CAL development, Innovations in Educational and Training International 34(4): 263267, 1997.
 Hamilton, N.M. and Robinson, D.A., Network delivery of CAL materials, in: Conference Proceedings of the Learning Technology in Medical Education Conference Bristol, 1997.
 Muldner, T. and Elammari, M., Objector, yet another authoring system, in: I. Tomek (Ed.), Computer Assisted Learning, Proc. 4th International Conference, ICCAL'92, Wolfville, Nova Scotia, Canada, June 1992. Springer-Verlag, Berlin, Heidelberg, 1992, pp. 307, 466, 478 (ISBN 3-540-55578-1)
 Naughton, P., The Java Handbook. McGraw-Hill, California,
1, 1996, pp. 46 (ISBN 0-07-8821-199-1).
Fig. 1. Web page with Java applet.
Fig. 2. Web page with MPEG video playing.
Fig. 3. Same Web page in four states using Dynamic HTML.
1. Microsoft on Dynamic HTML http://www.eu.microsoft.com/workshop/author/dhtml/
2. SHEFC Child Health Project Web Site http://w3.abdn.ac.uk/umi2/
3. JISC JTAP-288 Video Medi-CAL project http://www.abdn.ac.uk/medicine/jtap-288/288int.htm
4. W3C preliminary requirements for the Document Object Model http://www.w3.org/pub/WWW/MarkUp/DOM/
5. "What is Swing?" http://www.javasoft.com/products/jfc/swingdoc-current/intro.html
6. "What does 100% pure java mean?" http://www.javasoft.com/100percent/