OracleとFileMakerの出会い
私はOracleの認定インストラクターという経歴が功を奏して、最近は、Oracle以外のデータベース(以下、DB)を勉強させていただく機会に恵まれています。Oracle使いである私にとっては、DBはエンタープライズであろうがミドルレンジであろうがOracleがあれば十分と思っています。そんな私がFileMakerとは、どういう風の吹き回しかと思われることでしょう。
DBはいろいろな層の人たちが使用しています。経営判断にデータを使用している人もいれば、そこに至るまでのデータを日々蓄積している人もいます。
数年前、ある会議に参加してドキッとしたことがありました。
「社内システムのデータは信用できないんです」
財務部長とその配下の業務担当者の報告数に違いがあったのです。「データの出所もとは何だ」という役員からの問いに「私が管理しているExcelファイルです」と業務担当者は答えました。「社内のシステムを使用するというルールになっているだろう」と役員が言うと、「ですが、システムのデータは信用できないので、システムとは別に自分でもExcelで管理しているんです」と答えたのです。私がドキッとしたのはこの発言です。
プログラムの瑕疵(かし)という理由ではなく、ユーザーの運用方法の変化によりデータが陳腐化していくことがあります。将来の拡張性や柔軟性を考慮した設計をしていなかったからだ、と言われればそれまでかもしれませんが、設計当初の想像を超える使い方が発生するのが現状ではないでしょうか。同僚のやっていることをよく観察してみると、AccessやExcelのVBマクロを駆使していろいろなデータを管理しています。
現場担当者がシステムを作らざるを得ない局面
先日は、人手が足りないから借り出されたという法務担当者が、500人弱のセミナー参加者のアンケート入力シートと、それを集計するVBマクロを2日かけて作っていました。2日かかることを笑っているのではありません。「今忙しいから、作ってあげる時間なんて取れないよ。プログラムを考えている間に、人海戦術で集計するほうが早いんじゃない」とSEから突き放された、SEでもない彼らが自分たちなりにシステムを作り上げたことに拍手してあげたいのです。
現場のニーズと社内システムとの乖離
ちょっと古い邦画ではありませんが、「データは現場で生まれている」のです。上の人が開発会社と相談して作ってくれたシステムは、出来上がった時点で既に現場の状況と少し「ずれ」が生じています。しかも、それを指摘したところで対応したものが出来上がってくるのは、また数ヶ月先です。だったら、ちょっとの違いは自分の手元で管理しようと現場の人間が考えても当たり前のことでしょう。また、SEもそうしてくれと思っています。
現場担当者によるデータ管理のススメ
だったら、データは現場で作ってもらいましょう。そして現場が「必要だから」と溜め込んでくれたデータをOracleから利用できるようにして、経営に活用すれば良いのです。
データは、必ずしもOracle Database(DB)に物理的に取り込まなくても、アクセスできる方法はあります。例えば、「外部表(図1)」という機能をご存知でしょうか?
Oracle 9iから提供されている機能ですので決して新しい技術ではありません。OS上のデータをあたかもDB内のデータかのごとくSELECTすることができる機能です。そこから先の話は後述するとして、今回は、SEの視点ではなく現場の視点でデータベースを作ってみましょう。データベースは従来どおりAccessやExcelでもいいですが、ここではFileMakerを使ってみることにします。