Insider's Eye

SharePointで開発する統合ポータル(1)

―― Webポータルの開発工数を効果的に削減 ――

Peter Pawlak
2004/09/29
Copyright (C) 2004, Redmond Communications Inc. and Mediaselect Inc.


本記事は、(株)メディアセレクトが発行する月刊誌『Directions on Microsoft日本語版』 2004年10月号 p.20の「SharePointで開発する統合ポータル」を、許可を得て転載したものです。同誌に関する詳しい情報は、本記事の最後に掲載しています。

 MicrosoftのSharePoint Portal Server 2003(以下SPS 2003)は、現在最も普及している企業ポータル製品である。SPS 2003を使用すると、社員や取引先への情報配信や、イントラネットおよびインターネット上のコンテンツに対するインデックス作成および検索機能を提供するポータル・サイトを構築できる。また、SPS 2003の「Webパーツ」と呼ばれるコンポーネントを利用することで、業務アプリケーションや企業データをポータル上に取り込むことも可能だ。ただし、SPS 2003ベースのポータル・サイトと業務アプリケーションの統合を成功させるには、統合する業務アプリケーションのAPIやデータ形式に対する深い知識が必要となる。また、適切な統合モデルに基づいて、ポータル・コンポーネントを構成する必要があり、ほかのMicrosoft製品の導入が必要になる場合がある。

SharePointアーキテクチャ入門

 多くの業務アプリケーションには、それを専門で使用するユーザーでないとしても、価値のある情報が潜んでいる可能性がある。このようなアプリケーションの例としては、SAPやPeopleSoftなどのERP(Enterprise Resource Planning)アプリケーション、Siebel SystemsなどのCRM(Customer Relationship Management)アプリケーション、バンキング・アプリケーションや予約アプリケーションなどの、各業界固有のレガシー・メインフレーム・アプリケーション(通常は、IMSやCICSをプラットフォームとするCOBOLアプリケーション)が挙げられる。

ポータルと業務アプリ統合のメリットとは?

 このようなアプリケーションは、単純なテキスト・ベースの端末インターフェイスからグラフィカルな「ファット」クライアント・インターフェイスまで、その種類は多岐にわたるが、それぞれが独自のユーザー・インターフェイスを提供し、紙ベースまたはオンラインのレポートを生成する機能を備える。しかし、これらの業務アプリケーションのインターフェイスやレポートは、通常、データを専任で入力するユーザーか、これを長時間使用するユーザーに焦点をあてて使いやすいように設計されている。また、これらアプリケーションを操作するには、特別な技術やトレーニングが必要になることが多く、頻繁に利用しないユーザーにとっては扱いにくい。

 例えば、次のような操作は頻繁に実行されることはないだろう。

  • 従業員による、各自の福利厚生プログラムの状態の確認
  • 経営幹部による、各種の業績データの追跡
  • 営業マネージャによる、販売実績データの確認
  • 従業員による、主要なITシステムの稼働状態の確認
  • 取引先による、注文状況の確認

 このような場合は、企業Webポータルを用意することで、そこからバックエンド・アプリケーションのデータや機能へのアクセスを提供できる。企業ポータルはモジュール型のカスタマイズ可能なWebサイトで、さまざまな情報に対して、一貫性のある操作性に優れたインターフェイスを提供することができる。SAPシステムから給与明細データを取得して表示するWebパーツを使用したポータル画面の例については、次画面を参照。

一般的なポータル画面
このポータルを構成しているSharePoint Portal Server 2003のWebパーツは、ユーザーのログオン情報を使用して、バックエンドのSAPシステムからこのユーザー個人の給与明細データを取得し、表示している。ユーザーは、支払日別に明細を表示できるが、表示される情報は読み取り専用である。

 企業ポータルを導入すると、以下のような多くのメリットが得られる。

■情報の検索と利用が容易に
 企業ポータルを導入すれば、特別な技術やトレーニングを必要とせずに、業務アプリケーションに保存されている情報に容易にアクセスできるようになる。また、高価なシック・クライアント・ライセンスを購入する必要もない。

■サポート業務の軽減
 経営者、従業員、取引先が、各自で情報にアクセスできるようにすることで、サポート・スタッフが単純な検索や電話や電子メールへの対応、そして定期的なレポートの発行やブリーフィングを行わなくても済むようになる。

■ニーズに合わせた情報の収集と提供
 ポータルでは、複数のソースから情報を取得して、これをユーザーのニーズに合わせて表示できるため、より有効に情報を活用可能とする環境が提供できる。しかもこの際、コーディングや保守が難しい各ソース・アプリケーションのマージ処理は必要ない。例えば、カスタマ・サービス・スタッフ用のポータルでは、CRMアプリケーションから取得した顧客情報と、ERPや会計アプリケーションから取得したこの顧客の購買履歴を組み合わせて表示できる。

■パーソナライゼーション
 職務に合わせてポータルのインターフェイスをカスタマイズして、各職務に携わるユーザーがアクセス権を持つデータやアプリケーションのみが表示されるようにできる。

