国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

敏捷測(cè)試在軟件項(xiàng)目中的應(yīng)用研究與實(shí)踐

2017-12-07 15:02胡兆華何舒王慧

胡兆華+何舒+王慧

摘要:為了更好地解決軟件項(xiàng)目在測(cè)試中存在的問(wèn)題,確保軟件產(chǎn)品質(zhì)量,在測(cè)試過(guò)程中引入敏捷測(cè)試的思路和方法。通過(guò)對(duì)敏捷測(cè)試的核心思路和關(guān)鍵法則的研究,提出了敏捷測(cè)試在軟件測(cè)試中的應(yīng)用流程和方法。該方法以測(cè)試驅(qū)動(dòng)開(kāi)發(fā)為主,傳統(tǒng)測(cè)試手段為輔,符合敏捷開(kāi)發(fā)中以用戶需求為核心的理念,同時(shí)將開(kāi)發(fā)過(guò)程中的周期性迭代方式更好地表現(xiàn)出來(lái)。通過(guò)敏捷測(cè)試在軟件項(xiàng)目中的實(shí)踐,總結(jié)出了敏捷測(cè)試的主要優(yōu)勢(shì)。

關(guān)鍵詞:軟件質(zhì)量;敏捷測(cè)試;客戶需求

中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)09-0092-02

近年來(lái),隨著移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)、云計(jì)算等新一代信息技術(shù)的全面推廣,軟件系統(tǒng)的規(guī)模和復(fù)雜性日益激增,軟件質(zhì)量已成為軟件開(kāi)發(fā)過(guò)程中關(guān)注的重點(diǎn)。在一些對(duì)于安全性要求較高的領(lǐng)域,如航空航天、電子商務(wù)、電子政務(wù)等,對(duì)軟件產(chǎn)品的質(zhì)量要求更高。另一方面,隨著軟件產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)日益激烈,用戶對(duì)軟件的使用體驗(yàn)要求越來(lái)越高,導(dǎo)致了軟件產(chǎn)品功能需求變更頻繁,加之軟件的發(fā)布周期越來(lái)越短,當(dāng)前傳統(tǒng)的軟件開(kāi)發(fā)流程已無(wú)法滿足當(dāng)下市場(chǎng)競(jìng)爭(zhēng)白熱化給軟件產(chǎn)品帶來(lái)的的嚴(yán)峻挑戰(zhàn)。在傳統(tǒng)的瀑布模型開(kāi)發(fā)模式下,測(cè)試人員在一定的控制節(jié)點(diǎn)之前無(wú)法開(kāi)展測(cè)試,因此產(chǎn)品缺陷無(wú)法盡早暴露,可以預(yù)見(jiàn),這一階段的軟件版本缺陷數(shù)量必定是驚人的。與此同時(shí),大量缺陷導(dǎo)致修復(fù)時(shí)間難以確定,版本提交測(cè)試的時(shí)間一拖再拖,留給測(cè)試的時(shí)間越來(lái)越少,軟件的質(zhì)量風(fēng)險(xiǎn)和版本發(fā)布的推遲,帶來(lái)的損失將難以估量。

敏捷軟件開(kāi)發(fā)是基于一種更接近人類(lèi)活動(dòng)現(xiàn)實(shí)情況的方法論,采用以人為本、迭代、增量的開(kāi)發(fā)過(guò)程,逐步滿足軟件不斷變更的需求。敏捷開(kāi)發(fā)提倡個(gè)人為團(tuán)隊(duì)所作的貢獻(xiàn),以任務(wù)為導(dǎo)向,通過(guò)積極地溝通和反饋保證隨時(shí)都有可供交付的軟件產(chǎn)品。敏捷開(kāi)發(fā)更容易在項(xiàng)目早期控制缺陷數(shù)目,而敏捷測(cè)試在敏捷開(kāi)發(fā)中更能充分發(fā)揮軟件測(cè)試的重要作用。

1 敏捷開(kāi)發(fā)中的軟件測(cè)試

1.1 敏捷開(kāi)發(fā)

