1. 程式人生 > >Scrum敏捷實踐

Scrum敏捷實踐

相信大家對它都很熟悉了,有很多很多的書用來介紹重構,最著名的是Martin的《重構》,Joshua的《從重構到模式》 等。重構是在不改變系統外部行為下,對內部結構進行整理優化,使得程式碼儘量簡單、優美、可擴充套件。在以往開發中, 通常是在有需求過來,現在的系統架構不容易實現,從而對原有系統進行重構;或者在開發過程中有剩餘時間了,對 現在程式碼進行重構整理。但是在敏捷開發中,重構貫穿於整個開發流程,每一次開發者check in程式碼之前,都要對所寫 程式碼進行重構,讓程式碼達到clean code that works。值得注意的是,在重構時,每一次改變要儘可能小,用單元測試來 保證重構是否引起衝突,並且不只是對實現程式碼進行重構,如果測試程式碼中有重複,也要對它進行重構。
Pair-Programming,結對程式設計。   在敏捷開發中,做任何事情都是Pair的,包括分析、寫測試、寫實現程式碼或者重構。Pair做事有很多好處,兩個人在 一起探討很容易產生思想的火花,也不容易走上偏路。在我們公司,還有很多事都是Pair來做,比如Pair學習,Pair翻譯, Pair做PPT,關於這個話題,錢錢同學有一篇很有名的文章對它進行介紹,名為Pair Programming (結對程式設計)。 Stand up,站立會議。   每天早上,專案組的所有成員都會站立進行一次會議,由於是站立的,所以時間不會很長,一般來說是15-20分鐘。 會議的內容並不是需求分析、任務分配等,而是每個人都回答三個問題:1. 你昨天做了什麼?2. 你今天要做什麼?  3. 你遇到了哪些困難?站立會議讓團隊進行交流,彼此相互熟悉工作內容,如果有人曾經遇到過和你類似的問題,那麼 在站立會議後,他就會和你進行討論。 小版本釋出。
  在敏捷開發中,不會出現這種情況,拿到需求以後就閉門造車,直到最後才將產品交付給客戶,而是儘量多的產品 釋出,一般以周、月為單位。這樣,使用者每隔一段時間就會拿到釋出的產品進行試用,而我們可以從使用者那得到更多的 反饋來改進產品。正因為釋出頻繁,每一個版本新增的功能簡單,不需要複雜的設計,這樣文件和設計就在很大程度上 簡化了。又因為簡單設計,沒有複雜的架構,所以客戶有新的需求或者需求進行變動,也能很快的適應。 可調整計劃 敏捷開發中計劃是可調整的,並不是像以往的開發過程中,需求分析->概要設計->詳細設計->開發 ->測試->交付,每一 個階段都是有計劃的進行,一個階段結束便開始下一個階段。而敏捷開發中只有一次一次的迭代,小版本的釋出,根據客
戶反饋隨時作出相應的調整和變化。   敏捷開發過程與傳統的開發過程有很大不同,在這過程中,團隊是有激情有活力的,能夠適應更大的變化,做出更高 質量的軟體。