(57)【要約】【課題】  ポータルシステムにおいて、ポートレットやポートレットが参照する情報、および利用者の利用形態に合わせてポートレットの配置を自動的に変更することを目的とする。【解決手段】  ポートレット間関連度計算手段１１４は、各ポートレットが参照するコンテンツ情報およびポートレット表示画面から抽出したキーワードをもとにポートレット間の関連度を算出する。その結果に基づき、ポートレット配置変更手段１１３は利用者が選択しているポートレットの付近に関連度の高い順にポートレットの配置を変更する。また、ポートレット間関連度の計算結果は、キーワード間の関連度の値にフィードバックさせ、次のポートレット間関連度の計算処理に反映させる。これにより、利用者の利用形態に合わせてポートレットの自動配置を行うことが可能となる。【選択図】  図１
2005346318.tif 000002
【特許請求の範囲】
【請求項１】
複数個の様々なコンテンツを各々ポートレットとして１画面に統合し表示するポータルシステムにおいて、各ポートレットの持つキーワードを管理する手段を有し、それらのキーワードに基づいてポートレット間の関連度を計算する手段を有し、計算した結果に基づいてポートレットの配置を自動的に変更する手段を有するポートレット自動配置装置。
【請求項２】
請求項１において、ポートレット間の関連度を計算する元となるキーワードを各ポートレットが参照するデータやコンテンツから自動的に抽出する手段を有し、それらのキーワードに基づいてポートレット間の関連度を計算する手段を有し、計算した結果に基づいてポートレットの配置を自動的に変更する手段を有するポートレット自動配置装置。
【請求項３】
請求項１において、ポートレット間の関連度を計算する元となるキーワードを各ポートレットの表示画面から自動的に抽出する手段を有し、それらのキーワードに基づいてポートレット間の関連度を計算する手段を有し、計算した結果に基づいてポートレットの配置を自動的に変更する手段を有するポートレット自動配置装置。
【請求項４】
請求項１において、ポートレットの自動配置の結果を蓄積して保存する手段を有し、その結果をポートレット間の関連度の計算に反映させる手段を有するポートレット自動配置装置。
【請求項５】
請求項１において、ポートレット間の関連度を計算する元となるキーワードを利用者およびシステムの管理者が指定できるようにするための手段を有し、利用者が指定したキーワードを加味してポートレット間の関連度の計算を行う手段を有し、計算した結果に基づいてポートレットの配置を変更する手段を有するポートレット自動配置装置。
【請求項６】
請求項１において、ポートレット間の関連度を計算する元となるキーワード間の関連度を利用者およびシステムの管理者が指定できるようにするための手段を有し、利用者が指定したキーワードを加味してポートレット間の関連度の計算を行う手段を有し、計算した結果に基づいてポートレットの配置を変更する手段を有するポートレット自動配置装置。
【請求項７】
請求項１において、利用者がポートレットの配置を変更した場合の結果からキーワード間の関連度を自動的に算出する手段を有し、その結果をポートレット間の関連度の計算に反映させる手段を有するポートレット自動配置装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポートレットの保持する情報や利用者の利用形態に合わせてポートレットの配置を自動的に変更するポータルシステムに関する。
【背景技術】
【０００２】
インターネット技術の普及により、様々な情報が様々な形式でネットワーク上に分散して存在するようになった。これらの情報は、一般にホームページ等の形式で公開されており、インターネットを利用する個人、組織等が各々の保持する情報を様々な目的で情報を公開している。
【０００３】
このインターネット上の技術をある特定の組織内で情報公開、伝達するための手段として用いたものがイントラネット、エクストラネットと呼ばれるものである。特にイントラネットは、それを運用、管理する組織が組織内のメンバーや会社の従業員等等に対して情報伝達を行うために利用していることが多い。
【０００４】
しかし、イントラネット、エクストラネット上で公開される情報は、情報を公開する側の意図に沿って構成されることが多い。そのため、ある利用者にとっては必要な情報であっても、別の利用者にとっては余計な情報となる場合もある。また、イントラネット内にも様々なサイトがあり、様々な情報が各サイトに分散して存在している場合がある。この場合、利用者は必要な情報を参照するために、イントラネット内の様々なサイトを巡回、検索する必要がある。そのため、サイトの数が多くなると必要な情報を見つけるまでに時間がかかったり、必要な情報を見つけられない場合も発生する。また、サイトの数が増えると、どのような情報が存在するのかも把握できなくなり、重要な情報が存在することに気づかないといった問題も発生する。
【０００５】
近年、この問題を解決する手段としてEnterprise Information Portal（以下、ＥＩＰと略）という考え方が提唱されている。ＥＩＰとは、インターネット、イントラネット上に分散して存在する様々な企業情報へのアクセス手段をポートレットという単位で表現し、これらのポートレットを集約してポータル(入り口)システムとして表示したものである。
【０００６】
ポータルシステムの表示は、一般に複数のウィンドウ（ポートレット）で構成された１つのホームページのような形式で表示されていることが多い。また、重要な情報や利用者が頻繁に参照する情報を各々ポートレットに割り当て、それをポータルシステムの１画面上にまとめて表示しておくことにより、各利用者は必要な情報に即座にアクセスできるようになる。
【０００７】
以上で述べたように、ポータルシステムは各サイトに分散して存在する情報を１つの画面に集約して表示することを可能とする。このポータルシステムの利点を利用し、特開２００２−２６９０４４号は組織階層に基づいてポータルシステムの画面を構成するようにしている。特開２００２−２６９０４４号では、利用者の所属する組織に基づき、ポータルシステム上に表示するポートレットの種類を制御し、利用者の組織に基づいたポートレットのみを自動的に表示する。
【０００８】
従来技術の利用により、ポータルシステムの利用者はインターネット、イントラネット上を検索することなく、必要な情報に簡単にアクセスできるようになる。また、特定のポートレットを自動表示することにより、各利用者が各組織情報の格納されている場所やアドレスを記憶しておく必要がなくなるという利点がある。
【０００９】
【特許文献１】特開２００２−２６９０４４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特開２００２−２６９０４４号に示される従来技術では、あらかじめ組織内に存在する部や課、係といったグループ単位にポートレットを用意しておく。利用者がポータルシステムにアクセスすると、ポータルシステムは利用者の所属するグループを認識し、そのグループ用に用意しておいたポートレットを表示する。また、各グループのポートレットは組織の階層構造（部−課−係等）に沿って関連付けられており、ある利用者がさらに上位階層のコンテンツを参照したい場合や、他のグループのコンテンツを参照したい場合には、コンテンツを参照したい組織をポータルシステムに通知することにより、そのグループに関連付けられたポートレットを表示させることができる。
【００１１】
しかし、従来技術は、ポートレット間の関連性について組織階層というキー以外の関連については考慮していない。また、その影響でポータルシステム上に表示するポートレットの配置も組織をキーとして固定化されたものとなる。そのため、従来技術には以下で述べるような問題点がある。
【００１２】
ポータルシステムの利点として複数の散在するコンテンツを各々ポートレットとして１画面に集約して表示するという機能がある。これにより、ユーザはインターネット、イントラネット内に散在するコンテンツを、各サイトを巡回して参照することなしに参照することが可能となる。人が何かの目的でコンテンツを参照する場合、通常はそれに関連した他のコンテンツもあわせて参照することを考える。そのため、ポータルシステム上に表示するポートレットの提供者は利用者に対する利便性や想定する利用形態に合わせて各ポートレットの配置を決定することが多い。
【００１３】
この時、ポータルシステムの利用者がポートレット提供側の意図に沿ってコンテンツを参照する場合には、ポータルシステム上のポートレットの配置について利用者と提供者の意図が一致することになるため利用者はコンテンツの参照を効率良く行うことができる。しかし、ポータルシステムの利用者がポートレット提供側とは違う視点でコンテンツを参照したいと考える場合もある。この場合、ポートレットの配置について利用者と提供者の意図が一致しないことになるためコンテンツを参照する際の効率が悪くなってしまう。
【００１４】
また、ポータルシステムの利用者がポートレット提供側の意図と同じ視点でコンテンツの参照を行う場合であっても、参照の効率が良いと感じるポートレットの配置は個人ごとに異なる可能性がある。コンテンツの配置は個人の志向によって使いやすい／使いにくいといった判断が分かれるため、大半の利用者が参照しやすいと感じるポートレットの配置であっても、一部の利用者にとっては使いづらいと感じる場合もある。この問題を解決するため、ポータルシステムの中には個人ごとにポートレットの配置を自由にカスタマイズできるようにする機能を備えているものもある。ポータルシステムの利用者は自分が参照しやすいと感じるようにポートレットの配置についてカスタマイズを行う。
【００１５】
しかし、利用者が参照しようとしているコンテンツの種類によって、参照しやすいポートレットの配置も変わってくる。たとえば、自分の所属する組織に関するコンテンツを参照する場合には、特開２００２−２６９０４４号のように自分の所属する組織をキーとして集められたポートレットの中で配置の変更を行えば良い。しかし、自分の所属する組織に関するコンテンツの中でも、担当業務に関する情報を調べるためにコンテンツの参照を行う場合と、予算に関する情報を調べるためにコンテンツの参照を行う場合とでは、参照しやすいポートレットの配置は異なる。これは、利用者が参照したいと考える情報が変わったことにより、コンテンツを参照する際の視点やキーとなる情報が変化したためであると考える。したがって、常に効率良くコンテンツの参照を行うためには、ポータルシステムでポートレット配置のカスタマイズ機能をサポートしている場合でも、利用者がコンテンツ参照の視点を変えるたびにポートレットの配置を手動でカスタマイズする必要が出てくる。これは、コンテンツの参照に非常に手間がかかることになる。
【００１６】
以上で述べたように従来技術では、表示するコンテンツやコンテンツの配置がポートレット利用者の組織および組織階層に固定されている。そのため、組織とは別の視点や組織を横断してコンテンツを参照したい場合等に、コンテンツ参照の効率が悪くなるという問題がある。また、ある特定のキー情報に基づいて集められたコンテンツであっても、利用者が参照したいと考える視点に合わせてポートレットの配置を変更しないと、コンテンツを効率良く参照することができないという問題が発生する。このポートレット配置の変更をポータル利用者が毎回手動で行うと、コンテンツを参照するための操作の効率が非常に悪くなる。
【００１７】
本発明では、利用者が参照したいと考えているキー情報に基づいて必要なポートレットの表示や不必要なポートレットの消去を行い、さらに利用者が着目しているポートレットの近くに、より関連の深いポートレットを配置するよう自動的にポートレットの配置を変更する。これにより、ポータルシステムの利用者が常にコンテンツを効率良く参照できる状態を維持することが可能となる。
【課題を解決するための手段】
【００１８】
本発明は、上記の目的を実現するための装置に関するものであり、ポートレット（コンテンツ）間の関連度を各ポートレットから自動的に抽出し、その情報をもとにポートレットの配置を自動的に変更することで達成できる。
【００１９】
本発明におけるポートレット自動配置装置は、各ポートレットが参照するデータやコンテンツ等から自動的に抽出したキーワード情報や利用者の指定したキーワード情報を元にポートレット間の関連度を自動的に計算し、その計算結果に基づいてポートレットの配置を自動的に変更する。これにより、ポータルシステムの利用者が常にコンテンツを効率良く参照できる状態を維持できるようになる。
【００２０】
また、本発明におけるポートレット自動配置装置は、ポートレットの自動配置を行った結果および利用者がポートレットの配置を変更した場合の結果を蓄積して保存する手段を有し、その結果をポートレット間の関連度の計算結果に反映する手段を有する。これにより、ポートレットの配置をより洗練されたものとすることが可能になる。
【発明の効果】
【００２１】
本発明のポートレット自動配置装置を利用することにより、ポートレット間の関連度を考慮したポートレットの配置を利用者が手作業で行うことなく、自動的に実現することが可能となる。これにより、ポータルシステムの利用者が常にコンテンツを効率良く参照できるようになるという効果がある。
【００２２】
また、自動配置の結果や利用者のポートレット配置変更の結果を蓄積して後のポートレット自動配置の結果に反映させることにより、ポータルシステムの利用者に対してより洗練された配置を提供することが可能になるという効果がある。
【発明を実施するための最良の形態】
【００２３】
以下では、本発明におけるポートレット自動配置装置および自動配置手段の概要について説明する。
【００２４】
まず、本発明におけるポートレット自動配置装置の概要について説明する。図１は、本発明におけるポートレット自動配置装置１０１の概要を示すものである。ポートレット自動配置装置１０１は、ポータルシステムの利用者に対してポートレットの表示を行うポートレット表示手段１０２とポータルシステムにアクセスしている利用者の認証処理および識別処理を行う個人認証手段１０３、利用者の認証処理および識別処理を行う際に必要となる情報を格納した個人情報管理ＤＢ１０４、各ポートレットが個別に参照する情報の制御を行うポートレットコンテンツ参照情報管理手段１０５、各ポートレット参照するコンテンツに関する情報を保存するポートレット参照情報管理ＤＢ１０６、ポータルシステムにおけるポートレットの配置に関する情報の制御を行うポートレット配置情報管理手段１０７、利用者ごとのポートレットの配置に関する情報を格納するポートレット配置情報ＤＢ１０８、各ポートレットが参照するコンテンツ情報およびポートレットの表示画面からキーワード情報の抽出を行うキーワード抽出手段１０９、抽出したキーワードの保存、取り出し等の管理を行うキーワード情報管理手段１１０、抽出したキーワードの保存を行うキーワード情報ＤＢ１１１、キーワード間の関連度に関する情報を保存するキーワード情報関連度ＤＢ１１２、ポートレット間関連度の計算結果に基づいてポートレット配置の変更を行うポートレット配置変更手段１１３、キーワード情報を元にポートレット間の関連度の計算を行うポートレット間関連度計算手段１１４、ポータルシステム利用者やポータルシステムの管理者がキーワードの追加やキーワード間の関連度の変更を行うための手段を提供し入力された追加キーワード等の情報をキーワード情報管理手段１１０に通知するキーワード情報追加手段１１５とで構成される。また、ポートレット表示手段１０２で表示を行う各ポートレット上には、コンテンツＤＢ１１６やコンテンツＸＭＬ１１７、コンテンツＨＴＭＬ１１８等に格納されている情報を利用者が参照しやすい形式で表示する。コンテンツＤＢ１１６、コンテンツＸＭＬ１１７、コンテンツＨＴＭＬ１１８はそれぞれ１つしかない場合や複数個の要素で構成される場合がある。
【００２５】
ポートレット自動配置装置１０１は、ポートレット表示手段１０２においてポートレットの表示を行う。ポートレットの表示を行うにあたり、ポートレット表示手段１０２は、利用者に個人識別ＩＤやパスワードといった情報を入力させる。入力された情報は個人認証手段１０３に通知する。個人認証手段１０３は、ポートレット表示手段１０２から通知された情報をもとに個人情報管理ＤＢ１０４内の検索を行い、ポータルシステムにアクセスしている利用者の認証処理および識別処理を行う。認証処理、識別処理の結果はポートレット表示手段１０２に通知され、以降の処理では個人識別ＩＤをキーにして利用者ごとに設定、保存された情報の表示や処理を行う。
【００２６】
ポートレット表示手段１０２は、ポートレットを表示する際に必要となる情報を、ポートレットコンテンツ参照情報管理手段１０５を経由してコンテンツＤＢ１１６やコンテンツＸＭＬ１１７、コンテンツＨＴＭＬ１１８から取得する。ポートレットコンテンツ参照情報管理手段１０５は、利用者単位（個人識別ＩＤ単位）にポートレットが参照する全ての情報を管理しており、各コンテンツ群へのアクセス手段の制御を行う。ポートレットが参照する情報については、ポートレット参照情報管理ＤＢ１０６上に利用者単位で格納されている。
【００２７】
また、ポートレットの表示にあたり、ポートレット表示手段１０２はポートレット配置情報管理手段１０７から利用者ごとの画面上へのポートレット配置に関する情報の取得を行う。ポートレット配置情報管理手段１０７は、画面上へのポートレットの配置に関する情報の管理を行う。ポートレットの配置に関する情報は、ポートレット配置情報ＤＢ１０８上に利用者単位で格納されている。
【００２８】
以上の情報を取得した後、ポートレット表示手段１０２は各利用者の端末（利用者端末１１９、利用者端末１２０）に対して各利用者の設定に合わせたポートレットの表示を行う。
【００２９】
また、ポートレット自動配置装置１０１は、ポートレット表示手段１０２でポートレットの表示を行うと同時に、ポートレットコンテンツ参照情報管理手段１０５において各ポートレットがどのコンテンツ群（コンテンツＤＢ１１６、コンテンツＸＭＬ１１７、コンテンツＨＴＭＬ１１８）を参照しているかについての解析を行う。ポートレットコンテンツ参照情報管理手段１０５は、解析を行った結果をキーワード抽出手段１０９に通知する。キーワード抽出手段１０９は、各ポートレットが参照しているコンテンツ群からキーワードとなる情報を抽出する。
【００３０】
また、キーワード抽出手段１０９は、コンテンツ情報からだけでなく、利用者に対して表示するポートレット画面についても解析を行い、キーワードの抽出を行う。この処理は、利用者に対して表示される情報がコンテンツ上に静的に存在する場合だけでなく、Java（登録商標） Server Page(以下、JSPと略)等によって動的に生成される場合等に対応するために実行する処理である。ポートレット画面は、画面がJSP等により動的に生成される場合でも利用者に対して表示された時点ではHTML等の静的な表示形式となっている。したがって、JSP等で動的に生成される画面であっても、コンテンツＨＴＭＬ１１８と同様に解析を行うことが可能となる。
【００３１】
以上の処理において、各ポートレットからキーワードが抽出され、ポートレットとキーワードが関連付けられた状態となる。キーワードの抽出後、キーワード抽出手段１０９は、キーワード情報管理手段１１０に処理の結果を通知する。キーワード情報管理手段１１０は、通知された各ポートレットとキーワードの対応関係をキーワード情報ＤＢ１１１に格納する。ここで、キーワード情報管理手段１１０は、キーワード抽出手段１０９から通知されたキーワードの情報をもとにキーワード間の関連度についての計算を行う。キーワード間の関連度の値は後にポートレット間の関連度を計算する際に使用する。キーワード間の関連度に関する情報は、キーワード情報関連度ＤＢ１１２に格納する。キーワード情報ＤＢ１１１に格納する各ポートレットとキーワードの対応関係、およびキーワード情報関連度ＤＢ１１２に格納するキーワード間の関連度に関する情報は、個人識別ＩＤをキーとして利用者単位で格納される。
【００３２】
次に、ポートレット表示手段１０２でポートレットを表示した後に、利用者が複数あるポートレットの中の１つに対して何らかの操作を行った場合、ポートレット表示手段１０２は、操作が行なわれたポートレットをポートレット配置変更手段１１３に対して通知する。ポートレット配置変更手段１１３は、通知を受け取るとポートレット間関連度計算手段１１４に対してポートレット間の関連度に関する情報の取得を要求する。ポートレット間関連度計算手段１１４は、キーワード情報管理手段１１０を経由してキーワード情報ＤＢ１１１から各ポートレットとキーワードの対応関係に関する情報、キーワード情報関連度ＤＢ１１２からキーワード間の関連度に関する情報の取得を行う。その後、ポートレット間関連度計算手段１１４は、取得した情報をもとにポートレット間の関連度について計算を行う。計算の結果はポートレット配置変更手段１１３とキーワード情報管理手段１１０の両方に通知する。ポートレット配置変更手段１１３は、ポートレット間関連度計算手段１１４の計算結果をもとに関連度の高いポートレットを選択して、利用者が参照しやすいようにポートレットの配置設定を変更する。配置設定の変更結果はポートレット表示手段１０２に通知され、ポートレット表示手段１０２は通知された設定にしたがってポートレットの表示を利用者に対して行う。また、変更後の配置情報はポートレット配置変更手段１１３からポートレット配置情報管理手段１０７を経由してポートレット配置情報ＤＢ１０８に保存される。
【００３３】
一方、キーワード情報管理手段１１０は、ポートレット間関連度計算手段１１４から計算の結果を受け取ると、キーワード情報関連度ＤＢ１１２に格納している情報の更新（フィードバック）を行う。これにより、キーワード情報に利用頻度という要素で重み付けを行うことが可能となる。
【００３４】
また、キーワードの種類やキーワード間の関連度は各コンテンツ群から自動的に抽出した情報だけではなく、明示的に指定することもできる。これは、利用者があるキーワードを追加したい場合や、コンテンツの管理者が、あるキーワードに対して意図的に特定のキーワードを関連付けて利用者に参照させたい場合等に利用できる。
【００３５】
追加するキーワードやキーワード間の関連度に関する情報は、利用者やポータルシステムの管理者がキーワード情報追加手段１１５に対して通知を行う。キーワード情報追加手段１１５は通知を受け取ると、その内容をキーワード情報管理手段１１０を介してキーワード情報ＤＢ１１１およびキーワード情報関連度ＤＢ１１２に反映する。キーワード情報ＤＢ１１１およびキーワード情報関連度ＤＢ１１２上の情報は利用者単位で格納されているため、これらの変更は利用者単位で設定することが可能である。また、ポータルシステムの管理者等が全利用者の情報に対して変更を行うことにより、全利用者の設定を変更することも可能である。これにより、キーワードの追加およびキーワード間の重み付けの変更が可能となる。
【００３６】
次に本発明の実施例について説明する。利用者が本装置に対してポートレット画面を表示するためにアクセスを行った場合、本装置はポートレット表示手段１０２にてポートレット画面の表示を行う。ポートレット表示手段１０２は、ポートレットの表示を行う前に、表示を要求している利用者の識別処理を行う。利用者の識別処理は個人認証手段１０３において実行する。個人認証手段１０３は、表示を要求している利用者に対して個人識別ＩＤやパスワードの入力を要求する。この要求に対して利用者が個人識別ＩＤやパスワードの入力を行い、個人認証手段１０３に対して通知を行うと、個人認証手段１０３は、それらの情報をもとに個人情報管理ＤＢ１０４内に格納されている情報を検索して、利用者の識別処理および利用者の個人情報の抽出を行う。図２は個人情報管理ＤＢ１０４内に格納されているテーブルの構成を示したものである。個人情報を管理している個人情報管理テーブル２０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ２０２、個人認証処理で使用するパスワードを格納するパスワード情報２０３、利用者の役職に関する情報を格納する役職情報２０４、利用者の所属する部署に関する情報を格納する所属部署情報２０５、利用者の所属するプロジェクトに関する情報を格納する所属プロジェクト情報２０６で構成される。
【００３７】
個人認証手段１０３は、利用者から入力された個人識別ＩＤをもとに個人情報管理テーブル２０１の個人識別ＩＤ２０２について検索を行い、入力された個人識別ＩＤに合致する個人識別ＩＤが格納されているかどうか確認する。合致する個人識別ＩＤが存在した場合は、そのレコードのパスワード情報２０３を参照し、その位置に格納されているパスワード情報が利用者によって入力されたパスワードと合致しているかどうか調べる。合致した場合は、ポータルシステムへのアクセスを許可されているとみなして個人認証処理を終了し、役職情報２０４、所属部署情報２０５、所属プロジェクト情報２０６に格納されている情報をポートレット表示手段１０２に通知する。利用者の入力した個人識別ＩＤに合致する個人識別ＩＤが個人情報管理テーブル２０１上で見つからなかった場合やパスワード情報が利用者の入力した内容と一致しなかった場合は、個人認証処理が失敗した旨をポートレット表示手段１０２に通知する。ポートレット表示手段１０２は、個人認証手段１０３からの結果を受けて、個人認証処理が成功した場合のみポートレットの表示処理を行う。
【００３８】
個人認証処理が成功した場合、ポートレット表示手段１０２はポートレット配置情報管理手段１０７に通知を行い、利用者の画面に表示するポートレットの配置に関する情報の取得を行う。その際、ポートレット表示手段１０２は個人認証ＩＤをポートレット配置情報管理手段１０７に通知する。ポートレット配置情報管理手段１０７は、通知された個人認証ＩＤをキーとしてポートレット配置情報ＤＢ１０８に格納されているポートレットの配置に関する情報の検索を行う。
【００３９】
図３は、ポートレット配置情報ＤＢ１０８内に格納されているテーブルの構成を示したものである。ポートレットの配置情報を格納しているポートレット配置情報テーブル３０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ３０２、表示するポートレットの名称を格納するポートレット名称３０３、ポートレットの配置する位置を画面の左上を基点とする座標で示した値を格納するポートレット位置情報３０４、ポートレットの大きさに関する情報を格納するポートレット大きさ情報３０５で構成される。
【００４０】
図３に示した通り、ポートレットの配置情報には個人識別ＩＤがキーとなる情報として付加されている。ポートレット配置情報管理手段１０７は、通知された個人識別ＩＤをもとにポートレット配置情報テーブル３０１の検索を行い、個人識別ＩＤ３０２に格納されている個人識別ＩＤの値が、通知された個人識別ＩＤと一致する全てのポートレット配置情報を抽出し、ポートレット表示手段１０２に通知する。ポートレット表示手段１０２は、ポートレット配置情報管理手段１０７から取得した情報をもとにポートレット表示画面における、ポートレットの配置を決定する。例えば、ポートレット配置情報３０６の場合、ポートレット名称３０３が”予算情報ポートレット”となっており、ポートレット位置情報３０４が(2、3)であることから、この利用者のポートレット表示画面においては、予算情報ポートレットが、２行目の３列目に配置されることになる。
【００４１】
ポートレット配置情報の初期値はポータルシステムの管理者によって設定される。また、利用者が配置を変更した場合にはその情報がポートレット配置情報ＤＢ１０８に記憶される。次に利用者がポータルシステムにアクセスを行った場合には、本実施例で説明したように、ポートレット配置情報ＤＢ１０８に記憶している情報を読み出して画面の表示を行う。
【００４２】
ポートレット表示手段１０２は、ポートレット配置情報管理手段１０７から取得したポートレットの種類およびポートレットの配置に関する情報を元にポートレット画面の表示を行う。ポートレット画面の表示を行うにあたり、ポートレット表示手段１０２は、ポートレットコンテンツ参照情報管理手段１０５を経由して各ポートレットが参照している各種コンテンツ情報から表示に必要な情報の取得を行う。ポートレットコンテンツ参照情報管理手段１０５はポートレット表示手段１０２からコンテンツ情報取得の要求を受けると、ポートレット参照情報管理ＤＢ１０６を参照し、各ポートレットが参照しているコンテンツ情報の特定を行う。その後、特定したコンテンツ情報からポートレット表示手段１０２が要求している情報を取得しポートレット表示手段１０２に受け渡す。
【００４３】
図４は、ポートレット参照情報管理ＤＢ１０６内に格納されているテーブルの構成を示したものである。ポートレットの参照する情報を格納しているポートレット参照情報管理テーブル４０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ４０２、ポートレットの名称を格納するポートレット名称４０３、ポートレットが参照する情報の形式を格納する参照情報形式４０４、ポートレットが参照するコンテンツ情報の名称を格納するポートレット参照情報４０５で構成される。
【００４４】
図４に示した通り、ポートレット参照情報管理情報には個人識別ＩＤがキーとなる情報として付加されている。これは、各ポートレットが参照する情報が全利用者で共通の場合もあるが、利用者によって参照するコンテンツが変わる場合もあるためである。ポートレットコンテンツ参照情報管理手段１０５は、ポートレット表示手段１０２から個人識別ＩＤとポートレット名称を受け取ってポートレット参照情報管理ＤＢ１０６の検索を行い、個人識別ＩＤ４０２に格納されている個人識別ＩＤの値が、受け取った個人識別ＩＤと一致し、かつポートレット名称４０３に格納されているポートレット名称が、受け取ったポートレット名称と一致するポートレット参照情報管理情報を特定する。その後、特定したポートレット参照情報管理情報における参照情報形式４０４、ポートレット参照情報４０５の情報を参照し、ポートレット表示手段１０２より通知されたポートレットが参照しているコンテンツ情報を抽出する。最後にポートレットコンテンツ参照情報管理手段１０５は、抽出したコンテンツ情報からポートレット表示に必要な情報を取り出してポートレット表示手段１０２に通知する。
【００４５】
例えば、ポートレット表示手段１０２から個人識別ＩＤとポートレット名称として”予算情報ポートレット”が指定された場合、ポートレットコンテンツ参照情報管理手段１０５はポートレット参照情報管理ＤＢ１０６上のポートレット参照情報管理テーブル４０１を検索し、ポートレット参照情報管理情報４０６とポートレット参照情報管理情報４０７を特定する。その後、ポートレット参照情報管理情報４０６とポートレット参照情報管理情報４０７のポートレット参照情報４０５に格納されている情報を参照し、ポートレット表示手段１０２から指定された予算情報ポートレットの参照するコンテンツ情報として、”部課名別収入(予算)情報テーブル”、”部課名別支出(予算)情報テーブル”を抽出する。また、抽出したコンテンツ情報から”予算情報ポートレット”の表示に必要な情報を取り出してポートレット表示手段１０２に通知する。
【００４６】
以上の処理により、図１のポートレット表示手段１０２において利用者に対してポートレットの画面が表示される。図５にポートレット表示手段１０２において表示されたポートレット表示画面を示す。図５に示したポートレット表示画面は、利用者がアクセスした直後の初期状態の表示画面である。ポートレット表示画面５０１は、取引先名称および取引先情報のURL、売上高といった情報を表示する取引先情報ポートレット５０２、部課名別、製品名別の売上高を表示する受注情報ポートレット５０３、組織内に存在する各種規格や規格情報が掲載されているURLに関する情報を表示する規格情報ポートレット５０４、総務関連の手続きや担当係に関する情報を表示する総務情報ポートレット５０５、部課名別に収入や支出の実績値を表示するコスト情報ポートレット５０６、部課名別に収入や支出の予算値を表示する予算情報ポートレット５０７で構成される。これらのポートレットの表示は、図３に示したポートレット配置情報テーブル３０１の設定にしたがって表示されている。すなわち、ポートレット配置情報３０６で示される”予算情報ポートレット”のポートレット配置情報は(2、3)であることから２行目の３列目、ポートレット配置情報３０７で示される”コスト情報ポートレット”のポートレット配置情報は(2、2)であることから２行目の２列目、ポートレット配置情報３０８で示される”受注情報ポートレット”のポートレット配置情報は(1、2)であることより１行目の２列目、ポートレット配置情報３０９で示される”取引先情報ポートレット”のポートレット配置情報は(1、1)であることより１行目の１列目、ポートレット配置情報３１０で示される”総務情報ポートレット”のポートレット配置情報は(2、1)であることより２行目の１列目、ポートレット配置情報３１１で示される”規格情報ポートレット”のポートレット配置情報は(1、3)であることより１行目の３列目にそれぞれ配置されている。また、各ポートレットが表示する際に使用している情報は、図１のポートレットコンテンツ参照情報管理手段１０５経由でコンテンツ情報から取得している。
【００４７】
また本装置では、図１のポートレット表示手段１０２でポートレット画面の表示を行うと同時にポートレットコンテンツ参照情報管理手段１０５とキーワード抽出手段１０９において、各ポートレットが保持しているキーワードの解析と抽出を行う。キーワードの抽出は、各ポートレットが参照しているコンテンツ情報と各ポートレットの表示画面を解析することによって行う。各ポートレットが参照しているコンテンツ情報については、ＤＢであればカラム名、ＸＭＬであればＤＴＤおよびタグ名、ＨＴＭＬであればタグ名といった情報をキーワードとして使用する。また、各ポートレット画面については、ＨＴＭＬのような静的なコンテンツを表示する画面だけでなく、JSPやサーブレット等により動的に生成される画面が存在する。しかし、JSPやサーブレット等で生成される画面であっても、利用者に対して表示を行う時点では、通常ＨＴＭＬ形式の画面となっている。したがって、ポートレット表示手段１０２で表示している画面を解析することで、画面が動的に生成される場合であっても、通常のＨＴＭＬと同様の手順でキーワードの解析を行うことが可能となる。表示されているポートレット画面を直接解析することにより、コンテンツ情報からは取得できない動的な情報の取得が可能となる。
【００４８】
キーワード情報の抽出は、図１のキーワード抽出手段１０９で実施する。図６は、キーワード抽出手段１０９におけるキーワード抽出処理処理の流れを示すフローチャート図である。以下では、図６のフローチャート図にしたがってキーワード抽出処理の流れを説明する。
【００４９】
キーワード抽出手段１０９は、最初にポートレット表示手段１０２からキーワード情報の解析対象となるポートレットを一つ取り出す（ステップ６０１）。次に、ポートレットコンテンツ参照情報管理手段１０５経由でポートレット参照情報管理ＤＢ１０６の検索を行い、ステップ６０１で取り出したポートレットの参照するコンテンツ情報の有無を確認する（ステップ６０２）。コンテンツ情報が存在する場合には、参照するコンテンツ情報の形式（ＤＢ、ＸＭＬ、ＨＴＭＬ等）に合わせてキーワードの抽出を行い（ステップ６０４）、抽出した情報をキーワード情報管理手段１１０に通知する（ステップ６０６）。キーワード情報管理手段１１０は、キーワード情報ＤＢ１１１の検索を行い、解析対象のポートレットについて、すでに同じキーワードが格納されているかどうかのチェックを行う（ステップ６０７）。チェックの結果、すでに同じキーワードが格納されていた場合にはキーワード情報ＤＢ１１１への格納処理をスキップする。また、格納されていなかった場合には、キーワード情報ＤＢ１１１への格納処理を行う（ステップ６０８）。ステップ６０６〜ステップ６０８の処理はステップ６０４で取り出したすべてのキーワードに対して繰り返し実施する（ステップ６０５〜ステップ６０９）。また、ステップ６０４〜ステップ６０９の処理はステップ６０１で取り出したポートレットが参照するすべてのコンテンツ情報に対して繰り返し実施する（ステップ６０３〜ステップ６１０）。コンテンツ情報の解析処理が終了した場合、および参照するコンテンツ情報が存在しなかった場合は、次にポートレットの表示画面そのものについてキーワード情報の解析処理を行う。まずポートレット表示手段１０２から取り出したポートレットの表示画面を取得し、キーワード情報の解析、抽出処理を行う（ステップ６１１）。この解析処理により抽出されたキーワード情報はコンテンツ情報から抽出したキーワード情報と同様に、キーワード情報管理手段１１０に通知される（ステップ６１３）。ここで、キーワード情報ＤＢ１１１の検索を行い、すでに同じキーワードが格納されているかどうかのチェックを行う（ステップ６１４）。チェックの結果、すでに同じキーワードが格納されていた場合にはキーワード情報ＤＢ１１１への格納処理をスキップする。また、格納されていなかった場合には、キーワード情報ＤＢ１１１への格納処理を行う（ステップ６１５）。ステップ６１３〜ステップ６１５の処理はステップ６１１で抽出したすべてのキーワード情報に対して繰り返し実施する（ステップ６１２〜ステップ６１６）。その後、キーワード解析処理を実施していないポートレットの有無を確認し（ステップ６１７）、もし未解析のポートレットが存在する場合には、ステップ６０１に戻って別のポートレットのキーワード解析処理を実行する。また、すべてのポートレットについて解析処理が完了した場合には、キーワード解析処理を終了する。
【００５０】
以上で説明したキーワード解析処理の実施例について、図５に示した各ポートレットを用いて説明する。なお、本実施例においては、キーワード情報として、コンテンツ情報の形式がＤＢの場合はカラム名称、ＸＭＬの場合はＤＴＤで定義されているタグ名称、ＨＴＭＬの場合は<TH>タグで囲まれた見出し名称をそれぞれキーワードとして使用するものとする。
【００５１】
図１のキーワード抽出手段１０９は、ステップ６０１の処理において、表示しているポートレットの１つをポートレット表示手段１０２から取り出す。ここでは、表示中のポートレットの中から最初に”予算情報ポートレット”（予算情報ポートレット５０７）を取り出したとする。次に、キーワード抽出手段１０９は、ステップ６０２の処理において、ポートレットコンテンツ参照情報管理手段１０５から各ポートレットが参照しているコンテンツの情報を取得する。各ポートレットが参照しているコンテンツ情報に関する情報は、図４に示した、ポートレット参照情報管理テーブル４０１のように格納されている。キーワード抽出手段１０９は、個人識別ＩＤ４０２とポートレット名称４０３の情報を元に検索を行い、解析対象のポートレットが参照するコンテンツ情報の有無、および解析対象となるコンテンツの特定を行う。
【００５２】
図４のポートレット参照情報管理テーブル４０１を検索すると、予算情報ポートレットが参照するコンテンツ情報として、ポートレット参照情報管理情報４０６に登録されている”部課名別収入(予算)情報テーブル”とポートレット参照情報管理情報４０７に登録されている”部課名別支出(予算)情報テーブル”の２つのコンテンツ情報のあることがわかる。これらのコンテンツ情報は、参照情報形式４０４の内容から両方ともＤＢのテーブルであることがわかる。
【００５３】
図７は、図５に示した予算情報ポートレット５０７が参照するコンテンツ情報（ＤＢ）の形式を示した図である。先に説明したとおり、予算情報ポートレット５０７が参照するコンテンツ情報として、部課名別収入(予算)情報テーブル７０１と部課名別支出(予算)情報テーブル７０２の２つのテーブルが抽出されている。部課名別収入(予算)情報テーブル７０１は、部課ごとの収入予算に関する情報を格納しているテーブルであり、部課名７０３と前期繰越７０４、事業収入７０５というカラムで構成されている。また、部課名別支出(予算)情報テーブル７０２は、部課ごとの支出予算に関する情報を格納しているテーブルであり、部課名７０６、直接費７０７、間接費７０８といったカラムで構成されている。
【００５４】
図１のキーワード抽出手段１０９は、ステップ６０４の処理において、まず部課名別収入(予算)情報テーブル７０１からキーワード情報の抽出を行う。本実施例では、キーワード情報として各テーブルのカラム名を使用するため、部課名別収入(予算)情報テーブル７０１からは、予算情報ポートレット５０７のキーワード情報として、"部課名"、"前期繰越"、"事業収入"の３つのキーワードが抽出される。次に、抽出したキーワード情報の１つをステップ６０６でキーワード情報管理手段１１０に通知し、次のステップ６０７の処理においてキーワード情報ＤＢ１１１内にすでに格納されているキーワード情報かどうかについてのチェックを行う。本実施例においては、最初のキーワード情報の格納であるため、同じキーワードは、キーワード情報ＤＢ１１１には格納されていない。したがって、ステップ６０８の処理が実行され、キーワード情報の格納処理が実行されることになる。また、ステップ６０５〜ステップ６０９の処理はステップ６０４で抽出したすべてのキーワード情報に対して行われる。その結果、キーワード情報の格納状態は図８のようになる。
【００５５】
図８はキーワード情報ＤＢ１１１内におけるキーワード情報の格納状態を示したものである。キーワード情報を格納するキーワード情報テーブル８０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ８０２、ポートレットの名称を格納するポートレット名称８０３、ポートレットから抽出したキーワードを格納するキーワード８０４で構成される。部課名別収入(予算)情報テーブル７０１から抽出した３つのキーワードは、それぞれ、"部課名"は、キーワード情報８０５に、"前期繰越"はキーワード情報８０６に、"事業収入"はキーワード情報８０７に格納されている。
【００５６】
図１のキーワード抽出手段１０９は、ステップ６０３〜６１０のループ処理において、解析対象のポートレットが参照するすべてのコンテンツ情報についてキーワード情報の解析処理を繰り返し実行する。したがって、キーワード抽出手段１０９は、部課名別収入(予算)情報テーブル７０１の解析処理が終わると、ステップ６０４の処理に戻り、次に部課名別支出(予算)情報テーブル７０２の解析処理を実行する。部課名別支出(予算)情報テーブル７０２にはカラム名として、”部課名”、”直接費”、”間接費”の３つが存在しており、キーワード抽出手段１０９はこれらのカラム名をキーワードとして抽出する。抽出したキーワードはステップ６０６の処理においてキーワード情報管理手段１１０に通知される。ここで、部課名別支出(予算)情報テーブル７０２から抽出したキーワードのうち、”部課名”は図８のキーワード情報８０５としてキーワード情報ＤＢ１１１に格納されている。したがって、キーワード”部課名”については、ステップ６０７の処理において、キーワード情報ＤＢ１１１への格納処理がスキップされる。残りの２つのキーワードについては、キーワード情報ＤＢ１１１に未登録のため、ステップ６０８において、キーワード情報ＤＢ１１１に追加登録される。
【００５７】
以上の処理の結果、図８に示したキーワード情報を格納するキーワード情報テーブル８０１は、図９のようになる。図９に示したキーワード情報テーブル９０１は、図８に示したキーワード情報テーブル８０１に対して部課名別支出(予算)情報テーブル７０２から抽出したキーワード情報を追加した状態を示したものであり、形式はキーワード情報テーブル８０１と同じである。すなわち、テーブルに格納する情報として利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ９０２、ポートレットの名称を格納するポートレット名称９０３、ポートレットから抽出したキーワードを格納するキーワード９０４で構成される。また、追加されたキーワード情報は、キーワード情報９０８、キーワード情報９０９の２つのみである。
【００５８】
本装置は、コンテンツ情報の解析処理が終わると次にポートレット画面の解析処理を行う。図５に示した予算情報ポートレット５０７は、コンテンツ情報として図７の部課名別収入(予算)情報テーブル７０１と部課名別支出(予算)情報テーブル７０２の２つを参照しており、各テーブルから部課名をキーとして情報を取得し、取得した値を加算して表示する。図５の予算情報ポートレット５０７上に表示されている情報のうち、”収入”は部課名別収入(予算)情報テーブル７０１から取得した前期繰越７０４と事業収入７０５の値を加算した値を表示する。また、”支出”の方は、部課名別支出(予算)情報テーブル７０２から取得した直接費７０７と間接費７０８の値を加算して表示する。以上で、述べたように図５の予算情報ポートレット５０７の画面は部課名や各テーブルに格納されている値を元に動的に生成される画面であり、通常はJSPやサーブレット等の技術を用いて生成される。ここで、予算情報ポートレット５０７の画面が保持するキーワードとしては”収入”と”支出”の２つがあるが、これらの情報はポートレット画面の生成時に動的に埋め込まれるものであり、コンテンツ情報としては含まれていない。したがって、図６のステップ６０２〜６１０の処理では抽出することができない。
【００５９】
この問題に対処するため、本装置ではポートレットの表示画面を直接解析することでキーワード情報の抽出を行う。動的に生成される画面であっても、利用者に対して表示される生成後の画面は通常ＨＴＭＬ形式の画面となる。ＨＴＭＬは静的なコンテンツ情報の一つとみなすことができるためキーワード情報の抽出が可能となる。本装置においては、図１のポートレット表示手段１０２から、ポートレット表示後の画面に関する情報を取得することにより、キーワード抽出手段１０９においてキーワード情報の抽出処理を実行する。
【００６０】
図１０は、図５に示した予算情報ポートレット５０７の動的に生成された画面のＨＴＭＬである。予算情報ポートレット表示画面ＨＴＭＬ１００１の生成処理はJSPやサーブレット等により動的に行われているが、表示画面そのものはＨＴＭＬ形式となる。本実施例においては、ＨＴＭＬに対するキーワード情報の抽出をタグ名をキーとして行うとしており、図１０に示したＨＴＭＬについては<TH>タグで囲まれた文字列をキーワード情報として扱う。以上の結果より、図６のステップ６１１では、”部課名”、”収入”、”支出”の３つのキーワードが抽出されることになる。さらに、この３つの抽出したキーワードに対して、ステップ６１２〜ステップ６１６の処理をコンテンツ情報から抽出したキーワード情報の際と同様に実行する。すなわち、キーワード”部課名”は図９のキーワード情報９０５に示すように、すでに予算情報ポートレットのキーワードとして登録済みであるため、ステップ６１４でキーワード情報ＤＢ１１１への登録処理がスキップされる。また、他の２つのキーワードについては、キーワード情報ＤＢ１１１に未登録のためステップ６１５でキーワード情報ＤＢ１１１に登録される。
【００６１】
以上の処理により、予算情報ポートレットに対するキーワード情報の抽出処理は完了するが、ステップ６１７においてキーワード情報の解析処理が実施されていないポートレットの有無のチェックを行い、解析処理を実施していないポートレットが存在する場合には、未解析のポートレットについてステップ６０１〜ステップ６１６の処理を実行する。以下では、図５に示した予算情報ポートレット５０７の他のポートレットのキーワード抽出処理について説明する。
【００６２】
まず、コスト情報ポートレット５０６について説明する。コスト情報ポートレット５０６は図４のポートレット参照情報管理テーブル４０１から、ポートレット参照情報管理情報４０８に登録されている”プロジェクト名別コスト実績情報テーブル”、ポートレット参照情報管理情報４０９に登録されている”部課名別支出(実績)情報テーブル”、ポートレット参照情報管理情報４１０に登録されている”受注情報テーブル”の３つのコンテンツ情報を参照していることがわかる。図１１は、コスト情報ポートレット５０６が参照するコンテンツ情報（ＤＢ）の形式を示した図である。上記の通り、コスト情報ポートレット５０６が参照するコンテンツ情報として、プロジェクト名別コスト実績情報テーブル１１０１と部課名別支出(実績)情報テーブル１１０２、受注情報テーブル１１０３の３つが存在する。また、図５に示した通りコスト情報ポートレット５０６のポートレット表示画面は、予算情報ポートレット５０７と同様の画面構成となっており、”部課名”、”収入”、”支出”といったキーワードが含まれている。以上の結果より、各テーブルから予算情報ポートレット５０７の時と同じようにカラム名について重複を排除してキーワード情報の抽出を行うと、コスト情報ポートレットのキーワード情報は、”部課名”、”プロジェクト名”、”加工費”、”材料費”、”設備費”、”管理費”、”製品名”、”売上高”、”収入”、”支出”となる。
【００６３】
また、受注情報ポートレット５０３は、図１１に示した３つのテーブルのうち、受注情報テーブル１１０３のみをコンテンツ情報として参照している。また、表示画面については、図５に示したように、”部課名”、”製品名”、”売上高”の３つのキーワードがテーブルとして表示されている。したがって、受注情報ポートレット５０３のキーワード情報は、”製品名”、”部課名”、”取引先名”、”売上高”となる。
【００６４】
図５の取引先情報ポートレット５０１は、図４のポートレット参照情報管理テーブル４０１から、ポートレット参照情報管理情報４１２に登録されている”取引先実績情報テーブル”とポートレット参照情報管理情報４１３に登録されている”取引先情報ＸＭＬ”の２つのコンテンツ情報を参照していることがわかる。取引先実績情報テーブルは、参照情報形式がＤＢであることから、予算情報ポートレット５０７等と同様にテーブルのカラム名をキーワードとして抽出する。図１２は、取引先情報ポートレット５０１が参照するコンテンツ情報（ＤＢ）の形式を示した図である。
【００６５】
もう一方の参照情報である”取引先情報ＸＭＬ”はＸＭＬ形式のデータである。図１３は、取引先情報ポートレット５０１が参照するＸＭＬデータの形式を示した図である。図１３に示した取引先情報ＸＭＬ１３０１には、データの前にＤＴＤが付加されている。本実施例ではＤＴＤにおけるタグ名の定義をキーワード情報として抽出する。
【００６６】
また、取引先情報ポートレット５０１の表示画面には、図５に示したように、”取引先名”、”取引先情報ＵＲＬ”、”売上高”といった文字が表示されている。したがって、図１２に示した取引先実績情報テーブル１２０１、取引先情報ＸＭＬ１３０１およびポートレット表示画面より、取引先情報ポートレット５０１のキーワード情報は、”製品名”、”プロジェクト名”、”部課名”、”取引先名”、”売上高”、”取引先情報ＵＲＬ”となる。
【００６７】
図５に示した総務情報ポートレット５０５については、図４のポートレット参照情報管理テーブル４０１におけるポートレット参照情報管理情報４１４より、参照しているコンテンツ情報が”総務情報ＸＭＬ”であることがわかる。図１４は総務情報ポートレット５０５が参照するＸＭＬデータの形式を示した図である。図１４に示した総務情報ＸＭＬ１４０１には、図１３に示した取引先情報ＸＭＬ１３０１と同様にＤＴＤが付加されている。したがって、取引先情報ポートレット５０１と同様にＤＴＤにおけるタグ名の定義をキーワード情報として抽出する。また、総務情報ポートレット５０５の表示画面には図５に示したように特定のキーワードとなるような文字は表示されていない。したがって、総務情報ポートレット５０５のキーワード情報は、”総務関連手続き名”と”担当係”の２つになる。
【００６８】
残りの規格情報ポートレット５０４は、については、図４のポートレット参照情報管理テーブル４０１におけるポートレット参照情報管理情報４１５より、参照しているコンテンツ情報が”規格情報ＨＴＭＬ”であることがわかる。図１５は規格情報ポートレット５０４が参照するＨＴＭＬデータの形式を示した図である。ＨＴＭＬ形式のデータについては図１０の予算情報ポートレット５０７表示画面におけるＨＴＭＬと同様に<TH>タグで囲まれた文字列をキーワード情報として扱う。また、規格情報ポートレット５０４の表示画面には”規格名”、”規格情報ＵＲＬ”の２つの文字が表示されている。したがって、規格情報ポートレット５０４のキーワード情報は、図１５の規格情報ＨＴＭＬ１５０１とポートレットの表示画面から、”規格名”と”規格情報ＵＲＬ”となる。
【００６９】
以上で説明したキーワード情報解析結果より、図１のポートレット表示手段１０２で表示しているすべてのポートレットからキーワード情報が抽出される。また、抽出したキーワードはキーワード情報ＤＢ１１１上に格納されている。図８にすべてのキーワード情報を登録し終わったキーワード情報テーブルの状態を示す。図１６のキーワード情報テーブル１６０１には、図１のポートレット表示手段１０２で表示している各ポートレットのコンテンツ情報および表示画面から抽出したすべてのキーワード情報が格納されている。
【００７０】
すべてのキーワード情報の登録が完了すると、次に図１のキーワード情報管理手段１１０は、キーワード間の関連度についての計算を行い、その結果をキーワード情報関連度ＤＢ１１２に格納する。この計算値は、ポートレット間の関連度を計算する際に使用する。以下では、キーワード情報関連度の算出方法について説明する。
【００７１】
キーワード情報関連度はキーワード情報間の関連の強さを数値で表現したものである。また、キーワード情報関連度ＤＢ１１２に格納されているキーワード情報は、各ポートレットのコンテンツ情報や表示画面から抽出したものであることから、各ポートレットの持つキーワード情報間の関連度の総和を計算することによりポートレット間の関連度についての比較を行うことが可能となる。
【００７２】
本実施例におけるキーワード情報関連度の計算処理の流れを図１７のフローチャート図に示す。キーワード情報関連度の計算処理においては、まず図１６のキーワード情報テーブル１６０１からすべてのキーワードの種類を抽出する（ステップ１７０１）。この抽出処理においてはポートレット名称１６０３の情報に関係なく、キーワードの種類のみを抽出する。ただし、個人識別ＩＤ１６０２の値は、現在解析を行っている利用者の個人識別ＩＤと同じである。次に、ステップ１７０１で抽出したキーワードについてすべての組み合わせを求める（ステップ１７０２）。例えば、”部課名”−”事業収入”、”前期繰越”−”直接費”といった組み合わせである。また、同一キーワードの組み合わせ（”部課名”−”部課名”等）もこの組み合わせの中に含める。ここで、一方のキーワードを対象キーワード、もう一方のキーワードを関連キーワードと呼ぶことにする。キーワードの組み合わせを”部課名”−”事業収入”と表現した場合、対象キーワードは”部課名”、関連キーワードは”事業収入”となる。
【００７３】
以上で抽出したすべてのキーワードの組み合わせに対して、ステップ１７０３〜ステップ１７１６の処理を繰り返す。まず対象キーワードと関連キーワードの比較を行い（ステップ１７０４）、同じキーワードであった場合には、それらのキーワードの組み合わせに対するキーワード情報関連度の値として”同一キーワード関連度”の値を設定する（ステップ１７０５）。ここで、”同一キーワード関連度”とは、対象キーワードと関連キーワードが同じキーワードの組み合わせに対して設定する関連度の値である。これに対し、”同一ポートレット関連度”という値も設定しておく。これは、同一ポートレット内に存在する異なるキーワードの組み合わせに対して設定する関連度の値のことである。
【００７４】
また、ステップ１７０４の処理において、対象キーワードと関連キーワードが異なる場合には、ステップ１７０６〜１７１５の処理を繰り返す。まずキーワード情報テーブル１６０１からキーワード情報を１つ取り出す（ステップ１７０７）。ステップ１７０７で取り出したキーワード情報のキーワード１６０４に設定されているキーワードと対象キーワードを比較し（ステップ１７０８）、キーワードが一致しない場合には１７０６に戻り次のキーワード情報を取り出して同様の処理を行う。また、キーワードが一致した場合には、ステップ１７０９〜ステップ１７１４の処理を繰り返す。ステップ１７０９〜ステップ１７１４内の処理では、最初にキーワード情報テーブル１６０１からキーワード情報を１つ取り出し（ステップ１７１０）、ステップ１７１０で取り出したキーワード情報のキーワード１６０４に設定されているキーワードと関連キーワードとの比較を行う（ステップ１７１１）。キーワードが一致しない場合には１７０９に戻って次のキーワード情報を取り出し、同様の処理を行う。キーワードが一致した場合には、ステップ１７０７で取り出したキーワード情報のポートレット名称１６０３とステップ１７１０で取り出したキーワード情報のポートレット名称１６０３の比較を行う。ここでポートレット名称が不一致であった場合には、ステップ１７０９に戻る。ポートレット名称が一致した場合には、対象キーワードと関連キーワードの組み合わせに対するキーワード情報関連度の値として”同一ポートレット関連度”の値を加算する。以上の処理を繰り返すことにより、同一キーワード間および同一ポートレット内に存在するキーワード間において関連度の値が設定されることになる。
【００７５】
次に、図１６に示したキーワード情報テーブル１６０１に格納されているキーワードについて図１７のフローチャートに沿ってキーワード情報関連度の計算方法を説明する。本実施例においては、”同一キーワード関連度”の値を6、”同一ポートレット関連度”の値を2、初期値を0とする。
【００７６】
まず、ステップ１７０１の処理において、キーワード情報テーブル１６０１からキーワード情報を抽出する。図１６に示したキーワード情報テーブルに登録されているキーワード情報はすべて同じ利用者（個人識別ＩＤ）に属するものとすると、キーワードの種類は、”部課名”、”収入”、”支出”、”事業収入”、”前期繰越”、”直接費”、”間接費”、”プロジェクト名”、”加工費”、”材料費”、”設備費”、”管理費”、”製品名”、”取引先”、”売上高”、”取引先情報ＵＲＬ”、”総務関連手続き名”、”担当係”、”規格名”、”規格情報ＵＲＬ”の２０種類となる。次に、ステップ１７０２の処理において、取り出したキーワードについてすべての組み合わせを求める。キーワードの組み合わせとしては、”部課名”−”部課名”、”部課名”−”収入”、”部課名”−”支出”といった組み合わせが２１０組生成される。
【００７７】
以上で求めた組み合わせに対して、ステップ１７０３〜ステップ１７１６の処理を適用する。例として、対象キーワードと関連キーワードが両方とも”部課名”であるケース（”部課名”−”部課名”の組み合わせ）と対象キーワードが”部課名”で関連キーワードが”収入”であるケース（”部課名”−”収入”）について説明する。まず、”部課名”−”部課名”のケースについては、ステップ１７０４の処理において対象キーワードと関連キーワードが同じであると判定されるため、ステップ１７０５の処理が実行される。ステップ１７０５の処理では、キーワードの組み合わせに対して”同一キーワード関連度”の値を設定するため、”部課名”−”部課名”のケースについては、キーワード関連度として6が設定される。このキーワードの組み合わせについては、以上でキーワード関連度の計算処理を終了する。
【００７８】
次に”部課名”−”収入”のケースについて説明する。”部課名”−”収入”のケースについてはステップ１７０４の処理において対象キーワードと関連キーワードが不一致と判定されるため、ステップ１７０６〜ステップ１７１４の処理が実行されることになる。ここで、まずステップ１７０７においてキーワード情報テーブル１６０１からキーワード情報を一つ取り出す。まずはテーブルの先頭からキーワード情報１６０５を取り出す。キーワード情報１６０５におけるキーワード１６０４のカラムには、”部課名”が登録されている。これは、対象キーワード”部課名”と一致するため、次にステップ１７０９〜ステップ１７１４の処理が実行される。ステップ１７１０では、ステップ１７０７と同様にキーワード情報テーブル１６０１の先頭からキーワード情報１６０５を取り出す。キーワード情報１６０５におけるキーワード１６０４のカラムは”部課名”であるため、関連キーワードの”収入”とは一致しない。したがって、ステップ１７１１の処理で異なるキーワードとして判定され、キーワード情報テーブル１６０１から次のキーワード情報の取り出しを行う。以上の処理を繰り返していくと、キーワード情報テーブル１６０１のキーワード情報１６０６において、キーワード１６０４のカラムが”収入”となり、関連キーワードと一致する。また、ステップ１７０７で取り出したキーワード情報１６０５とキーワード情報１６０６について、ポートレット名称１６０３のカラムの情報を比較すると、両方とも”予算情報ポートレット”となり一致する。したがって、ステップ１７１２の処理で同じポートレット名称であると判定され、”部課名”−”収入”の組み合わせに対するキーワード情報関連度の値として2が加算され、0+2=2でキーワード情報関連度の値は2となる。
【００７９】
キーワード１６０４が”部課名”のキーワード情報としては、キーワード情報１６０５、キーワード情報１６０７、キーワード情報１６０９、キーワード情報１６１０の４つがあり、キーワード１６０４が”収入”のキーワード情報としては、キーワード情報１６０６、キーワード情報１６０８の２つがあるが、ポートレット名称１６０３が一致するキーワード情報の組み合わせとしては、キーワード情報１６０５とキーワード情報１６０６、キーワード情報１６０７とキーワード情報１６０８の組み合わせの２つのみである。他のキーワード情報の組み合わせについては、ポートレット名称１６０３が一致しないため、ステップ１７１３の処理は実行されない。したがって、”部課名”−”収入”の組み合わせに対するキーワード情報関連度の値は最終的に2+2=4となる。
【００８０】
キーワード情報関連度の計算結果は、キーワード情報関連度ＤＢ１１２に格納される。図１８はキーワード情報関連度ＤＢ１１２における、キーワード関連度情報を格納するテーブルの形式を示したものである。キーワード情報関連度テーブル１８０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ１８０２、対象キーワードを格納する対象キーワード１８０３、関連キーワードを格納する関連キーワード１８０４、キーワード情報関連度の値を格納するキーワード情報関連度１８０５で構成される。すべてのキーワード情報の組み合わせに対するキーワード情報関連度の計算が終了した時点で、キーワード情報関連度テーブル１８０１の状態は図１８にしめしたようになる。先に説明した”部課名”−”部課名”の組み合わせ（キーワード情報関連度情報１８０６）についてはキーワード情報関連度の値が6、”部課名”−”収入”の組み合わせ（キーワード情報関連度情報１８０７）についてはキーワード情報関連度の値が4となっている。
【００８１】
以上の処理により、図１のキーワード情報ＤＢ１１１にはポートレットごとのキーワード情報、キーワード情報関連度ＤＢ１１２にはキーワード間の関連度の情報が格納されることになる。本装置においては、これらの情報、値を利用してポートレット間の関連度を算出し配置を変更する際の基準とする。
【００８２】
次に、利用者がポートレットを選択した場合における、ポートレットの自動配置処理について説明する。ポータルシステムの利用者が図１のポートレット表示手段１０２が表示しているポートレットの一つにマウスカーソルを合わせる等の選択処理を行うと、ポートレット表示手段１０２は、ポートレット配置変更手段１１３に対して、利用者が選択しているポートレットの周囲に関連度の高いポートレットを配置する旨の指示を出す。ポートレット配置変更手段１１３は、ポートレット表示手段１０２からの指示を受けると、ポートレット間関連度計算手段１１４に対してポートレット間の関連度を算出する旨の指示を出す。ポートレット間関連度計算手段１１４はキーワード情報管理手段１１０を経由して、キーワード情報ＤＢ１１１からポートレットごとのキーワードの種類、キーワード情報関連度ＤＢ１１２からキーワード情報間の関連度の情報を取得し、それらの情報を元にポートレット間の関連度の計算を行う。その計算結果に基づき、ポートレット配置変更手段１１３はポートレットの配置を決定しポートレット配置情報管理手段１０７に変更後の配置を通知する。ポートレット配置情報管理手段１０７は通知を受け取るとポートレット配置情報ＤＢ１０８の情報を更新して、ポートレット表示手段１０２にポートレット配置の変更を行う旨の通知を出す。ポートレット表示手段１０２はポートレット配置情報ＤＢ１０８の情報を元に配置の変更を行う。また、ポートレット間関連度計算手段１１４での関連度の計算結果は、キーワード情報関連度ＤＢ１１２にフィードバックする。
【００８３】
以下では、図５に示したポートレット表示画面５０１において、利用者が受注情報ポートレット５０３を選択した場合における配置変更の処理の実施例について説明する。利用者が受注情報ポートレット５０３を選択すると、ポートレット表示手段１０２は、ポートレット配置変更手段１１３に対して受注ポートレットに対する各ポートレットの関連度の計算と受注ポートレットと関連度が高いポートレットの配置変更を行う旨の指示を出す。ポートレット配置変更手段１１３は指示を受けると、ポートレット間関連度計算手段１１４に対してポートレット間の関連度の計算を行う旨の指示を出す。ポートレット間関連度計算手段１１４は、キーワード情報ＤＢ１１１とキーワード情報関連度ＤＢ１１２の情報を元に関連度の計算を行う。
【００８４】
図１９はポートレット間関連度計算手段１１４における、ポートレット間の関連度計算処理の流れを示したフローチャート図である。ポートレット間の関連度計算処理においては、まず利用者の選択しているポートレットが持つキーワード情報をキーワード情報テーブル１６０１からすべて抽出する（ステップ１９０１）。次に他のポートレットを１つずつ取り出し（ステップ１９０３）、ポートレット間の関連度の値を0で初期化して（ステップ１９０４）から、ステップ１９０３で取り出したポートレットの持つキーワードをすべて抽出する（ステップ１９０５）。その後、ステップ１９０１で抽出したキーワード情報の中からキーワード情報を一つ取り出し（ステップ１９０７）、またステップ１９０５で抽出したキーワード情報からもキーワード情報を一つ取り出し（ステップ１９０９）、それらの情報を元にキーワード情報関連度テーブル１８０１の検索を行ってキーワード情報間の関連度の値を取得する（ステップ１９１０）。ステップ１９１０で取得した値はステップ１９０４で初期化したポートレット間の関連度の値に加算する（ステップ１９１１）。ステップ１９０６〜ステップ１９１３の処理を、ステップ１９０１で抽出したキーワード情報とステップ１９０５で抽出したキーワード情報のすべての組み合わせについて実行することにより、利用者が選択しているポートレットと各ポートレット間のキーワード情報のすべての関連度の値がポートレット間の関連度の値に加算されることになる。この値をステップ１９０３で取り出したポートレットの関連度の値として保存する。また、ステップ１９０１〜ステップ１９１５の処理を繰り返すことにより、各ポートレット毎にポートレット間の関連度の値が算出される。その結果をもとに関連度の高い順にポートレットのソートを行い（ステップ１９１６）、ソートの結果をポートレット配置変更手段１１３に通知する。
【００８５】
図１９のフローチャート図に沿って、利用者が受注情報ポートレット５０３を選択している場合におけるポートレット間の関連度計算処理の流れについて説明する。利用者が受注情報ポートレットを選択している場合、ステップ１９０１ではキーワード情報テーブル１６０１のポートレット名称１６０３が”受注情報ポートレット”となっているキーワード情報についてキーワード１６０４に格納されているキーワードをすべて抽出する。その結果、ステップ１９０１では、キーワード情報１６１１から抽出した”製品名”、キーワード情報１６０９から抽出した”部課名”、キーワード情報１６１２から抽出した”取引先名”、キーワード情報１６１３から抽出した”売上高”の４つのキーワードが抽出される。次にステップ１９０３で他のポートレットを１つ取り出す。ここでは、処理対象のポートレットとして図５の予算情報ポートレット５０７を取り出したとする。また、ステップ１９０５で予算情報ポートレット５０７の持つキーワードを抽出すると、キーワード情報１６０５の”部課名”、キーワード情報１６１４の”事業収入”、キーワード情報１６１５の”前期繰越”、キーワード情報１６１６の”直接費”、キーワード情報１６１７の”間接費”、キーワード情報１６０６の”収入”、キーワード情報１６１８の”支出”の７つのキーワードが抽出される。
【００８６】
以上で抽出したキーワードについてステップ１９０６〜ステップ１９１３の処理を実行してポートレット間の関連度の値を計算する。ここで、図１８のキーワード情報関連度テーブル１８０１に格納されているキーワード情報間の関連度の値をマトリクス図で表記すると図２０のようになっている（空欄の個所は0）。受注情報ポートレット５０３の持つキーワード”製品名”に着目すると、予算情報ポートレット５０７が持つ各キーワード間の関連度は”製品名”−”部課名”が 6、”製品名”−”事業収入”が 0、”製品名”−”前期繰越”が 0、”製品名”−”直接費”が0、”製品名”−”間接費”が0、”製品名”−”収入”が2、”製品名”−”支出”が2となり、これらの合計値は10となる。また受注情報ポートレット５０３の持つ他のキーワードについて同様に関連度の値の合計値を算出すると、”部課名”の合計値が22、”取引先名”の合計値が10、”売上高”の合計値が10となる。したがって、受注情報ポートレット５０３と予算情報ポートレット５０７のキーワード情報関連度の値の合計は10+22+10+10=52となる。
【００８７】
以上の計算結果より、最終的にステップ１９１１で算出される値は52となる。この値はステップ１９１４において受注情報ポートレット５０３と予算情報ポートレット５０７の関連度の値として保存される。
【００８８】
また、他のポートレットについて同様にポートレット間の関連度の計算を行うと、取引先情報ポートレット５０２との関連度が88、規格情報ポートレット５０４との関連度が0、総務情報ポートレット５０５との関連度が0、コスト情報ポートレット５０６との関連度が164となる。以上の結果からステップ１９１６において関連度の高い順にポートレットのソートを行うと、コスト情報ポートレット５０６、取引先情報ポートレット５０２、予算情報ポートレット５０７、規格情報ポートレット５０４、総務情報ポートレット５０５となる（規格情報ポートレット５０４と総務情報ポートレット５０５は同じ順位)。この結果は、ポートレット配置変更手段１１３に対して通知される。
【００８９】
ポートレット配置変更手段１１３は受け取った結果を元にポートレットの配置変更を行う。ポートレットの配置変更は、利用者の選択しているポートレットを中心としてその周囲に関連度の高いポートレットが配置されるようにする。また、ポートレットの並び順は利用者の選択しているポートレットから見て左上を基点としてポートレット間の関連度の高い順にポートレットを配置していく。すなわち、利用者の選択しているポートレットの座標が、図３に示したポートレット配置情報テーブル３０１のポートレット位置情報３０４において(m、n)と設定されている場合に、最も関連度の高いポートレットは左上である(m-1、n-1)の位置に配置する。後は(m-1、n)、(m-1、n+1)、(m、n-1)、(m、n+1)、(m+1、n-1)、(m+1、n)、(m+1、n+1)、(m+2、n-1)という順に配置する。これにより利用者が選択しているポートレットの周囲に関連度の高いポートレットが配置されることになる。
【００９０】
また、ポートレット表示時は、再配置するポートレットの大きさを、利用者が選択しているポートレットの大きさに合わせて同じ大きさとなるように変更する。ポートレットの大きさに関する情報は、ポートレット大きさ情報３０５に格納されている。ポートレット配置変更手段１１３は、利用者が選択しているポートレットのポートレット大きさ情報３０５に格納されている情報を参照し、その大きさに合わせて他のポートレットのポートレット大きさ情報３０５に格納されている情報を変更する。
【００９１】
本実施例においては、利用者の選択している受注情報ポートレット５０３が、図３のポートレット配置情報３０８のポートレット位置情報３０４に設定されている情報より(1、2)の位置に配置されていることがわかる。したがって、(1、2)の左上である(0、1)を基点として配置を開始するが、0という座標はポートレット表示範囲の外になるため、(1、1)を基点として(1、3)、(2、1)、(2、2)、(2、3)の位置にソートした順に沿ってポートレットを配置する。その結果、各ポートレットの位置は、コスト情報ポートレット５０６が(1、1)、取引先情報ポートレット５０２が(1、3)、予算情報ポートレット５０７が(2、1)、規格情報ポートレット５０４が(2、2)、総務情報ポートレット５０５が(2、3)となる。この結果は、ポートレット配置変更手段１１３からポートレット配置情報管理手段１０７に通知されポートレット配置情報ＤＢ１０８に格納される。図２１は本処理適用後のポートレット配置情報テーブルの状態を示した図である。すなわち、図２１におけるポートレットの配置情報を格納するポートレット配置テーブル２１０１は、利用者ごとに割り当てられた個人識別ＩＤを格納する個人識別ＩＤ２１０２、表示するポートレットの名称を格納するポートレット名称２１０３、ポートレットの配置する位置を画面の右上を基点とする座標で示した値を格納するポートレット位置情報２１０４、ポートレットの大きさに関する情報を格納するポートレット大きさ情報２１０５で構成される。図３と比較してポートレット位置情報２１０４の情報がポートレット配置変更手段１１３の処理結果に合わせて変更されていることがわかる。また、ポートレット配置情報管理手段１０７は、ポートレットの位置情報が変更されたことをうけて、ポートレット表示手段１０２に対して配置が変更された旨の通知を行う。ポートレット表示手段１０２は、この通知を受けてポートレット表示画面の再表示を行う。図２２はポートレット配置変更後のポートレット表示画面の図である。図５と比較して受注情報ポートレットを中心に配置が変更されていることがわかる。
【００９２】
また、上記実施例ではポートレット間の関連度をもとに配置を変更しただけであるが、関連度の低いポートレットについてはポートレット表示画面で表示しないようにするということも可能である。上記実施例において、コスト情報ポートレット５０６、取引先情報ポートレット５０２、予算情報ポートレット５０７には関連度の値が設定されていたが、規格情報ポートレット５０４、総務情報ポートレット５０５については関連度の値が0となっている。関連度が0のポートレットは利用者が選択しているポートレットとは関係のない情報が表示されている可能性が高いため、ポートレット表示画面から削除することによりポートレット表示画面の視認性を向上させることが可能となる。
【００９３】
また、図１のポートレット間関連度計算手段１１４は、ポートレット間の関連度の計算結果をキーワード情報管理手段１１０に通知し、キーワード情報関連度ＤＢ１１２の値にフィードバックさせる。これによりキーワード情報に利用頻度という要素で重み付けを行うことが可能となる。
【００９４】
図２３はポートレット間関連度計算手段１１４、キーワード情報管理手段１１０におけるキーワード情報関連度フィードバック処理の流れを示したフローチャート図である。キーワード情報関連度フィードバック処理においては、まずはじめにポートレット間の関連度や関連度によるソート結果等に応じて各ポートレットが持つキーワード情報の関連度に加算する値を決定する（ステップ２３０１）。次に利用者が選択しているポートレットが持つキーワード情報をキーワード情報テーブル１６０１からすべて抽出する（ステップ２３０２）。また、利用者が選択している以外のポートレットを１つずつ取り出し（ステップ２３０４）、取り出したポートレットの持つキーワードをすべて抽出する（ステップ２３０５）。その後、ステップ２３０２で抽出したキーワード情報の中からキーワード情報を一つ取り出し（ステップ２３０７）、またステップ２３０５で抽出したキーワード情報群からもキーワード情報を一つ取り出し（ステップ２３０９）、それらの情報を元に図１８のキーワード情報関連度テーブル１８０１の検索を行う（ステップ２３１０）。最後にステップ２３１０で検索したキーワード関連度情報における、キーワード情報関連度１８０５に格納されているキーワード情報関連度の値にステップ２３０１で設定した値を加算する。ステップ２３０６〜ステップ２３１３の処理を、ステップ２３０２で抽出したキーワード情報とステップ２３０５で抽出したキーワード情報のすべての組み合わせについて実行することにより、利用者が選択しているポートレットと各ポートレット間のキーワード情報のすべての関連度の値にポートレット間関連度計算手段１１４で算出したポートレット間関連度の値およびポートレットのソートの結果をフィードバックさせることができる。
【００９５】
次に図２３のフローチャート図に沿って、利用者が受注情報ポートレット５０３を選択している場合におけるポートレット間の関連度をフィードバックする処理の流れについて説明する。本実施例においては、受注情報ポートレット５０３が持つキーワードと他のポートレットが持つキーワードの組合せに対するキーワード情報関連度の値についてポートレット間の関連度が高い順に3〜0の値を加算することにする。これによりポートレット間の関連度の計算結果をキーワード情報の関連度にフィードバックさせることができる。
【００９６】
利用者が受注情報ポートレット５０３を選択している場合において、ポートレット表示手段１０２が表示しているポートレットをポートレット間の関連度が高い順に並べると、コスト情報ポートレット５０６、取引先情報ポートレット５０２、予算情報ポートレット５０７、規格情報ポートレット５０４、総務情報ポートレット５０５の順になる（規格情報ポートレット５０４と総務情報ポートレット５０５は同じ順位)。本実施例においては、受注情報ポートレット５０３との関連度の値が高い順に、コスト情報ポートレット５０６に属するキーワードとの関連度については3、取引先情報ポートレット５０２に属するキーワードとの関連度については2、予算情報ポートレット５０７に属するキーワードとの関連度については1、規格情報ポートレット５０４、総務情報ポートレット５０５に属するキーワードとの関連度についてはポートレット間の関連度の値が0であったため加算は行わない(0を加算する)とする(ステップ２３０１)。
【００９７】
次にステップ２３０２の処理において、利用者が選択している受注情報ポートレット５０３の持つキーワード情報を図１６のキーワード情報テーブル１６０１から全て抽出する。受注情報ポートレット５０３が持つキーワード情報としては”製品名”、”部課名”、”取引先名”、”売上高”の４つがあるため、ステップ２３０２の処理においては、これら４つのキーワードが抽出される。
【００９８】
ステップ２３０３〜ステップ２３１４の処理はポートレット表示手段１０２で表示している全てのポートレットを対象として実施する。まずステップ２３０４でポートレットを１つ取り出す。ここでは、処理対象のポートレットとして、ポートレット間の関連度が最も高いコスト情報ポートレット５０６を取り出したとする。次にステップ２３０５でコスト情報ポートレット５０６が持つキーワード情報を図１６のキーワード情報テーブル１６０１から全て抽出する。この処理により、コスト情報ポートレットからは”部課名”、”プロジェクト名”、”加工費”、”材料費”、”設備費”、”管理費”、”製品名”、”売上高”、”収入”、”支出”の１０個のキーワードが抽出される。これらの抽出したキーワード情報に対してステップ２３０６〜ステップ２３１３の処理で、キーワード情報関連度テーブル１８０１上におけるキーワード情報関連度情報の検索とステップ２３０１で設定した値を関連度の値に加算する処理とを実施する。
【００９９】
ステップ２３０７で取り出したキーワードが”製品名”でステップ２３０９で取り出したキーワードが”部課名”であった場合には、キーワード情報関連度テーブル１８０１上からステップ２３１０の処理でキーワードが”部課名”−”製品名”の組合せとなっているキーワード情報関連度情報の検索を行い、キーワード情報関連度情報１８０８を検出する。その後、キーワード情報関連度情報１８０８におけるキーワード情報関連度１８０５の値に対してステップ２３０１で設定した値である3を加算する。キーワード情報関連度情報１８０８におけるキーワード情報関連度１８０５の値は、加算前の値が6であるため3を加算し9となる。以上で示したステップ２３０６〜ステップ２３１３の処理をステップ２３０２およびステップ２３０５で抽出した全てのキーワード情報の組合せに対して実施する。また、ステップ２３０６〜ステップ２３１３の処理については、ポートレット表示手段１０２で表示を行っている全てのポートレットに対して実行する。
【０１００】
図２３に示した処理を、全てのポートレットおよび全てのキーワードの組合せに対して行うと、キーワード情報関連度の値は図２０から図２４のようになる（空欄の個所は0）。図２４において関連度の高いポートレットが持っているキーワードの関連度の値はステップ２３０１で設定された値が加算されるため図２０よりも高くなっている。一方、関連度の低いポートレットが持っているキーワードの関連度の値は図２０から変化していない。例えば、上記実施例で説明した”部課名”−”製品名”の組合せについては、キーワード情報の関連度の値に3が加算される設定となっている受注情報ポートレット５０３とコスト情報ポートレット５０６の間では双方のポートレットが”部課名”と”製品名”のキーワードを保持しているため合計で6が加算される。また、キーワード情報の関連度の値に2が加算される設定となっている受注情報ポートレット５０３と取引先情報ポートレット５０２についてもコスト情報ポートレット５０６と同様に双方のポートレットが”部課名”と”製品名”のキーワードを保持しているため合計で4が加算される。最後にキーワード情報の関連度の値に1が加算される設定となっている受注情報ポートレット５０３と予算情報ポートレット５０７については、予算情報ポートレット５０７側が”部課名”のキーワードしか保持していないため、1のみが加算される。したがって、”部課名”−”製品名”間のキーワード情報関連度の元の値6に対してこれらの値を加算することにより、”部課名”−”製品名”間のキーワード情報関連度８０５の値は最終的に6+6+4+1=17となる。
【０１０１】
一方、ポートレット間の関連度が最も低い、規格情報ポートレット５０４および総務情報ポートレット５０５に登録されているキーワード”総務関連手続き名”、”担当係”、”規格名”、”規格情報ＵＲＬ”におけるキーワード情報関連度の値は図２０から変化していない。
【０１０２】
以上の処理により、ポートレット間の関連度の値をキ−ワード情報間の関連度の値にフィードバックすることができる。次に利用者が図１のポートレット表示手段１０２に対してポートレット選択の操作を行った場合、ポートレット間関連度計算手段１１４がキーワード情報間およびポートレット間の関連度の計算に用いる値は、図２４に示した図の値を使用する。また、計算後は、その結果が再びフィードバックされる。したがって、利用者の利用形態に合わせてキーワード情報間、ひいてはポートレット間の関連度に重み付けをすることが可能となるため、利用者の意図をポートレット配置に反映させることが可能となる。
【０１０３】
キーワードの種類およびキーワード間の関連度についてはコンテンツ等から自動的に抽出、算出するだけでなく、利用者やポータルシステムの管理者が明示的に追加、変更したい場合がある。例えば、利用者が表示されている情報とは別のキーワードに基づいて関連するポートレットを参照したい場合や、ポータルシステムの管理者が利用者全体に対してある特定のポートレットを常に関連付けて参照させるようにしたい場合には、このような手段が必要となる。
【０１０４】
本装置は、利用者やポータルシステムの管理者から指定される追加キーワードやキーワード間の関連度変更に関する情報を、図１のキーワード情報追加手段１１５で受け取る。キーワード情報追加手段１１５は、利用者やポータルシステム管理者から指定を受け取ると、その内容をキーワード情報管理手段１１０に通知する。キーワード情報管理手段１１０は、通知された情報をキーワード情報ＤＢ１１１およびキーワード情報関連度ＤＢ１１２に格納する。本装置は、キーワード情報ＤＢ１１１およびキーワード情報関連度ＤＢ１１２の情報を元にキーワード情報間の関連度やポートレット間の関連度といった値を算出する。したがって、利用者やポータルシステム管理者からの指定をキーワード情報ＤＢ１１１やキーワード情報関連度ＤＢ１１２に反映することで、ポートレットの配置変更時に、利用者やポータルシステム管理者からの指定を反映することが可能となる。
【０１０５】
利用者およびポータルシステム管理者がキーワード情報追加手段１１５に通知を行うケースとしては、キーワードを追加する場合とキーワード間の関連度を変更する場合の２つがある。まず、キーワードを追加する場合の処理について説明する。キーワードを追加する場合、利用者は、追加するキーワードとキーワードを関連付けるポートレットの指定を行う。これらの情報をキーワード情報追加手段１１５に通知すると、キーワード情報追加手段１１５は、指示を出している利用者の個人識別ＩＤを取得し、通知されたキーワードとポートレットの指定とともにキーワード情報管理手段１１０に通知する。また、ポータルシステムの管理者がキーワードを追加する場合については、追加するキーワードとキーワードを関連付けるポートレットの指定に加えて、キーワードを追加したい個人識別ＩＤについてもあわせて指定する。
【０１０６】
キーワード情報管理手段１１０は、キーワード情報追加手段１１５からキーワード追加の通知を受け取ると、受け取った情報をキーワード情報ＤＢ１１１に追加登録する。キーワード情報ＤＢ１１１においてキーワード情報を保持するキーワード情報テーブルの形式は図１６のキーワード情報テーブル１６０１に示すようになっている。したがって、キーワード情報管理手段１１０は、キーワード情報追加手段１１５から受け取った情報について個人識別ＩＤについては個人識別ＩＤ１６０２に、キーワードを関連付けるポートレットの指定をポートレット名称１６０３に、追加するキーワードの指定をキーワード１６０４に指定して情報の追加を行う。以上の処理により、キーワード情報テーブル１６０１には追加するキーワードに関するキーワード情報が追加される。実施例で説明したように、キーワード間の関連度の計算はキーワード情報テーブル１６０１に格納されているキーワードをもとに実施するため、キーワード情報テーブル１６０１にキーワード情報を追加することで、キーワード間、ポートレット間の関連度の計算に追加キーワードの指定を反映させることができる。
【０１０７】
次に、キーワード間の関連度を変更する場合の処理について説明する。キーワード間の関連度を変更する場合、利用者は、関連度の変更を行うキーワードの組と関連度の変更値をキーワード情報追加手段１１５に通知する。これらの情報をキーワード情報追加手段１１５に通知すると、キーワード情報追加手段１１５は、指示を出している利用者の個人識別ＩＤを取得し、通知されたキーワードの組と関連度の変更値の指定とともにキーワード情報管理手段１１０に通知する。また、ポータルシステムの管理者がキーワード間の関連度を変更する場合については、キーワードの組と関連度の変更値の指定に加えて、キーワード間の関連度を変更したい個人識別ＩＤについてもあわせて指定する。
【０１０８】
キーワード情報管理手段１１０は、キーワード情報追加手段１１５からキーワード間の関連度変更の通知を受け取ると、受け取った情報をもとにキーワード情報関連度ＤＢ１１２の検索を行う。キーワード情報関連度ＤＢ１１２においてキーワード情報間の関連度に関する情報を保持するキーワード情報関連度テーブルの形式は、図１８のキーワード情報関連度テーブル１８０１に示す形式となっている。したがって、キーワード情報管理手段１１０は、キーワード情報追加手段１１５から受け取った情報について、個人識別ＩＤと指定されたキーワードの組合せが合致するキーワード情報関連度情報の検索を行う。その後、検索処理により検出されたキーワード情報関連度情報におけるキーワード情報関連度１８０５に格納されている関連度に対して変更値の反映を行う。
【０１０９】
以上の処理により、キーワード情報関連度テーブル１８０１に格納されているキーワード間の関連度の値を変更することができる。実施例で説明したように、ポートレット間の関連度は、キーワード情報関連度テーブル１８０１に格納されているキーワード間の関連度の値の総和を求めることで算出される。したがって以上の処理により、利用者およびポータルシステム関連者の意向をポートレット間の関連度に反映させることが可能となる。  
【０１１０】
以上の実施例では、キーワード間の関連度変更の指定を利用者やポータルシステム管理者が明示的に指定する場合における関連度変更処理の流れについて説明した。本装置では、これらの手段に加えて、利用者によるポートレットの配置変更結果をキーワード情報間の関連度に変換して反映する手段を保持している。一般に、利用者がポートレットの配置を変更する理由としては、関連性のあるポートレットを近くに配置して参照するためといったことがあげられる。ここで、配置を変更するポートレットを”移動対象ポートレット”、移動先付近にあって利用者が移動対象ポートレットと関連付けて参照したいと考えているポートレットを”対象ポートレット”と呼ぶことにする。
【０１１１】
図２５は利用者によるポートレット配置変更の結果をキーワード間の関連度に反映する処理の流れを示したフローチャート図である。本処理の実行にあたり、利用者は対象ポートレットと移動対象ポートレットを図１のポートレット表示手段１０２に指定した後、ポートレットの配置を変更する。ポートレット表示手段１０２は、移動対象ポートレットにおける配置変更前の配置関連度の値を取得する（ステップ２５０１）。ここで、配置関連度とは、対象ポートレットを中心とした各ポートレットの配置位置に割り当てられた関連度の値のことを指す。本実施例では、利用者が選択しているポートレットの位置が(m、n)である場合に、(m-1、n-1)の位置を基点として関連度の値の高い順に(m-1、n-1)、(m-1、n)、(m-1、n+1)、(m、n-1)、(m、n+1)、(m+1、n-1)、(m+1、n)、(m+1、n+1)、(m+2、n-1)とポートレットを配置していく。配置関連度とは、これらの位置に対して割り当てた関連度の値のことを指す。例えば、(m-1、n-1)に対する配置関連度を8とした場合、次に関連度が高いポートレットを配置する(m-1、n)の位置に対する配置関連度は7、(m-1、n+1)の位置に対する配置関連度は6といったように値を割り当てておく。
【０１１２】
次に、図１のポートレット表示手段１０２は、移動対象ポートレットの配置変更後の配置関連度の値を取得する（ステップ２５０２）。その後ステップ２５０２で取得した配置関連度の値とステップ２５０１で取得した配置関連度の値との差を計算する（ステップ２５０３）。配置変更により配置関連度の値が下がった場合には、この値が負となる。また、配置関連度の値が上がった場合には、この値は正となる。
【０１１３】
配置関連度の差を計算した後、ポートレット表示手段１０２は、ポートレット配置情報管理手段１０７に対して配置が変更になった旨を通知する。ポートレット配置情報管理手段１０７は配置変更の通知を受け取ると、ポートレット配置情報ＤＢ１０８に格納されているポートレット位置情報３０４を変更した後、ポートレット配置変更手段１１３に対して配置が利用者により変更された旨通知を行う。通知を受けたポートレット配置変更手段１１３はポートレット間関連度計算手段１１４に対してポートレット間の関連度の値に配置の変更結果を反映するよう通知する。
【０１１４】
通知を受け取ると、ポートレット間関連度計算手段１１４は、対象ポートレットが保持するキーワードと移動対象ポートレットが保持するキーワードの全ての組合せについて、キーワード情報関連度ＤＢ１１２に格納されている図１８のキーワード情報関連度テーブル１８０１の検索を行う。まず対象ポートレットのキーワード情報を１つ取り出し（ステップ２５０５）、次に移動対象ポートレットのキーワード情報を１つ取り出す（ステップ２５０７）。その後、取り出したキーワード情報の組が対象キーワード１８０３と関連キーワード１８０４の組と一致するキーワード情報関連度情報の検索をキーワード情報関連度テーブル１８０１上で実行する（ステップ２５０８）。検索の結果により特定したキーワード情報関連度情報のキーワード情報関連度１８０５に格納されている値にステップ２５０３で算出した配置関連度の差の値を加算する（ステップ２５０９）。配置関連度の高い位置に配置を変更した場合は、配置関連度の差の値が正となるため、ステップ２５０９の加算処理によりキーワード間の関連度の値が高くなる。以上の処理は、対象ポートレットと移動対象ポートレットの持つすべてのキーワードの組み合わせについて実施する（ステップ２５０４〜ステップ２５１１）。
【０１１５】
次に、ポートレット間関連度計算手段１１４は、移動対象ポートレットを配置変更したことで、配置が変更となったポートレットが存在しないかどうかのチェックを行う（ステップ２５１２）。移動対象ポートレットの移動先に別のポートレットが既に存在した場合は、そのポートレットと配置を入れ替えることになる。配置が変更となったポートレットが存在した場合には、そのポートレットと対象ポートレットに対してステップ２５０４〜ステップ２５１１の処理と同様の処理を実行する。すなわち、対象ポートレットの持つすべてのキーワード情報を１つ取り出し（ステップ２５１４）、次に配置が変更となったポートレットが持つキーワード情報を１つ取り出し（ステップ２５１６）、取り出したキーワード情報の組が対象キーワード１８０３と関連キーワード１８０４の組と一致するキーワード情報関連度情報の検索をキーワード情報関連度テーブル１８０１上で実行する（ステップ２５１７）。次にステップ２５１７で特定したキーワード情報関連度情報のキーワード情報関連度１８０５に格納されている値に対して、ステップ２５０３で算出した配置関連度の差の値を反映するが、配置が変更となったポートレットの場合にはステップ２５０９の場合とは逆に配置関連度の差の値を減算することによって反映を実施する（ステップ２５１８）。配置が変更となるポートレットは移動対象ポートレットと位置が入れ替わることになるため、配置関連度の値の反映方法は移動対象ポートレットの場合と逆にする必要がある。以上の処理は、対象ポートレットと配置が変更になったポートレットの持つすべてのキーワードの組み合わせについて実施する。
【０１１６】
以上の処理の結果、キーワード情報関連度テーブル１８０１のキーワード情報関連度１８０５の値に対して、利用者のポートレット配置変更の結果を反映することができる。実施例で説明したように、ポートレット間の関連度は、キーワード情報関連度テーブル１８０１に格納されているキーワード間の関連度の値の総和を求めることで算出される。したがって以上で説明した処理により、利用者のポートレット配置に対する傾向をポートレット間の関連度の値に反映させることが可能となる。
【図面の簡単な説明】
【０１１７】
【図１】本発明におけるポートレット自動配置装置の概要を説明する図である。
【図２】ポートレット自動配置装置において利用者を認証する際に使用するテーブルの構成を説明する図である。
【図３】ポートレット自動配置装置においてポートレットの配置情報を格納するテーブルの構成を説明する図である。
【図４】ポートレット自動配置装置においてポートレットが参照するコンテンツ情報に関する情報を格納するテーブルの構成を説明する図である。
【図５】ポートレット自動配置装置において表示しているポートレット表示画面を説明する図である。
【図６】ポートレット自動配置装置におけるキーワード抽出処理の流れを説明するフローチャート図である。
【図７】ポートレット自動配置装置上で表示している予算情報ポートレットが参照するコンテンツＤＢのテーブル構成を説明する図である。
【図８】ポートレット自動配置装置におけるキーワード情報テーブルの構成を説明する図である。
【図９】ポートレット自動配置装置のキーワード情報テーブルにおいてコンテンツＤＢから抽出したキーワードが追加された状態を説明するための図である。
【図１０】ポートレット自動配置装置上で表示している予算情報ポートレットの表示画面におけるＨＴＭＬの状態を説明する図である。
【図１１】ポートレット自動配置装置上で表示しているコスト情報ポートレットおよび受注情報ポートレットが参照するコンテンツＤＢのテーブル構成を説明する図である。
【図１２】ポートレット自動配置装置上で表示している取引先情報ポートレットが参照するコンテンツＤＢのテーブル構成を説明する図である。
【図１３】ポートレット自動配置装置上で表示している取引先情報ポートレットが参照するコンテンツＸＭＬの構成を説明する図である。
【図１４】ポートレット自動配置装置上で表示している総務情報ポートレットが参照するコンテンツＸＭＬの構成を説明する図である。
【図１５】ポートレット自動配置装置上で表示している規格情報ポートレットが参照するコンテンツＨＴＭＬの構成を説明する図である。
【図１６】ポートレット自動配置装置のキーワード情報テーブルにおいてすべてのポートレットから抽出したキーワードが登録された状態を説明するための図である。
【図１７】ポートレット自動配置装置におけるキーワード情報関連度計算処理の流れを説明するフローチャート図である。
【図１８】ポートレット自動配置装置におけるキーワード情報関連度テーブルの構成を説明する図である。
【図１９】ポートレット自動配置装置におけるポートレット間関連度計算処理の流れを説明するフローチャート図である。
【図２０】ポートレット自動配置装置におけるキーワード情報関連度の初期値の状態を説明する図である。
【図２１】ポートレット自動配置装置においてポートレットの配置変更処理を行った後のポートレットの配置情報を格納するテーブルの状態を説明する図である。
【図２２】ポートレット自動配置装置においてポートレット配置変更後のポートレット表示画面を説明する図である。
【図２３】ポートレット自動配置装置におけるキーワード情報関連度フィードバック処理の流れを説明する図である。
【図２４】ポートレット自動配置装置におけるキーワード情報関連度の配置変更処理実行後の状態を説明する図である。
【図２５】ポートレット自動配置装置におけるポートレット配置変更処理の結果をキーワード間の関連度に反映する処理の流れを説明するフローチャート図である。
【符号の説明】
【０１１８】
１０１…ポートレット自動配置装置、１０２…ポートレット表示手段、１０３…個人認証手段、１０４…個人情報管理ＤＢ、１０５…ポートレットコンテンツ参照情報管理手段、１０６…ポートレット参照情報管理ＤＢ、１０７…ポートレット配置情報管理手段、１０８…ポートレット配置情報ＤＢ、１０９…キーワード抽出手段、１１０…キーワード情報管理手段、１１１…キーワード情報ＤＢ、１１２…キーワード情報関連度ＤＢ、１１３…ポートレット配置変更手段、１１４…ポートレット間関連度計算手段、１１５…キーワード情報追加手段、１１６…コンテンツＤＢ、１１７…コンテンツＸＭＬ、１１８…コンテンツＨＴＭＬ、１１９…利用者端末、１２０…利用者端末。
【図１】
2005346318.tif 000003
【図２】
2005346318.tif 000004
【図３】
2005346318.tif 000005
【図４】
2005346318.tif 000006
【図５】
2005346318.tif 000007
【図６】
2005346318.tif 000008
【図７】
2005346318.tif 000009
【図８】
2005346318.tif 000010
【図９】
2005346318.tif 000011
【図１０】
2005346318.tif 000012
【図１１】
2005346318.tif 000013
【図１２】
2005346318.tif 000014
【図１３】
2005346318.tif 000015
【図１４】
2005346318.tif 000016
【図１５】
2005346318.tif 000017
【図１６】
2005346318.tif 000018
【図１７】
2005346318.tif 000019
【図１８】
2005346318.tif 000020
【図１９】
2005346318.tif 000021
【図２０】
2005346318.tif 000022
【図２１】
2005346318.tif 000023
【図２２】
2005346318.tif 000024
【図２３】
2005346318.tif 000025
【図２４】
2005346318.tif 000026
【図２５】
2005346318.tif 000027