跳到主要內容

臺灣博碩士論文加值系統

(216.73.216.176) 您好!臺灣時間:2025/09/08 07:11
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

我願授權國圖
: 
twitterline
研究生:林猷翔
研究生(外文):Yu-Hsiang Lin
論文名稱:延伸個人軟體程序支援測試流程資料收集與分析
論文名稱(外文):Extending the Personal Software Process to Support Data Collection and Analysis for Unit Testing Process
指導教授:劉建宏劉建宏引用關係
口試委員:郭忠義薛念林
口試日期:2009-01-16
學位類別:碩士
校院名稱:國立臺北科技大學
系所名稱:資訊工程系研究所
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2009
畢業學年度:97
語文別:中文
論文頁數:113
中文關鍵詞:單元測試個人軟體程序測試流程
外文關鍵詞:Unit TestPersonal Software ProcessTest Process
相關次數:
  • 被引用被引用:0
  • 點閱點閱:244
  • 評分評分:
  • 下載下載:0
  • 收藏至我的研究室書目清單書目收藏:0
近年來,單元測試(unit testing)工具的普及與對軟體品質(quality)的注重,使得單元測試日益受到重視,許多公司也都在軟體開發流程中加重單元測試的比例,藉此提高產品的品質。然而,對於單元測試工作成效的評估,包含其對開發成本和程式品質的影響,相關的探討目前仍不多。本論文延伸個人軟體程序(Personal Software Process, PSP),針對單元測試階段,探討需要收集追蹤的流程資料,並提出相關的分析圖表來協助開發人員了解和評估其單元測試的能力,以及單元測試對個人軟體開發程序的影響。個人軟體程序被視為一個能有效改善開發人員其軟體流程的重要方法,可提昇軟體品質與生產力(productivity)。然而個人軟體程序中並未對單元測試流程多加著墨,本論文將個人軟體程序中的單元測試階段細分為不同的工作,並收集相關的流程資料,如測試碼的大小、測試案例數目、測試開發時間等,且針對這些資料產生相關分析圖表,如測試碼與產品碼大小比例圖、流程階段時間比例圖、專案缺陷分布圖等。開發人員可藉由這些收集的資料與分析圖表了解其個人單元測試設計的能力,並可作為改善其單元測試流程的參考。此外,我們亦開發一個支援單元測試流程資料收集與分析的個人軟體程序輔助工具,可以減輕開發人員資料收集的負擔並協助其了解和改善流程與單元測試能力。
In recent year, the diffusion of the Unit testing tool and the respect to the software quality makes the Unit Test more and more important. Most organizations also add the Unit Test process to the software development process, and use it to make the software product get better quality. However, the research about the estimation of the Unit Test and its influence to the Cost and product quality are not too many. Our research extends the Personal Software Process (PSP) to discuss the process data which we need to trace and collect in the Unit Test process phase, and propose some analysis graph to assist programmers to understand and evaluate their probability for Unit Test. Personal Software Process is a skill for improving process and which is proposed by Watts S. Humphrey who is a professor of Carnegie Mellon University, Software Engineering Institute. PSP uses skills like planning, measurement, analyzes and tracing to improve programmer’s personal software developing process.
摘 要 i
ABSTRACT ii
目 錄 iii
表目錄 v
圖目錄 vi
第一章 緒論 1
1.1 研究動機 1
1.2 研究目的 2
1.3 研究方法 3
1.4 論文組織架構 3
第二章 個人軟體程序背景與相關研究 4
2.1 個人軟體程序 4
2.1.1 個人軟體程序階層 5
2.1.2 個人軟體程序流程 10
2.1.3 個人軟體程序資料收集 12
2.1.4 個人軟體程序資料分析 16
2.2.1 PSPA 22
2.2.2 Jasmine 23
2.2.3 Hackystat 25
2.2.4 PSP Studio 26
2.2.5 PSP Process Dashboard 27
2.2.6 GESIP 28
2.2.7 DuoTracker 29
2.2.8 PSPT 30
第三章 測試流程之建立和資料收集與分析 32
3.1 定義測試流程 32
3.1.1 單元測試流程階段 33
3.1.2 手動測試流程階段 36
3.1.3 延伸測試流程 39
3.1.4 測量並改善測試 41
3.2 測試流程資料收集 41
3.2.1 測試碼資料收集 41
3.2.2 測試時間資料收集 43
3.2.3 測試缺陷資料收集 49
3.3 測試流程資料分析 49
3.3.1 單元測試流程資料分析彙整報表 49
3.3.2 測試流程資料分析 61
第四章 PSP流程資料收集與分析之設計 67
4.1 個人軟體程序軟體開發流程設計 67
4.1.1 手動模式 68
4.1.2 自動模式 73
4.1.3 半自動模式 76
4.2 個人軟體程序流程資料收集設計 81
4.2.1 程式碼資料收集設計 81
4.2.2 時間資料收集設計 82
4.2.3 缺陷資料收集設計 84
4.3 個人軟體程序流程資料分析設計 84
4.3.1 單元測試流程資料彙整分析報表分析設計 84
4.3.2 單元測試流程資料分析表分析設計 87
第五章 系統架構與設計 90
5.1 系統架構 90
5.2 子系統架構設計 91
5.2.1 外掛程式子系統 91
5.2.2 資料收集子系統 93
5.2.3 資料分析子系統 96
5.2.4 資料管理子系統 97
第六章 系統成果展示與討論 99
6.1 工具實作與畫面展示 99
6.2 工具限制 107
6.3 PSPT個人軟體程序流程支援程度 107
6.4 PSPT工具操作說明 109
第七章 結論與未來研究方向 110
7.1 結論 110
7.2 未來研究方向 111
參考文獻 113
[1] JUnit, http://www.junit.org/
[2] CPPUnit, http://sourceforge.net/projects/cppunit
[3] Kent Beck, Test Driven Development: By Example, Addison Wesley, 2002.
[4] Carnegie Mellon University, Software Engineering Institute. http://www.sei.cmu.edu/
[5] Watts S. Humphrey, A Discipline for Software Engineering, Addison Wesley, 1995.
[6] Watts S. Humphrey, “Using A Defined and Measured Personal Software Process,” IEEE Software, vol. 13, no. 3, 1996, pp. 77-88.
[7] Personal Software Process (PSP). http://www.sei.cmu.edu/tsp/psp.html
[8] Watts S. Humphrey, “The Personal Process in Software Engineering,” In Proceedings of the 3rd International Conference on the Software Process, 1994, pp. 69-77.
[9] Per Runeson and Anneliese Andrews, “Detection or Isolation of Defects? An Experimental Comparison of Unit Testing and Code Inspection,” Proceedings of the 14th International Symposium on Software Reliability Engineering, 2003, pp. 3-13.
[10] Richard Hamlet, “Unit Testing for Software Assurance,” Proceedings of the 14th International Symposium on Software Reliability Engineering, Jun, 1989, pp. 42-28.
[11] Yuyu Yuan and Pingping Qu, “Theoretical Study of the Personal Capability Improvement in Unit Test,” Proceedings of the 5th International Conference on Cognitive Informatics(ICCI’06),Vol. 1, No. 17-19 2006, pp. 155-162.
[12] Will Hayes, “Using a Personal Software ProcessSM to Improve Performance,” Proceedings of the 5th International Symposium on Software Metrics, 1998, pp. 61-71.
[13] John McAlpin and Jiang B. Liu, “Experiencing Disciplined Software Engineering at the Personal Level,” No.17-19, 1995, pp. 124-127.
[14] Philip M. Johnson and Anne M. Disney, “The Personal Software Process: A Cautionary Case Study,” IEEE Software, vol. 15, Issue 6, 1998, pp. 85-88.
[15] Jagadish Kamatar and Will Hays, “An Experience Report on the Personal Software Process,” IEEE Software, vol. 17, Issue 6, 2000, pp. 85-89.
[16] Lutz Prechelt and Barbara, “An Experiment Measuring the Effects of Personal Software Process (PSP) Training,” Proceedings of the IEEE Transactions on SoftwareEngineering, vol. 27, No. 5, 2000, pp. 465-472.
[17] Iñaki Etxaniz, “Software Project Improvement through Personal Software Process in a R&D Center,” Proceedings of the International Conference on “Computer as a Tool”, 2007, pp. 413-418.
[18] Eclipse, http://www.eclipse.org/
[19] Hackystat, http://code.google.com/p/hackystat/
[20] Philip M. John, Hongbing Kou, Joy Agustin, Christopher Chan,Carleton Moore, Jitender Miglani, Shenyan Zhen, and William E.J. Doane, "Beyond the Personal Software Process: Metrics collection and analysis for the differently disciplined," Proceedings of the 25th International Conference on Software Engineering(ICSE’03), 2003, pp. 641-646.
[21] R. Sison, D. Diaz, E. Lam, D. Navarro, and J. Navarro, “Personal Software Process (PSP) Assistant,” Proceedings of the 12th Asia-Pacific Software Engineering Conference, 2005, pp. 687-696.
[22] Process Dashboard, http://processdash.sourceforge.net/
[23] PSP Studio, http://csciwww.etsu.edu/psp/
[24] Hyunil Shin, Ho-Jin Choi, and Jongmoon Baik, “Jasmine: A PSP Supporting Tool,” Lecture Notes in Computer Science, Vol. 4470, 2007, pp. 73-83.
[25] 黃裕鈞, 個人軟體程序量測與分析工具之設計與實現,碩士論文,國立台北科技大學資訊工程研究所,台北,2007。
[26] Olusegun Akinwale, Sergiu Dascalu, and Marcel Karam, “DuoTeacker: Tool Support for Software Defect Data Collection and Analysis”Proceedings of the International Conference on Software Engineering Advance, 2006, pp. 22-26.
[27] MySQL, http://www.mysql.com/
[28] XML, http://www.xml.org/
[29] Jupiter, http://www.daqtron.com/jupiter.php
[30] Roger S. Pressman, Software Engirneering: A Practitioner’s Approach, Addison McGraw-Hill international Edtions, 2005.
[31] Erich Gama, Ralph Johnson, Richard Helm, and John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison Wesley, 1994.
[32] JFreeChart, http://www.jfree.org/jfreechart/
[33] JAXB, https://jaxb.dev.java.net/
[34] TSP, http://www.sei.cmu.edu/publications/documents/00.reports/00tr023.html
電子全文 電子全文(本篇電子全文限研究生所屬學校校內系統及IP範圍內開放)
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top