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

?

敏捷測試在銀行IT領(lǐng)域中的研究與分析

2014-10-29 15:46:00曹棟
電子技術(shù)與軟件工程 2014年16期

摘 要

在銀行業(yè)競爭加劇,產(chǎn)品推陳出新日益加快的大背景下,敏捷開發(fā)越來越受到銀行IT部門的關(guān)注。測試是IT領(lǐng)域中不可或缺的一環(huán),但在目前銀行IT領(lǐng)域內(nèi),專門針對敏捷測試開展的研究還不多見。本文首先分析了國內(nèi)外敏捷測試的研究現(xiàn)狀,然后,闡述了銀行IT領(lǐng)域中敏捷測試的實(shí)施流程,最后,針對敏捷測試實(shí)施過程中的關(guān)鍵問題進(jìn)行了分析,以更好地推動(dòng)敏捷測試在銀行IT領(lǐng)域中的運(yùn)用。

【關(guān)鍵詞】銀行IT領(lǐng)域 敏捷測試 及時(shí)反饋 持續(xù)測試 Scrum

1 引言

隨著銀行業(yè)競爭的日益白熱化,快速發(fā)布產(chǎn)品并迅速適應(yīng)客戶需求變化成為銀行競爭的重中之重,銀行傳統(tǒng)的科技開發(fā)工作模式面臨著嚴(yán)峻的考驗(yàn),敏捷開發(fā)具有“快速迭代、適應(yīng)變化、頻繁交付”的特點(diǎn),逐漸成為銀行IT部門關(guān)注的焦點(diǎn)。無論是敏捷原則中的“頻繁交付”,還是對“可工作軟件”的度量,抑或是敏捷開發(fā)實(shí)踐中的“測試驅(qū)動(dòng)開發(fā)(TDD)”,“行為驅(qū)動(dòng)開發(fā)(BDD)”,都離不開軟件測試的支持,測試是科技開發(fā)工作當(dāng)中不可或缺的組成部分。敏捷開發(fā)的開展對傳統(tǒng)測試模式帶來了極大的沖擊和挑戰(zhàn),更快的迭代周期要求測試在更短時(shí)間內(nèi)完成,更頻繁的變化(需求或設(shè)計(jì))要求測試更具有探索性和適應(yīng)性,更少的文檔使得越來越難以依賴文檔設(shè)計(jì)測試。另外,銀行業(yè)務(wù)需求變化頻繁、開發(fā)規(guī)模龐大,采用傳統(tǒng)測試模式使測試人員經(jīng)常面臨測試周期短、測試任務(wù)量大等情況。因此,開展敏捷測試在銀行IT領(lǐng)域中的探索和研究,對于應(yīng)對敏捷開發(fā)的挑戰(zhàn),提高測試工作效率,進(jìn)而推動(dòng)業(yè)務(wù)產(chǎn)品交付效率提升具有至關(guān)重要的意義。

目前,業(yè)界針對敏捷測試尚無統(tǒng)一定義,但敏捷測試可以理解為是遵循敏捷宣言的一種測試實(shí)踐:

(1)強(qiáng)調(diào)從客戶的角度,即從使用系統(tǒng)的用戶的角度來測試系統(tǒng)。

(2)重點(diǎn)關(guān)注持續(xù)迭代地測試新開發(fā)的功能,而不再強(qiáng)調(diào)傳統(tǒng)測試過程中嚴(yán)格的測試階段。

(3)建議盡早開始測試,一旦系統(tǒng)某個(gè)層面可測,比如提供了模塊功能,就要開始模塊層面的單元測試,同時(shí)隨著測試深入,持續(xù)進(jìn)行回歸測試保證之前測試內(nèi)容的正確性。簡而言之,敏捷測試就是通過持續(xù)地對軟件質(zhì)量問題進(jìn)行及時(shí)地反饋,確保軟件產(chǎn)品滿足用戶需求,強(qiáng)調(diào)“持續(xù)測試”和“及時(shí)反饋”。

2 現(xiàn)狀分析

