新しいWebアプリケーションサービスはカスタマイズ柔軟性が鍵に

いきなりタイトルに結論を書いてみたが、これは Web CMS (Web Content Management System) 開発に長く携わってきた経験からくる強い実感でもある。


「海外はパッケージ製品の仕様に運用を適合させようとするが、日本は運用に仕様を適合させようとして、必ずカスタマイズ要求が発生する」などといったことがよく言われるが、別に日本人でなくともコストさえ見合うなら業務内容にフィットしたアプリケーションがいいに決まっている。
だからこそ、Coghead ( http://www.coghead.com/ 。日本語の記事は http://japan.cnet.com/special/media/story/0,2000056936,20208547,00.htmhttp://jp.techcrunch.com/archives/coghead-goes-live-build-applications-visually/ 等) のようなサービスが脚光を浴びるわけだ。
洋の東西を問わず、「自分にぴったりのアプリケーション」へのニーズは強い。


しかし、アプリケーションのカスタマイズを可能にすると一口に言っても色々な解釈があるが、特に重要なのは「第3者によるカスタマイズ可能性」であると考えている(逆に、アプリケーション製造者の手によればカスタマイズが可能であるのは当然のことであり、やるかやらないかという判断だけの話になってしまう)。

「第3者によるカスタマイズ」が可能であれば、大きなメリットが3つある。

  • 業務・運用を最も把握している顧客自身*1がカスタマイズ作業を行うことができる
  • 顧客との間に入る中間者がカスタマイズを行うといったビジネス機会が創出されうる
  • アプリケーションに多様性が生まれる


顧客自身は(場合によっては中間者も)たいがい技術的知識はほとんど持っておらず、カスタマイズをやらせるなんてどうしたって無理に決まっている……と、思ってしまうだろう。
が、カスタマイズと呼ぶには気が引けてしまうような軽微なレベル、例えば画面デザインの変更、画面上の文言調整、ヘルプへの追記、メニューへの外部リンクの追加、などといった「見た目」の調整がきく(そしてそれが技術者でなくても可能)というだけでも意外と大きなアドバンテージとなりうる。
アプリケーションの運用者は、ほとんど必ず「使わせる人(管理者)」と「使う人(現場担当者)」に分かれており、「使わせる人」はガイドラインという名の様々な制限を設けて、「使う人」の利用手順や成果物をコントロールしたいと思うからだ。
同種のサービスで競合した場合にも、これが結構差別化ポイントになりうる。
しかしながら、このあたりの話は技術的にはあまりおもしろい所ではない。


技術的に興味深いのは、やはり「多様性が生まれる」という部分だろう。
人は自由裁量を許せば許すほど、どんどん「思っても見ない使い方」をしてくれるものだ。
それによって、アプリケーションが設計者の思惑を離れて、全く別の働きをし始める。
例えば、研究者たちが論文を公開・閲覧するために作ったシステムだったのが、いつしか個人や企業の情報発信、小売りサービス、会員向け有料サービスなどの様々なサービスの基盤として使われるようになるようなイメージだ。
そんなシステムが一体どこにあるのかって? 今見ている WWW&ブラウザが、まさにそのシステムに他ならない。


まあ、WWW くらいの成功をいきなり夢見るのは大それたことだろうが、WWW の仕組みや生い立ちから「多様性を持つアプリケーションが備えるべき柔軟性」のヒントを得ることは可能だ。
それは次の2つに集約できるのではないかと考えている。

インターフェースは極力シンプルに

凝ったインターフェース(ユーザインターフェースだけでなくAPIも含む)、つまり何か特定の運用やデータに特化したインターフェースでは、「思っても見ない使い方」の生まれる余地が少なくなってしまう。

データに解釈の余地を残す

データの構造や用途を業務に特化すればするほど、アプリケーションのパフォーマンス面では一般的に有利になるし、またテストケースの量も抑えられる可能性が高いので、どうしてもそっちに振られがちだが、そうしてしまうとやはり工夫の余地が少なくなる。


つまり「データ構造に一定の汎用性を確保しつつ、シンプルなインターフェースの組み合わせによりアプリケーションを実現する。データの解釈とインターフェースの組み合わせをカスタマイズ領域とする」が答えだ。
言語化するととても当たり前のことを言っているようだが、逆にこうして明確に言語化されたことで、世のWebアプリケーション(あるいは自ら開発しているアプリケーション)が、これを満たしていそうかどうかも見当が付いてしまうだろう。

*1:必ずしもそうでもないことも少なくないが(苦笑