SDLC - 快速應用開發模型



快速應用開發 (RAD) 模型基於原型和迭代開發,無需具體的規劃。軟體本身的編寫過程就包含了開發產品所需的規劃。

快速應用開發專注於透過研討會或焦點小組收集客戶需求,使用迭代概念讓客戶儘早測試原型,重用現有原型(元件),持續整合和快速交付。

什麼是 RAD?

快速應用開發是一種軟體開發方法,它使用最少的規劃來支援快速原型設計。原型是一個功能上等同於產品元件的工作模型。

在 RAD 模型中,功能模組並行開發為原型,並整合以建立完整的最終產品,從而加快產品交付。由於沒有詳細的預先規劃,因此更容易在開發過程中整合更改。

RAD 專案遵循迭代和增量模型,並擁有由開發人員、領域專家、客戶代表和其他 IT 資源組成的小型團隊,這些團隊逐步處理其元件或原型。

要使該模型成功,最重要的一點是確保開發的原型可重用。

RAD 模型設計

RAD 模型將分析、設計、構建和測試階段分配到一系列短暫的迭代開發週期中。

以下是 RAD 模型的各個階段:

業務建模

針對正在開發的產品設計業務模型,內容包括資訊流以及資訊在各個業務渠道之間的分配。進行完整的業務分析,以查詢業務的關鍵資訊,如何獲取資訊,如何以及何時處理資訊,以及哪些因素推動了資訊流的成功。

資料建模

審查和分析在業務建模階段收集的資訊,以形成對業務至關重要的資料集。識別和定義所有資料集的屬性。根據業務模型,詳細建立和定義這些資料物件之間的關係。

流程建模

將資料建模階段定義的資料物件集轉換為業務資訊流,以根據業務模型實現特定的業務目標。在此階段定義任何更改或增強資料物件集的流程模型。給出新增、刪除、檢索或修改資料物件的流程描述。

應用程式生成

使用自動化工具將流程和資料模型轉換為實際原型,從而構建實際系統並進行編碼。

測試和交付

在 RAD 模型中,總測試時間減少了,因為原型在每次迭代期間都獨立測試。但是,需要對所有元件之間的資料流和介面進行徹底測試,並實現完整的測試覆蓋率。由於大多數程式設計元件都已透過測試,因此可以降低出現任何重大問題的風險。

下圖詳細描述了 RAD 模型。

SDLC RAD Model

RAD 模型與傳統 SDLC

傳統的 SDLC 遵循嚴格的流程模型,在編碼開始之前高度重視需求分析和收集。它給客戶施加壓力,要求在專案開始之前簽署需求,而且客戶無法感受到產品的實際效果,因為很長時間內都沒有可用的工作版本。

客戶在看到軟體後可能需要進行一些更改。但是,更改過程非常嚴格,在傳統的 SDLC 中可能無法實現對產品進行重大更改。

RAD 模型專注於向客戶迭代和增量交付工作模型。這導致快速交付給客戶,並在產品的整個開發週期中實現客戶參與,從而降低了與實際使用者需求不符的風險。

RAD 模型 - 應用

可以將 RAD 模型成功應用於可以進行清晰模組化的專案。如果專案無法分解成模組,則 RAD 可能會失敗。

以下要點描述了可以使用 RAD 的典型場景:

  • 僅當系統可以模組化以增量方式交付時,才應使用 RAD。

  • 如果建模人員高度充足,則應使用它。

  • 僅當預算允許使用自動程式碼生成工具時,才應使用它。

  • 只有在有具備相關業務知識的領域專家的情況下,才應選擇 RAD SDLC 模型。

  • 應該在專案期間需求發生變化並且需要以 2-3 個月的短迭代向客戶展示工作原型的情況下使用。

RAD 模型 - 優點和缺點

RAD 模型由於元件的可重用性和並行開發,縮短了整體開發時間,從而實現了快速交付。只有在高技能工程師可用且客戶也致力於在給定的時間範圍內實現目標原型的情況下,RAD 才能良好執行。如果任何一方缺乏承諾,該模型都可能失敗。

RAD 模型的優點如下:

  • 可以適應不斷變化的需求。

  • 可以衡量進度。

  • 使用強大的 RAD 工具可以縮短迭代時間。

  • 在短時間內用較少的人員提高生產力。

  • 縮短開發時間。

  • 提高元件的可重用性。

  • 可以進行快速初步審查。

  • 鼓勵客戶反饋。

  • 從一開始就整合可以解決許多整合問題。

RAD 模型的缺點如下:

  • 依賴技術能力強的團隊成員來識別業務需求。

  • 只有可以模組化的系統才能使用 RAD 構建。

  • 需要高技能的開發人員/設計師。

  • 高度依賴建模技能。

  • 不適用於較便宜的專案,因為建模和自動程式碼生成的成本非常高。

  • 管理複雜性更高。

  • 適用於基於元件且可擴充套件的系統。

  • 需要使用者在整個生命週期中參與。

  • 適用於需要較短開發時間的專案。

廣告