(57)【要約】【課題】移行先のシステムにおける移行元のシステムの動作の再現性を向上させること。【解決手段】システム移行支援装置は、移行元のシステムの資材に基づいて、前記移行元のシステムの動作に関する情報を前記移行元のシステムの実装技術に依存した形式で示す第１のデータを生成する第１の生成部と、前記第１のデータに基づいて、前記動作に関する情報を特定の実装技術にも依存しない形式で示す第２のデータを生成すると共に、前記第１のデータの各部分と前記第２のデータの各部分との対応関係を示す第１の対応情報を生成する第２の生成部と、前記第１の対応情報を参照して前記第２のデータの各部分に対応する前記第１のデータの各部分を特定し、特定した各部分に基づいて、前記動作に関する情報を移行先のシステムの実装技術に依存した形式で示す第３のデータを生成する第３の生成部と、を有する。【選択図】図３
2020060919.tif 000002
【特許請求の範囲】
【請求項１】
移行元のシステムの資材に基づいて、前記移行元のシステムの動作に関する情報を前記移行元のシステムの実装技術に依存した形式で示す第１のデータを生成する第１の生成部と、
前記第１のデータに基づいて、前記動作に関する情報を特定の実装技術にも依存しない形式で示す第２のデータを生成すると共に、前記第１のデータの各部分と前記第２のデータの各部分との対応関係を示す第１の対応情報を生成する第２の生成部と、
前記第１の対応情報を参照して前記第２のデータの各部分に対応する前記第１のデータの各部分を特定し、特定した各部分に基づいて、前記動作に関する情報を移行先のシステムの実装技術に依存した形式で示す第３のデータを生成する第３の生成部と、
を有することを特徴とするシステム移行支援装置。
【請求項２】
前記第３の生成部は、前記第２のデータの各部分と前記第３のデータの各部分との対応関係を示す第２の対応情報を生成し、
前記第２の対応情報及び前記第１の対応情報に基づいて、前記移行先のシステムと前記移行元のシステムとの対応関係を示す情報を生成する第４の生成部、
を有することを特徴とする請求項１記載のシステム移行支援装置。
【請求項３】
移行元のシステムの資材に基づいて、前記移行元のシステムの動作に関する情報を前記移行元のシステムの実装技術に依存した形式で示す第１のデータを生成する第１の生成手順と、
前記第１のデータに基づいて、前記動作に関する情報を特定の実装技術にも依存しない形式で示す第２のデータを生成すると共に、前記第１のデータの各部分と前記第２のデータの各部分との対応関係を示す第１の対応情報を生成する第２の生成手順と、
前記第１の対応情報を参照して前記第２のデータの各部分に対応する前記第１のデータの各部分を特定し、特定した各部分に基づいて、前記動作に関する情報を移行先のシステムの実装技術に依存した形式で示す第３のデータを生成する第３の生成手順と、
をコンピュータが実行することを特徴とするシステム移行支援方法。
【請求項４】
前記第３の生成手順は、前記第２のデータの各部分と前記第３のデータの各部分との対応関係を示す第２の対応情報を生成し、
前記第２の対応情報及び前記第１の対応情報に基づいて、前記移行先のシステムと前記移行元のシステムとの対応関係を示す情報を生成する第４の生成手順、
をコンピュータが実行することを特徴とする請求項３記載のシステム移行支援方法。
【請求項５】
移行元のシステムの資材に基づいて、前記移行元のシステムの動作に関する情報を前記移行元のシステムの実装技術に依存した形式で示す第１のデータを生成する第１の生成手順と、
前記第１のデータに基づいて、前記動作に関する情報を特定の実装技術にも依存しない形式で示す第２のデータを生成すると共に、前記第１のデータの各部分と前記第２のデータの各部分との対応関係を示す第１の対応情報を生成する第２の生成手順と、
前記第１の対応情報を参照して前記第２のデータの各部分に対応する前記第１のデータの各部分を特定し、特定した各部分に基づいて、前記動作に関する情報を移行先のシステムの実装技術に依存した形式で示す第３のデータを生成する第３の生成手順と、
をコンピュータに実行させることを特徴とするプログラム。
【請求項６】
前記第３の生成手順は、前記第２のデータの各部分と前記第３のデータの各部分との対応関係を示す第２の対応情報を生成し、
前記第２の対応情報及び前記第１の対応情報に基づいて、前記移行先のシステムと前記移行元のシステムとの対応関係を示す情報を生成する第４の生成手順、
をコンピュータに実行させることを特徴とする請求項５記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム移行支援装置、システム移行支援方法及びプログラムに関する。
【背景技術】
【０００２】
Ｗｅｂシステム等のコンピュータシステムについて、旧システムの資材を基に旧システムとは異なる実装技術で新システムを実装する技術として、モデル駆動マイグレーションと呼ばれる手法が知られている（非特許文献１）。
【０００３】
図１は、従来技術を説明するための図である。従来技術では、はじめに旧システムのソースコード、設定ファイルなどの資材を入力として、旧システムの実装技術固有のモデルが機械的に生成される。生成されたモデルが特定の実装技術に依存しない汎用的な中間モデルへと変換された後、中間モデルが新システムの実装技術固有のモデルへと変換される。最後に新システムの実装技術固有モデルから新システムのソースコードが生成される。特定の実装技術に依存しない汎用的な中間モデルには静的なデータ構造や実行される処理のアルゴリズム、ＧＵＩ、画面遷移が含まれる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Franck Fleurey, Erwan Breton, Benoit Baudry, Alain Nicolas, Jean-Marc Jezequel. Model-Driven Engineering for Software Migration in a Large Industrial Context. MoDELS'07, 2007, Nashville, TN, USA, United States. 2007.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術では実装技術に依存しない汎用的な中間モデルを介した変換が行われる。この過程で旧システムの実装技術に依存したソースコードの構成や動作の詳細は失われる。
【０００６】
旧システムがプログラミング言語の仕様に依存した複雑な機能や高機能な外部ライブラリ、フレームワークを用いて実装されていた場合には、実装の詳細が失われることで、新システムへの移行時に旧システムの動作を高い精度で再現するのが困難となる。
【０００７】
例えば、Ｗｅｂシステムの画面遷移において、特定の画面への直接アクセスや画面のリロード、ブラウザの戻るボタンの使用などによる想定外の画面遷移に対してシステムがどのように振る舞うかといった詳細は、実装に用いるフレームワークやライブラリに依存しており、汎用的な中間モデルとして表現することは困難である。こうした場合、従来技術では旧システムと新システムの動作に意図していない挙動の差が生じてしまう可能性が有る。
【０００８】
本発明は、上記の点に鑑みてなされたものであって、移行先のシステムにおける移行元のシステムの動作の再現性を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、システム移行支援装置は、移行元のシステムの資材に基づいて、前記移行元のシステムの動作に関する情報を前記移行元のシステムの実装技術に依存した形式で示す第１のデータを生成する第１の生成部と、前記第１のデータに基づいて、前記動作に関する情報を特定の実装技術にも依存しない形式で示す第２のデータを生成すると共に、前記第１のデータの各部分と前記第２のデータの各部分との対応関係を示す第１の対応情報を生成する第２の生成部と、前記第１の対応情報を参照して前記第２のデータの各部分に対応する前記第１のデータの各部分を特定し、特定した各部分に基づいて、前記動作に関する情報を移行先のシステムの実装技術に依存した形式で示す第３のデータを生成する第３の生成部と、を有する。
【発明の効果】
【００１０】
移行先のシステムにおける移行元のシステムの動作の再現性を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】従来技術を説明するための図である。
【図２】本発明の実施の形態におけるシステム移行支援装置１０のハードウェア構成例を示す図である。
【図３】本発明の実施の形態におけるシステム移行支援装置１０の機能構成例を示す図である。
【図４】旧システム解析部１１が実行する処理手順の一例を説明するためのフローチャートである。
【図５】中間モデル生成部１２が実行する処理手順の一例を説明するためのフローチャートである。
【図６】新システムモデル生成部１３が実行する処理手順の一例を説明するためのフローチャートである。
【図７】資材生成部１４が実行する処理手順の一例を説明するためのフローチャートである。
【図８】レポート生成部１５が実行する処理手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて本発明の実施の形態を説明する。図２は、本発明の実施の形態におけるシステム移行支援装置１０のハードウェア構成例を示す図である。図２のシステム移行支援装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有するコンピュータである。
【００１３】
システム移行支援装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００１４】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってシステム移行支援装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００１５】
図３は、本発明の実施の形態におけるシステム移行支援装置１０の機能構成例を示す図である。図３において、システム移行支援装置１０は、旧システム解析部１１、中間モデル生成部１２、新システムモデル生成部１３、資材生成部１４及びレポート生成部１５等を有する。これら各部は、システム移行支援装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。システム移行支援装置１０は、また、生成規則ＤＢ１６、モデルＤＢ１７及びモデル生成情報ＤＢ１８等のデータベース（ＤＢ）を利用する。これら各ＤＢは、例えば、補助記憶装置１０２、又はシステム移行支援装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００１６】
旧システム解析部１１は、旧システムの資材（ソースコードのファイル（以下、「ソースファイル」という。）及び設定ファイル等）を入力として、当該資材に基づいて、旧システムの動作（旧システムが実行する処理）に関する情報を旧システムの実装技術に依存した形式で示すデータ（以下、「旧システムモデル」という。）を生成し、生成した旧システムモデルをモデルＤＢ１７に記憶する。ここで、旧システムとは、例えば、Ｗｅｂシステム等のコンピュータシステムであって、移行先となる新しいシステム（以下、「新システム」という。）に対して移行元となるシステムをいう。なお、旧システムモデルの生成方法（生成規則）は、生成規則ＤＢ１６に記憶されている複数の旧システムモデル生成規則に予め定義されている。すなわち、旧システム解析部１１は、旧システムモデルのソースファイル及び設定ファイルに対して各旧システムモデル生成規則を適用して旧システムモデルを生成する。
【００１７】
中間モデル生成部１２は、旧システムモデルに基づいて、旧システムの動作に関する情報（旧システムにおける静的なデータ構造、実行される処理のアルゴリズム、ＧＵＩ（Graphical User Interface）、及び画面遷移等）を、特定の実装技術に依存しない汎用的な形式で示すデータ（以下、「中間モデル」という。）を生成し、生成した中間モデルをモデルＤＢ１７に記憶する。中間モデル生成部１２は、また、中間モデルと共に、旧システムモデルの各部分と中間モデルの各部分との対応関係を示す対応情報（以下、「中間モデル生成情報」という。）を生成し、生成した中間モデル生成情報をモデル生成情報ＤＢ１８に記憶する。なお、中間モデル及び中間モデル生成情報の生成方法（生成規則）は、生成規則ＤＢ１６に記憶されている複数の中間モデル生成規則に予め定義されている。すなわち、中間モデル生成部１２は、旧システムモデルに対して各中間モデル生成規則を適用して中間モデル及び中間モデル生成情報を生成する。
【００１８】
新システムモデル生成部１３は、中間モデル生成情報を参照して中間モデルの各部分に対応する旧システムモデルの各部分を特定し、特定した各部分に基づいて、旧システムの動作に関する情報を、新システムの構成や使用ＡＰＩなどを新システムの実装技術に依存した形式で示すデータ（以下、「新システムモデル」という。）を生成し、生成した新システムモデルをモデルＤＢ１７に記憶する。新システムモデル生成部１３は、また、新システムモデルと共に、中間モデルの各部分と新システムモデルの各部分との対応関係を示す対応情報（以下、「新システムモデル生成情報」という。）を生成し、生成した新システムモデル生成情報をモデル生成情報ＤＢ１８に記憶する。なお、新システムモデル及び新システムモデル生成情報の生成方法（生成規則）は、生成規則ＤＢ１６に記憶されている複数の新システムモデル生成規則に予め定義されている。すなわち、新システムモデル生成部１３は、中間モデル及び中間モデル生成情報に対して各新システムモデル生成規則を適用して新システムモデル及び新システムモデル生成情報を生成する。
【００１９】
資材生成部１４は、生成規則ＤＢ１６に記憶されている新システム資材生成規則を新システムモデルに適用して、新システムの資材（ソースファイル及び設定ファイル等）を生成する。
【００２０】
レポート生成部１５は、資材生成部１４によって生成される新システムの資材に対して、手作業での補完作業を行う際の補助となる、旧システムと新システムとの対応関係等を含む情報（以下、「レポート」という。）を、新システムモデル生成情報及び中間モデル生成情報に基づいて生成する。なお、レポートの生成方法（生成規則）は、生成規則ＤＢ１６に記憶されている複数のレポート生成規則に予め定義されている。すなわち、レポート生成部１５は、新システムモデル生成情報及び中間モデル生成情報に対して各レポート生成規則を適用してレポートを生成する。
【００２１】
以下、システム移行支援装置１０が実行する処理手順について説明する。図４は、旧システム解析部１１が実行する処理手順の一例を説明するためのフローチャートである。
【００２２】
ステップＳ１０１において、旧システム解析部１１は、旧システムのソースファイル及び設定ファイルを入力し、これらのファイルの一覧（以下、「ファイルリスト」という。）を生成する。
【００２３】
続いて、旧システム解析部１１は、生成したファイルリストに含まれる全てのファイルについてステップＳ１０３以降が実行されたか否かを判定する（Ｓ１０２）。ステップＳ１０３以降が実行されていないファイルが有る場合（Ｓ１０２でＹｅｓ）、旧システム解析部１１は、未処理のファイルのうちの１つのファイル（以下、「対象ファイル」という。）を処理対象として、対象ファイルの内容をメモリ装置１０３に読み込む（Ｓ１０３）。
【００２４】
続いて、旧システム解析部１１は、対象ファイルの内容を解析する（Ｓ１０４）。具体的には、旧システム解析部１１は、対象ファイルについて、ファイル種別（ソースファイル又は設定ファイル等の種別）に応じた字句解析と構文解析を行い、対象ファイルの内容を計算機での処理に適した木構造のデータに変換する。
【００２５】
続いて、旧システム解析部１１は、当該木構造のデータに対して複数の旧システムモデル生成規則を適用して旧システムモデルを生成し、当該旧システムモデルをモデルＤＢ１７に記憶する（Ｓ１０５）。
【００２６】
旧システムモデル生成規則とは、ファイル種別、ファイル名に含まれている文字列の共通性、システム上のパスを構成する文字列の共通性、特定のＡＰＩの使用の有無等といった条件によってソースファイル及び設定ファイルを分類し、分類ごとに定められたパラメータを保持したモデル（データ）を旧システムモデルとして生成するための規則が定義されたデータをいい、旧システムの実装を理解している者によって作成される。例えば、当該分類ごとに旧システムモデル生成規則が作成されてもよい。分類ごとにパラメータが定められるのは、分類ごとにパラメータの構成や、パラメータの表現形式が異なり、分類ごとに生成される旧システムモデル（の一部分）のデータ形式が異なる可能性が有るからである。換言すれば、上記における、ファイル種別、ファイル名に含まれている文字列の共通性、システム上のパスを構成する文字列の共通性、特定のＡＰＩの使用の有無等といった条件は、旧システムモデルに変換した際のデータ形式（パラメータの形式）の違いを区分するための条件の一例であり、斯かる観点において他の条件が適切であれば、他の条件に基づいてソースファイル群及び設定ファイル群が分類されてもよい。なお、旧システムモデル生成規則は、旧システムの実装に用いられているプログラミング言語やフレームワークなどの実装技術依存しており、旧システムモデルが保持する各パラメータには特定のプログラミング言語に依存した型（データ）に関する情報や特定のライブラリに依存したＡＰＩの名前などの実装技術に依存した情報を含めることができる。
【００２７】
上記したステップＳ１０３〜Ｓ１０５が、ファイルリストに含まれる全てのファイルについて実行されると（Ｓ１０２でＮｏ）、旧システム解析部１１は処理を終了する。
【００２８】
図５は、中間モデル生成部１２が実行する処理手順の一例を説明するためのフローチャートである。
【００２９】
ステップＳ２０１において、中間モデル生成部１２は、複数の中間モデル生成規則のうち、未適用の一つの中間モデル生成規則（以下、「対象規則」という。）を適用対象として生成規則ＤＢ１６から取得する。複数の中間モデル生成規則のそれぞれは、相互に旧システムモデルに対する適用箇所（適用部分）が異なる。すなわち、旧システムモデルは、全体にわたって必ずしも統一されたデータ形式で表現されてはいない。例えば、上記の分類に応じて旧システムモデルへの変換後のデータ形式が異なりうる。したがって、例えば、上記の分類ごとに中間モデル生成規則が作成されてもよい。
【００３０】
続いて、中間モデル生成部１２は、旧システムモデルのうち、対象規則に対応する箇所（部分）に対象規則を適用して当該部分に対応する中間モデルの一部分を生成し、当該中間モデルの一部分をモデルＤＢ１７に記憶する（Ｓ２０２）。
【００３１】
中間モデル生成規則とは、旧システムモデルから静的なデータ構造、処理のアルゴリズム、ＧＵＩ、画面遷移に関連するパラメータを抽出し、特定の実装技術に依存しない形式でこれらのパラメータを含むモデル（データ）を中間モデルとして生成すると共に、当該中間モデルに関する中間モデル生成情報を生成するための規則が定義されたデータをいい、旧システムの実装を理解している者によって作成される。
【００３２】
続いて、中間モデル生成部１２は、対象規則、対象規則が適用された旧システムモデルの箇所（部分）、結果として生成された中間モデルの箇所（部分）を含む中間モデル生成情報を対象規則に基づいて生成し、当該中間モデル生成情報をモデル生成情報ＤＢ１８に記憶する（Ｓ２０３）。すなわち、当該中間モデル生成情報は、旧システムモデルの当該箇所（当該部分）と、中間モデルの当該箇所（当該部分）との対応関係を示すと共に、当該中間モデルの箇所が、どのような変換処理によって生成されたのかを示す情報である。「どのような変換処理」については、対象規則によって表現されている。なお、ここで、中間モデルの箇所（部分）とは、全ての中間モデル生成規則によって生成される各中間モデルの一部分の集合を一つの中間モデルとして把握した場合における、中間モデルの箇所（部分）をいう。すなわち、各中間モデル生成規則は、最終的に生成される中間モデルの一部分を生成する。したがって、当該箇所（部分）は、ステップＳ２０２において生成された中間モデルの一部分である。なお、中間モデルの各箇所（各部分）は、相互にデータ形式が異なってもよい。
【００３３】
全ての中間モデル生成規則に関してステップＳ２０１〜Ｓ２０３が実行されると（Ｓ２０４でＹｅｓ）、中間モデル生成部１２は、処理を終了する。
【００３４】
図６は、新システムモデル生成部１３が実行する処理手順の一例を説明するためのフローチャートである。
【００３５】
ステップＳ３０１において、新システムモデル生成部１３は、複数の新システムモデル生成規則のうち、未適用の一つの新システムモデル生成規則（以下、「対象規則」という。）を適用対象として生成規則ＤＢ１６から取得する。複数の新システムモデル生成規則のそれぞれは、相互に中間モデルに対する適用箇所（適用部分）が異なる。すなわち、中間モデルは、全体にわたって必ずしも統一されたデータ形式で表現されてはいない。例えば、上記の分類に応じて中間モデルへの変換後のデータ形式が異なりうる。したがって、例えば、上記の分類ごとに新システムモデル生成規則が作成されてもよい。
【００３６】
続いて、新システムモデル生成部１３は、中間モデル及び中間モデル生成情報のそれぞれについて、対象規則に対応する箇所（部分）に対象規則を適用して新システムモデルの一部分を生成し、当該新システムモデルの一部分をモデルＤＢ１７に記憶する（Ｓ３０２）。
【００３７】
新システムモデル生成規則とは、中間モデルの静的なデータ構造、処理のアルゴリズム、ＧＵＩ、画面遷移に関連する各種のパラメータと、中間モデル生成情報として記録されている中間モデルの旧システムにおける実装詳細（旧システムモデルから静的なデータ構造、処理のアルゴリズム、ＧＵＩ、画面遷移に関連するパラメータ）によって、新システムの構成や使用ＡＰＩ等を決定し、それらをパラメータとして保持したモデルを新システムモデルとして生成するための規則が定義されたデータをいい、旧システムの実装及び新システムの実装を理解している者によって作成される。すなわち、新システムモデル生成部１３は、中間モデル生成情報のうち、対象規則に対応する箇所（部分）に基づいて、旧システムモデルにおいて、対象規則に対応する箇所を特定する。新システムモデル生成部１３は、中間モデルにおいて対象規則に対応する箇所（部分）と、旧システムモデルにおいて対象規則に対応する箇所（部分）に基づいて、新システムモデルの一部分を生成する。ここで、中間モデルのみではなく、中間モデル生成情報に基づいて、旧システムモデルにおいて対象規則に対応する箇所（部分）が直接的に参照される（辿られる）ことで、従来技術では抜け落ちていた旧システムの実装情報詳細を新システムモデルに反映させることができる。例えば、旧システムの実装技術に依存したＡＰＩ名等を、新システムの実装技術に依存したＡＰＩ名等に変換することができる。
【００３８】
続いて、新システムモデル生成部１３は、対象規則、対象規則が適用された中間モデルの箇所（部分）、結果として生成された新システムモデルの箇所（部分）を含む新システムモデル生成情報を対象規則に基づいて生成し、当該新システムモデル生成情報をモデル生成情報ＤＢ１８に記憶する（Ｓ３０３）。すなわち、当該新システムモデル生成情報は、中間モデルの当該箇所（当該部分）と、新システムモデルの当該箇所（当該部分）との対応関係を示すと共に、当該新システムモデルの箇所（部分）が、どのような変換処理によって生成されたのかを示す情報である。「どのような変換処理」については、対象規則によって表現されている。なお、ここで、新システムモデルの箇所（部分）とは、全ての新システムモデル生成規則によって生成される各新システムモデルの一部分の集合を一つの新システムモデルとして把握した場合における、新システムモデルの箇所（部分）をいう。すなわち、各新システムモデル生成規則は、最終的に生成される新システムモデルの一部分を生成する。したがって、当該箇所（部分）は、ステップＳ３０２において生成された新システムモデルの一部分である。なお、新システムモデルの各箇所（各部分）は、相互にデータ形式が異なってもよい。
【００３９】
全ての新システムモデル生成規則に関してステップＳ３０１〜Ｓ３０３が実行されると（Ｓ３０４でＹｅｓ）、新システムモデル生成部１３は、処理終了する。
【００４０】
図７は、資材生成部１４が実行する処理手順の一例を説明するためのフローチャートである。
【００４１】
ステップＳ４０１において、資材生成部１４は、複数の新システム資材生成規則のうち、未適用の一つの新システム資材生成規則（以下、「対象規則」という。）を適用対象として生成規則ＤＢ１６から取得する。複数の新システム資材生成規則のそれぞれは、相互に新システムモデルに対する適用箇所（適用部分）が異なる。すなわち、新システムモデルは、全体にわたって必ずしも統一されたデータ形式で表現されてはいない。例えば、上記の分類に応じて新システムモデルへの変換後のデータ形式が異なりうる。したがって、例えば、上記の分類ごとに新システム資材生成規則が作成されてもよい。
【００４２】
続いて、資材生成部１４は、対象規則を新システムモデルのうち、対象規則の対応箇所（部分）に対象規則を適用して新システムのソースファイル（ソースコード）及び設定ファイルのそれぞれの一部分を生成する（Ｓ４０２）。生成されたソースファイル及び設定ファイルのそれぞれの一部分は、例えば、補助記憶装置１０２等に記憶される。
【００４３】
新システム資材生成規則とは、新システムモデルの保持するソースファイル及び設定ファイルの構成や使用ＡＰＩに関する情報を利用し、新システムのソースファイル及び設定ファイルの内容を文字列として生成するための規則が定義されたデータをいう。資材生成部１４は、生成した文字列を、新システムモデルの保持するファイル名やファイルパス等の情報を使用して、新システムのソースファイル又は設定ファイルとしてファイル出力する。
【００４４】
全ての新システム資材生成規則に関してステップＳ４０１及びＳ４０２が実行されると（Ｓ４０３でＹｅｓ）、資材生成部１４は、処理を終了する。
【００４５】
図８は、レポート生成部１５が実行する処理手順の一例を説明するためのフローチャートである。
【００４６】
ステップＳ５０１において、レポート生成部１５は、複数のレポート生成規則のうち、未適用の一つのレポート生成規則（以下、「対象規則」という。）を適用対象として生成規則ＤＢ１６から取得する。複数のレポート生成規則のそれぞれは、相互に新システムモデル生成情報に対する適用箇所（適用部分）が異なる。すなわち、新システムモデル生成情報は、全体にわたって必ずしも統一されたデータ形式で表現されてはいない。例えば、上記の分類に応じて新システムモデル生成情報への変換後のデータ形式が異なりうる。したがって、例えば、上記の分類ごとにレポート生成規則が作成されてもよい。
【００４７】
続いて、レポート生成部１５は、モデル生成情報ＤＢ１８に記憶されている新システムモデル生成情報及び中間モデル生成情報のうち、対象規則に対応する箇所（部分）に対象規則を適用してレポートの一部分を生成する（Ｓ５０２）。
【００４８】
レポート生成規則とは、新システムモデル生成情報に含まれる、新システムモデルの一部分の生成元となった中間モデルの箇所（部分）や、当該中間モデルの箇所（部分）に適用された新システムモデル生成規則と、当該中間モデルの箇所（部分）の生成元となった旧システムモデルの箇所（部分）と当該旧システムモデルの箇所（部分）に適用された中間モデル生成規則に基づいて、新システム（の各部分）と旧システム（の各部分）との対応関係を示す情報や、新システムソースファイル及び設定ファイルに対して手作業で補完を行う際の作業内容や予想される作業の量を示す情報を含むレポートを生成するための規則が定義されたデータをいい、旧システム及び新システムのそれぞれの実装を理解している者によって作成される。
【００４９】
ステップＳ５０２では、新システムモデルのうち、対象規則に対応する箇所（部分）と、旧システムモデルのうち、対象規則に対応する箇所（部分）との対応関係が特定される。旧システムモデルのうち、対象規則に対応する箇所（部分）は、新システムモデル生成情報のうち、対象規則に対応する箇所（部分）に基づいて特定される中間モデル生成情報の箇所（部分）を参照することによって特定可能である。すなわち、当該中間モデル生成情報の箇所（部分）には、当該箇所（部分）に対応する中間モデルの箇所（部分）に対応する中間モデル生成情報が適用された旧システムモデルの箇所（部分）を示す情報が含まれている。
【００５０】
全てのレポート生成規則に関してステップＳ５０１及びＳ５０２が実行されると（Ｓ５０３でＹｅｓ）、レポート生成部１５は、各レポートの一部分を統合してファイルとして出力する（Ｓ５０４）。
【００５１】
上述したように、本実施の形態によれば、中間モデルの生成時に、中間モデルと旧システムモデルとの対応関係を示す中間モデル生成情報が生成され、新システムモデルの生成時には、中間モデル生成情報に基づいて特定される中間モデルと旧システムモデルとの対応関係を利用して新システムモデルを生成することができる。したがって、移行先のシステムにおける移行元のシステムの動作の再現性を向上させることができる。
【００５２】
また、旧システムモデルと新システムモデルとの対応関係等を示すレポートが出力されることで、人間の手による補完作業の効率化を期待することができる。
【００５３】
なお、本実施の形態において、旧システムモデルは、第１のデータの一例である。中間モデルは、第２のデータの一例である。中間モデル生成情報は、第１の対応情報の一例である。新システムモデルは、第３のデータの一例である。新システムモデル生成情報は、第２の対応情報の一例である。旧システム解析部１１は、第１の生成部の一例である。中間モデル生成部１２は、第２の生成部の一例である。新システムモデル生成部１３は、第３の生成部の一例である。レポート生成部１５は、第４の生成部の一例である。
【００５４】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５５】
１０          システム移行支援装置
１１          旧システム解析部
１２          中間モデル生成部
１３          新システムモデル生成部
１４          資材生成部
１５          レポート生成部
１６          生成規則ＤＢ
１７          モデルＤＢ
１８          モデル生成情報ＤＢ
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
2020060919.tif 000003
【図２】
2020060919.tif 000004
【図３】
2020060919.tif 000005
【図４】
2020060919.tif 000006
【図５】
2020060919.tif 000007
【図６】
2020060919.tif 000008
【図７】
2020060919.tif 000009
【図８】
2020060919.tif 000010