當前位置:工程項目OA系統(tǒng) > 泛普各地 > 遼寧OA系統(tǒng) > 沈陽OA系統(tǒng) > 沈陽OA行業(yè)資訊
敏捷開發(fā)-Scrum與精益相得益彰
瀑布模型是軟件工程中最初的經典模型。這種方法對于那些在初期需求就很完整清晰,并且在開發(fā)過程中不會有太多變化的項目非常適用。但是,大多數情況下在軟件開發(fā)過程中需求會不斷變化,而瀑布式開發(fā)很難適應這種變化。針對瀑布模型的這一不足,隨后涌現了許多開發(fā)模式,比如螺旋模型和統(tǒng)一過程開發(fā)(RUP)模型。盡管與瀑布模型相比,這兩種模型有了很大改進,但它們應用起來依然顯得比較沉重,無法適應快速的需求變化。這正是以Scrum為代表的敏捷開發(fā)方法所力圖解決的核心問題之一。
快速迭代以響應需求的變化
Scrum采用時間更短的迭代周期,這種迭代周期稱為Sprint。一個Sprint通常為2~4周。每個Sprint只開發(fā)價值最高的產品需求部分,并且每個Sprint周期可能包含全部的開發(fā)階段,如需求分析、設計、編寫代碼、測試、整合以及產品部署。每個短暫的Sprint周期過后,都能產生一個可以被審查、展示且可被用戶使用的軟件。用戶使用后的反饋和當前的需求變化整理后可以在以后的Sprint周期中得以實現。這樣就產生了一個快速的反饋循環(huán),它可以動態(tài)管理實現用戶頻繁的需求變化。Scrum提倡讓客戶全程參與到開發(fā)過程中。客戶的高度參與能有效提高Scrum項目的成功率??蛻舻拇硇枰胶忭椖坷嫦嚓P者之間的利益,從而能夠管理產品需求、調整需求的優(yōu)先級、 完善需求描述,讓開發(fā)團隊有一個清晰的方向,以獲得最大的投資回報率。與此同時,Scrum這一模式也涉及諸如團隊、流程、溝通等其他方面的元素,這些元素共同發(fā)展規(guī)范了整個Scrum框架結構。
精益(Lean)軟件開發(fā)模式來源于汽車制造業(yè)。它的主要思想是分析所有的流程,以查明和消除浪費,不斷提高效率。為了達到這個目的,精益模式提出了一些概念和實用的工具。但大部分的工具都面向制造業(yè)而不能直接應用于軟件開發(fā),精益軟件開發(fā)主要借鑒思想。在精益軟件開發(fā)中經常會提及兩個概念。一個是拉式系統(tǒng)(pull system)。在拉式系統(tǒng)中,一個流水線上任何一個環(huán)節(jié)的任務完成后,都會從前一個環(huán)節(jié)自動提取下一個任務。該模式以客戶的需求而不是市場預測來推動工作進程。另一方面,通過精益模式可以最小化未完成工作以及半成品的數量。它們通常被認為是開發(fā)過程中的浪費。除了拉式系統(tǒng),價值流圖(value stream mapping)也經常被應用于軟件開發(fā)過程中。價值流圖能夠有效地幫助識別過程中的浪費。
像其他敏捷方法一樣,Scrum同樣專注于管理需求變化和團隊潛能的發(fā)揮,同時它提出了一套比較完整的短開發(fā)周期的操作規(guī)程。而精益則更多地提供一種思維模式,幫助形成具有精益思維和習慣的開發(fā)團隊。將Scrum的框架與精益的思想結合起來,可以使它們互相補充形成我們前面提到的一個相對完整并能不斷完善的敏捷開發(fā)體系。我們在一些項目中嘗試實現了這種結合。在我們的敏捷協(xié)作平臺GScrum上,一種稱為WIP的特殊周期把Scrum的框架和精益開發(fā)中的拉式系統(tǒng)很好地結合了起來,可以適應更快的需求變化。
Scrum的三種角色和四個會議
Scrum框架主要包括三種角色和四個會議。其中三種角色有:
● 產品擁有者: 該角色負責產品的遠景規(guī)劃,平衡各方面的利益,確定不同的產品需求積壓的優(yōu)先級等。它是開發(fā)團隊和客戶或最終用戶之間的聯(lián)絡點。
● Scrum專家: Scrum專家負責指導開發(fā)團隊進行Scrum開發(fā)與實踐。它也是開發(fā)團隊與產品擁有者之間交流的聯(lián)絡點。
● 團隊成員: 即項目開發(fā)人員。
四個會議包括:
● 周期計劃會: 在產品擁有者和團隊之間對下個周期要完成的需求達成一致,并對其進行規(guī)劃.
● 每天例會: 每天15分鐘,團隊成員之間互相交流進展、問題和下一步計劃。
● 周期展示會: 向產品擁有者和相關人員展示新完成的需求并收集反饋意見。
● 周期回顧會: 總結上個周期的經驗和教訓。
把精益思想融入Scrum
Scrum、精益開發(fā)模式以及其他的敏捷方法與傳統(tǒng)的軟件工程或項目管理理論與實踐相比有一個共同的優(yōu)點: 簡單。不過,在實際運用過程卻也并不容易。
首先,變化對許多人來說是難以接受的。初次使用敏捷開發(fā)的團隊都有一個從接受到真正應用的過程。一些敏捷開發(fā)實踐如測試驅動開發(fā)、結對編程以及每天的Scrum會議都需要一段時間讓開發(fā)團隊逐漸適應。因此,公司領導的強力支持和對團隊的培訓,是讓敏捷模式給一個公司真正帶來回報的重要因素。
其次,在Scrum實踐中,Scrum專家(Scrum Master)是一個核心的角色。該角色從字面上很容易被理解為一個在Scrum開發(fā)團隊中擁有極高權力,同時管理所有成員的人。實際上,這個角色并未被賦予行政職權,但他必須擁有很強的軟力量及社交技巧。根據我們的實踐經驗,Scrum專家需要理解團隊中的每個成員,將所有人團結起來。同時,Scrum專家還必須在團隊效率與開發(fā)人員的感受之間取得平衡。
對于采用Scrum方法的團隊,還可能遭遇許多技術性的問題。敏捷開發(fā)團隊的一大挑戰(zhàn)是如何能夠不斷改進開發(fā)過程。剛開始,敏捷開發(fā)對于整個開發(fā)團隊來說可能還是比較新鮮的。但是開發(fā)團隊很快就會對敏捷方式,特別是每天的Scrum會議感到乏味。一旦感到乏味并開始松懈,開發(fā)團隊要么會放棄敏捷模式回到原有的開發(fā)模式上,要么會停留在對敏捷開發(fā)的膚淺應用層次上。這樣一來,團隊的積極性和創(chuàng)造性會受到打擊,停滯不前。此時,結合精益開發(fā)方法能有效解決這個問題。
精益模式提倡持續(xù)不斷地改進、減少流程中的浪費。這個概念應該被注入到整個團隊中,讓團隊形成精益的思維和長期的習慣,這樣一來,不斷的改進和提高會讓團隊保持高昂的士氣和熱情。運用精益開發(fā)模式相對比較抽象,而最佳的應用精益軟件開發(fā)的途徑是從簡單入手,理解其思想,然后針對團隊情況摸索創(chuàng)新,應用一些精益的有效工具,讓整個團隊習慣精益的思維模式和行為。當然,請有相關經驗的專家或顧問指導、交流會事半功倍。(ccw)
- 1存儲發(fā)展簡史 從"傻瓜陣列"到"按需存儲"
- 2信息安全法規(guī)與倫理道德調查
- 3加密專家RSA大會對談云計算的風險
- 4企業(yè)對協(xié)同辦公需求分析
- 5信息化防疫:體驗“Google流感趨勢”
- 6企業(yè)IT系統(tǒng)中應用防火墻能做什么?
- 7體驗全新的虛擬化數據中心價值觀
- 8快速清除系統(tǒng)中的木馬病毒方法分享
- 9六方面入手選擇和使用UTM設備
- 10應用導向 存儲虛擬化技術的今天
- 11云計算:是用外部云還是內部云?
- 12企業(yè)建私有云有哪些存儲需求?
- 13中國企業(yè)信息安全落后于全球平均水平
- 14云計算來臨 哪些真相無法回避?
- 15SOA早期應用總結:五個關鍵教訓
- 16何迪生:解讀2009“IT風險管理之道”
- 17Linux系統(tǒng)與Win系統(tǒng)目錄結構差異
- 18OA辦公系統(tǒng)流程審批自由流程解析
- 19盤點數據保護方式看中小企業(yè)信息安全
- 20基于移動agent技術的供應鏈訂單流管理
- 21選擇和管理企業(yè)應用程序產品的最佳做法
- 22云計算終端瀏覽器:需要?不需要?
- 23解讀虛擬世界中的動態(tài)能力規(guī)劃
- 24協(xié)同OA軟件對區(qū)域市場現狀及其趨勢判斷
- 25虛擬化HPC:直面七大技術挑戰(zhàn)
- 26趨勢:虛擬化將成為企業(yè)移動應用的核心
- 27虛擬化推廣應用還未成熟 五大瓶頸
- 28增加服務器穩(wěn)定性的12種技術
- 29全面審視三種視頻會議技術優(yōu)缺點
- 30微軟高管稱開源使其比任何時候都忙?
成都公司:成都市成華區(qū)建設南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