




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
軟件工程第一頁,共四十一頁。第19章過程和項目度量第二頁,共四十一頁。主要內(nèi)容過程領域和項目領域中的度量軟件測量軟件質量度量小結第三頁,共四十一頁。過程和項目度量軟件過程和項目度量是定量的測量,這些測量能使軟件工程師更深入地了解軟件過程的功效,以及使用該過程作為框架進行開發(fā)的項目的功效。度量時,首先收集基本的質量數(shù)據(jù)和生產(chǎn)率數(shù)據(jù),然后分析這些數(shù)據(jù)、與過去的平均值進行比較,通過評估來確定是否已有質量和生產(chǎn)率的提高。度量也可以用來查明問題區(qū)域,以便確定合適的補救方法,并改進軟件過程。第四頁,共四十一頁。過程和項目度量軟件度量由軟件管理者來分析和評估。測量數(shù)據(jù)通常由軟件工程師來收集。如果不進行測量,只能根據(jù)主觀評價來做判斷。通過測量,可以發(fā)現(xiàn)趨勢,可以更好地進行估算,隨著時間的推移能夠獲得真正的改進。第五頁,共四十一頁。過程和項目度量首先確定一組有限的易于收集的過程測量和項目測量。通常使用面向規(guī)?;蛎嫦蚬δ艿亩攘繉@些測量進行規(guī)范化。然后,對測量結果進行分析,并與該組織以前完成的類似項目的平均數(shù)據(jù)進行比較。最后評估趨勢,并給出結論。工作產(chǎn)品是得到一組軟件度量,它們提供了對過程的洞察力和對項目的理解。第六頁,共四十一頁。過程和項目度量通過提供目標評估的機制,測量使我們能夠對項目和過程有更深入的了解。LordKelvin曾經(jīng)說過:當你能夠測量你所說的事物,并能用數(shù)字表達它時,你就對它有了一定的了解;當你不能測量它,也不能用數(shù)字來表達時,就說明你對它的了解還很貧乏,不能令人滿意:這可能是知識的開始,但你在思想上還遠遠沒有進入科學的境地。第七頁,共四十一頁。過程和項目度量測量可以應用于軟件過程中,目的是持續(xù)地改進軟件過程。測量也可以應用于整個軟件項目中,輔助進行估算、質量控制、生產(chǎn)率評估及項目控制。最后,軟件工程師還可以使用測量來幫助評估工作產(chǎn)品的質量,并在項目進展過程中輔助進行戰(zhàn)術決策。第八頁,共四十一頁。過程和項目度量[PAR96]討論了進行測量的理由:
(1)刻畫——通過刻畫而獲得對過程、產(chǎn)品、資源和環(huán)境的了解,并建立同未來評估進行比較的基線;
(2)評價——通過評價來確定相對于計劃的狀況;
(3)預測——通過理解過程和產(chǎn)品間的關系,并構造這些關系的模型來進行預測;
(4)改進——通過識別障礙、根本原因、低效率和其他改進產(chǎn)品質量和過程性能的機會來進行改進。測量是一個管理工具,如果能正確地使用,它將為項目管理者提供洞察力。因此,測量能夠幫助項目管理者和軟件團隊制定出使項目成功的決策。第九頁,共四十一頁。過程領域和項目領域中的度量過程度量的收集涉及所有的項目,而且要經(jīng)歷相當長的時間,目的是提供能夠引導長期的軟件過程改進的一組過程指標。項目度量使得軟件項目管理者能夠:(1)評估正在進行中的項目的狀態(tài);(2)跟蹤潛在的風險;(3)在問題造成不良影響之前發(fā)現(xiàn)它們;(4)調(diào)整工作流程或任務;(5)評估項目團隊控制軟件工作產(chǎn)品質量的能力。測量數(shù)據(jù)由項目團隊收集,然后被轉換成度量數(shù)據(jù)在項目期間使用。測量數(shù)據(jù)也可以傳送給那些負責軟件過程改進的人員。因此,很多相同的度量既可用于過程領域,又可用于項目領域。第十頁,共四十一頁。過程度量和軟件過程改進改進任何過程的唯一合理方法就是測量該過程的特定屬性,再根據(jù)這些屬性建立一組有意義的度量,然后使用這組度量提供的指標來導出過程改進策略。但是,在討論軟件度量及其對軟件過程改進的影響之前,必須注意到:過程僅是眾多“改進軟件質量和組織性能的控制因素”中的一種。第十一頁,共四十一頁。軟件質量和組織有效性的決定因素圖19-1軟件質量和組織有效性的決定因素第十二頁,共四十一頁。過程度量和軟件過程改進在圖19-1中,過程位于三角形的中央,連接了三個對軟件質量和組織績效有重大影響的因素。其中,人員的技能和動力被認為是對質量和績效影響最大的因素,產(chǎn)品復雜性對質量和團隊績效也有相當大的影響,過程中采用的技術也有一定的影響。另外,過程三角形位于環(huán)境條件圓圈內(nèi),環(huán)境條件包括:開發(fā)環(huán)境、商業(yè)條件、客戶特性。第十三頁,共四十一頁。過程度量和軟件過程改進可以間接地測量軟件過程的功效。即,可以根據(jù)從過程中獲得的結果來導出一組度量。這些結果包括:在軟件發(fā)布之前發(fā)現(xiàn)的錯誤數(shù)的測度,提交給最終用戶并由最終用戶報告的缺陷的測度,交付的工作產(chǎn)品的測度,花費的工作量的測度,花費時間的測度,與進度計劃是否一致的測度,以及其他測度。還可以通過測量特定軟件工程任務的特性來導出過程度量。第十四頁,共四十一頁。過程度量和軟件過程改進[GRA92]認為不同類型的過程數(shù)據(jù)的使用可以分為“私有的和公有的”。私有度量的例子有:個人缺陷率、軟件構件缺陷率和開發(fā)過程中發(fā)現(xiàn)的錯誤數(shù)?!八接羞^程數(shù)據(jù)”的觀點與Humphrey所建議的個人軟件過程方法相一致。Humphrey認為過程改進能夠、也應該開始于個人級。私有過程數(shù)據(jù)是軟件工程師個人改進其工作的重要驅動力。有些過程度量對于軟件項目團隊是私有的,但對所有團隊成員是公用的。例如,主要軟件功能的缺陷報告、正式技術評審中發(fā)現(xiàn)的錯誤,以及每個構件或功能的代碼行數(shù)或功能點數(shù)。這些數(shù)據(jù)可由團隊進行評審,以便找出能夠改善團隊性能的指標。第十五頁,共四十一頁。過程度量和軟件過程改進公用的度量一般吸收了原本是個人或團隊的私有信息。收集和評估項目級的缺陷率、工作量、時間以及相關的數(shù)據(jù),來找出能夠改善組織過程性能的指標。軟件過程度量對于組織提高其整體的過程成熟度能夠提供很大的幫助。不過,就像所有其他度量一樣,軟件過程度量也可能被誤用,產(chǎn)生的問題比它們所能解決的問題更多。第十六頁,共四十一頁。過程度量和軟件過程改進[GRA92]提出一組“軟件度量規(guī)則”。管理者和開發(fā)者在制定過程度量大綱時,這些規(guī)則都適用:解釋度量數(shù)據(jù)時使用常識,并考慮組織的敏感性。向收集測量和度量的個人及團隊定期提供反饋。不要使用度量去評價個人。與開發(fā)者和團隊一起設定清晰的目標,并確定為達到這些目標需要使用的度量。不要用度量去威脅個人或團隊。指出問題區(qū)域的度量數(shù)據(jù)不應該被“消極地”看待,這些數(shù)據(jù)僅僅是過程改進的指標。不要在某一個別的度量上糾纏,而無暇顧及其他重要的度量。第十七頁,共四十一頁。過程度量和軟件過程改進隨著一個組織更加得心應手地收集和使用過程度量,簡單的指標獲取方式就會逐漸被更加精確的方法所取代,該方法稱為統(tǒng)計軟件過程改進。本質上,SSPI使用軟件失效分析方法收集在應用軟件、系統(tǒng)或產(chǎn)品的開發(fā)及使用過程中所遇到的所有的錯誤及缺陷信息。第十八頁,共四十一頁。項目度量軟件過程度量用于戰(zhàn)略目的,而軟件項目度量則用于戰(zhàn)術目的。即,項目管理者和軟件項目團隊通過使用項目度量及從中導出的指標,可以改進項目工作流程和技術活動。在大多數(shù)軟件項目中,項目度量的第一次應用是在估算階段。從過去項目中收集的度量可以作為估算當前軟件工作量及時間的基礎。隨著項目的進展,可以將花費的工作量及時間的測量與最初的估算值(及項目進度)進行比較。項目管理者可以使用這些數(shù)據(jù)來監(jiān)控項目的進展。第十九頁,共四十一頁。項目度量隨著技術工作的啟動,其他項目度量也開始有意義了。生產(chǎn)率可以根據(jù)創(chuàng)建的模型、評審的時間、功能點以及交付的源代碼行數(shù)來測量。此外,對每個軟件工程任務中所發(fā)現(xiàn)的錯誤也要進行跟蹤。在軟件從需求到設計的演化過程中,需要收集技術度量來評估設計質量,并提供若干指標,這些指標將會影響代碼生成及測試所采用的方法。第二十頁,共四十一頁。項目度量項目度量的目的是雙重的。首先,利用度量能夠對開發(fā)進度進行必要的調(diào)整,以避免延遲,并減少潛在的問題及風險,從而使得開發(fā)時間減到最少。其次,項目度量可在項目進行過程中評估產(chǎn)品質量,必要時可調(diào)整技術方法以提高質量。隨著質量的提高,缺陷會減到最少。而隨著缺陷數(shù)的減少,項目中所需的修改工作量也會降低,這將使整個項目成本降低。第二十一頁,共四十一頁。軟件測量軟件測量有兩種分類方法:(1)軟件過程(如花費的成本和工作量)和產(chǎn)品(如產(chǎn)生的代碼行(LOC)、運行速度以及某段時間內(nèi)報告的缺陷)的直接測量;(2)產(chǎn)品的間接測量,包括功能、質量、復雜性、有效性、可靠性、可維護性,以及許多其他的“產(chǎn)品特性”。將項目度量聯(lián)合起來可以得到整個軟件組織公用的過程度量。第二十二頁,共四十一頁。面向規(guī)模的度量面向規(guī)模的軟件度量是通過規(guī)范化質量和(或)生產(chǎn)率的測量值而得到的,這些測量都基于已經(jīng)開發(fā)的軟件的規(guī)模。如果軟件組織一直在做簡單的記錄,就會產(chǎn)生一個如圖19-2所示的面向規(guī)模測量的表。該表列出了在過去幾年中完成的每一個軟件開發(fā)項目及其相關的測量數(shù)據(jù)。第二十三頁,共四十一頁。面向規(guī)模的度量圖19-2面向規(guī)模的度量第二十四頁,共四十一頁。面向規(guī)模的度量為了產(chǎn)生能和其他項目中同類度量進行比較的度量,選擇代碼行作為規(guī)范化值。根據(jù)表中所包含的基本數(shù)據(jù),每個項目都能得到一組簡單的面向規(guī)模的度量:每千行代碼(KLOC)的錯誤數(shù);每千行代碼的缺陷數(shù);每千行代碼的成本;每千行代碼的文檔頁數(shù);此外,還能計算出其他有意義的度量。第二十五頁,共四十一頁。面向功能的度量面向功能的軟件度量使用功能測量數(shù)據(jù)作為規(guī)范化值。應用最廣泛的面向功能的度量是功能點FP。功能點是根據(jù)軟件信息域的特性及復雜性來計算的。第二十六頁,共四十一頁。調(diào)和代碼行和功能點的度量方法代碼行和功能點之間的關系依賴于實現(xiàn)軟件所采用的程序設計語言及設計的質量。很多研究試圖將FP測量和LOC測量聯(lián)系起來。表19-1(P340頁)給出了在不同的程序設計語言中實現(xiàn)一個功能點所需的平均代碼行數(shù)的粗略估算。第二十七頁,共四十一頁。調(diào)和代碼行和功能點的度量方法人們發(fā)現(xiàn)基于功能點和LOC的度量都是對軟件開發(fā)工作量和成本的比較精確的判定。然而,如果使用LOC和FP進行估算,還必須要建立一個歷史信息基線。在過程度量和項目度量中,最關心的是生產(chǎn)率和質量——軟件開發(fā)“輸出量”(作為投入的工作量和時間的函數(shù))的測量和對生產(chǎn)的工作產(chǎn)品的“適用性”的測量。為了進行過程改進和項目策劃,必須掌握歷史的情況。在以往的項目中,軟件開發(fā)的生產(chǎn)率是多少?生產(chǎn)的軟件質量如何?怎樣利用以往的生產(chǎn)率數(shù)據(jù)和質量數(shù)據(jù)推斷現(xiàn)在的生產(chǎn)率和質量?如何利用這些數(shù)據(jù)幫助我們改進過程,以及更精確地規(guī)劃新的項目?第二十八頁,共四十一頁。面向對象的度量傳統(tǒng)的軟件項目度量也可以用于估算面向對象的軟件項目。但是,這些度量并沒有提供對進度和工作量進行調(diào)整的足夠的粒度,而這卻是在演化模型或增量模型中進行迭代時所需要的。[LOR94]提出了下列用于OO項目的度量。場景腳本的數(shù)量關鍵類的數(shù)量支持類的數(shù)量每個關鍵類的平均支持類數(shù)量子系統(tǒng)的數(shù)量第二十九頁,共四十一頁。面向用例的度量與LOC或FP相類似,使用用例作為規(guī)范化的測量應該是合理的。同F(xiàn)P一樣,用例也是在軟件過程早期進行定義的。在重大的建模活動和構造活動開始之前,就允許使用用例進行估算。用例描述了用戶可見的功能和特性,這些都是系統(tǒng)的基本需求。用例與程序設計語言無關。另外,用例的數(shù)量同應用系統(tǒng)的規(guī)模和測試用例的數(shù)量成正比,而測試用例是為了充分測試該應用系統(tǒng)而必須設計的。第三十頁,共四十一頁。軟件質量度量軟件工程的基本目標是在某個時間框架內(nèi)開發(fā)出滿足市場需要的高質量的系統(tǒng)、應用或產(chǎn)品。為了達到這個目標,軟件工程師必須在成熟的軟件過程背景下,使用有效的方法及現(xiàn)代化的工具。此外,一個優(yōu)秀的軟件工程師必須通過測量來判斷能否實現(xiàn)高質量。第三十一頁,共四十一頁。軟件質量度量將軟件工程師個人收集的私有度量結合起來,可以提供項目級的度量。雖然可以收集到很多質量測量數(shù)據(jù),但在項目級上最主要的還是測量錯誤和缺陷的數(shù)量。從這些測量中導出的度量能夠提供一個指標,表明個人及小組在軟件質量保證和控制活動上的效力。第三十二頁,共四十一頁。軟件質量度量度量——比如說工作產(chǎn)品(如需求或設計)——每功能點的錯誤數(shù)、在評審中每小時發(fā)現(xiàn)的錯誤數(shù)、測試中每小時發(fā)現(xiàn)的錯誤數(shù),使我們能夠深入了解度量所涉及的活動的功效。有關錯誤的數(shù)據(jù)也能用來計算每個過程框架活動的缺陷排除效率DRE。第三十三頁,共四十一頁。測量質量正確性、可維護性、完整性和可用性為項目團隊提供了有用的指標。正確性:一個程序必須能夠正確地執(zhí)行,否則對于用戶就沒有價值了。正確性是軟件完成所要求的功能的程度。最常用的關于正確性的測量是每千行代碼的缺陷數(shù)??删S護性:可維護性是指遇到錯誤時程序能夠被修改的容易程度,環(huán)境發(fā)生變化時程序能夠適應的容易程度,用戶希望變更需求時程序能夠被增強的容易程度。還沒有一種方法可以直接測量可維護性,只能采用間接測量。有一種簡單的面向時間的度量,稱為平均變更時間MTTC。第三十四頁,共四十一頁。測量質量完整性:這個屬性測量的是一個系統(tǒng)對安全性攻擊的抵抗能力。軟件的所有三個成分都會遭到攻擊。為了測量完整性,必須定義另外兩個屬性:危險性和安全性。危險性是指一個特定類型的攻擊在給定的時間內(nèi)發(fā)生的概率。安全性是指一個特定類型的攻擊將被擊退的概率。一個系統(tǒng)的完整性可定義為:
完整性=∑[1-(危險性×(1-安全性))]第三十五頁,共四十一頁。測量質量可用性:如果一個程序不容易使用,即使它完成的功能很有價值,也常常注定要失敗??捎眯粤D對“使用的容易程度”進行量化。第三十六頁,共四十一頁。缺陷排除效率缺陷排除效率DRE是在項目級和過程級都有意義的質量度量。本質上,DRE是對質量保證及控制活動中濾除缺陷能力的測量,而這些質量保證及質量控制活動貫穿應用于所有過程框架活動中。當把項目作為一個整體來考慮時
DRE=E/(E+D)
其中E是軟件交付給最終用戶之前發(fā)現(xiàn)的錯誤數(shù),D是軟
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 南昌市租賃住房合同樣本
- 青島企業(yè)員工勞動合同范本
- 企業(yè)退休返聘合同范本
- 租賃運輸工具合同標準
- 版離婚合同模板:專業(yè)律師為您量身定制
- 酒店員工勞動合同標準合同
- 高校畢業(yè)就業(yè)合同簽訂須知
- 影視作品授權合同(臺港澳地區(qū))
- 光纖通信安全與防護考核試卷
- 木片在農(nóng)業(yè)土壤改良的研究進展考核試卷
- 部編版小學五年級下冊《道德與法治》全冊教案含教學計劃
- 8款-組織架構圖(可編輯)
- 2023年出入境邊防檢查題庫
- 小兒推拿學理論知識考核試題及答案
- 2022年云南省中考生物試題及參考答案
- 章振邦《新編英語語法》LECTURE-1-句子結構課件
- 廣告公司業(yè)務價格表
- 防水卷材熱老化試驗檢測記錄表
- GB∕T 7758-2020 硫化橡膠 低溫性能的測定 溫度回縮程序(TR 試驗)
- 領導干部道德修養(yǎng)1
- Chapter-1-生物信息學簡介
評論
0/150
提交評論