在傳統(tǒng)的瀑布模型開(kāi)發(fā)模式中,注重流程規(guī)范、文檔齊全,從需求分析開(kāi)始到產(chǎn)品發(fā)布,每個(gè)階段都順序開(kāi)展,每個(gè)階段都根據(jù)需要反復(fù)循環(huán)。開(kāi)發(fā)過(guò)程和測(cè)試過(guò)程自上而下、相互銜接且次序固定。在這種開(kāi)發(fā)模式下,需要大量的文檔支撐,工作量巨大;用戶只能等到開(kāi)發(fā)過(guò)程的末期才能看到開(kāi)發(fā)成果,如果發(fā)生了需求變化,則需要重新編寫(xiě)文檔,可能將之前的工作推翻重來(lái),費(fèi)時(shí)費(fèi)力又不能快速響應(yīng)用戶需求的變化,增加了軟件產(chǎn)品的發(fā)布風(fēng)險(xiǎn)。傳統(tǒng)的開(kāi)發(fā)模型已經(jīng)不能適應(yīng)當(dāng)前快速變化的用戶需求。

敏捷開(kāi)發(fā)則是以用戶需求進(jìn)化為核心,能快速響應(yīng)用戶需求變化的一種開(kāi)發(fā)模式。這種模式下,開(kāi)發(fā)和測(cè)試不再是各自獨(dú)立的階段,測(cè)試是軟件開(kāi)發(fā)的重要組成部分。敏捷開(kāi)發(fā)使用一個(gè)“完整團(tuán)隊(duì)”的方法來(lái)保證軟件產(chǎn)品質(zhì)量,敏捷團(tuán)隊(duì)中的測(cè)試人員從客戶角度充分挖掘需求,然后與開(kāi)發(fā)團(tuán)隊(duì)合作,把這些需求變成可執(zhí)行的規(guī)范,用于指導(dǎo)代碼編寫(xiě)。隨著測(cè)試和編碼的進(jìn)行與交互,不斷建立軟件的品質(zhì)與能力,直到滿足產(chǎn)品發(fā)布的要求。

1.2 敏捷測(cè)試

敏捷測(cè)試遵循敏捷的基本原則,符合敏捷的價(jià)值觀:

(1)個(gè)人和互動(dòng)高于流程和工具;

(2)工作軟件高于完備的文檔;

(3)客戶協(xié)作高于合同協(xié)商;

(4)變化響應(yīng)高于計(jì)劃遵循[1]。

敏捷測(cè)試是基于敏捷開(kāi)發(fā)的軟件測(cè)試,傳統(tǒng)的測(cè)試思想“通過(guò)在規(guī)定條件下對(duì)程序進(jìn)行操作,發(fā)現(xiàn)錯(cuò)誤,衡量軟件質(zhì)量”在敏捷測(cè)試中仍然適用。敏捷測(cè)試不僅是一種過(guò)程,更是一種理念。

1.3 敏捷測(cè)試的特點(diǎn)

敏捷測(cè)試包括以下幾個(gè)主要特點(diǎn):①周期性的迭代開(kāi)發(fā)方式。敏捷測(cè)試在迭代進(jìn)行過(guò)程中首先要對(duì)產(chǎn)品有一個(gè)全局把握,從用戶角度思考和分析軟件產(chǎn)品,及時(shí)修正軟件測(cè)試策略,創(chuàng)建應(yīng)對(duì)的測(cè)試方法和思路,更新測(cè)試要點(diǎn)和用例,快速高效地完成測(cè)試執(zhí)行,最終按時(shí)完成產(chǎn)品交付。② 每日立會(huì),密切溝通。敏捷測(cè)試中沒(méi)有傳統(tǒng)測(cè)試流程中完備的文檔支撐,需要團(tuán)隊(duì)成員與客戶保持溝通,團(tuán)隊(duì)內(nèi)部則每天進(jìn)行充分的交流,以確保測(cè)試人員和開(kāi)發(fā)人員對(duì)用戶需求有統(tǒng)一的認(rèn)識(shí),最終保障產(chǎn)品質(zhì)量符合用戶預(yù)期。③測(cè)試方法靈活多樣,貫穿整個(gè)產(chǎn)品的開(kāi)發(fā)過(guò)程。敏捷測(cè)試根據(jù)產(chǎn)品的成熟度采取不同的測(cè)試手段和方法,比如軟件的新增功能或變更的功能,可以采用探索性測(cè)試方法;對(duì)于功能趨于穩(wěn)定的部分,則盡量采用自動(dòng)化測(cè)試的方法。④確??蛻粜枨髨A滿實(shí)現(xiàn)??蛻粜枨笫敲艚蓍_(kāi)發(fā)中最核心的內(nèi)容,敏捷測(cè)試同樣需圍繞客戶需求實(shí)現(xiàn)來(lái)開(kāi)展。

