極限程式設計,通常成為xp,是一種針對業務和軟體開發的規則,它的作用在於將兩者的力量集中在共同的、可以達到的目標上。xp團隊以可持續的步調生產優質軟體。
xp屬於輕量開發方法中較有影響的一種方法。
xp方法強調客戶參與和測試。在xp中,客戶與程式設計師的角色有明顯的界定。他們在同乙個團隊,但他們要做不同的決定。客戶決定「他要什麼功能」,程式設計師決定「成本是多少」。你能明確的分清該誰做什麼決定。
xp程式設計師使用測試先行的增量程式設計方法編寫**。一次編寫一部分單元測試用例,然後編寫滿足測試要求的**。總是有測試用來證明新增**的正確性。以增量的方式程式設計,並且測試先行。
乙個程式能夠執行並不說明它已經完成了。xp盡力通過保持系統盡可能簡單從而保持系統最大的適應性。在**通過所有測試後用重構進一步改進**。越簡單**生命週期會越長久。
極限程式設計使用集體的**所有權。xp實踐試圖降低集體的**所有權帶來的以下風險。個人驕傲:xp實際上沒有處理這個問題,除了可能鼓勵將其轉換為以團隊為驕傲。罰不責眾:結對程式設計和100%執行單元測試將有助於確保沒有人能夠私底下進行「汙染」。專業知識不足:結對程式設計在團隊中傳播了知識。閱讀其他人**:編碼標準有助於減少這種問題。踩腳:持續整合保證了人們即使沒有重返主線也不會走得太遠,測試將確保不會出現倒退。
xp使用持續整合。每次開發人員完成了一段時間的工作,就會對他們所作的工作進行整合。xp中的整合由測試支援。開發人員必須保持所有單元測試100%執行。
對於加班,xp認為每週工作40小時更合適。xp團隊需要的是可以承受的生產率水平。如果該團隊重複出現無法完成自己的承諾,他們就會將問題退回來,而不是採取加班的方式。xp團隊遵循「昨天的天氣」規則:估計完成下乙個迭代所需時間大約與本次的估計工作日相同。此規則有助於團隊找到其正常的生產力水平。你無法改變時間,但是你可以改變你的任務。
xp指定了開放的工作區,通常是小的私人空間圍繞著乙個中心區域。
xp推薦小而頻繁的發布。xp團隊一直在嘗試學習,他們得到的反饋越多越好。數月或者甚至數年沒有發布的專案會積累許多風險,小版本將減少風險。版本應該小,但必須由意義,至少應該包括所有的特性。
對於編碼標準,xp團隊必須共享乙個標準。
以上內容來自《探索極限程式設計》 人民郵電出版社 william c. wake著 鄭榮林譯
上面是極限程式設計(xp程式設計)讀書筆記的第一部分
極限程式設計(XP程式設計)讀書筆記(二)
結對程式設計是一種技巧。它需要實踐,不是對每個人都很容易開始。結對程式設計是xp中極其重要的一種技巧,因此值得培養這種習慣來利用它的好處。體系結構體現在 中,體現在隱喻中,體現在第一次迭代以及別的地方。xp通過以下機制處理體系結構 隱喻,第一次迭代,小版本,重構,團隊實踐。隱喻提供了一種共識和一套公...
極限程式設計(XP程式設計)讀書筆記(二)
結對程式設計是一種技巧。它需要實踐,不是對每個人都很容易開始。結對程式設計是xp中極其重要的一種技巧,因此值得培養這種習慣來利用它的好處。體系結構體現在 中,體現在隱喻中,體現在第一次迭代以及別的地方。xp通過以下機制處理體系結構 隱喻,第一次迭代,小版本,重構,團隊實踐。隱喻提供了一種共識和一套公...
《解析極限程式設計》讀書筆記
align center img 不知道是kent beck的語言組織能力還是翻譯能力,反正這本書看起來有一種 天馬行空 的感覺 和那本測試驅動開發一樣 這本關於xp的開山之作很久之前就借了,這次抽時間大致翻了一篇,關鍵不在技術層面的操作,更多的可能是對極限程式設計思想的接受,收穫不多.整本書採用中...