標題: 軟體複雜度的探討
An Investigation into the Software Complexity
作者: 丁冰和
Ding, Bin-Ho
楊千
Yang, C
資訊管理研究所
關鍵字: 軟體複雜度;熵參考法;保密軟體;非保密軟體;Software Complexity;Halstead;McCabe;Entropy Base;Security;Nonsecurity
公開日期: 1993
摘要: 軟體複雜度(software complexity)是一種指標,用以說明軟體本身複雜的程度。從很多的文獻證明,軟體設計的成本及其程式所隱含錯誤數目,多半和軟體複雜度有一定的正向關係。因此藉由軟體複雜度測量所得到的指標,除了能對軟體本身所需的成本及其所隱含的錯誤數目的有初部的了解之外,進而能提供設計者做程式檢查、管理者分配測試資源(依據複雜度指標分配測試人力、時間等)。 由於每個人對軟體複雜度所關心的角度及定義的認知並不相同,所以本研究透過問卷調查,分別對國內21家公私立機關,包括金融業、資訊業、公家機關、研究單位及一般產業等相關的的資訊人員進行研究,問卷調查的結果發現心理型複雜度因子是比較受關切的,進而本研究依據Halstead、McCabe所得提的相關因子及熵參考法(entropy base)等較重要的因子設計出一套自動化測量工具,這套測量工具主要是在Hp工作站環境下開發完成,而其適用對象是以C語言所開發完成的產品。利用這套工具本研究針對所蒐集到的保密軟體及非保密軟體進行測量。測量的結果發現,保密軟體的複雜度要比非保密軟體的模組平均複雜度高(以Halstead的眼光來看),顯示出這些軟體單位模組平所需測試的人力、時間會比較多。 最後本研究再分別以系統及模組的觀點來探討這幾個系統的軟體複雜並利用Excel來分析Halstead、McCabe、熵參考法、程式行數等8种複雜度因子彼此間的關係。
Many papers demonstrate that the software complexity dictates the development costs and the number of bugs in a software. Software complexity provides the indication to the programers and managers on how to allocate the resources. In particulat, the development time must be carefully planned. Beause the semantic of the software complexity is not universally indentical, this research surveyed 21 professionals firm varions companys to see whether there is a consensus among them. We find that the psychological complexity is more important than the computational complexity. Additionally, this research designs a measuring tool according to factor provided by Halstead, McCabe and entropy base. This tool can be used to measure the C programs. By using this tool, this research has measured some Security and Nonsecurity software We find that the average module complexity of these security program is higher than that of the nonsecurity ones.
URI: http://140.113.39.130/cdrfb3/record/nctu/#NT823396031
http://hdl.handle.net/11536/58632
顯示於類別:畢業論文