web-dev-qa-db-ja.com

誰かがVモデルのプロセスを説明できますか?ウォーターフォールモデルとはなぜ違うのですか?

Vモデルは、ウォーターフォールの下半分を上に曲げてVを形成した単なるウォーターフォールモデルのようです。新しいものを追加する方法はわかりません。

図からも流れがわかりません。すべての方向を指す矢印があり、何が最初に来るのか理解できません。左上から下中央に向かってVをたどって、右上に戻りますか?または、アイテムを低くする前に、すべてを高くしてVを下げますか?

インターネットはこのモデルの十分な説明に欠けています。誰かが本当のStackExchange形式でそれを説明できればすばらしいでしょう:)

V Model

19
CodyBugstein

Vモデルはウォーターフォールモデルを拡張したものであるため、大幅に異なるものではありません。

基本的に、ウォーターフォールモデルと同様に、Vモデルを左から右へ従います。ウォーターフォールでは、要件、設計、実装、検証、そして最後にメンテナンスを行います。同様に、Vモデルでは、要件、設計、実装、検証、保守を行います。どちらの場合も同じ手順です。

Waterfallとの主な違いは、Waterfallの表示方法とテストの重要性です。

フローをVシェイプとして表すと、コーディングの前のすべて(要件、アーキテクチャ、設計)とコーディングのあとのすべて(本質的にはテスト)の違いがわかります。 テストはウォーターフォールの5つのステップの1つにすぎませんが、Vモデルのプロセスの実質的に半分のように見えます。

あなたの質問の図はもう少し複雑です。それが示すことは、たとえば、システム設計ステップは、ウォーターフォールモデルが示唆するようなシステム設計ドキュメントだけでなく、後でシステムテストの記述に役立つシステムテスト設計にもつながるということです。図はテストをさらに強調しています。最後に、システムテスト設計を行うと、アーキテクチャ設計に役立ちます(システムテスト設計に関係なく、アーキテクチャ設計を行うのは面倒です)。


インターネット上で他のどのような説明を検索しても、引用は避けられません 次のBhakti Satalkarによる記事

ウォーターフォールモデルとVモデルの主な違いは、ウォーターフォールモデルでは、テストアクティビティが開発アクティビティの終了後に実行されることです。一方、Vモデルでは、テストアクティビティは最初のステージ自体から始まります。つまり、ウォーターフォールモデルは連続プロセスですが、Vモデルは同時プロセスです。ウォーターフォールモデルを使用して作成されたソフトウェアと比較して、Vモデルを使用して作成されたソフトウェアの欠陥の数は少ないです。これは、Vモデルで同時に実行されるテストアクティビティがあるためです。したがって、ユーザーの要件が固定されている場合、ウォーターフォールモデルが使用されます。ユーザーの要件が不確かで変化し続ける場合は、Vモデルの方が適しています。

この説明は誤解を招きやすいです。これは、見積もりの​​「Vモデル」をアジャイルメソッドで置き換えた場合にのみ当てはまります。

記事の状態とは異なり、Vモデルでは、テストはコーディングの後に行われます。たとえば、 Wikipedia を参照してください。

vモデルの一般的な実用的な批判は、開発の終わりにテストがタイトなウィンドウに圧迫されることになる初期段階がオーバーランしたが、実装日は固定されたままであるということです。

Vモデルでは、システムテスト設計は、製品の実装が完了するまで待たずにシステム設計に従いますが、これは、テスト自体がコーディングの前に実行されることを意味しません。著者は、Vモデルを、エクストリームプログラミング(XP)のテスト駆動開発(TDD)のようなアジャイルアプローチと混同しています。

17