システム開発において活用されるV字モデルは各設計・開発工程に対してテスト工程をリンクさせて確認、検証の効率をあげることを実現したモデルです。それぞれどの工程がリンクし、どのような確認、検証作業が実施されるのでしょうか?この記事ではV字モデルを理解するために特徴やメリットからW字モデルとの違いなどを簡単に解説していきます。
V字モデルとは主にウォーターフォールモデルに則ったシステム開発において設計・開発工程とテスト工程をリンクさせて各工程の確認、検証作業を効率的に実施するために用いられる手法です。ウォーターフォールモデルの上位互換モデルとして誕生しました。下記の図の通り、ウォーターフォールモデルの一連の流れをV字型に表したものです。
英語表記は“V-Model”
となっております。
※英語で表現される機会もあるため参考までに
またV字モデルについて、“Vモデル”と表現する場合もあります。
システム開発の基本工程について解説された記事はこちら>>
テスト工程全体について解説された記事はこちら>>
V字モデルとウォーターフォールモデルの関係は一言で言うなれば『ウォーターフォールモデルの進化版』と言えるでしょう。ウォーターフォールモデルのその語源は上流工程から下流工程にかけて水が滝のように流れることをイメージして名付けられたものです。各工程の役割を明確化し、一つの工程を完璧に仕上げることで次工程に進みます。そして基本的に後戻りすることは許されません。V字モデルでは従来のウォーターフォールモデルの考えに設計工程とテスト工程をリンクさせる考えを加えたことで確認、検証の精度を高めたことから品質の高い開発モデルであると評価されたウォーターフォールモデルの上位互換(進化版)として活用されているのです。
ウォーターフォールモデルについて解説された記事はこちら>>
V字モデルをそれぞれ設計工程、テスト工程でリンクする関係に分解して見ていきましょう。
要件定義の際にお客様の要望をヒアリングし、実装すべき機能や満たすべき性能などを調査、分析した上で業務要件とシステム要件を記した要件定義書の作成を行います。その要件定義書の内容が実現されているかを確認、検証するのがシステムテストの役割です。
要件定義の一般的な取り組みや必要な要素について解説された記事はこちら>>
システムテストの一般的な取り組みや必要な要素について解説された記事はこちら>>
基本設計の際に画面や帳票などのユーザーインターフェースを設計し基本設計書の作成を行います。その基本設計書の内容が実現されているかを確認、検証するのが結合テストの役割です。
基本設計の一般的な取り組みや必要な要素について解説された記事はこちら>>
結合テストの一般的な取り組みや必要な要素について解説された記事はこちら>>
詳細設計の際に基本設計にて浮き彫りになった必要な機能を実現するために詳細設計書の作成を行います。その詳細設計書の内容が実現されているかを確認、検証するのが単体テストの役割です。
詳細設計の一般的な取り組みや必要な要素について解説された記事はこちら>>
単体テストの一般的な取り組みや必要な要素について解説された記事はこちら>>
プログラミング(製造)工程では詳細設計書の内容を元にお客様の要望する機能をシステム上で正しく動くように実現するためプログラミング作業を実施します。
V字モデルを活用することによるメリットを見ていきましょう。
各工程同士(設計・開発工程とテスト工程)がしっかりとリンクしているため、確認、検証すべき内容が明確になっております。設計工程の際に、テスト工程ではどのようなテストケースが必要で、どういったシステムの動作を確認すべきか?を整理して設計書の作成を行っているためテスト工程の立ち上がりも早いとされています。
トップダウン式に段階を踏んで工程を進めていくウォーターフォールモデルの特徴でもありますが、順に従って工程を進めていくと必ず最終地点に辿り着けるというメリットがあります。また進捗を確認していく上でもマイルストーンが明確になっているため各地点で迷走してしまうようなこと無くプロジェクトを進められます。
各工程の確認、検証作業がしっかりと役割分担をされて明確になっている分、プロジェクトの進行が円滑になります。これは上述の通り、”検証すべきテスト内容が明確”な上に”最終地点が明確に設定されている”ことが組み合わさることで実現されたメリットでしょう。また役割分担が明確なことから適材適所に必要なスキルを持ち合わせたプロフェッショナルをアサイン出来ることもプロジェクトの進行を円滑に進められるポイントの一つです。
W字モデルはV字モデルの弱点を改善した上位互換モデルと言われております。
V字モデルとW字モデルの違いを説明するにあたって、まずはW字モデルの内容についてご覧ください。
V字モデルのとの違いを見ていきましょう。
上述の通り、W字モデルでは設計・開発工程とテスト工程をリンクさせてこれらの工程を下記の図のように同時並行で作業を進めていくのがV字モデルと違う特徴の一つです。V字モデルの工程を一つ一つ進めていく手法との違いは一目瞭然ですね。またこれによってV字モデルの際に弱点とされていた、上流工程にて矛盾点や致命的な欠陥があった際のカバーリングが行いやすくなりました。
初期工程からテストの実施を各工程同時並行におこなうため、上記図(W字モデルを表す図)における通常のテスト工程に進む際には不具合の発生頻度は必然的に減少します。そのため実質的に手戻りが少なくなります。これはテストの精度を高めてシステムの品質を向上させるだけでなくコストカットやテスト工程の負担の軽減に繋がっております。
初期工程からからテストの実施を行うW字モデルでは他の開発モデルと違い上流工程からテストエンジニアが確認、検証を行います。テストエンジニアにとって開発初期段階から仕様の把握が出来るため、通常のテスト工程の際に効率良く作業に望むことが出来ます。
またエンジニア業界でのキャリアにおいて上流工程に携われることのメリットも十分にあると言えるでしょう。
V字モデルを理解するために一般的な取り組みに必要な要素を紹介させて頂きました。
V字モデルを一言でおさらいすると『設計工程とテスト工程をリンクさせて確認、検証作業を効率化させる』ことです。またウォーターフォールモデルの上位互換バージョンでもあります。 検証すべきテスト内容が明確化されプロジェクトの進行が円滑になるこのモデルはこれからも重宝されていくことでしょう。