淺談軟件開(kāi)發(fā)過(guò)程的質(zhì)量度量技術(shù)
摘要:本文討論軟件開(kāi)發(fā)過(guò)程中度量對質(zhì)量管理的重要性。如果沒(méi)有度量,沒(méi)有對軟件過(guò)程的可見(jiàn)度,就無(wú)法控制軟件質(zhì)量。
關(guān)鍵詞:軟件開(kāi)發(fā)質(zhì)量度量
軟件工程的唯一目標是生產(chǎn)出高質(zhì)量的軟件“。軟件質(zhì)量保證”(Software Quality Assurance,簡(jiǎn)稱(chēng)SQA)是一種應用于整個(gè)軟件過(guò)程的保護性活動(dòng)。目的是驗證在軟件開(kāi)發(fā)過(guò)程中是否遵循了合適的過(guò)程和標準。SQA應用軟件質(zhì)量度量技術(shù)使其在軟件生命周期各階段均得以保證。
軟件度量是測度。測度用于整個(gè)軟件過(guò)程:輔助估算、質(zhì)量控制、生產(chǎn)率評估、及項目控制,目的是改進(jìn)它。軟件工程管理和其它工程管理相比有其特殊性。首先,軟件是知識產(chǎn)品,進(jìn)度和質(zhì)量都難以度量,生產(chǎn)效率也難以保證。其次,軟件系統復雜程度也是超乎想象的。正因為軟件如此復雜和難以度量,為生產(chǎn)出高質(zhì)量的軟件這個(gè)目的,軟件工程質(zhì)量度量顯得更加重要。
1、軟件需求是進(jìn)行“質(zhì)量”度量的基礎軟件質(zhì)量度量考慮兩種不同的質(zhì)量:設計質(zhì)量和符合質(zhì)量。設計質(zhì)量包括系統的需求、規約和設計。符合質(zhì)量則主要關(guān)注實(shí)現問(wèn)題,如果實(shí)現了設計、得到的系統滿(mǎn)足需求和性能目標,則符合質(zhì)量較高,缺乏需求符合性則質(zhì)量不高;指定的質(zhì)量標準定義了一組軟件開(kāi)發(fā)的準則,缺乏開(kāi)發(fā)標準就缺少質(zhì)量“;隱含需求”沒(méi)有滿(mǎn)足,軟件質(zhì)量也值得懷疑。
為了保證軟件產(chǎn)品滿(mǎn)足需求,質(zhì)量控制應用于整個(gè)開(kāi)發(fā)周期的一系列審查、復審和測試。質(zhì)量控制的任務(wù)就是策劃可行的質(zhì)量管理活動(dòng),然后正確地執行和控制這些活動(dòng)以保證絕大多數的缺陷可以在開(kāi)發(fā)過(guò)程中被發(fā)現。質(zhì)量控制在創(chuàng )建工作產(chǎn)品的過(guò)程中還包括一個(gè)反饋循環(huán)。度量和反饋相結合,使得監測產(chǎn)品不滿(mǎn)足規約時(shí)可調整開(kāi)發(fā)過(guò)程。質(zhì)量控制將視為整個(gè)制造過(guò)程的一部分。
2、軟件度量的三個(gè)步驟
軟件度量有數據收集、度量計算及度量評估三個(gè)必須執行的步驟。要度量軟件質(zhì)量,可通過(guò)創(chuàng )建一個(gè)包含過(guò)程及產(chǎn)品測量的數據庫,讓軟件工程師及管理者能夠更好地了解他們所做的工作及所開(kāi)發(fā)的產(chǎn)品各個(gè)時(shí)段的質(zhì)量狀態(tài)。
軟件工程是一種層次化技術(shù),包括過(guò)程、方法和工具,它對技術(shù)或實(shí)體的分析、設計、建造、驗證和管理。其基礎是過(guò)程層,軟件過(guò)程是建造高質(zhì)量軟件需要完成的任務(wù)框架,它定義了軟件開(kāi)發(fā)中采用的方法,而方法層是技術(shù)上如何實(shí)現,工具層對過(guò)程和方法提供自動(dòng)化和半自動(dòng)化工具的支持。軟件工程探索軟件開(kāi)發(fā)過(guò)程的研究現狀,以有組織的質(zhì)量保證為基礎。質(zhì)量管理刺激了不斷的過(guò)程改進(jìn),正是這種改進(jìn)導致了更加成熟的軟件工程方法的不斷出現。
3、軟件工程用技術(shù)度量評估質(zhì)量軟件工程的最高目標就是產(chǎn)生高質(zhì)量的系統、應用軟件或產(chǎn)品。為了達到這個(gè)目標,軟件工程師必須掌握在成熟的軟件過(guò)程背景下對有效的方法及現代化的工具(如CASE)之應用。由于硬件成本持續降低,可支持運行CASE工具的工作站和網(wǎng)絡(luò )已經(jīng)成為軟件工程使用的工作平臺,CASE工具可完成一些特定的軟件開(kāi)發(fā)過(guò)程。這些工具提供給軟件設計者以圖形方式描述軟件設計的能力,這樣就易于維護、易于交叉檢查、易于理解。除此之外,優(yōu)秀的軟件工程師及優(yōu)秀的軟件工程管理者必須不時(shí)評估是否能夠達到高質(zhì)量的目標。
4、有用的軟件質(zhì)量的測量指標
為了保證軟件質(zhì)量,人們用直接的或間接的測量方法測度質(zhì)量因素,書(shū)中提出四種常用測量指標:正確性:正確性是軟件完成所需的功能的程度。正確性的最常用的測量是每千行(KLOC)的缺陷數,在這里,缺陷定義為驗證出來(lái)的與需求不符的地方。
可維護性:指遇到錯誤時(shí)程序能被修改的容易程度;環(huán)境發(fā)生變化時(shí)程序能夠適應的容易程度,用戶(hù)希望改變需求時(shí)程序被增強的容易程度?删S護性無(wú)法直接測量,采用間接測量。如面向時(shí)間的度量用平均修改時(shí)間(mean-time-to-change,MTTC),即分析改變的需求、設計合格的修改方案、并將修改的結果發(fā)布給用戶(hù)所花的時(shí)間。
完整性:現在軟件完整性日益重要。它測量系統在安全方面的抗攻擊能力。這些攻擊可能發(fā)生在軟件的三個(gè)主要成分上:程序、數據及文檔。為了測量完整性必須加入兩個(gè)附加的屬性:威脅和安全性。一個(gè)系統的完整性可以定義為:完整性=Σ[l—威脅×(1—安全性)]可用性:即“用戶(hù)友好性”。根據四個(gè)特性量化“用戶(hù)友好性”:(1)學(xué)會(huì )系統所需的體力的和/或智力的投入;(2)使用系統達到中等效率所需的時(shí)間;(3)當系統由某個(gè)具有中等效率的人使用時(shí),測量到的生產(chǎn)率的凈增長(cháng)率(與被該系統替代的老系統相比);以及(4)用戶(hù)對系統的態(tài)度的主觀(guān)評估(可以通過(guò)調查表獲得)。
上述的四個(gè)因素僅僅是被建議作為軟件質(zhì)量測量顯的眾多因素中的一個(gè)樣板,軟件質(zhì)量因素還有:健壯性、效率、可用性、風(fēng)險、可理解性、可維修性、靈活性(適應性)、可測試性、可移植性(、有一種定量度量的方法是:用原來(lái)程序設計和調試的成本除移植時(shí)需用的費用)?稍儆眯、可運行性等等。
5、結語(yǔ)
差異控制是軟件工程質(zhì)量控制的核心。要生產(chǎn)出高質(zhì)量的軟件,就要注意差異控制,注意項目需求分析。在需求分析階段要注意:(1)質(zhì)量指標對不同人群、不同目的、不同時(shí)段要求可能不同,具體質(zhì)量控制指標需供需雙方共同約定;(2)質(zhì)量指標與度量標準、目的相關(guān),一般的情況是高指標具有高技術(shù)難度、需要高投入、較長(cháng)開(kāi)發(fā)期;(3)軟件開(kāi)發(fā)不同于其他產(chǎn)品的制造,軟件的整個(gè)過(guò)程都是設計過(guò)程(沒(méi)有制造過(guò)程);(4)軟件開(kāi)發(fā)不需要使用大量的物質(zhì)資源,而主要是人力資源。
充分認識軟件工程的目標,為確保目標實(shí)現切實(shí)采用的軟件度量技術(shù),控制所有過(guò)程的質(zhì)量,滿(mǎn)足顧客和組織內部雙方的需要和利益,定期評價(jià)質(zhì)量體系,生產(chǎn)出高質(zhì)量軟件。
【淺談軟件開(kāi)發(fā)過(guò)程的質(zhì)量度量技術(shù)】相關(guān)文章:
淺談建筑工程質(zhì)量及基礎安全施工技術(shù)12-11
淺談如何提高護理質(zhì)量?03-24
淺談基于質(zhì)量技術(shù)特征改善率的并行優(yōu)化模型分析論文03-09
淺談臨床醫學(xué)檢驗技術(shù)質(zhì)量管理問(wèn)題及對策收03-01
淺談高性能砼施工技術(shù)及質(zhì)量控制措施論文11-28
淺談數控實(shí)習教學(xué)質(zhì)量的提高12-04
淺談電工電子技術(shù)教學(xué)12-04
淺談鋼纖維混凝土路面施工技術(shù)與質(zhì)量控制措施論文03-12
- 相關(guān)推薦