博碩士論文 105522132 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:34 、訪客IP:3.145.91.121
姓名 鄭兆廷(Chao-Ting Cheng)  查詢紙本館藏   畢業系所 資訊工程學系
論文名稱
(Applying Visualization in Golden Case Debugging by xDIVA)
相關論文
★ 使用PolyTraceAid進行程式文件覆蓋率計算與分群★ Support Visual Debugging in Electronic Design Automation Software by xDIVA
★ 設計與實作視覺化追蹤點以支援xDIVA進行程式動畫★ Combine Internal Test Oracles and Capture/Replay GUI Testing for Precise Replay and Higher Validation Power
★ Dissimilarity of Polymorphic Execution Sequences★ The Analysis of Capturing System Test Cases into Unit Test Cases
★ 動態延遲載入的測試覆蓋率★ 建構於JMeter之自動化分散式壓力測試架構
★ 模組化因修改具耦合的程式碼所伴隨的成本漣漪★ Design a Pluggable Architecture for Layout Algorithms in xDIVA
★ 重複性程式碼檢測之外掛模組設計★ Visual Perception of Realistic Rendering in xDiva 3D Environment
★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem★ Why and When GUI Test Automation Fails in Practice and Our Solutions to The Problem
★ Very High Precision Optical Character Recognition For Clean-Fixed-Sized True Type Characters★ Enhance Korat by Branch Capability in Capture/Replay User Scenario to Industrial Test Case Automation
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   [檢視]  [下載]
  1. 本電子論文使用權限為同意立即開放。
  2. 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
  3. 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。

摘要(中) Golden Case Debugging情境為一種軟體開發和除錯後正確性驗證的方式之一。這種除錯情境通常會發生在已有穩定的軟體版本 (Golden Case) 中,但是軟體卻必須面對持續的功能擴充與演化。除錯時會使用相同的輸入資料,分別輸入一個穩定運作版本的軟體,以及正在開發或除錯中的軟體版本,藉由比對兩版本之間的執行結果資訊,來以人工的方式進行判定,開發中的軟體版本是否被正確實作或錯誤被完整修正。這種除錯情境在尤其在進行Electronic Design Automation [1] (EDA) 系列軟體的開發和除錯時經常被使用,這一類的軟體通常規模大且複雜,面臨許多維護與擴充上的軟體工程問題。
  EDA為一系列輔助設計積體電路開發的軟體。EDA系列軟體的程式設計師在進行相關功能開發及錯誤修正時,經常會處理大量儲存著電子元件相關形狀的polygon資料結構,在傳統的Debugger文字呈現下進行這類的資料結構除錯並不是件很直觀的事情。這個部分EDA系列軟體的程式設計師能夠透過xDIVA [2]來進行視覺化對應,將polygon資料結構呈現於 3D空間中協助程式設計師開發與除錯。
  本論文提出針對xDIVA功能進行擴充,來嘗試支援Golden Case Debugging情境。程式設計師能夠捕捉不同軟體版本間特定執行時期的資料,透過xDIVA視覺化後於 3D空間中同時呈現。並且能根據軟體內不同的除錯情境,使用視覺化差異比較功能,以直觀的方式來突顯出不同執行結果中的相異之處,來加速程式設計師在面對大量且複雜的資料除錯時,能更快速且更直覺地發現軟體內的錯誤。
摘要(英) Golden Case Debugging scenario is one of the software debugging method to verify the correctness in software development and debugging. This scenario usually happens in a software which it has a stable version (Golden Case) and faces feature extend and improve continuously. This method tests a developing version software with stable version software. Two software version inputs the same data and observe output of two versions manually to see the developing version being tested whether correctly implemented or debugged. Golden Case Debugging is frequently being used in the Electronic Design Automation [1] (EDA) software series.