2 敏捷測(cè)試項(xiàng)目實(shí)踐

2.1 敏捷測(cè)試的流程和方法

某應(yīng)用類(lèi)軟件產(chǎn)品在測(cè)試過(guò)程中采用了敏捷測(cè)試思想,引入新的過(guò)程和控制方法,擯棄傳統(tǒng)測(cè)試流程中的各項(xiàng)繁瑣的計(jì)劃、文檔、評(píng)審等教條式的控制過(guò)程,取而代之的是精簡(jiǎn)計(jì)劃、動(dòng)態(tài)更新和靈活迭代。

圖1為該應(yīng)用類(lèi)軟件產(chǎn)品的敏捷開(kāi)發(fā)測(cè)試流程,此流程是一個(gè)結(jié)合了scrum和XP(極限編輯)方法并增加了基于計(jì)劃性流程原則后的產(chǎn)物。敏捷開(kāi)發(fā)的測(cè)試人員全程參與完整的迭代開(kāi)發(fā)。

2.1.1 用戶需求

通過(guò)各種途徑收集整理用戶需求并盡快向項(xiàng)目團(tuán)隊(duì)成員發(fā)布;需求管理人員對(duì)用戶需求整理并存檔。

2.1.2 項(xiàng)目(迭代)計(jì)劃

通過(guò)評(píng)審確定項(xiàng)目整體規(guī)劃和迭代計(jì)劃,明確各階段項(xiàng)目目標(biāo)及迭代版本的驗(yàn)收標(biāo)準(zhǔn)。

2.1.3 需求分解

根據(jù)項(xiàng)目規(guī)劃和版本迭代計(jì)劃對(duì)用戶需求進(jìn)行分解,將分解的用戶需求映射到迭代的版本目標(biāo)。

2.1.4 需求分析

根據(jù)本次迭代的版本目標(biāo),開(kāi)發(fā)和測(cè)試團(tuán)隊(duì)分別從各自不同的角度同時(shí)開(kāi)展對(duì)用戶需求的分析,輸出開(kāi)發(fā)需求列表和測(cè)試需求列表,通過(guò)評(píng)審進(jìn)行明確。

2.1.5 迭代計(jì)劃endprint

參考項(xiàng)目總體迭代計(jì)劃,在開(kāi)發(fā)團(tuán)隊(duì)和測(cè)試團(tuán)隊(duì)充分溝通的前提下通過(guò)評(píng)審制定開(kāi)發(fā)迭代計(jì)劃及測(cè)試迭代計(jì)劃。二者相對(duì)獨(dú)立但又相互關(guān)聯(lián),敏捷開(kāi)發(fā)的迭代過(guò)程較傳統(tǒng)開(kāi)發(fā)模式的迭代過(guò)程更高效、更靈活。開(kāi)發(fā)迭代在整個(gè)項(xiàng)目周期中持續(xù)進(jìn)行,不受測(cè)試周期影響而中斷;測(cè)試迭代與開(kāi)發(fā)迭代并行開(kāi)展,測(cè)試BUG持續(xù)反饋,BUG修復(fù)也同步進(jìn)行。開(kāi)發(fā)迭代和測(cè)試迭代的總體節(jié)奏保持一致。

