1.はじめに
コンピュータ技術は日々進歩し、若いエンジニア達は新しい技術を習得したいと日々努力していると思います。また、企業も新しい技術を取り入れなければ他の企業から後れを取る為、技術者の育成に余念がないのではないでしょうか?しかし、ユーザは新しい技術をどの様に捉えているのでしょうか?エンジニアとユーザの考え方の溝はまだ深いかもしれません。
2.序論
十年くらい前に、初めてプロジェクトを任された時の失敗談を書きたいと思います。当時、私は製造業会社の、情報システム子会社に所属していました。この頃は、インターネットが一般的に普及しだした頃で、情報システム技術を持った企業や技術者達は最新の技術を駆使した情報システム構築をユーザに提案していたと思います。また、ユーザはそんな提案を聞き、この様な最新の技術を使ったら「さぞかし業績が伸び、コストが節約できるだろう」等と考えていたと思います。私の失敗は、この様な新しい技術を使って情報システムを構築して、実績を作りたいと考えた事から始まりました。
3.本論
先ほど述べましたが、私は当時製造業会社の情報システム子会社に所属しており、親会社向けの情報システムの構築と運用を行っていました。ユーザは親会社の製品設計部門でした。私は運用を通してユーザとの接点を増やし、ユーザニーズを拾い上げていました。そんななか、初めてプロジェクトリーダーとして、小さなシステム開発のプロジェクト立ち上げから終結までを任される事になりました。開発も無事終了しリリースを行いましたが、あまり使われている様子が無く、後日ユーザには、「もう少しユーザ側に立ったシステムを作れないのか?」と強くお叱りを受けました。不満の大きな原因は動作の遅さでした。改善を行いましたが、残念なことにユーザが満足する動作速度を確保できませんでした。
当時、ベンダーに依頼して開発を行ったことも多く、そのシステムはほとんどの場合、「ユーザ側に立ったシステム」ではなかったと私は思っています。このプロジェクトは社内で開発を行ったにもかかわらず、「ユーザ側に立ったシステム」では無かった事に反省をし、その後はユーザが必要とする機能は何かという事を追求するようになりました。
私が初めてプロジェクトリーダーとして任されたプロジェクトの内容は、「現在、EXCELで原材料の価格等を管理する表を作成しており、Eメールで遠隔地にある各拠点と共有している。この表を、データベースを使って管理し、遠隔地にある各拠点で確認や更新が出来るようにしたい。また、更新があればリアルタイムに各拠点で更新内容を確認できる様にしたい。」というものでした。
その時、私の頭に浮かんだのはイントラシステムでした。当時、社内ではクライアントサーバーシステムが主なシステムであり、イントラシステムはあまり使用されていない状況で、開発分野で私を支援してくれるプログラマー達も、新しい技術を使用し習得したいという気持ちが強く、私はユーザにイントラシステムを勧めました。
しかし、webは検索には便利ですが、入力するにはとても不便です。この為、これを解消しようと、大量のスクリプトを埋め込み、機能的には満足できる様なシステムが出来上がったのですが、時代はWindows95/98が全盛で、マシンスペックも確かPentiumⅡが出たくらいの時期でした。当然のように通信回線も細く、この様なシステムがサクサク動くわけが無かったのです。このプロジェクトは、私とプロジェクトメンバーの自己満足で終わったのです。今考えれば、このプロジェクトはEXCELファイルのまま、サーバ共有をしておけば、ユーザのニーズは満たされたと考えています。データベースにする必要もなかったので、断ればよかったのですが、ユーザが本当に必要なものを考えずに、データベースを使ったWebシステムを作りたいと考えてプロジェクトを進めてしまったのは明らかにミスでした。
このプロジェクト以降、システム作りを行う前には目新しいだけで、開発環境を選択していないかを考える様になりました。
次に私がシステム開発者側のこだわりで作られたと思った、システムの事例を書かせて頂きます。このシステムはWindows3.1の時代にベンダーに依頼し開発されたもので、メニューシステムと、メニューボタンをクリックする事で起動する約10個のシステムで構成されていました。ログインして最初に立ち上がるメニューシステムは、手帳をイメージした画像がとても豪華なものでした。MS-DOSの時代ではこの様な凝ったデザインは出来ませんし、VisualBasicを使用していると言うだけで、すごく新しいシステムに感じられました。しかし、このシステムはリリース当初から動きが遅く、ログインするだけで1分もかかるため、評判は良くありませんでした。原因はシステムのサイズの大きさからくるものなのですが、ベンダー側からはそれを改善できないと言われ続けていました。数年後、社内開発能力も向上し、社内でこのメニューシステムの見直しを行ったのですが、手帳の画像を取り除くだけで、メニューシステムのサイズは半分以下になり、ユーザストレスもかなり軽減された様でした。約10個のシステムも同様の方法で改善されました。ベンダーもこうすれば改善されることは知っていたのだと思います。しかしベンダーのこだわり?で改善して頂けなかったのです。凝ったデザインであった為、あくまで予想ですが、デザイン料も高かったのかも知れません。しかし、このデザインは、ユーザにもシステムを管理している私たちにも不要なものだったのです。
4.結論
この結論には賛否両論あると思いますが、極論私はユーザのニーズを満たしていれば、N88BASICのシステムでも良いと思います。ユーザの業務にマッチしていればそれで良いのです。もちろん、N88BASICのシステムでは、将来性が無いのはわかっていますが、最新の技術を駆使して作っても、ユーザにそっぽを向かれてしまう様なシステムでは、N88BASICにも劣ると思うのです。システムを開発するうえで一番考えなければいけない事は、ユーザに支持されるシステムを開発するにはどうすればよいかと言う事だと考えます。
ITコーディネータ 中谷正明