簡易檢索 / 詳目顯示

研究生: 簡雅羚
Ya-Ling Chien
論文名稱: Towards General-Purpose Program Animation
Towards General-Purpose Program Animation
指導教授: 鄭永斌
Cheng, Yung-Pin
學位類別: 碩士
Master
系所名稱: 資訊教育研究所
Graduate Institute of Information and Computer Education
論文出版年: 2003
畢業學年度: 94
語文別: 法文
論文頁數: 50
中文關鍵詞: debugger animation
論文種類: 學術論文
相關次數: 點閱:194下載:4
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 現今有許多軟體視覺化的研究,除了靜態的呈現還有動畫的表現方式。但其中絕大部分的動畫設計都只能呈現某些特定的演算法或資料結構。雖然仍有少部分的研究是朝向可以呈現所有的程式,但都需要使用者投入額外的努力才可以產生動畫。因此,我們的研究目標是可以為任何的Java程式的執行片段產生一段動畫但又不需要使用者做額外的工作。
    在本篇論文中,我們設計了一個名為「YaJDB」的工具。這個工具主要有兩個目的,一個是提供DIVINE所需的除錯資訊;另一個即是提供動畫產生器(animation metaphor)必要的支援以為達成我們的目標。YaJDB是延伸JDB而來。在未來,我們會繼續往這目標前進,完成動畫產生器(animation metaphor)及映對引擎(mapping engine)。

    There are many software visualization researches nowadays. Software visualization is an aid for program understanding, debugging and teaching. Although there are many researches aiming for algorithm animation, most of them are designed for specific algorithms and data structures. Some researches aim for general-purpose program animation but animation generation typically requires extra work from the users.
    In this thesis, we develop a tool, called YaJDB, to provide debugging information for DIVINE and the necessary support for animation metaphor to make it possible to animate general-purpose programs. YaJDB is a debugger modified from JDB. YaJDB is used to catch the information during program execution. Besides, we develop a simple animation metaphor to show that our approach works. In the future, we will develop more realistic animation metaphors and needed mapping engine.

    中文摘要 I ABSTRACT II ACKNOWLEDGEMENT III TABLE OF CONTENTS IV LIST OF TABLES VI LIST OF FIGURES VII CHAPTER1 INTRODUCTION 1 1.1 OVERVIEW 1 1.2 ORGANIZATION 3 CHAPTER2 BACKGROUND 5 2.1 DEBUGGER 6 2.1.1 GDB 7 2.1.2 DDD 8 2.1.3 JDB 9 2.1.4 ODB 9 2.2 SOFTWARE VISUALIZATION 10 2.2.1 Lens 11 2.2.2 Leonardo 13 2.2.3 JAN 13 2.2.4 JaVis 14 2.2.5 Jeliot 3 14 2.2.6 JIVE 16 2.2.7 JSAVE 16 2.2.8 Zeus 17 2.3 XML 17 2.4 RELATED TECHNOLOGY 19 2.4.1 JPDA 19 2.4.2 JXDB 22 CHAPTER3 SUPPORT FOR DIVINE SOFTWARE VISUALIZATION IN YAJDB 24 3.1 AN INTRODUCTION OF YAJDB 24 3.2 AN OVERVIEW OF DIVINE 24 3.3 THE INTERACTION BETWEEN DIVINE AND YAJDB 27 3.3.1 Visualization starts with DIVINE 28 3.3.2 Visualization starts with YaJDB 30 CHAPTER4 SUPPORT FOR ANIMATION METAPHOR IN YAJDB 32 4.1 ANIMATION METAPHOR 32 4.2 YAJDB AND ANIMATION METAPHOR 34 4.3 DESIGN AND IMPLEMENTATION 35 4.3.1 Program analysis 35 4.3.2 Instruction 39 4.4 SYSTEM ARCHITECTURE 41 CHAPTER5 EXAMPLE 45 CHAPTER6 CONCLUSION AND FUTURE WORK 48 6.1 CONCLUSION 48 6.2 FUTURE WORK 48 REFERENCE 49

    [1] The Java Web Services Tutorial
    [2] H. Agrawal, R. A. DeMillo and E. H. Spafford, An Execution-Backtracking Approach to Debugging, IEEE Softw., 8 (1991), pp. 21-26.
    [3] M. H. Brown, Zeus: a system for algorithm animation and multi-view editing, Proceedings of IEEE Workshop on Visual Languages, 1991, pp. 4-9.
    [4] P. CRESCENZI, C. DEMETRESCU, I. FINOCCHI and R. PETRESCHI, Reversible Execution and Visualization of Programs with LEONARDO, Journal of Visual Languages & Computing, 11 (2000), pp. 125-150.
    [5] J.-h. Fan, DIVINE: An Immersive 3D Debugging Information Visualization System Using Metaphor, Information and Computer Education, National Taiwan Normal University, Taipei, 2004.
    [6] K.-D. Feng, A Device-independent Object-oriented Framework for 3D Visualization Metaphor Programming in DIVINE, Information and Computer Education, National Taiwan Normal University, Taipei, 2005.
    [7] P. Gestwicki and B. Jayaraman, Methodology and architecture of JIVE, Proceedings of the 2005 ACM symposium on Software visualization, ACM Press, St. Louis, Missouri, 2005, pp. 95-104.
    [8] P. V. Gestwicki and B. Jayaraman, JIVE: java interactive visualization environment, Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, ACM Press, Vancouver, BC, CANADA, 2004, pp. 226-228.
    [9] A. Kolawa, The Evolution of Software Debugging Parasoft http://www.parasoft.com/papers/vision.htm.
    [10] B. Lewis, Debugging backwards in time, in M. Ronsse, ed., Proceedings of the Fifth International Workshop on Automated Debugging, Ghent, Belgium, 2003.
    [11] K.-P. Lohr and A. Vratislavsky, Jan - Java animation for program understanding, Human Centric Computing Languages and Environments, 2003. Proceedings. 2003 IEEE Symposium on, 2003, pp. 67-75.
    [12] K. Mehner, JaVis: A UML-Based Visualization and Debugging Environment for Concurrent Java Programs Revised Lectures on Software Visualization, International Seminar Springer-Verlag, 2002 pp. 163-175
    [13] A. s. Moreno, N. Myller, E. Sutinen and M. Ben-Ari, Visualizing programs with Jeliot 3, Proceedings of the working conference on Advanced visual interfaces, ACM Press, Gallipoli, Italy, 2004, pp. 373-376.
    [14] S. Mukherjea and J. T. Stasko, Applying algorithm animation techniques for program tracing, debugging, and understanding, Proceedings of the 15th international conference on Software Engineering IEEE Computer Society Press, Baltimore, Maryland, United States 1993 pp. 456-465
    [15] S. Mukherjea and J. T. Stasko, Toward visual debugging: integrating algorithm animation capabilities within a source-level debugger, ACM Trans. Comput.-Hum. Interact., 1 (1994), pp. 215-244.
    [16] Y.-w. Peng, Interactive 3D Debugging Information Visualization for Linked-List Data Structure, Information and Computer Education, National Taiwan Normal University, Taipei, 2003.
    [17] B. A. Price, R. M. Baecker and I. S. Small, A Principled Taxonomy of Software Visualization, Journal of Visual Languages and Computing, 4 (1994), pp. 211-266.
    [18] J. B. Rosenberg, How Debuggers Work: Algorithms, Data Structures, and Architecture, John Wiley & Sons.
    [19] R. M. Stallman, R. Pesch and S. Shebs, Debugging with GDB: The GNU Source-Level Debugger, Copyright (C) 1988-2006 Free Software Foundation, Inc. http://www.gnu.org/software/gdb/documentation/.
    [20] J. Stasko, Animating algorithms with XTANGO, SIGACT News, 23 (1992), pp. 67-71.
    [21] N. Sumner, Daniela Banu and H. Dershem, JSAVE:Simple and Automated Algorithm Visualization Using the Java Collection Framework, proceedings of the tenth annual Consortium for Computing Sciences in Colleges, 2003.
    [22] A. Zeller, Debugging with DDD, Copyright (C) 2000 Free Software Foundation, Inc. http://www.gnu.org/manual/ddd/pdf/ddd.pdf.

    QR CODE