This report has used an existing algorithm animation tool, JAWAA and reused several components of JELLRAP to build the interactive on-line parsing animation system. The system can be implemented successfully but a number of technology problems were encountered during the implementation of the system and these problems mainly relate to Java.
Java is regarded as a portable programming language because it is platform-independent and programs written in Java can be run in cross-platform environments. However, the problems encountered during the implementation of the system make this statement somewhat debatable. As a result, it was discovered that there are differences in implementation of program aspects between various platforms, for example, like developing a multi-threaded application. Java allows a programmer to write real multi-threaded applications but each operating system has its own implementation for running multi-threaded applications. Thus, as Windows supports real multi-threaded applications which have multiple threads running concurrently. Linux, on the other hand, uses green thread which does not support multi-threaded application. For these reasons, programmers are forced to write native code which is system-dependent thus making Java become a non-portable language.
As well, the architecture of the algorithm animation tool used in this project may not be a suitable approach for building animation. A considerable amount of information had to be incorporated in the animation and lots of annotations had to be added into the program to generate animation commands thus making the program lengthy and hard to debug.
Furthermore, the parsing animation system might better be built from scratch using a general purpose algorithm animation tool instead of reusing components of JELLRAP. This is because time was needed to extract the necessary components from JELLRAP and this approach reduce the flexibility of the system and is lacked of custom design capability. The time spent could have been used in making better design of the system.
To improve the current work done, there are a number of enhancements that can be performed in future extension work.
Due to enormous cross-platform testing and arisen of Java technology problems, the parsing animation system was unable to be evaluated by students. When these problems are fixed in the future, the system should be used by students and have their feedback obtained for redesign and reevaluation purposes.
At present, LR Parsing algorithms are not implemented in the parsing animation system because of shortage of time. Therefore, future extension work is needed to animate these algorithms as well.
Future work shall include changing the existing user interface from AWT to Swing components. Since Swing is to replace the existing AWT and has many more new graphical user interface features, the replacement can improve the appearance of the user interface and enhance its functionalities.
The present design of the animation is text based with comparatively less graphical animated objects being used. Redesign of the animation in the future can incorporate more graphical representation of objects into the animation to enhance its visual quality and clarity.
Limited and little narration has been included in the animation and one of the future work is to consider adding more detail narration to each execution step in the animation.