# V-model V-model は SDLC (Software Development Life Cycle) の一種。Waterfallの改良版とも言われている。V-model最も特徴的な構造は設計から検証と妥当性確認 (Verification and Validation) の仕組みです。各フレーズ(phrase)に対応のデザインとテストがある、それによりソフトウェアの信憑性が Waterfall より高くなってる。でも Waterfall と同じ、開発の最終段階までにプログラムは作動できない、ゆえに要求変更に対応し難い。 変形としてアジャイルも加えたV-modelもあります。具体的にどうやってアジャイルとV-modelの特性を保つのが疑問を持ちます。説明は[システム開発のV字モデルとは?発注者が知っておきたい基本を解説!](https://system-kanji.com/posts/v-model#h-2)で書いてあったがノーコメントにします。 ## V-modelの開発フレーズ ![](https://www.tutorialspoint.com/sdlc/images/sdlc_v_model.jpg) 上に行くと抽象的(abstract)になる、下に行くと具体的になる。 右は完成度が高い方、左は成度が低い方。 - 要求分析 (Requirement Analysis) - 要件定義 (System Design) - 基本設計 (High Level Design/Architecture Design) - 詳細設計 (Low Level Design/ModuleDesign) - コーデイング (Coding) - 単体テスト (Unit Testing) - 結合テスト/統合テスト (Integration Testing) - システムテスト/総合テスト (System Testing) - 受入テスト (Accpantance Testing) 各参考資料が分別の方法は違いますが、細かく分けてならこんな感じです。 ### 要求分析 (Requirement Analysis) 使用者の要求を分かる工程です。方法はたくさんあります。コンサルティング、プロトタイプ、アンケート調査等。 同時に受入テストの設計もここで書類で定義する。 各工程の参考は[システム開発のV字モデルとは?発注者が知っておきたい基本を解説!](https://system-kanji.com/posts/v-model#h-1)にご覧ください。 以下略。 ## V-modelの長所と短所 ### 長所 - フレーズごとに完成する、そして完成の定義が明白である。管理者が進歩を捗りやすい - シンプルや要求が明白なプロジェクトに向いている、要求変更が少ないこと。 - 分かりやすくて適用までのコストが少ない。 ### 短所 - 複雑と現在進行中のプロジェクトに向いていない。定義が難しいと変更があるから。 - フレーズの後半(テストのところ)に要求変更があった場合、変更しがたい。 - ソフトが完成前に運行できない。 --- ## 参考資料 - [SDLC - V-Model](https://www.tutorialspoint.com/sdlc/sdlc_v_model.htm) - [Difference Between Waterfall Model and V Model](https://www.differencebetween.com/difference-between-waterfall-model-and-vs-v-model/) - [システム開発のV字モデルとは?発注者が知っておきたい基本を解説!](https://system-kanji.com/posts/v-model)