(57)【要約】レガシアプリケーションデータリポジトリとエンタプライズデータベースとの間でデータを移動させる方法及びシステムを開示する。１つの例示的なシステムは、レガシアプリケーションデータリポジトリ（１１６Ａ）、エンタプライズデータベース（３５４）、エンタプライズアプリケーション互換フォーマットでリポジトリ（１１６Ａ）からデータをエクスポートするエクスポートモジュール（３１２）、エクスポートしたデータを反映させるためにエンタプライズデータベース（３５４）をアップデートするためのチェックインモジュール（３５２）を包含している。該例示的なシステムは、更に、エンタプライズデータベース（３５４）からデータを抽出し且つ該抽出したデータをエンタプライズアプリケーション互換フォーマットへ変換するチェックアウトモジュール、及びチェックアウトしたデータを反映するためにリポジトリ（１１６Ａ）をアップデートするインポートモジュール（３１８）を包含している。
2005523521.tif 000002
【特許請求の範囲】
【請求項１】
レガシアプリケーションデータリポジトリからエンタプライズデータベースへデータを移動させる方法において、
レガシアプリケーションデータリポジトリからネイティブフォーマットで第一組のデータを抽出し、
前記第一組のデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のデータを発生し、
前記第二組のデータをデータベースサーバへ送信し、
前記第二組のデータに基づいてエンタプライズデータベースをアップデートする、
ことを包含している方法。
【請求項２】
請求項１において、前記エンタプライズアプリケーション互換フォーマットが拡張マークアップ言語フォーマットである方法。
【請求項３】
請求項１において、抽出する場合に、前記抽出すべきレガシアプリケーションデータリポジトリの前記データの少なくとも一部を識別することを包含している方法。
【請求項４】
請求項３において、前記第一組のデータが前記レガシアプリケーションデータリポジトリの前記データの前記識別された部分である方法。
【請求項５】
請求項１において、アップデートする場合に、
前記第二組のデータが前記エンタプライズデータベースから以前にチェックアウトしたデータを表わすことを決定し、
前記第二組のデータを前記エンタプライズデータベースにおけるデータと比較し、
前記エンタプライズデータベースにおける前記データの一部を前記第二組のデータで置換させる、
ことを包含している方法。
【請求項６】
請求項１において、前記エンタプライズデータベースがリレーショナルデータベースである方法。
【請求項７】
エンタプライズデータベースからレガシアプリケーションデータリポジトリへデータを移動させる方法において、
エンタプライズデータベースから第一組のデータを抽出し、
前記第一組のデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のデータを発生し、
前記第二組のデータを遠隔コンピュータへ送信し、
前記第二組のデータに基づいてレガシアプリケーションデータリポジトリをアップデートする、
ことを包含している方法。
【請求項８】
請求項７において、前記エンタプライズアプリケーション互換フォーマットが拡張マークアップ言語フォーマットである方法。
【請求項９】
請求項７において、前記レガシアプリケーションデータリポジトリをアップデートする場合に、前記第二組のデータに基づいてレコードを付加することを包含している方法。
【請求項１０】
請求項７において、前記レガシアプリケーションデータリポジトリをアップデートする場合に、
前記第二組のデータを前記レガシアプリケーションデータリポジトリの内容と比較し、
前記レガシアプリケーションデータリポジトリの一部を前記第二組のデータで置換させる、
ことを包含している方法。
【請求項１１】
請求項７において、前記エンタプライズデータベースがリレーショナルデータベースである方法。
【請求項１２】
レガシアプリケーションデータリポジトリとエンタプライズデータベースとの間でデータを移動させるシステムにおいて、
ネイティブフォーマットでデータを包含しているレガシアプリケーションデータリポジトリ、
エンタプライズデータベース、
エクスポートモジュールであって、前記ネイティブフォーマットで前記リポジトリから第一組のデータを抽出し、前記第一組のデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のデータを発生し、前記第二組のデータを出力すべく動作可能なエクスポートモジュール、
前記第二組のデータに基づいて前記エンタプライズデータベースをアップデートすべく動作可能なチェックインモジュール、
チェックアウトモジュールであって、前記エンタプライズデータベースから第一組のチェックアウトしたデータを抽出し、前記第一組のチェックアウトしたデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のチェックアウトしたデータを発生し、前記第二組のチェックアウトしたデータを出力すべく動作可能なチェックアウトモジュール、
前記第二組のチェックアウトしたデータに基づいて前記レガシアプリケーションデータリポジトリをアップデートすべく動作可能なインポートモジュール、
を有しているシステム。
【請求項１３】
請求項１２において、前記エンタプライズアプリケーション互換フォーマットが拡張マークアップ言語フォーマットであるシステム。
【請求項１４】
請求項１２において、前記エクスポートモジュールが、更に、抽出すべき前記レガシアプリケーションデータリポジトリの前記データの少なくとも一部を識別すべく動作可能であるシステム。
【請求項１５】
請求項１２において、前記チェックインモジュールが、更に、
前記第二組のデータが以前に前記エンタプライズデータベースからチェックアウトされたことを決定し、
前記第二組のデータを前記エンタプライズデータベースにおけるデータと比較し、
前記エンタプライズデータベースにおける前記データの一部を前記第二組のデータで置換させる、
べく動作可能であるシステム。
【請求項１６】
請求項１２において、前記インポートモジュールが、更に、前記第二組のチェックアウトしたデータに基づいてレコードを付加すべく動作可能であるシステム。
【請求項１７】
請求項１２において、前記インポートモジュールが、更に、
前記第二組のチェックアウトしたデータを前記レガシアプリケーションデータリポジトリの内容と比較し、
前記レガシアプリケーションデータリポジトリの一部を前記第二組のチェックアウトしたデータで置換させる、
べく動作可能であるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載するシステム及び方法は、大略、エンタプライズ情報処理環境に関するものである。更に詳細には、本明細書に記載するシステム及び方法は、エンタプライズ情報処理環境においてレガシデスクトップアプリケーションのデータの移動に関するものである。
【背景技術】
【０００２】
エンタプライズは、しばしば、例えばサーバ、ルータ、データベース、リポジトリ、メインフレーム、パソコン、ビジネスアプリケーション、エンタプライズ管理ソフトウエア等の多数のエンタプライズコンポーネントを包含する大型で複雑なコンピューティング環境を使用する。このようなエンタプライズは、例えば単一のパソコン上等の制限された環境において動作すべく設計されたレガシデスクトップアプリケーションを包含する場合がある。レガシデスクトップアプリケーションにより管理されるデータは、エンタプライズ内のその他のビジネスプロセス又はアプリケーションをサポートするために有用なものである場合があるが、そのデータは、レガシデスクトップアプリケーションの閉じられた即ちプロプライエタリアーキテクチャのために、このようなその他のプロセス又はアプリケーションに対して使用可能なものでない場合がある。
【０００３】
典型的に、レガシデスクトップアプリケーションからのデータは、ネイティブフォーマットで格納されており、それはエンタプライズアプリケーションにより容易にアクセス可能なものでない場合がある。デスクトップレガシアプリケーションからのデータがエンタプライズ内のその他のアプリケーション及び／又はプロセスによりアクセス可能でない場合には、ネットワーク上のデータベースサーバを使用してそのデータをこのようなその他のアプリケーション及び／又はプロセスに対してアクセス可能なものとさせることが可能である。然しながら、このようなレガシデスクトップアプリケーションをエンタプライズ互換アプリケーションへ変換する場合には、かなりのデータ層及び／又はかなりのアプリケーションを書直すことが必要となる場合がある。極端な例においては、アプリケーションを始めから再設計せねばならない場合がある。このような変化は、顕著な開発努力を関与させる場合があり、且つデスクトップアプリケーションのオンライン動作の新たな条件と関連する後方互換のために望ましいものでない場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ネイティブアプリケーションデータを管理するための従来のシステム及び方法は、ビジネスがレガシデスクトップアプリケーションデータを効率的に使用することを可能とするのに充分なものではない。特に、データのデータ層及び／又はネイティブフォーマットに影響を与えることなしにネイティブなレガシデスクトップアプリケーションデータへエンタプライズがアクセスすることを可能とする方法又はシステムは現在のところ存在しない。更に、ネイティブアプリケーションデータをエンタプライズ内のその他のアプリケーション及び／又はプロセスに対して使用可能なものとさせる問題に対する現在のソリューションは時間がかかり、レガシアプリケーションの著しい再開発を必要とし及び／又は再使用することが不可能であり且つレガシアプリケーションの後方互換を危険にさらす場合がある。
【課題を解決するための手段】
【０００５】
以下のものは、エンタプライズ処理環境においてネイティブアプリケーションデータを管理することに関連する方法及びシステムの簡単化した要約を与えるものである。この要約は、広範な概略ではなく又本方法及び／又はシステムのキー又は重要な要素を識別すること又は本方法及びシステム媒体の範囲を画することを意図したものではない。それは、後に提供されるより詳細な説明に対するプレリュードとして簡単化した形態で本方法及びシステムを概念的に識別するものである。
【０００６】
本願の一側面によれば、レガシアプリケーションデータリポジトリからエンタプライズデータベースへデータを移動するための例示的な方法が開示される。本方法は、レガシアプリケーションデータリポジトリからネイティブフォーマットで第一組のデータを抽出することを包含している。本方法は、又、エンタプライズアプリケーション互換フォーマットで第二組のデータを発生するために該第一組のデータを処理することを包含している。該第二組のデータはデータベースサーバへ送信され、且つエンタプライズデータベースは該第二組のデータに基づいてアップデートされる。
【０００７】
本願の別の側面によれば、エンタプライズデータベースからレガシアプリケーションデータリポジトリへデータを移動する２番目の例示的方法が開示される。この２番目の方法は、エンタプライズデータベースから第一組のデータを抽出し、且つエンタプライズアプリケーション互換フォーマットで第二組のデータを発生するために該第一組のデータを処理することを包含している。該２番目の方法は、更に、該第二組のデータを遠隔コンピュータへ送信し、且つ該第二組のデータに基づいてレガシアプリケーションデータリポジトリをアップデートすることを包含している。
【０００８】
本願の更に別の側面によれば、レガシアプリケーションデータリポジトリとエンタプライズデータベースとの間でデータを移動させる例示的なシステムが開示される。このシステムは、ネイティブフォーマットでデータを包含するレガシアプリケーションデータリポジトリ、及びエンタプライズデータベースを包含している。本システムは、又、ネイティブフォーマットで該リポジトリから第一組のデータを抽出し、該第一組のデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のデータを発生し、該第二組のデータを出力すべく動作可能なエクスポートモジュールを包含している。本システムは、更に、該第二組のデータに基づいてエンタプライズデータベースをアップデートすべく動作可能なチェックインモジュールを包含している。
【０００９】
更に、本システムは、エンタプライズデータベースから第一組のチェックアウトしたデータを抽出し、該第一組のチェックアウトしたデータを処理してエンタプライズアプリケーション互換フォーマットで第二組のチェックアウトしたデータを発生し、該第二組のチェックアウトしたデータを出力すべく動作可能なチェックアウトモジュールを包含している。本システムにはインポートモジュールも包含されている。該インポートモジュールは、該第二組のチェックアウトしたデータに基づいてレガシアプリケーションデータリポジトリをアップデートすべく動作可能である。
【００１０】
本方法及びシステムのある例示的な側面について以下の説明及び添付の図面に関連して本明細書において記載する。然しながら、これらの側面は本方法、システム、媒体の原理を使用することが可能な種々の態様のうちの二三のものを表わすに過ぎないものであり、従って実施例はこれらの側面及び均等物を包含することを意図している。その他の利点及び新規な特徴は、添付の図面を参考に以下の詳細な説明から明らかなものとなる。
【発明を実施するための最良の形態】
【００１１】
例示的な方法及びシステムについて図面を参照に説明するが、同様な参照番号は明細書全体を通じて同様な要素を参照するために使用している。以下の説明において、説明の便宜上、本方法及びシステムを完全に理解することを簡単化するために多数の特定の詳細について記載する。然しながら、本方法及びシステムはこれらの特定の詳細なしで実施することが可能であることは明らかである。その他の場合においては、よく知られた構造及び装置は説明を簡単化するためにブロック図の形態で示してある。
【００１２】
図１は例示的なコンピュータ１００を例示しており、それは、プロセッサ１０２、メモリ１０４、ディスク１０６、入力／出力ポート１１０、バス１０８により動作接続されるネットワークインターフェース１１２を包含している。本明細書に記載する本システムの実行可能なコンポーネントはコンピュータのようなコンピュータ１００上に位置させることが可能である。同様に、本明細書に記載するコンピュータにより実行可能な方法はコンピュータ１００のようなコンピュータ上で実施することが可能である。更に、ネイティブフォーマットで関連するデータへアクセスすべく設計されているレガシデスクトップアプリケーションは、コンピュータ１００のようなコンピュータ上に存在することが可能であり及び／又はコンピュータ１００のようなコンピュータにより処理することが可能である。理解すべきことであるが、本明細書に記載するシステム及び方法と共にその他のコンピュータを使用することも可能である。
【００１３】
プロセッサ１０２は、デュアルマイクロプロセッサ及びその他のマルチプロセッサアーキテクチャを包含する種々のプロセッサのうちの何れかとすることが可能である。メモリ１０４は、揮発性メモリ及び／又は非揮発性メモリを包含することが可能である。非揮発性メモリは、これらに制限されるものではないが、リードオンリメモリ（ＲＯＭ）、プログラム可能なリードオンリメモリ（ＰＲＯＭ）、電気的にプログラム可能なリードオンリメモリ（ＥＰＲＯＭ）、電気的に消去可能プログラム可能なリードオンリメモリ（ＥＥＰＲＯＭ）等を包含することが可能である。揮発性メモリは、例えば、ランダムアクセスメモリ（ＲＡＭ）、シンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、及びダイレクトＲＡＭバスＲＡＭ（ＤＲＲＡＭ）を包含することが可能である。ディスク１０６は、これらに制限されるべきものではないが、磁気ディスクドライブ、フロッピーディスクドライブ、テープドライブ、ジップ（Ｚｉｐ）ドライブ、フラッシュメモリカード及び／又はメモリスティック等の装置を包含することが可能である。更に、ディスク１０６は、コンパクトディスクＲＯＭ（ＣＤ−ＲＯＭ）、ＣＤ記録可能ドライブ（ＣＤ−Ｒドライブ）、ＣＤ再書込み可能ドライブ（ＣＤ−ＲＷドライブ）及び／又はデジタルバーサタイルＲＯＭドライブ（ＤＶＤ  ＲＯＭ）等の光学的装置を包含することが可能である。メモリ１０４は、例えば、プロセス１１４及び／又はデータ１１６を格納することが可能である。ディスク１０６及び／又はメモリ１０４は、コンピュータ１００のリソースを制御し且つ割当てを行うオペレーティングシステムを格納することが可能である。
【００１４】
バス１０８は単一の内部バス相互接続アーキテクチャ及び／又はその他のバスアーキテクチャとすることが可能である。バス１０８は、これらに制限されるものではないが、メモリバス又はメモリ制御器、ペリフェラルバス又は外部バス、及び／又はローカルバスを包含する多様なタイプのものとすることが可能である。ローカルバスは、これらに制限されるものではないが、インダストリアルスタンダードアーキテクチャ（ＩＳＡ）バス、マイクロチャンネルアーキテクチャ（ＭＳＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）バス、ユニバーサルシリアル（ＵＳＢ）バス、スモールコンピュータシステムインターフェース（ＳＣＳＩ）バスを包含する多様なものとすることが可能である。
【００１５】
コンピュータ１００は、入力／出力ポート１１０を介して、入力／出力装置１１８と相互作用を行う。入力／出力装置１１８は、これらに制限されるものではないが、キーボード、マイクロフォン、ポインティング及び選択デバイス、カメラ、ビデオカード、ディスプレイ等を包含することが可能である。入力／出力ポート１１０は、これらに制限されるものではないが、シリアルポート、パラレルポート、ＵＳＢポートを包含することが可能である。
【００１６】
コンピュータ１００はネットワーク環境で動作することが可能であり、従って、ネットワークインターフェース１１２によってネットワーク１２０へ接続されている。ネットワーク１２０を介して、コンピュータ１００は論理的に遠隔コンピュータ１２２へ接続することが可能である。遠隔コンピュータ１２２は１個又はそれ以上のエンタプライズデータベースを包含するエンタプライズサーバとして作用することが可能である。ネットワーク１２０は、これに制限されるものではないが、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、及びその他のネットワークを包含する。ネットワークインターフェース１１２は、これらに制限されるものではないが、ファイバ分散型データインターフェース（ＦＤＤＩ）、カッパー分散型データインターフェース（ＣＤＤＩ）、イーサーネット／ＩＥＥＥ８０２．３、トークンリング／ＩＥＥＥ８０２．５、ワイヤレス／ＩＥＥＥ８０２．１１等を包含するローカルエリアネットワーク技術へ接続することが可能である。同様に、ネットワークインターフェース１１２は、これらに制限されるものではないが、ポイントツーポイントリンク、及び統合サービスデジタルネットワーク（ＩＳＤＮ）、パケットスイッチングネットワーク、デジタルサブスクライバライン（ＤＳＬ）のような回路スイッチングネットワークを包含するワイドエリアネットワーク技術へ接続することが可能である。
【００１７】
図２はレガシデスクトップアプリケーション１１４Ａに対する処理命令を実行するコンピュータ１００を例示している。コンピュータ１００のメモリ１０４は、レガシアプリケーション処理命令１１４Ａの少なくとも一部を包含している。レガシデスクトップアプリケーション１１４Ａは、リポジトリ１１６Ａ内に局所的に格納されているレガシアプリケーションデータを使用すべく設計されている。リポジトリ１１６Ａのレガシアプリケーションデータは、ネイティブフォーマットにある場合があり、それは、該ネイティブフォーマットにおけるその他のアプリケーションによりサポートされていないか又は互換性がない場合がある。メモリ１０４はその他の処理命令及び／又はその他のデータを包含する場合があり、且つディスク１０６はリポジトリ１１６Ａより多くのものを格納する場合がある。
【００１８】
図３は例示的なエンタプライズ環境３００を例示しており、それはコンピュータ１００、コンピュータ３３０、エンタプライズサーバ３５０を包含している。図２に例示したように、コンピュータ１００は、レガシアプリケーション１１４Ａ及びレガシアプリケーションデータリポジトリ１１６Ａを包含している。コンピュータ１００は、更に、アプリケーションデータ１１６Ａを処理するためのエクスポートモジュール３１２及びインポートモジュール３１８を包含している。それらが使用されない場合には、エクスポートモジュール３１２及びインポートモジュール３１８はディスク１０６上又はコンピュータ１００により遠隔的にアクセス可能な格納装置上に局所的に格納することが可能である。処理期間中に、関連性のあるモジュール命令はコンピュータ１００のメモリ１１４内に存在することが可能である。
【００１９】
コンピュータ１００のように、コンピュータ３３０もレガシアプリケーション３３４、レガシアプリケーションデータリポジトリ３３６、エクスポートモジュール３３２、インポートモジュール３３８のインスタンスを包含している。エクスポートモジュールインスタンス３１２及び３３２は、夫々、ネイティブフォーマットでリポジトリ１１６Ａ及び３３６の少なくとも一部を抽出し、該データをエンタプライズ互換フォーマットへ変換し且つエンタプライズ互換フォーマットにある該データをチェックインモジュール３５２へ送信する。チェックインモジュール３５２は該エンタプライズ互換フォーマットにあるデータを受取り且つエンタプライズデータベース３５４をアップデートする。エンタプライズデータベース３５４はその他のエンタプライズアプリケーションと互換性のあるフォーマットでレガシアプリケーションデータを格納する。一実施例によれば、エンタプライズデータデータベース３５４はリレーショナルデータベースであるが、その他のタイプのデータベースを使用することも可能である。
【００２０】
エンタプライズデータベース３５４はチェックアウトモジュール３５６によりアクセス可能である。チェックアウトモジュール３５６はエンタプライズデータベース３５４内に格納されているアプリケーションデータに対する要求を取扱う任務を有している。チェックアウトモジュール３５６はエンタプライズデータベース３５６から要求されたデータを抽出し且つそれをエンタプライズ互換フォーマットへ変換することが可能である。抽出され且つ変換されたデータは、例えば、インポートモジュール３３８のような要求を行ったインポートモジュールインスタンスへ送信される。インポートモジュールインスタンス３３８はエンタプライズアプリケーション互換フォーマットにある抽出されたデータを受取り、該データをネイティブアプリケーションフォーマットへ変換し且つ受信したデータを反映させるためにローカルアプリケーションデータリポジトリ３３６をアップデートする。
【００２１】
図４はレガシアプリケーションリポジトリ１１６Ａとエンタプライズデータベース３５４との間での例示的なデータの移動のデータフローを例示したブロック図である。図４は、更に、例示的なシステムのモジュール間において転送されるデータのフォーマットを例示している。図４のシステムは、レガシアプリケーション１１４Ａのようなレガシデスクトップアプリケーションがそのネイティブデータフォーマットで継続して動作することを可能とする。エンタプライズデータベースサーバ３５０のエンタプライズデータベース３５４への読取り又は書込みアクセスはバッチ動作を介して達成することが可能である。
【００２２】
図示したように、レガシアプリケーション１１４Ａはコンピュータ１００上でネイティブフォーマットでリポジトリ１１６Ａ内のレガシアプリケーションデータへアクセスし、処理し及び／又はアップデートする。リポジトリ１１６Ａからエンタプライズデータベース３５４へのアプリケーションデータの移動を行うために、エクスポートモジュール３１２がネイティブフォーマットでリポジトリ１１６Ａからデータを抽出し且つその抽出したデータを、例えば、拡張マークアップ言語（ＸＭＬ）フォーマット等のその他のエンタプライズプロセス及びアプリケーションと互換性のあるフォーマットへ変換する。ＸＭＬフォーマットにある抽出されたデータはチェックインモジュール３５２へ送信され、該モジュールは抽出されたデータを反映するためにエンタプライズデータベース３５４をアップデートする任務を有している。チェックインモジュール３５２は該抽出したデータをＸＭＬ等のエンタプライズ互換フォーマットからエンタプライズデータベース３５４の特定のフォーマットへ変換することが可能である。
【００２３】
エンタプライズデータベース３５４からリポジトリ１１６Ａへのデータの移動を行うために、チェックアウトモジュール３５１はエンタプライズデータベース３５４のフォーマットでエンタプライズデータベース３５４からデータを抽出し且つその抽出したデータを例えばＸＭＬフォーマット等のその他のエンタプライズプロセス及びアプリケーションと互換性があるフォーマットへ変換する。ＸＭＬフォーマットで抽出されたデータはインポートモジュール３１８へ送信され、該モジュールは抽出されたデータを反映するためにリポジトリ１１６Ａをアップデートする任務を有している。インポートモジュール３１８は、該抽出したデータを、ＸＭＬ等のエンタプライズ互換フォーマットからレガシアプリケーションデータリポジトリ１１６Ａのネイティブフォーマットへ変換し、従ってリポジトリ１１６Ａをアップデートする。
【００２４】
図５は、リポジトリ１１６Ａ等のレガシアプリケーションデータリポジトリからエンタプライズデータベース３５４等のデータベースへデータを移動するための例示的な方法５００を例示している。ブロック５０５において、データがリポジトリ１１６Ａ等のリポジトリから抽出される。該抽出されたデータは、該リポジトリに格納されているデータの全てを表わす場合があり、又は該リポジトリ内に格納されているデータの全てのある一部の選択を表わす場合がある。抽出されるべきデータの選択及び識別は、当業者にとって知られている任意の方法に従って達成することが可能であり、且つあるレコード及び／又はあるフィールドの選択を包含する場合がある。
【００２５】
ブロック５１０において、該抽出されたデータはその他のエンタプライズアプリケーションと互換性があるフォーマットへ変換される。このようなエンタプライズアプリケーション互換フォーマットの一例はＸＭＬである。該変換されたデータはテキストファイル内に格納することが可能である。該データの変換は、実効的に、アプリケーションのデータを平坦化させ且つ該データをデータ比較機能又はユーティリティによりより効率的に分析することを可能とする。
【００２６】
ブロック５１５において、該変換されたデータはデータベースサーバへアップロードされる。次いでサーバ「チェックイン（Ｃｈｅｃｋ  Ｉｎ）」ルーチンがＸＭＬファイルの内容に基づいてエンタプライズデータベースをアップデートする（５２０）。該チェックインルーチンは、該抽出されたデータが図６を参照してより詳細に説明する先に実行した「チェックアウト（Ｃｈｅｃｋ  Ｏｕｔ）」ルーチン（５２５）により以前に発生されたか否かを決定する。該チェックアウトルーチンは、エンタプライズデータベースを読取り且つデータをチェックインプロセスと同じフォーマットへ変換させるサーバアプリケーションの一部とすることが可能である。
【００２７】
アップロードしたデータが先に実行したチェックアウトルーチンにより発生されたものでないものを表わす場合には、比較を行うことはなく、且つ該データはエンタプライズデータベース内へ挿入される（５３０）。該抽出したデータが先に実行したチェックアウトルーチンにより発生されていた場合には、チェックインルーチンが該抽出したデータをエンタプライズデータベースの内容と比較し且つそれに従ってエンタプライズデータベースをアップデートする（５３５）。
【００２８】
該データがエンタプライズデータベース内に格納されると、それはレガシアプリケーションのその他のインスタンスにより容易にアクセス可能である。該データをレガシアプリケーションの第二インスタンスで使用するために、該データはエンタプライズデータベースから該レガシアプリケーションの第二インスタンスにより使用されるレガシアプリケーションデータリポジトリへ移動させることが可能である。
【００２９】
図６はエンタプライズデータベース３５４のようなデータベースからリポジトリ１１６Ａのようなリポジトリへデータを移動させる例示的な方法６００を例示している。ブロック６０５において、エンタプライズデータベースからデータを抽出するための要求が受取られる。該要求は、あるデータを識別する選択基準、データベースから抽出すべきレコード及び／又はフィールドを包含することが可能である。ブロック６１０において、該要求されたデータが識別され且つデータベースから抽出される。
【００３０】
ブロック６１５において、該抽出されたデータは例えばＸＭＬ等のその他のエンタプライズアプリケーションと互換性のあるフォーマットへ変換される。方法５００におけるように、該変換されたデータはテキストファイルに格納することが可能であり、アプリケーションデータを実効的に平坦化させる。
【００３１】
ブロック６２０において、該変換されたデータはコンピュータ１００等のコンピュータへダウンロードされる。インポートルーチンがブロック６２５において実行され、それはＸＭＬファイルの内容に基づいてレガシアプリケーションデータリポジトリをアップデートする。一実施例によれば、該インポートルーチンは該エンタプライズデータベースから抽出されたデータのみを包含するレガシアプリケーションデータリポジトリを発生する。
【００３２】
代替的な実施例においては、該インポートルーチンは、該インポートされるべきデータは、先に実行されたエクスポートルーチンにより以前に発生されたものであるか否かを決定することが可能である。該インポートしたデータが先に実行したエクスポートルーチンにより発生されていない場合には、該抽出したデータは該エンタプライズデータベース内に挿入することが可能であり、そうでない場合には、該インポートルーチンはインポートすべきデータをレガシアプリケーションデータリポジトリの内容と比較し且つそれに従ってリポジトリをアップデートする。
【００３３】
本明細書に記載した方法及びシステムに関連して多数の利点が存在している。特に、本明細書に記載した方法及びシステムはレガシアプリケーションに対して要求する変化は最小である。変化が必要とされる場合には、ネイティブフォーマットとエンタプライズアプリケーション互換フォーマットとの間でのインポート／エクスポート機能性における変化が実現される。更に、本明細書に記載した方法及びシステムはレガシアプリケーションの後方互換をサポートする。デスクトップアプリケーションのネイティブフォーマットに必要とされる変化はほんのわずかであり、そのことは任意の既存のアプリケーションデータを将来において使用することを可能とさせる。
【００３４】
更に、本明細書に記載した方法の非同期特性は、レガシアプリケーションをオフラインで使用することを可能とする。それは、又、性能を改善する場合がある。何故ならば、チェックイン及びチェックアウトルーチンはサーバコンピュータ上で稼動するバッチ動作とすることが可能だからである。
【００３５】
上述したことは幾つかの例を包含している。勿論、レガシアプリケーションデータを管理することに関連するシステム、方法、及びコンピュータにより読取り可能な媒体を記載する目的のためにコンポーネント又は方法の全ての考えうる組合わせを記載することは不可能である。然しながら、当業者は、更なる組合わせ及び順列が可能であることを認識することが可能である。従って、本願は、特許請求の範囲内に該当するこれらの変更例、修正例、変形例を包含することを意図したものである。更に、「包含する」という用語が詳細な説明又は特許請求の範囲において使用されている場合には、その用語は、「有する」という用語が従来特許請求の範囲において使用される場合に解釈されるのと同一の態様で、包含的であることを意図している。
【図面の簡単な説明】
【００３６】
【図１】例示的に記載したシステム及び方法が相互作用を行うことが可能な例示的なパソコン環境を例示したブロック図。
【図２】例示的なレガシアプリケーションを処理する図１の例示的なパソコン環境を例示したブロック図。
【図３】本願の方法及びシステムと互換性を有する例示的なエンタプライズアーキテクチャを例示したブロック図。
【図４】レガシデスクトップアプリケーションとエンタプライズデータベースとの間でデータの例示的な移動のデータフローを例示したブロック図。
【図５】レガシアプリケーションデータリポジトリからエンタプライズデータベースへレガシアプリケーションデータを移動させる例示的な方法を例示したフローチャート。
【図６】エンタプライズデータベースからレガシアプリケーションデータリポジトリへレガシアプリケーションデータを移動するための例示的な方法を例示したフローチャート。
【図１】
2005523521.tif 000003
【図２】
2005523521.tif 000004
【図３】
2005523521.tif 000005
【図４】
2005523521.tif 000006
【図５】
2005523521.tif 000007
【図６】
2005523521.tif 000008
【国際調査報告】
2005523521.tif 000009