システム開発のV字モデルとは?発注者が知っておきたい基本を解説【2024年最新版】

システム開発のV字モデルとは?発注者が知っておきたい基本を解説!

システム開発の現場でよく使われる言葉「V字モデル」とはなにか?プロジェクトに参画した経験のある企業・店舗担当者でも、意外に理解している方は少ないかもしれません。

しかし「V字モデル」は、プロジェクトの成果物であるプログラムの品質を担保し、システム開発を成功に導く重要なマネジメント手法のひとつ。担当者としてシステム開発プロジェクトを成功させるためにも、V字モデルとはなにか?理解しておくことが重要です。

そこで本記事では、V字モデルを採用することで得られる品質面のメリットを含め、システム開発担当者が知っておきたいV字モデルの基本を徹底解説!開発モデルごとに異なる、担当者の携わり方も紹介します。

※システム開発の依頼先を探している方はシステム幹事にご相談ください。予算や目的から最適な開発会社を選定させていただきます。相談料などは一切かかりません。

【無料】おすすめのシステム開発会社を紹介してもらう

目次
  1. 1. システム開発で採用されるV字モデルとはなにか
    1. 1-1. 開発の工程とテストの相関をVの字で表したもの
    2. 1-2. V字モデルのメリット
  2. 2. システム開発のV字モデルの工程
    1. 2-1. 要求定義
    2. 2-2. 要件定義
    3. 2-3. 基本設計
    4. 2-4. 詳細設計
  3. 3. アジャイル型開発にV字モデルは採用できる?
    1. 3-1. アジャイルのV字モデルではユーザーの参加が必須
  4. 4. V字モデルの進化型であるW字モデル
    1. 4-1. W字モデルに対応できるシステム開発会社は多くない
  5. 5. システム開発におけるV字モデルまとめ

システム開発で採用されるV字モデルとはなにか

開発の工程とテストの相関をVの字で表したもの

V字モデル

V字モデルとは、システム開発における開発の工程と、そのテストの相関をVの字で表したものです。V字の左側に開発工程を上から順番に並べ、V字の右側に、開発工程に対応したテストを下から上に並べます。システム開発では様々なテストが行われますが、V字で表すことで、どの作業に対してどのテストが行われるか分かりやすくなります

例えばウォーターフォール型と呼ばれる開発は下図のように、システム開発を順番通りに進めていく手法です。

ウォーターフォール型

ですが、この流れだけを見ると基本設計のテストはどれに当たるのかが分かりません。そこでV字モデルを用いることで、どの作業に対してどんなテストをするのかが分かりやすく、品質や進捗が管理しやすくなります。

・要件定義の内容を総合テストで確認
・基本設計の内容を結合テストで確認
・詳細設計の内容を単体テストで確認

各工程でどんな作業やテストをするかは後ほど詳しく説明します。ここではウォーターフォールの開発をより分かりやすく表したものがV字モデルと考えてください。

ウォーターフォール型の開発の詳細は下記記事をご参照ください。
関連記事ウォーターフォール型システム開発とは?開発工程・メリットを解説!

システム開発の品質管理についてより詳しく知りたい方は、以下の記事も参考にしてください。
関連記事システム開発における品質管理とは?プロジェクトの成否を左右する重要性を解説!

V字モデルのメリット

V字モデルのメリットは、それぞれのテストごとに確認・検証すべき項目が明らかなため、テストを合理的に実施できることです。

例えば、結合テストは「基本設計通りにプログラムが動作するか」を検証し、「入力したデータに対して正しい値が返されるか?」「モジュール同士を結合した際にデータ連携ができているか?」などが確認されます。

そして次の段階の総合テストへ進んでから、性能・負荷耐性などの非機能要件の確認・チェックが行われます。

このように、開発ステップに応じてテストを細分化することで合理的なテストを実施できるのがV字モデルの特徴。

逆に、曖昧なままテストを行うと、不具合の原因がど作業で起きたのかなどのリサーチに時間がかかり、修正に時間がかかり、開発全体が遅れてしまう可能性があります。

【無料】システム開発の依頼について相談する

システム開発のV字モデルの工程

要求定義

要求定義


もっとも上流の開発工程となる「要求定義」では、ユーザーテストとも呼ばれる「受け入れテスト」の設計が実施されます。

要求定義とは、開発するシステムに求める依頼側の要求・機能をまとめたもの。

要求定義

どんな課題を抱えて、どうすれば解決できるのかを言語化していきます。

・現状の課題(何に困っているのか)
・理想の状態(どうなれば解決するのか)
・システム機能(どんな機能があれば良いのか)

例えば「○名が同時にアクセスして××を1秒以内に並列処理できるシステム」「○○ボタンをクリックすると、××と△△を処理できる機能」といった概要を決定します。

要求定義に対応する受け入れテストとは、最終的に納品されるシステム(プログラム)が、要求定義を満たしているのか?依頼側のユーザーが確認するためのテストです。