2.1.6 設(shè)計(jì)過(guò)程

根據(jù)迭代計(jì)劃,開(kāi)發(fā)團(tuán)隊(duì)和測(cè)試團(tuán)隊(duì)分別開(kāi)展開(kāi)發(fā)設(shè)計(jì)和測(cè)試設(shè)計(jì),在設(shè)計(jì)評(píng)審中,開(kāi)發(fā)團(tuán)隊(duì)和測(cè)試團(tuán)隊(duì)共同參與,分別就開(kāi)發(fā)設(shè)計(jì)和測(cè)試設(shè)計(jì)進(jìn)行充分的討論,對(duì)設(shè)計(jì)的完備性、正確性提出各自的意見(jiàn)。

2.1.7 提交與驗(yàn)證

①開(kāi)發(fā)團(tuán)隊(duì)完成階段迭代版本開(kāi)發(fā)后就可以提交版本,以便測(cè)試團(tuán)隊(duì)盡早開(kāi)始測(cè)試,提交版本后開(kāi)發(fā)團(tuán)隊(duì)即可開(kāi)始下一輪迭代開(kāi)發(fā)。

②版本提交過(guò)程中,測(cè)試團(tuán)隊(duì)需要明確本輪迭代的驗(yàn)收目標(biāo)及功能變更的影響范圍,以便適時(shí)調(diào)整測(cè)試策略以指導(dǎo)測(cè)試。

③測(cè)試驗(yàn)證過(guò)程也是測(cè)試驅(qū)動(dòng)開(kāi)發(fā)的過(guò)程,測(cè)試中發(fā)現(xiàn)的BUG需要即時(shí)和開(kāi)發(fā)人確認(rèn)并反饋,確認(rèn)的BUG將即時(shí)在下一個(gè)的迭代版本中修復(fù)。

④測(cè)試執(zhí)行過(guò)程中的每日立會(huì)很有必要。每日立會(huì)由測(cè)試負(fù)責(zé)人主持,團(tuán)隊(duì)成員逐一匯報(bào)當(dāng)前的測(cè)試工作情況,以便每位成員都了解項(xiàng)目的整體測(cè)試情況;同時(shí)每位成員都可以提出測(cè)試工作中的疑問(wèn)或需要協(xié)調(diào)解決的問(wèn)題,依靠團(tuán)隊(duì)的力量通過(guò)充分的討論予以解決。

2.1.8 測(cè)試小結(jié)(驗(yàn)收測(cè)試)

測(cè)試工程師對(duì)此次迭代的所有功能進(jìn)行演示,確認(rèn)測(cè)試產(chǎn)品已達(dá)到驗(yàn)收標(biāo)準(zhǔn),同時(shí)對(duì)本輪迭代的產(chǎn)品質(zhì)量風(fēng)險(xiǎn)及測(cè)試過(guò)程進(jìn)行總結(jié)。驗(yàn)收通過(guò)后本輪迭代結(jié)束,測(cè)試團(tuán)隊(duì)開(kāi)始進(jìn)入下一輪迭代。

采用了敏捷測(cè)試的流程和方法后,該軟件產(chǎn)品的開(kāi)發(fā)周期較常規(guī)測(cè)試流程的周期縮短了3個(gè)月,提前達(dá)到了預(yù)期質(zhì)量目標(biāo),正式向用戶進(jìn)行了發(fā)布。實(shí)踐證明將敏捷測(cè)試應(yīng)用于軟件產(chǎn)品測(cè)試過(guò)程,可以較好地解決用戶需求變化快、產(chǎn)品風(fēng)險(xiǎn)高的問(wèn)題,同時(shí)還能快速搶占市場(chǎng),這正好是敏捷測(cè)試的優(yōu)勢(shì)所在。

2.2 敏捷測(cè)試的優(yōu)勢(shì)

敏捷測(cè)試相對(duì)于傳統(tǒng)軟件測(cè)試的優(yōu)勢(shì)主要體現(xiàn)在以下三個(gè)方面:迭代周期、軟件質(zhì)量、流程高效[2]。

