Sdlc-waterfall-model
SDLC-ウォーターフォールモデル
ウォーターフォールモデルは、導入された最初のプロセスモデルでした。 また、*線形順次ライフサイクルモデル*とも呼ばれます。 理解して使用するのは非常に簡単です。 ウォーターフォールモデルでは、次のフェーズを開始する前に各フェーズを完了する必要があり、フェーズに重複はありません。
ウォーターフォールモデルは、ソフトウェア開発に使用された最も初期のSDLCアプローチです。
ウォーターフォールモデルは、線形の順次フローでソフトウェア開発プロセスを示しています。 つまり、開発プロセスのすべてのフェーズは、前のフェーズが完了した場合にのみ開始されます。 このウォーターフォールモデルでは、フェーズは重複しません。
ウォーターフォールモデル-デザイン
ウォーターフォールアプローチは、プロジェクトの成功を確実にするためにソフトウェアエンジニアリングで広く使用される最初のSDLCモデルでした。 「ウォーターフォール」アプローチでは、ソフトウェア開発のプロセス全体が別々のフェーズに分割されます。 このウォーターフォールモデルでは、通常、1つのフェーズの結果が次のフェーズの入力として順次機能します。
次の図は、ウォーターフォールモデルのさまざまなフェーズを表しています。
ウォーターフォールモデルのシーケンシャルフェーズは次のとおりです-
- 要件の収集と分析-開発されるシステムのすべての可能な要件は、このフェーズでキャプチャされ、要件仕様書に文書化されます。
- システム設計-第1フェーズの要件仕様がこのフェーズで研究され、システム設計が準備されます。 このシステム設計は、ハードウェアとシステムの要件を指定し、システム全体のアーキテクチャを定義するのに役立ちます。
- 実装-システム設計からの入力により、システムはまずユニットと呼ばれる小さなプログラムで開発され、次のフェーズで統合されます。 各ユニットは、その機能のために開発およびテストされます。これは、ユニットテストと呼ばれます。
- 統合とテスト-実装フェーズで開発されたすべてのユニットは、各ユニットのテスト後にシステムに統合されます。 統合後、システム全体の障害と障害がテストされます。
- システムの展開-機能テストと非機能テストが完了すると、製品は顧客環境に展開されるか、市場にリリースされます。
- メンテナンス-クライアント環境で発生するいくつかの問題があります。 これらの問題を修正するために、パッチがリリースされています。 また、製品を強化するために、いくつかのより良いバージョンがリリースされています。 顧客環境でこれらの変更を提供するためにメンテナンスが行われます。
これらのすべてのフェーズは相互にカスケード接続されており、進捗状況はフェーズを通じて着実に下に向かって流れるように見えます(滝のように)。 次のフェーズは、定義済みの目標セットが前のフェーズで達成され、サインオフされた後にのみ開始されるため、「ウォーターフォールモデル」という名前になります。 このモデルでは、フェーズは重複しません。
ウォーターフォールモデル-アプリケーション
開発されるソフトウェアはすべて異なり、内部および外部の要因に基づいて適切なSDLCアプローチに従う必要があります。 ウォーターフォールモデルの使用が最も適切な状況は次のとおりです-
- 要件は非常によく文書化され、明確で修正されています。
- 製品の定義は安定しています。
- 技術は理解されており、動的ではありません。
- あいまいな要件はありません。
- 製品をサポートするために必要な専門知識を備えた豊富なリソースを利用できます。
- プロジェクトは短いです。
ウォーターフォールモデル-利点
ウォーターフォール開発の利点は、部門化と管理が可能なことです。 開発の各段階の期限を設定してスケジュールを設定し、製品を1つずつ開発プロセスモデルフェーズに進めることができます。
開発は、概念から設計、実装、テスト、インストール、トラブルシューティングを経て、運用と保守に至ります。 開発の各フェーズは厳密な順序で進行します。
ウォーターフォールモデルの主な利点のいくつかは次のとおりです-
- シンプルで理解しやすく使いやすい
- モデルの剛性により管理が簡単です。 各フェーズには、特定の成果物とレビュープロセスがあります。
- フェーズは1つずつ処理されて完了します。
- 要件が十分に理解されている小規模プロジェクトに適しています。
- 明確に定義されたステージ。
- よく理解されたマイルストーン。
- タスクの整理が簡単。
- プロセスと結果は十分に文書化されています。
ウォーターフォールモデル-欠点
ウォーターフォール開発の欠点は、多くの反映または修正ができないことです。 アプリケーションがテスト段階に入ると、概念段階で十分に文書化されていない、または考えられていないものに戻って変更することは非常に困難です。
ウォーターフォールモデルの主な欠点は次のとおりです-
- ライフサイクルの後半まで動作するソフトウェアは作成されません。
- 大量のリスクと不確実性。
- 複雑でオブジェクト指向のプロジェクトには適したモデルではありません。
- 長く進行中のプロジェクトの貧弱なモデル。
- 要件が変更されるリスクが中程度から高いプロジェクトには適していません。 そのため、このプロセスモデルではリスクと不確実性が高くなります。
- 段階内で進捗を測定することは困難です。
- 変化する要件に対応できません。
- ライフサイクル中にスコープを調整すると、プロジェクトが終了する可能性があります。
- 統合は「ビッグバン」として行われます。 最後に、技術的またはビジネス上のボトルネックや課題を早期に特定することはできません。