透過您的圖書館登入
IP:3.147.36.213
  • 學位論文

在DIVA中聚焦之基本型VM以及參照型VM之設計與實作

The Design and Implementation of Object and Reference Visualization Metaphor with Focus

指導教授 : 鄭永斌教授
若您是本文的作者,可授權文章由華藝線上圖書館中協助推廣。

摘要


隨著程式的複雜化,一般傳統的除錯方法對於程式設計師的幫助有限,因此除錯器的開發對於程式設計而言,變的越來越不可或缺。然而目前的除錯器大部份仍止於文字階段,在於表現變數內容方面或許勉強可行,但對於呈現出複雜的資料結構或程式執行的變化等,卻無法直觀的來了解。程式人員仍須經過一翻整理之後才能從中獲取資訊。 為了提供程式設計師能夠快速的從除錯器中獲取除錯的資訊,本實驗室提供了一個視覺化的3D除錯器工具-DIVA (Debugging Information Visualization Assistant),結合了另一套本實驗室開發的除錯器-YaJDB,可針對Java程式做視覺化的除錯,以及呈現出最即時的動態除錯資訊給程式設計師使用。 能夠視覺化任意的程式行為是極為困難的。針對這個難題,DIVA將視覺化隱喻(visualization metaphor, VM)與其呈現的資料做某種隔離。本論文並將視覺化隱喻分成基本五大類。廣義視覺化的困然將由這幾大類的排列組合,逐步的獲得解決。在這篇論文中,我們將扮演視覺化隱喻設計師(VM programmer)的角色,來設計與實作其中三種的視覺化隱喻,並加入了以動態方式來呈現的想法。

並列摘要


Because of the increase in complexity of software programs, debugging without help from tools is no longer adequate. Therefore, debugger has become an important tool in programmer’s everyday life. However, debuggers nowadays only show the debugging information in textual form. It may be adequate for showing the value of variables, but it can’t actually show the information of complex data structure or the changes during between break points. To provide a debugger to address the problem, we develop a 3D visualization debugging tool-DIVA (Debugging Information Visualization Assistant) which combines a debugger, YaJDB. The DIVA can debug JAVA program visually and shows the instantaneous debugging information for programmer. To visualize arbitrary programs is a difficult and challenging objective. In this thesis, we propose an object-oriented framework which can separate visualization metaphor (VM) programming from visualization system. An important contribution of this thesis is classifying VM into five basic types and new VMs can be composed from the VMs of these five types. Three very basic VMs have been implemented to demonstrate the effectiveness of DIVA design.

參考文獻


[5] S. Mukherjea and J. T. Stasko, Applying algorithm animation techniques for program tracing, debugging, and understanding, May 1993.
[7] B. A. Price, R. M. Baecker and I. S. Small, A Principled Taxonomy of Software Visualization, Journal of Visual Languages and Computing 4(3), September 1993, p211-266.
[8] Gruia-Catalin Roman and Kenneth C. Cox , A Taxonomy of Program Visualization Systems , December 1993.
[14] Steven P. Reiss, Manos Renieris, The BLOOM Software Visualization System, May 3, 2002.
[15] John Ellson, Emden R. Gansner, Eleftherios Koutsofios, Stephen C. North, and Gordon Woodhull, Graphviz and Dynagraph – Static and Dynamic Graph Drawing Tools, Graph Drawing Software, 2003.

延伸閱讀