|
從軟件企業的觀點出發,軟件度量(Software Measurement)是通過各種不同的量度(metric)對軟件生命周期中的各個元素進行度量(Measure),它能夠為項目管理者提供有關項目的各種重要信息,同時也是進行大多評估活動的基礎。
通常度量程序是由一些軟件工程組在組織中進行實施,而這種用于量化軟件過程的決策手段實際上能為所有涉及軟件的人或部門帶來好處:
-
項目經理得益于在計劃及控制軟件項目時作出相關決策;
-
項目成員能聚焦于工作的改進;
-
軟件配置管理組能關注于產品的完整性;
-
軟件質量保證組則能專注于過程的保證;
-
當然用戶則關于軟件產品的最終使用;
-
除此以外,其他涉及并關心軟件過程及產品的職能部門都能以此作出相關決策。
既然軟件度量能為企業組織的各個方面帶來好處,那么我們究竟應該如何在企業組織中來設計并實現這一度量過程呢?本文將以此為目的展開。
首先,讓我們先來了解一下設計軟件度量過程的主要構架:
-
開發一個度量過程并使其成為企業組織中標準軟件過程的一部分;
-
通過定制與整合各種過程資產來對項目及相關手續擬定過程計劃;
-
執行擬定的計劃和相關手續來對項目進行過程的實施;
-
當項目進一步成熟且度量需求發生改變時對相關計劃及手續進行改進以改善該過程。
根據以上幾點,Carnegie Mellon大學的SEI提出了以下的一個軟件度量過程體系結構圖:
圖1:軟件度量過程體系結構
下面我們就來按照上面的體系結構進行分析:
1 過程計劃的制定
制定度量過程的計劃包括兩個方面的活動,一個是確認范圍,一個是定義程序步驟:
確認范圍:該活動的根據是要明確度量需求的大小,以限定一個適合于企業本身需求的度量過程。因為在整個度量過程中是需要花費人力物力等有限資源的,不切實際的大而全或不足以反映實際結果的需求都會影響度量過程的可靠性以及企業的發展能力。
定義程序步驟:在確認了范圍后,就需要定義操作及度量過程的步驟,在構造的同時應該成文立案。主要工作包括定義完整,一致,可操作的度量;定義數據采集方法以及如何進行數據記錄與保存;定義可以對度量數據進行分析的相關技術,以使用戶能根據度量數據得到這些數據背后的結果。
2 過程的實施
過程的實施也包括兩方面的活動,一個是數據的采集,一個是數據的分析:
-
數據的采集:該活動根據已定義的度量操作進行數據的采集,記錄及存儲。此外,數據還應經過適當的校驗以確認有效性。在進行該項活動時應具有一定的針對性,對于不同的項目或活動所需要的實際數據量是有差別的,而且對活動狀態的跟蹤也是非常重要的。
-
數據的分析:該項活動包括分析數據及準備報告,并提交報告,當然進行評審以確保報告足夠的確實性是有必要的。這些程序步驟可能會需要更新,因為報告可能沒有為使用者提供有益的幫助或使用者對報告中的內容不理解,在這兩種情況下,都應回饋并更新度量過程以再進行數據分析。
3 過程的改善
過程的改善僅包含一個方面的活動,即優化過程:
-
優化過程:該過程活動被用于動態地改善過程并確保提供一個結構化的方式綜合且處理多個涉及過程改進的問題。除此以外,該活動對度量過程本身進行評估,報告的使用者會對數據的有效性進行反饋。這些反饋可能來自其他的活動,但一般都會溶入到度量過程新一輪的生命周期中去,對度量過程進行新的確認及定義。
現在,我們已經基本了解了設計一個軟件度量過程的體系結構,那么,我們應該如何來進行實施呢?這也就是我們下面即將展開談到的。
如果企業組織決定在內部開始或改善軟件度量過程,組建一個度量專組是很有必要的,同時企業應為該專組提供確定和必要的資源,以便使其展開工作。在完成相應的準備工作后,我們就可以開始經歷一個實施的過程了。
-
確認目標:企業組織必須有明確,現實的目標,進行度量的最終目前是進行改進,如果專組不能確定改善目標,則所有的活動都是茫目且對組織無益的。
-
對當前能力的理解及評價:正確直觀地認識到企業組織當前所處的軟件能力是非常重要的,在不同的階段,組織所能得到并分析的數據是有限的,且分析技術的掌握了是需要一個過程的。度量專組應能夠針對當前的軟件能力設計度量過程,找到一個均衡點。
-
設計度量過程:這部分工作也就是我們在前面所詳細討論的一部分。
-
過程原型:度量專組應該利用真實的項目對度量過程進行測試和調整,然后才能將該過程應用到整個組織中去,專組應確保所有的項目都能理解并執行度量過程,并幫助他們實現具體的細節。
-
過程文檔:到此,專組應該回到第一步審視度量過程是否滿足了企業的目標需求,在進一步確認后應進行文檔化管理,使其成為企業組織軟件標準化過程中的一部分,同時定義工作的模板,角色,以及責任。
-
過程實施:在前幾步完成的情況下,可以開發一個度量工作組來對度量過程進行實施,該工作組會按照已經定義的度量標準來進行過程的實施。
-
程序擴展:這一步驟是實施的生命周期中最后一個環節,不斷的根據反饋進行監督,改進是該生命周期開始的必要因素。
到此,我們已經清楚了軟件企業度量過程的完整建立過程,與CMM一樣,這也只是一個規范與框架,具體的實現將根據各個企業組織的不同則不同。盡管SW-CMM中并沒有一個專門的軟件度量的關鍵過程域,而是將其貫穿于其他關鍵過程域中,不過在SW-CMM的繼承者--CMMI中定義了一個專門的關鍵過程域:度量與分析。
文章來源于領測軟件測試網 http://www.kjueaiud.com/