|
||||||||||||||
| 1 2 3 次のページ | ||||||||||||||
| 企業レベルWeb 2.0のプラットフォームを考える | ||||||||||||||
|
Web 2.0によってインターネットアプリケーションは次の世代を迎えています。本稿では、Web 2.0までのアーキテクチャの変遷を概観した後、その意味をアーキテクチャの視点から説明します。またWeb 2.0に対する企業レベルの課題について振り返り、それらの課題を解決するためのリファレンスアーキテクチャについても説明します。 またリファレンスアーキテクチャが解決する課題と、企業レベルWeb 2.0のプラットフォームであるNexawebがリファレンスアーキテクチャをどのようにカバーしているかについて説明し、具体的な機能とサンプルアプリケーションによる実装例などについても紹介します。 なおWeb 2.0という言葉には、技術的な側面(次世代ソフトウェアのデザインパターン)とビジネスモデルとしての捕らえ方があり、時にはファッション(流行、宣伝)としての意味も含まれるかと思いますが、本稿では主に技術面からのアプローチとなります。 |
||||||||||||||
| アーキテクチャの変遷 | ||||||||||||||
|
まず最初に、Web 2.0までのアーキテクチャの変遷を概観してみます。この30年に渡り、エンタープライズアプリケーションの主流はサーバベースのアーキテクチャとクライアントベースのアーキテクチャの間で揺れ動いていました(図1)。1980年代以前に主流だったメインフレームのアーキテクチャはサーバベースであり、ユーザインターフェース(UI)を表示端末に送るといったものでした。 ![]() 図1:アーキテクチャの進化 1980年代になるとグラフィカルなデスクトップ環境をもつワークステーションが台頭し、主流はクライアント/サーバ型、すなわちデータベースを除けば、ほぼ完全にクライアントベースというアーキテクチャに移りました。 そして1990年代後期、Webという低コストでグローバルなデプロイモデルが登場し、一転してブラウザベースのHTMLとJ2EEアプリケーションの開発が主流になりました。クライアントサイドのブラウザ上でUIを表示するという、完全にサーバベースのアーキテクチャに戻ったのです。 この変遷は、その時代のハードウェア/ソフトウェア/ネットワーク環境などの制約のもとに、前世代のアーキテクチャの課題を解決する方向に進化してきたわけですが、アーキテクチャとしては30年前に戻ったという点が面白くもあります。単純に予測すると、次世代のアーキテクチャはクライアントベースに向かっているようにも見えますが、実際はどうなのか以下に検証してみます。 |
||||||||||||||
| Web 2.0のアーキテクチャ | ||||||||||||||
|
Web 2.0のアーキテクチャでは、クライアントサイドにユーザインターフェースやビジネスロジック、データを配置することができます。またそれだけではなく、サーバサイドにも配置することもできます。 これらのリソースの配置は、システムに対する要求を元にクライアントサイドあるいはサーバサイドに最適なリソースの配分を決め、選択することができます(図2)。図にあるようにAjaxやFlash、Java、.NETといった定評のあるリッチインターネットアプリケーション(RIA)開発言語を積極的に採用することで、このようなアーキテクチャの実装が可能になった点も重要です。 ユーザインターフェースについては「使いやすい」「見た目がよい」「レスポンスがいい」「楽しい」といった、よりユーザ中心のシステムを実現できるようになりました。このように、Web 2.0アーキテクチャは柔軟性をもっており、これまでのクライアント/サーバ型のアプリケーション、Web 1.0アプリケーション、その両方の長所を提供することができるのです。 Web 2.0アプリケーションはクライアント/サーバ型やデスクトップアプリケーションの機能性を元に、ブラウザベースのアクセス性やインストール不要のアプリケーション配布、サーバの集中管理といった利便性を組み合わせることで、エンドユーザの生産性と経営効率を画期的に向上させながらもITコスト削減を可能にしました。 30年に及ぶアプリケーション開発の歴史を経て、Web 2.0によって初めてこれらが可能になったといえます。アーキテクチャの進化で示した単純な予測とは違い(振り子が戻るわけではなく)、Web 2.0のアーキテクチャでは、様々な構成をとることができるようになった点がこれまでの進化と大きく違う点です。これは「大変なこと」といえるかもしれません。 |
||||||||||||||
|
1 2 3 次のページ |
||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||



