Sdlc-agile-model

提供:Dev Guides
移動先:案内検索

SDLC-アジャイルモデル

アジャイルSDLCモデルは、反復および増分プロセスモデルの組み合わせであり、動作中のソフトウェア製品を迅速に提供することにより、プロセスの適応性と顧客満足に焦点を当てています。 アジャイルメソッドは、製品を小さなインクリメンタルビルドに分割します。 これらのビルドは反復で提供されます。 通常、各反復は約1〜3週間続きます。 すべての反復には、次のようなさまざまな分野で同時に機能するクロスファンクショナルチームが含まれます-

  • 計画中
  • 要件分析
  • 設計
  • コーディング
  • ユニットテストと
  • 受け入れ試験。

反復の最後に、動作中の製品が顧客と重要な利害関係者に表示されます。

アジャイルとは何ですか?

アジャイルモデルは、すべてのプロジェクトを異なる方法で処理する必要があり、既存の方法をプロジェクト要件に最適に調整する必要があると考えています。 アジャイルでは、リリースに特定の機能を提供するために、タスクがタイムボックス(小さなタイムフレーム)に分割されます。

反復的なアプローチが取られ、各反復後に機能するソフトウェアビルドが提供されます。 各ビルドは、機能の面でインクリメンタルです。最終ビルドには、顧客が必要とするすべての機能が含まれています。

これはアジャイルモデルの図解です-

SDLCアジャイルモデル

アジャイル思考プロセスは、ソフトウェア開発の初期段階で開始され、その柔軟性と適応性により、時間とともに普及し始めました。

最も一般的なアジャイル手法には、Rational Unified Process(1994)、Scrum(1995)、Crystal Clear、Extreme Programming(1996)、Adaptive Software Development、Feature Driven Development、Dynamic Systems Development Method(DSDM)(1995)などがあります。 2001年にアジャイルマニフェストが公開された後、これらは*アジャイル方法論*と総称されるようになりました。

以下はアジャイルマニフェストの原則です-

  • 個人と相互作用-アジャイル開発では、自己組織化と動機付けが重要であり、コロケーションやペアプログラミングなどの相互作用も重要です。
  • ワーキングソフトウェア-デモワーキングソフトウェアは、単にドキュメントに依存するのではなく、要件を理解するための顧客とのコミュニケーションの最良の手段と見なされます。
  • 顧客コラボレーション-さまざまな要因によりプロジェクトの最初に要件を完全に収集できないため、適切な製品要件を取得するには、継続的な顧客との対話が非常に重要です。
  • 変化への対応-アジャイル開発は、変化への迅速な対応と継続的な開発に焦点を当てています。

アジャイルと従来のSDLCモデル

アジャイルは*適応型ソフトウェア開発手法*に基づいていますが、ウォーターフォールモデルのような従来のSDLCモデルは予測的アプローチに基づいています。 従来のSDLCモデルの予測チームは通常、詳細な計画を立てて作業し、今後数か月または製品ライフサイクル中に提供される正確なタスクと機能の完全な予測を行います。

予測方法は、サイクルの最初に行われる*要件分析と計画*に完全に依存します。 組み込まれるすべての変更は、厳密な変更管理と優先順位付けを通過します。

アジャイルは、*詳細な計画がなく、どの機能を開発する必要があるかに関してのみ将来のタスクを明確にする*適応アプローチ*を使用します。 機能駆動型の開発があり、チームは変化する製品要件に動的に適応します。 製品は、リリースの繰り返しを通じて非常に頻繁にテストされ、将来の重大な障害のリスクを最小限に抑えます。

  • カスタマーインタラクション*はこのアジャイル手法のバックボーンであり、最小限のドキュメントでのオープンなコミュニケーションがアジャイル開発環境の典型的な機能です。 アジャイルチームは互いに緊密に連携して作業し、ほとんどの場合、同じ地理的場所に配置されます。

アジャイルモデル-長所と短所

アジャイル手法は、最近ソフトウェアの世界で広く受け入れられています。 ただし、この方法は必ずしもすべての製品に適しているとは限りません。 アジャイルモデルの長所と短所を次に示します。

アジャイルモデルの利点は次のとおりです-

  • ソフトウェア開発への非常に現実的なアプローチです。
  • チームワークとクロストレーニングを促進します。
  • 機能を迅速に開発して実証することができます。
  • リソース要件は最小限です。
  • 固定要件または変化する要件に適しています
  • 初期の部分作業ソリューションを提供します。
  • 着実に変化する環境に適したモデル。
  • 最小限のルール、簡単に使用できるドキュメント。
  • 計画された全体的なコンテキスト内で同時開発と配信を可能にします。
  • 計画はほとんど、またはまったく必要ありません。
  • 管理が簡単。
  • 開発者に柔軟性を与えます。

アジャイルモデルの欠点は次のとおりです-

  • 複雑な依存関係の処理には適していません。
  • 持続可能性、保守性、および拡張性のリスクが増加します。
  • 全体的な計画、アジャイルリーダー、アジャイルPMプラクティスは必須であり、それなしでは機能しません。
  • 厳密な配信管理により、配信範囲、配信される機能、および期限に合わせた調整が決まります。
  • 顧客とのやり取りに大きく依存しているため、顧客が明確でない場合、チームは間違った方向に進む可能性があります。
  • 最小限のドキュメントが生成されるため、非常に高い個人依存性があります。
  • ドキュメントの不足により、新しいチームメンバーへの技術の移転は非常に困難な場合があります。