999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

交換編程技術(shù)在軟件開發(fā)中的應(yīng)用

2008-12-31 00:00:00
電腦知識(shí)與技術(shù) 2008年22期

摘要:針對(duì)獨(dú)立編程技術(shù)和結(jié)對(duì)編程技術(shù)的不足,提出在軟件開發(fā)過程中采用交換編程技術(shù)的觀點(diǎn),通過闡述實(shí)施交換編程技術(shù)的環(huán)境和方法,總結(jié)出在軟件開發(fā)過程中應(yīng)用交換編程技術(shù)的價(jià)值,最后指出交換編程技術(shù)的發(fā)展前景。

關(guān)鍵詞:結(jié)對(duì)編程;交換編程;交換周期;迭代階段;輪流交換

中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)22-688-02

Application of Exchange Programming Technology in Software Development

TIAN Yuan

(Department of computer,Henan Business College, Zhengzhou 450044,China)

Abstract: Be aimed at the insufficiency of independent programming technology and Pair Programming technology, bring forward that viewpoint of using the exchange programming technology in the software development, expounds the environment and the method of actualizing exchange programming technology, summarizes the value of the exchange programming technology’s applications in software development, finally points out the exchange programming’s development prospects.

Key words: Pair Programme; exchange programme; exchange cycle; Iterative stage; exchanges in turn

1 引言

在傳統(tǒng)的軟件開發(fā)過程中,通常采用兩種編程技術(shù):第一種是獨(dú)立編程技術(shù),即在軟件開發(fā)過程中,將一個(gè)項(xiàng)目按照功能分成若干個(gè)模塊,由一個(gè)開發(fā)者獨(dú)立完成一個(gè)模塊的需求分析、設(shè)計(jì)、編碼和單元測試階段,然后將結(jié)果再交給第二個(gè)人進(jìn)行另一個(gè)模塊的開發(fā)和測試,在這種編程技術(shù)中,開發(fā)人員獨(dú)立進(jìn)行各個(gè)模塊的開發(fā)和設(shè)計(jì),人員之間缺少交流,開發(fā)出來的產(chǎn)品在質(zhì)量上和功能上都不夠完備;第二種是結(jié)對(duì)編程技術(shù),即在軟件開發(fā)過程中,由兩位編程人員共同坐在同一臺(tái)計(jì)算機(jī)前,合作完成一個(gè)模塊中某一個(gè)階段的設(shè)計(jì)、編碼和測試[1],在這種編程技術(shù)中,雖然加強(qiáng)了開發(fā)人員之間的交流,提高了代碼質(zhì)量,但是,卻會(huì)造成人力資源的浪費(fèi),而且在項(xiàng)目開發(fā)團(tuán)隊(duì)中,如果技術(shù)人員比較少,或者開發(fā)人員頻繁變動(dòng),都會(huì)對(duì)項(xiàng)目的進(jìn)展產(chǎn)生較大的影響。

為了提高軟件開發(fā)的質(zhì)量和效率,合理利用各種資源,就必須對(duì)傳統(tǒng)編程技術(shù)進(jìn)行改革,正是在這樣的背景下,國內(nèi)外許多軟件開發(fā)公司都開始嘗試使用交換編程技術(shù)這種更高效、更合理的新技術(shù)。

2 交換編程技術(shù)簡介

交換編程技術(shù)實(shí)際上是對(duì)結(jié)對(duì)編程技術(shù)的一種擴(kuò)展和延續(xù),在這種技術(shù)中,由兩位或者多位程序員輪流開發(fā)同一個(gè)軟件系統(tǒng)中同一個(gè)模塊不同階段的任務(wù)。

