判断の上層レイヤ

僕はもともとプログラミングが好きでIT業界に就職しました。
今年で就職してから3年目ですが、仕事をしていく中で痛切に感じていることがあります。
それは、「できる・できない」と「やる・やらない」を混同しないということです。
別の言葉にすれば、「技術的に可能かどうか」と「実際にやるべきかどうか」をわけて考えるということです。
銀河英雄伝説の言葉を借りれば、「戦術的判断」と「戦略的判断」になるでしょうか。
ソフトウェア開発の現場にいると、両者を区別しない人の多さに驚かされます。
不具合の回避策を提案すると、誘起に対する検証もせずに実装してしまう人。
「こういう機能付けられませんか」という要求に、他機能との整合性を考えずに実装してしまう人。
趣味のプログラミングとはわけが違うんですから、技術的な可能性の先にあるものを考えないといけないと思うのですが・・・。


下層レイヤとして、まずできるかどうかを考える。
上層レイヤとして、やって問題ないかどうかを考える。
ソフトウェア開発に限らず、すべての物事には両レイヤでの判断が必要になるのではないでしょうか。


Sony BMGrootkit問題や構造計算書偽造問題を見ていると、商戦略としての上層レイヤ以前に、商道徳すらない人が多いようですけど・・・。