(57)【要約】      （修正有）【課題】優れた汎用性の下、処理効率やユーザビリティを良好なものとする。【解決手段】業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと各モジュール間のフロー処理の情報とを抽出するリバースエンジニアリング部１１０と、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、フロー処理に則してグループ化したルールデータを作成しこのルールデータからＸＢＲＬにおけるタクソノミデータを生成する実行処理機能生成部１１１と、オペレーティングシステムと前記プログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行う環境登録部１１２と、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し前記プログラムの実行処理を行う処理実行部１１３と、前記プログラムの実行処理結果を前記クライアント装置に送信する処理結果送信部１１４と、からシステム構成する。【選択図】  図１
2006065382.tif 000002
【特許請求の範囲】
【請求項１】
業務ロジックのアウトソーシングを行うシステムであって、
前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出する、リバースエンジニアリング部と、
前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成する、実行処理機能生成部と、
オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行う、環境登録部と、
アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行う、処理実行部と、
前記プログラムの実行処理結果を、前記クライアント装置に送信する、処理結果送信部と、
を備えることを特徴とするアウトソーシングシステム。
【請求項２】
請求項１において、
入力インターフェイスからの所定業務ロジックに関するルール閲覧要請に応じて、該当業務ロジックのルールデータをルールデータベースにて特定し、特定したルールデータに記載されたモジュールのアイコン画像と、各アイコン画像間を前記フロー処理に則して可視的に結ぶコネクタ画像とを、モジュール毎のアイコン画像とコネクタ画像とを格納した画像格納データベースより抽出し、表示用アイコンとコネクタ画像との組合せからなるルールデータ画像を出力インターフェイスに出力する、ルール表示処理部を備えることを特徴とするアウトソーシングシステム。
【請求項３】
請求項２において、
入力インターフェイスからのルールデータ修正要請に応じて、該当業務ロジックのルールデータに応じた前記ルールデータ画像をグラフィカルユーザインターフェイスとして出力インターフェイスに出力すると共に、前記ルールデータ画像を介して取得したルールデータの修正指示を該当ルールデータに仮適用し、このルールデータに対応する業務ロジックの実行可否を判定する、適合性確認部と、
前記判定において業務ロジックの実行可能と判定された場合、前記ルールデータの修正指示を前記ルールデータベースにおける該当ルールデータに反映させる、修正実行部と、
を備えることを特徴とするアウトソーシングシステム。
【請求項４】
業務ロジックのアウトソーシングをコンピュータにより行う方法であって、
前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出するステップと、
前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成するステップと、
オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行うステップと、
アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行うステップと、
前記プログラムの実行処理結果を、前記クライアント装置に送信するステップと、
を含むことを特徴とするアウトソーシング方法。
【請求項５】
業務ロジックのアウトソーシング方法をコンピュータに実行させるプログラムであって、
前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出するステップと、
前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成するステップと、
オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行うステップと、
アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行うステップと、
前記プログラムの実行処理結果を、前記クライアント装置に送信するステップと、
を備えることを特徴とするアウトソーシングプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アウトソーシングシステム、アウトソーシング方法、およびアウトソーシングプログラムに関する。
【背景技術】
【０００２】
アウトソーシングシステムの手法がいくつか提案されてきた。例えば、情報処理システムに使用されるソースプログラムの解析を支援するリバースエンジニアリング支援システムにおいて、前記ソースプログラムに含まれる複数の所定単位プログラムと該複数の所定単位プログラム間のフロー情報を抽出、解析して仕様情報を生成するとともに、前記複数の所定単位プログラムにそれぞれ対応する付随情報を抽出する仕様情報抽出手段と、前記仕様情報と前記付随情報とに基づいて前記複数の所定単位プログラム間の従属関係を分析し、前記複数の所定単位プログラムを少なくとも１つのグループにグルーピングして階層化された抽象仕様情報を生成するとともに、前記付随情報のうち前記グループに対応する情報を識別可能にする仕様情報抽象化手段と、前記抽象仕様情報と前記付随情報とをそれぞれ記憶する抽象仕様情報記憶手段及び付随情報記憶手段と、前記抽象仕様情報及び前記付随情報を表示するための表示手段と、前記抽象仕様情報に付加する意味付情報を入力するための入力手段と、前記抽象仕様情報記憶手段から前記所定単位プログラムまたは前記グループに対応する情報を選択的に読み出し、かつ読出した抽象仕様情報に対応する付随情報を前記付随情報記憶手段から読出して前記表示手段に表示させるともに、前記入力手段からの前記意味付情報を前記抽象化仕様情報に付加して前記仕様情報記憶手段に再び記憶させる意味付手段とを有することを特徴とするリバースエンジニアリング支援システム（特許文献１参照）などが提案されている。
【特許文献１】特開平９−１０１８８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来のアウトソーシングシステムにおいては、アウトソース対象となる業務ロジックを例えばＤＯＡ（Data Oriented Approach）モデリング手法などを用いて解析することでプログラミング言語に変換し、これを処理する必要があった。このような処理は、オペレーティングシステムなどシステムへの依存性が高く、汎用性が良好とは言えなかった。従って、アウトソーシングのシステム構築やアウトソーシング処理に関する効率やコストの点で改善の余地が残されていた。
【０００４】
更には、アウトソーシングシステムにおける業務ロジックに応じた処理ルールをユーザ側にグラフィカルに認識させたり、或いはこの処理ルールの変更を受け付けたりといった手法が提案されておらず、ユーザビリティへの配慮が薄かった。
【０００５】
そこで本発明は上記課題を鑑みてなされたものであり、優れた汎用性の下、処理効率やユーザビリティを良好なものとするアウトソーシングシステム、アウトソーシング方法、およびアウトソーシングプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決する本発明のアウトソーシングシステムは、業務ロジックのアウトソーシングを行うシステムであって、前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出する、リバースエンジニアリング部と、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成する、実行処理機能生成部と、オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行う、環境登録部と、アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行う、処理実行部と、前記プログラムの実行処理結果を、前記クライアント装置に送信する、処理結果送信部と、を備えることを特徴とする（第１の発明）。
【０００７】
第２の発明は、第１の発明において、入力インターフェイスからの所定業務ロジックに関するルール閲覧要請に応じて、該当業務ロジックのルールデータをルールデータベースにて特定し、特定したルールデータに記載されたモジュールのアイコン画像と、各アイコン画像間を前記フロー処理に則して可視的に結ぶコネクタ画像とを、モジュール毎のアイコン画像とコネクタ画像とを格納した画像格納データベースより抽出し、表示用アイコンとコネクタ画像との組合せからなるルールデータ画像を出力インターフェイスに出力する、ルール表示処理部を備えることを特徴とする。
【０００８】
第３の発明は、第２の発明において、入力インターフェイスからのルールデータ修正要請に応じて、該当業務ロジックのルールデータに応じた前記ルールデータ画像をグラフィカルユーザインターフェイスとして出力インターフェイスに出力すると共に、前記ルールデータ画像を介して取得したルールデータの修正指示を該当ルールデータに仮適用し、このルールデータに対応する業務ロジックの実行可否を判定する、適合性確認部と、前記判定において業務ロジックの実行可能と判定された場合、前記ルールデータの修正指示を前記ルールデータベースにおける該当ルールデータに反映させる、修正実行部と、を備えることを特徴とする。
【０００９】
第４の発明は、業務ロジックのアウトソーシングをコンピュータにより行う方法であって、前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出するステップと、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成するステップと、オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行うステップと、アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行うステップと、前記プログラムの実行処理結果を、前記クライアント装置に送信するステップと、を含むことを特徴とする。
【００１０】
第５の発明は、業務ロジックのアウトソーシング方法をコンピュータに実行させるプログラムであって、前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出するステップと、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成し、このルールデータからＸＢＲＬにおけるタクソノミデータを生成するステップと、オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行うステップと、アウトソーシング元のクライアント装置より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行うステップと、前記プログラムの実行処理結果を、前記クライアント装置に送信するステップと、を備えることを特徴とする。
【００１１】
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【発明の効果】
【００１２】
本発明によれば、優れた汎用性の下、処理効率やユーザビリティを良好なものとできる。
【発明を実施するための最良の形態】
【００１３】
−−−−ＸＢＲＬの概要−−−−
本実施形態においては、アウトソーシング依頼元のクライアント装置２００より受信した業務ロジックのプログラムを、アウトソーシングシステム１００が、リバースエンジニアリングの手法を用いて解析し、前記プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出する。そして、前記モジュールを前記フロー処理に則してグループ化したルールデータを作成することとなる。
【００１４】
アウトソーシングシステム１００は、本実施形態においてこのルールデータに含まれる前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとし、また、前記ルールデータからＸＢＲＬにおけるタクソノミデータを生成する。
【００１５】
前記ＸＢＲＬ（Extensible Business Reporting Language）とは、一般に、財務や経営などの用途に使用する情報を記述できるＸＭＬベースの言語であって、企業等における財務情報データ（例：貸借対照表や損益計算書といった財務諸表や内部会計報告など）の記述に適している言語である。
【００１６】
このＸＢＲＬでは、インスタンスおよびタクソノミという２種の文書で情報記述をすることになる。本実施形態におけるインスタンスは、例えば前記モジュールの情報データを記述したＸＭＬ文書である。モジュールにおける処理内容や各情報の処理順などは、タクソノミに記述することとなる。そのタクソノミは、タクソノミ本体とリンクベースとからなり、前記インスタンスの内容、構造、扱われ方などを定義するものとなっている。
【００１７】
また、前記タクソノミー本体は、前記インスタンスにおける語彙（要素名、属性など）を定義するものであり、具体的な属性データなどが定義される。他方、リンクベース（XLink）は、前記インスタンスの文書構造、各情報の表示順・処理順などを定義するもので、前記タクソノミ本体とは別のファイルに作成することとなる。当該リンクベースでは、XLinkを用いて例えば、項目間の表示順、項目間の親子関係、項目の表示内容（ラベル）、参考文献といったリンク定義が可能となる。
【００１８】
−−−システム−−−
上述のごときＸＢＲＬを用いたシステムの例を次に示す。以下に本発明の実施形態について図面を用いて詳細に説明する。図１は本実施形態におけるアウトソーシングシステム１００を含むネットワーク構成図である。本発明のアウトソーシングシステム１００（以下、システム１００）は例えばサーバコンピュータであり、本発明のアウトソーシング  方法を実行する機能を実現すべくハードディスクドライブなどのプログラムデータベース１０１に格納されたプログラム１０２をメモリ１０３に読み出し、演算装置たるＣＰＵ１０４により実行する。
【００１９】
また、システム１００は、ＬＡＮやインターネット等のネットワーク１５０を介して、クライアント装置２００らの外部装置と接続してデータ授受を実行するＩ／Ｏ部１０５を備える。更に、システム１００は、ルールデータベース１２５、タクソノミデータベース１２６、画像格納データベース１２７、会員データベース１２８、入出力データテーブル１２９、関連データテーブル１３０を利用可能である。
【００２０】
以下に、前記システム１００が例えばプログラム１０２に基づき構成・保持する機能部につき説明を行う。システム１００は、前記業務ロジックのプログラムから、当該プログラムを構成する複数のモジュールと、各モジュール間のフロー処理の情報とを抽出する、リバースエンジニアリング部１１０を備える。本実施形態では、前記モジュール抽出を担うのが処理方法抽出機能であり、フロー処理の情報抽出を担うのが処理定義作成機能としている。
【００２１】
このリバースエンジニアリング部１１０は、リバースエンジニアリング（Reverse Engineering）技術に基づく機能部である。なお、リバースエンジニアリング技術とは、既存のプログラム、ファイル、ドキュメントを詳細に分析し、設計目的や仕様を明らかにする技術である。
【００２２】
また、このリバースエンジニアリング部１１０がプログラムより抽出した、前記複数のモジュールは、例えば処理方法メモリ１４０なるメモリ領域に一旦格納される。同様に、リバースエンジニアリング部１１０が抽出したフロー処理の情報は、抽出フローメモリ１４１なるメモリ領域に一旦格納される。
【００２３】
また、システム１００は、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成してこれをルールデータベース１２５に格納する、実行処理機能生成部１１１を備える。ルールデータの例を図２に示す。図２は本実施形態におけるルールデータの一例を示す図である。このルールデータ１２５０は、ルールデータベース１２５に格納されるものであり、このルールデータ１２５０の記述に応じてモジュールおよびモジュール間のコネクタを可視化すると図４（ａ）に示すような、モジュール１０を、各モジュール間のフロー処理の情報に基づくコネクタ１１で結合させてグループ化したものとなる。システム１００の実行処理機能生成部１１１は、このようなルールデータを例えば業務ロジックのプログラム毎に生成している。
【００２４】
また前記実行処理機能生成部１１１は、このルールデータからＸＢＲＬにおけるタクソノミデータを生成し、タクソノミデータベース１２６に格納する。このタクソノミデータ１２６０は、例えば図３に示すような形態をとり、対応するプログラム毎にタクソノミデータベース１２６に格納されるものである。
【００２５】
また、システム１００は、オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに前記タクソノミデータの登録を行う、環境登録部１１２を備える。
【００２６】
また、システム１００は、アウトソーシング元のクライアント装置２００より前記業務ロジックにおけるデータ入力を受け付け、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行う、処理実行部１１３を備える。
【００２７】
また、システム１００は、前記プログラムの実行処理結果を、前記クライアント装置２００に送信する、処理結果送信部１１４を備える。
【００２８】
また、システム１００は、入力インターフェイスからの所定業務ロジックに関するルール閲覧要請に応じて、該当業務ロジックのルールデータをルールデータベース１２５にて特定し、特定したルールデータに記載されたモジュールのアイコン画像と、各アイコン画像間を前記フロー処理に則して可視的に結ぶコネクタ画像とを、モジュール毎のアイコン画像とコネクタ画像とを格納した画像格納データベース１２７より抽出し、表示用アイコンとコネクタ画像との組合せからなるルールデータ画像を出力インターフェイスに出力する、ルール表示処理部１１５を備えることとできる。
【００２９】
また、システム１００は、入力インターフェイスからのルールデータ修正要請に応じて、該当業務ロジックのルールデータに応じた前記ルールデータ画像をグラフィカルユーザインターフェイスとして出力インターフェイスに出力すると共に、前記ルールデータ画像を介して取得したルールデータの修正指示を該当ルールデータに仮適用し、このルールデータに対応する業務ロジックの実行可否を判定する、適合性確認部１１６を備えるものとできる。
【００３０】
また、システム１００は、前記判定において業務ロジックの実行可能と判定された場合、前記ルールデータの修正指示を前記ルールデータベース１２５における該当ルールデータに反映させる、修正実行部１１７を備えるものとできる。
【００３１】
−−−データベース−−−
次に、本実施形態のシステム１００が利用するデータベースおよびテーブルについて説明する。図４は本実施形態における、（ａ）ルールデータベース１２５、（ｂ）タクソノミデータベース１２６、のデータ構成例を示す図である。また、図５は、（ａ）画像格納データベース１２７、（ｂ）会員データベース１２８、（ｃ）入出力データテーブル１２９、（ｄ）関連データテーブル１３０、のデータ構成例を示す図である。
【００３２】
ルールデータベース１２５は、前記システム１００の実行処理機能生成部１１１が、前記モジュールの情報をＸＢＲＬにおけるインスタンスデータとして、当該インスタンスデータを前記フロー処理に則してグループ化したルールデータを作成してこれを格納するデータベースである。このデータベース１２５は、例えばルールＩＤをキーとして、ルールデータ毎に含まれるモジュールのＩＤ、およびフロー処理の情報といったデータを関連づけたレコードの集合体となっている。なお、前記フロー処理の情報としては、例えば、直近のモジュールどうしのつながりや、モジュールの演算結果に応じたモジュールのつながりを示す情報が想定できる。
【００３３】
タクソノミデータベース１２６は、前記実行処理機能生成部１１１が、前記のルールデータからＸＢＲＬにおけるタクソノミデータを生成し、これを格納するデータベースである。このデータベース１２６は、例えば、ルールＩＤをキーとして、ルールデータ毎に生成したタクソノミデータを関連づけたレコードの集合体となっている。
【００３４】
また、画像格納データベース１２７は、モジュールのアイコン画像と、各アイコン画像間を前記フロー処理に則して可視的に結ぶコネクタ画像とを格納したデータベースであり、例えばモジュールＩＤをキーとして、モジュールのアイコン画像、アイコン画像間をつなぐコネクタ画像のＩＤといったデータを関連づけたレコードの集合体となっている。
【００３５】
また、会員データベース１２８は、アウトソーシングの依頼元についてその属性情報をを格納したデータベースであり、例えばユーザＩＤをキーとして、管理用のパスワード、連絡先のメールアドレス、およびシステム１００へのアクセス権限といったデータを関連づけたレコードの集合体となっている。
【００３６】
また、入出力データテーブル１２９は、業務ロジックのプログラムを構成するモジュールにおける入出力データの処理形式を格納したテーブルであり、例えばデータ属性をキーとして、処理形式たるデータ型（例：Integer、Stringなど）、およびデータの桁数といたデータを関連づけたレコードの集合体となっている。
【００３７】
また、関連データテーブル１３０は、業務ロジックのプログラムを構成する各モジュールにおいて処理されるデータの適用先となるルールデータを設定したテーブルであり、例えばデータ属性をキーとして、各データ毎の適用先を関連づけたレコードの集合体となっている。
【００３８】
なお、これまで示したシステム１００における機能部１１０〜１１７は、ハードウェアとして実現してもよいし、ＨＤＤやメモリなどの適宜な記憶装置に格納したプログラムとして実現するとしてもよい。この場合、前記ＣＰＵ１０４がプログラム実行に合わせて記憶装置より該当プログラムをメモリ１０３に読み出して、これを実行することとなる。
【００３９】
また、前記ネットワーク１５０に関しては、インターネットやＬＡＮの他、専用回線やＷＡＮ（Wide Area Network）、電灯線ネットワーク、無線ネットワーク、公衆回線網、携帯電話網など様々なネットワークを採用することも出来る。また、ＶＰＮ（Virtual Private Network）など仮想専用ネットワーク技術を用いれば、インターネットを採用した際にセキュリティ性を高めた通信が確立され好適である。
【００４０】
−−−メインフロー−−−
次に、本実施形態のアウトソーシング方法の実際手順について図を参照しつつ説明する。なお、以下で説明するアウトソーシング方法に対応する各種動作は、アウトソーシングシステム１００におけるメモリ等の記憶手段が備えるプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されており、前記構成各部の機能を実装したものとなる。
【００４１】
図６は本実施形態のアウトソーシング方法の実際手順１を示すフロー図である。アウトソーシングをシステム１００に依頼する企業等が備えるクライアント装置２００は、アウトソーシング対象の業務ロジックのプログラムを、システムデータとして予めシステム１００に送信する（ｓ１０００）。このシステムデータとしては、例えば、前記業務ロジックのプログラムにおける、アプリケーションデータ、入出力データ型、画面定義、データベース定義、およびメッセージといったデータが含まれるものとする。
【００４２】
システム１００では、クライアント装置２００よりこのシステムデータを受信し（ｓ１００１）、会員データベース１２８における会員認証（アウトソーシング契約を結んだ会員であるかの認証）を経て、本実施形態におけるアウトソーシング方法の実行を開始することとなる。そこで前記リバースエンジニアリング部１１０の処理方法抽出機能が、前記業務ロジックのプログラムに対応するシステムデータから、プログラムを構成する複数のモジュールを抽出し、これを処理方法メモリ１４０に一旦格納する（ｓ１００２）。
【００４３】
またシステム１００は、入出力データの型、および関連データの抽出を行い、これを前記入出力データテーブル１２９、ならびに関連データテーブル１３０に設定する（ｓ１００３）。
【００４４】
更に、前記リバースエンジニアリング部１１０の処理定義作成機能が、先に抽出した各モジュール間のフロー処理の情報を抽出し、これを前記抽出フローメモリ１４１に一旦格納する（ｓ１００４）。
【００４５】
ここでシステム１００は、前記抽出したモジュールやフロー処理の情報などに基づいて、ルールデータの作成とタクソノミデータの生成とを実行する（ｓ１００５）。図７は本実施形態のアウトソーシング方法の実際手順２を示すフロー図である。システム１００の実行処理機能生成部１１１は、前記入出力データテーブル１２９および関連データテーブル１３０より、該当プログラムに関する入出力データの型やフロー処理との関連づけについて読み込む（ｓ１１００）。また、前記抽出フローメモリ１４１より、当該メモリ１４１に格納してあるフロー処理の情報を読み込む（ｓ１１０１）。ここまでの処理で、システム１００は、扱うデータの型やモジュール間での処理フローの形態について情報を取得することとなる。
【００４６】
そしてシステム１００は、前記処理方法メモリ１４０に格納してあるモジュールの情報をＸＢＲＬにおけるインスタンスデータとして認識し、当該インスタンスデータを前記読み込んだフロー処理の情報に則してグループ化したルールデータを作成し、ルールデータベース１２５に格納する（ｓ１１０２）。更に、このルールデータからＸＢＲＬにおけるタクソノミデータを生成し、タクソノミデータベース１２６に格納する（ｓ１１０３）。生成したタクソノミデータは、システム１００が、オペレーティングシステムと前記業務ロジックを構成するプログラムとの間でデータ授受を担うミドルウェアに登録することとなる（ｓ１１０４）。
【００４７】
こうして、実行処理機能、つまりルールデータおよびタクソノミデータの生成がなされた、システム１００における前記業務ロジックのアウトソーシング体制が確立されることとなる。この後、クライアント装置２００は、システム１００に確立された前記業務ロジックを利用すべく、例えば図９に示すログイン画面９００を介したシステム１００へのログイン認証を経てシステム１００にアクセスしてくる。この認証が問題なければ、システム１００は、例えば同図のメニュー画面９１０をクライアント装置２００に提示し、当該画面９１０における、“シミュレーション”ボタンのクリックを受けて、データ入力画面９２０をクライアント装置２００に返す。
【００４８】
クライアント装置２００では、この画面９２０の入力データ欄における入力データのインプットを受けて、これをシステム１００に返信することとなる。つまり、クライアント１０は入力データをシステム１００に送信することとなる（ｓ１００６）。
【００４９】
システム１００は、この入力データを受信し（ｓ１００７）、当該入力データを前記ミドルウェアを介して前記タクソノミデータに適用し、前記プログラムの実行処理を行う（ｓ１００８）。また、システム１００は、前記プログラムの実行処理結果を、例えば図９のシミュレーション結果画面９３０として、前記クライアント装置２００に送信する（ｓ１００９）。
【００５０】
クライアント装置２００では、システム１００から送信されてきた前記実行処理結果を受信し、これを適宜な出力インターフェイスに出力し（ｓ１０１０）、処理を終了する。
【００５１】
−−−ルール修正フロー−−−
次に、前記ルールデータをクライアント装置２００においてグラフィカルに出力させる処理と、これに伴って、ルールデータの修正処理を実行する手順について説明する。図８は本実施形態のアウトソーシング方法の実際手順３を示すフロー図である。クライアント装置２００において、図９に示す前記メニュー画面９１０での“ルール変更”ボタンのクリックを受けて、これをシステムデータ修正要求（或いは、ルールデータの閲覧要求であってもよい）としてシステム１００に送信するものとする（ｓ１３００）。
【００５２】
システム１００は、前記システムデータ修正要求を受信し、該当会員における業務ロジックのルールデータをルールデータベース１２５にて特定し、これを読み込む（ｓ１３０１）。システム１００は、ここで読み込んだルールデータについて、例えば、図９の画面９４０に示すルールデータの一覧などとしてクライアント装置２００に返信し、ユーザからのルールデータの指定を待ちうける。クライアント装置２００は、前記の画面９４０における修正対象の指定を受け付けて、これをシステム１００に通知する。
【００５３】
システム１００では、前記修正対象として指定されたルールデータに関して、入出力データテーブル１２９より、クライアント装置２００から受付けるデータの型に関する情報を読み込んでおく。更にシステム１００は、前記特定したルールデータに記載されたモジュールのアイコン画像と、各アイコン画像間を前記フロー処理に則して可視的に結ぶコネクタ画像とを、前記画像格納データベース１２７より抽出し、これを読み込む（ｓ１３０２）。システム１００は、前記表示用アイコンとコネクタ画像との組合せからなるルールデータ画像を生成し、これをクライアント装置２００に送信する（ｓ１３０３）。
【００５４】
クライアント装置２００では、前記ルールデータ画像を受信すると共に、例えば図４（ａ）で示したグラフィカルなルールデータ画像１２００を表示し（ｓ１３０４）、ユーザからのルールデータの変更処理を待ちうける。或いは、図９の画面９５０に示すような、テキストボックス内への修正書込を受付けるとしてもよい。この場合、システム１００が、例えば、図１０に示すような、ルールデータ修正用のエディタ画面１０００をクライアント装置２００に提示し、この画面１０００においてルールデータ修正を受け付けるとしてもよい。
【００５５】
クライアント装置２００は、前記ルールデータ画像１２００等を介してルールデータの修正指示を受け付けて（ｓ１３０５）、これをシステム１００に送信する（ｓ１３０６）。  システム１００では、前記修正指示を受信し（ｓ１３０７）、この修正指示をルールデータベース１２５における該当ルールデータに仮適用し、このルールデータに対応する業務ロジックの実行可否を判定する（ｓ１３０８）。この判定により、前記修正指示に対応させたルールデータに基づく業務ロジック実行が不可となれば（ｓ１３０８：ＮＧ）、エラーメッセージを生成し（ｓ１３０９）、これをクライアント装置２００に送信する（ｓ１３１０）。クライアント装置２００ではこれを受信し（ｓ１３１１）、処理をステップｓ１３００に戻す。
【００５６】
一方、前記判定において前記業務ロジックの実行が可能と判定された場合（ｓ１３０８：ＯＫ）、前記ルールデータの修正指示を、前記ルールデータベース１２５における該当ルールデータ、ならびに入出力データテーブル１２９に反映させ（ｓ１３１２）、処理を終了する。
【００５７】
本発明によれば、オペレーティングシステムなどへの依存性が低く、汎用性が良好なアウトソーシングシステムを提供可能となる。従って、アウトソーシングのシステム構築やアウトソーシング処理に関する効率やコストが従来手法より改善される。
【００５８】
また、アウトソーシングシステムにおける業務ロジックに応じた処理ルールをユーザ側にグラフィカルに認識させたり、或いはこの処理ルールの変更を受け付けることが可能となり、高いユーザビリティを実現できる。
【００５９】
したがって、優れた汎用性の下、処理効率やユーザビリティを良好なものとできる。
【００６０】
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【図面の簡単な説明】
【００６１】
【図１】本実施形態におけるアウトソーシングシステムを含むネットワーク構成図である。
【図２】本実施形態におけるルールデータの一例を示す図である。
【図３】本実施形態におけるタクソノミデータの一例を示す図である。
【図４】本実施形態における、（ａ）ルールデータベース、（ｂ）タクソノミデータベース、（ｃ）画像格納データベース、（ｄ）会員データベース、（ｅ）入出力データテーブル、（ｆ）関連データテーブル、のデータ構成例を示す図である。
【図５】本実施形態における、（ａ）画像格納データベース、（ｂ）会員データベース、（ｃ）入出力データテーブル、（ｄ）関連データテーブル、のデータ構成例を示す図である。
【図６】本実施形態のアウトソーシング方法の実際手順１を示すフロー図である。
【図７】本実施形態のアウトソーシング方法の実際手順２を示すフロー図である。
【図８】本実施形態のアウトソーシング方法の実際手順３を示すフロー図である。
【図９】本実施形態におけるクライアント装置の画面例１を示す図である。
【図１０】本実施形態におけるクライアント装置の画面例２を示す図である。
【符号の説明】
【００６２】
１０    モジュール
１００  アウトソーシングシステム、システム
１０１  プログラムデータベース
１０２  プログラム
１０３  メモリ
１０４  ＣＰＵ
１０５  Ｉ／Ｏ部
１１０  リバースエンジニアリング部
１１１  実行処理機能生成部
１１２  環境登録部
１１３  処理実行部
１１４  処理結果送信部
１１５  ルール表示処理部
１１６  適合性確認部
１１７  修正実行部
１２５  ルールデータベース
１２６  タクソノミデータベース
１２７  画像格納データベース
１２８  会員データベース
１２９  入出力データテーブル
１３０  関連データテーブル
１５０  ネットワーク
２００  クライアント装置
【図１】
2006065382.tif 000003
【図２】
2006065382.tif 000004
【図３】
2006065382.tif 000005
【図４】
2006065382.tif 000006
【図５】
2006065382.tif 000007
【図６】
2006065382.tif 000008
【図７】
2006065382.tif 000009
【図８】
2006065382.tif 000010
【図９】
2006065382.tif 000011
【図１０】
2006065382.tif 000012