軟件工程講義過程度量和項目度量_第1頁
軟件工程講義過程度量和項目度量_第2頁
軟件工程講義過程度量和項目度量_第3頁
軟件工程講義過程度量和項目度量_第4頁
軟件工程講義過程度量和項目度量_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、軟件工程講義過程度量和項目度量第19章 過程和項目度量主要內(nèi)容v過程領(lǐng)域和項目領(lǐng)域中的度量過程領(lǐng)域和項目領(lǐng)域中的度量v軟件測量軟件測量v軟件質(zhì)量度量軟件質(zhì)量度量v小結(jié)小結(jié)過程和項目度量v軟件過程和項目度量是定量的測量,這些軟件過程和項目度量是定量的測量,這些測量能使軟件工程師更深入地了解軟件過測量能使軟件工程師更深入地了解軟件過程的功效,以及使用該過程作為框架進行程的功效,以及使用該過程作為框架進行開發(fā)的項目的功效。度量時,首先收集基開發(fā)的項目的功效。度量時,首先收集基本的質(zhì)量數(shù)據(jù)和生產(chǎn)率數(shù)據(jù),然后分析這本的質(zhì)量數(shù)據(jù)和生產(chǎn)率數(shù)據(jù),然后分析這些數(shù)據(jù)、與過去的平均值進行比較,通過些數(shù)據(jù)、與過去的平

2、均值進行比較,通過評估來確定是否已有質(zhì)量和生產(chǎn)率的提高。評估來確定是否已有質(zhì)量和生產(chǎn)率的提高。度量也可以用來查明問題區(qū)域,以便確定度量也可以用來查明問題區(qū)域,以便確定合適的補救方法,并改進軟件過程。合適的補救方法,并改進軟件過程。過程和項目度量v軟件度量由軟件管理者來分析和評估。測軟件度量由軟件管理者來分析和評估。測量數(shù)據(jù)通常由軟件工程師來收集。量數(shù)據(jù)通常由軟件工程師來收集。v如果不進行測量,只能根據(jù)主觀評價來做如果不進行測量,只能根據(jù)主觀評價來做判斷。通過測量,可以發(fā)現(xiàn)趨勢,可以更判斷。通過測量,可以發(fā)現(xiàn)趨勢,可以更好地進行估算,隨著時間的推移能夠獲得好地進行估算,隨著時間的推移能夠獲得真正

3、的改進。真正的改進。過程和項目度量v 首先確定一組有限的易于收集的過程測首先確定一組有限的易于收集的過程測量和項目測量。通常使用面向規(guī)?;蛎嫦蛄亢晚椖繙y量。通常使用面向規(guī)?;蛎嫦蚬δ艿亩攘繉@些測量進行規(guī)范化。然后,功能的度量對這些測量進行規(guī)范化。然后,對測量結(jié)果進行分析,并與該組織以前完對測量結(jié)果進行分析,并與該組織以前完成的類似項目的平均數(shù)據(jù)進行比較。最后成的類似項目的平均數(shù)據(jù)進行比較。最后評估趨勢,并給出結(jié)論。評估趨勢,并給出結(jié)論。v工作產(chǎn)品是得到一組軟件度量,它們提供工作產(chǎn)品是得到一組軟件度量,它們提供了對過程的洞察力和對項目的理解。了對過程的洞察力和對項目的理解。過程和項目度量v通過

4、提供目標評估的機制,測量使我們能通過提供目標評估的機制,測量使我們能夠?qū)椖亢瓦^程有更深入的了解。夠?qū)椖亢瓦^程有更深入的了解。Lord Kelvin曾經(jīng)說過:曾經(jīng)說過:v當你能夠測量你所說的事物,并能用數(shù)字當你能夠測量你所說的事物,并能用數(shù)字表達它時,你就對它有了一定的了解;當表達它時,你就對它有了一定的了解;當你不能測量它,也不能用數(shù)字來表達時,你不能測量它,也不能用數(shù)字來表達時,就說明你對它的了解還很貧乏,不能令人就說明你對它的了解還很貧乏,不能令人滿意:這可能是知識的開始,但你在思想滿意:這可能是知識的開始,但你在思想上還遠遠沒有進入科學的境地。上還遠遠沒有進入科學的境地。過程和項目度

