INTER-Mediatorの開発モデル
2011/8/1
INTER-Mediatorの仕組みは、現在のソフトウエア工学の中心的なアーキテクチャである「レイヤー」とは異なります。適切な名前がないのでここでは、「2階層的システム」と称することにします。データベースと、Webページがダイレクトに結合するという意味合いを取りました。
現在のソフトウエア工学が、3階層システムやMVC、あるいはビジネスレイヤーといった考え方を元に作られて大きく成功していることは言うまでもありません。これらの手法は、巨大化するソフトウエア開発というところに焦点が当てられています。アーキテクチャ的な面に限らず、1年を超える開発期間や、10年を超えるメンテナンス、さらには何十人ものスタッフによる開発、こうした開発をいかに効率良くこなすのかといった点に重点が置かれています。
一方、現代のソフトウエア工学では、「小さな開発」についてはあまり取り上げられる事がないように思います。個人あるいは部門、小規模な組織といった単位での開発は、前出の大きな開発にくらべて、ともかく予算が限られているため、ビジネスとしては小さいもとなります。言い換えれば、メジャーな企業は取り組むことはあまりない領域と言えるでしょう。
かくして、企業全体で使うような大きなシステムは構築されても、小さな単位での業務のコンピュータ化は進展しないこともあります。結果的に、Excelで作ったワークシートをメールでやり取りするという状況に陥り、仕事よりそのものよりもファイル管理に時間が割かれるという状況が生まれます。
こうした小さな開発をまかなうソフトウエア製品としては、FileMakerやAccessといったものがあります。これらを専業としている開発会社も小規模ながら存在しますが、一方、ユーザ自身が自分のために作る事もあります。つまり、ソフトウエアのプロフェッショナルではない人が開発者となる側面が目立つのです。
大規模な開発のノウハウを小規模なものに持ち込むということももちろん可能です。しかしながら、たとえばドキュメンテーションを取っても、たくさんの開発者が概念や設計情報を共有するためのドキュメンテーションと、1人の現場で働いている人が片手まで作るデータベース向けのドキュメントは自ずと異なります。多数いる場合は、労力をかけてドキュメンテーションを充実させないといけませんが、1人の場合はいかに最低限に必要なものを抽出してドキュメント化するのかが非常に大きな問題です。また、ドキュメントそのものの作成がかえって「余計な仕事」と評価される場合もあります。
つまり、小規模な開発には小規模な開発の方法論があり、それは必ずしも大規模な開発とは一致しないと言えるでしょう。
小規模な開発では、むしろ、2階層的システムの方が、適合する場合があります。FileMakerやAccessが使われている理由は、2階層的なシステムの手軽さがあるからです。こうした開発は、しっかり設計するよりも、短いスパンで結果が得られ、実際に試してみるということが望まれることです。工数をかけずに一定の結果を出すためには、設計をしっかりやるよりも、まずは作って考えるということが望まれるわけです。そして、だめであっても、工数がかかっていないのなら容易に捨てる事ができます。
INTER-Mediatorはこうした2階層的システムをWebアプリケーションで構築する事を目指したものなのです。FileMakerもAccessも一定の評価はできますが、一方で自社製品に囲い込むための仕組みがシステム構築の足かせになる場合もあります。特に、いずれも、Webアプリケーションへの展開に手を焼くユーザが多いのも事実です。INTER-Mediatorなら、まったく同様な作業をするわけではありませんが、FileMakerやAccess並みの手軽さでWebアプリケーションが作成できます。
大規模な基幹システムが稼働する中で、身の回りの業務はExcelというのは、実は10年以上前と何も進歩がないと言えます。汎用ソフトを使い込むのは悪い事ではありませんが、その中のルーチンワーク的なことはシステム化することでより効率的に業務をこなせるようになります。そこを阻害するのは、手軽な開発手法が広まっていないからです。大きな予算で大きなシステムを作ることばかりではなく、小さな予算で小さなシステムを同じように効率的に展開するということで、中小企業だけでなく、大企業の部門などでもITのメリットを享受できるようになるのではないでしょう。INTER-Mediatorはそうした「システム開発像」を実現するものです。