EDA series software faces many software engineering problem including maintenance and expansion. Because the software scale is very massive and complex.
EDA series software are designed to assist hardware engineer to design more and more complex Integrated Circuit. EDA series software programmer will encounter large amount of polygon data where it contains the shape, size and location related data inside data structure. EDA software programmer can benefit from xDIVA [2] to visualize these data, mapping them to the 3D space to help programmer get better understanding and assist the debugging process.

In this thesis, we propose to enhance the function of xDIVA to support Golden Case Debugging. Programmer can use it to capture the software states in a specific runtime between different software version, then visualize them in xDIVA 3D space to see the difference between two states. Also we analyzed several different case of visualized data structure by xDIVA. To provide the comparison function for show the difference between visualization result. Programmer can benefit from these feature to find error inside software contains complex data structure quickly.
關鍵字(中) ★ 除錯
★ 視覺化
關鍵字(英)
論文目次 摘 要 i
Abstract ii
圖目錄 v
表目錄 viii
一、緒論 1
二、研究背景與相關研究 4
2-1 Golden Implementation Driven Software Debugging 4
2-2 xDIVA 5
2-2-1 GdbPlugin 6
2-1-2 xDIVA Console 8
2-2-3 TypeMappingDialog 10
2-2-4 Evaluator 13
2-2-5 Viewer 14
三、Golden Case Debugging使用情境 16
3-1 Synopsys試用回饋 16
3-2 EDA系列軟體進行Golden Case Debugging 17
3-3 以xDIVA進行Golden Case Debugging 20
3-4 透過xDIVA進行視覺化差異比較的呈現 24
四、常見的資料比對方式 26
4-1 單純資料比對 26
4-2 透過設計自訂規則進行的資料比對 27
五、xDIVA系統分析 30
5-1 TypeMappingDialog 30
5-2 Evaluator 32
5-3 Viewer 33
六、需求分析與系統設計 35
6-1 客製化差異比較需求分析 35
6-1-1 Relation-sensitive Case 35
6-1-2 Position-sensitive Case 36
6-2 系統設計與實作 38
6-2-1 支援捕捉與顯示軟體不同執行時期間之視覺化結果 38
6-2-2 支援Viewer視覺化差異比較功能 40
七、結果評估 44
7-1 VM attribute Compare 44
7-2 Relation-sensitive Case Compare 46
7-3 Position-sensitive Case Compare 49
7-4 Polygon Difference Compare 51
八、結論與未來展望 55
九、參考資料 56
參考文獻 [1] "Electronic design automation," [Online]. Available: https://en.wikipedia.org/wiki/Electronic_design_automation. [Accessed 25 Dec. 2018].
[2] Y. Cheng, C. Ku, W. Pan, C. Yang and T. Lin, "Toward Arbitrary Mapping for Debugging Visualizations," in 2016 IEEE/ACM 38th International Conference on Software Engineering Companion (ICSE-C), Austin, TX, USA, 2016.
[3] A. Banerjee, A. Roychoudhury, J. A. Harlie, and Z. Liang, "Golden implementation driven software debugging," in Proceedings of the eighteenth ACM SIGSOFT international symposium on Foundations of software engineering, Santa Fe, New Mexico, USA, 2010.
[4] J. B. Rosenberg, How Debuggers Work: Algorithms, Data Structures, and Architecture, John Wiley & Sons, 1996.
[5] "GDB: The GNU Project Debugger," [Online]. Available: https://www.gnu.org/software/gdb/. [Accessed 25 Dec. 2018].
[6] "JSON," [Online]. Available: https://json.org/. [Accessed 25 Dec. 2018].
[7] W. Hsu, "Virtual Objects for Program Visualization in xDIVA," M.S. thesis, Dept. Comput. Sci. and Inform. Eng., National Central University., Taoyuan, Taiwan, 2017.
[8] Y.-P. Cheng, J.-F. Chen, M.-C. Chiu, N.-W. Lai and C.-C. Tseng, "xDIVA: A Debugging Visualization System with Composable Visualization Metaphors," in 23rd ACM SIGPLAN Conference on Object-oriented Programming Systems Languages and Applications, Nashville, TN, USA, 2008.
[9] "Visual programming language," [Online]. Available: https://en.wikipedia.org/wiki/Visual_programming_language. [Accessed 25 Dec. 2018].
[10] A. I. Davis and M. R. Keller, "Data Flow Program Graphs," Computer, vol. 15, no. 2, pp. 26-41, Feb. 1982.
[11] Unity. [Online]. Available: https://unity3d.com/. [Accessed 25 Dec. 2018].
[12] S. M. Rubin, Computer Aids for VLSI Design, Boston, MA, USA: Addison-Wesley, 1987.
[13] "Open Artwork System Interchange Standard," [Online]. Available: https://en.wikipedia.org/wiki/Open_Artwork_System_Interchange_Standard. [Accessed 25 Dec. 2018].
[14] "OwlVision GDSII Viewer," [Online]. Available: http://www.owlvision.org/. [Accessed 25 Dec. 2018].
[15] "IC WorkBench Edit/View Plus," [Online]. Available: https://www.synopsys.com/silicon/mask-synthesis/ic-workbench-editview-plus.html. [Accessed 25 Dec. 2018].
[16] H. Liu, "Support Visual Debugging in Electronic Design Automation Software by xDIVA," M.S. thesis, Dept. Comput. Sci. and Inform. Eng., National Central University., Taoyuan, Taiwan, 2012.
[17] "Diffutils," [Online]. Available: https://www.gnu.org/software/diffutils/. [Accessed 25 Dec. 2018].
[18] "fc," [Online]. Available: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/fc. [Accessed 25 Dec. 2018].
[19] "Objects (Java Platform SE 8 )," [Online]. Available: https://docs.oracle.com/javase/8/docs/api/java/util/Objects.html. [Accessed 25 Dec. 2018].
[20] T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein, Introduction to Algorithms, 3rd ed., The MIT Press, 2009.
[21] E. F. Moore, "The shortest path through a maze," in In Proceedings of the International Symposium on the Theory of Switching, 1959.
[22] Y. Tsai, "Design a Pluggable Architecture for Layout Algorithms in xDIVA," M.S. thesis, Dept. Comput. Sci. and Inform. Eng., National Central University., Taoyuan, Taiwan, 2015.
[23] "Boolean operations on polygons," [Online]. Available: https://en.wikipedia.org/wiki/Boolean_operations_on_polygons. [Accessed 25 Dec. 2018].
[24] B. R. Vatti, "A generic solution to polygon clipping," Communications of the ACM, vol. 35, no. 7, pp. 56-63, 1992.
[25] G. Greiner and K. Hormann, "Efficient Clipping of Arbitrary Polygons," ACM Transactions on Graphics, vol. 17, no. 2, pp. 71-83, Apr. 1998.
[26] "Clipper - an open source freeware polygon clipping library," [Online]. Available: http://www.angusj.com/delphi/clipper.php. [Accessed 25 Dec. 2018].
[27] "GPC General Polygon Clipper library from The University of Manchester," [Online]. Available: http://www.cs.man.ac.uk/~toby/alan/software/. [Accessed 25 Dec. 2018].
[28] D. H. Laidlaw, B. W. Trumbore and J. F. Hughes, "Constructive Solid Geometry for Polyhedral Objects," in Proceedings of the 13th Annual Conference on Computer Graphics and Interactive Techniques, Dallas, TX, USA, 1986.
[29] The CGAL Project, CGAL User and Reference Manual, 4.13 ed., CGAL Editorial Board, 2018.
[30] A. Jacobson and D. Panozzo, "libigl: Prototyping Geometry Processing Research in C++," in SIGGRAPH Asia 2017 Courses, Bangkok, Thailand, 2018.
指導教授 鄭永斌 審核日期 2019-1-8
推文 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聯絡  - 隱私權政策聲明