敏捷資料科學 - 方法論概念



在本章中,我們將重點關注稱為“敏捷”的軟體開發生命週期概念。敏捷軟體開發方法有助於透過短迭代(1 到 4 周)的增量會話構建軟體,以便開發與不斷變化的業務需求保持一致。

有 12 條原則詳細描述了敏捷方法 -

客戶滿意度

透過儘早並持續交付有價值的軟體,將客戶的關注重點放在需求上,這是最高優先順序。

歡迎變化

在軟體開發過程中,變化是可以接受的。敏捷流程旨在運作以匹配客戶的競爭優勢。

交付

在 1 到 4 周的時間內向客戶交付工作軟體。

協作

業務分析師、質量分析師和開發人員必須在專案的整個生命週期中共同工作。

激勵

專案應該由一群有積極性的個人設計。它提供了一個支援團隊成員的環境。

面對面交流

面對面交流是向開發團隊傳送資訊以及團隊內部發送資訊的最高效和最有效的方法。

衡量進度

衡量進度是幫助定義專案和軟體開發進度的關鍵。

保持恆定速度

敏捷流程側重於可持續開發。業務、開發人員和使用者應該能夠與專案保持恆定的速度。

監控

必須持續關注技術卓越和良好設計,以增強敏捷功能。

簡潔

敏捷流程使一切保持簡單,並使用簡單的術語來衡量未完成的工作。

自我組織團隊

敏捷團隊應該是自我組織的,並且應該獨立於最佳架構;需求和設計來自自我組織的團隊。

審查工作

定期審查工作非常重要,以便團隊能夠反思工作進展情況。及時審查模組將提高績效。

每日站會

每日站會是指團隊成員之間的每日狀態會議。它提供與軟體開發相關的更新。它還涉及解決專案開發中的障礙。

每日站會是一項強制性實踐,無論敏捷團隊如何建立,無論其辦公地點如何。

每日站會的特徵列表如下 -

  • 每日站會的時間大約應為 15 分鐘。它不應延長更長時間。

  • 站會應包括關於狀態更新的討論。

  • 此會議的參與者通常站著,目的是快速結束會議。

使用者故事

故事通常是一個需求,它以簡單的語言用幾句話來表達,並且應該在一個迭代中完成。使用者故事應包括以下特徵 -

  • 所有相關程式碼都應具有相關的簽入。

  • 指定迭代的單元測試用例。

  • 所有驗收測試用例都應已定義。

  • 產品負責人定義故事時的認可。

Agile Scrum Model

什麼是 Scrum?

Scrum 可以被認為是敏捷方法的一個子集。它是一個輕量級流程,包括以下功能 -

  • 它是一個流程框架,包括一組需要按一致順序遵循的實踐。Scrum 的最佳示例是遵循迭代或衝刺。

  • 它是一個“輕量級”流程,這意味著流程儘可能地小,以最大化在指定持續時間內產生的生產力輸出。

Scrum 流程以其與其他傳統敏捷方法相比的獨特流程而聞名。它分為以下三個類別 -

  • 角色

  • 工件

  • 時間盒

角色定義團隊成員及其在整個過程中包含的角色。Scrum 團隊由以下三個角色組成 -

  • Scrum Master

  • 產品負責人

  • 團隊

Scrum 工件提供了每個成員都應該瞭解的關鍵資訊。資訊包括產品細節、計劃的活動和已完成的活動。Scrum 框架中定義的工件如下 -

  • 產品待辦事項

  • 衝刺待辦事項

  • 燃盡圖

  • 增量

時間盒是為每個迭代計劃的使用者故事。這些使用者故事有助於描述構成 Scrum 工件一部分的產品功能。產品待辦事項是使用者故事的列表。這些使用者故事按優先順序排序並轉發到使用者會議,以決定應該採用哪個使用者故事。

為什麼需要 Scrum Master?

Scrum Master 與團隊的每個成員互動。現在讓我們看看 Scrum Master 與其他團隊和資源的互動。

產品負責人

Scrum Master 以以下方式與產品負責人互動 -

  • 尋找實現使用者故事的有效產品待辦事項並對其進行管理的技術。

  • 幫助團隊理解清晰簡潔的產品待辦事項的需求。

  • 具有特定環境的產品規劃。

  • 確保產品負責人知道如何提高產品的價值。

  • 根據需要促進 Scrum 活動。

Scrum 團隊

Scrum Master 以多種方式與團隊互動 -

  • 指導組織採用 Scrum。

  • 將 Scrum 實施計劃到特定組織。

  • 幫助員工和利益相關者瞭解產品開發的需求和階段。

  • 與其他團隊的 Scrum Master 合作,提高指定團隊 Scrum 應用的有效性。

組織

Scrum Master 以多種方式與組織互動。下面列舉了一些 -

  • 指導和 Scrum 團隊與自我組織互動,幷包括跨功能特性。

  • 在 Scrum 尚未完全採用或未被接受的領域指導組織和團隊。

Scrum 的好處

Scrum 幫助客戶、團隊成員和利益相關者協作。它包括時間盒方法和來自產品負責人的持續反饋,確保產品處於工作狀態。Scrum 為專案的不同角色提供好處。

客戶

衝刺或迭代被認為是較短的持續時間,並且使用者故事是根據優先順序設計的,並在衝刺計劃中被採用。它確保在每次衝刺交付中都滿足客戶需求。如果沒有,則記錄需求,並將其計劃並納入衝刺。

組織

組織在 Scrum 和 Scrum Master 的幫助下,可以專注於開發使用者故事所需的努力,從而減少工作量,並避免任何返工。這也有助於保持開發團隊的效率提高和客戶滿意度。這種方法還有助於增加市場潛力。

產品經理

產品經理的主要責任是確保產品的質量得到維護。在 Scrum Master 的幫助下,可以輕鬆地促進工作、收集快速響應並在發生任何變化時吸收變化。產品經理還驗證在每個衝刺中設計的產品是否符合客戶需求。

開發團隊

透過時間盒的特性並將衝刺保持在較短的時間內,開發團隊變得熱情,希望看到工作得到反映並正確交付。在每次迭代或我們稱之為“衝刺”之後,工作產品增量都會提升一個級別。為每個衝刺設計的使用者故事成為客戶優先事項,為迭代增加更多價值。

結論

Scrum 是一個高效的框架,您可以在其中透過團隊合作開發軟體。它完全基於敏捷原則設計。Scrum Master 始終以各種方式幫助和配合 Scrum 團隊。他就像一位私人教練,幫助您堅持既定計劃並按照計劃執行所有活動。Scrum Master 的許可權絕不應超出流程範圍。他/她應該有能力處理各種情況。

廣告