問題意識ってなに?

技術者が注意しなくてはいけない点として、たとえば簡単な例でいうと、ソフト屋とハード屋の立場の違いというものがあります。私はソフト屋なので、なんらかの手順でデータの正当性を保証するのは当たり前のことだと考えているわけですが、ハード屋というのは、機器が正当に動作することを確率の問題と考えがちのようなのです。
例えばごく単純に言えば、100MHz で動作することを前提としたデバイスがあるとして、これが 100MHz で動くことを保証するには、ハード屋は 120MHz で試験して、正常に動作するものが良品、ダメなものは不良品といった考えです*1
ハード屋の主張というのは全般に、「これは、こういう仕組なので、それはどうやっても無理なのです」とソフト屋泣かせなものが多いです。ソフト屋さんは、どういう仕組で動いているかどうかよりも、「何かを保証するにはどうしたら良いの?」という基準で問題意識を持っています。この違いを把握しないと、議論は常に平行線です。
なんだか難しくなってきたので、とても単純化した例を挙げてみましょう。

ガソリンスタンドでの会話

ここで、ガソリンメーカーの技術者が持っている認識は当然キョクタンであり、かつ多くの場合アヤマリだが、彼が本当にこれを信じ込んでいると仮定しよう。

ガソリンスタンドの店員
ガソリンは引火性が強いということで、御社の技術者が、裸火は最低 50cm は離さなくてはいけないと言っていたのですが、引火してバクハツしてしまいました。どーしてくれるんですか?*2
ガソリンメーカーの技術者
バクハツしましたか…。
店員
そもそも、この 50cm という規格は大丈夫なんですか?
技術者
それは確かに足りないですね。でも、そもそもガソリンというのは空気に触れればバクハツしてもしようがないものなんです。
店員独白
そんなばかな。
技術者
いや、ガソリンを扱う以上、バクハツは避けられませんヨ。ガソリンの組成というのはそもそも(中略)で、これは有機化学的にいうと(中略)、また空気の組成というのは(再度中略)、なのです。

ここで、店員はソフト屋で、技術者がハード屋である。もっと言うと、前者は顧客的立場で、後者はベンダーの技術者だ。店員は単純かつ現実的に、ガソリンスタンド店舗でのバクハツという危険を避ける方法が知りたいのに、技術者はガソリンの化学的特質についてしか興味がないのである。

店員
じゃあ、どうやったら安全を保証できるんですか?
技術者
それは難しい質問ですねえ。現実的には無理だと思いますよ。

こんな調子なのだ。話をソフトとハードに戻して、大元のハード設計者はおそらく、ソフト技術者を満足させることができるような解法を盛り込んでいるはずなのだ。いや、そう信じたい。しかし取り巻きのハード屋はしばしば、この点を忘れて、ハードの特質的にソフト屋の要求に応えるのは至難の業だと堅く信じてしまうことがある。
この結果がどうなるかというと、ハード屋(あるいはベンダ技術者)は誤りにいつまでも気づかず混乱を広げてしまう。一方ソフト屋(あるいは顧客)は大抵自分で勉強してジッケンして*3、どんどん優秀になっていくか、あるいはハード屋のいうことを信じて成長しないままなのだが、私の経験上、大抵前者が多いようだ。
最後に、私はソフト屋出身なので、かなり偏見が混じっているであろうことをお詫びしておきます。

*1:本当は、もっとややこしいのでしょうけれど。

*2:現実、こんな事故があったら大変だ! あくまでも例です。

*3:実験結果は演繹な解はもたらさないけれど、実験しないよりはマシだ。