5、量v測量可以應(yīng)用于軟件過程中,目的是持續(xù)測量可以應(yīng)用于軟件過程中,目的是持續(xù)地改進軟件過程。測量也可以應(yīng)用于整個地改進軟件過程。測量也可以應(yīng)用于整個軟件項目中,輔助進行估算、質(zhì)量控制、軟件項目中,輔助進行估算、質(zhì)量控制、生產(chǎn)率評估及項目控制。最后,軟件工程生產(chǎn)率評估及項目控制。最后,軟件工程師還可以使用測量來幫助評估工作產(chǎn)品的師還可以使用測量來幫助評估工作產(chǎn)品的質(zhì)量,并在項目進展過程中輔助進行戰(zhàn)術(shù)質(zhì)量,并在項目進展過程中輔助進行戰(zhàn)術(shù)決策。決策。過程和項目度量vPAR96討論了進行測量的理由:討論了進行測量的理由:(1)刻畫刻畫通過刻畫而獲得對過程、產(chǎn)品、資源和環(huán)境的通過刻畫而獲得對過程、產(chǎn)品、

6、資源和環(huán)境的了解,并建立同未來評估進行比較的基線;了解,并建立同未來評估進行比較的基線;(2)評價評價通過評價來確定相對于計劃的狀況;通過評價來確定相對于計劃的狀況;(3)預(yù)測預(yù)測通過理解過程和產(chǎn)品間的關(guān)系,并構(gòu)造這些通過理解過程和產(chǎn)品間的關(guān)系,并構(gòu)造這些關(guān)系的模型來進行預(yù)測;關(guān)系的模型來進行預(yù)測;(4)改進改進通過識別障礙、根本原因、低效率和其他改進通過識別障礙、根本原因、低效率和其他改進產(chǎn)品質(zhì)量和過程性能的機會來進行改進。產(chǎn)品質(zhì)量和過程性能的機會來進行改進。v測量是一個管理工具,如果能正確地使用,它將為項目測量是一個管理工具,如果能正確地使用,它將為項目管理者提供洞察力。因此,測量能夠幫助

7、項目管理者和管理者提供洞察力。因此,測量能夠幫助項目管理者和軟件團隊制定出使項目成功的決策。軟件團隊制定出使項目成功的決策。過程領(lǐng)域和項目領(lǐng)域中的度量v過程度量的收集涉及所有的項目,而且要經(jīng)歷相當過程度量的收集涉及所有的項目,而且要經(jīng)歷相當長的時間,目的是提供能夠引導長期的軟件過程改長的時間,目的是提供能夠引導長期的軟件過程改進的一組過程指標。項目度量使得軟件項目管理者進的一組過程指標。項目度量使得軟件項目管理者能夠:能夠:(1)評估正在進行中的項目的狀態(tài);評估正在進行中的項目的狀態(tài);(2)跟蹤跟蹤潛在的風險;潛在的風險;(3)在問題造成不良影響之前發(fā)現(xiàn)它們;在問題造成不良影響之前發(fā)現(xiàn)它們;(

8、4)調(diào)整工作流程或任務(wù);調(diào)整工作流程或任務(wù);(5)評估項目團隊控制軟件評估項目團隊控制軟件工作產(chǎn)品質(zhì)量的能力。工作產(chǎn)品質(zhì)量的能力。v測量數(shù)據(jù)由項目團隊收集,然后被轉(zhuǎn)換成度量數(shù)據(jù)在項測量數(shù)據(jù)由項目團隊收集,然后被轉(zhuǎn)換成度量數(shù)據(jù)在項目期間使用。測量數(shù)據(jù)也可以傳送給那些負責軟件過程目期間使用。測量數(shù)據(jù)也可以傳送給那些負責軟件過程改進的人員。因此,很多相同的度量既可用于過程領(lǐng)域,改進的人員。因此,很多相同的度量既可用于過程領(lǐng)域,又可用于項目領(lǐng)域。又可用于項目領(lǐng)域。過程度量和軟件過程改進v改進任何過程的唯一合理方法就是測量改進任何過程的唯一合理方法就是測量該過程的特定屬性,再根據(jù)這些屬性建該過程的特定屬

