極限程式設計 xp程式設計 總結

2021-08-22 06:35:33 字數 2280 閱讀 2901

1.什麼是xp程式設計(極限程式設計):

xp是勇氣,交流,反饋和簡單。

xp是軟體開發過程中的紀律,它規定你:必須在程式設計前些測試,必須兩個人一起程式設計,必須遵守程式設計規範……。

xp是把最好的實踐經驗提取出來,形成了乙個嶄新的開發方法。

2. xp適用範圍:

極限程式設計,也被叫做xp,適用於中小型團隊在需求不明確或者迅速變化的情況下進行軟體開發的輕量級方法學。

推薦使用範圍為10人左右的團隊

3.xp工作模式體現:

一、工作環境

二、立式晨會

三、結對程式設計

四、測試驅動開發

五、重構

六、持續整合

七、頻繁地發布小版本

4.結對程式設計:

開發任務會細化分解為很多task,乙個task的開發周期一般不超過2天。

每個task的owner會尋找乙個partner進行結對開發。

task開發的次序由程式設計師們自己協商。他可以先作為partner和其他owner一起開發某個task,然後再找另乙個程式設計師作為partner來共同開發自己承擔的task。

結對開發時,task的owner主要負責編碼, partner負責在一旁看owner程式設計並在其編寫有錯誤提出自己的意見,當其遇到困難時一起討論、互相幫助完成任務

5.測試驅動開發:

在動手編碼之前,必須先寫功能測試指令碼、單元測試指令碼。

寫好測試指令碼後,開始編碼、重構、執行單元測試、整合、執行功能測試,以此迴圈

6.重構:

減少重複設計,優化設計結構,提高技術上的重用性和可擴充套件性。

xp提倡毫不留情的重構。

任何人可以重構任何**,前提是重構後的**一定要通過100%測試單元測試後才能被check-in

7.持續整合:

測試先行是持續整合的乙個重要前提。

持續整合指不斷地把完成的功能模組整合在一起。目的在於不斷獲得客戶反饋以及盡早發現bug。

隨時整合,越頻繁越好;整合及測試過程的自動化程度越高越好。

每次只有乙個新增加部分在整合,而且必須執行功能測試

8.頻繁地發布小版本:

發布過程應該盡可能地自動化、規範化。

不斷地發布可用的系統可以告訴客戶你在做正確的事情。

客戶使用發布的系統,可以保證頻繁地反饋和交流。

保證客戶有足夠的依據調控開發過程(增加、刪除或改變需求)。

降低開發風險。

隨著開發的推進,發布越來越頻繁。

所有的發布都要經過功能測試。

測試優先原則

結對程式設計

持續整合

頻繁小版本

不斷重構

立式晨會

交流和溝通,「只有沒有溝通不夠的專案,沒有溝通過度的專案」

分解任務、制定計畫是關鍵一環

10.xp作用:

一、平穩的工作效率

平穩的工作效率指團隊和個人在很長的時期內保持一定的開發效率。

保證了專案速度和計畫過程的有效性和準確性;

保證了程式設計師可以持續地完成任務,團隊可以持續地向客戶交付可執行的系統;

結對程式設計已經加大了工作強度,並且和其它xp的規則一起提高了工作效率,使少加班和維持平穩的工作效率可能而且可行。

提倡平穩的工作效率,體現了xp以人為本的價值觀。

二、高質量

測試優先、並堅持單元測試、每個版本進行功能測試的原則是保證了高質量的乙個關鍵;

充分的溝通交流進一步減少了寫低質量**的風險;

結對開發模式在互相學習中會產出高質量的**

三、open

結對開發、每一處修改都需要測試等等規則使得實現集體擁有**, 「我們」的**,而不是「我」的**;

充分的溝通交流可以將每個人的知識、思想共享;

讓每個人都知道專案的設計、計畫、進展情況等資訊;

大家都知道每個人都在做什麼和怎麼做;

四、對人的挑戰

暴露自己的缺點,人的本性

懶惰自尊

封閉……

克服自己的缺點

高效率不怕告訴別人自己不會,樂於問人

懂得尊重別人,樂於幫助別人

……11.受益於xp:

乙個曾經在xp模式下工作過的人,回到傳統開發模式下才深刻體會到xp給他帶來的財富。

在傳統開發模式下他堅持每天有計畫、總結,堅持測試驅動開發……

發現他總是按時下班甚至提前下班,可是同事們越來越多且越來越晚下班,是自己不認真?是同事們愛表現?……

都不是!!

是xp給他帶來的受益終身的開發方式,他的同事bug量遠遠比他多,他只有不多的幾個;同事們任務總是延時,而自己都是輕鬆按時完成……

愛賣藝

XP極限程式設計

結隊程式設計是xp極限程式設計的乙個關鍵實踐,如果把結隊程式設計放到整個xp裡面會更容易體現出它的價值,所以我覺得分析結隊程式設計的乙個整體思路是 1 適用場景 xp的適用性在 什麼樣的專案中適合採用xp,在這樣的專案中xp可以起到什麼作用。如果離開了適用場景,xp的適用性都要重新考慮,所以就更不用...

極限程式設計(XP)發布工具

極限程式設計 xp 發布工具 瀏覽次數 1556 本文關鍵字 extreme programming,xp,projectcards,extremeplanner,極限程式設計 文章工具 推薦給朋友 列印文章 最近很長一段時間,我都在忙於乙個完整生命週期實現專案。這些天我的責任更側重於架構和業務開發...

什麼是xp 極限程式設計 ?

極限程式設計 extreme programming,xp 是一門針對業務和軟體開發的規則,它的作用在於將兩者的力量集中在共同的 可以達到的目標上。它是以符合客戶需要的軟體為目標而產生的一種方 xp使開發者能夠更有效的響應客戶的需求變化,哪怕是在 軟體生命週期 的後期。它強調,軟體開發是人與人合作進...