軟件工程經(jīng)過數(shù)十年的探索,形成了多種經(jīng)典的軟件開發(fā)模式,例如瀑布式模型、螺旋式模型等。這些模型使得軟件開發(fā)從最開始的混亂變得可控。然而,軟件本身涉及的業(yè)務(wù)越來越復(fù)雜,傳統(tǒng)的軟件開發(fā)模式已越來越跟不上市場發(fā)展的步伐。為了克服傳統(tǒng)軟件工程中認(rèn)識(shí)和實(shí)踐的弱點(diǎn),敏捷方法應(yīng)運(yùn)而生。

從2001年敏捷宣言誕生至如今,敏捷過程在全球范圍內(nèi)成為最受歡迎的軟件開發(fā)模式。敏捷模式已經(jīng)在互聯(lián)網(wǎng)、電信等領(lǐng)域得到應(yīng)用,對軟件開發(fā)的推廣和實(shí)踐產(chǎn)生了深遠(yuǎn)的影響。隨著敏捷方法理論和實(shí)踐的不斷發(fā)展和完善,ThoughtWorks,Google,Microsoft,IBM,Amazon等著名企業(yè)也已在大規(guī)模軟件開發(fā)中應(yīng)用敏捷模式。雖然這些敏捷方法各有側(cè)重,但也有一些共性特點(diǎn),強(qiáng)調(diào)高度迭代,頻繁交付以及適應(yīng)變化,并且都強(qiáng)調(diào)測試貫穿整個(gè)軟件開發(fā)生命周期。

2.1 敏捷測試在國外的研究現(xiàn)狀

隨著敏捷方法的發(fā)展,對敏捷測試的研究和討論也在不斷發(fā)展。敏捷測試是遵循敏捷宣言的一種測試實(shí)踐,它強(qiáng)調(diào)從客戶的角度,即從用戶的角度來測試。敏捷測試重點(diǎn)關(guān)注迭代地測試新開發(fā)的功能,而不再強(qiáng)調(diào)傳統(tǒng)測試中嚴(yán)格的測試階段。在驅(qū)動(dòng)開發(fā)方面,TDD(測試驅(qū)動(dòng)開發(fā))的提出,保證程序員最開始就把代碼寫對,也解決了代碼可測試性的問題,從而在代碼層次上實(shí)現(xiàn)缺陷的預(yù)防。然而實(shí)際應(yīng)用當(dāng)中,多數(shù)項(xiàng)目周期非常短,沒有足夠時(shí)間實(shí)施TDD,多數(shù)程序員也不愿意主動(dòng)去實(shí)施TDD,因此,TDD的效果有較大爭議。2007年,Lasse Koskela提出ATDD,即驗(yàn)收測試驅(qū)動(dòng)開發(fā),也叫用戶故事驅(qū)動(dòng)開發(fā)。這種敏捷測試方法強(qiáng)調(diào)測試用例應(yīng)當(dāng)與整個(gè)系統(tǒng)的需求用例保持高度一致。在ATDD的基礎(chǔ)上,BDD(行為驅(qū)動(dòng)開發(fā))方法被提出,BDD使用近乎自然語言的方式描述軟件的行為過程,可以直接作為軟件的需求文檔,也可以直接應(yīng)用到測試中,作為測試的標(biāo)準(zhǔn)文檔。

在自動(dòng)化測試方面,越來越多的敏捷測試自動(dòng)化框架被推出并受到關(guān)注,例如RobotFramework,Thoughtworks Mingle組合Cruise和Twist等,還有一些能夠適應(yīng)ATDD和BDD的測試工具,如Cucumber,RSpec以及JBehave等。為了避免將測試過程過度自動(dòng)化,造成測試人員對產(chǎn)品功能點(diǎn)的忽視,領(lǐng)域?qū)S谜Z言(DSL)在自動(dòng)化測試中得到了應(yīng)用。同時(shí),為了更好地應(yīng)對自動(dòng)化測試的盲點(diǎn),探索式測試成為敏捷測試的研究熱點(diǎn)。

2.2 敏捷測試在國內(nèi)的研究現(xiàn)狀