9、性,再根據(jù)這些屬性建立一組有意義的度量,然后使用這組度立一組有意義的度量,然后使用這組度量提供的指標來導出過程改進策略。但量提供的指標來導出過程改進策略。但是,在討論軟件度量及其對軟件過程改是,在討論軟件度量及其對軟件過程改進的影響之前,必須注意到:過程僅是進的影響之前,必須注意到:過程僅是眾多眾多“改進軟件質(zhì)量和組織性能的控制改進軟件質(zhì)量和組織性能的控制因素因素”中的一種。中的一種。軟件質(zhì)量和組織有效性的決定因素圖19-1 軟件質(zhì)量和組織有效性的決定因素過程度量和軟件過程改進v在圖在圖19-1中,過程位于三角形的中央,中,過程位于三角形的中央,連接了三個對軟件質(zhì)量和組織績效有重大連接了三個對

10、軟件質(zhì)量和組織績效有重大影響的因素。其中,人員的技能和動力被影響的因素。其中,人員的技能和動力被認為是對質(zhì)量和績效影響最大的因素,產(chǎn)認為是對質(zhì)量和績效影響最大的因素,產(chǎn)品復雜性對質(zhì)量和團隊績效也有相當大的品復雜性對質(zhì)量和團隊績效也有相當大的影響,過程中采用的技術(shù)也有一定的影響。影響,過程中采用的技術(shù)也有一定的影響。另外,過程三角形位于環(huán)境條件圓圈內(nèi),另外,過程三角形位于環(huán)境條件圓圈內(nèi),環(huán)境條件包括:開發(fā)環(huán)境、商業(yè)條件、客環(huán)境條件包括:開發(fā)環(huán)境、商業(yè)條件、客戶特性。戶特性。過程度量和軟件過程改進v可以間接地測量軟件過程的功效。即,可可以間接地測量軟件過程的功效。即,可以根據(jù)從過程中獲得的結(jié)果來導

11、出一組度以根據(jù)從過程中獲得的結(jié)果來導出一組度量。這些結(jié)果包括:在軟件發(fā)布之前發(fā)現(xiàn)量。這些結(jié)果包括:在軟件發(fā)布之前發(fā)現(xiàn)的錯誤數(shù)的測度,提交給最終用戶并由最的錯誤數(shù)的測度,提交給最終用戶并由最終用戶報告的缺陷的測度,交付的工作產(chǎn)終用戶報告的缺陷的測度,交付的工作產(chǎn)品的測度,花費的工作量的測度,花費時品的測度,花費的工作量的測度,花費時間的測度,與進度計劃是否一致的測度,間的測度,與進度計劃是否一致的測度,以及其他測度。還可以通過測量特定軟件以及其他測度。還可以通過測量特定軟件工程任務(wù)的特性來導出過程度量。工程任務(wù)的特性來導出過程度量。過程度量和軟件過程改進vGRA92認為不同類型的過程數(shù)據(jù)的使用可

12、以分為認為不同類型的過程數(shù)據(jù)的使用可以分為“私有的和公私有的和公有的有的”。私有度量的例子有:個人缺陷率、軟件構(gòu)件缺陷率和開發(fā)。私有度量的例子有:個人缺陷率、軟件構(gòu)件缺陷率和開發(fā)過程中發(fā)現(xiàn)的錯誤數(shù)。過程中發(fā)現(xiàn)的錯誤數(shù)。v“私有過程數(shù)據(jù)私有過程數(shù)據(jù)”的觀點與的觀點與Humphrey所建議的個人軟件過程所建議的個人軟件過程方法相一致。方法相一致。Humphrey認為過程改進能夠、也應(yīng)該開始于認為過程改進能夠、也應(yīng)該開始于個人級。私有過程數(shù)據(jù)是軟件工程師個人改進其工作的重個人級。私有過程數(shù)據(jù)是軟件工程師個人改進其工作的重要驅(qū)動力。要驅(qū)動力。v有些過程度量對于軟件項目團隊是私有的,但對所有團隊有些過程

