ソフトウェア開発とデザイン思考
新しい取組を始める時、課題や問いに目を向けず、思いつきのアイデアから始めてしまうことはエンジニアであれば誰しも経験があるのではないかと思います。
ソフトウェア開発の現場では、たくさんの問題が発生します。問題に対して様々なアイデアを出し、ソフトウェアのコードに落とし込んで実装し解決しているはずです。このアイデアの質によって、大きく方向性が変わるということを何度も経験してきました。
そんな時、「デザイン思考」の一部「How Might We(HMW)」と出会いました。HMWは、UXデザイナーだけではなく、エンジニアが仮説検証のプロセスを効果的に進めるために役立つフレームワークなのではないかと考えています。そこで今回は「HMW」について説明しつつ、エンジニアとしてどのように取り入れられるかについて話をします。
HMW(How Might We)とは
HMW(How Might We)とは、「どうすれば我々は〜できるか?」というフォーマットにあわせて解くべき問題を定義する方法です。IDEOが使い始めたのち、今では世界中の多くのデザインファームやデザイン教育機関で使われているそうです。
例:遊園地のアトラクションにて待ち時間が長く、お客さんが退屈してしまう
課題の例として、「遊園地のアトラクションにて待ち時間が長く、お客さんが退屈してしまう」という状況を考えてみましょう。
この問題を解決するために、HMW(How Might We)を活用してみます。「どうすれば我々は〜できるだろうか」のフォーマットに合わせて、この課題に対する問いを作成していきます。
どうすれば我々はアトラクションの待ち時間を減らせるだろうか
よくあるHMWは「どうすれば我々はアトラクションの待ち時間を減らせるだろうか」というものです。これに対する具体的なアイデアとしては、アトラクションの稼働率を上げるなどが考えられます。
どうすれば我々はアトラクションの待ち時間を楽しんでもらえるだろうか
別のHMWとして挙げられるのが「どうすれば我々はアトラクションの待ち時間を楽しんでもらえるだろうか」です。ここでは、待機列にエンターテイメント要素を追加することで解決策を考えます。例えば、壁に描かれたキャラクター探し(隠れミ●キー)などを提供することで、待ち時間そのものが楽しい時間に変わるかもしれません。
どうすれば我々は待ち時間中にお客さんが他のアトラクションを楽しめるようにすることができるだろうか
他にも「どうすれば我々は待ち時間中にお客さんが他のアトラクションを楽しめるようにすることができるだろうか」というHMWが考えられます。この問題解決のためには、「待機列から離れて別アトラクションを楽しめるファストパス」などが考えられます。
このように課題に対して様々なHMWを出すことにより、解決策となるソリューションのアイデアを多数生み出すことができます。
ソフトウェア開発現場のHMW
エンジニアリングチームでは日々生じる課題に対してふりかえりを行います。例えば、以下のような問題が起きたとします。
「初めて扱う新しい技術を使うことになり難しく計画していた作業が予定通り終わらなかった。次の計画では予定通り終わるように調整する必要がある。」
この時どのような解決策を考えるでしょうか?
HMWの力を借りてみましょう。
「デザインリサーチの教科書」で紹介されているいくつかのパターンで問題定義を考えてみます。
良い面を伸ばす
「どうすれば我々は、新しい技術を使いこなせるだろうか?」
書籍を買ったり、勉強会に参加するなどの施策が考えられます。
悪い面を除去する
「どうすれば我々は、作業の見積もりを改善することができるだろうか?」
「どうすれば我々は、計画する作業を減らせるだろうか?」
予定通り行くために計画を見直すアイデアです。
反対を探す
「どうすれば我々は、新しい技術を使わずに問題を解決できるだろうか?」
新しい技術を使わなくても解決できるのであれば無理に使わなくてもよいかもしれません。
そもそもの質問
「どうすれば我々は、作業を計画せずに済むだろうか。」
計画することを諦めます。(いいのだろうか)
他のリソースを活用する
「どうすれば我々は、外のチームに相談して難しい作業を終わらせられるだろうか。」
外のチームに支援を求めるパターンです
これらの質問から派生するアイデアは、プロダクトを成功させるための具体的な行動へとつながるのではないでしょうか?
アイデアを出す前に問題定義から考える
アイデアを出す前に、課題と問題定義から考えることで、様々な観点のアイデアを出せることを説明しました。私は、ふりかえりでTryを出す際にはよくこのようなHMWを考えてからアイデアを出すように心がけています。
アイデア出しをする前に今起きている課題とその問題定義から始めてみませんか?