



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、關(guān)于軟件質(zhì)量管理體系建設(shè)的方案參考資料 : cmmi3 級軟件過程改進(jìn)方法與規(guī) ISO9001:2000 標(biāo)準(zhǔn)修改記錄 :版本修改容描述作者日期備注1.00第一版zhanlinhui2009/03/061.01增加“測試管理體系”章節(jié)zhanlinhui2009/05/15批準(zhǔn):審核:作者簡介:軟件企業(yè)質(zhì)量經(jīng)理、高級項目經(jīng)理,聯(lián)系方式_qq:317974257方案說明:參考了 cmmi3 級軟件過程改進(jìn)方法與規(guī)、 ISO9001:2000標(biāo)準(zhǔn)。同時參考了業(yè)界同行寫的相關(guān)方案或文章,吸收了他們的優(yōu)秀見解。目錄1. 引言.31.1軟件質(zhì)量概述 .31.2公司軟件質(zhì)量現(xiàn)狀分析 .31.3軟件質(zhì)量管理
2、的特點 .41.4軟件質(zhì)量責(zé)任分配 .62. 軟件質(zhì)量管理體系建設(shè)總體方案.62.1進(jìn)一步推動軟件質(zhì)量管理體系建設(shè)的原則.62.2軟件質(zhì)量管理體系完善需要解決的主要問題. 82.3配置管理實施軟件質(zhì)量管理的重要步驟.82.4進(jìn)一步完善我們的測試管理體系.102.4.1.軟件測試的組織與管理規(guī)劃.102.4.2.測試管理體系過程控制 .122.4.2.1測試流程模型 .132.4.2.2測試流程控制 .132.4.2.3測試小結(jié) .152.5 軟件質(zhì)量保證( SQA)的實施.162.5.1.SQA概述 .162.5.1.SQA實施 .162.5.2.SQA與 SQC區(qū)別與協(xié)作 .172.6 全面
3、軟件質(zhì)量管理 .182.6.1.全面軟件質(zhì)量管理 .182.6.2.全面軟件質(zhì)量管理的方法- 制定質(zhì)量管理計劃 .192.6.3.全面軟件質(zhì)量管理的方法- 技術(shù)評審 .193. 結(jié)束語 .191. 引言1.1 軟件質(zhì)量概述隨著信息技術(shù)的飛速發(fā)展, 使軟件產(chǎn)品應(yīng)用到社會的各個領(lǐng)域, 也造就了軟件行業(yè)激烈競爭的生存環(huán)境, 隨著軟件規(guī)模及復(fù)雜性急劇加大, 軟件質(zhì)量已經(jīng)成為人們共同關(guān)注的焦點。技術(shù)是軟件企業(yè)的生命,而質(zhì)量則是它的靈魂 , 軟件企業(yè)要在競爭中占有一席之地, 軟件質(zhì)量保證是第一要素。 由此,軟件質(zhì)量的重要性是不言而喻的。軟件質(zhì)量是指與軟件產(chǎn)品滿足規(guī)定的和隱含的需求的能力有關(guān)的特征和特性的總
4、和。通常來說,軟件質(zhì)量應(yīng)該包含六方面的特性 : 功能性、可靠性、易使用性、效率、可維護(hù)性、可移植性。軟件質(zhì)量管理包括: 軟件質(zhì)量計劃編制、 軟件質(zhì)量保證和軟件質(zhì)量控制三個過程域。質(zhì)量計劃就是為了實現(xiàn)質(zhì)量目標(biāo)的計劃 , 它主要結(jié)合各個公司的質(zhì)量方針,產(chǎn)品描述以及質(zhì)量標(biāo)準(zhǔn)和規(guī)則通過收益、 成本分析和流程設(shè)計等工具制定出來實施方略,其容全面反應(yīng)用戶的要求,為質(zhì)量小組成員有效工作提供了指南,為項目小組成員以及項目相關(guān)人員了解在項目進(jìn)行中如何實施質(zhì)量保證和控制提供依據(jù),為確保項目質(zhì)量得到保障提供堅實的基礎(chǔ)。質(zhì)量保證( Quality Assurance ,QA)的目的是提供一種有效的人員組織形式和管理方
5、法, 通過客觀地檢查和監(jiān)控“過程質(zhì)量”與“產(chǎn)品質(zhì)量”,從而實現(xiàn)持續(xù)地改進(jìn)質(zhì)量。質(zhì)量保證是一種有計劃的、 貫穿于整個產(chǎn)品生命周期的質(zhì)量管理方法。質(zhì)量控制是對階段性的成果進(jìn)行檢測、驗證,為質(zhì)量保證提供參考依據(jù),它是一個PDCA循環(huán)過程。1.2 公司軟件質(zhì)量現(xiàn)狀分析公司的軟件開發(fā)歷經(jīng)多個生產(chǎn)個環(huán)節(jié),產(chǎn)生大量的中間產(chǎn)品, 每個環(huán)節(jié)都有可能帶來產(chǎn)品質(zhì)量問題; 同時由于軟件產(chǎn)品是邏輯體,不具備實體的可見性, 因而難以度量,質(zhì)量也難以把控, 因此如何有效地管理軟件產(chǎn)品的質(zhì)量一直是我們面臨的挑戰(zhàn)。雖然我公司在研發(fā)電力行業(yè)信息化相關(guān)軟件方面取得很大成績,但是其軟件能力成熟度與國同行業(yè)知名企業(yè)相比, 還有一定的差
6、距。我公司研發(fā)的軟件產(chǎn)品 ,除了產(chǎn)業(yè)規(guī)模偏小、自主創(chuàng)新能力不足之外,在易用性、可靠性、可移植性、可維護(hù)性、可擴(kuò)展性及系統(tǒng)集成等方面也存在著一定的質(zhì)量問題,導(dǎo)致“用戶抱怨較多、產(chǎn)品投產(chǎn)后缺陷糾正過多、公司售后服務(wù)投入過大”的不利局面,制約了我公司在電力軟件行業(yè)的持續(xù)快速健康發(fā)展。究其原因,可能是以下幾種原因造成的 :(1) 對軟件工程標(biāo)準(zhǔn)化重視不夠。(2) 軟件質(zhì)量管理體系不健全,實施效果不佳。 (3) 企業(yè)對測試工作投入不足,測試管理和測試環(huán)境有待完善,測試技術(shù)有待提升。1.3 軟件質(zhì)量管理的特點要解決軟件的質(zhì)量問題, 同時保證開發(fā)的成本和項目的進(jìn)度控制、解決研發(fā)中的諸多不規(guī)問題, 關(guān)鍵是要建
7、立起完善的軟件質(zhì)量管理體系,把軟件開發(fā)過程合理地監(jiān)控起來, 管理起來,進(jìn)而達(dá)到提高產(chǎn)品的質(zhì)量,控制產(chǎn)品開發(fā)的進(jìn)度和成本的目的。分析軟件質(zhì)量管理的特點,主要有以下幾點:1、軟件質(zhì)量管理是貫穿軟件研發(fā)的全過程,而不能僅局限于軟件本身軟件質(zhì)量不僅僅是一些測試數(shù)據(jù)、統(tǒng)計數(shù)據(jù)、客戶滿意度調(diào)查反饋表等等,衡量一個軟件質(zhì)量的好壞, 應(yīng)該首先考慮完成該軟件生產(chǎn)的整個過程是否達(dá)到了一定的質(zhì)量要求。在軟件開發(fā)實踐中,軟件質(zhì)量控制可以依靠流程管理( 如需求管理、缺陷管理、配置管理、軟件發(fā)布等) ,嚴(yán)格按照軟件工程執(zhí)行,確保軟件的功能性、可靠性、易使用性、效率、可維護(hù)性、可移植性。2、對技術(shù)文檔的評審是控制軟件質(zhì)量的
8、有效方式研發(fā)過程中的很多技術(shù)文檔作為產(chǎn)品的組成部分, 也需要像對產(chǎn)品一樣進(jìn)行檢驗,而對技術(shù)文檔的評審就構(gòu)成了產(chǎn)品檢驗的重要方式。 技術(shù)評審主要有以下好處 : 通過消除工作成果的缺陷而提高產(chǎn)品的質(zhì)量;技術(shù)評審可以在任何開發(fā)階段執(zhí)行,不必等到軟件可以運行之際, 越早消除缺陷就越能降低開發(fā)成本; 開發(fā)人員能夠及時地得到同行專家的幫助和指導(dǎo), 無疑會加深對工作成果的理解, 更好地預(yù)防缺陷,一定程度上提高了開發(fā)效率。3、運用技術(shù)手段保證質(zhì)量利用多種工具軟件進(jìn)行質(zhì)量保證的各種工作,如用 Svn 軟件進(jìn)行配置管理、文檔管理和軟件變更控制。 采用先進(jìn)的系統(tǒng)分析方法和軟件設(shè)計方法 (OOA、OOD、軟件復(fù)用等
9、) 來促進(jìn)軟件質(zhì)量的提高。4、應(yīng)用質(zhì)量管理思想滿足顧客需求缺陷預(yù)防分析已經(jīng)產(chǎn)生的缺陷并采用相應(yīng)的措施以避免這類缺陷重復(fù)出現(xiàn) , 找出并確定引起缺陷的通常原因。 不公如此,還要規(guī)劃缺陷預(yù)防活動 , 對引起缺陷的通常原因劃分優(yōu)先級并系統(tǒng)地予以消除。緊緊抓住用戶需求充分地滿足客戶的需求, 不管是付錢的顧客, 還是軟件的使用者, 都要盡可能地滿足。 采用快速原型法,盡快演示 (Demo)給用戶并及時獲取用戶的反饋,根據(jù)用戶的反饋不斷修改軟件, 而不是全部完工后再最后交給用戶。 否則,要改的地方可能很多。 甚至推翻重來。 充分設(shè)計之后再編碼, 防止因考慮不周而造成返工。牢牢控制對缺陷的修改通過諸如 TD
10、之類的強(qiáng)大的軟件缺陷管理平臺,記錄、跟蹤和控制軟件缺陷的修復(fù)。對軟件進(jìn)行充分的系統(tǒng)測試在軟件通過集成測試后,還需要進(jìn)行充分的、完整的系統(tǒng)測試和回歸測試,直至所有的缺陷關(guān)閉為止。把握軟件放行的尺度商業(yè)目標(biāo)決定質(zhì)量目標(biāo)。 提高軟件質(zhì)量的最終目的是為了贏利, 而不是創(chuàng)造完美無缺的產(chǎn)品。 因此對于普通商業(yè)軟件而言, 并不是“質(zhì)量越高越好”, 而是恰好讓廣大用戶滿意,并且將提高質(zhì)量所付出的代價控制在預(yù)算之。 軟件零缺陷幾乎是不可能的, 對遺留的缺陷要進(jìn)行充分分析, 只要能滿足用戶需求, 軟件遺留的缺陷可以在今后升級版本中解決。1.4 軟件質(zhì)量責(zé)任分配我們公司已經(jīng)建立了初步的研發(fā)管理體系,項目開發(fā)具備一定
11、的規(guī)化, 在研發(fā)流程上采用 ISO9001:2000 的標(biāo)準(zhǔn)進(jìn)行。我們公司目前每個項目除配備了項目開發(fā)所需角色外,還專門配備了配置管理組、測試組和質(zhì)量保證組( 目前此角色由項目管理部的監(jiān)理來履行此項職責(zé),但尚未真正開展活動) 確保軟件質(zhì)量管理的實施,下面針對這三種角色進(jìn)行說明:2. 軟件質(zhì)量管理體系建設(shè)總體方案軟件的質(zhì)量的重要性日益凸現(xiàn),國大型軟件企業(yè)不斷在CMMI上投入大量資源提高軟件能力成熟度, 而中小軟件企業(yè)也紛紛積極行動起來,不斷改進(jìn)軟件質(zhì)量。目前我公司實施軟件質(zhì)量管理在過去一段時間效果不是太好,分析其原因,可能有以下幾點:1、公司過去面對的是項目多,項目雜的復(fù)雜情況。因此無暇在軟件質(zhì)
12、量的方面投入過多的資源。2、公司是項目型軟件企業(yè),主要以承接客戶的委托開發(fā)項目為主,它主要的關(guān)注焦點是在項目的合同期,在項目成本許可的條件下, 交付出客戶滿意的開發(fā)項目。而軟件質(zhì)量并沒有成為大家關(guān)注的焦點, 暫時也不會影響公司的生存。3 、在實施的過程中,易發(fā)生質(zhì)量控制人員和研發(fā)人員的矛盾,降低實施的有效性;因此針對我公司質(zhì)量管理實踐的現(xiàn)狀, 我們不能操之過急, 急于求成,應(yīng)該對質(zhì)量管理體系的建設(shè)進(jìn)行有計劃有步驟的穩(wěn)步規(guī)劃和推進(jìn), 特別需要根據(jù)客觀情況,制定一定的實施原則,才可能有效地推動公司軟件質(zhì)量管理工作。2.1 進(jìn)一步推動軟件質(zhì)量管理體系建設(shè)的原則1、首先作檢驗型質(zhì)量管理,再延伸至過程型
13、質(zhì)量管理所謂的檢驗型質(zhì)控, 是指在產(chǎn)品在某個階段結(jié)束的時候,通過有效的評審和測試驗證其是否達(dá)到了預(yù)期的質(zhì)量需求,主要的步驟有需求評審、 概要設(shè)計評審、詳細(xì)設(shè)計評審、代碼走查或評審、測試、測試評審等過程。而過程型質(zhì)控是針對軟件研發(fā)過程的不斷改進(jìn), 來提高軟件的質(zhì)量。 在中小軟件企業(yè)中提倡首先作檢驗型質(zhì)控,再作過程型質(zhì)控是基于下面的幾點考慮:首先,檢驗型質(zhì)控(評審、測試)是解決顯性問題的最有效方法。通過檢驗型質(zhì)控,使軟件質(zhì)量得到較快提高, 增強(qiáng)質(zhì)量人員和公司領(lǐng)導(dǎo)對公司質(zhì)量管理工作的信心,為過渡到過程型質(zhì)量控制奠定堅實的基礎(chǔ)。其次,目前普遍存在的軟件研發(fā)人員質(zhì)量意識薄弱,須通過有效的檢驗型質(zhì)控為研發(fā)
14、人員進(jìn)行初級的質(zhì)量意識教育。當(dāng)我們的檢驗型質(zhì)控發(fā)展到一定的階段,真正起到了作用后, 再開始進(jìn)行過程型質(zhì)控的工作, 使質(zhì)量的深層次問題不斷得到解決。2、過程型質(zhì)量管理要循續(xù)漸進(jìn),尊重客觀規(guī)律,避免拔苗助長過程型質(zhì)控是對研發(fā)工作流程的改動 , 這種改動對項目組成員來說改動了他過去多年形成的一些習(xí)慣, 并且改動會增加項目組的工作量, 這種改動或多或少地會遭受到項目組成員有意無意的抵制。 因此,在制定過程型質(zhì)控方案的時候要判斷好優(yōu)先級,從最需要改動的過程著手,一步一步地做。避免急于求成,使工作得不到研發(fā)人員的理解和支持。3、軟件質(zhì)量管理是一種服務(wù),需要經(jīng)驗豐富的質(zhì)量管理人才才能夠勝任質(zhì)量管理實際上是對
15、項目的一種質(zhì)量服務(wù) , 目的是對項目人員在質(zhì)量上的一種幫助, 幫助其發(fā)現(xiàn)問題、 提供解決方法。 因此作為質(zhì)量控制人員的能力需求上是比較高的。 同時,質(zhì)量控制人員通過提供這種服務(wù), 能夠拉近和研發(fā)人員的距離,研發(fā)人員能夠更加接受過程型質(zhì)控的改動,使質(zhì)控工作的矛盾更小。 因此,建議從事質(zhì)量管理的人員應(yīng)該是從事較長時間項目研發(fā)、 項目管理的人員,只有一個資歷深的質(zhì)量管理人員才能夠真正地對項目研發(fā)提供一種高質(zhì)量的服務(wù)。4 、加強(qiáng)相關(guān)人員的培訓(xùn)是工作中的重中之重培訓(xùn)工作應(yīng)該包括兩個方面的容: 一方面,在實施過程型質(zhì)控過程中制定的過程、標(biāo)準(zhǔn)需要通過培訓(xùn)的方式來讓所有的人員都理解并接受。 另一方面,需要通過
16、培訓(xùn)的方式提高研發(fā)人員的質(zhì)量意識。 只有質(zhì)量意識提高了, 才能大大減少質(zhì)量管理人員的工作量。2.2 軟件質(zhì)量管理體系完善需要解決的主要問題1、 識別和建立軟件研發(fā)的過程通用的軟件的研發(fā)過程一般歸結(jié)為: 項目立項需求分析概要設(shè)計詳細(xì)設(shè)計編碼測試運行維護(hù)。 我們公司在研發(fā)流程上采用ISO9000 的標(biāo)準(zhǔn)進(jìn)行 ,已經(jīng)具備一定的規(guī)性。我們可以應(yīng)用ISO12207 信息技術(shù)軟件生存周期過程,對照 CMMI軟件能力成熟度模型框架,結(jié)合軟件企業(yè)的具體情況,進(jìn)行過程建模優(yōu)化,這是建立一個適宜的軟件質(zhì)量管理體系的前提。2、 明確管理職責(zé)、調(diào)整組織結(jié)構(gòu)第一步就是要進(jìn)行軟件質(zhì)量管理情況診斷,根據(jù)企業(yè)的實際情況和依據(jù)
17、ISO9001標(biāo)準(zhǔn)的要求,進(jìn)行軟件質(zhì)理管理組織架構(gòu)重構(gòu)。第二步就是有明確崗位分工與職責(zé), 特別要明確與軟件質(zhì)量管理有關(guān)的崗位和職責(zé),為建立軟件質(zhì)量管理體系打下基礎(chǔ),以適應(yīng)建立軟件質(zhì)量管理體系的需要。由于公司在近幾年一直再做軟件質(zhì)量管理的基礎(chǔ)工作,因此這項工作具備一定的基礎(chǔ),例如:構(gòu)建了較穩(wěn)定的配置管理體系、測試管理體系也在不斷的改進(jìn)之中。我們目前的最主要問題是在于缺乏一個有效的質(zhì)量保證組織。3、 建立文件化工作程序。再好的管理方法如果沒有寫成文件化的程序,也是空談。建立文件化程序就是為了將軟件質(zhì)量管理體系固化下來,相關(guān)的過程和操作都要做到有章可循。建立文件化程序的過程實際上是對流程的一次全面整
18、理的過程。4、 解決好軟件配置管理和軟件變更控制。由于軟件需求的不確定性, 軟件設(shè)計的變更是不可避免的。建立基線是加強(qiáng)變更控制的前提。 在設(shè)計發(fā)生變更時軟件的配置也必須隨之改變,所以將軟件配置管理作為一個關(guān)鍵過程納入軟件質(zhì)量管理體系是一項重要的任務(wù)。2.3 配置管理實施軟件質(zhì)量管理的重要步驟軟件配置管理簡稱SCM(Software ConfigurationManagement的縮寫),是在項目開發(fā)中,標(biāo)識、控制和管理軟件變更的一種管理。配置管理的目標(biāo)是記錄軟件產(chǎn)品的演化過程, 確保項目組成員在軟件生命周期中各個階段都能得到精確的產(chǎn)品配置。 其最終目標(biāo)是實現(xiàn)軟件產(chǎn)品在其生命周期全過程中的一致性
19、、完整性和可追溯性,使產(chǎn)品極大程度地與用戶需求吻合。其主要工作和研究容和包括:標(biāo)識配置項、定義基線、建立配置庫和基線庫、控制配置項和基線的變更、 做好配置項和基線的定期備份和異地備份、定期進(jìn)行配置審計、及時報告配置狀態(tài)。在軟件質(zhì)量體系的諸多支持活動中,配置管理處在支持活動的中心位置,它有機(jī)地把其它支持活動結(jié)合起來, 形成一個有機(jī)整體,相互促進(jìn),相互影響,有力地保證了軟件質(zhì)量體系的實施。從現(xiàn)在軟件企業(yè)的發(fā)展戰(zhàn)略來說,如何在技術(shù)日新月異、人員流動頻繁的情況下建立本公司的知識庫及經(jīng)驗庫,把個人的知識及經(jīng)驗轉(zhuǎn)變成公司的知識和經(jīng)驗,這對于提高工作效率,縮短產(chǎn)品周期,加強(qiáng)公司的競爭力具有至關(guān)重要的作用。同
20、時良好的配置管理有利于規(guī)管理,量化工作量考核,規(guī)測試,加強(qiáng)協(xié)調(diào)和溝通。采用科學(xué)的配置管理思想,輔之以先進(jìn)的配置管理工具,已經(jīng)成為必不可少的手段。配置管理工作是一個默默無聞,不受人關(guān)注,但是極為重要的工作。這二年來,我們盡心盡責(zé)地配合所有項目組,為各個項目制定配置管理計劃,建立配置管理系統(tǒng) , 并且制定了配置管理制度和配置管理流程, 構(gòu)建了功能強(qiáng)大,安全有效,可操作性強(qiáng)的SVN(subversion) 配置管理平臺。通過不斷的實踐摸索, 積累了較為豐富的配置管理經(jīng)驗,隨時可以為各項目組提供精確的良好的配置管理。通過建立完整的代碼對象庫、業(yè)務(wù)經(jīng)驗庫,將會給項目組以及軟件測試的工作帶來很大的便利,同
21、時將會最大程度上降低了由于人員流失所造成的損失。 由于有了配置管理平臺, 目前研發(fā)部軟件代碼和文檔都得到了良好的管理, 也使軟件開發(fā)人員以及軟件測試人員能夠很好的協(xié)同合作開發(fā)產(chǎn)品 , 從整個公司層面來說也是一個不斷地為公司積累業(yè)務(wù)經(jīng)驗和技術(shù)財富的過程。 通過努力, 目前項目管理部已經(jīng)建立了較為完整的軟件配置管理體系,并且初步制定了配置管理制度和配置管理流程 , 構(gòu)建配置管理信息化支撐平臺 , 項目管理部將進(jìn)一步加強(qiáng)配置管理工作,進(jìn)一步完善軟件配置管理體系。2.4 進(jìn)一步完善我們的測試管理體系我們公司采用的傳統(tǒng)的軟件測試流程一般是先在軟件開發(fā)過程中進(jìn)行少量的單元測試, 然后在整個軟件開發(fā)結(jié)束階段
22、, 集中進(jìn)行大量的測試, 包括功能和性能的集成測試和系統(tǒng)測試。 在實際工作當(dāng)中,隨著開發(fā)的軟件項目越來越復(fù)雜,傳統(tǒng)的軟件測試流程已經(jīng)不能適應(yīng)工作的需求。針對傳統(tǒng)軟件測試模式的弊端,根據(jù)我們和研發(fā)部門相關(guān)人員的討論, 認(rèn)為軟件測試不能只發(fā)生在軟件代碼已經(jīng)編寫完畢之后, 而應(yīng)該在軟件生命周期每一階段中都應(yīng)包含測試, 從而檢驗本階段的成果是否接近預(yù)期的目標(biāo), 盡可能早的發(fā)現(xiàn)錯誤并加以修正。 這就是軟件軟件工程界的一種新的觀點:“盡早測試”,所謂盡早測試是指在整個軟件開發(fā)生命周期過各種軟件工程技術(shù)盡量早的完成各種軟件測試任務(wù)的一種思想。 軟件的整個測試生命周期是與軟件的開發(fā)生命周期基本平齊的過程, 即
23、當(dāng)需求分析基本明確后我們就應(yīng)該基于需求分析的結(jié)果和整個項目計劃來進(jìn)行軟件的測試計劃;伴隨著分析設(shè)計過程同時應(yīng)該完成測試用例的設(shè)計; 當(dāng)軟件的第一個發(fā)布出來后,測試人員要馬上基于它進(jìn)行測試腳本的實現(xiàn)。軟件測試的組織與管理規(guī)劃1、測試的過程及組織當(dāng)設(shè)計工作完成以后, 就應(yīng)該著手測試的準(zhǔn)備工作了, 一般來講,由一位對整個系統(tǒng)設(shè)計熟悉的設(shè)計人員編寫測試大綱,明確測試的容和測試通過的準(zhǔn)則,設(shè)計完整合理的測試用例,以便系統(tǒng)實現(xiàn)后進(jìn)行全面測試。在開發(fā)組將所開發(fā)的程序經(jīng)驗證后,提交測試組,由測試負(fù)責(zé)人組織測試,測試一般可按下列方式組織 :(1) 首先,測試人員要仔細(xì)閱讀有關(guān)資料,包括規(guī)格說明、設(shè)計文檔、使用說
24、明書及在設(shè)計過程中形成的測試大綱、 測試容及測試的通過準(zhǔn)則, 全面熟悉系統(tǒng),編寫測試計劃,設(shè)計測試用例,作好測試前的準(zhǔn)備工作。(2) 為了保證測試的質(zhì)量, 將測試過程分成幾個階段, 即 : 代碼審查、 單元測試、集成測試、確認(rèn)測試和系統(tǒng)測試。(3) 代碼會審代碼會審是由一組人通過閱讀、 討論和爭議對程序進(jìn)行靜態(tài)分析的過程。 會審小組在充分閱讀待審程序文本、 控制流程圖及有關(guān)要求、 規(guī)等文件基礎(chǔ)上, 召開代碼會審會, 程序員逐句講解程序的邏輯, 并展開熱烈的討論甚至爭議, 以揭示錯誤的關(guān)鍵所在。 實踐表明,程序員在講解過程中能發(fā)現(xiàn)許多自己原來沒有發(fā)現(xiàn)的錯誤,而討論和爭議則進(jìn)一步促使了問題的暴露。
25、(4) 單元測試單元測試集中在檢查軟件設(shè)計的最小單位模塊上,通過測試發(fā)現(xiàn)實現(xiàn)該模塊的實際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯誤。(5) 集成測試集成測試是將模塊按照設(shè)計要求組裝起來同時進(jìn)行測試,主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。 如數(shù)據(jù)穿過接口時可能丟失; 一個模塊與另一個模塊可能有由于疏忽的問題而造成有害影響;把子功能組合起來可能不產(chǎn)生預(yù)期的主功能;個別看起來是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)構(gòu)可能有錯誤等。(6) 系統(tǒng)測試軟件開發(fā)完成以后,最終還要與系統(tǒng)中其他部分配套運行,進(jìn)行系統(tǒng)測試。包括恢復(fù)測試、安全測試、強(qiáng)度測試和性能測試等。經(jīng)過上述的測試過程對軟件進(jìn)
26、行測試后, 軟件基本滿足開發(fā)的要求, 測試宣告結(jié)束,經(jīng)驗收后,將軟件提交用戶。2、測試的人員組織為了保證軟件的開發(fā)質(zhì)量, 軟件測試應(yīng)貫穿于軟件定義與開發(fā)的整個過程。因此,對分析、設(shè)計和實現(xiàn)等各階段所得到的結(jié)果,包括需求規(guī)格說明、設(shè)計規(guī)格說明及源程序都應(yīng)進(jìn)行軟件測試?;诖?,測試人員的組織也應(yīng)是分階段的。(1) 軟件的設(shè)計和實現(xiàn)都是基于需求分析規(guī)格說明進(jìn)行的。需求分析規(guī)格說明是否完整、 正確、清晰是軟件開發(fā)成敗的關(guān)鍵。 為了保證需求定義的質(zhì)量,應(yīng)對其進(jìn)行嚴(yán)格的審查。(2) 設(shè)計評審軟件設(shè)計是將軟件需求轉(zhuǎn)換成軟件表示的過程。 主要描繪出系統(tǒng)結(jié)構(gòu)、 詳細(xì)的處理過程和數(shù)據(jù)庫模式。 按照需求的規(guī)格說明對
27、系統(tǒng)結(jié)構(gòu)的合理性、 處理過程的正確性進(jìn)行評價,同時利用關(guān)系數(shù)據(jù)庫的規(guī)化理論對數(shù)據(jù)庫模式進(jìn)行審查。(3) 程序的測試是指軟件測試。 是整個軟件開發(fā)過程付用戶使用前的最后階段, 是軟件質(zhì)量保證的關(guān)鍵。軟件測試在軟件生存周期中橫跨兩個階段 : 通常在編寫出每一個模塊之后,就對它進(jìn)行必要的測試(稱為單元測試)。編碼與單元測試屬于軟件生存周期中的同一階段。 該階段的測試工作, 由編程組部人員進(jìn)行交叉測試 (避免編程人員測試自己的程序)。這一階段結(jié)束后,進(jìn)入軟件生存周期的測試階段,對軟件系統(tǒng)進(jìn)行各種綜合的測試。 測試工作由專門的測試組完成, 負(fù)責(zé)整個測試的計劃、組織工作。 測試組的其他成員由具有一定的分析
28、、 設(shè)計和編程經(jīng)驗的專業(yè)人員組成,人數(shù)根據(jù)具體情況可多可少。3、軟件測試文件軟件測試文件描述要執(zhí)行的軟件測試及測試的結(jié)果。 由于軟件測試是一個很復(fù)雜的過程,同時也是設(shè)計軟件開發(fā)其他一些階段的工作, 對于保證軟件的質(zhì)量和它的運行有著重要意義, 必須把對它們的要求、 過程及測試結(jié)果以正式的文件形式定義清楚。測試文件的編寫是測試工作規(guī)化的一個組成部分。測試文件不只在測試階段才考慮,它在軟件開發(fā)的需求分析階段就開始著手,因為測試文件與用戶有著密切的關(guān)系。在設(shè)計階段的一些設(shè)計方案也應(yīng)在測試文件中得到反映, 以利于設(shè)計的檢驗。 測試文件對于測試階段工作的指導(dǎo)與評價作用更是非常明顯的。 需要特別指出的是,
29、在已開發(fā)的軟件投入運行的維護(hù)階段,常常還要進(jìn)行再測試或回歸測試,這時仍須用到測試文件。測試管理體系過程控制為了保證測試管理體系能夠正確并且無誤的實施與執(zhí)行,我們設(shè)計了一套測試管理體系流程,用來控制測試管理體系執(zhí)行。測試流程模型驗收測試設(shè)計驗收測試執(zhí)行需求分析系統(tǒng)測試執(zhí)行系統(tǒng)測試設(shè)計系統(tǒng)測試過程集成測試集成測試執(zhí)行軟件設(shè)計設(shè)計集成測試過程軟件編碼和單元測試單元測試過程圖 1-1V 模型測試流程控制1、需求分析需求分析( Requirment Analyzing )應(yīng)該說是軟件測試的一個重要環(huán)節(jié),測試開發(fā)人員對這一環(huán)節(jié)的理解程度如何將直接影響到接下來有關(guān)測試工作的開展。一般而言,需求分析包括軟件功
30、能需求分析、測試環(huán)境需求分析、測試資源需求分析等。其中最基本的是軟件功能需求分析, 測一款軟件首先要知道軟件能實現(xiàn)哪些功能以及是怎樣實現(xiàn)的。 測試需求分析的依據(jù)有軟件需求文檔、 軟件規(guī)格書以及開發(fā)人員的設(shè)計文檔等。2、測試計劃測試計劃( Test Plan )一般由測試負(fù)責(zé)人來編寫。測試計劃的依據(jù)主要是項目開發(fā)計劃和測試需求分析結(jié)果而制定。3、測試設(shè)計測試設(shè)計主要包括測試用例編寫和測試場景設(shè)計兩方面。 一份好的測試用例對測試有很好的指導(dǎo)作用, 能夠發(fā)現(xiàn)很多軟件問題。 測試場景設(shè)計主要也就是測試環(huán)境問題了。4、測試環(huán)境搭建不同軟件產(chǎn)品對測試環(huán)境有著不同的要求。 如 C/S 及 B/S 架構(gòu)相關(guān)的
31、軟件產(chǎn)品,那么對不同操作系統(tǒng),如 Windows系列、 unix 、linux 等,這些測試環(huán)境都是必須的。而對于一些嵌入式軟件, 如手機(jī)軟件, 如果我們想測試一下有關(guān)功能模塊的耗電情況, 手機(jī)待機(jī)時間等, 那么我們可能就需要搭建相應(yīng)的電流測試環(huán)境了。當(dāng)然測試中對于如手機(jī)網(wǎng)絡(luò)等環(huán)境都有所要求。 測試環(huán)境很重要, 符合要求的測試環(huán)境能夠幫助我們準(zhǔn)確的測出軟件問題,并且做出正確的判斷。5、測試執(zhí)行測試執(zhí)行過程又可以分為以下階段:單元測試集成測試系統(tǒng)測試驗收測試 , 其中每個階段還有回歸測試等。6、測試記錄缺陷記錄總的說來包括兩方面:提交缺陷和缺陷描述。一般而言,缺陷都是誰測試誰提交, 當(dāng)然有些公司
32、可能為了保證所提交缺陷的質(zhì)量,還會在提交前進(jìn)行缺陷評估,以確保所提交的缺陷的準(zhǔn)確性。7、缺陷管理缺陷管理方面,很多公司都采取缺陷管理工具來進(jìn)行管理,常見缺陷管理工具有 Test Director 、Bugfree 等。8、軟件評估這里評估指軟件經(jīng)過一輪又一輪測試后, 確認(rèn)軟件無重大問題或者問題很少的情況下,對準(zhǔn)備發(fā)給客戶的軟件進(jìn)行評估, 以確定是否能夠發(fā)行給客戶或投放市場。軟件評估小組一般由項目管理人員、項目負(fù)責(zé)人、營銷人員、部門經(jīng)理等組成,也可能是由客戶指定的第三方人員組成。9、測試總結(jié)每個版本有每個版本的測試總結(jié),每個階段有每個階段的測試總結(jié),當(dāng)項目完成 RTM后,一般要對整個項目做個回顧
33、總結(jié), 看有哪些做的不足的地方, 有哪些經(jīng)驗可以對今后的測試工作做借鑒使用, 等等。測試總結(jié)無嚴(yán)格格式、 字?jǐn)?shù)限制。應(yīng)該說,測試總結(jié)還是很總要的。10. 測試維護(hù)由于測試的不完全性, 當(dāng)軟件正式發(fā)布后, 客戶在使用過程中, 難免遇到一些問題,有的甚至是嚴(yán)重性的問題, 這就需要修改有關(guān)問題, 修改后需要再次對軟件進(jìn)行測試、評估、發(fā)行。測試小結(jié)軟件測試本身是一個復(fù)雜的過程。因此,早在需求分析和設(shè)計階段,測試小組的測試人員就應(yīng)該對各種說明書進(jìn)行仔細(xì)分析, 提取有關(guān)的測試信息, 編寫了測試計劃和測試規(guī)程。 適時采用各種軟件測試方法對軟件進(jìn)行測試, 在測試過程中,把發(fā)現(xiàn)的錯誤及時反饋給開發(fā)人員,確保測試
34、人員與開發(fā)人員的及時溝通。對開發(fā)人員修正過的軟件, 還要分析修改部分對整個系統(tǒng)的影響, 有針對性地對受影響的部分進(jìn)行重新測試。 測試人員在測試的同時還完成了各種測試文件的編寫工作。作為保證系統(tǒng)軟件質(zhì)量的一種重要手段, 軟件測試是必不可少的, 但是僅僅依靠測試來保證軟件質(zhì)量是不夠的, 還需要有良好的軟件質(zhì)量管理體系。 軟件質(zhì)量管理的一條主要途徑就是建立質(zhì)量保證小組, 這個小組要參與軟件開發(fā)和確認(rèn)的各個階段,并承擔(dān)以下任務(wù):(1) 保證對系統(tǒng)需求說明書、設(shè)計文本、軟件代碼和測試步驟的嚴(yán)格控制,確保被測軟件與設(shè)計需求、 文本的高級要求說明一致 ;(2) 代碼化之前復(fù)審軟件設(shè)計;(3) 參與設(shè)計和開發(fā)
35、活動的技術(shù)審查和復(fù)審; (4) 進(jìn)行復(fù)審以保證軟件與標(biāo)準(zhǔn)和規(guī)程一致 ;(5) 記錄軟件的問題和不一致之處并監(jiān)控正確的操作 ;(6) 復(fù)審并核準(zhǔn)合格的測試計劃和測試規(guī)程 ;(7) 監(jiān)控測試操作。2.5 軟件質(zhì)量保證(SQA)的實施概述SQA(軟件質(zhì)量保證 ) 是 CMMI一個重要關(guān)鍵過程域 , 它是貫穿于整個軟件過程的第三方獨立審查活動 , 在 CMMI的過程中充當(dāng)重要角色。目前,我們公司的SQA的職責(zé)由項目管理部監(jiān)理履行。目的是向項目管理者提供對軟件過程進(jìn)行全面監(jiān)控的手段 , 包括評審和審計軟件產(chǎn)品和活動, 驗證它們是否符合相應(yīng)的規(guī)程和標(biāo)準(zhǔn) , 同時給項目管理者提供這些評審和審計的結(jié)果。SQA
36、組織的責(zé)任是審計軟件開發(fā)活動的質(zhì)量并鑒別活動中出現(xiàn)的偏差。實施軟件質(zhì)量保證的目標(biāo)是以獨立審查的方式監(jiān)控軟件研發(fā)的全過程 , 給開發(fā)人員和項目管理人員提供反映軟件質(zhì)量的信息和數(shù)據(jù) , 輔助研發(fā)組得到高質(zhì)量的軟件產(chǎn)品 , 其主要職責(zé)容包括以下三個方面 : 通過監(jiān)控軟件的開發(fā)過程來保證軟件的質(zhì)量; 保證生產(chǎn)出的軟件和軟件開發(fā)過程符合相應(yīng)的標(biāo)準(zhǔn)與規(guī)程; 保證軟件產(chǎn)品、軟件過程中存在的不符合問題得到處理 , 必要時將問題反映給項目管高層。 確保項目組制定的計劃、標(biāo)準(zhǔn)和規(guī)程適合項目組需要,同時滿足評審需要 向開發(fā)人員提供反饋相應(yīng)地 , 軟件質(zhì)量保證的主要活動有以下幾個方面: SQA審計與評審SQA審計包括
37、對軟件工作產(chǎn)品、軟件工具和設(shè)備的審計 , 評價這幾項容是否符合組織規(guī)定的標(biāo)準(zhǔn)。 SQA評審的主要任務(wù)是保證軟件工程組的活動與預(yù)定義的軟件過程一致 , 確保軟件過程在軟件產(chǎn)品的生產(chǎn)中得到遵循??陀^評價過程和工作產(chǎn)品:對于所實施的過程和相關(guān)工作產(chǎn)品以及服務(wù)對適用的過程描述、標(biāo)準(zhǔn)和規(guī)程的遵循情況進(jìn)行客觀評價。 SQA報告SQA人員應(yīng)記錄工作的結(jié)果 , 并寫入到報告之中 , 發(fā)布給相關(guān)的人員。 SQA報告的發(fā)布應(yīng)遵循 3 條基本原則 :SQA和高級管理者之間應(yīng)有直接溝通的渠道、 SQA 報告必須發(fā)布給軟件工程組但不必發(fā)布給項目管理人員、 在可能的情況下向關(guān)心軟件質(zhì)量的人發(fā)布 SQA報告。 處理不符合問
38、題這是 SQA的一個重要的任務(wù) ,SQA 人員要對工作過程中發(fā)現(xiàn)的不符合問題進(jìn)行處理 , 及時向有關(guān)人員及高級管理者反映。在處理問題的過程中要遵循兩個原則 : 其一 , 對符合標(biāo)準(zhǔn)過程的活動 ,SQA 人員應(yīng)該積極地報告活動的進(jìn)展情況以及這些活動在符合標(biāo)準(zhǔn)方面的效果 ; 其二 , 對不符合標(biāo)準(zhǔn)過程的活動 ,SQA 要報告其不符合性以及它對產(chǎn)品的影響 , 同時提出改進(jìn)建議。軟件質(zhì)量保證任務(wù)的實現(xiàn)需要考慮幾方面的問題。首先 , 要考慮 SQA人員的素質(zhì)。 SQA人員的責(zé)任是審查軟件設(shè)計、開發(fā)人員的活動 , 驗證他們是否將選定的標(biāo)準(zhǔn)、方法和規(guī)程應(yīng)用到活動中去 , 因此 ,SQA工作的有效執(zhí)行需要 S
39、QA人員掌握專業(yè)的技術(shù) , 例如質(zhì)量控制知識、統(tǒng)計學(xué)知識等。其次 ,SQA人員的經(jīng)驗對任務(wù)的實現(xiàn)同樣重要。應(yīng)該選擇那些經(jīng)驗豐富的人來做 SQA,同時為 SQA人員進(jìn)行專門的培訓(xùn) , 以使他們能夠勝任這項工作。 第三 , 組織應(yīng)當(dāng)建立文檔化的開發(fā)標(biāo)準(zhǔn)和規(guī)程 , 使 SQA人員在工作時有一個依據(jù)、判斷的標(biāo)準(zhǔn) , 如果沒有這些標(biāo)準(zhǔn) ,SQA 人員就無法準(zhǔn)確地判斷開發(fā)活動中的問題 , 容易引發(fā)不必要的爭論。 第四 , 公司管理應(yīng)該重視軟件質(zhì)量保證活動。 應(yīng)該對 SQA人員發(fā)現(xiàn)的問題進(jìn)行及時處理, 不能使質(zhì)理保證流于形式而難于發(fā)揮作用。與 SQC區(qū)別與協(xié)作SQA,即:軟件質(zhì)量保證,負(fù)責(zé)軟件開發(fā)流程的質(zhì)量,企業(yè)相對應(yīng)的角色為:軟件質(zhì)量保證人員,我們公司對應(yīng)的是項目監(jiān)理。SQC,即:軟件質(zhì)量控制,只負(fù)責(zé)軟件開發(fā)過程中各個階段產(chǎn)出的工件的質(zhì)量,產(chǎn)出的工件可能是相關(guān)的文檔、代碼和可執(zhí)行程序等,企業(yè)相對應(yīng)的角色為:軟件測試工程師。但要注意,在各個階段 SQC的對應(yīng)人員不一定都為測試人員, 如在需求階段, 產(chǎn)生的成果為需求規(guī)格說明書 ,對該文檔的主要質(zhì)量控制手段為評審,這時候在此階段擔(dān)任 SQC職責(zé)的就是評審小組的成員。SQA和 SQC雖然主要的工作都
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度茶樓租賃合同茶樓與茶藝培訓(xùn)學(xué)校合作框架協(xié)議
- 二零二五年度在線教育平臺師資聘用協(xié)議
- 食用菌種植技術(shù)服務(wù)合同
- 英語語法中的定語從句詳解:九年級英語語法基礎(chǔ)強(qiáng)化教案
- 幼兒園繪本閱讀感悟分享
- 產(chǎn)品分銷銷售服務(wù)條款及目標(biāo)協(xié)定
- 數(shù)據(jù)驅(qū)動的環(huán)保產(chǎn)業(yè)發(fā)展戰(zhàn)略協(xié)議
- 提升職場技能與素質(zhì)
- 數(shù)理化習(xí)題集:高三化學(xué)知識點強(qiáng)化練習(xí)計劃
- 家電產(chǎn)品渠道經(jīng)銷協(xié)議
- 重慶市渝北區(qū)大灣鎮(zhèn)招錄村綜合服務(wù)專干模擬檢測試卷【共500題含答案解析】
- GB/T 5915-1993仔豬、生長肥育豬配合飼料
- GB/T 3624-2010鈦及鈦合金無縫管
- 壓花藝術(shù)課件
- DB32T4220-2022消防設(shè)施物聯(lián)網(wǎng)系統(tǒng)技術(shù)規(guī)范-(高清版)
- (新版)老年人健康管理理論考試題庫(含答案)
- 感應(yīng)加熱操作規(guī)程
- 煤氣設(shè)施安全檢查表(修訂)
- XX省血液調(diào)配管理辦法
- 微信開放平臺網(wǎng)站信息登記表
- 腦病科中醫(yī)疾病護(hù)理常規(guī)(精)
評論
0/150
提交評論