軟件度量
編輯軟件度,簡稱度量,是一種(通常是數學的)函數,它將軟件的屬性映射為數值,也稱為度量。 這創建了正式的比較和評估選項。
背景
編輯形式上,人們談到將度量應用于軟件單元。 結果就是指標。 在大多數情況下,軟件單元意味著底層源代碼。 由于源代碼通常分布在一個或多個單獨的文件中,因此該指標可以應用于全部或部分源代碼,具體取決于類型。 還有一些指標,例如功能點分析,可以應用于軟件的規范,以確定提前開發軟件所需的工作量。
度量以數值、度量的形式用作軟件的屬性、質量特征的度量。 它可以表示功能連接或從清單中派生。 簡單指標以行數或字符數顯示源代碼的大小,更復雜的指標試圖評估源代碼的可理解性。 可以使用適當數量的不同指標來評估軟件的維護、進一步開發和后續測試的復雜程度(即人員和成本密集型)。
新開發的程序不僅經常需要某些功能,而且還需要質量特性,例如可維護性、可擴展性或可理解性。 軟件數量無法評估功能的正確實現,他們最多可以提前確定創建軟件需要多少努力以及會出現多少錯誤。
如果在軟件的長期進一步開發過程中定期使用指標,則可以在早期階段檢測并糾正負面趨勢,即與質量目標的偏差。
軟件度數據的解釋是軟件度量學科的任務,其中軟件度代表解釋的基礎數據的一部分。
根據 IEEE 標準 1061 定義
編輯“軟件質量指標:一種函數,其輸入是軟件數據,輸出是單個數值,可以解釋為軟件擁有影響其質量的給定屬性的程度。”
“軟件質量度量是一種將軟件單元映射為數值的函數,該數值可以解釋為軟件單元質量屬性的實現程度。”
軟件數量的順序
編輯指標服務于最終軟件的各個方面、應用的過程模型和對需求滿足情況的評估。
用法
度量的使用從開發階段的評估擴展到階段結果的評估和所用技術的評估。 在軟件開發中使用度量的目的是預測錯誤和估算工作量,從而區分初步使用、持續使用和回顧性使用。
限制
基本上,仍然易于管理的指標是一維的。 這迫使他們簡化。 通常,這是通過將每個指標縮小到一個視圖來實現的。 這必然意味著不會同時以相同質量提供其他視圖。
分類
對于評估的不同方面,有設計指標、經濟指標、溝通指標等。指標可以分配給不同的類,表示測量或評估的對象:
- 過程指標
- 資源支出(員工、時間、成本)
- 錯誤
- 溝通努力
- 產品指標
- 范圍(代碼行、重用、過程...)
- 復雜性
- 可讀性(風格)
- 設計質量(模塊化、內聚性、耦合性……)
- 產品質量(測試結果、測試覆蓋率...)
- 努力指標
-
- 努力穩定性
努力分配
-
- 生產力
- 對最后期限的可靠性
- 項目運行時間指標
- 開發時間
- 平均開發時間
- 里程碑趨勢分析
- 準時交貨
- 復雜度指標
- 軟件大小
- 完成百分比
- 應用指標
- 培訓工作
- 客戶滿意度
質量標準
僅來自軟件生產階段的指標并不是質量標準。 通常,質量特性是根據客戶要求及其應用的滿足情況來衡量的。 結果的可轉移性和測量值的代表性對客戶利益很重要:
- 客觀性:不受測量者的主觀影響
- 可靠性:重復時結果相同
- 歸一化:測量結果尺度和可比性尺度
- 可比性:措施可以與其他措施進行比較
- 經濟:成本最低
- 有用性:實際需求的可衡量的滿足
- 有效性:從可測量值推斷其他參數(困難)
指標
編輯一些更廣為人知的指標是:
- 代碼行數 代碼行,簡稱LOC。
- 用于估算分析階段工作量的功能點程序
- COCOMO,用于根據其他關鍵數據計算項目成本
- 用于確定程序模塊復雜性的圈復雜度(根據 McCabe)
- 用于設計時實現估算的 Halstead 指標
- 控制流導向指標,例如語句覆蓋率、分支覆蓋率、路徑覆蓋率或條件覆蓋率
通過結合現有的指標,新的指標不斷被開發出來,其中一些反映了軟件工程的新發展。 這方面的一個例子是 C.R.A.P. (變更風險分析和預測)用于評估代碼可維護性的指標。
為了評估系統和基礎設施中的信息安全水平,必須能夠衡量安全性。 安全指標作為客觀的、可量化的指標,能夠在采購階段和運行期間做出安全決策。 安全指標的一個目標是證明計劃和實施的安全措施符合特定的安全策略。 因此,有關 IT 安全的決策和評估變得透明和易于理解。 安全指標的應用領域是安全狀況評估、安全管理或網絡保險。
選擇合適的指標
編輯目標問題度量 (GQM) 方法可用于識別合適的度量。
軟件度量與評估
編輯軟件度量與評估是計算機科學領域中處理對軟件產品、過程和項目的各種屬性進行系統度量和評估的學科。
程序
編輯- 設定階段和榜樣
- 設定目標
- 定義度量掩碼
- 制定衡量計劃
- 收集數據
- 驗證數據
- 分析和解釋數據
- 保存和可視化數據
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/363642/