博碩士論文 100525006 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:15 、訪客IP:3.17.128.129
姓名 洪東昇(Dong-Sheng Hung)  查詢紙本館藏   畢業系所 軟體工程研究所
論文名稱 大型開放原始碼軟體類別改變分佈之探討
(Class Changes Distribution of Large-Scale Open Source Software)
相關論文
★ 以正規表示法為基礎之文字比對機制與於路徑規劃服務之應用★ 於行動裝置上支援網站內容之呈現:以新聞網服務為例
★ 軟體模組化度量之實驗與驗證★ 基於一個擴充Hitz和Montazeri的度量方法模組化原始碼
★ AMRL耦合強度度量方法★ 針對組合IOT服務之BPEL引擎擴充機制
★ 基於BPEL之服務轉接器引擎設計與實作★ 網路能力應用處理器與傳感器介面模組之設計與實作
★ 基於程式碼生成、Java 內容倉庫及虛擬機器之 物聯網設備轉接流程★ 移動代理人監控系統之設計與實作
★ 以正規表式法為基礎之地理編碼服務設計與實作★ Android應用程式開發之持續整合系統
★ 基於設計矩陣之需求追溯關係建立方法★ 點對點移動代理人之設計與實作與於車資通訊之應用
★ 網頁內容叢集分類法之設計與實作★ 設計與實作於行動裝置上以XUL為基礎之介面呈現
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   至系統瀏覽論文 ( 永不開放)
摘要(中) 軟體在其生命週期中會因為新增功能、維護等原因改變。然而物件導向軟體在發生改變之後,其內部類別與類別之間的關係也會隨之改變。既有的研究成果指出了程式碼經過長時間的演變,會發生Code Decay的現象,亦即程式模組化程度愈來愈不明顯。為了瞭解軟體改變的特性,本論文將探討軟體模組之間的互動關係,建立軟體類別演進歷史,並藉由現有的設計原則(Design Principles)與耦合強度量測方法來探討軟體改變的分佈情形。本論文修正既有軟體度量方法的不足,將其與耦合強度度量方法結合,以更細微的角度去觀察軟體的改變。並且以統計的方式來說明軟體改變的現象。
摘要(英) Classes in object-oriented software change dynamically with newly added requirements of bugs-fixing. However, with the evolution of software, code usually ends up with a state, called code decay, which is a result of the problem arising from the modularity inside the software. This thesis builds the change history of software classes, and investigates the distribution of software changes based on existing design principles and coupling strength metrics. The A vs. I graph is adopted in this thesis to observe the changes of software.
關鍵字(中) ★ 軟體品質
★ 軟體設計原則
★ 耦合強度
關鍵字(英) ★ Software Quality
★ Software Design Principle
★ Coupling Strength
論文目次 摘要 i
Abstract ii
誌謝 iii
目錄 iv
圖目錄 v
表目錄 vi
第一章 緒論 1
1.1 引言與動機 1
1.2 目的 2
1.3 論文架構 2
第二章 背景知識介紹 4
2.1 AMRL Coupling Strength Metrics 4
2.2 Extended Hitz and Montazeri’s Coupling Measurement Framework 5
2.3 The Stability Principle (SDP) 6
2.4 The Stable Abstractions Principle (SAP) 8
2.5 Change Management System (Git) 12
第三章 軟體專案演變歷史之追溯與建立 14
3.1 分析開放原始碼專案之版本變更紀錄 14
3.2 建立類別演變歷史與下載程式碼 16
第四章 A-I Metrics之修正與調整 17
4.1 Abstractness Metrics之修正 17
4.2 Stability Metrics之調整 17
第五章 系統設計與實作 20
5.1 系統架構 20
5.2 A-I Evolution Tracker 21
5.3 A-I Calculator 23
5.4 Analysis 24
第六章 案例探討 25
6.1 實驗對象 25
6.2 A vs. I Graph之比較 25
6.3 A-I Distance之平均數與變異數比較 26
6.4 A-I Distance分佈之比較 27
第七章 結論 32
參考文獻 33
參考文獻 [1] J.M. Bieman and B.K. Kang, “Measuring Design-Level Cohesion,” IEEE Transactions on Software Engineering, Vol. 24, No. 2, pp. 111–124, Feb. 1998.
[2] H.S. Chae, Y.R. Kwon, and D.H. Bae, “Improving Cohesion Metrics for Classes by Considering Dependent Instance Variables,” IEEE Transactions on Software Engineering, Vol. 30, No. 11, pp. 826 –832, Nov. 2004.
[3] J.A. Dallala and L.C. Briand, “An Object-Oriented High-Level Design-Based Class Cohesion Metric”, Information and Software Technology, Vol. 52, Issue 12, Pages 1346–1361, Dec. 2010.
[4] W. Stevens, G. Myers, and L. Constantine, “Structured Design,” IBM Systems Journal., Vol. 13, No. 2, pp. 115-139, 1974.
[5] J. Eder, G. Kappel, and M. Schrefl, “Coupling and Cohesion in Object-Oriented Systems,” Technical Report, University of Klagenfurt, 1994.
[6] D. Kaye, “Loosely Coupled: The Missing Pieces of Web Services,” RDS Press, Aug. 2003
[7] R.I. Brafman and C. Domshlak, “From One to Many: Planning for Loosely Coupled Multi-Agent Systems,” Proceedings of the 18th ICAPS, 2008.
[8] R.W. Selby and V.R. Basili, “Analyzing Error-Prone Systems Structure,” IEEE Transactions on Software Engineering, Vol. 17, No. 2, pp. 141-152,1991
[9] P.A. Troy and S.H. Zweben, “Measuring the Quality of Structured Designs,” Journal of Systems and Software, Vol. 2, Issue 2, pp. 113-120, 1981
[10] M. Hitz and B. Montazeri, “Measuring Product Attributes of Object-Oriented Systems,” W. Schöfer and P. Botella, eds., Proceedings of the 5th European Software Eng. Conf., Barcelona, Spain, Sept.1995, Lecture Notes in Computer Science 989, Springer-Verlag,1995.
[11] S.R. Chidamber and C.F. Kemerer, “A Metrics Suite for Object Oriented Design,” IEEE Transactions on Software Engineering,Vol. 20, No. 6, June 1994.
[12] L. Briand, P. Devanbu, and W. Melo, “An Investigation into Coupling Measures for C++,” Proceedings of the 19th International Conference on Software Engineering, Boston, pages 412-421, May 1997
[13] S.S. Yau and J.S. Collofello, “Some Stability Measures for Software Maintenance,” IEEE Transactions on Software Engineering, Vol. 6, No. 6, pp. 545-552, Nov. 1980.
[14] S.G. Eick, T.L. Graves, A.F. Karr, J.S. Marron, and A. Mockus, “Does Code Decay? Assessing the Evidence from Change Management Data,” IEEE Transactions on Software Engineering, Vol. 27, No. 1, pp. 1–12, Jan. 2001.
[15] The CVS Team, “Concurrent Versions System,” http://savannah.nongnu.org/projects/cvs
[16] Apache Software Foundation, “Apache Subversion,” http://subversion.apache.org/
[17] Linus Torvalds, “Git,” http://git-scm.com/
[18] R.C. Martin, “Design principles and design patterns,” Object Mentor: 1-34, 2000
[19] 洪培元,”量測 Java 類別的耦合關係; Measuring Coupling Relationships among Java Classes”,國立中央大學碩士論文,2012
[20] 陳石佳,”AMRL耦合強度度量方法; AMRL Coupling Strength Metrics”,國立中央大學碩士論文,2013
[21] M. Hitz and B. Montazeri, “Measuring coupling and cohesion in object-oriented systems,” Proceedings of the International Symposium on Applied Corporate Computing, Vol. 50. 1995.
指導教授 李允中(Jonathan Lee) 審核日期 2013-7-18
推文 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聯絡  - 隱私權政策聲明