(57)【要約】あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置であって、あらゆるプラットフォーム上で作動するあらゆるソースアプリケーションを、あらゆるターゲットプラットフォームの形式へ、マイグレーション及び／又は変換し、ソースアプリケーションのビジネスロジックを分析するためのＡＳＣＩＩ形式での全体のソースコードを受け入れ、ソースアプリケーション及びターゲットアプリケーションのＵＩ／ＧＵＩの詳細を獲得し、ソースフロントエンドインターフェースの有効化スキームを受け取り、ターゲットバックエンドシステムの定義と、生成コードの品質管理フェーズを機能させるための現在のテストスクリプトと、ビジネス処理のソースコードのエントリポイントと、ターゲットプラットフォーム、使用言語、ターゲットデータベース、コーディングスタンダード、ターゲットアーキテクチャ及びフレームワーク、サードパーティコンポーネント、ターゲットアプリケーションに接続すべき現在のアプリケーションの詳細、及び（利用可能なら）ターゲット環境で作動するアプリケーションのサンプルコードを含む、ターゲット環境の仕様又は定義と、を獲得する、入力手段と、ターゲットスキームを作成するためにクライアントから提供されるソーススキームを分析し、ソースアプリケーションの処理を表すワークフロー図を作成するためにソースアプリケーションのビジネスロジックを分析し、ソースアプリケーションのコードセグメントを同定し、ターゲットアーキテクチャ及びそれに関連付けられた技術を生成するためにターゲットを分析する、分析手段と、カスタム知識ベースを生成するためのセットアップ手段であって、現在の知識ベースが特定のマイグレーションについて検証され、そのような知識ベースが存在しない場合は、カスタム知識ベースが作成される、セットアップ手段と、ソースコードをターゲット仕様の形式に変換するための処理手段であって、完全なソースコードが、複数回繰り返して知識エンジンを通り、前記ソースコードが前記知識エンジンを通る間、前記知識エンジンは、ソースコードをターゲット仕様の形式に変換するため、前記知識ベースと接続されたままであり、各繰り返しの後、前記知識ベースは更新され、ターゲットプラットフォーム及びターゲットアプリケーションに関して、より構造化されたソースプラットフォーム及びソースアプリケーションの情報をカスタム知識ベースが有することで、ソースコード変換が高速かつより良くなる、処理手段と、処理ステージにおける検証の間のレポートと、自動的に変換されなかったコードを含む変換処理終了後の概略レポートと、を生成するための文書化手段と、を備える、装置。この未変換コードは後に出願人のリソースセンタにおいて手動で変換される。
2007515013.tif 000002
【特許請求の範囲】
【請求項１】
あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置であって、あらゆるプラットフォーム上で作動するあらゆるソースアプリケーションを、あらゆるターゲットプラットフォームの形式へ、マイグレーション及び／又は変換し、
ソースアプリケーションのビジネスロジックを分析するためのＡＳＣＩＩ形式での全体のソースコードを受け入れ、ソースアプリケーション及びターゲットアプリケーションのＵＩ／ＧＵＩの詳細を獲得し、ソースフロントエンドインターフェースの有効化スキームを受け取り、ターゲットバックエンドシステムの定義と、生成コードの品質管理フェーズを機能させるための現在のテストスクリプトと、ビジネス処理のソースコードのエントリポイントと、ターゲットプラットフォーム、使用言語、ターゲットデータベース、コーディングスタンダード、ターゲットアーキテクチャ及びフレームワーク、サードパーティコンポーネント、ターゲットアプリケーションに接続すべき現在のアプリケーションの詳細、及び（利用可能なら）ターゲット環境で作動するアプリケーションのサンプルコードを含む、ターゲット環境の仕様又は定義と、を獲得する、入力手段と、
ターゲットスキームを作成するためにクライアントから提供されるソーススキームを分析し、ソースアプリケーションの処理を表すワークフロー図を作成するためにソースアプリケーションのビジネスロジックを分析し、ソースアプリケーションのコードセグメントを同定し、ターゲットアーキテクチャ及びそれに関連付けられた技術を生成するためにターゲットを分析する、分析手段と、
カスタム知識ベースを生成するためのセットアップ手段であって、現在の知識ベースが特定のマイグレーションについて検証され、そのような知識ベースが存在しない場合は、カスタム知識ベースが作成される、セットアップ手段と、
ソースコードをターゲット仕様の形式に変換するための処理手段であって、完全なソースコードが、複数回繰り返して知識エンジンを通り、前記ソースコードが前記知識エンジンを通る間、前記知識エンジンは、ソースコードをターゲット仕様の形式に変換するため、前記知識ベースと接続されたままであり、各繰り返しの後、前記知識ベースは更新され、ターゲットプラットフォーム及びターゲットアプリケーションに関して、より構造化されたソースプラットフォーム及びソースアプリケーションの情報をカスタム知識ベースが有することで、ソースコード変換が高速かつより良くなる、処理手段と、
処理ステージにおける検証の間のレポートと、自動的に変換されなかったコードを含む変換処理終了後の概略レポートと、を生成するための文書化手段と、
を備える、装置。この未変換コードは後に出願人のリソースセンタにおいて手動で変換される。
【請求項２】
請求項１に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
ソースアプリケーション及びソースプラットフォームと、ターゲット仕様及びターゲットプラットフォームと、を理解するための「知識ベースデータベース（ＫＢ）」を備える、装置。
【請求項３】
請求項１又は２に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
系統的かつ論理的にソースアプリケーションのビジネスロジック及びデータベース（バックエンド）スキーマを抽出し、ソースアプリケーションをターゲットアプリケーションの仕様の形式に変換するための「知識エンジン（ＫＥ）」を備える、装置。
【請求項４】
請求項１から３のいずれか１項に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
前記「知識データベース」は、変換処理の間「知識エンジン」の各繰り返し処理の後に更新され、ソースアプリケーションのより広い知識を提供し、将来の変換を高速かつより良くする、装置。
【請求項５】
請求項１から４のいずれか１項に記載のあらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
変換後に、自動マイグレーション処理における未変換ソースコードを含むレポートが生成される、装置。
【請求項６】
請求項１から５のいずれか１項に記載のあらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
「知識データベース」によって達成される繰り返しから学習し、次の繰り返しの自動マイグレーション比率を増加させる、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、「あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション（migration）及び変換のための自動化ツールを作成する装置」に関する。特に、本発明は、知識エンジンを用いて、系統的にソースアプリケーションを同定し、ソースアプリケーションと同様のロジック及びデータベースをあらゆるターゲットアプリケーションに変換する、ソフトウェアコードのマイグレーション及び変換装置に関する。
【背景技術】
【０００２】
従来のソフトウェアのマイグレーション及び変換システムは、様々な領域において多くの欠点を有する。例えば、アプリケーション、変換負荷の制約、制限された互換性などの領域において多くの欠点を有する。従来システムには、例えば、以下のような欠点がある。
・現在、開発されたレガシーアプリケーションのマイグレーション又は更新のための既知の技術を利用する従来システムは、手動で実現される。したがって、従来システムの実現に費やされる時間は非常に長く、かつ、費用は非常に高い。
・さらに、どのようなアプリケーションのマイグレーション及び／又は更新にも利用可能な特定のツールは存在しない。各々のアプリケーションについて、そのような変換を行う個別のツールは存在する可能性がある。
・各々の、かつすべてのソースアプリケーションのためにそのようなツール／サービスが存在すれば、それらのツール／サービスを個別に購入しなければならない。そうすると、マイグレーションに非常に高い費用がかかる。
・各々のマイグレーションは現行システムにとって新たな処理であるため、各々のマイグレーションについての変換時間は先行する変換処理の影響を受けないだろう。一方、本発明は知識ベースのシステムであるため、本発明では、繰り返しが多くなるほど、達成される変換の品質及び速度が向上する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述の説明から、従来システムをすべての場面で再利用又は再適用することは非常に難しいことと、マイグレーション及び変換のための唯一のソルーションは存在しないことと、は明白である。したがって、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのマイグレーション及び変換が可能な装置を提供するために、「ソフトウェアコードのマイグレーション及び変換装置」という名称のシステム又は技術が本発明の発明者によって開発された。このシステム又は技術によって、あらゆるアプリケーションについて、最良の結果を伴う変換及び／又はマイグレーションが可能となる。
【０００４】
本発明の主要な目的は、ソース又はターゲットシステムが動作するプラットフォームの制約を受けない、あらゆるソースアプリケーションの変換及び／又はマイグレーションのための装置を提供することである。
【０００５】
本発明のさらなる目的は、出願人のソフトウェアツールによってより多くのソースアプリケーションが処理されると、変換処理時間が減少するような、知識ベースの概念を利用する装置を提供することである。
【０００６】
本発明のさらなる目的は、知識ベースを用いることで、将来のより良い、かつ高速な変換のために、将来の変換及び／又はマイグレーションの可能性を考慮する装置を提供することである。
【０００７】
本発明のさらなる目的は、現在及び将来のシステムマイグレーション、システム設計、及びシステム開発のための効果的なツールを提供することである。
【０００８】
本発明のさらなる目的は、可能な限り、作成された知識データベースから学習し、マイグレーション、設計、及び開発プロセスを自動化するツールを有することで、全体的な開発の労力を削減することである。
【０００９】
本発明のさらなる目的は、構造的な形式で処理の知識及び属性を分離し、かつ組み合わせることで、将来利用するための知識データベースを作成することである。
【課題を解決するための手段】
【００１０】
本発明によると、「あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置」は、あらゆるプラットフォーム上で作動するあらゆるソースアプリケーションを、あらゆるターゲットプラットフォームが備える形式へマイグレーション及び／又は変換し、以下の手段を備える。
【００１１】
入力手段であって、ソースアプリケーションのビジネスロジック（business logic）を分析するためのＡＳＣＩＩ形式での全体のソースコードと、ソースアプリケーション及びターゲットアプリケーションのＵＩ（User Interface）／ＧＵＩ（Graphical User Interface）の詳細と、ソースフロントエンド（front‐end）インターフェースの有効化スキーム（validation scheme）と、ターゲットバックエンド（back‐end）システムの定義と、生成コードの品質管理フェーズを機能させるための現在のテストスクリプトと、ビジネス処理のソースコードのエントリポイント（実行開始点、entry point）と、ターゲット環境の仕様又は定義と、を受け入れる入力手段。ターゲット環境の仕様又は定義は、ターゲットプラットフォーム、使用言語、ターゲットデータベース、コーディングスタンダード（coding standard）、ターゲットアーキテクチャ及びフレームワーク、サードパーティコンポーネント（third party component）、ターゲットアプリケーションに接続すべき現在のアプリケーションの詳細、及び（利用可能なら）ターゲット環境で作動するアプリケーションのサンプルコードを含む。
【００１２】
分析手段であって、ターゲットスキーマ（データベース構造、schema）を作成するためにクライアントから提供されるソーススキーム（scheme）を分析し、ソースアプリケーションの処理を表すワークフロー図を分析し、ソースアプリケーションのコードセグメントを同定し、ターゲットアーキテクチャ及びそれに関連付けられた技術を生成するターゲットの必要条件を分析する分析手段。
【００１３】
カスタム知識ベースを生成するためのセットアップ手段。ここでは、特定のマイグレーションについて現在のＫＢが検証され、そのようなＫＢが存在しない場合は、カスタムＫＢが作成される。
【００１４】
ソースコードをターゲット仕様の形式に変換するための処理手段。ここでは、完全なソースコードが、複数回繰り返して知識エンジンを通る。ソースコードが知識エンジンを通る間、知識エンジンは、ソースコードをターゲット仕様の形式に変換するため、知識ベースと接続されたままである。各繰り返しの後、知識ベースは更新され、カスタムＫＢは、ソースプラットフォーム、ソースアプリケーション、ターゲットプラットフォーム、及びターゲットアプリケーションに関して、より構造化されるので、高速かつより良いソースコード変換が行われる。
【００１５】
処理ステージ及び変換処理の終了に関するレポートを生成するための文書化手段。このレポートは、自動的に変換されなかったコード、未変換になった理由、及び未変換コードを出願人のリソースセンタ（Resource Centre）においてどのように手動変換できるかについての提案から成る。
【発明を実施するための最良の形態】
【００１６】
本システムは、２つの主要部分に分けられる。
１．知識ベース（Knowledge Base）。以下、「ＫＢ」と記載する。
２．知識エンジン（Knowledge Engine）。以下、「ＫＥ」と記載する。
【００１７】
知識ベース：図１のブロックＭとして示すカスタムＫＢは、関係データベースから成る。この関係データベースは、ソース及びターゲットコードのパタン及び属性から成る。カスタムＫＢ（ブロックＭ）は、ソース及びターゲット言語の構文、制御構造、及びプログラミングスタイルに類似し、かつそれらを統合する。カスタムＫＢ（ブロックＭ）の構造は、ソース及びターゲットアプリケーションの形式に基づいて決定される。カスタムＫＢ（ブロックＭ）は、「ＫＥ」による各繰り返しの後に更新される。この更新は、自動変換の変換比率を増大させる。
【００１８】
ＫＢは、標準ＯＤＢＣ（Object Data Base Connectivity）接続又はディスクＩ／Ｏ（入出力，Input／Output）操作を通してアクセスされる。ＫＢは、ＫＥからＫＢに遠隔接続できるようにするインターフェース層を含んでいても良い。
【００１９】
知識エンジン：図１のブロックＮとして示すＫＥは、処理ユニットである。ＫＥは、入力コードを取り込み、解釈し、ターゲット出力コードに変換することができる。ＫＥは、多くの異なる設計及び開発のオプションを考慮して、コードのマイグレーション及び強化を自動化する。
【００２０】
ソースアプリケーションからビジネスロジックを抽出するために、ＫＥは、次の機能を実行する。
・カスタムＫＢ（ブロックＭ）で定義された構文に基づいた入力コードを取り込む。
・ファジィ論理ルーチンを用いてソースコードを解釈する。
・カスタムＫＢ（ブロックＭ）を用いて、入力コードを解析し、コードブロックを分離し、中間又はターゲットの仕様の形式に変換する。
・ソースコードの、未変換又は無視されたブロック及び文に印付けし、将来利用するために、印付けしたブロック及び文をカスタムＫＢ（ブロックＭ）に記憶する。
【００２１】
データ駆動システムのマイグレーションの場合、ＫＥは、次のように作動する。
・データベーススキーム及びデータファイル形式を解釈する。
・ＫＢ（ブロックＭ）セグメントを生成することで、データ辞書定義を作成する。
・先行するステップで生成されたデータ辞書定義を利用して、ソースコードを解釈し、解析し、かつターゲットの仕様コードに変換する。
・ソースコードの、未変換又は無視されたブロック及び文に印付けし、将来利用するために、印付けしたブロック及び文をカスタムＫＢ（ブロックＭ）に記憶する。
・最終コードに到達するまで上述の処理を繰り返すことで、中間的処理が必要となる。
【００２２】
ブロックＳについて
入力ａ、ｂ、ｃ、ｄ、及びｅは、入力コードの要素（コンポーネント）を示す。これらの要素は、プログラムロジックコード（program logic code）、ユーザインターフェース、データ辞書（data dictionary）、有効化（validation）、関連するプログラムロジックファイル、又はデータ定義ファイルに基づいて分割された入力ファイルである。ユーザは、この（入力）タスクを実行する。
ブロックＴにおいて、Ｆはコード有効化ステージである。ここで、ＫＥは、すべての要求される入力ファイルが、処理のために利用可能かどうかを判定する。
【００２３】
ブロックＵについて
Ｎは、Ｓ２Ｔ  Ｔｅｃｈｎｏｌｏｇｙの知識エンジン（ＫＥ）コンポーネント（要素）である。このコンポーネントは、入力コードを処理する主要処理モジュールである。
Ｍは、Ｓ２Ｔ  Ｔｅｃｈｎｏｌｏｇｙの知識ベース（ＫＢ）コンポーネントであり、パタン及び発見されたデータを記憶する。
Ｌは、「繰り返し処理」を表す記号である。ここで、入力コードはＫＥによって繰り返し処理される。
Ｏコンポーネントは、ＫＥの論理拡張であり、ＫＥによって生成された出力コードのパッケージ化に利用される。
【００２４】
ブロックＶについて
Ｑブロックは、本ツールによって生成されたターゲットコード及び変換処理全体を記述した概略レポートを表す。Ｐブロックは、無視された又は未変換のソースコードを表す。無視されたコードは、新たなパタンを決定する検証の後、再びＫＢに入力される。ユーザは、ＫＢの設定処理を通じて、この新たなパタンをＫＢに挿入する。
【００２５】
システムの動作：
以下に、図面を用いて本発明の動作について簡単に説明する。
【００２６】
あらゆるソースアプリケーションからターゲットの仕様の形式に変換及び／又はマイグレーションする必要がある場合の手続は以下に記述するとおりである。
【００２７】
図１に、マイグレーション又は変換処理のためのブロックＳとして、「入力ステージ」と呼ばれる第１のステージを示す。このステージは、系統的かつ論理的にソースアプリケーションを分析するために、ソースアプリケーションを受け取ることを含む。入力ステージは、さらに、ターゲットアプリケーションのアーキテクチャを定義することを含む。
【００２８】
このタスクが完了した後、ソース及びターゲットアプリケーションの必要条件を可能な限り満たすように、現存のライブラリを改良するか、又は新しいライブラリカスタムＫＢ（ブロックＭ）が作成される。
【００２９】
入力ステージは、次の入力を受け取る。
１．「ａ」で示される、ＡＳＣＩＩ（American Standard Code for Information Interchange）形式でのサンプル部分全体のソースコードを受け取る。これによって、カスタムＫＢ（ブロックＭ）が定義される、すなわち作成又は更新される基礎となる、ソースアプリケーションのビジネスロジックを理解するために、ソースコードを分析することができる。
２．ソースアプリケーションのＵＩ（User Interface）／ＧＵＩ（Graphical User Interface）の詳細を受け取り、ターゲットアプリケーションのＵＩの詳細を定義する。これは、「ｂ」として示される。効果的な変換のため、このステージは、ソースフロントエンドインターフェースの有効化スキームも受け取る。
３．図１に「ｃ」として示される、ターゲットシステムデータベースの定義を取得する。スキーム形式は、関係ターゲットデータベースについてはＳＱＬ（Structure Query Language）であってよいし、又は、メインフレームコンピュータについてはＡＳＣＩＩ形式のコピーブック（copybook）構造のフラットファイルデータベース（flat file database）の断片であってもよい。
４．図１に「ｄ」として示される、テストスクリプトがすでに存在する場合、このテストスクリプトを受け取り、生成ターゲットコードの品質管理フェーズを機能させるために利用する。
５．「ｅ」として示される、ビジネス処理のソースコードのエントリポイントを決定する必要がある。ＵＩによって提供される詳細がエントリポイントを決定するのに十分である場合もあり得る。ＵＩによって提供される詳細がエントリポイントの決定に十分でない場合、ユーザは、エントリポイントを特定するよう求められる。
６．ターゲット環境の仕様又は定義が定義される。ターゲット環境の仕様又は定義は、以下のものを含む。
・ターゲットプラットフォーム
・使用言語
・ターゲットデータベース
・コーディングスタンダード
・ターゲットアーキテクチャ及びフレームワーク
・サードパーティコンポーネント
・ターゲットアプリケーションに接続すべき現在のアプリケーションの詳細
・（利用可能なら）ターゲット環境で作動するアプリケーションのサンプルコード
【００３０】
第２のステージは分析ステージであり、図１にブロックＴとして示される。分析ステージでは、ソースコードが変換のために分析される。このステージでは、まず、データベース分析が行われる。データベース分析では、クライアントによって提供されたソーススキーマが分析されることで、ターゲットスキーマが作成される。次に、ビジネス分析が行われる。ビジネス分析では、ソースアプリケーションの処理を表すワークフロー図を取得する。この分析は、カスタムＫＢ（ブロックＭ）の生成で用いられる。このステージの最後の処理は、ターゲット分析である。ターゲット分析は、ターゲットアーキテクチャ及びターゲットアーキテクチャに関連付けられた技術を生成する。ターゲットアーキテクチャ及びそれに関連付けられた技術は、カスタムＫＢ（ブロックＭ）のターゲットアプリケーションの部分に追加される。
【００３１】
第３のステージは、「セットアップステージ」であり、図１にブロックＵとして示される。セットアップステージでは、カスタムＫＢ（ブロックＭ）の生成が行われる。まず、現在のＫＢ（ブロックＭ）が、特定のマイグレーションについて検証される。そのようなＫＢ（ブロックＭ）が存在しない場合は、次のようにカスタムＫＢ（ブロックＭ）が作成される。
【００３２】
サンプルコード「ａ」、ＵＩ「ｂ」、及びデータベース（バックエンドスキーム）「ｃ」の選択された部分が、ＫＥ（ブロックＮ）に導入される。ＫＥ（ブロックＮ）によって「ａ」、「ｂ」、及び「ｃ」に対して行われる定式化は、カスタムＫＢ（ブロックＭ）内のターゲットの必要条件のための基礎を形成する。「Ｌ」で示す繰り返し処理を通して、知識パタンが収集される。繰り返し処理では、選択されたソースコード断片がＫＥ（ブロックＮ）を複数回通過させられる。ＫＥ（ブロックＮ）がＫＢ（ブロックＭ）から飽和信号を取得するまで、この処理は続く。クライアントによってテストスクリプトが提供される場合は、提供されたテストスクリプトもＫＥ（ブロックＮ）を通過させられる。クライアントからテストスクリプトが提供されない場合は、ＫＥ（ブロックＮ）自身がテストスクリプトを作成する。
【００３３】
ブロックＵで示され、「処理ステージ」と呼ばれる次のステージでは、完全なソースコードが、繰り返しに基づいてＫＥ（ブロックＮ）を通過させられる。この繰り返しの間、ソースコードのターゲット仕様形式への変換のため、ＫＥ（ブロックＮ）は、カスタムＫＢ（ブロックＭ）と接続される。各繰り返しの後、カスタムＫＢ（ブロックＭ）が更新されることで、ソースコードの変換は高速になり、かつより良くなる。これは、繰り返しの後には、カスタムＫＢ（ブロックＭ）が、ターゲットプラットフォーム及びターゲットアプリケーションに関して、ソースプラットフォーム及びソースアプリケーションの、より構造化された情報を有するからである。
【００３４】
最後のステージは、文書化ステージであり、ブロックＶで示される。文書化ステージでは、処理ステージの検証が行われる間にレポートが生成される。変換処理の後、Ｐで示される概略レポートが生成される。概略レポートは、自動的に変換されなかったコード（ブロックＯ）を含む。この未変換コードは、後に出願人のリソースセンタにおいて手動で変換される。しかしながら、この文書化ステージまでには、出願人は７０％から９０％の自動変換を達成している。この文書化ステージでは、他の２つの処理がさらに実行される。すなわち、
・ソーススキームに関して、変換されたデータベースとデータ辞書とを照合することを含む、ターゲットデータベースの照合
・分析ステージ（ブロックＳ）の間のソースコード処理フローに関して、変換されたアプリケーションとそのアプリケーションのプログラムリンクとを照合することを含む、ターゲットアプリケーションの照合
である。
【００３５】
本システムに関する上述の記載は、本発明を理解するためだけに記載されたものであり、本発明の範囲を制限するものではない。
【図面の簡単な説明】
【００３６】
【図１】本発明の１つの実施形態のシステムを示すブロック図である。
【図２】本発明の１つの実施形態における、アプリケーションのマイグレーション又は強調のための補助された処理を示す。
【図１】
2007515013.tif 000003
【図２】
2007515013.tif 000004
【手続補正書】
【提出日】平成18年11月16日(2006.11.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置であって、あらゆるプラットフォーム上で作動するあらゆるソースアプリケーションを、あらゆるターゲットプラットフォームの形式へ、マイグレーション及び／又は変換し、
ソースアプリケーションのビジネスロジックを分析するためのＡＳＣＩＩ形式での全体のソースコードと、ソースアプリケーション及びターゲットアプリケーションのＵＩ／ＧＵＩの詳細と、ソースフロントエンドインターフェースの有効化スキームと、ターゲットバックエンドシステムの定義と、生成コードの品質管理フェーズを機能させるための現在のテストスクリプトと、ビジネス処理のソースコードのエントリポイントと、ターゲット環境の仕様又は定義と、を取得する入力手段と、
ターゲットスキームを作成するためにクライアントから提供されるソーススキームを分析し、ソースアプリケーションの処理を表すワークフロー図を作成するためにソースアプリケーションのビジネスロジックを分析し、ソースアプリケーションのコードセグメントを同定し、ターゲットアーキテクチャ及びそれに関連付けられた技術を生成するためにターゲットを分析する、分析手段と、
カスタム知識ベースを生成するためのセットアップ手段と、
ソースコードをターゲット仕様の形式に変換するための処理手段と、
処理ステージにおける検証の間のレポートと、自動的に変換されなかったコードを含む変換処理終了後の概略レポートと、を生成するための文書化手段と、
を備え、
前記ターゲット環境の仕様又は定義は、ターゲットプラットフォーム、使用言語、ターゲットデータベース、コーディングスタンダード、ターゲットアーキテクチャ及びフレームワーク、サードパーティコンポーネント、ターゲットアプリケーションに接続すべき現在のアプリケーションの詳細、及び（利用可能なら）ターゲット環境で作動するアプリケーションのサンプルコードを含み、
前記セットアップ手段は、現在の知識ベースを特定のマイグレーションについて検証し、そのような知識ベースが存在しない場合は、カスタム知識ベースを作成し、
前記処理手段において、完全なソースコードが複数回繰り返して知識エンジンを通り、前記ソースコードが前記知識エンジンを通る間、前記知識エンジンは、ソースコードをターゲット仕様の形式に変換するため前記知識ベースと接続されたままであり、各繰り返しの後、前記知識ベースは更新され、ターゲットプラットフォーム及びターゲットアプリケーションに関して、より構造化されたソースプラットフォーム及びソースアプリケーションの情報をカスタム知識ベースが有することで、ソースコード変換が高速かつより良くなることを特徴とする、装置。
【請求項２】
請求項１に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
ソースアプリケーション及びソースプラットフォームと、ターゲット仕様及びターゲットプラットフォームと、を理解するための「知識ベースデータベース（ＫＢ）」を備える、装置。
【請求項３】
請求項１又は２に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
系統的かつ論理的にソースアプリケーションのビジネスロジック及びデータベース（バックエンド）スキーマを抽出し、ソースアプリケーションをターゲットアプリケーションの仕様の形式に変換するための「知識エンジン（ＫＥ）」を備える、装置。
【請求項４】
請求項１から３のいずれか１項に記載の、あらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
前記「知識データベース」は、変換処理の間「知識エンジン」の各繰り返し処理の後に更新され、ソースアプリケーションのより広い知識を提供し、将来の変換を高速かつより良くする、装置。
【請求項５】
請求項１から４のいずれか１項に記載のあらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
変換後に、自動マイグレーション処理における未変換ソースコードを含むレポートが生成される、装置。
【請求項６】
請求項１から５のいずれか１項に記載のあらゆるソースプラットフォームからあらゆるターゲットプラットフォームへのソフトウェアコードのマイグレーション及び変換装置において、
「知識データベース」によって達成される繰り返しから学習し、次の繰り返しの自動マイグレーション比率を増加させる、装置。
【国際調査報告】
2007515013.tif 000005
2007515013.tif 000006