• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Oo緣來(lái)是你oO


            人本是人,不必刻意去做人;世本是世,無(wú)須精心去處世;自然的才是快樂(lè)的。

            posts - 11,comments - 8,trackbacks - 0

            作為敏捷軟件開(kāi)發(fā)領(lǐng)域主流的開(kāi)發(fā)方法,極限編程與其說(shuō)是一種系統(tǒng)的方法學(xué),倒更像是一系列最佳實(shí)踐的有機(jī)結(jié)合。在這些最佳實(shí)踐中,有些是已經(jīng)廣為人們所接受的(如編碼標(biāo)準(zhǔn)),而更多的則極具顛覆性,初看之下讓人似乎難以接受。

            本文中,我將針對(duì)這些看似怪異的最佳實(shí)踐闡述我的觀點(diǎn),并簡(jiǎn)述我對(duì)實(shí)施這些最佳實(shí)踐的一些思考。

            一、計(jì)劃游戲

            能夠把計(jì)劃叫做“游戲”是需要一定勇氣的。在傳統(tǒng)的軟件開(kāi)發(fā)方法學(xué)中,計(jì)劃是舉足輕重的一環(huán),在制訂計(jì)劃前需要仔細(xì)的估算,在計(jì)劃實(shí)施的過(guò)程中,還要不停的跟蹤、修正,直至整個(gè)項(xiàng)目完成。

            而在XP中,計(jì)劃似乎要輕松許多。這并不是因?yàn)橛?jì)劃本身變得草率和無(wú)關(guān)痛癢,而是得益于XP的小版本發(fā)布思維。軟件的一個(gè)版本是如此短小簡(jiǎn)單,以至于對(duì)它進(jìn)行完整的評(píng)估、預(yù)算、跟蹤和修正要容易許多。事實(shí)上,XP中采用的計(jì)劃方式(業(yè)務(wù)人員和開(kāi)發(fā)人員共同參與,各司其職)在大多數(shù)現(xiàn)代軟件企業(yè)中早已采用,但是由于項(xiàng)目過(guò)于龐大,很難在開(kāi)始階段制訂出完善的計(jì)劃。而在XP中,人們只需要針對(duì)一個(gè)一兩個(gè)月的小項(xiàng)目進(jìn)行跟蹤和管理,無(wú)形中降低了計(jì)劃的風(fēng)險(xiǎn)。

            二、隱喻

                在XP中,人們經(jīng)常會(huì)使用隱喻來(lái)代替?zhèn)鹘y(tǒng)開(kāi)發(fā)過(guò)程中的體系結(jié)構(gòu)設(shè)計(jì)。從指導(dǎo)開(kāi)發(fā)的角度來(lái)說(shuō),隱喻似乎不夠精確,容易讓人誤解。但是,對(duì)于具有類(lèi)似背景的同一個(gè)項(xiàng)目組中的開(kāi)發(fā)人員來(lái)說(shuō),隱喻則更便于理解和交流。很難想象兩個(gè)程序員面對(duì)著一張龐大的體系結(jié)構(gòu)圖時(shí)能夠真正有效的溝通,而隱喻很好的解決了這個(gè)問(wèn)題。

            三、簡(jiǎn)單設(shè)計(jì)

            不知道從什么時(shí)候開(kāi)始,開(kāi)發(fā)人員習(xí)慣了為明天而設(shè)計(jì)。一個(gè)開(kāi)發(fā)人員設(shè)計(jì)了一個(gè)復(fù)雜的類(lèi)繼承結(jié)構(gòu),只是為了提高程序的所謂靈活性。沒(méi)人知道這樣值不值,并不是軟件的每一個(gè)部分都需要擴(kuò)展。但是,對(duì)于傳統(tǒng)的軟件開(kāi)發(fā)人員來(lái)說(shuō),這么做又是迫不得已。如果沒(méi)有預(yù)先做好準(zhǔn)備,在變化來(lái)臨時(shí)就會(huì)措手不及,付出沉重的代價(jià)。

            但是在XP中,小版本發(fā)行的方法使得變化并不那么可怕,而重構(gòu)的廣泛采用,使得代碼總是可以在需要時(shí)變得更加靈活。此外,由于你的代碼總是會(huì)被別人審查(代碼集體所有權(quán)和結(jié)對(duì)編程),因此也可以避免過(guò)于追求簡(jiǎn)單而忽視了重要的細(xì)節(jié)。

            四、測(cè)試優(yōu)先

            沒(méi)有代碼要測(cè)試程序有什么用?這是測(cè)試優(yōu)先最容易讓人誤解的地方。測(cè)試優(yōu)先能夠讓開(kāi)發(fā)人員更清楚的認(rèn)識(shí)到,程序?qū)?huì)如何被使用。通過(guò)對(duì)不同的測(cè)試用例的思考,開(kāi)發(fā)人員也能夠更清晰的認(rèn)識(shí)到程序的功能外延。而更多的其他的開(kāi)發(fā)人員,則通過(guò)測(cè)試用例就可以獲得一份精確的使用手冊(cè),在這份使用手冊(cè)中,描述了作者考慮到的所有輸入和輸出結(jié)果,這樣不僅便于人們了解程序,更增加了發(fā)現(xiàn)程序錯(cuò)誤的機(jī)會(huì)(缺失的測(cè)試用例往往體現(xiàn)出作者忽視的某些使用情況)。

            五、結(jié)對(duì)編程

            兩個(gè)程序員坐在一起,能夠提高開(kāi)發(fā)效率嗎?程序員難道不是一群高傲的貓,習(xí)慣于離群索居,把頭抬得高高嗎?

            事實(shí)并非如此。在一個(gè)正確的、合理的、能夠?qū)崿F(xiàn)的大目標(biāo)下,程序員們不僅能夠和平共處,更可以相互合作,創(chuàng)造出優(yōu)秀的、高質(zhì)量的程序。溝通一直是軟件項(xiàng)目管理中的一個(gè)重要議題,而結(jié)對(duì)編程提供了一個(gè)十分有效的溝通渠道。此外,結(jié)對(duì)編程也更容易讓新人融入團(tuán)體。在幾個(gè)高級(jí)程序員的指引下,他會(huì)更容易找出程序的脈絡(luò),把握程序的思想。較之正規(guī)的培訓(xùn),這種方式更輕松也更有效。對(duì)于團(tuán)隊(duì)中的所有程序員來(lái)說(shuō),結(jié)對(duì)編程都是一個(gè)了解其他人設(shè)計(jì)思想的機(jī)會(huì),通過(guò)結(jié)對(duì)編程,能夠更好的實(shí)現(xiàn)代碼集體所有權(quán),也能夠降低因?yàn)槿藛T流動(dòng)造成的風(fēng)險(xiǎn)。

            結(jié)對(duì)編程最大的好處在于,能夠極大的減少程序中潛在變化的可能性。兩個(gè)人通過(guò)交流互相交換自己對(duì)程序的不同理解,更容易找出程序中可能出現(xiàn)的變化或錯(cuò)誤,從而使程序更加可靠和健壯。

            六、持續(xù)集成

            集成一直是最費(fèi)力的工作之一,本來(lái)工作的好好的代碼,放在一起就不能運(yùn)轉(zhuǎn),更糟糕的是成百上千條不知所云的錯(cuò)誤碼,沒(méi)有人知道這些錯(cuò)誤碼來(lái)自何處。這是每個(gè)項(xiàng)目幾乎都會(huì)遇到的最困難的階段,程序員們必須集合在一起,翻閱數(shù)量巨大的接口定義文件,反復(fù)查看代碼,同時(shí)還要不斷的做出承諾。

            持續(xù)集成正是解決上述問(wèn)題的方法。通過(guò)多次、小增量的集成,我們總是能夠以最快的速度定位錯(cuò)誤出現(xiàn)的位置(因?yàn)樵黾拥拇a很少),結(jié)合大量測(cè)試用例,我們也可以確保每一個(gè)集成版本都盡可能的可靠。

            此外,持續(xù)集成幾乎可以在任何時(shí)間向我們提供一個(gè)可以工作的版本,我們可以將這個(gè)版本用于內(nèi)部討論和測(cè)試、客戶(hù)展示、客戶(hù)測(cè)試、小版本發(fā)布等等,這使得我們不需要花費(fèi)太多的時(shí)間對(duì)現(xiàn)有的程序修修補(bǔ)補(bǔ),以生成一個(gè)demo。

            上文簡(jiǎn)單敘述了XP中常會(huì)引起爭(zhēng)議的六個(gè)最佳實(shí)踐的優(yōu)點(diǎn)。下面本文將結(jié)合實(shí)際談?wù)剬?shí)施XP中需要注意的一些問(wèn)題。

            一、適用性問(wèn)題

            XP理論在提出時(shí),明確的說(shuō)明:XP是適用于中小型團(tuán)隊(duì)在需求不明確或者迅速變化的情況下進(jìn)行軟件開(kāi)發(fā)的輕量級(jí)方法。這就意味著,XP并不適用于所有情況。在準(zhǔn)備實(shí)施XP前,你也許需要仔細(xì)評(píng)估項(xiàng)目的具體情況,以決定是否真的需要采用XP。

            二、最佳實(shí)踐間的關(guān)聯(lián)

            XP的一個(gè)特點(diǎn)是,它所推崇的最佳實(shí)踐幾乎總是和其它實(shí)踐關(guān)聯(lián)緊密,在實(shí)施一項(xiàng)最佳實(shí)踐時(shí),如果不同時(shí)實(shí)施其它實(shí)踐,往往難以達(dá)到最初的目的。因此,在實(shí)施XP時(shí),需要仔細(xì)研究各項(xiàng)實(shí)踐間的關(guān)聯(lián),以確定最佳的實(shí)施方案。

            三、寬松的環(huán)境

            XP是一種追求自然的工作方法。它所倡導(dǎo)的是,程序員們以最自然開(kāi)發(fā)的方式完成他們的工作。對(duì)于習(xí)慣了傳統(tǒng)開(kāi)發(fā)方法嚴(yán)格管理制度的管理人員來(lái)說(shuō),這往往是很難接受的。于是就出現(xiàn)了,雖然最高決策人決定實(shí)施XP,但管理層卻無(wú)法(或不愿)給開(kāi)發(fā)人員提供寬松的環(huán)境。在一個(gè)古板僵化的方框里,開(kāi)發(fā)人員不會(huì)真正的回復(fù)自然,他們會(huì)裝作正在實(shí)踐XP,但事實(shí)上,他們依然在老路上行走(可以見(jiàn)到很多這樣的例子,比如一些虛張聲勢(shì)的測(cè)試用例等等)。

            四、忍受變化

            XP對(duì)于傳統(tǒng)軟件項(xiàng)目管理思想的沖擊,可能會(huì)使很多管理人員感到不舒服。也許XP一經(jīng)實(shí)施,就會(huì)給項(xiàng)目組帶來(lái)翻天覆地的變化。如果這樣的變化讓你感到恐懼,那么請(qǐng)暫時(shí)忍耐,你不能肯定這種變化不好,除非你親眼看到。到那時(shí)再?zèng)Q定也不遲。

            五、慢慢來(lái)

            實(shí)施XP的過(guò)程不能操之過(guò)急。最好的方法是,在部分項(xiàng)目組中先行實(shí)施,實(shí)施時(shí)也不需要同時(shí)實(shí)施所有實(shí)踐(但要注意各個(gè)實(shí)踐間的關(guān)聯(lián)問(wèn)題)。有的時(shí)候你會(huì)發(fā)現(xiàn),在實(shí)施了部分實(shí)踐后,其它的實(shí)踐也成為水到渠成的事情。當(dāng)經(jīng)過(guò)仔細(xì)評(píng)估,確信XP在項(xiàng)目組中確實(shí)有效后,再逐步在企業(yè)范圍內(nèi)推廣,必要的時(shí)候,需要采取自愿的原則,由項(xiàng)目組的成員決定是否需要實(shí)施XP。

            以上即是我在軟件工程過(guò)程課程中以及平時(shí)工作、學(xué)習(xí)中對(duì)XP的一些認(rèn)識(shí)。


            來(lái)源: http://blog.csdn.net/leasun/archive/2006/08/15/1067508.aspx

            posted on 2006-08-26 10:15 馬嘉楠 閱讀(812) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): 【03】技術(shù)天地
            五月丁香综合激情六月久久| 国产aⅴ激情无码久久| A狠狠久久蜜臀婷色中文网| 色噜噜狠狠先锋影音久久| 久久精品三级视频| 亚洲人成伊人成综合网久久久| 狠狠色婷婷久久一区二区三区 | 久久精品国产半推半就| 久久精品国产亚洲Aⅴ香蕉| 99精品国产99久久久久久97| 国产69精品久久久久99| 国产亚洲精久久久久久无码77777 国产亚洲精品久久久久秋霞 | 久久超乳爆乳中文字幕| 久久e热在这里只有国产中文精品99| 久久久久久久波多野结衣高潮| 伊人久久精品线影院| 久久99精品久久久久久动态图| 亚洲色欲久久久久综合网 | 亚洲国产精品综合久久一线 | 久久久久久人妻无码| 久久香综合精品久久伊人| 精品久久久久久久久久中文字幕 | 久久久久国产一区二区三区| 人妻精品久久久久中文字幕一冢本| 狠狠久久综合伊人不卡| 国产精品99久久精品| 久久精品国产亚洲AV大全| 亚洲精品国产美女久久久| 久久久一本精品99久久精品88| 久久青青国产| 亚洲AⅤ优女AV综合久久久| 久久精品无码一区二区三区日韩| 久久精品国产秦先生| 久久这里只有精品首页| 亚洲综合婷婷久久| 久久精品人妻一区二区三区| 久久99精品久久久久久噜噜| 久久青青草原精品国产不卡| 免费精品国产日韩热久久| 77777亚洲午夜久久多喷| 久久久久亚洲精品天堂|