川添愛『「わかってもらう」ということ』を読みました。氏の著作は「精霊の箱 チューリングマシンをめぐる冒険」「自動人形(オートマトン)の城 人工知能の意図理解をめぐる物語」「白と黒のとびら」を読んでおり、情報科学を元にした面白い話を書く方であるなと思っていました。もっとも、氏の専門は情報科学というよりは言語学で、「言葉」というものに焦点を当てた著作が多いようです。『「わかってもらう」ということ』もそのような一冊です。
本書では、「わかってもらう」ことを「言葉を使うことで、他の人たちと、そして自分自身とうまくやっていくこと」 (川添, (2025), p.18) と定義しています。言葉を使うことで他者との関係性をマネジメントすること、なんとかすることと言えるでしょう。また、「言葉というものは本質的にあいまいなもの」 (川添, (2025), p.42) とも言っており、「わかってもらう」とは、そのあいまいな言葉を用いた上で他者との関係性をなんとかするということになります。
さて、話はソフトウェア開発に移ります。
アジャイルソフトウェア開発宣言に署名したひとりであり、クリスタル手法やヘキサゴナルアーキテクチャでも知られるアリスター・コーバーン氏は、「アジャイルソフトウェア開発」の中でソフトウェア開発について、コミュニケーションによる協調ゲームであると言っています。
コミュニケーションとは、人と人とが言葉を用いて相互に理解し合う、つまり相互に「わかってもらう」ことです1。したがってソフトウェア開発とは、言葉を使って他者との関係性を相互にマネジメントした上で、協調ゲームをプレイすること、というように言えそうです。
また、広木大地「エンジニアリング組織論への招待」では、ニクラス・ルーマンを引いて人間のコミュニケーションは以下の3つの不確実性に起因していると言っています(孫引き失礼します)。
同書では、ソフトウェアエンジニアリングにおいてはコミュニケーションの不確実性を減らしていくことが重要な態度であることを指摘しています。「コミュニケーションの不確実性を減らしていく」とは、まさに「わかってもらうこと」に他ならないでしょう。
ソフトウェア開発において「わかってもらう」ことが非常に重要であることがわかりました。ここで話は再び川添愛『「わかってもらう」ということ』に戻ります。
本書では、川添は自身が言葉によってわかってもらうことに失敗した豊富な経験を示しながら、言葉によってわかってもらうための方法論を論じています。それは言い換えれば、他者との関係性をマネジメントするための言葉の使い方であり、コミュニケーションの不確実性を減らしていくための言葉の使い方であると言えます。ソフトウェア開発がコミュニケーションによる協調ゲームであるとすれば、ソフトウェアエンジニアこそ言葉の使い方に意識的であるべきでしょう。
というようなことを考えさせられた、『「わかってもらう」ということ』でした。
「人と人」以外でもコミュニケーションは成り立ちますが、ソフトウェア開発の文脈なのでここでは「人と人」に話を限定しています。ソフトウェア開発をするのは人なので。少なくとも、今のところは。 ↩︎