敏捷開發 Scrum核心

2021-07-04 18:17:09 字數 2428 閱讀 6984



在上篇博文中,博主主要對教授課程中所透露的現代開發熱點詞彙進行了總結和介紹。本文將分享自己對敏捷開發的認識,和實現敏捷開發思想的核心方法。

一、什麼是敏捷開發?

agiledevelopment

是一種以人為核心、迭代、循序漸進的開發方法。

1

、以人為核心vs 以文件為驅動

瀑布模型大家都不會陌生,其主要特點之一就是在瀑布模型開發過程中要編寫大量的文件,從需求界定到系統實現,每個開發環節,文件起著至關重要的作用;而敏捷開發的特點則是只寫必要文件,注重人與人、面對面的交流。

2

、迭代開發vs  傳統開發

敏捷一詞本就很精確的確定了運用敏捷思想開發的特點:短、快、準;迭代就是實現這個短快準的具體方式,將乙個周期長、複雜的任務細分,每個細顆粒任務可把控在短期內完成。一次迭代完成都可以產生乙個可交付的產品。

二、如何實踐敏捷開發?

前面提到敏捷是一種指導思想或開發方式,但是它沒有明確告訴我們採用什麼樣的流程進行開發,而scrum和xp就是敏捷開發的具體方式了,兩者的區別是,scrum偏重於過程,xp則偏重於實踐,但是實際中,兩者經常是結合一起使用。 一、

scrum

基本認識:

scrum

起源於橄欖球運動的乙個專業術語,表示「爭球」的動作;在敏捷中,把乙個開發流程的名字取名為scrum,主要寓意在於提現整個團隊的積極奮戰的開發狀態。

scrum

具體指整個系統開發的流程,而這個大流程又由多次迭代完成,一次迭代的過程稱之為乙個sprint.

產品負責人(product owner)——專案經理

主要負責確定產品的功能和達到要求的標準,指定軟體的發布日期和交付的內容,同時有權力接受或拒絕開發團隊的工作成果。

流程管理員(scrum master)——專案組長

主要負責整個scrum流程在專案中的順利實施和進行,以及清除擋在客戶和開發工作之間的溝通障礙,使得客戶可以直接驅動開發。

開發團隊(scrum team)——開發人員

主要負責軟體產品在scrum規定流程下進行開發工作,人數控制在5~10人左右,每個成員可能負責不同的技術方面,但要求每成員必須要有很強的自我管理能力,同時具有一定的表達能力;成員可以採用任何工作方式,只要能達到sprint的目標。

任務顆粒 描述

預期完成耗時

product

完整交付、已完成的產品

按照專案大小具體而定

product-backlog

按照需求優先順序排列產生的列表文件

story

product-backlog

中所劃分的每個需求為乙個story;完成乙個story為一次迭代

1——4周

sprint backlog

將story細化,形成sprint優先順序

sprint

story

細化形成的具體開發任務,還可進行再細化,sprint細化後任務控制在2天內完成

由story細化的程度決定,粒度小,完成時間短,粒度大,完成時間長

產品負責人首先將需求按照優先順序進行排列,產生乙個product backlog。作用類似於傳統開發中專案經理先確定需求文件。

有了productbacklog列表,我們需要通過sprint planning meeting(sprint計畫會議) 來從中挑選出乙個story作為本次迭代完成的目標,這個目標的時間週期是1~4個星期,然後把這個story進行細化,形成乙個sprint backlog;

sprint backlog

是開發人員的任務,每個成員根據sprintbacklog再細化成更小的任務(細到每個任務的工作量在2天內能完成);

在開發人員完成計畫會議上選出的sprint backlog過程中,需要進行daily scrum meeting(每日站立會議),每次會議控制在15分鐘左右,每個人都必須發言,並且要向所有成員當面匯報你昨天完成了什麼,並且向所有成員承諾你今天要完成什麼,同時遇到不能解決的問題也可以提出,每個人回答完成後,要走到看板前更新自己的sprint burn down(sprint燃盡圖);

當乙個story完成時,也就是一次迭代完成,我們要進行srpint review meeting(演示會議),也稱為評審會議,產品負責人和客戶都要參加,每乙個scrum team的成員都要向他們演示自己完成的軟體產品。

Scrum敏捷開發

只有實踐起來才能提出有針對性的改進建議 在這個框架中,整個開發過程由若干個短的迭代週期組成,乙個短的迭代週期稱為乙個sprint,每個sprint的建議長度是2到4周 網際網路產品研發可以使用1周的sprint 在scrum中,使用產品backlog來管理產品的需求,產品backlog是乙個按照商業...

敏捷開發(一)敏捷開發和Scrum

工作的軟體是首要 進度度量標準。敏捷過程 提倡可持續的開發速度。責任人 開發者和使用者應該能夠保持乙個長期的 恆定的開發速度。不斷地關注 優秀的技能和好的設計會增強敏捷能力 簡單 盡最大可能減少不必要的工作 是根本的。最好的構架 需求和設計出自與 自組織的團隊。每隔一定時間,團隊會在如何才能更有效地...

敏捷開發 談談敏捷開發之Scrum

最近一直在了解和學習敏捷開發的應用,主要學習的還是scrum。寫這篇文章也是為了能對這段時間的學習有個總結。在談scrum之前,我們可以先簡單了解下敏捷開發。維基百科是這樣解釋的,敏捷開發是一種從1990年代開始逐漸引起廣泛關注的一些新型軟體開發方法,是一種應對快速變化的需求的一種軟體開發能力。它們...