インプットとアウトプット |
[抄録]
インプットとアウトプットは必ず等価であること、このことはコンピュータシステムに限らず、社会システム全般にいえること。あらゆる社会システムは、コンピュータシステム同様、[インプット]→[処理]→[アウトプット]という処理フローの集合体でありそれを複雑化したものであることを理解しておくべきだ。
■ 処理の原点は[インプット]→[処理]→[アウトプット]
コンピュータの教科書をひもとくと、その最初に必ずといっていいほど、[インプット]→[処理]→[アウトプット]という図が出てきます。コンピュータというものは、インプットを受けて処理をし、アウトプットをするものだという概念をもっとも単純化したフロー図なのです。この[処理]の部分がコンピュータの役割なのですが、ここが次第に複雑化し、それとともにブラックボックス化しているのがコンピュータシステムの現状というわけです。
ただ、どれほど複雑化し、ブラックボックス化したとしても、処理の前後においてインプットとアウトプットは必ず等価でなくてはならないという絶対的な原則があります。自動販売機を例にとってみましょう。内部がどういう構造になっているかは利用者にはブラックボックスですが、200円を入れて好みのボタンを押すと、120円の缶ジュースと80円が返ってきます。これが違うジュースだったり、おつりが足りなかったりすると、たちまちクレームになってしまうわけです。
■ 行方不明になるインプットデータ
こんなことは当たり前、といいたいところなんですが、コンピュータシステムの世界では、最近、これが当たり前でないことが往々にしてあるということに気づきました。わたしの場合、一般企業のシステム部門に勤務していますので、日常的に業務システムの運用上のさまざまな報告を受ける立場にあります。一番多い報告が、システム上のトラブルや人為的ミスにより業務面へ影響を与えた場合に報告される、いわゆる障害報告といわれるものです。
今日も担当者がやってきました。「で、双方のサーバのマスタに非同期がありまして、受け取ったトランザクションをオミットして・・・」「以前からこのコードのデータはオミットする仕様になっていまして・・・」などとなにやら難しそうな説明を繰り返してくれるので、「それは簡単に言えば条件に合わないデータを削除したということなんだね。それなら当然、エラーリストなりログなりに出して利用部門にもわかるようになっているよね?」と問いかけると、担当者いわく「いえ、オミットしているだけです・・・」。
■ インプットとアウトプットは必ず等価であること
ホストコンピュータと云われた大型汎用機の世界では、処理実行時に実行レポートなどを出力していて、オペレータという専属の人間がインプット件数とアウトプット件数をチェックするという時代もありましたが、サーバやパソコンといったオープンシステムの時代にはいると、次第にそういったチェックへの意識は薄れて来ているようです。もちろん、その背景には高度なサーバ管理システムなどもあって専任のオペレータがいなくても、以上があれば携帯電話にメールを送信して知らせてくれるなどより高度な対応を実現してくれていることもあります。インプットとアウトプットのチェックなどもそういうチェックポイントを組み込んでおいて、異常があれば通知することなどきわめて簡単なことです。しかし、それをシステムに組み込む人間に意識がなければ、彼らの言葉を借りれば、簡単にオミットされて、コンピュータの中で迷子になってしまうデータが誕生するわけです。
インプットとアウトプットは必ず等価であること、このことはコンピュータシステムに限らず、社会システム全般にいえることだと思います。あらゆる社会システムは、コンピュータシステム同様、[インプット]→[処理]→[アウトプット]という処理フローの集合体でありそれを複雑化したものです。ビジネスモデルにせよ経営改革にせよ、常に考えておかなくてはならないのが、どういうインプットからどういうアウトプットを生み出すか、ということなのです。もちろん、インプットとアウトプットが必ず等価になるというのは、ひとつの価値基準においてであり、別の価値基準からすれば、まったく新しい価値を創造したり、従来の価値を増幅したりするものであることは云うまでもありません。