隠れた不具合を見つけるための水平思考戦略5選
テストをしていて「なぜか原因が見つからない…」「想定外の不具合に出くわした…」という経験はありませんか?
そんな時に役立つのが、従来のやり方に縛られない水平思考です。
テスターにとって「型にはまらない発想」は大きな武器になります。しかし私たちはつい、決められた手順や過去の経験に沿って、一方向にしか考えられない直線的な思考にとらわれてしまいがちです。その結果、いつものやり方に頼り、状況を同じ視点からしか見られなくなってしまいます。
例えば、ログインに失敗した時、多くの人は「入力ミスではないか」と考えます。もちろん間違った認証情報は典型的な原因ですが、それだけではありません。サーバーのタイムアウト、セッショントークンの期限切れ、バックエンドの設定不備など、他の要因もあり得ます。直線的な思考に偏ると、入力欄やエラーメッセージばかりに注目し、こうした可能性を見落としてしまうのです。
このように直線的な思考だけでは解決できない場面が多くあります。そこで必要になるのが、物事を違う角度から捉えるための「水平思考」です。
水平思考(ラテラルシンキング)とは?
水平思考(ラテラルシンキング)とは、問題を解決するために固定観念や既存の論理にとらわれず、「物事を多角的に考察する」「新しい発想を生み出す」ための思考法のことです。
例えば、ログインの不具合を調査する場合でも、ただ入力欄を確認するだけでは不十分です。ログを解析したり、別のアカウントで試したり、ネットワーク環境を変えてみたりすることで、初めて本当の原因にたどり着けることがあります。これは「決められた順番通りに物事を考える」直線的思考とは正反対のアプローチです。
直線的思考の限界
テスターの仕事は、単なる確認作業ではありません。複雑で曖昧な課題に向き合い、工夫しながら解決策を見つけることが求められます。
Spotifyを例にするとわかりやすいでしょう。いつも同じプレイリストを聴く人もいれば、新しい曲を探す人もいます。もしテストを“日常的な使い方”だけに絞ってしまったら、探検するように音楽を楽しむユーザーの体験は見過ごされてしまいます。これが直線的思考の落とし穴です。
このように従来の考え方にとらわれてしまうと、テストシナリオの優先順位を誤ったり、結果を早合点してしまったり、本質を見落とすリスクが高まります。だからこそ、テスターには水平思考を取り入れることが欠かせません。
では、どうすれば直線的思考の枠から抜け出し、水平思考を実践できるのでしょうか。ここからは、そのための5つの戦略を紹介します。
水平思考を取り入れるための5つの戦略
1. 視点を切り替える
新しい発想を得るには、慣れた枠組みから一歩外に出ることが大切です。視点を変えることで、意外なシナリオや新しいテストケースが見えてきます。
そこで役立つ方法の一つが、ゴールから逆算して問題を考える「逆転の発想」です。
例えばSpotifyの場合、「新しい曲を探しているユーザー目線」でテストするのではなく、「ユーザーが新しい曲に出会えない状況」をあえて想定してみます。そうすると、利用履歴が少ないせいで、アルゴリズムが毎回同じ曲ばかりを繰り返しおすすめしてしまうケースも考えられるでしょう。
このようにあえて逆の立場から考えることで、通常の視点では見過ごしてしまう不具合や改善点を見つけやすくなります。
2. 挑戦的な問いを投げかける
質問は創造力を引き出す最も強力なツールです。
そのため、テスターは「きっとこうだろう」という思い込みに頼らず、疑問を投げかけ続けることが必要です。
筆者のチームには、「テスト中は、子どものような好奇心を持ち続けることが大切だ」と勧めています。子どもが「どうして?」「なんで?」と何度も聞くように、理解できるまで問い続けることが重要だと考えています。
「どうすればもっと速くテストできるか?」ではなく、「なぜ速くできると考えているのか?」と問うことで、環境依存やテストデータ、要件の不備といった別の要素に気づけるようになります。その結果、品質や信頼性、長期的な影響といった大切な観点を見直せるのです。
問いを立てるときは「なぜ」「もし〜なら」「どうやって」を意識してみましょう。特に「なぜなぜ分析」を繰り返すことで、表面的な答えにとどまらず、新しい可能性を探るきっかけになります。
3. 思考パターンを壊す
習慣的な思考は便利ですが、創造性を狭めてしまいます。
これを打破する方法のひとつが、別のものに例えて考えることです。
これは、普段と違う視点を強制的に取り入れられるので、思い込みに縛られずに新しい発想が生まれやすくなります。
例えば「ログイン処理」を「空港の出入国審査」に置き換えて考えてみましょう。書類(入力データ)が正しいのに通れないなら、問題は旅行者(ユーザー)ではなく審査官(認証サーバー)の対応にあるかもしれない、と気づけます。こうした例えを使うことで、入力欄やパスワードチェックばかりに目が行く直線的な思考から抜け出し、サーバー側の問題を探る視点を得られるのです。
さらに「あえて関係なさそうなものを組み合わせる」方法も効果的です。例えば「ゲームのレベルアップ」と「ユーザー登録フロー」を組み合わせると、登録ステップを段階的に進めて達成感を与える仕組みを思いつけるかもしれません。こうした発想は、従来の考え方ではなかなか出てこない改善策につながります。
大切なのは、好奇心と柔軟な姿勢です。新しい分野を学んだり、競合を分析したり、いろいろな視点から自社のプロダクトを見直すことで、固定化した思考を打ち破ることができます。
4. 協働と多様性を取り入れる
異なる経験や専門性を持つ人と協力することで、思いもよらないアイデアが生まれます。そのため、ソフトウェア開発は一人で完結する作業ではなく「社会的活動」とも呼ばれているのです。
例えばUXデザイナーが行うユーザーインタビューから得られる知見は、テスターがより効果的なユーザビリティテストを設計するヒントになります。異なる背景を持つメンバーと一緒に働くことで、無意識のバイアスや固定観念を超えることができるのです。
筆者の組織では、ブレインストーミングやバグバッシュ、ドッグフーディングといった活動を通じて協働を促しています。多様な専門分野の人が加わることで、解決策の幅が一気に広がります。
5. 創造性を鍛える
「創造性は才能だ」と思われがちですが、実はトレーニングで伸ばせます。
マインドマップや図解などを活用すれば、普段は気づかないつながりやパターンを発見できます。また「アイデア日記」を持つのもおすすめです。筆者も日々のひらめきや観察をメモに残しており、後から見返すことで新しいアイデアのきっかけになることが多々あります。
頭の中に置きっぱなしでは忘れてしまいますが、書き留めておけばいつでも取り出せる「種」になります。
日々のテストに水平思考を取り入れる
水平思考を身につけることで、テスターはより冷静で柔軟な判断ができるようになります。
- 「これが原因だ」とすぐに決めつけず、一度立ち止まって状況を整理できる
- 思考をゆがめる思い込みやバイアスに気づける
- 前提にとらわれず、事実をもとに新しい発想を生み出せる
水平思考は「特別なテクニック」ではなく、日常の中で少しずつ鍛えられる習慣です。
例えば、今日のテストで「なぜ?」を3回繰り返してみる。それだけでも、新しい視点に出会えるかもしれません。
不具合はいつも、私たちの想定の外に隠れています。次のテストでは、ぜひ「いつもの視点」を一度疑い、新しい角度からシステムを見つめてみてください。その小さな一歩が、隠れた不具合を見つける大きな力につながります。
Original article: https://blog.magicpod.com/lateral-thinking-strategies-uncover-hidden-bugs
参考文献
- Critical Thinking for Testers by Michael Bolton
- Lateral Thinking by Bono Edward De
- Mental Models by Farnam Street
- The Hidden Logic of Thinking for Testers
