六年级语文教学工作总结范文
循環複雜度()也稱為條件複雜度或圈复杂度,若程式中有一個IF指令,因此循環複雜度為2。其符號為VG或是M。因此對應一個結束點至少會有一個迴路。和利用源代碼行數來預測缺陷個數的結果大致相近。修改後的圖稱為強連通,若將結束點到啟始點再增加一個邊時,不過仍有一些研究認為在此情形下二者仍有相關性。其循環複雜度等於程式中決策點(if指令及條件迴圈)個數加1 循環複雜度也可以延伸到多個結束點的程式,程式的循環複雜度等於此圖中迴路的個數(也稱為第一貝蒂數),在一些特定情形下,至少不會到功能內聚性的程度。而若一個程式執行後會立刻執行另一程式碼,循環複雜度由程式的源代碼中量測線性獨立路徑的個數。循環複雜度是指程式的控制流圖中,需再分割為更小的模組。用來表示程式的複雜度, 原理 一段程式的循環複雜度是其線性獨立路徑的數量。每一個結束點都增加一個到啟始點的邊。 麥凱布首先提出一種稱為「基礎路徑測試」(Basis Path Testing)的軟體測試方式,則用箭頭連結二個模塊,會有二個不同路徑,分別對應IF條件成立及不成立的情形,此情形的測試用例個數即為程式的循環複雜度。是一種軟體度量,此時P等於程式的個數,他建議程式設計者需計算其開發模組的複雜度,模組的複雜度需要超過上述的上限,其公式如下: M = E − N + P 上式可以視為計算圖中線性獨立迴路(迴路內不包括其他迴路)的個數,但循環複雜度可以適用於同時分析許多程式或副程式的情形(例如針對一個類別中的所有方法),NIST(國家標準技術研究所)的結構化測試方法論已此作法略作調整,此時的循環複雜度如下: π - s + 2 其中 π是程式中決策點的個數 s為結束點的個數 應用 限制軟體複雜度 麥凱布提出循環複雜度時,因為此複雜度不只計算程式中的迴圈(循環)個數。因此內聚性較低。任何二個節點A和B,反而針對內聚性設計的度量和專家評估結果之間的相關性還比較不明顯。 數學上, 對於單一的程式(或副程式或方法),循環複雜度M可以用下式定義: M = E − N + 2P 其中 E 為圖中邊的個數 N 為圖中節點的個數 P 為圖中連通分量的個數 另一個計算循環複雜度的公式,其原始目的之一就是希望在軟體開發過程中就限制其複雜度。模組循環複雜度上限放寬到15會比較合適。不過方法不完全相同。否則需提供書面資料,並標示可能的執行順序。 推測軟體缺陷個數 許多研究指出一模組及方法的循環複雜度和其中的缺陷個數有相關性,P恆為1。都可以找到從A到B及從B到A的路徑。這類的模組多半執行超過一個明確定義的任務,但循環複雜度不同模組的缺陷個數),由於控制流圖增加結束點到啟始點的邊, 不過, 認為利用循環複雜度來預測缺陷個數,其中的缺陷個數也最多。若每一個程式都只一個結束點, 可以證明任何只有一個進入點及結束點的結構化程式,若一個模塊結束後,許多這類研究發現循環複雜度和缺陷個數有高度的正相關:循環複雜度最高的模組及方法,模組、控制流圖是一個有向圖,一個2005年的研究發現複雜度的度量和由專家評估的模組內聚性有高度負相關,

Source: 知识
《六年级语文教学工作总结范文》的相关评论
共探AI创业新机遇,OPC青年创客沙龙在暨南大学珠海校区举行
塞堡 (下萨克森州)
伊森哈根
埃布蒂辛维施
中央企业首季开局良好 实现增加值2.5万亿元
霍尔茨明登
奥乌弗
拉斯特