離れた情報の関係を見出すのは難しい

Googleの検索は便利だ。他に誰か知っているとは思えないようなマイナーな用語でもまず間違いなくヒットするし、しかもその情報は全世界から集めてきてくれる。こんな情報探索ツールの存在が有ったからこそインターネットは発展してきたのだろうと思う。もはや検索エンジン無しの世界など想像出来ないほどだ。

でも、Google検索エンジンが教えてくれるのは、断片的な情報に過ぎない。その情報がどのような背景を持ち、どのような位置付けにあって、どのような流れで出てきたものなのか?と言った関連情報までは教えてくれない。かろうじてヒット件数という情報が出るので、その数値の過多で情報の普及度が分かる程度だ。断片的に得られた情報をどのように解釈し、全体の中でどう理解していくかという点については、まだ検索を依頼する人間側に委ねられている。

ソフトウェア開発も同じで、仕様書やソースコードから個々の情報は得られるものの、その断片を繋ぎ合わせて理解し、全体像を確実に納得する点に難しさがあるように思う。仕様書の同じページに記載された仕様なら、容易に気が付くしその相互関係も分かりやすい。しかし、離れたページに存在する複数の仕様を理解して、その背後に隠れている仕様を読み解くということになると途端に難易度が上がってしまう。例えば「仕様書Aと仕様書Bから、このような仕様が導き出されます」とはもっともな指摘だが、仕様間の関係を見つけ出して矛盾や問題点を指摘来るのは、ある程度の経験を積んだ開発者にしかできない芸当だろう。

「覚えておく必要はない。検索すれば良い」というのは確かに現代における一つの真理だが、それは検索というアクションを行って初めて分かる事だ。一つの仕様の文章を読んだ時、それに関連する仕様を確認するために検索を行う人がどの位いるだろうか?仕様書の相互参照やタグの記載といった工夫により、離れた情報を見つけ出すための手助けをすることは出来るとは言え、現時点の仕組みでは対処可能な範囲に少なからぬ制限が残ってしまう。離れた情報を結びつけられるという意味において、優れた開発者の持つ経験やノウハウに勝るものは無いように思う。



関連