蔡文婷(武昌理工學(xué)院,武漢430223)
淺談交換編程技術(shù)在軟件開發(fā)中的應(yīng)用
蔡文婷
(武昌理工學(xué)院,武漢430223)
摘要:交換編程的含義非常易于理解,也比較直接,即兩名或多名程序員輪流對(duì)同一軟件系統(tǒng)進(jìn)行開發(fā),但是他們所負(fù)責(zé)的卻是模塊不同階段的不同任務(wù)。交換編程方式也可以叫做交換開發(fā),現(xiàn)階段該方式早已應(yīng)用到了多種軟件的開發(fā)過(guò)程中。對(duì)此,本文闡述了交換編程技術(shù)應(yīng)用的必要性,簡(jiǎn)要分析了交換編程技術(shù),并介紹了交換編程技術(shù)的應(yīng)用環(huán)境與流程,指出了該技術(shù)的價(jià)值。
關(guān)鍵詞:交換編程;軟件;開發(fā)
在過(guò)去較長(zhǎng)的時(shí)間里,人們?cè)陂_發(fā)軟件過(guò)程中都會(huì)應(yīng)用到兩種編程技術(shù),分別為獨(dú)立編程技術(shù)和結(jié)對(duì)編程技術(shù)。但是前者由于開發(fā)人員間互相缺少溝通,容易造成產(chǎn)品質(zhì)量不夠高。而后者盡管實(shí)現(xiàn)了開發(fā)人員的充分溝通,并在一定程度上提升了代碼質(zhì)量,但卻出現(xiàn)了人力資源浪費(fèi)的問(wèn)題。因此,對(duì)編程技術(shù)的改革也就成為了各大軟件開發(fā)公司需要解決的重大課題。這時(shí),交換編程技術(shù)憑借著自身的高效性與合理性得到了人們的關(guān)注與應(yīng)用。
從整體上看,交換編程技術(shù)是結(jié)對(duì)編程技術(shù)的進(jìn)一步發(fā)展與提升。這是因?yàn)檫@兩種技術(shù)都需要多名程序人員一起達(dá)到某一模塊階段的任務(wù)。但是不同的是,交換編程技術(shù)無(wú)需兩人共用同一臺(tái)電腦,每個(gè)程序人員都配備了獨(dú)立的電腦。這樣一來(lái),在輪流負(fù)責(zé)同一個(gè)模塊不同階段的開發(fā)過(guò)程中,軟件開發(fā)公司可以極大的節(jié)約時(shí)間[1]。不僅如此,就任務(wù)分工而言,每個(gè)程序人員都負(fù)責(zé)不同階段任務(wù)的完整開發(fā)工作,但不論是在項(xiàng)目的開發(fā)階段還是在迭代階段,都需要多人任務(wù)輪流交換或兩人任務(wù)兩兩交換。這種方式能夠有效提升代碼質(zhì)量,還能夠從整體上提升企業(yè)的工作效益。
2.1應(yīng)用環(huán)境
交換編程技術(shù)有著十分突出的適應(yīng)性,而且對(duì)項(xiàng)目規(guī)模也未設(shè)置較高的標(biāo)準(zhǔn),尤其是一些項(xiàng)目規(guī)模較大或人員臨時(shí)調(diào)動(dòng)頻繁的情況。不僅如此,就項(xiàng)目開發(fā)團(tuán)隊(duì)規(guī)模而言,因?yàn)榻粨Q編程技術(shù)的每個(gè)任務(wù)交換都要使用到多個(gè)程序人員,所以該技術(shù)更加適應(yīng)于人數(shù)較多的開發(fā)團(tuán)體[2]。除此之外,就程序人員的素質(zhì)而言,必須要有一到兩個(gè)兩三年以上開發(fā)經(jīng)驗(yàn)的專業(yè)人員,而這一點(diǎn)也是交換編程技術(shù)在應(yīng)用中最基礎(chǔ)的要求。
2.2應(yīng)用方法
將交換編程技術(shù)引入到軟件開發(fā)中必須要制定最為科學(xué)與合理的交換周期。而交換周期的制定則是要以項(xiàng)目開發(fā)實(shí)際為依據(jù),也就是按照項(xiàng)目迭代階段或開發(fā)階段作出合理的劃分[3]。階段劃分完成之后,所有的階段都必須要完成一次任務(wù)交換。
如果項(xiàng)目規(guī)模較小,那么在軟件工程實(shí)施的迭代階段根據(jù)以下方法完成交換編程:
(1)軟件定義階段,市場(chǎng)調(diào)研工作與需求分析工作可輪流交換。其中,需要注意的一點(diǎn)是程序員人數(shù)應(yīng)保持在三個(gè)及以上,并將所要開發(fā)的部分進(jìn)行交換。例如,程序人員甲的開發(fā)內(nèi)容給程序人員乙,程序人員乙交給程序人員丙,程序人員丙再交給程序人員甲。
(2)概要設(shè)計(jì)階段,不論是需求分析還是概要設(shè)計(jì)都要輪流交換。
(3)詳細(xì)設(shè)計(jì)階段,概要設(shè)計(jì)與詳細(xì)設(shè)計(jì)也都需要輪流交換。
(4)編碼實(shí)施啟動(dòng)階段,詳細(xì)設(shè)計(jì)和編碼交換同樣也要交換,交換方式通常選擇兩兩交換方式。這種方式主要就是兩個(gè)程序員將各自的內(nèi)容給對(duì)方看,不轉(zhuǎn)交給第三人。
編碼之前都進(jìn)行輪流交換的最終目標(biāo)就是使軟件開發(fā)程序人員都能夠掌握項(xiàng)目的開發(fā)進(jìn)度與情況,從而使其能夠開展有效的信息交流[4]。在交流過(guò)程中,程序人員可以自由說(shuō)出自己的想法,這樣一來(lái),在探討某項(xiàng)目模塊需實(shí)現(xiàn)的功能時(shí)將會(huì)有更多的意見與建議選擇,避免由于單獨(dú)的個(gè)人想法而導(dǎo)致嚴(yán)重的工作失誤,最終保證軟件的順利開發(fā)。??詳細(xì)設(shè)計(jì)與編碼測(cè)試都進(jìn)行兩兩交換的原因就是前期需求早已從整體上都得到了穩(wěn)定,此時(shí)就無(wú)需對(duì)用戶需求再作深入的了解了,只要完成編碼任務(wù)就可以。在這一過(guò)程中,輪流交換沒(méi)有太大的存在價(jià)值,甚至還會(huì)延誤開發(fā)工作的進(jìn)行。
上述交換編程方法所依據(jù)的是以迭代階段為交換周期的方式。除此之外,若將項(xiàng)目開發(fā)階段作為交換周期,那么就可把軟件生存周期的所有階段再細(xì)分成若干個(gè)小階段[5]。之后,再按照細(xì)分的階段總數(shù)配置相應(yīng)數(shù)量的交換編程程序人員。與以迭代階段為交換周期相類似,編碼前的所有階段都應(yīng)進(jìn)行三個(gè)以上程序人員輪流交換,編碼階段及之后的各個(gè)階段僅需進(jìn)行兩兩交換方式即可。
交換編程技術(shù)有著多種優(yōu)點(diǎn),主要包括減少了人力資源的浪費(fèi)、實(shí)現(xiàn)了程序人員的溝通以及提升了軟件開發(fā)效率等。當(dāng)前,交換編程技術(shù)早已憑借著這些優(yōu)勢(shì)引起了大量軟件開發(fā)公司的關(guān)注。在未來(lái)的時(shí)間里,人們將嘗試把交換編程技術(shù)與結(jié)對(duì)編程技術(shù)進(jìn)行有機(jī)的結(jié)合,這樣一來(lái),參與交換編程工作的程序人員人數(shù)將比之前多一倍。不僅如此,由于溝通與交流的頻繁和及時(shí),軟件開發(fā)過(guò)程中可能出現(xiàn)的偏差也將會(huì)得到有效降低,最終提升軟件開發(fā)工作質(zhì)量。
參考文獻(xiàn):
[1]宋彪,孫良文,楊睛.基于VB語(yǔ)言的用友軟件常用小工具的開發(fā)[C].第十屆全國(guó)會(huì)計(jì)信息化年會(huì)論文集.呼和浩特:內(nèi)蒙古財(cái)經(jīng)學(xué)院,2011:494-500.
[2]馬亮,張剛.測(cè)試用例自動(dòng)生成方法的現(xiàn)狀及研究[J].現(xiàn)代電子技術(shù),2013(06):126-127.
[3]陳繼鋒,沈鈞毅.一種結(jié)構(gòu)測(cè)試數(shù)據(jù)自動(dòng)生成的框架[J].計(jì)算機(jī)工程,2012(08):6-7.
[4]夏平平,陳正君.軟件測(cè)試和軟件質(zhì)量管理的分析和研究[J].計(jì)算機(jī)與網(wǎng)絡(luò),2009(03):116-118.
[5]賀平.軟件類專業(yè)的工程教育研究與實(shí)踐一以軟件測(cè)試專業(yè)為例[J].計(jì)算機(jī)教育,2010(11):82-89.