《极限编程》PPT课件.ppt
《《极限编程》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《极限编程》PPT课件.ppt(35页珍藏版)》请在三一办公上搜索。
1、06/03/2008,軟體工程期末報告,極限編程XP,eXtreme Programming,9562228 林哲男9562230 紀文平,06/03/2008,什麼是極限編程?,一種軟體工程方法學敏捷軟體開發中最富有成效的幾種方法學之一強調程式設計師團隊與業務專家之間的緊密協作、面對面的溝通(認為比書面的文檔更有效)、頻繁交付新的軟體版本、緊湊而自我組織型的團隊、能夠很好地適應需求變化的代碼編寫和團隊組織方法,也更注重做為軟體開發中人的作用。傳統 V.S XP與傳統在項目起始階段,定義好所有需求再費盡心思的控制變化的方法相比,XP希望有能力在項目周期的任何階段去適應變化,06/03/2008
2、,什麼是極限編程?2,XP 其實它沒什麼新鮮的概念,而且大部分都是相當古老的概念。有些專家認為 XP 是保守的-它所有的技巧都已在過去數十年或數百年內被證明有效。XP 的創新處在於:把這些做法一舉囊括。確保這些做法都儘可能徹底的實施。確保這些做法都儘可能彼此截長補短。,06/03/2008,歷史,極限編程的創始者是Kent Beck、Ward Cunningham和Ron Jeffries,他們在克萊斯勒時提出了極限編程方法。1999年10月發行極限編程解析(2005第二版出版)By Kent Beck,06/03/2008,極限編程的哲學思想,一種社會性的變化機制 一種開發模式 一種改進的方
3、法一種協調生產率和人性的嘗試 一種軟體開發方法 By 極限編程解析,06/03/2008,XP 的目標,極限編程的主要目標在於降低因需求變更而帶來的成本 極限編程透過引入基本價值、原則、方法等概念來達到降低變更成本的目的 傳統 V.S.XP,06/03/2008,XP的極致思維,如果程式碼檢查(code reviews)有益,我們應反覆地檢查(搭檔編程,pair programming)。如果測試有益,每個人都該常常做測試(單元測試,unit testing),即使是客戶也不例外(功能測試,function testing)。如果設計有益,則應被當作每個人每天工作的一部分(重整,refacto
4、ring)。,06/03/2008,XP的極致思維2,如果簡潔有益,我們應讓系統保持在能夠支援目前所需功能的最簡單狀態(能夠運作的最簡單架構)。架構如果重要,每個人都要常常反覆琢磨架構(對整個系統下一個隱喻、象徵、或概念)。整合測試如果重要,我們每天就會做上好幾次(持續整合)。短的開發週期如果有益,我們就把它縮短到真的真的非常短-短到可以用幾秒到幾分鐘到幾小時來計算,而不是幾星期到幾個月到幾年(通盤規劃)。,06/03/2008,XP 可保証二件事,對程式師而言XP 保証他們可以每天都做些真正有意義的事;他們再不必獨自面對那些會令人驚慌的情況;他們將可以自己掌握每件事,成功地做出系統;下他們能
5、做的最佳決定,而不會做不是他們夠資格做的決定。對客戶和經理人而言XP 保証他們每個工作週,都可以獲致最大的利益;每隔幾週,就會看到他們所在乎目標的具體進度;也可以在不導致過高費用的狀況下,在專案進行到一半時改變其進行方向。By 極限編程解析,06/03/2008,XP的價值,溝通 簡單 回饋(設計師&客戶的測試)勇氣 尊重(第二版最新添加的價值),06/03/2008,XP的原則 由價值衍生而來,快速反饋 假設簡單 增量變化 包容變化,06/03/2008,XP的特徵,增量和反覆式的開發 一次小的改進跟著一個小的改進。反覆性,通常是自動重複的單元測試。成對程式設計 在程式設計團隊中包含User
6、軟體重構 共享的程式碼所有權 簡單 回饋,06/03/2008,XP核心的實踐,XP的核心可被分為四個範圍小規模回饋 Fine scale feedback 測試驅動開發、策劃遊戲、客戶、成對程式設計 反覆持續性程序 Continuous process 持續整合、設計最佳化(軟體重構)、小型發佈 共識(標準與規章)Shared understanding 簡單設計、集體程式碼所有、程式設計標準/規約 程式設計者的福利 Programmer welfare 穩定標準的速率,06/03/2008,小規模回饋 Fine scale feedback測試,沒有經過測試的程式碼什麼都不是 XP認為,如
7、果一個函數沒有經過測試就不能認為它可以工作 單元測試 是用以測試一小段程式碼的自動測試。在XP中,需要在程式碼編輯前就編輯單元測試。這種方式的目的是激勵Programmer思考自己的Code在何種條件下會出錯。XP認為當Programmer無法再想出更多能使Code出錯的情況時,這些程式碼便算完成。,06/03/2008,小規模回饋 Fine scale feedback成對設計,它迫使我們與別人溝通、把別人跟自己的想法看得更清楚、也加快了寫程式的速度,對新手而言(每個人都是某方面的新手),這更是一條學習的捷徑,大家都知道,有人當場教,學得最快。一個programmer控制電腦並且主要考慮編碼
8、細節。另一個主要注意整體結構,不斷的對第一個programmer寫的程式碼進行反饋。成對的方式不是固定的:XP甚至建議程式設計師盡量交叉結對。這樣,每個人都可以知道其它人的工作,每個人都對整個系統熟悉,成對程式設計加強了團隊內的溝通。,06/03/2008,小規模回饋 Fine scale feedback 客戶(現場客戶),在XP中,客戶並不是為系統付帳的人,而是真正使用該系統的人。極致編程認為客戶應該時刻在現場解決問題。例如:在團隊開發一個財務管理系統時,開發小組內應包含一位財務管理人員一個小組理論上需要一個User在身邊,制定軟體的工作需求和優先等級,並且能在問題出現的時候馬上回答(實際
9、工作中,這個角色是由客戶代理商完成的),06/03/2008,小規模回饋 Fine scale feedback 策略遊戲,策劃程序分為兩部分:發佈策劃反覆狀態,06/03/2008,策略遊戲發佈策略,這一階段涉及成本、利潤和計劃影響這三個因素,包含四個部分:照價值排序:業務人員按照商業價值為使用者需求排序。按風險排序:開發者按風險為使用者需求排序。設定周轉率:開發者決定以怎樣的速度開展專案。選擇範圍:挑選在下一個版本(工作點)中需要被完成的使用者需求,基於使用者需求決定發佈日期。,06/03/2008,策略遊戲發佈策略,值得一提的是在作業階段開發人員和業務人員可以操縱整個程序。意指他們可以做
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 极限编程 极限 编程 PPT 课件
链接地址:https://www.31ppt.com/p-5531792.html