13、度量對于軟件項目團隊是私有的,但對所有團隊成員是公用的。例如,主要軟件功能的缺陷報告、正式技成員是公用的。例如,主要軟件功能的缺陷報告、正式技術(shù)評審中發(fā)現(xiàn)的錯誤,以及每個構(gòu)件或功能的代碼行數(shù)或術(shù)評審中發(fā)現(xiàn)的錯誤,以及每個構(gòu)件或功能的代碼行數(shù)或功能點數(shù)。這些數(shù)據(jù)可由團隊進行評審,以便找出能夠改功能點數(shù)。這些數(shù)據(jù)可由團隊進行評審,以便找出能夠改善團隊性能的指標。善團隊性能的指標。過程度量和軟件過程改進v公用的度量一般吸收了原本是個人或團公用的度量一般吸收了原本是個人或團隊的私有信息。收集和評估項目級的缺陷隊的私有信息。收集和評估項目級的缺陷率、工作量、時間以及相關(guān)的數(shù)據(jù),來找率、工作量、時間以及相

14、關(guān)的數(shù)據(jù),來找出能夠改善組織過程性能的指標。出能夠改善組織過程性能的指標。v軟件過程度量對于組織提高其整體的過軟件過程度量對于組織提高其整體的過程成熟度能夠提供很大的幫助。不過,就程成熟度能夠提供很大的幫助。不過,就像所有其他度量一樣,軟件過程度量也可像所有其他度量一樣,軟件過程度量也可能被誤用,產(chǎn)生的問題比它們所能解決的能被誤用,產(chǎn)生的問題比它們所能解決的問題更多。問題更多。過程度量和軟件過程改進vGRA92提出一組提出一組“軟件度量規(guī)則軟件度量規(guī)則”。管理者和開發(fā)者。管理者和開發(fā)者在制定過程度量大綱時,這些規(guī)則都適用:在制定過程度量大綱時,這些規(guī)則都適用:v解釋度量數(shù)據(jù)時使用常識,并考慮組

15、織的敏感性。解釋度量數(shù)據(jù)時使用常識,并考慮組織的敏感性。v向收集測量和度量的個人及團隊定期提供反饋。向收集測量和度量的個人及團隊定期提供反饋。v不要使用度量去評價個人。不要使用度量去評價個人。v與開發(fā)者和團隊一起設(shè)定清晰的目標,并確定為達到這些目標需要使用的度量。與開發(fā)者和團隊一起設(shè)定清晰的目標,并確定為達到這些目標需要使用的度量。v不要用度量去威脅個人或團隊。不要用度量去威脅個人或團隊。v指出問題區(qū)域的度量數(shù)據(jù)不應(yīng)該被指出問題區(qū)域的度量數(shù)據(jù)不應(yīng)該被“消極地消極地”看待,這些數(shù)據(jù)僅僅是過看待,這些數(shù)據(jù)僅僅是過程改進的指標。程改進的指標。v不要在某一個別的度量上糾纏,而無暇顧及其他重要的度量。不

16、要在某一個別的度量上糾纏,而無暇顧及其他重要的度量。過程度量和軟件過程改進v隨著一個組織更加得心應(yīng)手地收集和使用過隨著一個組織更加得心應(yīng)手地收集和使用過程度量,簡單的指標獲取方式就會逐漸被更程度量,簡單的指標獲取方式就會逐漸被更加精確的方法所取代,該方法稱為統(tǒng)計軟件加精確的方法所取代,該方法稱為統(tǒng)計軟件過程改進。本質(zhì)上,過程改進。本質(zhì)上,SSPI使用軟件失效分析使用軟件失效分析方法收集在應(yīng)用軟件、系統(tǒng)或產(chǎn)品的開發(fā)及方法收集在應(yīng)用軟件、系統(tǒng)或產(chǎn)品的開發(fā)及使用過程中所遇到的所有的錯誤及缺陷信息。使用過程中所遇到的所有的錯誤及缺陷信息。項目度量v軟件過程度量用于戰(zhàn)略目的,而軟件項目度量則用于軟件過程

