======================================================================================================
エンタープライズ・システムの視点から最新のマッシュアップ・サービスを俯瞰する
======================================================================================================
「Mash up Award 2nd」は、主催企業であるサン・マイクロシステムズ社、リクルート社と協力企業・団体、合計19法人の提供するAPIや開発ツールを利用して、参加者がオリジナルのマッシュアップ・サービスを構築するコンテストである。コンテストの対象となったAPIは合計30本、API提供企業数は16社、提出された作品は合計108作品。殆どが一般ユーザー向けのサービスではあるが、これらの作品を俯瞰することで、エンタープライズ・システムの開発者にとっても気になるポイントを発見できる。ここでは、入賞作品の中から5作品を取り上げ、そこから得られる重要なポイントをまとめていきたい。
なお、「Mash up Award 2nd」の前身となるコンテスト「Sun×RECRUIT Mash up Award」の受賞者による座談会が行われた際のログはこちらである。あわせて参照されたい:http://sdc.sun.co.jp/news/2007/03/feature3.html
最優秀賞を獲得した「出張JAWS」は、ビジネスパーソンの出張手続きをワンストップでサポートするサービス。ユーザーは、出発地と目的地を入力し、ウィザード的なUIに従って、スムーズに経路検索、目的地近くの宿泊施設・飲食店の検索、出張計画書の作成を行うことができる。このサービスで利用されているAPIは、じゃらんWebサービス、ホットペッパーWebサービス(リクルート社)、RailGo(イースト社)、Google Maps API(Google社)など。ビジネスパーソンのリアルなニーズに基づいたサービス設計と、使いやすいUI、実利用に耐えうる実用性が評価された。
作者の黒田氏は職業的プログラマではなく、北海道庁の職員。自身が出張が多く、宿やレストランの手配、出張計画書の作成に手間がかかっていたため、このサービスの構築を思いついた、とのこと。
月1000円の共用レンタルサーバを利用しており、開発言語としては、JavaScriptとASP.NETを利用。ライブラリとしては、別章で紹介するprototype.jsをはじめ、Spry、JKLを利用している。開発期間は、土日×5回の合計10日間。これらのライブラリを使うことによって、ベースとなるUI・機能をスピーディーに構築し、開発期間を短縮することができた。
このように、ライブラリや軽量言語での開発ノウハウの普及、そして、インフラの低廉化によって、職業的プログラマでなくても、リアルなユーザーニーズとある程度のプログラミングスキルがあれば、このように実用性の高いサービスが構築できた、という事実は、エンタープライズ・システムの開発者にとってもインパクトのあるものであろう。このような時代において、システム開発ベンダーは、システムをただ構築するだけではなく、サービスの効用や可用性、パフォーマンスなど、システムを通じて提供されるサービスの価値の最大化を念頭に置いた開発を行う必要があるであろう。
また、特別賞を受賞した「MashUp Freak!」は、利用したいAPIをユーザー自身がブラウザからドラッグ&ドロップで組み合わせ、自身に適したサービスを作成できる”マッシュアップ・サービス構築プラットフォーム”。例えば、「ホットペッパーの飲食店をエリアから検索し、検索された飲食店の位置をGoogleMapsにプロットし、そのお店の評判をテクノラティブログ検索APIを利用して調べる」といったマッシュアップ・サービスをユーザーが自ら作成することができる。作者がα版と明示しているように、一般ユーザーがスムーズに利用できるフェーズに達しているとはいえないが、「ユーザー自身が、一切コードを書かずに、自身が使いたいアプリケーションを開発できる」というシステム開発の未来像のひとつを示唆する非常にビジョナリーなサービスである。
このサービスは、月400円程度の共用レンタルサーバを利用し、PHP、JavaScriptで開発。PHP用のライブラリとしてはSnoopy、PEAR::XML_Unserializer、PEAR::JSON、PEAR::DBを、Ajaxライブラリとしては、Prototype.js、Yahoo! UI Libraryを利用している。1ヶ月強の間、平日・週末の毎日2時間程度時間を割き開発した。開発期間のうち6割から7割程度は、UI部分やデザインの試行錯誤、細かい調整に費やした。また、ローカルテスト用に1GBのUSBメモリにXAMPPをインストールして持ち歩くことで、外出先での開発やデモンストレーション等に役立ったとのこと。
なお、このサービスの作者も、職業的プログラマではない。ライブラリや軽量言語での開発ノウハウの普及によって、所謂プログラミングスキルはコモディティとなりつつあり、職業的プログラマではなくても、アイデアをもつ者が自らサービスを構築できる時代が迫りつつある。しかし、ただの思いつきにしたがってシステムを作るだけでは、企業活動にとって最適なシステムが構築できるとは限らない。開発ベンダーは、今まで以上に要求定義のプロセスを重視し、ユーザー企業の曖昧模糊な想いを整理し、時には不適切な要求を退け、ユーザーのビジネスに対して最大限貢献できるシステムを通じて、高いレベルのサービスを提供していくべきであろう。
セールスフォース・ドットコム賞を受賞したブルーオーシャンシステムズ株式会社作の「ThumbMade for AppExchange」は、事前に登録しておいたメールアドレスからメール送信することで、エンタープライズ向けCRMシステム「SalesForce」上のデータベースを、SalesForceにログインせずとも利用することができるサービス。
営業担当者が出先からCRMシステムを検索したいときに利用するなど、企業活動における利用シーンが明確に想像でき、コンテスト入賞作品の中でも、もっともエンタープライズユースに近い作品である。SalesForceは、第三者がSalesForceに適用するプラグインを開発できる言語・環境や、そのプラグインのマーケットプレイスを提供している。第三者による機能拡張・カスタマイズができるプラットフォームを提供することで、そのプラットフォーム自体の利用者を増やしていく、いわば、自身を中心としたエコシステムを構築しているといえよう。
鼻の利く顧客は、自分たちの手で、既存の自前システムを、このようなプラットフォーム+プラグインという形態へリプレースしようと検討しているかもしれない。繰り返しになるが、システム開発のハードルは急激に下がりつつある。エンタープライズ・システムの開発ベンダーも、システムを作ってなんぼの人月ビジネスから脱却し、顧客に提供するサービスの価値を最大化するためのシステムを提供する、というスタンスにシフトしていくべきであろう。
或いは、自社の得意な分野において、「SalesForce」のようなSaaS的なサービス形態をとるのも一つの手であろう。これまで培った業務知識とシステム構築のスキルを生かして実現する新たな業態として、システムの受託開発ではなく、サービス提供を生業とするのである。うまくエコシステムを構築することができれば、大きな果実が得られるかもしれない。
特別賞を獲得した「FromB beta」は、ブラウザではなく、PC/携帯メールやSkypeチャット(メッセンジャー)を利用した、対話型インタフェースによる情報検索サービス。株式会社内田洋行 MR本部 次世代ソリューション開発センターによって開発された。ホットペッパーWebサービス(リクルート社)、ブログ検索API(テクノラティジャパン社)、ぽすたん(イースト社)などのAPIから検索結果を引き出すだけでなく、富士ゼロックス社提供のネットプリント連携サービスを利用することによって、外出先のコンビニエンスストアでの検索結果印刷を実現している。
実行環境としては、自社の社内開発環境を利用している。Javaのみで開発し、ライブラリとしてJDK1.5.0_11、javamail-1_4、skype API For Java 1.0を、ServletコンテナにはTomcat6.0.10を使用。就業時間後に開発を行い、土日あわせて90時間程度で開発した。メールをインターフェースとして利用した検索サービスは、国内でもニワンゴ社などから提供されているが、短期間にこれほどのサービスを構築できたのは、エンタープライズシステムの開発で培ったスキルと様々なライブラリの活用スキルに負うところが大きいであろう。
スカイプ賞を獲得した「音声認識でハンズフリーレストラン検索 「声探」」は、山手線の駅名をSkypeフォン経由で告げることにより、その駅名を音声認識処理し、ホットペッパーWebサービスから得られたその駅の近くの飲食店を検索できるサービス。月2900円の共用レンタルサーバ上でRuby on Railsによって開発しており、TigerBaumKuchenというプラグインを利用している。開発期間としては、土日x1回に加えて、デザインの調整に平日5日間の一部を投じた。
ITリテラシーが低いユーザーにとっては、ブラウザからワードを入力して検索させるのではなく、音声というインターフェースを用意することで、利用ハードルを下げることができる可能性が考えられよう。
また、携帯電話のブラウザから情報を検索した場合は、検索結果ページをブックマーク等しない限り、後から再度その検索結果を見たいときには再度検索しなければならない。しかし、「FromB beta」のように、メールで検索結果が返ってくる場合、端末上のメーラーでスピーディーに検索結果を確認でき、便利である。多くのユーザーが利用する社内システム等の開発では、このようなちょっとしたユーザビリティ改善策を打つだけでも、塵も積もればなんとやら・・で、ユーザーの業務コスト低減につながる。ちょっとした空き時間などを利用して、自身が携わっているシステムでのユーザビリティ改善策を考えてみてはいかがだろうか。
この章では合計5作品を取り上げられたが、そこから得られた重要なポイントは下記の3つである。
1.ユーザー自身によるシステム開発の可能性
2.ライブラリの利用による開発コスト・期間の短縮
3.システムにおけるユーザーインターフェースの重要性
ポイント1については、本格的にこのような時代がやってくるのはまだまだ先の話かもしれないが、プログラミングを本業とする職業的プログラマの存在意義を脅かす動向といえるかもしれない。ライブラリの充実、軽量言語での開発ノウハウの普及、インフラの低価格化、そして、ユーザーが求める機能の多様化によって、ユーザー自身が、自らが利用したい機能を自ら構築できる時代が迫りつつある。そこで職業的プログラマはどうやって飯を食っていくか。その答えは様々かもしれないが、エンタープライズ・システム開発という領域においては、開発生産性の向上と共に、サービスの信頼性、可用性、パフォーマンス、拡張性といった、サービスとしての価値を提供することで、サービスの対価として金銭を得る、というスタンスが重要となるのではないか。例えば、ユーザー自身では実現できない最適な設計・コーディングを行うことで、高いパフォーマンスをあげ、多くのトランザクションが寄せられても正常な動作を確保する、そして、顧客の要望に柔軟に対応する、ということが重要となるのではないか。
ポイント2については、すでに利用しているという向きも多いかと思うが、あえてここで記述しておきたい。ある程度枯れたライブラリであれば、信頼性・可用性が重視されるエンタープライズ・システムに対しても適用することができよう。
ポイント3については、エンタープライズ・システムの開発においてはやや軽視されがちかもしれないが、利用者の生産性に大きく響く重要な要素である。例えばロジックとUIを、ロジックを提供するAPIとUIを提供するプレゼンテーション層に分離し、UIをスピーディーにチューニングしていくアプローチなどを検討してはいかがだろうか。また、いっそのこと、各種検索サイトのパーソナライズドポータルページのように、ポイント1「ユーザー自身によるシステム開発の可能性」の視点を取りいれ、ユーザーが自らUIのチューニングを行うことができるプラットフォームを提供するのも面白いアプローチかもしれない。
また、このように、たとえB2Cのサービスであっても、エンタープライズ・システムの視点で眺めると、一般ユーザーの視点から眺めた際には得られない有用なポイントが多数見えてくる。エンタープライズ・システムの開発者であっても、Web2.0に代表される新たな潮流を独自の視点でウオッチすることで、そこで得られたエッセンスを自らの糧とすることができるであろう。
本頁の著作権: Copyright (c) XML コンソーシアム 2007 All rights reserved.