開発工程としての要求定義の粒度は「ユーザーがシステムで実現したいこと」なので、受け入れテストは「機能テスト」「ユーザビリティテスト」が中心となります。このフェーズを担当するのはPM(プロジェクトマネージャー)ですが、依頼側の積極的な関与も必須です。

開発工程

テスト

主なテスト項目

内容

確認者

要求定義

受け入れテスト

機能テスト

実稼働時の状況を想定しながら

システム全体の動作を検証する

PM

依頼者

ユーザビリティテスト

実際の業務、それを想定したシナリオを

用意してシステムを稼働させ、

使用感・操作感などをチェック・検証

※要求定義に関する詳しい内容は下記の記事をご参考ください。

関連記事システム開発における要求定義の重要性|要件定義との違いや要求定義の実態・改善ポイントを解説!

要件定義

要件定義

「要件定義」工程では、システムテストとも呼ばれる「総合テスト」の設計が実施されます。

要件定義とは、クライアントのニーズである要求定義を、開発するシステムでどのように実現していくか?必要な要件をまとめたもの。

1.要件定義

下記のような内容を決めます。

・開発目的
・予算
・必要な機能
・スケジュール(納期)
・必要な人員(工数)

要件定義に対応する総合テストとは、納品される前のシステム(プログラム)が、要件定義を満たしているのか?開発側が確認する最終テストです。

要件定義の粒度は「システムに実装された機能・非機能(性能などの機能以外の要件)要件が満たされているか」。

総合テストでは「確認テスト」「評価テスト」「負荷テスト」が中心となります。要求定義同様、PMおよび依頼側の関与が重要になります。

開発工程

テスト

主なテスト項目

内容

確認者

要件定義

総合テスト

確認テスト

プログラムや、プログラム同士の連携に不具合がないか?

正しい挙動を示しているか?検証

PM

依頼者

評価テスト

使い勝手、セキュリティ、障害時の耐性など、

システムの性能を評価して検証

負荷テスト

システムに大きな負荷をかけて稼働させ、

耐久性やパフォーマンスに問題が生じないかを確認・検証

※システム開発の要件定義についてより詳しく知りたい方は、以下の記事も参考にしてください。

関連記事:システム開発の要件定義とは?受託開発における重要性や進め方を解説!

基本設計

基本設計

「基本設計」工程では「結合テスト」の設計が実施されます。

基本設計とは、要件定義をもとに、UI(ユーザーインターフェース)などの外側から見たシステムを設計するフェーズで。基本設計で行う作業内容は以下の通りです。

・機能の洗い出し
・扱うデータを整理
・画面のレイアウトを決める
・必要となるデータを明確化

基本設計に対応する結合テストとは、機能ごとに分割してプログラミングされたモジュール(部品を集めて機能を持たせたもの)がサブシステムとしてキチンと連携できるか?モジュールを結合させて確認するテストです。

基本設計の粒度は「基本設計書・仕様書通りにプログラムが動作するか」です。

結合テストでは「ブラックボックステスト」「インターフェーステスト」「トップダウン・ボトムアップテスト」が中心となります。基本設計を担当するのはSE(システムエンジニア)、PMですが、依頼側が携わる最後のチャンスでもあります。

開発工程

テスト

主なテスト項目

内容

確認者

基本設計

結合テスト

ブラックボックステスト

結合されたサブシステムにデータを入力し、

正しい出力データが返ってくるかを検証

SE

PM

依頼者

インターフェーステスト

機能間やモジュール間で

データが正しく引き渡されるか検証

トップダウン・ボトムアップテスト

サブシステムの上位、

もしくは下位モジュールから順番に検証

※システム開発の基本設計についてより詳しく知りたい方は、以下の記事も参考にしてください。

関連記事システム開発の基本設計とは?その位置付け・重要性・発注者としての関わり方を解説!

詳細設計

詳細設計

「詳細設計」工程では「単体テスト」の設計が実施されます。

詳細設計とは、基本設計をもとに、プログラマーにわかる形でプログラミングの指示書・設計書を作成するフェーズであり、成果物は詳細設計書。

単体テストとは、プログラマーが開発・実装したモジュール単体が正常に動作するか確認するテストです。

詳細設計の粒度は「詳細設計書・仕様書通りにプログラムが動作するか」です。

単体テストでは、プログラムの処理を検証する「ホワイトボックステスト」が中心となります。詳細設計を担当するのはSEであり、依頼側が携わることはほとんどありません

※システム開発のテスト詳細設計についてより詳しく知りたい方は、以下の記事も参考にしてください。

関連記事システム開発の詳細設計とは?プロジェクトの位置付け・役割をわかりやすく解説!

開発工程

テスト

主なテスト項目

内容

確認者

詳細設計

単体テスト

ホワイトボックステスト

制作されたプログラムが

設計通りの処理を実行できるか?網羅的に検証

SE

※システム開発全体の流れを解説した記事もありますので、下記もご覧ください。

関連記事システム開発の工程・流れをプロが解説!発注者が知っておくべきポイントを紹介

【無料】システム開発の依頼について相談する

アジャイル型開発にV字モデルは採用できる?