國內(nèi)專門針對敏捷測試的研究相對較少。周波等人針對敏捷過程中由于快速應(yīng)對變化導(dǎo)致的測試覆蓋充分性與測試進(jìn)度壓力的矛盾沖突,從測試管理的角度,分析了敏捷測試中的組織形式、測試策略和過程管理流程。唐亞男等人對傳統(tǒng)測試向敏捷測試的轉(zhuǎn)變進(jìn)行了研究,但僅對轉(zhuǎn)變過程給出原則性建議。另外,蔡長霞等人研究了基于敏捷理論的自動(dòng)化測試方法,該文獻(xiàn)描述了在GUI層面簡單功能的自動(dòng)化測試,針對更為復(fù)雜功能的自動(dòng)化測試尚未涉及。

2.3 敏捷測試在國內(nèi)銀行業(yè)的研究現(xiàn)狀

針對國內(nèi)銀行業(yè)而言,針對敏捷測試的專項(xiàng)研究較少,研究主要集中于敏捷開發(fā)。例如:姚琥等人分別從開發(fā)過程定義、開發(fā)團(tuán)隊(duì)組建、日常管理、文檔書寫、需求研制、領(lǐng)域驅(qū)動(dòng)涉及模型驅(qū)動(dòng)開發(fā)等多個(gè)方面對中國農(nóng)業(yè)銀行實(shí)施敏捷開發(fā)的經(jīng)驗(yàn)進(jìn)行了總結(jié)。楊雷等人就中國工商銀行開展敏捷測試提升研發(fā)效率的經(jīng)驗(yàn)進(jìn)行了梳理概括。劉偉等人分別從結(jié)對編程機(jī)制,測試資源共享兩方面對光大銀行的敏捷開發(fā)機(jī)制進(jìn)行了闡述。endprint

由上述研究現(xiàn)狀可知,目前還存在以下問題:

(1)大多數(shù)研究集中于敏捷開發(fā),尤其是在國內(nèi)銀行業(yè)中,較少有針對敏捷測試展開專項(xiàng)的系統(tǒng)化的研究。然而無論是敏捷原則中的頻繁交付,還是對可工作軟件的度量,或是敏捷開發(fā)實(shí)踐中的測試驅(qū)動(dòng)開發(fā)(TDD),行為驅(qū)動(dòng)開發(fā)(BDD),都離不開測試的支持。因此,針對敏捷測試還有很大的研究空間。

(2)目前,多數(shù)研究主要集中在通用的方法論層面,少有針對具體應(yīng)用領(lǐng)域的研究,敏捷測試在特定領(lǐng)域的最佳實(shí)踐還未形成。因此,無論是從銀行業(yè)務(wù)迫切發(fā)展的需要,還是從目前研究現(xiàn)狀的不足而言,開展敏捷測試在銀行IT領(lǐng)域中的探索和研究都具有重要的理論價(jià)值和應(yīng)用價(jià)值。

3 敏捷測試實(shí)施流程

在敏捷的具體實(shí)施方法中,Scrum是目前業(yè)界最為流行和最為有效的敏捷方法之一。

在敏捷測試的場景下,Scrum可包括三種角色:Scrum Master、團(tuán)隊(duì)負(fù)責(zé)人、測試團(tuán)隊(duì)。

(1)Scrum Master主要負(fù)責(zé)研習(xí)Scrum框架及Scrum的實(shí)踐,通過提供支持和輔導(dǎo)以幫助其他角色正確地實(shí)施Scrum,并協(xié)助團(tuán)隊(duì)消除限制團(tuán)隊(duì)生產(chǎn)力的障礙。

(2)團(tuán)隊(duì)負(fù)責(zé)人主要負(fù)責(zé)掌握測試項(xiàng)目的整體進(jìn)度、組織測試資源、審核測試項(xiàng)目的交付物等工作。

(3)測試團(tuán)隊(duì)則主要負(fù)責(zé)測試工作的具體實(shí)施,迭代增量式地開展測試工作。

在Scrum中,項(xiàng)目一般劃分為多個(gè)迭代周期,Scrum中將每個(gè)迭代周期稱為一個(gè)Sprint。每個(gè)Sprint通常為1-4周。每個(gè)Sprint主要包括以下內(nèi)容:

