なぜ開発チームはテスターの意見を無視するのか
ソフトウェア品質評価にはビジネスサイドの視点が不可欠
テストに必要な時間を伝えてあるのに時間を確保してくれない。指摘した不具合の修正を後回しにされてしまう――。開発チームは品質を重視していないのだろうか?
わたしはこのところ、かなりの数のカンファレンスに講師として参加した。どのカンファレンスでも、少なくとも1回は次のようなやりとりがあった。
:テスター 開発チームにきちんと話を聞いてもらうにはどうすればいいのでしょうか?
:わたし ちゃんと聞いてもらえていないと思うんだね。例えばどんなことがあるんだろう?
:テスター 幾つか挙げると、テストに必要な時間を伝えてあるのに時間を確保してくれない。UI(ユーザーインタフェース)を変更すると自動スクリプトが壊れてしまうと言ってあるのに、変更されてしまう。わたしが指摘した不具合は修正の優先順位が変えられてしまうことがよくある。まだ準備が整っていないと報告しているのに、システムが本番運用に入ってしまうことがある。
:わたし それでは、なぜ彼らはあなたの話を聞かないんだと思う?
:テスター (戸惑った様子で)ええと、どういう意味でしょう? 彼らは明らかに品質を気にしていないんです。
:わたし 開発チームがそういう決定を下すもっともな理由があるかもしれないと考えたことはないかな。
:テスター 悪い品質を受け入れるもっともな理由!? 例えば……?
いつもこうした反応に驚かされるが、驚くことではないのだろう。わたしが会うテスターの大部分は、開発プロジェクトにつきものの一筋縄ではいかないビジネス課題に直面する機会がないだけなのだ。こうした課題がある中で行われる意思決定は、その背景から切り離すと、品質を大切にすることとまったく相反するように見えることが多い。実際、ソフトウェア開発プロジェクトに影響するファクターは膨大にある。プロジェクトのどの時点でも、個々のテスターの品質評価よりそれらを優先することが理にかなっている場合があり得る。困難なビジネス課題に直面せず、こうした事情を認識していないテスターが「チームが自分の話に耳を傾けてくれない」という考え方ばかりするように見えるのは無理もない。
この現状は、テスターよりもマネジャーに問題があると思う。だがテスターも、一見不可解な決定の背景にある理屈をあまり理解しようとしなかったという点で、少なくとも責任の一端はある。わたしはこうした立場に立って、「悪い品質を受け入れるもっともな理由は一体何か」といった質問に答えている。例えばこんな具合だ。
:わたし こう考えたらどうかな。テスト時間が十分もらえないのは契約の期限を守るため。UIが変更されたのはUIがターゲットユーザーにとって分かりにくいことに誰かが気付いたから。不具合修正の優先順位が変更されたのは、ステークホルダーに「リリース2」の予算確保を促す効果を狙って。システムが本番運用に入ったのは、商品やサービスのリリースをテレビCMの放映開始に間に合わせるため。
:テスター その逆に、契約を変更したり、ユーザーを教育したり、ステークホルダーに別のリリースを計画するようはっきり要求したり、CMをキャンセルしたりすればいいのに。その方が良いやり方では。
:わたし 時には。でも、いつもそうすんなりいくとは限らない。そういう選択肢を取ると膨大なコストが掛かる場合もある。正直なところ、希望したテストスケジュールが与えられなかった結果としてバグが出ることや、UIが変更されること、不具合修正の優先順位が変わること、準備ができていないと報告しているのにシステムが本番運用に入ることの方が、テレビCMを放映開始の3日前にキャンセルするより高くつくといえるかい?
:テスター それは言えないと思います。でも、どのみちリリースするなら、なぜわざわざテストをするんでしょう?
:わたし 確かにテストをする積極的な理由がないときもある。実際のところ、わたしは時々、テストをやめたり、少なくとも規模を大幅に縮小することを勧めている。テストをしても、得られた情報が使われないのなら時間とお金の無駄だからね。一方、ステークホルダーが投入する十分な資金でテストが行われ、「システムが本番運用に入ったらどのようなサポートスタッフが必要になるか」「最初のパッチがリリースされるまで、コールセンターに何人余分に人員を配置する必要があるか」などを見極めるためにテスト結果が活用されるケースもあるだろう。
この辺りまで会話が進むと、テスターはわたしの話を聞いても仕方がないと見切りをつけて去って行くか、あるいはカンファレンスから帰ったら開発チームにこれまでと違う質問をしてみようと思い立つ。
わたしは、人が手持ちの情報に基づいて結論を出すのは至極もっともだと思う。さらに、理屈に合わないことをうのみにしないおかげできちんと仕事をこなしているテスターが、「チームが品質を気にしない」という結論を出しやすいことも理解している。
のみならず、役員会議でバグだらけのソフトウェアをリリースして損を出すか、ソフトウェアのリリースを延期して損を出すかを決めようとしているときに経営幹部が最も嫌がることは、「大事なのはお金ではない。品質の高いソフトウェアを作ることだ」とテスターに言われることだということもわたしは認識している。しかし、最も重要なことは、テスターが自分の視点以外にもソフトウェア開発に関する適切な決定を下すための有効な視点があることを忘れないようにすることだ。
かつて地球が宇宙の中心にあるというのが常識だった時代があった。そのころの視点からすると、それは完全に理にかなった正しい考え方だった。当時は巨大望遠鏡で宇宙をのぞいたり、深宇宙探査機を打ち上げて別の視点を得ることはできなかったのだから。この「自分が宇宙の中心」シンドロームは無理もないだろう。別な視点から見る理由がなければ、自分の視点から物事を見るのは当然だ。
残念ながら、このシンドロームはソフトウェア品質に本当にこだわるテスターにとって有害だ。品質に真に建設的な影響を与えるには、テスターはチームや会社が品質を気にしないとか、テストをおろそかにしているとか結論付ける前に、次のことを考えるとよいだろう。
- どこかの誰かが費用を出してこのチームにこのソフトウェアを開発させている。大抵の場合、その誰かは、採算が取れることを、許容されるプロジェクト品質の要件と考えている
- 利益を生むためにソフトウェア開発に投資するその誰かがいなければ、ほとんどの開発者は仕事にあぶれてしまう
- 利益を生もうとする誰かのためにソフトウェアを開発するチームがなければ、ほとんどのテスターは仕事にあぶれてしまう
結局のところ多くの企業では、テストチームは月と同じく決して宇宙の中心ではない。あなたのチームで、テストチーム(月)は開発チーム(地球)の周りを回り、開発チームはビジネスサイド(太陽)の重力の影響を受けて公転し、ビジネスサイドはビジネス、財務、競争圧力などを包含する宇宙を移動しているといえるのでは? だとすれば、あなたが影響を与えることができないようなもの(予算、ビジネスの優先順位、契約上の義務など)ではなく、あなたが影響を与えることができるもの(テスト手法、コミュニケーション改善、テストの優先順位付けなど)について考えるのが理にかなっているだろう。
月も地球の潮の干満に影響し、日食を引き起こし、地球人に畏敬の念を抱かせ、その探究心を刺激する。月は太陽の周りを回る地球の公転軌道を変えられないからといって、自分がおろそかにされているとは思わないだろう。
本稿筆者のスコット・バーバー氏は、PerfTestPlusのチーフテクノロジスト。Association for Software Testingのオペレーション担当副社長兼エグゼクティブディレクターも務め、Workshop on Performance and Reliabilityの共同創設者でもある。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
3
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
4
221人調査で分かった「情シス最大のストレス」は?
-
5
「データストレージの活用方法」に関するアンケート
-
6
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
7
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
-
8
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
9
本当に安いPCで十分か? “すぐ重くなる”を防ぐノートPC選びの絶対条件
-
10
Claudeの不可視透かしに批判殺到 著作権消失や誤判定に潜む企業リスク
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー