研究生: |
彭怡煒 Peng Yi-wei |
---|---|
論文名稱: |
互動式三度空間鏈節結構除錯資訊視覺化系統 Interactive 3D Debugging Information Visualization for Linked-List Data Structure |
指導教授: |
鄭永斌
Cheng, Yung-Pin |
學位類別: |
碩士 Master |
系所名稱: |
資訊教育研究所 Graduate Institute of Information and Computer Education |
論文出版年: | 2003 |
畢業學年度: | 91 |
語文別: | 英文 |
論文頁數: | 46 |
中文關鍵詞: | 軟體視覺化 、鏈節結構 、除錯資訊視覺化 |
英文關鍵詞: | Software Visualization, Linked-List Data Structure, Debugging Information Visualization |
論文種類: | 學術論文 |
相關次數: | 點閱:224 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
在開發軟體的過程中,除錯通常是耗時的。但是就現有的除錯工具而言,大部分依舊停留在文字模式的階段,程式設計師必須在一堆文字當中,去尋找有意義的資訊,並把抽象的概念的具體化,來模擬程式的運作,進而發覺程式可能出錯的所在。上述的這件事情,就算對於一個有經驗程式設計師來說也不見得是一件簡單的事情,就更別說一個欠缺經驗的新手了。然而隨著程式規模日漸增加,類似在開發作業系統一類的大型複雜軟體時,除錯的問題只會越來越棘手,除錯的工具必須提供更有效的協助給程式設計師。
本研究就是在提供一個圖形化的除錯工具,讓程式設計師可以透過圖形化的呈現輕易的看出程式中變數的內容及資料結構。目前是有一些軟體嘗試著利用 2D 平面來展示除錯的資料,但是2D 的平面展示有他的侷限。當所要除錯的程式很龐大的時候,會有過多的資料充塞在 2D 平面上,並不能完全發揮視覺化的目的,所以就並不是那麼的適用。所以在本研究把除錯的環境擴增到 3D 的立體空間中。但因為可能除錯的資料結構可能會有很多種,目前將目標鎖定在鏈結結構(Linked-list data structure)上。在 3D 的環境中利用一個虛擬實境手套來與除錯工具溝通的工具,透過一些手勢操作來控制或是顯示程式設計師想要看的變數的內容及資料結構。透過預設手勢操作的過程當中,本系統透過 socket 從預設的除錯器 JPDA 獲得程式資料,然後呈現在 3D 的環境當中,以期達到幫助程式設計師易於瞭解程式變數內容及資料結構的目的。
Debugging a complex program may be tedious and difficult. As the size of programs grow, this problem becomes serious. Programmers need effective debugger tools, but current debugging tools are far from their need. Our research uses the techniques of software visualization to visualize the variables and data structures of programs and extends the visualization to a 3D environment to address the scalability problem.
Our system named DIVINE (3D Interactive Visualization Environment for Debugging) concentrates on the integration of visualization tool and debugger. DIVINE can be divided into two parts. One is the debugger and the other is the visualization subsystem. The debugger provides a window-based user interface for users to debug a program. The visualization subsystem provides a meaningful visualization to aid debugging for programs with complex linked-list structure. The visualization subsystem creates and displays the debugging information in a 3D graphic environment. Users can use a data glove to interact with DIVINE. Users need not key in debugging commands in the window-based debugger. They use the data glove with particular gestures and some simple keyboard keys to communicate with the debugger. Through the interactive visualization, programmers can facilitate the debugging process.
[1] E. Adams an S.S. Muchnick, “DBX Tool: A Window-based Symbolic Debugger for Sun Workstations, “ Software Practice and Experience, July 1986, pp.653-669
[2] J.H. Griffin, H.J. Wasserman, and L.P. Mcgavran, “A Debugger for Parallel Process,” Software Practice and Experience, Dec. 1988, pp.1,179-1.190
[3] Thomas G. Moher. “PROVIDE: A process visualization and debugging environment,” IEEE Transactions on Software Engineering, 14(6):849-857, June 1988.
[4] B. Myers, R. Chandhok, and A. Sareen, “Automatic Data Visualization for Novice Pascal Programmers,” IEEE workshop Visual Languages, Oct. 1988, pp. 192-198.
[5] D.P. Pazel, “DS-Viewer: An Interactive Graphical Data-Structure Presentation Facility,” IBM Systems Journal, No. 2, 1989, pp.307-323
[6] S. Isoda, T. Shimomura, and Y. Ono, “VIPS: A Visual Debugger,” IEEE Software, May 1987, pp. 8-19.
[7] S. Isoda, T. Shimomura, “Linked-List Visualization for Debugging,” IEEE Software, May 1991, pp. 44-51.
[8] R. Baecker, With the assistance of Dave Sherman, Sorting out Sorting, 30 minute color sound film, Dynamic Graphic Project, University of Toronto, 1981.
[9] M. Brown, Algorithm Animation, MIT Press, Cambridge MA, 1988.
[10] M. Brown, “ZEUS: A system for algorithm animation and multi-view editing,” Proceedings of the 1991 IEEE Workshop on Visual Languages, Kobe, Japan, October 1991, pp.4-9.
[11] B. Myers, Taxonomies of Visual Programming and Program Visualization. Journal of Visual Languages and Computing, Vol. 1, No. 1, March 1990, pp.97-123.
[12] R. Baecker, A. Marcus, Human Factors and Typography for More Readable Programs, Addison-Wesley, Reading, Massachusetts, 1990.
[13] J. Stasko, J. Wehrli, “Three-dimensional Computation Visualization,” Proceedings of the 1993 IEEE Symposium on Visual Language, Bergen, Norway, August 1993, pp. 100-107
[14] E. Koutsofios, S. North “Drwaing graphs with dot,” dot User’s Manual, February 4 2002
[15] E. R. Gansner, E. Koutsofios, S. North, and Kiem-Phong Vo. “A Technique for Drawing Directed Graphs,” IEEE Trans. Software Eng., 19(3):214-230, May 1993.
[16] J. Stasko, J. Domingue, Marc H. Brown, Blain A. Price, “Software visualization : programming as a multimedia experience,” Cambridge, Mass. : MIT Press, c1998