和結(jié)對(duì)編程技術(shù)一樣,在交換編程技術(shù)中仍然需要多位程序員進(jìn)行交流,共同完成某個(gè)項(xiàng)目階段的任務(wù),但是不需要兩人公用一臺(tái)計(jì)算機(jī),而是采用一人一機(jī)的工作形式,由兩位程序員輪流負(fù)責(zé)同一個(gè)模塊中不同階段的設(shè)計(jì)、編碼和測試過程,這樣就減少了時(shí)間的浪費(fèi);另外在任務(wù)分工方面,程序員分別負(fù)責(zé)不同階段任務(wù)的完整開發(fā),每一個(gè)階段的設(shè)計(jì)、編碼和測試過程,都是由一位程序員去執(zhí)行,但是在每個(gè)項(xiàng)目的開發(fā)階段或者迭代階段,需要進(jìn)行多人任務(wù)的輪流交換或者兩人任務(wù)的兩兩交換,這樣既保證了代碼的質(zhì)量,又提高了工作效益。

3 在軟件開發(fā)過程中實(shí)施交換編程技術(shù)的環(huán)境和方法

3.1 實(shí)施環(huán)境

交換編程技術(shù)的適應(yīng)性比較強(qiáng),在項(xiàng)目的規(guī)模上沒有要求,特別是對(duì)項(xiàng)目規(guī)模大,人員臨時(shí)調(diào)動(dòng)頻繁的情況同樣可以適用;另外,在項(xiàng)目開發(fā)團(tuán)隊(duì)的規(guī)模方面,由于在交換編程技術(shù)中,進(jìn)行一次任務(wù)交換至少需要兩個(gè)以上的開發(fā)人員,因此交換編程技術(shù)適用于那些人數(shù)超過兩個(gè)以上的開發(fā)團(tuán)隊(duì),而且在團(tuán)隊(duì)成員中,要求至少有一兩個(gè)具有兩三年以上開發(fā)經(jīng)驗(yàn)的技術(shù)人員,這是對(duì)一般項(xiàng)目最基本的要求。

3.2 實(shí)施方法

在軟件開發(fā)過程中應(yīng)用交換編程技術(shù),需要重點(diǎn)考慮交換周期的設(shè)置。交換周期一般需要根據(jù)實(shí)際項(xiàng)目的開發(fā)過程來設(shè)置,即根據(jù)項(xiàng)目迭代階段或者開發(fā)階段進(jìn)行劃分,階段劃分確定后,在一個(gè)階段內(nèi)至少進(jìn)行一次任務(wù)交換。

對(duì)于一般規(guī)模的項(xiàng)目,建議在軟件工程實(shí)施的各個(gè)迭代階段按照如下的方式進(jìn)行交換編程:

1)在軟件定義過程中,市場調(diào)研和需求分析可以進(jìn)行輪流交換(至少是三個(gè)以上的程序員之間相互交換所開發(fā)的內(nèi)容,如:程序員A的開發(fā)內(nèi)容交給程序員B,程序員B的交給程序員C,程序員C的交給程序員A)。

2)在概要設(shè)計(jì)開發(fā)中,需求分析到概要設(shè)計(jì)進(jìn)行輪流交換。

3)在詳細(xì)設(shè)計(jì)開發(fā)中,概要設(shè)計(jì)到詳細(xì)設(shè)計(jì)進(jìn)行一次輪流交換。

4)編碼實(shí)施啟動(dòng)后,詳細(xì)設(shè)計(jì)到編碼的交換采用兩兩交換(兩個(gè)程序員之間相互交換所開發(fā)的內(nèi)容,僅限于兩人之間),注意這個(gè)時(shí)候不再采用輪流交換[2]。

這里在編碼以前全部采用輪流交換的目的是為了讓更多的人了解項(xiàng)目進(jìn)展的全部內(nèi)容,有利于增加團(tuán)隊(duì)內(nèi)的交流,使更多的人對(duì)項(xiàng)目所開發(fā)的內(nèi)容熟悉,并能讓他們提出自己的觀點(diǎn),也有利于使更多的人從更多的角度來研究某個(gè)系統(tǒng)模塊所需要實(shí)現(xiàn)的功能和用戶需要解決的實(shí)際問題,不會(huì)因?yàn)槟硞€(gè)人的定式思維而出現(xiàn)理解偏差,從而造成對(duì)需求的理解不到位。