(1)Sprint計(jì)劃會(huì)議:Sprint開始時(shí),團(tuán)隊(duì)負(fù)責(zé)人與團(tuán)隊(duì)交流確認(rèn)當(dāng)前Sprint可以完成的任務(wù),并形成當(dāng)前Sprint的工作計(jì)劃。

(2)Scrum站立會(huì)議(日會(huì)):每天15分鐘,測試團(tuán)隊(duì)成員相互分享工作進(jìn)展情況,團(tuán)隊(duì)負(fù)責(zé)人對團(tuán)隊(duì)整體進(jìn)度和風(fēng)險(xiǎn)進(jìn)行把控。

(3)Sprint評審會(huì)議:Sprint結(jié)束時(shí),測試團(tuán)隊(duì)向團(tuán)隊(duì)負(fù)責(zé)人及相關(guān)干系人介紹當(dāng)前Sprint完成的任務(wù),進(jìn)行演示并收集反饋。

(4)Sprint回顧會(huì)議:Sprint結(jié)束時(shí),團(tuán)隊(duì)通過對剛剛結(jié)束的Sprint進(jìn)行回顧反思,確定繼續(xù)提高的目標(biāo)、制定切實(shí)可行的措施,并于下一個(gè)Sprint中確保執(zhí)行以實(shí)現(xiàn)提升。

4 關(guān)鍵問題分析

在銀行IT領(lǐng)域開展敏捷測試時(shí),需要特別關(guān)注如下問題:

(1)傳統(tǒng)測試如何向敏捷測試過渡。目前,銀行科技開發(fā)多采用瀑布模式,測試是開發(fā)之后的一個(gè)環(huán)節(jié),整個(gè)瀑布模式強(qiáng)調(diào)計(jì)劃性、規(guī)范性、注重過程建設(shè)和工具的使用,這既有歷史原因,也與銀行信息系統(tǒng)具有系統(tǒng)規(guī)模龐大、系統(tǒng)關(guān)聯(lián)性較強(qiáng)、運(yùn)行穩(wěn)定性要求極高等自身特點(diǎn)有關(guān)。而敏捷測試遵循“響應(yīng)變化勝過遵循計(jì)劃、可工作的軟件勝過面面俱到的文檔,個(gè)體交互勝過過程和工具”等理念。兩者在理念上存在差異,因此,傳統(tǒng)測試過渡至敏捷測試有一定難度。

(2)引入敏捷測試模式之后,開發(fā)與測試如何協(xié)作。開發(fā)和測試的協(xié)作與商業(yè)銀行科技IT部門的組織架構(gòu)有關(guān)。商業(yè)銀行科技IT部門的架構(gòu)各不相同。從測試角度看,可以劃分為:有獨(dú)立的測試組織和無獨(dú)立的測試組織。從測試組織的職能來看,測試組織所負(fù)責(zé)的測試活動(dòng)也不完全相同,有些側(cè)重于系統(tǒng)測試,有些側(cè)重于用戶驗(yàn)收測試,有些側(cè)重于測試管理工作。不同的組織架構(gòu)、不同的測試工作側(cè)重點(diǎn),對應(yīng)的敏捷測試實(shí)施場景將有所不同,因此,開發(fā)和測試如何協(xié)作,需根據(jù)IT部門的實(shí)際情況來確定。

(3)自動(dòng)化測試在敏捷測試中處于何種地位。自動(dòng)化測試和敏捷測試的最終目的都是有效提升測試工作效率。但是敏捷測試具有“需求不斷變化、交付較為頻繁”的特點(diǎn),而自動(dòng)化測試在需求較為穩(wěn)定的回歸測試場景下則更加適用,因此,如何實(shí)現(xiàn)自動(dòng)化測試與敏捷測試的有機(jī)結(jié)合,綜合發(fā)揮自動(dòng)化測試和敏捷測試的優(yōu)勢是關(guān)鍵。