17、度量用于戰(zhàn)略目的,而軟件項目度量則用于戰(zhàn)術(shù)目的。即,項目管理者和軟件項目團隊通過使用戰(zhàn)術(shù)目的。即,項目管理者和軟件項目團隊通過使用項目度量及從中導出的指標,可以改進項目工作流程項目度量及從中導出的指標,可以改進項目工作流程和技術(shù)活動。和技術(shù)活動。v在大多數(shù)軟件項目中,項目度量的第一次應(yīng)用是在在大多數(shù)軟件項目中,項目度量的第一次應(yīng)用是在估算階段。從過去項目中收集的度量可以作為估算估算階段。從過去項目中收集的度量可以作為估算當前軟件工作量及時間的基礎(chǔ)。隨著項目的進展,當前軟件工作量及時間的基礎(chǔ)。隨著項目的進展,可以將花費的工作量及時間的測量與最初的估算值可以將花費的工作量及時間的測量與最初的估算值

18、(及項目進度及項目進度)進行比較。項目管理者可以使用這些數(shù)進行比較。項目管理者可以使用這些數(shù)據(jù)來監(jiān)控項目的進展。據(jù)來監(jiān)控項目的進展。項目度量v隨著技術(shù)工作的啟動,其他項目度量也開隨著技術(shù)工作的啟動,其他項目度量也開始有意義了。生產(chǎn)率可以根據(jù)創(chuàng)建的模型、始有意義了。生產(chǎn)率可以根據(jù)創(chuàng)建的模型、評審的時間、功能點以及交付的源代碼行評審的時間、功能點以及交付的源代碼行數(shù)來測量。此外,對每個軟件工程任務(wù)中數(shù)來測量。此外,對每個軟件工程任務(wù)中所發(fā)現(xiàn)的錯誤也要進行跟蹤。在軟件從需所發(fā)現(xiàn)的錯誤也要進行跟蹤。在軟件從需求到設(shè)計的演化過程中,需要收集技術(shù)度求到設(shè)計的演化過程中,需要收集技術(shù)度量來評估設(shè)計質(zhì)量,并提

19、供若干指標,這量來評估設(shè)計質(zhì)量,并提供若干指標,這些指標將會影響代碼生成及測試所采用的些指標將會影響代碼生成及測試所采用的方法。方法。項目度量v項目度量的目的是雙重的。首先,利用度項目度量的目的是雙重的。首先,利用度量能夠?qū)﹂_發(fā)進度進行必要的調(diào)整,以避量能夠?qū)﹂_發(fā)進度進行必要的調(diào)整,以避免延遲,并減少潛在的問題及風險,從而免延遲,并減少潛在的問題及風險,從而使得開發(fā)時間減到最少。其次,項目度量使得開發(fā)時間減到最少。其次,項目度量可在項目進行過程中評估產(chǎn)品質(zhì)量,必要可在項目進行過程中評估產(chǎn)品質(zhì)量,必要時可調(diào)整技術(shù)方法以提高質(zhì)量。時可調(diào)整技術(shù)方法以提高質(zhì)量。v隨著質(zhì)量的提高,缺陷會減到最少。而隨隨

20、著質(zhì)量的提高,缺陷會減到最少。而隨著缺陷數(shù)的減少,項目中所需的修改工作著缺陷數(shù)的減少,項目中所需的修改工作量也會降低,這將使整個項目成本降低。量也會降低,這將使整個項目成本降低。軟件測量v軟件測量有兩種分類方法:軟件測量有兩種分類方法:(1)軟件過程軟件過程(如花費的成本和工作量如花費的成本和工作量)和產(chǎn)品和產(chǎn)品(如產(chǎn)生的如產(chǎn)生的代碼行代碼行(LOC)、運行速度以及某段時間內(nèi)、運行速度以及某段時間內(nèi)報告的缺陷報告的缺陷) 的直接測量的直接測量;(2)產(chǎn)品的間接產(chǎn)品的間接測量,包括功能、質(zhì)量、復雜性、有效性、測量,包括功能、質(zhì)量、復雜性、有效性、可靠性、可維護性,以及許多其他的可靠性、可維護性,