ここまでで、ウォーターフォール型システム開発を例に、V字モデルの概要・メリットを解説してきましたが、近年採用されることの多くなったアジャイル型開発に「V字モデル」は適用できないのか?と疑問を感じた方がいるかもしれません

アジャイル型開発とは、おおまかに策定されたシステム要件を細かい機能に分割し、優先度の高い順に「計画」>「設計」>「実装」>「テスト」>「リリース」を1つのサイクルとした「イテレーション(反復)」を繰り返し、システムの完成を目指す開発モデルのこと。

アジャイル開発とは?

アジャイルのV字モデルではユーザーの参加が必須

アジャイル型にV字モデルを採用する際に必須となるのが、ユーザーと開発チーム、あるいはプロダクトオーナー(ウォーターフォール型でいうPM)との密接なコミュニケーションです。

アジャイル型でV字モデルを機能させようとしても、実態としてユーザー側の代表が常に参加できない、間に第三者が入ってしまうことが起きがち。イテレーション間が1〜3週間程度と短く、完成までが長期にわたりがちなことも課題のひとつとなるでしょう。

アジャイル型システム開発にV字モデルを採用する場合は、こうした品質管理上の問題を踏まえたうえで、関係者がしっかりプロジェクトにコミットできるのか、実現可能性も検討することが重要になります。

※アジャイル開発についてより詳しく知りたい方は、以下の記事も参考にしてください。

関連記事アジャイル開発とは?メリット・デメリット、発注側の注意点を解説
関連記事アジャイル開発のおすすめシステム開発会社11選【2022年最新版】

【無料】システム開発の依頼について相談する

V字モデルの進化型であるW字モデル

システム開発のW字モデル

W字モデルとは、開発の最初のほうからテスト設計を開始し、開発の作業とテストを常に同時進行で行うモデルのこと。

プロジェクトマネジメント手法として、V字モデルは理にかなっているように思えますが、上流の各工程でテスト設計を実施するため担当者に負担がかかる、第三者の視点がないためテスト設計に抜け・モレが生じる可能性があるという問題点もあります。こうした問題点を補完する目的で、V字モデルを進化させたものが「W字モデル」です。

上流工程の段階からテストエンジニアが参加し、各テスト設計のレビューも実施するW字モデルなら、「品質をより担保しやすくなる」「早い段階でテスト設計を詰められる」などのメリットが得られます

W字モデルを採用することで「工程の後戻りリスク削減」「最終的な成果物の品質担保」「コスト削減」など、V字モデルで得られるメリットをより効果的に強化していくことが可能です。

W字モデルに対応できるシステム開発会社は多くない

いいことずくめのように思えるW字モデルではありますが、日本ではまだまだ浸透しているとはいえないのが現実。システム開発の品質を高めるため、IPA(情報処理推進機構)がW字モデルを積極的に推進していはいますが、人材などのリソース問題もあり、対応できるシステム開発会社は多くないのが実情です。

【無料】システム開発の依頼について相談する

システム開発におけるV字モデルまとめ

システム開発におけるV字モデルとはなにか?疑問を感じるシステム開発担当者の方に向け、本記事では、V字モデルを採用することで得られる品質面のメリットを含め、知っておきたいV字モデルの基本を解説するとともに、発展系であるW字モデルについても紹介してきました。

少なからず失敗に終わってしまうことのあるシステム開発プロジェクトでは、V字モデル・W字モデルによる品質管理が欠かせないことが理解できたのではないでしょうか?しかし、依頼側として品質管理に携わりたいと感じていても、すべてを自社でコントロールするのは不可能。パートナーとしてのシステム開発会社の協力が不可欠です。

そのためには、品質管理への高い意識を持つ、優良なシステム開発会社を選定することが重要なのです。V字モデル・W字モデルに対応できるシステム開発会社を探したい、そんなときは、システム幹事への相談がおすすめです。

※もしWebシステムの開発を得意とする開発会社を探している方はシステム幹事にご相談ください。予算や目的から最適な開発会社を選定させていただきます。相談料などは一切かかりません。

コンサルタントのご紹介 システム幹事 コンサルタント 岩田真 岩田 専任のコンサルタントが、
お客様の予算と目的を丁寧にヒアリング。
最適な会社をピックアップ・ご紹介させていただきます!
初心者の方でも安心してご相談いただけます。

必ず開発会社に発注する必要はありません。システム開発の相場の情報から最適な会社選びまで無料でサポートします。お気軽にご相談ください。

【無料】おすすめのWebシステム開発会社を紹介してもらう

Q. システム開発のV字モデルとは何ですか?

システム開発のV字モデルとは、システム開発における開発の工程と、そのテストの相関をVの字で表したものです。V字モデルの工程として「要求定義」「要件定義」「基本設計」等が挙げられます。それぞれの内容は記事内で詳しく解説していますので、ぜひご覧ください。

Q. システム開発のV字モデルのメリットは?

システム開発のV字モデルのメリットは「テストを合理的に実施できること」「どの作業に対してどのテストが行われるか分かりやすい」などです。詳細は記事内で紹介していますので、ぜひご覧ください。