🥴

ソフトウェア開発での心理的安全性とバグの相関について

2021/02/04に公開

序文

少し前に、仕事をする上で大切にしていること という投稿を書いたのですが、それ以降自分が大切に思うことにフォーカスしていこうと考えるようになりました。

https://note.com/samemura/n/n32645cf9b360

大切にしているものの中に、コミュニケーション心理的安全性 がありまして、これらは働く上でもとても重要だと認識がされている一方、事業・経営目線だと結果に影響していることが見えづらく、軽視されていると感じていました。

そんなところで、ミノ駆動さんの名前付けに関するツイートから気づきを得て、事業目線で訴求できることを何か示せたらなと考えるに至りました。

https://twitter.com/MinoDriven/status/1350009247199752192?s=20

今のところコミュニケーションコストとバグの関係性についての情報はなさそうだったので、Twitterでアンケートをとってみることにしたというのが今回の話の流れです。導入長くなりました。。。

アンケートの設計

アンケートの目的としては、コミュニケーションコストや心理的安全性とバグについての関係性を経営層に明示して、コミュニケーションを改善すれば品質が改善し利益が向上できて皆ハッピーでめでたしという方向にいければと思いました。

ここで大きな問題にぶちあたるのですが、コミュニケーションコストや心理的安全性やバグの頻度についてそもそも定量的に測定することができないのです。人類はなんという困難に立ち向かっているのでしょうか(少し考えれば誰でもわかりますね)

  • どういう状態ならコミュニケーションコストが低いと言えるのか?
  • 心理的安全性とは、どのくらい発言が活発ならそう言えるのか?
  • 今週のバグは10件でした。多いですか?少ないですか?

こういう場合は、組織的にそれらを定性的アンケートなどで調査して改善度合いを見るのが王道ですが、その実験に踏み入るまでの材料がないのも世の中往々にしてあります。

ということで、今回は客観的・定量的かどうかやアンケート対象の平等性などは無視し、私の周辺で感覚値を集めて1つのデータとしてまとめ、実際に改善をすると良いことが起きそうだいう可能性の存在を確かめることにしました。私一人でコミュニケーションコストとバグの関係性を感じて、訴えてみても信頼性が低いので、まずは同じ感覚の人がいるかどうかを調べてみる感じですね。

アンケートとしては、

心理的安全性が低い
=> 用語などが分かりづらい(コミュニケーションコストが高い)
=> バグが多い

というシナリオが証明できたら良いので、

・心理的安全性が低いと、用語が分かりづらいか?
・心理的安全性が低いとバグが多いか?
・用語が分かりづらいとバグが多いか?

という質問を設定しました。

結果

・心理的安全性が低いと、用語が分かりづらいか?

https://twitter.com/samemuramura/status/1350648089657266176

・心理的安全性が低いとバグが多いか?

https://twitter.com/samemuramura/status/1350648170653446148

・用語が分かりづらいとバグが多いか?

https://twitter.com/samemuramura/status/1350648277901852672

まとめると、大体40人程度の方が回答してくれて、7・8割がYES(ある)という回答でした。

コミュニケーションコスト、心理的安全性、バグについて関係があることは概ね同意されているのではないかと思いました。

ちなみに、回答者の属性を推察すると、

・3割くらいが私のTwitter関係者
・7割くらいがruby-jpの参加者

という感じになると思います。キャリア的には、

・1割くらいが何かしらのソフトウェアエンジニア
・9割がWEB系のエンジニア

という感じです。

考察・深堀り

結果から分かることで確実そうなのは、
コミュニケーションコストが多い(用語が分かりづらい)とバグが増える
ということだけでした。

これは結果からも90%がYESなのと、因果関係が逆になることは考えにくい(バグが増えたらから用語が分かりづらいとはなりづらい)ので、用語をわかりやすくしてコミュニケーションコストを改善できればバグを抑えることができると言えそうです。

心理的安全性が低いとコミュニケーションコストが増えるかについては、YESの割合からもそれだけとは言えず、他の要因もありそうなのと逆の因果関係も成り立ちそうだと思います。(用語がわかりづらく質問が増えすぎて会話したくなくなるなど)

心理的安全性が低いとバグが増えるかについても、確実に因果関係があって改善したらバグの改善に効果があるとは言えなさそうです。

振り返ってみると、これは個人的な感覚とかなり近くて、用語がいい感じに整備できているとバグが少なくなると感じますし、心理的安全性が低くても用語がわかりやすい場合もあります。
自分が関係する場合は、心理的安全性が高い=意見が言える場合に、自分で用語をいい感じにする、というバイアスがありそうなので、用語をわかりやすくする意識がある人がいればよいのかもしれません。

まとめ

心理的安全性とコミュニケーションコスト、バグの相関関係についてアンケートをもとに調査・推察をしてみました。

コミュニケーションコスト(用語の分かりづらさ)についてはバグに対して効果があると結論付けました。

心理的安全性についても一定の相関関係がありそうなので、改善のする価値はあると言えます。

この記事が組織的な事業価値の向上とそこで働くひとの環境改善に役立てば嬉しいです。

個人的にも、定量的にデータをとったり、改善を継続していきたいと思います。

謝辞

アンケートにご協力いただいたTwitterの方々、ruby-jpの方々ありがとうございました。

Discussion