深夜成人在线,chinese国产一区二区,欧美精品乱码,日韩欧美在线视频免费观看,国产午夜不卡,日韩av影院在线,五月天婷婷国产精品

專業(yè)信息系統(tǒng)項目管理師網站|培訓機構|服務商(2021信息系統(tǒng)項目管理師學習QQ群:89253946,客服QQ:800184589)

軟題庫 培訓課程
當前位置:信管網 >> 信息系統(tǒng)項目管理師 >> 其它資料 >> 文章內容
基于關鍵性和安全性的軟件質量保證
來源:信管網 2011年12月04日 【所有評論 分享到微信

摘要:本文首先對軟件質量特征中的關鍵性和安全性進行了等級劃分,然后從軟件質量保證的角度,分析了如何基于關鍵性和安全性進行軟件質量保證活動,對提高軟件質量具有一定的促進作用。
關鍵詞:關鍵性、安全性、質量保證
軟件質量,是貫穿軟件生存期的一個極為重要的問題。是軟件開發(fā)過程中所使用的各種開發(fā)技術和驗證方法的最終體現(xiàn)。因此,在軟件開發(fā)過程中要特別重視質量的保證,以生成高質量的軟件產品。
在各種有關軟件質量的定義中,例如,ANSI/IEEE Std 729-1983定義軟件質量為:與軟件產品滿足規(guī)定的和隱含的需求的能力有關的特征或特征的全體;M.J.Fisher定義軟件質量為:所有描述計算機軟件優(yōu)秀程度的特性的組合。從這些定義中,我們可以得到一個重要的結論:軟件質量的高低是通過一些質量特性來體現(xiàn)的。為此,本文主要結合關鍵性和安全性這兩個質量特性來談談如何提高軟件質量。
1. 軟件的關鍵性等級
由于軟件功能和應用場合的不同,軟件或軟件部件在出現(xiàn)故障時所帶來的后果是不一樣的。有的是災難性的,它會造成人員的傷亡和巨大的經濟損失;而有的只是一種錯誤而已,人們很容易將其糾正,而軟件當前要做的工作可以留待下一階段再做,其損失也只是時間和人力問題。根據這些原因我們可以把軟件劃分為下面的關鍵性等級:
(1). A級軟件
這類軟件可以是一個軟件項目,也可以是項目中的一個或某幾個部件。對這類軟件有非常高的運行可靠性要求,一般情況下要求開發(fā)和運行都需要有相應的冗余和備份措施,以保證開發(fā)過程中的高質量控制要求和運行過程中的高可靠性要求達到滿足。通常采取的辦法是兩組人員對同一個A級軟件同時進行開發(fā),最后用質量高的一個或兩個軟件同時運行而互為備份;對于運行中的冗余,一般是在兩個不同的環(huán)境中運行兩個完全相同的軟件或在同一個環(huán)境中運行兩個不同人員開發(fā)的具有相同功能的軟件。
(2). B級軟件
同A級軟件一樣,這類軟件也可以是一個軟件項目或者是項目中的一個或某幾個部件。對這類軟件有較高的運行可靠性要求,一般情況下可采用運行冗余,即在兩個配置相同的環(huán)境中運行兩個完全相同的軟件;在開發(fā)中要有嚴格的質量管理和質量控制措施,確保軟件的質量和軟件產品的運行可靠性。
(3). C級軟件
同A級軟件一樣,這類軟件也可以是一個軟件項目或者是項目中的一個或某幾個部件。但對這類軟件的運行可靠性要求不是特別的高,在開發(fā)中有嚴格的質量管理和質量控制措施以保證軟件的質量達到需求中的質量要求即可。
(4). D級軟件
同其他種類的軟件一樣,這類軟件也可以是一個軟件項目或者是項目中的一個或某幾個部件。但對這類軟件的運行可靠性只是做一般的要求,在開發(fā)中有必要的質量管理和質量控制措施從而能保證軟件的質量達到規(guī)定要求即可。
2. 軟件的安全性等級
由于軟件應用場合和應用領域的不同,軟件產品在預防干擾、預防非法者侵入和信息安全保密的要求是不一樣的。有的軟件系統(tǒng)一旦有非法者進入并做了一些非法操作后,其結果可能是災難性的,它會造成人員的傷亡和巨大的經濟損失;而有的只是一種簡單的破壞而已,花一定的時間進行修復即可。當然,不管是什么系統(tǒng),其安全性越高越好,但高的安全性是需要用高的代價來換取的,所以安全性要求是要根據系統(tǒng)的使用場合來定的。對于不同安全性要求的軟件,其管理、規(guī)劃和質量控制的方法和要求是不一樣的。
如何來定義一個軟件的安全性,通常采用的辦法是按等級來定。關于軟件系統(tǒng)的安全性劃分,應該說到目前為止還沒有一種完全統(tǒng)一的標準,本文參照美國國防部1985年發(fā)表的一本名為《可信計算機系統(tǒng)評估準則》的桔皮書的劃分等級,該書把計算機系統(tǒng)的安全需求劃分成從低到高的七個等級,即D、C1、C2、B1、B2、B3、A1。這七個等級又可分為四大類:
(1)D類,無安全性要求。
(2)C1/C2/B1類,一般商用操作系統(tǒng)所具有的安全特性。
(3)B2類,要求建立系統(tǒng)的安全性模型、設置安全內核,并在此基礎上對系統(tǒng)安全性給出精確的證明。
(4)B3/A1類,要求在可信計算機基礎上的形式化設計,要求對系統(tǒng)建立形式化模型,并對模型進行形式化描述,而且要對系統(tǒng)描述與實際系統(tǒng)的代碼實現(xiàn)之間的一致性給出更為精確的測試和論證。
這七個等級的安全特性及其安全要求分述如下。
(1).D級
保護措施最少。系統(tǒng)不具有任何安全特性。
(2).C1級
粗粒度任意安全保護。C1級系統(tǒng)適用的場合是相互協(xié)作的用戶,處理相同敏感級別數據。C1級系統(tǒng)應具有以下特點:用戶與數據分離;有效的任意訪問控制機制,以便用戶保護自己的數據,但是這種訪問控制較粗,一般以組為單位進行,而且對這種訪問控制機制并不進行嚴格的檢驗評估;防止對訪問控制機制進行纂改的能力;允許用戶決定何時使用訪問控制機制,何時不用,以及允許用戶決定對哪個客體或哪組客體進行訪問;對C1級系統(tǒng)應進行測試以確保它能完成文檔中聲稱的功能。
(3). C2級
細粒度任意安全保護。C2級系統(tǒng)應具有以下特點:有效的任意訪問控制,但控制粒度較細,可對單個用戶實施保護;每個主體對每個客體的每次訪問或訪問企圖都必須能予以審計跟蹤;消除殘余信息的泄漏能力。
(4).B1級
帶標記的安全保護。所有的B級(B1、B2、B3)系統(tǒng)都應具有強制訪問控制機制。B1級系統(tǒng)的主要特點有:為每個控制主體和客體分配了一個相應的安全級別;系統(tǒng)同時具有任意訪問控制和強制訪問控制這兩套機制;系統(tǒng)的訪問控制既基于層次模型又基于非層次模型;設計文檔、源代碼和目標代碼都應該經過全面的分析及測試;可以采用非形式化模型也可采用形式化模型進行系統(tǒng)的設計。
(5).B2級
結構化安全保護。B2級系統(tǒng)應具有如下主要特點:在設計B2級系統(tǒng)時,應提出一個合理的總體設計方案,設計方案應具有明確的模塊化和結構化特征;系統(tǒng)設計應遵循最小授權原則;訪問控制機制應對所有主體和客體予以保護;應對系統(tǒng)進行隱秘通道分析,并堵塞所有發(fā)現(xiàn)的隱秘通道;系統(tǒng)應具有完整性訪問控制機制;系統(tǒng)的設計及代碼實現(xiàn)必須完全通過檢驗和測試,測試的結果必須保證系統(tǒng)完全實現(xiàn)了總體設計方案;在系統(tǒng)運行過程中,應有專人負責系統(tǒng)中訪問控制策略的設置和實施,而系統(tǒng)的操作員僅僅承擔與系統(tǒng)后續(xù)操作有關的職責。
(6).B3級
安全域機制。B3級系統(tǒng)應具有以下特點:B3級系統(tǒng)應具有主體/客體作用域,應有能力對每個客體實施訪問保護;像B2級系統(tǒng)那樣,應具有完整性訪問控制機制;B3級系統(tǒng)應當實現(xiàn)徹底的監(jiān)督程序的概念,以便每次訪問都要經監(jiān)督程序檢查訪問的合法性;應當有效地“綜合運用分層、模型抽象以及信息隱藏”等設計原則來設計系統(tǒng);系統(tǒng)應當具有審計能力;在應用分層原則設計系統(tǒng)時,系統(tǒng)的高層設計必須完整,但在安全模型的抽象上必須簡單,要去掉所有與安全無關的因素,以便使系統(tǒng)中與安全功能有關的模塊足夠少,以利對系統(tǒng)進行徹底的測試;必須有令人信服的證據表明所設計的系統(tǒng)實現(xiàn)了預定的設計目標;B3級系統(tǒng)的設計還應考慮到在將來系統(tǒng)也能完全抵御入侵者對系統(tǒng)的破壞。
(7).A1級
可驗證設計。A1級系統(tǒng)的性能要求與B3級完全一樣,但它的設計方法不同。在可信計算機系統(tǒng)評估準則中,要求對A1級系統(tǒng)的設計采用可驗證的形式化設計方法。對A1級系統(tǒng)應當進行以下五個方面的驗證:系統(tǒng)的形式化總體說明;系統(tǒng)的形式化模型;證明形式化模型與總體說明的一致性;非形式化地論證系統(tǒng)的代碼實現(xiàn)與系統(tǒng)的形式化模型和形式化總體說明的一致性;對隱秘通道進行形式化分析。
3. 軟件質量保證
我們前面對軟件的關鍵性等級和安全性等級進行了詳細的說明,下面我們基于這兩個特性來關注一下軟件質量保證。
首先,我們要弄清楚什么是質量保證?我們認為,質量保證是為保證產品和服務充分滿足消費者要求的質量而進行的有計劃、有組織的活動。質量保證是面向消費者的活動,是為了使產品實現(xiàn)用戶要求的功能,站在用戶立場上來掌握產品質量的。
其次,我們要弄清楚什么是軟件質量保證?我們認為,軟件質量保證就是向用戶及社會提供滿意的高質量的產品,滿足各項質量特征的產品,它包括軟件產品從誕生到消亡為止的所有階段的質量活動,即為了確定、達到和維護需要的軟件質量而進行的所有有計劃、有系統(tǒng)的管理活動。
關鍵性和安全性是軟件的兩個特殊質量特征,在針對它們的質量保證活動中,主要分為以下幾個步驟:
(1).明確質量保證的任務和目的
為使開發(fā)出來的軟件具有滿意的關鍵性和安全性,從計劃階段開始,不僅需要明確軟件的功能,還要明確軟件應達到什么樣的關鍵性標準和安全性標準,即參照前面所列的關鍵性等級和安全性等級,確定軟件所要達到的級別??偟恼f來,軟件質量保證的主要任務可以歸納為以下幾點:
a.軟件質量保證人員必須熟練掌握正確定義用戶要求的技術,包括熟練使用和指導他人使用定義軟件需求的支持工具。必須十分重視領導全體開發(fā)人員收集和積累有關關鍵性和安全性領域的各種資料和數據,培養(yǎng)這種操作技能。
b.利用已有軟件成果是提高軟件質量和軟件生產率的重要途徑。為此,在考慮一個軟件產品的關鍵性和安全性特征時,首先應考慮有哪些既有軟件可以復用,通過借鑒類似產品的經驗,準確、快速的制定質量保證的目標。
c.由于關鍵性和安全性往往牽涉到用戶的實際情況,因此需要改善軟件開發(fā)者與用戶的協(xié)作開發(fā)能力,加強共同開發(fā)管理。必須明確規(guī)定進度管理、質量管理、交接檢查、維護制度等各方面的要求,建立跟蹤檢查的體制。
d.因為對產品的關鍵性和安全性性能要求把握不準確,而造成設計失誤、重復勞動的現(xiàn)象,是最影響產品質量的。為此,需要建立互相交流、信息往來通暢、具有橫向交流特征的信息交流平臺,最大可能的降低因溝通不暢而導致的方向性錯誤。
e.發(fā)揮每個開發(fā)者的能力,軟件生產是人的智能生產活動,它依賴于人的能力和開發(fā)組織團隊的能力。因此,必須調動開發(fā)者學習關鍵性和安全性方面的業(yè)務知識的積極性,管理者或產品服務者要制定相應的技術培訓計劃、技術水平標準,使其能準確把握產品的性能特征。
f.對于大型軟件開發(fā)項目來說,提高工程項目管理能力極其重要。提高管理能力的方法是重視和強化項目開發(fā)初期計劃階段的項目計劃評價,計劃執(zhí)行過程中及計劃完成報告的評價。正確地評價開發(fā)計劃和實施結果,不僅可以提高軟件開發(fā)項目管理的精確度,還可以積累項目管理經驗資料,提高日后進行項目管理水平。
(2).采取適當的方法實施質量保證活動
軟件質量保證所采用的一般方法是:在質量體系的基礎上,建立質量方針,建立質量保障和控制制度,在開發(fā)和維護過程中實施質量管理和控制,保證方針和制度得到嚴格的落實。
首先,要建立質量管理機構,并規(guī)定機構內每個成員的分工和責任,這是進行有效的質量保證活動的基礎。要根據項目的大小和可能持續(xù)的時間來確定機構的建立情況,如當項目比較大或項目對關鍵性和安全性要求非常高時,投入的質量保證人員和控制人員就要多一些,分工要盡可能的細;相反,人員投入就要少一些,每個人的分工就不要那么細致。不管怎樣,質量管理人員是必不可少的,只是根據項目的實際情況有所調整而已。
其次,要根據用戶和軟件系統(tǒng)特定應用環(huán)境的需要,確定關鍵性和安全性的定性描述或定量值。根據具體應用要求,確定每一個質量要素的各子特征描述及其度量方法。再根據選定的軟件開發(fā)模型和里程碑劃分,把各個質量要素及其子特征分解到各個階段、階段產品、開發(fā)活動和活動產品上去,并給出各自的度量方法、驗證方法和標準。
第三,要對整個開發(fā)過程中的關鍵性和安全性的質量控制活動進行詳細的規(guī)劃。為了控制軟件系統(tǒng)開發(fā)過程中的質量,使其最終產品或階段產品在關鍵性和安全性上滿足需求,必須確定所有質量保證活動的時間、內容、目的、所使用和參照的標準、活動有關的規(guī)章和約束、活動對資源的要求等。
第四,在整個質量保證活動中,對質量保證人員的知識和技能要定期或不定期地進行培訓和更新,使他們能及時掌握當前先進的工程方法和管理技能。同時,對開發(fā)中的質量保證活動要及時進行總結,并不斷改進和完善管理方法和管理結構,為進一步的活動提供經驗和教訓。
(3).按質量保證的要求進行檢驗
為了確保每一個開發(fā)活動中的關鍵性和安全性要求,防止把不合格的軟件產品傳遞到下一個活動中,必須進行質量檢驗。檢驗的類型有:
a.供貨檢驗:這是指對委托外單位承擔開發(fā)作業(yè),而后買進或轉讓的構成軟件產品的部件、規(guī)格說明、半成品或產品的檢查。由于委托單位、委托時間等情況差別很大,往往與質量相關的信息不完全,要想只靠供貨時檢查,質量很難保證。因此要調查接受委托單位的開發(fā)能力,并且要充分交流情況。
b.中間檢驗或階段評審:在各階段的中途或向下一階段移交時進行的檢查叫做中間檢驗或階段評審。階段評審的目的是為了判斷是否可以進入下一階段進行后續(xù)開發(fā)工作,避免將差錯傳播到后續(xù)工作中,給后續(xù)工作帶來不良影響,造成損失。
c.驗收檢驗:確認產品是否已達到可以進行產品檢驗的質量要求。
d.產品檢驗:這是軟件產品交付使用前進行的檢查。其目的是判定向用戶提供的軟件,作為產品,是否達到了令人滿意的程度。
總之,檢驗的目的有兩個:第一,切實搞好開發(fā)過程中的管理,檢查各階段的關鍵性和安全性特征保證活動開展的如何;第二,預先防止由于對關鍵性和安全性特征把握不準而給用戶和開發(fā)組織帶來的損失。
4. 結束語
本文中我們討論了軟件質量要素中的關鍵性和安全性,并在此基礎上對軟件的質量保證活動進行了一些說明。其實,軟件的質量要素不僅僅包括關鍵性和安全性,還包括:易用性、完整性、效率、可靠性、正確性、易維護性、靈活性、易測試性、易移植性、易復用性、互用性等等,這每一個因素又可以分解為若干個子特性。因此,我們在實踐中實施軟件質量保證活動時,必須綜合考慮,有所取舍。能同時實現(xiàn)所有質量特性最優(yōu)化的情況幾乎是不可能的,我們必須在這些因素里進行權衡,抓住其中最關鍵、最重要的質量因素,忽視非主要因素,只有這樣,才能實現(xiàn)軟件產品整體質量的最大化。

掃碼關注公眾號

溫馨提示:因考試政策、內容不斷變化與調整,信管網網站提供的以上信息僅供參考,如有異議,請以權威部門公布的內容為準!

信管網致力于為廣大信管從業(yè)人員、愛好者、大學生提供專業(yè)、高質量的課程和服務,解決其考試證書、技能提升和就業(yè)的需求。

信管網軟考課程由信管網依托10年專業(yè)軟考教研傾力打造,官方教材參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學員考試保駕護航。面授、直播&錄播,多種班型靈活學習,滿足不同學員考證需求,降低課程學習難度,使學習效果事半功倍。

相關內容

發(fā)表評論  查看完整評論  

推薦文章