■クライアント・コードが不要でトレーニングの必要がない
 クライアント側で専用のアプリケーションをインストールしたり、設定を行ったりする必要がないため、管理と保守が容易である。また、ほとんどのWebアプリケーションと同様に、操作性を追求した設計になっているため、トレーニングもほぼ必要ないだろう。

 なおMicrosoftは、業務アプリケーション・データの配信以外にも、ポータルを活用するように企業に呼び掛けている。例えば、同社は、Officeアプリケーションから企業データへの直接アクセスを可能にする「Microsoft Office Information Bridge Framework」という開発者向けのテクノロジを最近発表した。このテクノロジを利用すれば、日常の業務にOfficeアプリケーションを使用している場合は、業務をよりスムーズに行えるだろう。ただし、まれにしか使用しないデータにアクセスするのであれば、ブラウザとポータルを利用することで十分間に合う。

アプリ統合を可能にする4つのWebパーツ

 基盤となっているWindows SharePoint Servicesと同様、SPS 2003のユーザー・インターフェイスもWebパーツで構成される。Webパーツとはモジュール型のASP.NETベースのサーバ・コントロールであり、これを使うとプログラミング知識のないユーザーでも、カスタムWebページを作成できる。SPS 2003のWebパーツは、業務アプリケーションと連携させることができ、この場合は連携するアプリケーションの種類、Webパーツの機能、ユーザーの作業内容、そしてセキュリティ要件を考慮したうえで、以下の4モデルのいずれかで実現する。また、採用したモデルによりソリューションに使うテクノロジが決まる。

SPS Webパーツのアプリケーション統合モデル
SharePoint Portal Server(SPS)2003ベースのポータルと業務アプリケーションとの統合を実現するWebパーツを作成する場合、以下に挙げた4種類の基本モデルのいずれかが利用可能だ。

●Webクリッピング
業務アプリケーションまたはミドルウェア・アプリケーションに、すでにポータル向けのWebインターフェイスが用意されている場合は、汎用型のSPS 2003のWebパーツを使用して、外部WebページやXMLファイル、WSRP(Web Services for Remote Portlets)標準に準拠しているポートレットをWebパーツ・フレームに取り込むことができる。

●ポイント・ツー・ポイント
Webパーツは、Webサービス、ADO.NET、またはバックエンド・アプリケーション固有のAPIを使用して、ポイント・ツー・ポイントでアプリケーションに直接アクセスすることもできる。

●データ・キャッシュ
提供する業務アプリケーションのデータは読み取り専用でよく、運用環境の最新のデータである必要もない場合は、運用データベースのすべてまたは一部を複製したデータベースに対して、ADO.NETデータベース・クエリを実行するようにすることもできる。

●統合サーバ
ポータルのプレゼンテーション・ロジックと、ビジネス・ロジックまたはデータ変換ロジックを分離した方が効率のよい場合など、複雑なシナリオでは、ポータルとバックエンド・アプリケーションの間に中間層サーバを導入することもできる。

■Webクリッピング
 業務アプリケーションまたはミドルウェア・アプリケーション(SQL Server Reporting Servicesなど)に、すでにポータル向けのWebインターフェイスが用意されている場合は、SPS 2003のWebパーツを使用して、外部のWebページやXMLファイルのすべてまたは一部をWebパーツ・フレーム内に取り込むことができる。WSRP(Web Services for Remote Portlets)標準に準拠しているポートレットや、SAPのIViewsなどの各ベンダが提供するUIカプセル化技術によるポートレットも、専用のWebパーツ内に取り込んで利用することができる。

■ポイント・ツー・ポイント
 アプリケーション自体が提供しているWebサービスやAPIを利用して、Webパーツから直接アプリケーションの機能にアクセスすることもできる。また、ADO.NETデータ接続をサポートするアプリケーション・データベースであれば、直接情報の照会ができる。

■データ・キャッシュ
 同様に、運用データベースの全データまたは一部のデータを複製したデータベースを用意して、このデータベースに対してADO.NET接続による照会を行うWebパーツを作成することもできる。この方法は、アプリケーション・データを読み取り専用で提供するだけでよいポータルでは、極めて有効である。

■統合サーバ
 より複雑なシナリオでは、ポータルとバックエンド・アプリケーションの間に中間層サーバを実装し、Webパーツがこのサーバにアクセスするようにもできる。多くの場合は、バックエンド・システムに直接アクセスするよりも、途中で中継ロジックやデータ変換を実行するようにした方が効率よく、拡張性も高い。アプリケーションとの通信に、非同期トランザクションやメッセージ・キューイングが必要な場合は、特にこの方法が有効だろう。中間層の統合サーバで中継ロジックを一元的に管理・提供することで、ポータル・コンポーネントごとにアプリケーション統合コードを開発しなくても、さまざまなポータル・コンポーネントからアプリケーションにアクセスできるようになる。この結果、開発を簡素化でき、コードの保守や管理も容易になる。また、ポータル・コンポーネントはプレゼンテーション層のロジックを処理するだけでよく、統合サーバとはWebサービスを使用して通信できる。

 

 INDEX
  Insider's Eye
SharePointで開発する統合ポータル(1)
  SharePointで開発する統合ポータル(2)
 
 「Insider's Eye」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間