敏捷軟體開發方法 scrum

2022-05-04 23:24:07 字數 1886 閱讀 2886

這學期的軟體工程課,老師一開始就談到了乙個詞——敏捷開發。下面來詳細談一下敏捷開發。

就老師課上說講解的內容,首先說一下敏捷軟體開發的核心價值觀,它包括承諾(commitment)、專注(focuse)、公開(openness)、敬重(respect)、勇氣(courage)。

scrum的框架,它包括三個角色,四個儀式,三個物件。

(一)敏捷開發的起源

敏捷開發是一種從2023年代開始逐漸引起廣泛關注的一些新型軟體開發方法,是一種應對快速變化的需求的一種軟體開發能力。它們的具體名稱、理念、過程、術語都不盡相同,相對於"非敏捷",更強調程式設計師團隊與業務專家之間的緊密協作、面對面的溝通、頻繁交付新的軟體版本、緊湊而自我組織型的團隊、能夠很好地適應需求變化的**編寫和團隊組織方法,也更注重做為軟體開發中人的作用。

(二)敏捷軟體開發的原則

對我們而言,最重要的是通過盡早和不斷交付有價值的軟體滿足客戶需要。我們歡迎需求的變化,即使在開發後期。敏捷過程能夠駕馭變化,保持客戶的競爭優勢。經常交付可以工作的軟體,從幾星期到幾個月,時間尺度越短越好。業務人員和開發者應該在整個專案過程中始終朝夕在一起工作。圍繞鬥志高昂的人進行軟體開發,給開發者提供適宜的環境,滿足他們的需要,並相信他們能夠完成任務。在開發小組中最有效率也最有效果的資訊傳達方式是面對面的交談。可以工作的軟體是進度的主要度量標準。敏捷過程提倡可持續開發。出資人、開發人員和使用者應該總是維持不變的節奏。對卓越技術與良好設計的不斷追求將有助於提高敏捷性。簡單--盡可能減少工作量的藝術至關重要。最好的架構、需求和設計都源自自我組織的團隊。每隔一定時間,團隊都要總結如何更有效率,然後相應地調整自己的行為。

(三)敏捷軟體開發與其他方法的乙個對比

敏捷方法有時候被誤認為是無計畫性和紀律性的方法,實際上更確切的說法是敏捷方法強調適應性而非預見性。

適應性的方法集中在快速適應現實的變化。當專案的需求起了變化,團隊應該迅速適應。這個團隊可能很難確切描述未來將會如何變化.

對比迭代方法

相比迭代式開發兩者都強調在較短的開發周期提交軟體,敏捷方法的週期可能更短,並且更加強調隊伍中的高度協作。

對比瀑布式開發

兩者沒有很多的共同點,瀑布模型式是最典型的預見性的方法,嚴格遵循預先計畫的需求、分析、設計、編碼、測試的步驟順序進行。步驟成果作為衡量進度的方法,例如需求規格,設計文件,測試計畫和**審閱等等。

瀑布式的主要的問題是它的嚴格分級導致的自由度降低,專案早期即作出承諾導致對後期需求的變化難以調整,代價高昂。瀑布式方法在需求不明並且在專案進行過程中可能變化的情況下基本是不可行的。

相對來講,敏捷方法則在幾周或者幾個月的時間內完成相對較小的功能,強調的是能將盡早將盡量小的可用的功能交付使用,並在整個專案週期中持續改善和增強。

(四)敏捷軟體開發的實用性

在敏捷方法其獨特之處以外,他和其他的方法也有很多共同之處,比如迭代開發,關注互動溝通,減少中介過程的無謂資源消耗。通常可以在以下方面衡量敏捷方法的適用性:從產品角度看,敏捷方法適用於需求萌動並且快速改變的情況,如系統有比較高的關鍵性、可靠性、安全性方面的要求,則可能不完全適合;從組織結構的角度看,組織結構的文化、人員、溝通則決定了敏捷方法是否適用。跟這些相關聯的關鍵成功因素有:

組織文化必須支援談判人員彼此信任,人少但是精幹,開發人員所作決定得到認可,環境設施滿足成員間快速溝通之需,要最重要的因素恐怕是專案的規模。規模增長,面對面的溝通就愈加困難,因此敏捷方法更適用於較小的隊伍,20、40人或者更少。大規模的敏捷軟體開發尚處於積極研究的領域。

另外的問題是專案初期的大量假定或者快速收集需求可能導致專案走入誤區,特別是客戶對其自身需要毫無概念的情況下。與之類似,人之天性很容易造成某個人成為主導並將專案目標和設計引入錯誤方向的境況。開發者經常能把不恰當的方案授予客戶,並且直到最後發現問題前都能獲得客戶認同。雖然理論上快速互動的過程可以限制這些錯誤的發生,但前提是有效的負反饋,否則錯誤會迅速膨脹。

敏捷軟體開發模型 SCRUM

一 什麼是scrum?scrum 英式橄欖球爭球隊 軟體開發模型是敏捷開發的一種,在最近的一兩年內逐漸流行起來。scrum的基本假設是 開 發軟體就像開發新產品,無法一開始就能定義軟體產品最終的規程,過程中需要研發 創意 嘗試錯誤,所以沒有一種固定的流程可以保證專案成功。scrum 將軟體開發團隊比...

敏捷軟體開發模型 SCRUM

標籤 分類 softwareengineering 一 什麼是scrum?scrum 英式橄欖球爭球隊 軟體開發模型是敏捷開發的一種,在最近的一兩年內逐漸流行起來。scrum的基本假設是 開發軟體就像開發新產品,無法一開始就能定義軟體產品最終的規程,過程中需要研發 創意 嘗試錯誤,所以沒有一種固定的...

敏捷軟體開發模型 SCRUM

一 什麼是scrum?scrum 英式橄欖球爭球隊 軟體開發模型是敏捷開發的一種,在最近的一兩年內逐漸流行起來。scrum的基本假設是 開發軟體就像開發新產品,無法一開始就能定義軟體產品最終的規程,過程中需要研發 創意 嘗試錯誤,所以沒有一種固定的流程可以保證專案成功。scrum 將軟體開發團隊比擬...