姓名 |
鄭聖翰(Shenghan Cheng)
查詢紙本館藏 |
畢業系所 |
軟體工程研究所 |
論文名稱 |
基於一個擴充Hitz和Montazeri的度量方法模組化原始碼 (Code Modularization based on Extended Hitz and Montazeri’s Metrics)
|
相關論文 | |
檔案 |
[Endnote RIS 格式]
[Bibtex 格式]
[相關文章] [文章引用] [完整記錄] [館藏目錄] 至系統瀏覽論文 ( 永不開放)
|
摘要(中) |
軟體經過長時間的演進,常需要為了增加新功能亦或是修正程式的錯誤,而不斷的修改程式碼。而毫無設計的隨意修改將會造成類別間互動更為複雜,導致程式碼的修改卻變得越來越困難,最後程式模組化會逐漸消失而成為一團程式碼。
但在軟體開發中如何模組化類別(Class),卻是一件令人困擾的事情。因此本篇提出利用擴充 Hitz 和 Montazeri 的度量方法來模組化程式碼,用於建議開發者如何模組化程式碼,以符合模組內高內聚力(Coefficient)、模組間低耦合力(Coupling)的原則,進而將未來因改變而依賴的改變限制在建議的模組(Package)內。 |
摘要(英) |
Software usually is modified for adding new functionality or fixing bug in software evolution. Class interaction will be complex if modify it with incorrect design and then modify it will be difficult. Finally software modularity will be destroyed in this situation.
Software modularization is annoying in software development for developers. We propose the code modularization approach based on Extended Hitz and Montazeri’s Metrics to suggest developers how to modularize their software. This suggested modularization follow low coupling and high coefficient Principle in package. So we can limit the change dependent change causing in the suggested modularization. |
關鍵字(中) |
★ 原始碼模組化 ★ 軟體度量 |
關鍵字(英) |
★ Code Modularization ★ Software Metric |
論文目次 |
第 1 章 緒論 ............................................................................................................................. 1
第1節 動機 ......................................................................................................................... 1
第2節 目的 ......................................................................................................................... 1
第3節 論文架構 ................................................................................................................. 2
第2章 背景知識介紹 ............................................................................................................. 3
第1節 Extended Hitz and Montazeri’s metrics ..................................................... 3
第2節 K-NN(K-nearest neighbors) Algorithm ........................................................... 5
第3節 Pairwise Comparison ........................................................................................... 5
第4節 Lorenz curve and Gini Coefficient ............................................................... 6
第5節 JAVA Compiler API ............................................................................................... 7
第6節 Change Management System (Git) ..................................................................... 8
第3章 實驗方法 ................................................................................................................... 10
第1節 步驟一 ................................................................................................................... 11
第2節 步驟二 ................................................................................................................... 12
第3節 步驟三 ................................................................................................................... 15
第4節 步驟四 ................................................................................................................... 22
第4章 設計與實作 ............................................................................................................... 27
第1節 Large-Scale Open Source Software Analysis Framework Architecture 27
第2節 Code Parser Class Diagram ............................................................................. 28
第5章 成果展示 ................................................................................................................... 29
第6章 結論 ........................................................................................................................... 36
第7章 參考文獻 ................................................................................................................... 37 |
參考文獻 |
1. 洪培元。量測 Java 類別的耦合關係。國立中央大學, 資訊工程學系, 碩士論文, 2012。
2. Hitz Martin, and Behzad Montazeri. Measuring coupling and cohesion in object-oriented systems. Proceedings of the International Symposium on Applied Corporate Computing. Vol. 50. 1995.
3. Roussopoulos, Nick, Stephen Kelley, and Frédéric Vincent. Nearest neighbor queries. ACM sigmod record 24.2 (1995): 71-79.
4. Thurstone, Louis L. A law of comparative judgment. Psychological review 34.4 (1927): 273.
5. J.L. Gastwirth, The Estimation of the Lorenz Curve and Gini Index, The Review of Economics and Statistics, Vol. 54, No. 3, pp. 306-316, Aug. 1972.
6. "The Java™ Programming Language Compiler,javac." Oracle Java SE Documentation. Oracle, n.d. Web. 20 June 2013.
7. The Java Language Specification, Java SE 7 Edition, http://docs.oracle.com/javase/specs/jls/se7/html/index.html
8. Linus Torvalds, Git, http://git-scm.com/
9. Pilone, Dan, and Neil Pitman. UML 2.0 in a Nutshell. O’Reilly Media, 2007. |
指導教授 |
李允中(Jonathan Lee)
|
審核日期 |
2013-7-25 |
推文 |
facebook plurk twitter funp google live udn HD myshare reddit netvibes friend youpush delicious baidu
|
網路書籤 |
Google bookmarks del.icio.us hemidemi myshare
|