動かないコンピュータ・その2・理由

【なぜ動かないコンピュータは出来るのか?】

そもそもシステムの導入に失敗するとか、コンピュータが動かないという理由は何だろうか?あなたのポケットにはスマートフォンが入っていて普通に動くはず。様々なネットワークに接続され、物凄く複雑な動作をするシステムが数万円で手に入る。これと比較すれば会社のシステムは単純な事をやっているように見える。

SNS

まず、スマートフォンやインターネットで行っているサービスは全く同じ内容を数万から数百万、更には億単位の人が使っている。それらと比較して非常に少数のユーザーしか持たないのが企業のシステムである。これにあなたは反論するかもしれない。導入したのはパッケージで数万社での利用実績が有る。そこまでは行かなくても仲間の企業で既に導入済みで順調に動いている。ではあなたは他のユーザー企業がそのシステムを導入した経緯や歴史を全て知っているのだろうか?あなたの会社のスタッフとそれらの会社のスタッフは全く同じ考え方で行動するのか?スマートフォンやインターネットで動いているシステムはシステムと言うよりもサービスに近い。多くが無料に近くて、利用する個人の事情に合わせた事は何もやっていない。せいぜいグループ分け程度でしかない。機能も多いように見えて、そもそもは単機能から開始して安定すると機能が増えを繰り返し今に至っている場合が大半である。

動かないコンピュータの問題が最初に発生するのは「今までのコンピュータのデータを新しいコンピュータにデータコンバートする場合」である。その導入に成功している企業がコンバートに成功している事例がある場合は「元のシステムが何だったのか?」がポイントになる。

データを調べる

数万社が導入に成功しているようなシステムの場合、他のシステムからのコンバート情報は豊富にある。一方、元のシステムはユーザー数が少なかったというような場合には情報自体が無いに等しいので、旧システムの分析が欠かせない。あなたの会社のシステムのユーザー数が極端に少ないという場合、データのコンバートは大変な作業になる事を理解した方が良いだろう。先の実例では「データコンバートについて全ては出来ないので、それ以外はユーザーがマニュアルで行う」と聞いているが、それが大変な落とし穴だった。マニュアルとされた部分はシステムを提供する会社が「費用が出ないので投げた」に等しかった。別の言い方をすれば「全て行うと問題が出た場合にはシステムを提供する側の責任になる」ので逃げたと考えても正しいかもしれない。

 
新しいシステムに移行する場合にデータコンバートの問題は新たなシステムを提供するシステム会社の責任として完了して貰うことは必須だと思うが、どうだろうか?「データコンバートの全ては出来ない」というシステム会社の言い分に皆さんは納得できるだろうか?

データのコンバートは簡単か?

「一部のデータはマニュアル」でという表現は旨い表現かもしれないが、無責任そのものにも感じる。一部のデータが数十人とか数百人といったものなら理解は出来る。事例の場合、顧客の住所など基本情報はコンバート出来たらしい?しかし、販売データやカルテ等の非常に重要なデータがコンバートされなかった。費用が掛かるので中止したのか?そのシステム会社には出来なかったのか?は定かでは無い。基本の顧客データが十万件を超えるその会社では、販売データはその数倍、カルテデータも同様の件数がある。これをマニュアルでと言われた時点で無理と思わなかったのか?不思議だが数ヶ月頑張ったようでも最後は諦めたようだ。実は諦めたとか断念したという事は社内で時間が経過しても社長からの報告は無いそうで「会議でもその話題はスルーでした」と聞いている。

 
データコンバートは元のシステムのデータを新たなシステムのデータの形式に変更する作業だが、簡単に出来てしまう場合とシステムを作るぐらいに大変な場合がある。大半のシステムは別のシステムにコンバートして貰う事は前提として作られていないのである。

リレーショナル・データベースモデルは複雑

システムによっては他のシステムにコンバートされないように様々な工夫をしている例すら珍しくない。年賀状のソフトなどは多くがカード型と呼ばれる形式のデータで管理され、一人の顧客が一枚のカードに全て収まる形式で情報管理されている。この場合はただデータをコピーすればすんなりデータのコンバートは終了する。一方では今から40年少々前に登場したリレーショナル・データベース管理システム(RDBMS)と呼ばれるモデルでは複数のカード型のデータが集合して、初めて一つの顧客データが完成する。分析すれば関係性は理解できるが、それを新たなシステムのリレーショナル・データベース管理システムに置き換えるのは非常に手間が掛る作業になる。殆どの場合コンバートの為にプログラムをコーディングして、かなりの回数のコンバートを繰り返して成功させるという試行錯誤の繰り返しになる。それも専門家の作業であり、多少パソコンを使い慣れた程度では出来る作業では無い。リレーショナルデータベースモデルの代表格であるSQLでは複雑さを競うことが趣味になっているSEすらいるぐらいだ。解析する側としては複雑なIQテストを受けている状態になる。