2.2.1 迭代周期明顯縮短

傳統(tǒng)測(cè)試中開(kāi)發(fā)和測(cè)試活動(dòng)串行開(kāi)展,開(kāi)發(fā)和測(cè)試活動(dòng)有較長(zhǎng)的等待空白期,相互牽制導(dǎo)致迭代周期較長(zhǎng)。敏捷測(cè)試中開(kāi)發(fā)和測(cè)試并行開(kāi)展,測(cè)試活動(dòng)分布到項(xiàng)目開(kāi)發(fā)的各個(gè)環(huán)節(jié);測(cè)試驅(qū)動(dòng)開(kāi)發(fā),缺陷可以快速修復(fù),開(kāi)發(fā)效率提高,因此迭代周期大大縮減。

2.2.2 軟件質(zhì)量有效提升

敏捷開(kāi)發(fā)模式下,所有的軟件測(cè)試活動(dòng)均圍繞軟件質(zhì)量為目標(biāo)展開(kāi)。測(cè)試人員需要具備更高的專(zhuān)業(yè)技術(shù)水平,測(cè)試設(shè)計(jì)要更具靈活性、可擴(kuò)展性和可維護(hù)性,這樣才能快速響應(yīng)用戶和市場(chǎng)需求。敏捷測(cè)試中更多地注重產(chǎn)品用戶體驗(yàn)并及時(shí)反饋產(chǎn)品質(zhì)量問(wèn)題,通過(guò)版本的持續(xù)集成和持續(xù)測(cè)試,實(shí)現(xiàn)版本的快速迭代,進(jìn)而有效地提升軟件產(chǎn)品的質(zhì)量。

2.2.3 流程精簡(jiǎn)高效

敏捷測(cè)試不必嚴(yán)格遵從經(jīng)典的軟件開(kāi)發(fā)流程,不必因缺乏開(kāi)發(fā)文檔而止步,也不會(huì)因流程制約而浪費(fèi)寶貴的時(shí)間。敏捷方法中流程是為軟件開(kāi)發(fā)服務(wù)的,當(dāng)流程不能滿足開(kāi)發(fā)需求或與開(kāi)發(fā)沖突的時(shí)候,流程需要適當(dāng)?shù)馗淖儊?lái)適應(yīng)開(kāi)發(fā)[2]。敏捷測(cè)試把用戶故事(story)作為測(cè)試開(kāi)發(fā)的基礎(chǔ),制定高效的迭代計(jì)劃,通過(guò)靈活和組織和管理,實(shí)現(xiàn)測(cè)試與開(kāi)發(fā)的并行協(xié)作,共同完成產(chǎn)品的質(zhì)量目標(biāo)。

3 結(jié)語(yǔ)

敏捷開(kāi)發(fā)中的軟件測(cè)試應(yīng)當(dāng)遵循敏捷開(kāi)發(fā)的基本原則,面對(duì)不同的開(kāi)發(fā)方法和應(yīng)用環(huán)境,軟件測(cè)試方法也不同。敏捷測(cè)試作為從敏捷開(kāi)發(fā)中成長(zhǎng)起來(lái)的測(cè)試方法,與敏捷過(guò)程密不可分。在開(kāi)展軟件測(cè)試實(shí)踐過(guò)程中,還會(huì)涉及測(cè)試用例的生成與覆蓋標(biāo)準(zhǔn)、測(cè)試的充分性和有效性、不同階段的軟件版本測(cè)試關(guān)系,以及如何將傳統(tǒng)測(cè)試中的一些方法應(yīng)用到敏捷測(cè)試中等問(wèn)題,需要深入探討的問(wèn)題仍然很多。

參考文獻(xiàn)

[1]楊曉光.探索式測(cè)試在敏捷軟件項(xiàng)目安全性測(cè)試中的應(yīng)用研究[D].天津工業(yè)大學(xué),2015.

[2]曹文君.敏捷測(cè)試在CRM項(xiàng)目中的應(yīng)用研究與實(shí)踐[D].復(fù)旦大學(xué),2010.endprint