top of page

UIデザインやアプリ開発に有効!問題や障害の突破の仕方

エンジニアやプログラマは開発の障害や乗り越えることが困難な問題に出くわす時が多々あります。例えば「原因不明のエラーが出た」という事態や「解決法が見出せない」危機に直面することは日常茶飯事です。

ではその障害を乗り越えるにはどうすればいいのか?

このコラムでは、長年開発の現場で行われている「ラバーダッキング」という手法やその効果について述べたいと思います。

あなたは障害や問題をどう乗り越える?

このコラムを読んでいる方にも「記述したソースがうまく動いてくれない!」という場面や「原因不明のエラーが出る!」という経験があると思います。

プログラミング以外でも人間関係に悩んだり、私生活の困難を乗り越えなければいけない時は当然誰にだってありますよね。

そのような障害を乗り越えるための問題解決法が、昔から行われている「ラバーダッキング」という問題解決法です。

ラバーダッキングって具体的にどんなもの?

自分に降りかかった問題を解決する手法として、開発現場では人形や置物に話しかける「ラバーダッキング」という手法が行われています。

これは人形や置き物に自分が抱えている問題点を説明するということです。つまり人形などに独り言を話しかけるということになります。

なぜこんな名前かというとお風呂でくつろいでいるエンジニアが、目の前にあるゴム製のアヒルに話しかけたことが始まりです。

その結果、頭の中が整理され問題の解決に繋がったことが始まりだと言われています。

ではなぜ「ラバーダッキング」が有効かというポイントをご説明します。

■説明するには把握しなければいけない

人に自分の問題点をこと細やかに説明するには、自分自身が問題点の全体を把握しなければいけないということです。でないと相手が問題を理解してくれないですよね。

自分が問題を1〜10まで理解しようとしばらく整理していると「ん?ここが変だぞ…」というポイントに気づくはずです。

ですのでラバーダックに説明するうちに「説明とコードの相違」に気づくことが目的なのです。

■ラバーダッキングの効果

ラバーダッキングは「PCに頼らないデバック」と言えます。PCの前ではなるべく早い問題解決に躍起になってしまいますし、思考も偏ってしまいます。

声に出して説明することは自分自身が問題点を整理しての原因特定が可能になりますので、場所も選びませんし誰かに頼る必要もありません。

自分の莫大な知識と問題を照らし合わせることによって、効率の良い解決に繋がります。

国の境を超えた、今もなお残る由緒正しき風習ですので、エンジニアにとって効果も絶大です。

ラバーダッキングはプログラマだけの手法ではない

ラバーダッキングは何も限定的な手法ではありません。ここではシチュエーションを踏まえて説明したいと思います。

■デザイナーにおけるラバーダッキング

デザイナーに必須のアイデア力ですが、365日24時間いつでも良いアイデアが出てくるとは限りません。経験がある方も多いでしょうが、PCの前に何時間座っても「ダメな時はダメ」という事態も当然ありえることです。

そのような時に、ラバーダッキングを行うと「何を伝えたいのか」や「どのような訴求が適切か」などのポイントがぽんぽんと出てきやすい現象が起こります。

頭脳のストレッチと思って一度試してみるのもいいですね。

■マネージャー・ディレクターにおけるラバーダッキング

スタッフをまとめるポジションの人間は、常にプロジェクト全体あるいは個々のスタッフの進捗・動向を把握しておかなければいけません。