跳到主要內容

臺灣博碩士論文加值系統

(216.73.217.103) 您好!臺灣時間:2026/06/01 07:07
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

我願授權國圖
: 
twitterline
研究生:簡添福
論文名稱:以資訊理論為基礎的軟體產品複雜度評估系統之研究與建置
論文名稱(外文):A Study and Implementation in Software Product Complexity Measurement Based on Information Theory
指導教授:王鄭慈
指導教授(外文):Cheng-Tzu Wang
學位類別:碩士
校院名稱:佛光人文社會學院
系所名稱:資訊學研究所
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2002
畢業學年度:90
語文別:中文
論文頁數:95
中文關鍵詞:軟體複雜度簡單堆疊基馬可夫模式軟體開發成本軟體維護
外文關鍵詞:software complexitySimple Stack-Based Markov modelsoftware development costsoftware maintenance
相關次數:
  • 被引用被引用:4
  • 點閱點閱:200
  • 評分評分:
  • 下載下載:0
  • 收藏至我的研究室書目清單書目收藏:1
軟體產業的迅速發展,產業環境的快速變遷,以及消費者的意識抬頭。使得軟體產品的開發面臨莫大的考驗。軟體廠商對於軟體發展的品質與成本必須更具策略考量,相同的使用者對於所採購的軟體的品質,以及是否會帶來高維護成本的風險等。因此,如能在軟體發展初期即能預知軟體發展的成本,或將來可能產生高維護成本的風險,對於軟體公司的競爭優勢將會有很大的助益。
在軟體工程的領域,有一個很重要的學門---軟體複雜度評估,即是在研究軟體複雜度與發展成本間的關係,且經學者驗證,軟體的複雜度確實與發展成本有著密切的正相關。也因此提出了許許多多的評估方法,簡單堆疊基馬可夫模式是諸多評估模式中,評估能力相當高的方法,它解決了傳統評估方法僅能單獨考慮到軟體大小、控制流程、資料流、或其它使用單一屬性的缺點。簡單堆疊基馬可夫模式不僅能評估軟體大小的複雜度,同時也能顧慮到軟體表示式控制流程的複雜度。而在新的軟體技術發展下,簡單堆疊基馬可夫模式同樣的也能被應用在物件導向的軟體評估之中。
雖然簡單堆疊基馬可夫模式有著如此優越的評估能力,但早期最原始的簡單堆疊基馬可夫模式有一個很大的缺點,即無法辨識出表示式控制流程巢狀的複雜度,而且這個模式只針對表示式的控制流程,並將程式真實的控制流程與表示式中控制流程視為相同,其後雖然有學者針對巢狀辨識度的問題提出修正,經由修正模式的堆疊動作,確實的解決了巢狀辨識度的問題。但對於後者仍視為相同,因此本論文即針對這方面提出一個修正的方法,以使這個模式更加的完善。而這個優秀的評估模式的結果,更可做為軟體發展或使用者採購軟體時的決策依據。
本研究依循一個正規而完整的軟體評估模式發展方法,企圖建立一個完整的軟體複雜度評估模式,除了進行模式的理論驗證外,並設計實驗搜集所需的樣本資料,以驗證模式的正確性。
The rapid development of software industry, fast change of industry environment, and consumer power grow up. Let software development confront a large test. Developer and purchaser must have more consideration about strategy at software quality and cost. If we can predict successfully the software development cost at the beginning. This will give the software company competition advantage.
Software engineering has an important subject---software complexity metrics, which study the relationship between software complexity and development cost. More researchers agree that software complexity and development cost are positively related. In addition, they propose many metrics methods. Among those metrics methods, Simple Stack-Based Markov (SSBM) model is a very excellent method. SSBM solve the main drawback, which only can measure one attribute (ex. size, control flow, data flow, … etc.). And SSBM can use the new technical of software development, such as Object-oriented.
Although SSBM have excellent capability. It has a weakness, which can’t express the nest complexity of control flow. And SSBM support the program control flow as same as expression control flow. Then researcher aim at nest complexity to refine it. But they support the program control flow as same as expression control flow. In this paper, we consider a different one and propose a method that uses two kinds of parenthesis to solve this problem. We follow a regular and strict process of the development of software metrics, which makes our model more complete. So we have made an experiment to proof the model correction.
摘要 i
Abstract iii
目錄 iv
圖目錄 vii
表目錄 viii
第一章 緒論 1
1.1 前言 1
1.2研究動機與目的 1
1.3研究假設與限制 3
1.4論文大綱 4
第二章 文獻探討 6
2.1軟體維護、軟體品質、及軟體複雜度 7
2.2 軟體評估 10
2.3 以量為基礎的評估方法 12
2.3.1 行數計算法(Lines of Code, LOC) 12
2.3.2軟體科學(Software Science) 15
2.4以結構為基礎的評估方法 17
2.4.1迴旋複雜度分析法 19
2.4.2巢狀修正的迴旋複雜度 21
2.4.3資料流的評估方法 22
2.5結合量及結構特性的評估法 24
2.6資訊理論的評估方法 26
第三章 堆疊基馬可夫模式 30
3.1堆疊基馬可夫模式 30
3.2簡單堆疊基馬可夫模式 32
第四章 研究方法 36
4.1模式定義 38
4.1.1括號的意義 39
4.1.2符號的產生 40
4.1.3熵值的特性 49
4.1.4模式的定義 51
4.2模式的理論驗證 53
4.3模式修正 55
4.4 進一步切割資訊源 58
第五章 系統建置 63
5.1系統發展 63
5.1.1需求分析 64
5.1.2可行性評估 64
5.1.3系統規格 65
5.1.4系統設計、測試、驗證 66
5.2系統展示及使用說明 66
5.3小結 70
第六章 實驗設計及結果 71
6.1實驗設計 71
6.2實驗結果 72
6.2.1迴歸分析結果 74
6.2.2評估複雜度與開發時間的關係 76
6.2.3評估複雜度與除錯次數間的關係 80
第七章 結論與未來展望 85
7.1研究貢獻 86
7.2未來研究方向 87
參考文獻 88
中文部份 88
英文部份 89
[林信惠 1993] 林信惠, 李坤清, 李明憲: “軟體開發之成本影響因素研究,” 資訊管理, 第一卷, 第一期, 1993.
[胡正國 2000] 胡正國, 我國軟體維護之現況調查研究-與其他國家比較, 屏東科技大學資訊管理系碩士論文, 2000.
[留忠賢 1997] Sommerville原著, 留忠賢譯: 軟體工程, 松崗圖書有限公司, 1997.
[張國鴻 2000] Detlev J. Hoch, Cyriac R. Roeding, Gert Purkert, Sandro K. Lindner, Ralph Muller原著, 張國鴻譯: 數位式競爭全球軟體公司的致勝策略, 天下遠見出版股份有限公司, 2000.
[賴秀女 2000] 賴秀女, 軟體複雜度評估---一種修正的堆疊基馬可夫模式, 南華大學資訊管理學系碩士論文, 2000.
[Abramson 1963] Norman Abramson, Information Theory and Coding, McGraw-Hill, 1963.
[Berlinger 1980] Eli Berlinger, “An Information Theory Based Complexity Measure,” Proceedings, National Computer Conference, 1980, AFIPS press, pp. 773-779.
[Berns 1984] G. M. Berns, “Assessing Software Maintainability,” Communications of the ACM, vol.27, no.1, pp.14-23, January 1984.
[Bieman 1984] James M. Bieman, “Measuring Software Data Dependency Complexity,” Ph.D. Dissertation, Center for Advanced Computer Studies, University of Southwestern Louisiana, 1984.
[Bieman 1985] James M. Bieman and William R. Edwards, “Experimental Evaluation of the Data Dependency Graphs for USE in Measure Software Clarity,” Proceedings, HICSS-18, pp.271-276, January 1985.
[Boehm 1981] B.W. Boehm, Software Engineering Economics, Prentice-Hall, 1981.
[Conte 1986] S. D. Conte, H. E. Dunsmore, and V. Y. Shen, A Software Engineering Metrics and Models, Benjamin-Cummings, Menlo Park, CA, 1986.
[Dunsmore 1979] H.E. Dunsmore and J. D. Gannon, “Data Referencing: An Empirical Investigation,” IEEE Computer, pp.50-57, December 1979.
[Edwards 1988] William R. Edwards, Jr., “Information Content of Partitions,” 19th Southeastern International Conference on Combinatorics, Graph Theory, and Computing, Baton Rouge, Louisiana, February 1988.
[Edwards 1990] William R. Edwards, Jr., “Information Source Models for Software Analysis,” Proceedings, 13th Minnowbrook Workshop on Software Engineering, pp.8-17, July 1990.
[Edwards 1991] William R.Edwards, Mingguey Yang, and Jong Soo Kim, “Application of the Stack-Based Markov Source to Software Analysis,” Proceedings, 14th Minnowbrook Workshop on Software Engineering, pp.44-62, July 1991.
[Fenton 1997] Norman E. Fenton and Shari Lawrence Pfleeger, Software Metrics: A Rigorous & Practical Approach, PWS, 1997.
[Fenton 2000] Norman E. Fenton and Neil M, "Software Metrics: Roadmap", in ''The Future of Software Engineering'' (Editor: Anthony Finkelstein) 22nd International Conference on Software Engineering, ACM Press ISBN 1-58113-253-0, pp.357-370, 2000
[FIPS 1984] FIPS PUB 106, “Guideline on Software Maintenance,” Federal Information Processing standards Publication, 1984.
[Florac 1999] William A. Florac and Anita D. Carleton, Measuring the Software Process: Statistical Process Control for Software Process Improvement 1/e, Addison Weslay, 1999.
[Grable 1999] Ross Grable. Jacquelyn Jernigan, Casey Pogue, and Dale Divis, “Metrics for Small Projects: Experiences at the SED,” March/April IEEE 1999, pp.21-29.
[Gray 1987] Gray, R.b.and Caswell, D., “Software Metrics: Establishing a Company-wide Program,” Prentice Hall, Englewood Cliffs, NJ, 1987.
[Gray 1997] Andrew Gray and Stephen MacDonell, “Applications of Fuzzy Logic to Software Metric Models for Development Effort Estimation,” In Proceedings of the 1997 Annual Meeting of the North American Fuzzy Information Processing Society - NAFIPS. Syracuse NY, USA, IEEE 1997, pp.394-399
[Halstead 1977] M. H. Halstead, “Elements of Software Science, Operating, and Programming Systems Service,” Volume 7, New York, NY: Elsevier, 1977.
[Halstead 1979] M. H. Halstead, “Advances in Software Science,” in Advances in Computers, vol. 18 pp. 122-129, Academic Press, 1979.
[Harrison 1992] Warren Harrison, “An Entropy-Based Measure of Software Complexity,” IEEE Transactions on Software Engineering, vol.18, no.11, pp. 1025-1029, November 1992.
[Hellerman 1972] Leo Hellerman, “A Measure of Computational Work,” IEEE Transaction on Computers, vol.c-21, no.5, pp. 439-446, May 1972.
[Henry 1981] Sallic Henry and Dennis Kafura, “Software Structure Metrics Based on Information Flow,” IEEE Transactions on Software Engineering, vol. SE-7, no.5, pp.510-518, September 1981.
[Holland 1993] James Allen Holland, “A Stack based Object Oriented Development Model,” Ph.D. Dissertation, Center for Advanced Computer Studies, University of Southwestern Louisiana, Spring 1993.
[IEEE 1993a] IEEE Software Engineering standards, Std.610.12-1990, pp. 47-48.
[IEEE 1993b] IEEE, “Standard for Software Maintenance,” Los Alamitos, CA:IEEE Computer society Press, IEEE std. 1219, 1993.
[Ince 1990] Ince, D.C. “Software Metrics,” IEE Colloquium on, 1990, Page(s): 1/1 -1/2.
[Jacquet 1997] JP. Jacquet and A. Abran, “From Software Metrics to Software Measurement Methods: A Process Model,” Third International Symposum and Forum on Software Engineering Standards, ISESS 97, Walntt Creek (CA), June 2-6, 1997.
[Jones 1986] Jones, C., Programer Productivity, McGraw-Hill, New York, 1986.
[Kim 1991] Jong-Soo Kim, “Information Source Analysis of Data Definition and Reference in a Procedural Programming language,” Ph.D. Dissertation, Center for Advanced Computer Studies, University of Southwestern Louisiana, Fall 1991.
[Kleinbaum 1998] Kleinbaum, David G., Lawrenc L. Kupper, Keith E. Muller, and Azhar Nizam (1998), Applied Regression Analysis and Other Multivariable Methods, 3rd edition. CA: Brooks/Cole Publishing, 1998.
[Layzell 1994] Layzell, Paul J. and Macaulay, Linda A., “An Investigation into software Maintenance --Perception and Practices,” Software Manitenance: Research and Practice. vol.6, pp. 105-120, 1994.
[Li 1987] H. F. Li and W. K. Cheung, “An Empirical Study of Software Metrics,” IEEE Transactions on Software Engineering, vol. SE-13, no.6, June 1987.
[Li 1993] Li, W. and Henry, S., “Object-Oriented Metrics Which Predict Maintainability,” J. Systems and Software 2, pp. 111-122, 1993.
[Li 2000] Wei Li, “Software product metrics,” IEEE Potentials, pp. 24-27, December 1999/January 2000.
[Lubinsky 1990] David J. Lubinsky, “Measuring Software Size by Distinct Lines,” Proceedings, 14th International Computer Software and Applications Conference, pp. 403-407, October 1990.
[Martin 1983] Martin , J. and McClure, C., “Software Maintenance: The Problem and its solutions,” Englewood Cliffs, NJ: Prentice-Hall,1983.
[McCabe 1976] Thomas J. McCabe, “A Complexity Measure,” IEEE Transactions on Software Engineering, vol. SE-2, no.4, pp. 308-320, December 1976.
[McCabe 1989] McCabe, Thomas J. and Butler, Charles W. “Design Complexity Measurement and Testing,” Communications of the ACM32, pp. 1415-1425, December 1989.
[McCabe 1994] McCabe, Thomas J. and Watson, Arthur H. “Software Complexity,” Crosstalk, Journal pf Defense Software Engineering 7, pp. 5-9, December1994.
[McGarry 1994] John J. McGarry and Cheryl L. Jones, Naval Undersea Warfare Center Newport, RI “Application of A Quantitative Software Metrics Assessment Process to Military Software Development Programs,” Electro International 1994 Hynes Convention Center Boston, MA May 10-12, 1994.
[Mohanty 1981] Siba N. Mohanty, “Entropy Metrics for Software Design Evaluation,” The Journal of Systems and Software 2, pp. 39-46, 1981.
[Patrick 1982] J. D. Patrick and C. S. Wallace, “Stone Circle Geometries: An Information Theory Approach,” in Archaeoastronomy in the Old World, ed. D. C. Hoggie, Cambridge, 1982, pp. 231-264.
[Ramamurthy 1988] Bina Ramamurthy and Austin Melton, “A Synthesis of Software Science Measures and the Cyclomatic Number,” IEEE Trans on Software Engineering, vol. 14, no.5, pp. 1116-1121, August 1988.
[Rochkind 1975] Rochkind , M., “The Source Code Control System,” IEEE Trans. Software Engineering, vol. 1, no. 4, December 1975.
[Ruse 2000] Melissa L. Russ and John D. McGregor, “A Software Development Process for Small Projects,” IEEE Software, pp. 96-101 September/October 2000.
[Samadzadeh 1988] Mansur H. samadzadeh and William r. Edwards, “A Classification Model of Software Comprehension- Abstract,” Proceedings of 21th Hawaii International conference on System Science, January 1988.
[Shannon 1948] C. E. Shannon, “A Mathematical Theory of Communication,” Bell Systems Technical Journal, vol. 27, pp. 379-423, 1948.
[Shepperd 1995] Martin Shepperd, Foundations of Software Measurement, Prentice Hall, 1995.
[Swanson 1976] Swanson, E. B., “The Dimensions of Maintenance,” Proceedings of the Second International conference on software Engineering, pp. 492-497, 1976.
[Voas 1999] Jeffery Voas, “Software Quality’s Eight Greatest Myths” IEEE Software, pp118-120, 1999.
[von Mayrhauser 1990] von Mayrhauser T.E. , “Software Engineering-Methods and Management,”San Diego, CA: Academic Press, Inc, 1990.
[Wallace 1996] D. Wallace, L. Ippolito, and B. Cuthill, “Reference Information for the Software Verification and Validation Process,” NIST Special Publication 500-234, U.S. Department of Commence/National Institute of Standards and Technology, April 1996.
[Walston 1977] C. E. Walston and C. P. Felix,“A Method of Programming Measurement and Estimation,” IBM System Journal, vol. 16, no. 1, pp. 55-73, 1977.
[Wang 1991] Cheng-Tzu Wang and William R. Edwards, “An Implementation of the Stack-Based Markov Model on Pascal Code,” Technical Report 91-4-1, Center for Advanced Computer Studies, University of Southwestern Louisiana, February 1991.
[Wang 1994] Cheng-Tzu Wang, “Stack-Based Markov Model Analysis of Expressions and Data Dependencies on Programs,” Ph.D. Dissertation, The University of Southwestern Louisiana, Spring 1994.
[Wang 1997] Cheng-Tzu Wang, “A Probabilistic Model of Software Complexity Measurement,” in Proceedings of the 8th International Conference on Information Management, pp.776-782, 1997.
[Yang 1991] Mingguey Yang and William R. Edwards, “Experimental Study of the Stack-Based Markov Model,” Technical Report 90-4-7, Center for Advanced Computer Studies, University of Southwestern Louisiana, February 1991.
[Yang 1992] Mingguey Yang and William R. Edwards, “Stack-Based Markov Model for Imperative and Functional Languages,” Technical Report 92-5-7, Center for Advanced Computer Studies, University of Southwestern Louisiana, February 1992.
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top