2006年7月20日木曜日

WCMとWeb2.0 - Kevin’s Blog - The Right CMS for Web 2.0: Our Point of View

リンク: Kevin’s Blog - Blog Archive - The Right CMS for Web 2.0: Our Point of View.



InterwovenからAlfrescoへ移籍したKevin Cochraneが来たるべきWeb Contents Management機能の概要についてBlogで触れています。
彼が先日話をした顧客は、



  1. アプリ開発者チームがWebサービスを開発・公開




  2. Web開発者チームがテンプレートとワークフローを整備




  3. デザイナチームがページレイアウトや各種画像を作成




  4. コンテンツマネージャが承認された素材・テンプレートを元にサイトを構築し、ユーザ情報なども管理




  5. 分散された投稿者や編集者が新サイトへコンテンツを登録


という、王道とも言うべきフローをワンストップで実現できるCMSが、商用・オープンを問わず存在しない、という現状についての疑問を訴えたそうです。
この顧客はWebサイトのリニューアルに際して、CMSを導入しプロセスも更新してビジネスの新しい局面に備えようとしているところであり、(それをWeb2.0対応と位置づけているようです)、



  1. コンテンツだけでなくプログラムコードを含めて、ステージング・バージョン管理・ワークフロー・配置を全て一括で行えるシステム




  2. 開発・デザイン・サイト更新の機能が分断されておらず、一箇所で行える頑健なシステム




  3. 既存のサイトを活用するか、安価に置き換えることができる上に、開発者・デザイナ・編集者・管理者の協働作業をサポートできるシステム


という要件を持っていたそうです。
Alfrescoの次バージョンで実装されるWCM機能は、これらの期待に応えられるものになる、とKevinは言っています。この新機能はXFormsを利用したシンプルなXMLベースの配信システムであると同時に、jBPMを利用したワークフローに対応し、E-mail等も活用した柔軟なレビューシステムを持つことになるようです。
さらに彼は6つのコンセプトを紹介しています。平行作業(parallel development)・仮想化(virtualization)・ステージング(staging)・スナップショット(snapshotting)・派生(branching)そして配置(deployment)の6つです。これら全てをカバーするオープンソースのCMSというのは稀有であり(私も例を知りません)、その顧客の要件にもマッチするものだということです。Alfresco本来のレポジトリの頑健性をあわせて考えるとかなり面白い製品となっていくのではないでしょうか。以下さらにそれらのコンセプトについての解説を引用します。
平行作業。これは開発者・デザイナ・投稿者などがそれぞれ独自に作業を進められるということを意味します。開発者は実働しているバージョンを残したまま、他の作業者を煩わせることなくビジネスロジックを変更することができますし、デザイナは開発者の作業進捗と無関係に例えばJavascriptやCSSのファイルを差し替えてみることができます。
仮想化。平行作業と関わりが深いコンセプトです。運用環境への移行前に、自立的に完全動作をする開発環境を持つことができます。
ステージング。仮想化された開発環境に対して、各々の作業者が平行して変更を加えることになるわけですが、それぞれの変更を即本番環境へ反映するのではなく、中継地点に配置してチェックを行うことができます。このチェックのための仮想環境の数は無制限で、個々の変更毎にチェックを実施することもできるようになります。
スナップショット。それぞれの変更のタイミングで、変更部分だけでなくサイト全体をまとめて保存することができます。
派生。一時的にしか利用しないコンテンツなども含め、過去バージョンからの派生を行うこともできます。
配置。そして、これらのコンセプトにあわせて管理された「サイト」の全体を自動的に、時には複数のフロントエンドサーバの運用環境へとコピーすることができます。



今回の記事の内容がそのままWeb2.0ということではないかもしれませんが、Alfrescoを利用したWebコンテンツ管理により、アプリケーションコードと(恐らくは一定量以上の規模の)コンテンツがスムーズに統一管理された環境というのは、Web2.0的なサービスを提供しようと考えている企業にとって利用価値の高いものになるのではないでしょうか。



(文責 Ishii Akinori)