詳細(xì)設(shè)計(jì)到編碼的測試采用兩兩交換,這是因?yàn)榍捌谛枨笠呀?jīng)基本上都穩(wěn)定下來了,這時(shí)候不需要對(duì)用戶需求進(jìn)行更多方面的理解,只需要進(jìn)行實(shí)施并進(jìn)行純粹的編碼工作即可。此時(shí)輪流交換就不存在任何意義,相反只會(huì)影響開發(fā)進(jìn)度。

以上交換編程的方法,是按照迭代階段設(shè)置交換周期的方法,另外,如果以項(xiàng)目開發(fā)階段設(shè)置交換周期的話,我們可以將軟件生存周期的每個(gè)階段再細(xì)分為幾個(gè)小階段,根據(jù)細(xì)分的階段數(shù)量確定進(jìn)行交換編程的人數(shù)(階段數(shù)量的劃分可以根據(jù)階段任務(wù)的規(guī)模和階段的重要性確定,如:對(duì)于一個(gè)普通項(xiàng)目的需求分析階段,我們可以將其細(xì)分為三個(gè)階段,分別由三個(gè)程序員輪流開發(fā))。和按照迭代階段設(shè)置交換周期的原因一樣,在編碼以前的每個(gè)階段,盡量全部采用至少三個(gè)以上程序員輪流交換編程的方式,而在編碼以后的每個(gè)階段,包括編碼階段,只需要采用兩兩交換的方式就可以了。

4 交換編程技術(shù)的價(jià)值

在軟件開發(fā)過程中應(yīng)用交換編程技術(shù),不僅可以節(jié)約各種資源,提高工作效率,而且也能增強(qiáng)代碼的可讀性和可維護(hù)性,保證代碼的質(zhì)量。具體體現(xiàn)如下:

1)避免人力資源的浪費(fèi)

交換編程技術(shù)采用由兩位以上程序員輪流負(fù)責(zé)某個(gè)階段的任務(wù),不會(huì)讓他們在同一時(shí)間內(nèi)去做同一件工作,這就節(jié)約了人力資源;而且也不用擔(dān)心在軟件開發(fā)過程中出現(xiàn)的設(shè)計(jì)或代碼問題被隱藏,因?yàn)閮晌怀绦騿T在進(jìn)行任務(wù)交換時(shí)需要交流,這樣不但第二個(gè)程序員會(huì)發(fā)現(xiàn)第一個(gè)程序員設(shè)計(jì)所存在的問題,第一個(gè)程序員也會(huì)主動(dòng)地對(duì)自己的開發(fā)過程和思路進(jìn)行一次完整的重新評(píng)價(jià),從而及時(shí)解決問題。

2)加強(qiáng)團(tuán)隊(duì)內(nèi)部交流

在交換編程技術(shù)中,允許有較多的人參與某個(gè)模塊的前后期分析、設(shè)計(jì)和開發(fā)過程,在項(xiàng)目開發(fā)的每一個(gè)階段都可以找到兩個(gè)以上的人來進(jìn)行討論,加強(qiáng)了團(tuán)隊(duì)內(nèi)部的交流。

3)減少時(shí)間的浪費(fèi)

在交換編程技術(shù)的任務(wù)交換過程中,時(shí)間的浪費(fèi)主要體現(xiàn)在第二位程序員理解前一位程序員的設(shè)計(jì)思路上,但是在一般情況下,出于對(duì)項(xiàng)目統(tǒng)一規(guī)劃的考慮,團(tuán)隊(duì)中所有成員都需要對(duì)項(xiàng)目的整體開發(fā)和各個(gè)階段的任務(wù)有所熟悉,在這種情況下時(shí)間的總體耗費(fèi)相對(duì)較短。

4)提高項(xiàng)目組穩(wěn)定性

在交換編程技術(shù)中,由于一個(gè)模塊需要按照階段數(shù)量進(jìn)行分工,這樣就保證了一個(gè)模塊至少有兩個(gè)人對(duì)其十分熟悉,在后面的開發(fā)過程中,無論哪個(gè)人發(fā)生變動(dòng),隨時(shí)都可以有其它人來接替工作,而不會(huì)對(duì)團(tuán)隊(duì)和開發(fā)進(jìn)度產(chǎn)生較大影響,所有的任務(wù)都能夠很好的延續(xù)下來。

