博碩士論文 104525004 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:62 、訪客IP:52.15.158.238
姓名 徐偉哲(Wei-Jhe Syu)  查詢紙本館藏   畢業系所 軟體工程研究所
論文名稱
(Virtual Objects for Program Visualization in xDIVA)
相關論文
★ CRUnit - Capture / Replay Based Unit Testing★ Locating Interested Code by Program Execution Paths with Debugger
★ An OpenStack Based Testing as a Service Platform★ Visualize Ripple Effect with Analyzing Object-Oriented Design Relationship
★ Change History Tracing Tool for Arbitrary Programming Language★ Enhance Stress Testing Power by Synchronizing JMeter Test Scripts
★ 以 GDB 實作 XThreadDebugger-Linux(XTD-Linux)提供 Linux 平台之多執行緒除錯★ 支援版本控制系統之文件撰寫工具
★ Korat: An O.S.-independent Capture/Replay Test Automation System★ GUI Component Detection for Cross-Platform Applications–Using Input Device and Image Change Synergistic Detection Method
★ 應用設計模式於 RPA 軟體 實作低維護成本的屬性面板自動修正功能★ 使用靜態分析偵測 JavaScript 應用程式中的 Race Condition
★ 基於物件導向與 Clean Code 概念進行 xDiva 重構與優化★ 基於xDIVA之利用關鍵影格將3D物件動畫化與即時保存的視覺化工具
★ Time capsules of code: 使用穿越時空的訊息來解決程式碼 註解的弊病★ 文件彙整自動化: 在創新文件系統 Geekynote 為專案製作心智圖
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   [檢視]  [下載]
  1. 本電子論文使用權限為同意立即開放。
  2. 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
  3. 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。

摘要(中) 一般而言,我們想要解決一個問題的方法有很多種,然而在程式設計的世界裡,也是一樣的。程式設計師想要寫一個程式來達成某種目的,自然而然寫法就有千百種。所以如果要對程式碼進行視覺化,一個問題的視覺化呈現可能就只有一種,但是程式實作的方法可能有很多種並且資料結構的差異也很大。
本實驗室的程式3D視覺化工具xDIVA是基於物件來產生視覺化的結果,所以當程式碼撰寫的方式非常不物件導向的情況下,程式設計師所要繪製的圖形不存在於真正的物件,而是以其他形式表達,xDIVA可能無法呈現程式設計師心中所想要的視覺化結果。
作為一個程式視覺化工具,xDIVA不能要求程式設計師要以某種限制來撰寫程式碼,才能進行視覺化。所以本研究提出了Virtual Object的解決方案。藉由此功能,讓使用xDIVA的程式設計師能夠輕輕鬆鬆地產生出不存在於程式碼中的物件,如此一來,就能對這些虛擬物件進行視覺化,來完成其心中所期望的視覺化結果。
摘要(英)
In general, there are many ways to solve a problem. It is the same in the world of programming. Programmers may want to write a program to solve a problem, but there are many kinds of implementation. Therefore, if we want to visualize a problem, there may be only one visualization of a program, but the implementations and data structures can vary significantly.
The 3D program visualization tool xDIVA in our lab is based on objects to produce visualizations. If the code is written in a way that is not object-oriented, xDIVA may not be able to render the visualization expected by the programmer. Because the graphics that the programmer wants to draw are expressed in other forms. Instead of the real objects.
As a program visualization tool, xDIVA cannot limit programmers to write code in some fixed way to be visualized. So this study presents a solution called virtual objects. With this feature, programmers can produce objects from existing variables for xDIVA′s type mapping to work on. These virtual objects can be used to bridge non-object-oriented programs so that expected visualization can be accomplished.
關鍵字(中) ★ 虛擬物件
★ 視覺化
★ 除錯器
關鍵字(英)
論文目次
摘要 i
Abstract ii
誌謝 iii
目錄 iv
圖目錄 vi
一、緒論 1
1.1 問題背景 1
1.2 問題描述 2
二、研究背景 5
2.1 Software Visualization 5
2.2 Program Visualization 5
2.3 xDIVA Introduction 7
2.3.1 GdbPlugin 7
2.3.2 xDIVA 9
2.3.3 TypeMappingDialog 12
2.3.4 Evaluator 13
2.3.5 Viewer 14
三、From Implementations to Visualizations 15
3.1 Base on xDIVA’s visualization 16
四、Virtual Objects for Visualization 19
4.1 An example of Creating Virtual Objects 19
4.2 Type File 23
4.3 Permutator 25
五、Evaluation for Virtual Object in xDIVA 27
5.1 Example - Queue 27
5.2 Example - Graph Edge Matrix 29
5.3 Example - Flood Fill Algorithm 36
5.4 Summary 41
六、結論與未來展望 43
參考文獻 44
參考文獻
[1] Cheng, Y.-P., et al. (2016). Toward Arbitrary Mapping for Debugging Visualizations. 2016 IEEE/ACM 38th IEEE International Conference on Software Engineering Companion. Austin, TX, USA, IEEE: 605-608.
[2] Cheng, Y.-P., et al. (2008). xDIVA: a debugging visualization system with composable visualization metaphors. Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications. Nashville, TN, USA, ACM: 807-810.
[3] Rosenberg, J.B., How Debuggers Work: Algorithms, Data Structures, and Architecture. 1 ed,John Wiley & Sons, 1996-09-27
[4] Unified Modeling Language. [cited 2012 06/21]; Available from: http://en.wikipedia.org/wiki/Unified_Modeling_Language.
[5] S. P. Reiss, An Overview of BLOOM, Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering PASTE ′01,2001
[6] Paul V. Gestwicki and Bharat Jayaraman. Methodology and architecture of jive. In SOFTVIS, pages 95–104, 2005.
[7] Jeffrey K. Czyz, Bharat Jayaraman. Declarative and Visual Debugging in Eclipse. In Proceedings of the 2007 OOPSLA Workshop on Eclipse Technology Exchange, pages 31–35, 2007.
[8] Wim De Pauw, Erik Jensen, Nick Mitchell, Visualization the Execution of Java Programs, IBM T.J. Watson Research Center
[9] Katharina Mehner. Javis: A uml-based visualization and debugging environment for concurrent java programs. In Software Visualization, pages 163–175, 2001.
[10] The complete collection of algorithm animation. [cited 2012 06/15]; Available from: http://www.cs.hope.edu/alganim/ccaa/index.html.
[11] The Data Display Debugger (DDD). [cited 2012 06/15]; Available from: http://www.gnu.org/software/ddd/.
[12] Liou, H.-W. (2013). Support Visual Debugging in Electronic Design Automation Software by xDIVA.
[13] "Introducing JSON." from http://www.json.org/.
[14] "Python." from https://www.python.org/.
[15] "Traveling_salesman_problems." from https://optimization.mccormick.northwestern.edu/index.php/Traveling_salesman_problems.
[16] "Visual programming language." from https://en.wikipedia.org/wiki/Visual_programming_language.
[17] "Flood Fill Algorithm." from http://www.csie.ntnu.edu.tw/~u91029/AlgorithmDesign.html.
指導教授 鄭永斌(Yung-Pin Cheng) 審核日期 2017-7-3
推文 facebook   plurk   twitter   funp   google   live   udn   HD   myshare   reddit   netvibes   friend   youpush   delicious   baidu   
網路書籤 Google bookmarks   del.icio.us   hemidemi   myshare   

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明