WRブログ

W字モデルとは?

■W字モデルとは?
開発の上流工程からテスト設計を開始し、開発プロセスとテストプロセスを同時併行に進めるプロセスモデルです。
V字モデルにおける従来の問題点を解決する方法として発達したモデルであるため、V字モデルの記事も合わせてご参照ください。

w_shaped_model

■W字モデルの概要とV字モデルとの違い
V字モデルの左側の開発プロセスにそれぞれテスト工程を加えると、棒が一本増えて、W字になるという形です。
開発プロセスの分だけ丸々テスト工程が増えるとその分だけ工数が増えるように見えますが、早期段階からテストを行うことでV字の右側に当たる通常のテスト工程でのバグ数を減らすことができます。
通常のテスト工程でのバグが減ることで手戻りが減り、全体として工数を減らすことが狙いです。
■W字プロセス導入のメリット
開発・テストの双方が同時併行に関わり続けるため、開発・テスト双方にメリットが生じます。

■開発にとっての導入メリット
早期段階からテストエンジニアのレビューに晒されることで、客観的に検証の可能性が確認されるため、設計の漏れを発見する確率が上がります。それによって品質リスクが減少します。

例えば、設計時点でバグの原因となるような設計上の問題点や矛盾点に気づくことができれば、開発が終わってしまった段階で判明した場合よりもはるかに容易に修正ができるため、テストプロセスは増えるものの全体としては工数が削減できるというわけです。

このメリットの恩恵は、プロジェクトの大きさに比例して大きくなります。

■テストにとっての導入メリット
テストエンジニアにとっては早期段階から仕様を把握できるため、テストの難易度や注意点を把握でき、テスト準備が進めやすくなります。
現場で起こりがちな、「仕様書の納品が遅いため、テストの準備が進められない!」という状況もある程度回避できます。

また、開発プロセスの進行をテストエンジニアが確認しているため、テスト項目のトレーサビリティの確保も期待できます。

仕様の変更などに伴って都度テスト設計も調整が必要になるとは言え、直前になって判明した仕様書から慌ててテスト項目を作成するよりはるかに安全であると言えます。
■日本におけるW字モデルの導入状況
日本では2000年代頃からW字モデルの導入が徐々に始まりましたが、2012年現在でも完全にスタンダードな手法とはなっていません。
スムーズな導入技術を持つ会社は少ないとされおり、シンポジウムなどでの導入のための研究や議論が進んでいる最中です。

テスト準備を前倒しするだけであれば、既に多くの企業が実践できていますが、
●テスト仕様書をシステムの設計書とほぼ同時に作成すること
●システムの要件定義や設計時に、テスト用のデータ・バリエーションを作ること
●テストエンジニアを上流工程から参画させ、テストの知見を早い段階から開発にフィードバックさせること

これらの実践が難しく、完全なW字モデルと呼べる開発プロセスを実現できている企業が少ないとされるためです。
※ウェブレッジでは、W字モデルでのソフトウェアテストを導入し、品質向上&トータルコスト削減をするご支援をしております。
■W字モデル導入による成功事例
W字モデル導入による実際の成功事例には下記のようなケースがあります。

テストシナリオを要件定義と併行して作成したことで、顧客の完成イメージがより具体的になり、要件定義が適格になりました。
これによって、顧客の完成イメージとプロダクトのギャップが減り、工数が削減できました。(つまり、余計なものを作らずに済んだということです。)
また、開発プロセスの進行中も常にテスト設計に晒されることで、実際にどのように運用されるのかがシミュレートされることになったため、システムで実現すべき要件と、運用で対応すべき要件の切り分けが明確になり、システム開発の手戻りも減少しました。
■W字モデル導入による失敗事例
逆に失敗してしまうときはどういうときでしょうか?
例えば、W字モデルのフローどおりに進めただけで、従来通りに仕様書をベースにしてテストケースを作成するに留まったため、開発への関与が少なく、要件定義に積極的に関われませんでした。
そのため、単にテストの工数が倍増しただけとなってしまいました。

■W字モデルの成功のためのポイント
テストエンジニアが、積極的に開発の上流工程である設計に関わっていくことが成功の鍵となります。
例えば、上流工程で作成する成果物の文章中にテスト仕様と課題を盛り込み、その過程で要件の矛盾点や抜けを発見、指摘するというようなことです。
つまりテストエンジニアが上流工程の可視化を促進し、上流工程での問題点をより明確にするということが、重要になります。

■W字モデルにおける注意点
W字モデルの成功には、経験を積んだテストエンジニアが必要です。
上流工程にかかわるテストエンジニアとしては、多くのプロジェクトに関わった経験を持つベテランのエンジニアが理想となります。
たしかにテストの最終工程で発生した不具合から順を追って設計バグを発見することは、時間さえあれば経験の浅いテストエンジニアでも可能です。
しかし、実物が存在しない段階で、設計の問題点に気づき、開発に意見を伝えることができるのはプロジェクトの経験が豊富なテストエンジニアでなければ難しいでしょう。

つまり、W字モデルは技術力の無いテストチームがやみくもに導入できるモデルではないとも言えます。
導入にあたってはプロジェクトの人員のスキル、特にテストエンジニアのスキルを勘案する必要があります。
★まとめ
W字モデル導入のメリットを最後にもう一度まとめると、

★設計段階でテスト工数が生じるかわりに、全体の工数、特にテスト最終段階での工数を削減でき、結果として開発費の抑制が実現できる。
★要件定義段階や設計段階でなければ改善が困難な、設計に起因する品質向上が期待できる。

ということになります。


【参考文献】:
『ソフトウェアテスト教科書 JSTQB Foundation 第3版』

【参考URL】:
http://www.itmedia.co.jp/im/articles/1111/07/news202.html,(参照 2016年7月30日)
http://www.kumikomi.net/archives/2012/03/rp11jas2.php,(参照 2016年7月30日)


【無料ダウンロード】ソフトウェア品質向上ガイドBOOK
第三者検証のスペシャリスト集団である株式会社ウェブレッジが、
特に上流工程でのソフトウェア品質向上の手法に関してまとめた資料を
無料でご提供しております。

▼ソフトウェア品質向上ガイドBOOK
ソフトウェア品質向上ガイドブック(1)
Scroll Up