21、以及許多其他的“產(chǎn)產(chǎn)品特性品特性”。v將項目度量聯(lián)合起來可以得到整個軟件組將項目度量聯(lián)合起來可以得到整個軟件組織公用的過程度量??椆玫倪^程度量。面向規(guī)模的度量v面向規(guī)模的軟件度量是通過規(guī)范化質(zhì)量和面向規(guī)模的軟件度量是通過規(guī)范化質(zhì)量和(或或)生產(chǎn)率的測量值而得到的,這些測量生產(chǎn)率的測量值而得到的,這些測量都基于已經(jīng)開發(fā)的軟件的規(guī)模。如果軟件都基于已經(jīng)開發(fā)的軟件的規(guī)模。如果軟件組織一直在做簡單的記錄,就會產(chǎn)生一個組織一直在做簡單的記錄,就會產(chǎn)生一個如圖如圖19-2所示的面向規(guī)模測量的表。該表所示的面向規(guī)模測量的表。該表列出了在過去幾年中完成的每一個軟件開列出了在過去幾年中完成的每一個軟件開發(fā)項目

22、及其相關(guān)的測量數(shù)據(jù)。發(fā)項目及其相關(guān)的測量數(shù)據(jù)。面向規(guī)模的度量圖19-2 面向規(guī)模的度量面向規(guī)模的度量v為了產(chǎn)生能和其他項目中同類度量進行比為了產(chǎn)生能和其他項目中同類度量進行比較的度量,選擇代碼行作為規(guī)范化值。根較的度量,選擇代碼行作為規(guī)范化值。根據(jù)表中所包含的基本數(shù)據(jù),每個項目都能據(jù)表中所包含的基本數(shù)據(jù),每個項目都能得到一組簡單的面向規(guī)模的度量:得到一組簡單的面向規(guī)模的度量:v每千行代碼每千行代碼(KLOC)的錯誤數(shù);的錯誤數(shù);v每千行代碼的缺陷數(shù);每千行代碼的缺陷數(shù);v每千行代碼的成本;每千行代碼的成本;v每千行代碼的文檔頁數(shù);每千行代碼的文檔頁數(shù);v此外,還能計算出其他有意義的度量。此外,

23、還能計算出其他有意義的度量。面向功能的度量v面向功能的軟件度量使用功能測量數(shù)據(jù)作面向功能的軟件度量使用功能測量數(shù)據(jù)作為規(guī)范化值。應(yīng)用最廣泛的面向功能的度為規(guī)范化值。應(yīng)用最廣泛的面向功能的度量是功能點量是功能點FP。功能點是根據(jù)軟件信息域。功能點是根據(jù)軟件信息域的特性及復雜性來計算的。的特性及復雜性來計算的。調(diào)和代碼行和功能點的度量方法v代碼行和功能點之間的關(guān)系依賴于實現(xiàn)軟代碼行和功能點之間的關(guān)系依賴于實現(xiàn)軟件所采用的程序設(shè)計語言及設(shè)計的質(zhì)量。件所采用的程序設(shè)計語言及設(shè)計的質(zhì)量。很多研究試圖將很多研究試圖將FP測量和測量和LOC測量聯(lián)系起測量聯(lián)系起來。來。v表表19-1(P340頁頁)給出了在不

