2010/05/23

システム開発者の言い分

これは、自戒の念を込めての意見であるが、何でも全てコンピュータで処理したり印刷したりしようとしていませんか?
「システム開発者」として確かにパーフェクトに例外のない処理ができればそれは本当に理想的です。しかし、実際は必ず例外的な処理が発生しています。「システム開発者」はこの例外部分も一つの処理系として等価に扱います。そしてその例外を如何にして事前に洗い出し、実際に処理系として構築するか否かの判定を論理立てて決定する行程を要件定義と言います。
「システムが動かない」「システムが使えない」という問題が発生するのは、この要件定義段階で、主幹処理系と例外処理系を明確に分離し、顧客に納得して貰っていないケース、もしくは、例外処理系の為に、主幹処理系の使い勝手が徹底使いにくい。この2つに分類されます。
時に、これが「品質」と混ぜこぜになって収拾不能な状況になっていることが非常に多いです。

主幹処理系の上を流れるデータは、経験的に80-95%。その他は、例外的に自動化できないような条件下にある場合が殆どで、ここは、やはり人間が判断し、手でデータを生成する方が実際に早いのです。
5万人のデータから特定の人を抽出する。こんな場合は、主幹処理系でデータ抽出条件として名前や生年月日など主な項目を選択し、郵送タグシールを発行するという機能であれば、十分簡潔で高速に使えます。しかし、ここに年賀状は送るっていたがお歳暮を去年貰った人で且つ今年取引が有った人を抽出し、お中元の名簿を作りたい、でも官庁関係は除去しないと駄目だからその条件も・・・と延々条件がありこれを全てシステムに載せて使うのは、お中元シールにしたい。官庁関係だけは、暑中見舞いの自動印刷にしたい、くれば可能ですが使う方が大変です。
実際5万人のデータの中で前年取引が、1000件程度、官庁関係の暑中見舞いはがき印刷の条件に当てはまるのは、数十名。こんな場合、現場で手で分別した方が早いのです。

私も年賀状の発行にパソコンを使います。しかし、発行枚数は、50-60枚。年に数回しか使わないインクジェットプリンターは大抵目詰まりしていたりして調整に数十分、インク切れだったりしたら翌日買いに行かなければなりません。データの内容が正しいか見て、テスト印刷。WindowsやOfficeのバージョンが変わってたりして微妙に変。レイアウト修正して再テスト。やっと印刷開始して待つ事、30-40分。実際は、この30-40分で、50-60枚の宛名書きは私には無理です。しかし、前行程の時間や準備も含めて考えれば、不可能ではない程の時間を浪費している。
これが、10毎位の時でもパソコンで無理にやって無いでしょうか?・・・やってました、恥ずかしながら。

何でもシステムに頼り切った結果、結局時間が掛かってしまっている。日本のホワイトカラーが生産性が低いと言われる所以は正にここにありと感じます。本流と例外を分別しないで標準で処理をする、例外があるならそこは少し手を動かせば解決すると判断できる決断力が必要なのだと思います。

半年に一回しか使わないようなものは、万単位のデータを処理しなければならない人間業ではできない事以外、システムに頼っては駄目なんです。正直、そのような要求をする人は大抵凄く仕事が出来る人で社内の信頼も厚い優秀な人が多いです。これは、非常に「システム開発者」にとっては有り難い事です。明確に機能を提供できるからです。しかし、この要求者がそのポジションから離れた場合、何の為に遣っているのか解らず延々負の遺産として爪痕を残してしまいます。

98%の壁という物が、システム開発にはあり、処理データの網羅の範囲、今まで出て来た主幹処理系として扱える範囲の限界点の一つの指標です。98から100までの2%を実現するには、98%を実現した倍のコストが必要とされます。逆に90-95%の範囲に止めるか100%にする為に例外を排除するかすれば、コストは75%程に押さえられます。

結論、コンピュータのシステムで処理するのは、90%処理できれば十分。後の1割は例外を除去するか、手を動かして作業すると割り切れば殆どの人に取って有益なシステムで安価なシステムになります。
デジタル情報万能時代になってしまってますから、「何でもシステムで何とかしよう」と思いがちですが、電気が無ければ只の鉄屑です。アナログな手書きメモや図画はどんな時でも明かりがあれば読めますし。ペンさえあれば、書けます。

0 件のコメント:

コメントを投稿