「第三者検証」の3つのメリット
第三者検証とは、文字通り開発者やサービス事業者などのステークホルダー以外の「第三者」が客観的な視点でソフトウェア品質の検証・評価を行うことです。
開発者本人がテストを担当するデメリットと、第三者がテストを行うメリットについて、一般的に提唱されているものは下記になります。

ソフトウェアテストにおいてはしばしば「独立性」が重要視されることがあります。
以前紹介したJSTQB(ソフトウェアテスト認技術者認定組織)のFLレベルのシラバス(学習事項)には「ある程度の独立性を確立すると、開発者とテスト担当者の間の認知バイアス(欠陥がないという思い込み)の違いによって、テスト担当者はより効果的に欠陥を発見できる」と書かれています。
独立性の担保としては「開発者と同じチームの同僚が行う」「社内の専門の部署が行う」など、会社内で独立させるケースもあります。例えば同じプロジェクト内の別のメンバーが行う場合、開発者との情報共有が行いやすいメリットはありますが、先入観といった点ではフラットではないというデメリットもあります。「第三者検証」は「独立性」という意味では一番担保されたテストチームとなります。
かみ砕くと下記のようなイメージですね!
本人が行う> 同じチームの同僚が行う>> 社内の品質部門が行う>> 【越えられない壁】>> 第三者検証会社で行う
「独立性」という意味では、例えば事業者Aがシステムの開発を開発会社Bに委託した場合、依頼を行った事業者Aは開発チームとも独立していると言え、さらにシステムの根本的な要求にも詳しいでしょう。ステークホルダーであるため利害の衝突は起きやすいですが「プロダクト知識」という意味では優れているという事になります。
ここで第三者検証の会社Cが行うメリットは「プロダクト知識」よりも「テストの知識」、例えばどのようなテストをどこまで行ったらよいかなどのテスト計画のノウハウや、テスト手法の知見を持っているという事です。

尚、ポールトゥウィンの第三者検証では、仕様面でのプロダクト知識のキャッチアップはもちろん、事業者の要求面での知識理解を深める為、ユーザーへの使用方法のインタビューまで行い、実際のテストケースに反映させることまで行っています!例えば、受発注の基幹システムの受け入れテスト代行などでは、実際にシステムを使うテレフォンオペレーターにインタビューを行って業務フローの理解を深めます。
話が飛んでしまいましたが、第三者検証の会社は言うまでもなく「テストの専門会社」なので、社内の豊富なナレッジによる「テスト」に対してのアプローチ方法を持ち、専門知識のあるQAエンジニアを多く確保・育成しております。
開発者とテスト担当者を別に立てることで、開発と並行してテストを進めることができます。
例えば、ウォーターフォール開発であれば、要件定義や基本設計のフェーズでテスト計画を行ったり、コーディング期間にテスト設計(項目書の作成)に着手することで、実装後すぐにテスト実施に取り掛かることができるという事です。上流工程からテスト担当者の視点が入ることで、仕様上の不具合も見つけやすく、実装後に修正するよりはるかに手間が削減されるでしょう。
アジャイル開発においても、次回のスプリント計画での追加実装や修正の内容について、仕様が固まる前からタスクのチケット管理やMTGを通してのキャッチアップ、QA担当者としての視点でチェックや指摘を行っていきます。こういった「開発リソースとは別に、品質担保のリソースを確保する」ことは、品質はもちろん、リリース直前に出るバグを防ぐという意味である意味全体のコストの削減につながっていきます。

よくあるご相談
さて、一般的な第三者検証のメリットについて上記で述べさせて頂きましたが、どれもテストについて学ぶ機会のある方には既にご存じの、書籍やネット上にかかれた情報かと思います。
ここからは、実際に第三者検証を行う弊社がHPお問い合わせや紹介などでご相談頂くことが多いニーズについてお話しさせて頂きます!
こちらは、2ヶ月に1回以上はご相談頂くお悩みです。
開発者7人、2weekスプリントのアジャイル開発。
リリースから2年、ユーザーが増えて品質が気になっている。
開発スピードが速くなり、発者リソースが不足してきているので、テスト工程は任せたい。
本当は毎回リグレッションテストを行ったり、定期的にE2Eテストも行いたいが、出来ていない。
自動化も検討したい。
とにかく開発者をテストから解放したい!
かなり具体的に記載しましたが、上記のようなメモは一番書いている気がします(笑)
弊社ではスプリントに合わせて月に数人日~数人月でのリソース提供が可能です。プロダクト特性やプロジェクトの文化などをお伺いし、よりマッチしたQAエンジニアをご提案させて頂きます。
こちらはメリット2で紹介した例の形ですね。
意外かと思われるのは、開発会社から、依頼した事業者に「第三者検証にテストを依頼したら」とアドバイスをされているパターンも多いという事です。いうなれば「私たち開発会社だけど、高品質なプロダクトの提供のため事業者側と契約してテストをして欲しい!」という感じでしょうか。弊社の第三者検証の完了をもって検収としたいという思いもあるかと思いますが、総じて「品質を担保したい」という思いが開発者側で大きいという事なのかなと思います。
この場合、予算を出すのは事業者側なので早期の段階、例えば半年くらい前から予算確保のための概算見積りをご相談いただくことも多いです。要件定義など仕様が固まる前でも、類似プロダクトなどの経験から概算のご相談を頂くことは可能です。
この場合、普段以上に「スピード」と「品質」を両立しなくてはならないため、こちらもかなり気合を入れてヒアリングをさせて頂きます。
リリース直前、開発者は修正作業に集中したいのでテストは外部に頼みたい、開発が想定より押してしまった、テストケースを作成してみたら想定より多かったので実施だけお願いしたい、など状況は様々です。急な外部発注で予算も限られることが多く、どんな観点、粒度で行うかであったり、担保したいところ(例えばお金を扱う機能周りだけ重点的に、など)をMTGベースなどでお伺いさせて頂きます。
品質・予算・納期すべてが「ちょうどいい」プランのご提示を目指しています。
まとめ
一般的に語られている第三者検証のメリットと、実際に良くご相談いただくお悩みの例をご紹介させて頂きました。
3つに絞ってみましたが「ソフトウェア・ゲームの品質にかかわること」は何でもご相談頂けるのがポールトウウィンの強みですので、是非お問い合わせフォームなどからお気軽にご相談ください。
Webサイトからエンタープライズ、IoT機器・組み込みまで幅広い領域のソフトウェア開発に対し、第三者の視点で客観的にソフトウェアの品質を検証します。ウォーターフォールで開発された大規模な基幹システムのご相談から、アジャイル開発のアプリのQAなど、プロジェクトやプロダクトに合わせた「ちょうどいい」テストをご提案させて頂きます!
サービスについて詳しく知りたい方は、下記ページをご覧いただき、お気軽にお問い合わせください。