24、同的程序設(shè)給出了在不同的程序設(shè)計語言中實現(xiàn)一個功能點所需的平均代碼計語言中實現(xiàn)一個功能點所需的平均代碼行數(shù)的粗略估算。行數(shù)的粗略估算。調(diào)和代碼行和功能點的度量方法v人們發(fā)現(xiàn)基于功能點和人們發(fā)現(xiàn)基于功能點和LOC的度量都是對軟件開發(fā)的度量都是對軟件開發(fā)工作量和成本的比較精確的判定。然而,如果使用工作量和成本的比較精確的判定。然而,如果使用LOC和和FP進行估算,還必須要建立一個歷史信息基線。進行估算,還必須要建立一個歷史信息基線。v在過程度量和項目度量中,最關(guān)心的是生產(chǎn)率和質(zhì)在過程度量和項目度量中,最關(guān)心的是生產(chǎn)率和質(zhì)量量軟件開發(fā)軟件開發(fā)“輸出量輸出量”(作為投入的工作量和時間(作為投入的工作量

25、和時間的函數(shù))的測量和對生產(chǎn)的工作產(chǎn)品的的函數(shù))的測量和對生產(chǎn)的工作產(chǎn)品的“適用性適用性”的測的測量。為了進行過程改進和項目策劃,必須掌握歷史的情量。為了進行過程改進和項目策劃,必須掌握歷史的情況。在以往的項目中,軟件開發(fā)的生產(chǎn)率是多少?生產(chǎn)況。在以往的項目中,軟件開發(fā)的生產(chǎn)率是多少?生產(chǎn)的軟件質(zhì)量如何?怎樣利用以往的生產(chǎn)率數(shù)據(jù)和質(zhì)量數(shù)的軟件質(zhì)量如何?怎樣利用以往的生產(chǎn)率數(shù)據(jù)和質(zhì)量數(shù)據(jù)推斷現(xiàn)在的生產(chǎn)率和質(zhì)量?如何利用這些數(shù)據(jù)幫助我據(jù)推斷現(xiàn)在的生產(chǎn)率和質(zhì)量?如何利用這些數(shù)據(jù)幫助我們改進過程,以及更精確地規(guī)劃新的項目?們改進過程,以及更精確地規(guī)劃新的項目?面向?qū)ο蟮亩攘縱傳統(tǒng)的軟件項目度量也可以用

26、于估算面向傳統(tǒng)的軟件項目度量也可以用于估算面向?qū)ο蟮能浖椖?。但是,這些度量并沒有對象的軟件項目。但是,這些度量并沒有提供對進度和工作量進行調(diào)整的足夠的粒提供對進度和工作量進行調(diào)整的足夠的粒度,而這卻是在演化模型或增量模型中進度,而這卻是在演化模型或增量模型中進行迭代時所需要的。行迭代時所需要的。LOR94提出了下列提出了下列用于用于OO項目的度量。項目的度量。v場景腳本的數(shù)量場景腳本的數(shù)量v關(guān)鍵類的數(shù)量關(guān)鍵類的數(shù)量v支持類的數(shù)量支持類的數(shù)量v每個關(guān)鍵類的平均支持類數(shù)量每個關(guān)鍵類的平均支持類數(shù)量v子系統(tǒng)的數(shù)量子系統(tǒng)的數(shù)量面向用例的度量v與與LOC或或FP相類似,使用用例作為規(guī)范相類似,使用用例

27、作為規(guī)范化的測量應(yīng)該是合理的。同化的測量應(yīng)該是合理的。同F(xiàn)P一樣,用例一樣,用例也是在軟件過程早期進行定義的。在重大也是在軟件過程早期進行定義的。在重大的建?;顒雍蜆?gòu)造活動開始之前,就允許的建?;顒雍蜆?gòu)造活動開始之前,就允許使用用例進行估算。用例描述了用戶可見使用用例進行估算。用例描述了用戶可見的功能和特性,這些都是系統(tǒng)的基本需求。的功能和特性,這些都是系統(tǒng)的基本需求。用例與程序設(shè)計語言無關(guān)。另外,用例的用例與程序設(shè)計語言無關(guān)。另外,用例的數(shù)量同應(yīng)用系統(tǒng)的規(guī)模和測試用例的數(shù)量數(shù)量同應(yīng)用系統(tǒng)的規(guī)模和測試用例的數(shù)量成正比,而測試用例是為了充分測試該應(yīng)成正比,而測試用例是為了充分測試該應(yīng)用系統(tǒng)而必須