另外,允許有較多的人參與到這個(gè)模塊的前后期開發(fā)中來,系統(tǒng)的架構(gòu)設(shè)計(jì)可以由很多人一同討論出來,所以交換編程技術(shù)適合于沒有絕對(duì)高手的團(tuán)隊(duì)。

5 結(jié)束語

因?yàn)榻粨Q編程技術(shù)的優(yōu)勢,目前國內(nèi)外許多軟件開發(fā)公司已經(jīng)嘗試應(yīng)用這項(xiàng)新技術(shù)。將來如果條件允許,交換編程技術(shù)還可以和結(jié)對(duì)編程技術(shù)配合起來使用,這將會(huì)使得對(duì)同一個(gè)模塊了解的人數(shù)達(dá)到一般交換編程的兩倍人數(shù),同時(shí)因?yàn)轭l繁的交流,從而更多地降低因?yàn)樯贁?shù)人的考慮偏差造成對(duì)用戶需求理解不足等問題,工作效率會(huì)更高[3]。

參考文獻(xiàn):

[1] 谷秀巖.關(guān)于極限編程理論的研究[J].計(jì)算機(jī)與網(wǎng)絡(luò),2004(Z1):97-99.

[2] 白慧冬.交換編程—結(jié)對(duì)編程的延伸實(shí)踐[J].中國軟件測試時(shí)代,2006(12):80-83.

[3] 姜飛,韓峰,劉國華.基于LabWindowsCVI和VC的動(dòng)態(tài)數(shù)據(jù)交換編程與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006(31):168-170.

主站蜘蛛池模板: 欧美综合一区二区三区| 青青草国产免费国产| 欧美特级AAAAAA视频免费观看| 99中文字幕亚洲一区二区| 国产理论一区| 亚洲综合狠狠| 国产一在线| 91精品国产麻豆国产自产在线| 免费一看一级毛片| 99国产精品一区二区| 麻豆精品国产自产在线| 成人福利在线免费观看| 狂欢视频在线观看不卡| 天堂成人在线视频| 美女黄网十八禁免费看| 亚洲日韩日本中文在线| 国产综合在线观看视频| 97国产精品视频人人做人人爱| 亚洲综合色吧| 国产精品视频系列专区| 亚洲中文字幕国产av| 熟妇丰满人妻av无码区| 亚洲一区网站| 毛片网站观看| 色噜噜久久| 中文字幕亚洲专区第19页| 美女免费黄网站| 国产人成网线在线播放va| 国产乱子伦视频在线播放| 欧美一级在线播放| 免费a在线观看播放| 日韩欧美国产精品| 97成人在线视频| 人妻精品久久无码区| 免费在线成人网| 不卡国产视频第一页| 欧美国产综合色视频| 欧美日韩国产在线人成app| 国产日韩精品一区在线不卡| yjizz视频最新网站在线| 国产对白刺激真实精品91| 国产一区成人| 国产丝袜丝视频在线观看| 综合久久五月天| 一级爆乳无码av| 国产激情在线视频| 亚洲男人的天堂视频| 日韩精品一区二区三区免费| 久久情精品国产品免费| 精品日韩亚洲欧美高清a | 91精品国产一区自在线拍| 国产精品欧美亚洲韩国日本不卡| 国产在线98福利播放视频免费| 国产精品久久久久久影院| 中国精品自拍| 亚洲国产综合自在线另类| 青青草原偷拍视频| 毛片免费高清免费| 国产精品大尺度尺度视频| 国内精品91| 国产日韩av在线播放| 思思热在线视频精品| 午夜无码一区二区三区| 91视频青青草| 手机在线免费不卡一区二| 日韩一区精品视频一区二区| 亚洲美女久久| 国产在线自乱拍播放| 免费在线a视频| 国产精品分类视频分类一区| 丝袜美女被出水视频一区| 国产91小视频在线观看| 国语少妇高潮| 一级做a爰片久久毛片毛片| 久久永久免费人妻精品| 激情综合网址| 在线视频97| 激情成人综合网| 久久久久青草大香线综合精品| 亚洲热线99精品视频| 一本一道波多野结衣av黑人在线| 欧美在线综合视频|