これ僕.com:行動分析学マニアがおくる行動戦略

意図と行動のギャップから生じる「不自由さ」への挑戦。果たして僕たちに自由はあるのか?

「不自由による不自由」と「不自由による自由」

開発プロセスやコーディング規約、チームの決め事・・・つまりルール。ルールとは何のためにあるのだろう。ルールがあると、何もない状態に比べた時、当然ながらなんらかの行動上の制約を受ける。でも、世の中にはその制約が足かせになるケースと、効果的に機能しているケースの2種類があるようだ。前者はルール至上的で思考停止に陥っている(官僚的)。後者は寧ろルールがあることで創造的になり、目的達成へ向けて効率的になる。この違いは何なのだろうか。
で、ルールの目的から考えてみた。ルールが設定されるのは、そのルールが無いと困った事態になるからだ。困った事態というのは、そのチームや組織が目的を達成しようとする過程において、色々と煩わしい事象が発生し、非効率になってしまうことを指す。例えば、チームが成功することに比べれば、どうでもいいようなコーディング上のスタイルについて延々と議論してしまうとか・・・。"{"の位置やインデントの文字数、interface名の先頭に"I"を付けるか否か、etc・・・これらは単に決まっていれば良いだけのことだ。だから、ルールの目的とは、こういった瑣末で煩わしい事からチームメンバーを解放し、本当に考えなければならないことに力を集中できるようにすることにあるはずだ。
ルールが本来の機能を果たさなくなる時、次のようなことが起こっているように思う。

  • 「ルールを作る」という目的が、チームの目的より上位になっている
  • 「ルールを守る」という目的が、チームの目的より上位になっている

手段の目的化と言っても良い。ルールを作る/守るという目的より上位に、チームが達成すべき目的を意識していれば良いのだが、これが逆転しているのだ。チームを煩わしさから解放するのではなく、まるでロボットに指示を出しているかのように、多くの行動を規定してしまうようなルール。あるいは、ルールから外れようとする時、本来の目的達成に寄与するのはどちらかという「判断」を避け、機械的にルールの遵守を要求するような運用。これらは全く意味が無い。というか弊害。チームは非効率になり、本当に必要なことに割くための時間は減り、成果物の品質も低下する。この傾向は、ルールの設定者が現場のことを知らないまま、そして知ろうともしないままルールを決めてしまう場合、より顕著になるように思う。また、例え現場を知っていたとしても、頭でっかち理屈優先でルールを設定すると、似たようなことになる。
ルールは確かに必要だ。でも、ルールを設定する目的を忘れてはならない。ルールを運用する際、本来の目的を忘れてはならない。ルールを至上のものと考えず、チームの目的に合わなければ、ルールそのものを変えたり、捨てたりすることも必要になるだろう。チームにとって、ルールは手段なのだから。
え?上が決めたルールなので逆らえない?そんなの体裁だけ整えて、さも守っているようにみせかけちゃえっていうか寧ろ無視してしまえぇぇぇぇぇ!(暴言)