(4)敏捷測試如何進(jìn)行管理。因銀行科技開發(fā)工作有其自身的特點(diǎn),不是所有的信息系統(tǒng)開發(fā)均適合采用敏捷測試模式,未來極有可能是敏捷測試和傳統(tǒng)測試并存的混合測試模式,這對測試管理工作帶來了巨大的挑戰(zhàn),因此,如何建立涵蓋敏捷測試和傳統(tǒng)測試的測試管理體系也是關(guān)鍵。

5 結(jié)語

本文從當(dāng)前銀行IT領(lǐng)域測試工作面臨的挑戰(zhàn)入手,通過分析敏捷測試開展的現(xiàn)狀,指出敏捷測試研究的必要性和重要性。然后,描述了銀行IT領(lǐng)域敏捷測試的實(shí)施流程,最后對敏捷測試在銀行科技開發(fā)中的若干關(guān)鍵問題進(jìn)行了討論,旨在為銀行IT領(lǐng)域中實(shí)踐敏捷測試提供借鑒和參考。

參考文獻(xiàn)

[1]李季.敏捷測試實(shí)踐與相關(guān)問題研究,[D].北京交通大學(xué),2010.

[2]Kent Beck,James Grenning,Robert C.Martin et al.Manifesto for Agile Software Development.Agile Alliance,2001.

[3]Jungyub Woo,Nenad Ivezic,Hyunbo Cho.Agile test framework for business-to-business interoperability.April 12,2011,Inf Syst Front(2012)14:789-808.

[4]Eliane Collins,Arilo Dias-Neto, Vicente F.Strategies for Agile Software Testing Automation: An Industrial Experience.IEEE 36th International Conference on Computer Software and Applications Workshops,2012.

[5]張揚(yáng),黃厚寬.測試驅(qū)動(dòng)開發(fā)及開發(fā)實(shí)踐[J].計(jì)算機(jī)技術(shù)與發(fā)展,2006,16(5):74-76.

[6]Lasse Koskela.Test Driven:TDD and Acceptance TDD for Java Developers.USA:Manning Publications,2007.

[7]Dan North.Introducing BDD. Better Software,2006,15(3):103-107.

[8]方敏,張勝等譯.探索式軟件測試.[M].北京:清華大學(xué)出版社,2010.

[9]周波,郭盈.敏捷測試管理探討[J].信息安全域技術(shù),2011.05:84-86.

[10]唐亞男,王振一.敏捷測試綜述[J].硅谷,2011.05:133-134.

[11]蔡長霞,劉建平,劉娟娟.基于敏捷測試的自動(dòng)化技術(shù)分析與實(shí)踐[J].工業(yè)控制計(jì)算機(jī),2011.10(24):59-60.

[12]姚琥,吳旭春.敏捷開發(fā)模式創(chuàng)新及應(yīng)用實(shí)踐[J].金融電子化,2013.04:59-60.

[13]楊雷.敏捷開發(fā)提升研發(fā)效率[J].金融電子化,2013.04:61.

[14]劉偉,龔榮榮,潘竹.敏捷開發(fā)機(jī)制分享[J].金融電子化,2013.04:62.

[15]王江平譯.敏捷開發(fā)的藝術(shù)[M].北京:機(jī)械工業(yè)出版社,2009.

作者簡介

曹棟(1983-),男,山西省人。博士學(xué)位?,F(xiàn)在供職于上海浦東發(fā)展銀行。研究方向?yàn)闇y試管理。

作者單位

上海浦東發(fā)展銀行 上海市 200000endprint

凤山县| 治多县| 老河口市| 繁峙县| 车致| 泰来县| 崇礼县| 平谷区| 台东县| 木兰县| 北流市| 嘉鱼县| 眉山市| 买车| 诸暨市| 珠海市| 邢台市| 青冈县| 眉山市| 富源县| 西安市| 疏附县| 紫阳县| 东源县| 鹰潭市| 荣成市| 武汉市| 浮山县| 大荔县| 从化市| 富阳市| 礼泉县| 南丰县| 和田市| 灯塔市| 华安县| 合水县| 松溪县| 乐昌市| 广水市| 玉门市|