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

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

信号無視とルールを破る時

深夜、赤信号を無視するのをみかける。法的には良くない。でも、問題はおきない。それは信号を守るというルールが、その状況においてはあまり意味を成さないからだ。信号を守るというルールは、道路を利用する人達がお互いに安全に利用できるようにするために存在する。あるいは、道路をより円滑に利用できるようにするために存在する。他に利用する人がいない深夜において、信号を守るのは、本来の目的から考えれば全く意味がないどころか、円滑な利用という観点においてはむしろマイナスに働くことさえある。

さて、一方で赤信号を無視して事故にあう人もいる。それは信号を守るというルールが、その状況において有効に機能しているからだ。ルールを逸脱することで、ルールが解決してくれていた問題が表面化し、事故にあってしまう。

同じ赤信号を無視していて、事故にあう人と事故にあわない人がいる。両者の差はいったい何だろうか?運ではない。無意識にしろ、意識的にしろ、ルールを破っても問題が起きないことを、あるいはルールを破る方がより効果的であることを、判断できるかできないかの差だ。で、これと同様のことはソフトウェア開発にも言える。様々なルールが決められたプロジェクトがあったり、あるいは標準プロセスみたいなものが定められている企業もあるだろう。それらのルールは、状況次第ではそれを守ることが必ずしも有効とは限らない。破りどころを心得て、適切な時・状況においてルールから逸脱することも、ソフトウェア開発を成功させるには必要である。

ルールを破る時・状況を判断するには、そのルールが何を解決するために存在しているのか知っている必要がある。同時に、そのルールが解決しようとしている問題に対して、ルールを破るという行為が、ルールを守るという行為よりも有効に働くであろうことが判断できなくてはならない。それが分らないなら、まずはルールに従ってみること。熟練者がルールを破っているのをみて、それを初心者が「あ、これ守らなくてもいいんだ〜」と真似てみても痛い目をみるだけである。熟練者は、ルールを破ると同時に様々な判断を背後で行っているのである。

P.S. このエントリは信号無視を推奨するものではないので、そこのところを宜しく。他に例が思いつかなかった・・・。orz