• Ingen resultater fundet

Level VIII: Tight linking between the animation system and lectures

Redesigning the Animation Capabilities of a Functional Programming Environment under an Educational Framework

3.8 Level VIII: Tight linking between the animation system and lectures

Web pages generated by the system loosely link WinHIPE and lectures by means of embedded expla-nations. A tighter integration could be achieved by transforming our programming environment into a dynamic book on programming, containing lessons and exercises, and allowing the user to solve pro-gramming problems with a language interpreter and visualization/animation tool. This is a direction where promising results can be anticipated (Mart´ınez-Unanue et al., 2002), but by the moment we do not plan to adopt it for WinHIPE.

4 Conclusions and discussion

We have redesigned the animation capabilities of the programming environment WinHIPE so that it is more adequate for education and its design is more coherent. To this end, we have followed a two-fold process. First, we have isolated three main components of our approach: a model of program execution, a model of program visualization/animation, and support to build and maintain animations.

The last component is based on a metaphor of animations as office documents. Second, we have used Anderson and Naps’ framework to assess and refine the animation capabilities of the system for education.

After this redesign, the main features of WinHIPE remain constant, but we hope that the usability of WinHIPE for educators and students has been enhanced in a systematic way. Currently, we have reimplemented the visualization and animation windows, we have implemented storage and retrieval

facilities, and are designing and implementing the improvements derived from using Anderson and Naps’ scale. We also expect to measure the usability of the new capabilities.

There still are possibilities for further improvement in any of these elements. Our separation of concerns has the advantage of facilitating the designer to focus independently on any dimension.

Thus, the designer can focus on enhancing the execution model, e.g. by providing finer control over expression evaluation. Alternatively, he/she can concentrate on the model of visualization/animation, e.g. to provide multiple views.

Other improvements can be obtained at the dimension of building/maintenance. By taking more literally the office metaphor, we lack an unambiguous definition of an animation as a document. A more powerful definition would include the original program and the initial expression. As this ap-proach was adopted for animations in Web pages, it would also have the advantage of being homo-geneous. Additional potential enhancements can be given to customize graphics. For instance, the user can be assisted in selecting colors for different components of a visualization by showing (within the dialog) a sample with the effects of his/her selection, or the environment could even check them internally for their visual compatibility.

5 Acknowledgments

This work was supported by projects no. TIC2000-1413 of the Spanish Research Agency CICYT and PIGE-02-03 of the Universidad Rey Juan Carlos.

References

J. M. Anderson and T. L. Naps. A context for the assessment of algorithm animation systems as pedagogical tools. InFirst Program Visualization Workshop, pages 121–130, University of Joensuu, Porvoo, Finland, 2001.

M. Ben-Ari. Program visualization in theory and practice. Informatik/Informatique, 2:8–11, April 2001.

H. Biermann and R. Cole. Comic strips for algorithm visualization. 1999-778. Technical report, New York University, 1999.

M. H. Brown. A taxonomy of algorithm animation displays. In J. T. Stasko, J. Domingue, M. H.

Brown, and B. A. Price, editors,Software Visualization, pages 35–42. MIT Press, 1998.

M. H. Brown and M. Najork. Collaborative active textbooks: A Web-based algorithm animation system for an electronic classroom. In1996 IEEE Symposium on Visual Languages, pages 266–

275, Boulder, Colorado, USA, 1996. IEEE Computer Society Press.

M. H. Brown and R. Raisamo. JCAT: Collaborative active textbooks using java. Computer Networks and ISDN Systems, 29:1577–1586, 1997.

P. A. Gloor. User interface issues for algorithm animation. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors,Software Visualization, pages 145–152. MIT Press, 1998.

J. Haajanen, M. Pesonius, E. Sutinen, J. Tarhio, T. Ter¨asvirta, and P. Vanninen. Animation of user algorithms on the web. In1997 IEEE Symposium on Visual Languages, Boulder, Colorado, USA, 1997. IEEE Computer Society Press.

R. Jim´enez-Peris, M. Pati˜no-Mart´ınez, C. Pareja-Flores, and J. ´A. Vel´azquez-Iturbide. Graphical visu-alization of the evaluation of functional programs. InSIGCSE/SIGCUE Conference on Integrating Technology into Computer Science Education, pages 36–38, Barcelona, Spain, 1996. ACM Press.

S. Khuri. A user-centered approach to designing algorithm visualizations. Informatik/Informatique, 2:12–16, April 2001.

M. Lattu, V. Meisalo, and J. Tarhio. On using a visualization tool as a demonstration tool. In First Program Visualization Workshop, pages 141–162, University of Joensuu, Porvoo, Finland, 2001.

H. K. Madsen. A guide to metaphorical design. Communications of the ACM, 37(12):57–62, Decem-ber 1994.

R. Mart´ınez-Unanue, M. Paredes-Velasco, C. Pareja-Flores, J. Urquiza-Fuentes, and J. ´A. Vel´azquez-Iturbide. Electronic books for programming education: A review and future prospects. In 7th Annual SIGCSE/SIGCUE Conference on Innovation and Technology in Computer Science Educa-tion, pages 34–38, Aarhus, Denmark, 2002. ACM Press.

F. Naharro-Berrocal, C. Pareja-Flores, J.Urquiza-Fuentes, and J. ´A. Vel´azquez-Iturbide. Approaches to comprehension-preserving graphical reduction of program visualizations. InACM Symposium on Applied Computing, pages 771–777, Madrid, Spain, 2002. ACM Press.

F. Naharro-Berrocal, C. Pareja-Flores, and J. ´A. Vel´azquez-Iturbide. Foundations for the automatic construction of animations and their application to functional programs. InFirst Program Visual-ization Workshop, pages 29–40, University of Joensuu, Porvoo, Finland, 2001a.

F. Naharro-Berrocal, C. Pareja-Flores, J. ´A. Vel´azquez-Iturbide, and Mart´ınez-Santamarta. Automatic Web publishing of algorithm animations.Informatik/Informatique, 2:41–45, April 2001b.

J. T. Stasko and A. Lawrence. Empirically assessing algorithm animations as learning aids. In J. T.

Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors,Software Visualization, pages 419–438.

MIT Press, 1998.

J. ´A. Vel´azquez-Iturbide. Automatic simplification of the visualization of functional expressions by means of fisheye views. InJoint Conference on Declarative Programming, pages 101–112, Univer-sidad de La Coru˜na, La Coru˜na, Spain, 1998. ACM Press.

J. ´A. Vel´azquez-Iturbide and A. V´azquez-Presa. Customization of visualizations in a functional pro-gramming environment. In29th ASEE/IEEE Frontiers in Education Conference, pages 22–28, San Juan, Puerto Rico, 1999. Stipes Publishing. Session 12b3.