敏捷開發系列之旅 第三站(認識FDD特徵驅動開發)
阿新 • • 發佈:2018-12-24
上篇文章中,我們探討了什麼是XP極限程式設計,以及極限程式設計的管理思想、核心價值觀等等。在敏捷開發之旅的第三站,我想要和大家一起分享FDD特徵驅動開發方法。
特徵驅動開發——Feature Driven Development
還是老規矩,討論之前,我們先了解一下什麼是Feature?什麼是FDD?
FDD方法包括5個過程,其中的按照功能設計和構建是反覆的迭代過程。
Feature
在FDD中,Feature(特徵)是一個基本的開發單位,是(FDD)專案中的一個增量,是指使用者眼中最小的有用的功能,可以在很短時間內實現(一般在兩週之內)。- 特徵是小的
- 特徵是具有客戶價值的
FDD
特徵驅動開發(FDD),是敏捷開發方法中的一種,他來源與新加坡的一個大型軟體開發專案,由著名軟體專家Jeff de Luca 、Eric Lefebvre、Peter Coad共同提出的。它強調特徵驅動,快速迭代,即能保證快速開發,又能保證適當文件和質量。 他提出的每個功能開發時間不超過兩週,為每個用例user case限定了粒度,具有良好可執行性,也可以對專案的開發程序進行精確及時地監控。他抓住了軟體開發的核心問題領域,即正確和及時地構造軟體。 FDD還打破了傳統的將領域和業務專家/分析師與設計者和實現者隔離開來的壁壘。分析師被從抽象的工作中解脫出來,直接參與到開發人員和使用者所從事的系統構造工作中。開發過程
- 開發整體模型
- 構建功能列表
- 計劃功能開發
- 按照功能設計
- 按照功能構建
最佳實踐
- 領域物件建模
- 按照特徵開發
- 類(程式碼)擁有權
- 特徵小組
- 審查
- 定期構建
- 配置管理
- 可視性進度報告
與XP的比較
- 隱寓和模型
- 開發團隊
- 程式碼擁有權
- 測試
- 專案追蹤