28、設(shè)計的。用系統(tǒng)而必須設(shè)計的。軟件質(zhì)量度量v軟件工程的基本目標是在某個時間框架內(nèi)軟件工程的基本目標是在某個時間框架內(nèi)開發(fā)出滿足市場需要的高質(zhì)量的系統(tǒng)、應(yīng)開發(fā)出滿足市場需要的高質(zhì)量的系統(tǒng)、應(yīng)用或產(chǎn)品。為了達到這個目標,軟件工程用或產(chǎn)品。為了達到這個目標,軟件工程師必須在成熟的軟件過程背景下,使用有師必須在成熟的軟件過程背景下,使用有效的方法及現(xiàn)代化的工具。此外,一個優(yōu)效的方法及現(xiàn)代化的工具。此外,一個優(yōu)秀的軟件工程師必須通過測量來判斷能否秀的軟件工程師必須通過測量來判斷能否實現(xiàn)高質(zhì)量。實現(xiàn)高質(zhì)量。軟件質(zhì)量度量v將軟件工程師個人收集的私有度量結(jié)合起將軟件工程師個人收集的私有度量結(jié)合起來,可以提供項目

29、級的度量。雖然可以收來,可以提供項目級的度量。雖然可以收集到很多質(zhì)量測量數(shù)據(jù),但在項目級上最集到很多質(zhì)量測量數(shù)據(jù),但在項目級上最主要的還是測量錯誤和缺陷的數(shù)量。從這主要的還是測量錯誤和缺陷的數(shù)量。從這些測量中導出的度量能夠提供一個指標,些測量中導出的度量能夠提供一個指標,表明個人及小組在軟件質(zhì)量保證和控制活表明個人及小組在軟件質(zhì)量保證和控制活動上的效力。動上的效力。軟件質(zhì)量度量v度量度量比如說工作產(chǎn)品比如說工作產(chǎn)品(如需求或設(shè)如需求或設(shè)計計)每功能點的錯誤數(shù)、在評審中每小每功能點的錯誤數(shù)、在評審中每小時發(fā)現(xiàn)的錯誤數(shù)、測試中每小時發(fā)現(xiàn)的錯時發(fā)現(xiàn)的錯誤數(shù)、測試中每小時發(fā)現(xiàn)的錯誤數(shù),使我們能夠深入了

30、解度量所涉及的誤數(shù),使我們能夠深入了解度量所涉及的活動的功效。有關(guān)錯誤的數(shù)據(jù)也能用來計活動的功效。有關(guān)錯誤的數(shù)據(jù)也能用來計算每個過程框架活動的缺陷排除效率算每個過程框架活動的缺陷排除效率DRE。測量質(zhì)量v正確性、可維護性、完整性和可用性為項目團隊正確性、可維護性、完整性和可用性為項目團隊提供了有用的指標。提供了有用的指標。v正確性:一個程序必須能夠正確地執(zhí)行,否則對于用戶正確性:一個程序必須能夠正確地執(zhí)行,否則對于用戶就沒有價值了。正確性是軟件完成所要求的功能的程度。就沒有價值了。正確性是軟件完成所要求的功能的程度。最常用的關(guān)于正確性的測量是每千行代碼的缺陷數(shù)。最常用的關(guān)于正確性的測量是每千行代碼的缺陷數(shù)。v可維護性:可維護性是指遇到錯誤時程序能夠被修可維護性:可維護性是指遇到錯誤時程序能夠被修改的容易程度,環(huán)境發(fā)生變化時程序能夠適應(yīng)的容改的容易程度,環(huán)境發(fā)生變化時程序能夠適應(yīng)的容易程度,用戶希望變更需求時程序能夠被增強的容易程度,用戶希望變更需求時程序能夠被增強的容易程度。還沒有一種方法可以直接測量可維護性,易程度。還沒有一種方法可以直接測量可維護性,只能采用間接測量。有一種簡單的面向時間的度量,只能采用間接測量。有一種簡單的面向時間的度量,稱為平均變更時間稱為平均變更時間MTTC。測量質(zhì)量v完整性:這個屬性測量的是一個系統(tǒng)對安完整性:這個屬性測量的是一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論