非定型業務の効率化が必要

工場の生産ラインやチェーン店舗の飲食店などでは作業がマニュアル化され、誰でも同じ手順で効率よく作業できるように整備されていることが多い。最初にマニュアルを作るのは少々大変だけど、人が入れ替わってもどんな立地でも同等の作業が実現できるというのは、管理側にとっては大きなメリットだ。働く方だって、いきなり「自分で考えて必要な作業をして下さい」なんて言われても何をどうやったらよいのか分からないから、仕事を手っ取り早く始めるための作業手順としてマニュアルの存在価値は有るのだと思う。

そんな定型業務は、例えばプロの視点で分析すれば無駄な箇所を見抜いて改善をすることが可能だが、ソフトウェア開発のような非定型業務が続く現場での適用は少々難しい。作業を再び行うかも知れないけれど、同じ対象に対して同じ手順を何度も繰り返すわけではないので、作業をマニュアル化することは出来ないし、仮に作れたとしても他の人が同様に使えるとは限らないだろう。属人性が強く、一過性の作業が続く開発現場に、マニュアルの出番は少ないのかも知れない。

では、開発現場に改善の余地がないのかと言うとそんなことは無くて、実際にはムダだらけのように感じることが多い。例えば、こんな作業は開発現場でよく見かける光景だが、典型的な無駄と言えるだろう。

川口氏が「だめな例」として挙げたのは例えば以下のような状態だ。
・テスターにバグ修正のメールを3回も送った: メールを送る手間がもったいない
・コードをcut&paseteしている: 同じことを何回もしている
Googleで検索してオンラインのAPI javadocを見ている: ロードする時間がもったいない
・System.out.printlnでデバッグ: あまりに効率が悪い
これらはそれぞれ貴重な時間を無駄にする例だという。もしこういうことをしているのであれば川口氏は「責任を転嫁する」「とにかく楽をする」ように心がけることで改善するべきとする。

http://journal.mycom.co.jp/articles/2005/11/09/javaone4/index.html

開発者が、つまらない単純作業を延々と繰り返している様子を見ると呆れてしまうし、そもそも自らの作業を効率化できない開発者が、他人の作業を効率化するためのツールを作るなんて冗談としか思えない。自分の事は改善できないけれど、他人の事なら改善できるとでも言うのだろうか?数秒や数分を無駄にしたところで責任を問われることが無いのは開発者の特権かも知れないが、その分、効率を改善するための優れたアウトプットを生み出す責任はあるし、自らの作業効率を高めるための工夫は欠かせないと思う。



関連: