エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

分析、即、実装

今日のレビューでは、分析から、設計をすっ飛ばして、実装してしまった例に出くわしました。本人は、分析ではなく設計のつもりだったようですが、それは、要求された仕様を整理しただけの、分析と呼ぶべきものでした。「つもり」だったとしても、次に、本当の設計の手順を踏んでくれれば、問題ないのですが、次に来たのは、実装でした。
ちょっとまって、その実装に至った経緯は?と訊ねると、分析した内容を説明してくれます。じゃぁ、それを実現するために、どんなふうに定義したの?と訊ねると、実装の説明をしてくれます。そこに飛躍があることを、本人は意識していないようです。何度となくそんな会話を繰り返して、わたしがなにを知りたいのかはわかってくれたようですが、わたしが何故そこをはっきりさせようとしているのかは、わかってもらえなかったかもしれません。
この当人に取って、分析から実装に至る経路は、自明なことのようです。だから、その経路の説明を求めても、説明することができない、という事態に陥ります。プログラマとしての経験が長いことも、それに拍車をかけたようです。
思考を表現するのはなんと難しいことか、思考を表現してもらうことはなんと難しいことか、改めて身につまされる思い。非常に疲れるレビューでした。