FileMakerプラットフォームにおける設計・実装の要点
ここからは、より具体的にFileMakerプラットフォームで、特に開発規模の大きくなりがちな基幹系システムを実装する場合の注意点について解説していきます。
1. DOAに忠実にデータモデリングする
FileMakerプラットフォームは、SQLによるデータハンドリングを行いません。しかし、DBエンジンとしてはリレーショナルデータベースモデルです。そのためデータモデリングに関しては、DOA(DataOrientedApproach:データ中心アプローチ)で提唱されているモデリング技法を使って設計します。独自のデータベースエンジンだからと言って奇をてらったような設計をする必要はありません。
一部、FileMakerのDBエンジン特性に応じた調整をすることはありますが、過度に意識すべきものではありません。基本に忠実なモデリングが極めて重要です。
2. 必要十分なリソース環境でFileMaker Serverを動かす
FileMakerプラットフォームは、小さく始めて大きく育てるアプローチにアドバンテージがあります。なので、システムの成長に応じて柔軟にスケールアウトできる環境で運用することが望ましいです。
そして、FileMaker Serverには十分なリソースを割り当てることが重要です。いくら設計や実装方法を工夫しても、サーバーリソースがカツカツだと、当然ですがシステムを快適に使うことはできません。
また、FileMaker Server には、「システムが遅い」という事象が発生したときに、その原因究明の助けとなるいくつかの機能が実装されています。これらからもたらされる情報を元に、ボトルネックの原因がサーバリソースなのか、システム設計の問題なのかなどさまざまなことが解析可能です。
3. 開発ルールを設ける
ある程度の規模が想定されるシステムであれば、FileMakerでもチーム開発を行うことが一般的です。このときに必要なのが開発ルールです。
FileMakerも「ローコード」とはいえ、独自仕様のコード(スクリプト/関数)を書くので、以下のルールはしっかりと設けるべきです。
- ファイル/テーブル/フィールド/テーブルオカレンス/スクリプト/レイアウト/変数/カスタム関数などの各オブジェクトに対する命名規約
- ファイル分割ルール
- リレーションシップグラフの描画ルール
- 共通ライブラリ(スクリプト・関数)の活用
4. 無料公開されている開発者向けのドキュメントをしっかりと読み込む
Clarisのオフィシャルサイトには、開発者に向けた大量かつ有益なドキュメントが豊富にそろっています。歴史の浅いローコードプラットフォームだと、このあたりのドキュメントが充実していない、もしくは英語のみで提供されているというケースが散見されますが、日本法人の歴史が20年以上あるFileMakerは一日の長があります。
例えば、DBエンジンの性能について深く学びたい場合は、プロダクトドキュメンテーションセンターに公開されている「FileMakerパフォーマンスを引き出す」というドキュメントがとても役に立ちます。
一方、FileMakerの歴史が長いこともあり、インターネットを検索すれば、さまざまな情報が公開されています。しかしその内容は、非常に古いバージョンでのみ有益だった情報や、中には「FileMaker的魔改造」を推奨する怪しい情報もかなり含まれます。情報公開している技術者のバックグラウンドによって玉石混交なので、まずはオフィシャルのドキュメントをしっかり読み込むことをおすすめします。
5. 信頼できる技術アドバイザーを頼る
FileMakerプラットフォームでシステムを実装する場合、特に経験が浅いうちは信頼できる技術アドバイザーを頼ることをおすすめします。
FileMakerで開発するシステムの範囲が、基幹業務をサポートするシステムで、かつ常時数十人以上のユーザがそのシステムを利用する場合、特にしっかりとした技術力のあるアドバイザーからサポートを受ける価値があります。
これは何もユーザ企業の内製化に限ったことではありません。プロとしてソフトウェア開発を請け負うITプロフェッショナルに対しても、FileMakerプラットフォームにおける開発経験が乏しい場合には、技術アドバイザーを置くことを推奨しています。
いくらFileMaker以外のソフトウェア開発プラットフォームで豊富な経験があったとしても、いきなりFileMakerでしっかりとしたシステムを構築するのは不可能と言っても良いでしょう。
古い先入観から誤解されがちなFileMakerのDBエンジン性能
FileMakerというプロダクトは非常に歴史が古く、特に初期のころはMacOS用のカード型データベースだったということもあって、非力なデータベースエンジンしか搭載していないと誤解されることがあります。
また、一般書籍やWebで検索できる情報なども、初心者を対象にしたものが多く、ある程度の知識と経験を持ったITプロフェッショナル向けの書籍はほぼ皆無と言ってもいいことから、極めて小規模で簡易的なソフトウェアしか作れない……という印象を与えてしまっているようです。
実際に私自身も、FileMakerを深く知る前まではそのような先入観がありました。しかし、特にこの数年でFileMakerのデータベースエンジン性能は飛躍的に向上しました。
もちろん銀行の勘定系システムや、証券会社の株取引を管理するシステム、また常時数千・数万のアクセスが発生するWebシステムを動かすプラットフォームとして、FileMakerはふさわしくないかもしれません。しかし、今回ご紹介したような規模感で、かつユーザが社内限定ということであれば十分に対応可能です。
まとめ
今回は、FileMakerプラットフォームのデータベースエンジンの性能にフォーカスして、弊社でサポートさせていただいた具体的な事例をご紹介しました。FileMakerのことをあまり知らない、以前の私のようにやや懐疑的に思っているITプロフェッショナルの皆さんに、FileMakerの魅力が伝わればいいなと思います。
次回は、FileMakerが持つ他システム連携をサポートする機能にフォーカスして、その魅力をお伝えします。
内製化支援の事例とClaris公式リソース
- 岩佐さんが内製化支援を行ったClaris FileMaker導入事例
工場の作業台に iPadを設置、製造の記録を手書きからデジタルへ:樫山工業株式会社
設計、営業、生産管理業務を一括管理、年間400時間を削減:いそのボデー
- Claris FileMakerについてのリソース
開発者向けのナレッジベース、公式トレーニング教材、コミュニティの案内などのリソースを紹介しています。