(57)【要約】      （修正有）【課題】多数のデータ項目を扱うシステムの開発および開発環境の構築の双方の効率化を図る。【解決手段】複数のデータ項目を定義した項目定義情報と、プログラムを実行する前後のデータ項目間の関係を定義した変換処理定義情報と、データ項目についての複数の制約を定義した制約定義情報と、を記憶する記憶部と、プログラムを実行した後のデータ項目に誤りがあった場合に、誤りがあったデータ項目について項目定義情報に記憶された制約定義を除外すべき制約定義として定め、定めた除外すべき制約定義以外の制約定義と、変換処理定義情報に含まれるデータ項目とに基づいて、除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する選択肢出力処理部と、選択肢出力処理部が出力した選択肢候補を表示装置に表示させるとともに、誤りのあったデータ項目についての制約定義を表示装置に表示させ、その修正を受け付ける表示制御部と、を備える。【選択図】図１
2014178821.tif 000002
【特許請求の範囲】
【請求項１】
開発対象となるシステムで用いられるプログラムの開発環境下におかれ、前記プログラムを実行して前記システムを開発する情報処理装置であって、
前記システムが有する複数のデータ項目を定義した項目定義情報と、前記プログラムを実行する前後の前記データ項目間の関係を定義した変換処理定義情報と、前記プログラムを実行するにあたっての前記データ項目についての複数の制約を定義した制約定義情報と、を記憶する記憶部と、
前記プログラムを実行した後のデータ項目に誤りがあった場合に、前記制約定義情報のうち誤りがあったデータ項目について前記項目定義情報に記憶された制約定義を除外すべき制約定義として定め、定めた前記除外すべき制約定義以外の制約定義と、前記変換処理定義情報に含まれるデータ項目とに基づいて、前記プログラムが守るべき前記除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する選択肢出力処理部と、
前記選択肢出力処理部が出力した前記選択肢候補を表示装置に表示させるとともに、誤りのあったデータ項目についての制約定義を表示装置に表示させ、その修正を受け付ける表示制御部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記表示制御部は、前記表示装置に表示された前記選択肢候補の指定を受け付け、その選択肢を出力し、
前記選択肢出力処理部は、前記項目定義情報を、出力された前記選択肢に含まれるデータ項目に修正する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記表示制御部は、前記表示装置に表示された画面から前記除外すべき制約定義の指定を受け付け、その制約定義を出力し、
前記選択肢出力処理部は、出力された前記制約定義以外の制約定義と、前記変換処理定義情報に含まれるデータ項目とに基づいて、前記プログラムが守るべき前記除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記記憶部は、さらに過去に制約定義を逸脱したデータ項目とその制約定義とを含む制約逸脱情報を記憶し、
前記選択肢出力処理部は、誤りがあったデータ項目を定義したプログラムの実行結果と、前記過去に制約定義を逸脱したデータ項目を定義したプログラムの実行結果との類似度を求め、その類似度が高い順に前記選択肢候補を作成し、
前記表示制御部は、前記類似度が高い順に前記選択肢候補を表示装置に表示させる、
ことを特徴とする請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
開発対象となるシステムで用いられるプログラムの開発環境下におかれ、前記システムが有する複数のデータ項目を定義した項目定義情報と、前記プログラムを実行する前後の前記データ項目間の関係を定義した変換処理定義情報と、前記プログラムを実行するにあたっての前記データ項目についての複数の制約を定義した制約定義情報と、を記憶する記憶部を有し、前記プログラムを実行して前記システムを開発する情報処理装置で行われるシステム環境変更方法であって、
前記プログラムを実行した後のデータ項目に誤りがあった場合に、前記制約定義情報のうち誤りがあったデータ項目について前記項目定義情報に記憶された制約定義を除外すべき制約定義として定める制約定義設定ステップと、
前記制約定義設定ステップにおいて定められた前記除外すべき制約定義以外の制約定義と、前記変換処理定義情報に含まれるデータ項目とに基づいて、前記プログラムが守るべき前記除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する選択肢候補作成ステップと、
前記選択肢候補作成ステップにおいて出力された前記選択肢候補を表示装置に表示させるとともに、誤りのあったデータ項目についての制約定義を表示装置に表示させ、その修正を受け付ける表示処理ステップと、
を含むことを特徴とするシステム環境変更方法。
【請求項６】
前記記憶部は、さらに過去に制約定義を逸脱したデータ項目とその制約定義とを含む制約逸脱情報を記憶し、
前記選択肢候補作成ステップにおいて、誤りがあったデータ項目を定義したプログラムの実行結果と、前記過去に制約定義を逸脱したデータ項目を定義したプログラムの実行結果との類似度を求め、その類似度が高い順に前記選択肢候補を作成し、
前記表示処理ステップにおいて、前記類似度が高い順に前記選択肢候補を表示装置に表示させる、
ことを特徴とする請求項５に記載のシステム環境変更方法。
【請求項７】
コンピュータに、
開発対象となるシステムで用いられるプログラムを実行した後のデータ項目に誤りがあった場合に、前記プログラムを実行するにあたっての前記データ項目についての複数の制約を定義した制約定義情報のうち誤りがあったデータ項目について前記システムが有する複数のデータ項目を定義した項目定義情報に記憶された制約定義を除外すべき制約定義として定める制約定義設定ステップと、
前記制約定義設定ステップにおいて定められた前記除外すべき制約定義以外の制約定義と、前記プログラムを実行する前後の前記データ項目間の関係を定義した変換処理定義情報に含まれるデータ項目とに基づいて、前記プログラムが守るべき前記除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する選択肢候補作成ステップと、
前記選択肢候補作成ステップにおいて出力された前記選択肢候補を表示装置に表示させるとともに、誤りのあったデータ項目についての制約定義を表示装置に表示させ、その修正を受け付ける表示処理ステップと、
を実行させることを特徴とするシステム環境変更プログラム。
【請求項８】
前記選択肢候補作成ステップにおいて、誤りがあったデータ項目を定義したプログラムの実行結果と、記憶部に記憶された過去に制約定義を逸脱したデータ項目を定義したプログラムの実行結果との類似度を求め、その類似度が高い順に前記選択肢候補を作成し、
前記表示処理ステップにおいて、前記類似度が高い順に前記選択肢候補を表示装置に表示させる、
ことを特徴とする請求項７に記載のシステム環境変更プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、開発環境を変更する装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
企業による生産や業務に必要な機器の制御を目的に設置される大規模な計算機システムのプログラムにおいては、一般に多種多量のデータ項目を管理することとなる。従って、計算機システムが管理するデータ項目を開発者が入力した情報をもとに生成するための計算機、すなわち開発環境を用意することにより、計算機システムの開発の手間を防ぐ。しかし、多種のデータ項目を対象とする開発環境を用意するにあたっては、開発者の順番に沿った入力及び、入力結果のチェックなどの機能を用意する必要があり、データ項目の量に比例して開発工数を必要とする。
【０００３】
この課題を解決するための背景技術として、例えば、特許文献１がある。特許文献１は、監視制御のアプリケーションに対する入力を対象とし、入力手順を作成することによりユーザの負担を軽減する。具体的には、監視制御のアプリケーションの入力及び出力となるデータ項目の仕様が変化する場合に、データ項目の仕様に応じて、入力及びデータ項目生成の順番を変更する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１９８７４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１を用いることにより、入力及び出力となるデータ項目の仕様を示すモデル定義を与えることで、監視制御のアプリケーションの入力手順の生成を自動化することができる。しかし、上述したような開発環境の入力支援のようなケースで生じうる、システムの開発環境を開発するケースに適しているとは言い難い。
【０００６】
その要因として、従来技術においては、入力及び出力となるデータ項目の定義およびその制約には間違いがないものとすることがあげられる。情報システムの開発環境を開発する場合、しばしば開発環境の前提となる定義が間違って開発されたり、また定義の作成が途中状態であったりすることがある。データ項目の定義が間違っている場合に従来技術を用いると、開発環境を使用している中でモデル定義が違っていると判明した時点において、開発環境を用意する開発者は都度、開発環境を修正しなければならない。従来技術を開発環境の開発に提供する場合、データ項目生成および入力の順番を生成可能なため、開発環境の修正時間を削減可能である。しかし、開発環境において生成されるデータ項目に間違いがある場合は、データ項目およびその制約の定義のどれが間違っているかを判別し、次に開発環境の修正を行う必要がある。従来技術を用いる場合、正しいデータ項目を出力するために、開発環境の修正が完了するまで設計作業を停止して待つ必要がある。従って、作業の停止のために、システム開発のスケジュールが遅延しうる。
【０００７】
そのため、多数のデータ項目を扱うシステムの開発環境を構築する際には、入力データ項目およびその制約の定義の間違いがシステムの開発工程に影響しないようにするために、定義に間違いがある場合にも可能な限り入力を支援し、出力データを生成できるようにすることが先決である。次に、設計作業と並行して開発環境を修正する場合に、データ項目およびその制約の定義の間違い箇所を早く判別し、設計作業を支援すべく開発環境を早期に修正することもまた重要である。
【０００８】
本発明の目的は、多数のデータ項目を扱うシステムの開発環境を構築する際に、システムの開発および開発環境の構築の双方の効率化を図る方法を開示することである。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、開発対象となるシステムで用いられるプログラムの開発環境下におかれ、前記プログラムを実行して前記システムを開発する情報処理装置であって、前記システムが有する複数のデータ項目を定義した項目定義情報と、前記プログラムを実行する前後の前記データ項目間の関係を定義した変換処理定義情報と、前記プログラムを実行するにあたっての前記データ項目についての複数の制約を定義した制約定義情報と、を記憶する記憶部と、前記プログラムを実行した後のデータ項目に誤りがあった場合に、前記制約定義情報のうち誤りがあったデータ項目について前記項目定義情報に記憶された制約定義を除外すべき制約定義として定め、定めた前記除外すべき制約定義以外の制約定義と、前記変換処理定義情報に含まれるデータ項目とに基づいて、前記プログラムが守るべき前記除外すべき制約定義以外の制約定義についてのデータ項目の選択肢候補を作成する選択肢出力処理部と、前記選択肢出力処理部が出力した前記選択肢候補を表示装置に表示させるとともに、誤りのあったデータ項目についての制約定義を表示装置に表示させ、その修正を受け付ける表示制御部と、を備えることを特徴とする。
【００１０】
また、本発明は、上記情報処理装置で行われるシステム環境変更方法、及びシステム環境変更プログラムである。
【発明の効果】
【００１１】
本発明によれば、多数のデータ項目を扱うシステムの開発環境を構築する際に、システムの開発および開発環境の構築の双方の効率化を図ることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第一の実施の形態における計算機１を示す図である。
【図２】本発明の第一の実施の形態における変換前モデルスキーマ情報１０１を示す図である。
【図３】本発明の第一の実施の形態における変換後モデルスキーマ情報１０２を示す図である。
【図４】本発明の第一の実施の形態における変換前モデルインスタンス情報１０３のテーブルの一例を示す図である。
【図５】本発明の第一の実施の形態における変換前モデルインスタンス情報１０３のテーブルの一例を示す図である。
【図６】本発明の第一の実施の形態における変換前モデルインスタンス情報１０３のテーブルの一例を示す図である。
【図７】本発明の第一の実施の形態における変換前モデルインスタンス情報１０３のテーブルの一例を示す図である。
【図８】本発明の第一の実施の形態における変換後モデルインスタンス情報１０４を示す図である。
【図９】本発明の第一の実施の形態における変換後モデル制約情報１０５を示す図である。
【図１０】本発明の第一の実施の形態における変換処理情報１０６を示す図である。
【図１１】本発明の第一の実施の形態における誤謬要素情報１７１を示す図である。
【図１２】本発明の第一の実施の形態における制約逸脱情報１７２を示す図である。
【図１３】本発明の第一の実施の形態における選択候補情報１７３を示す図である。
【図１４】本発明の第一の実施の形態における変換前後情報１７４を示す図である。
【図１５Ａ】本発明の第一の実施の形態における誤謬要素類似度情報１７５を示す図である。
【図１５Ｂ】本発明の第一の実施の形態における誤謬要素類似度集計情報１７５Ａを示す図である。
【図１６】本発明の第一の実施の形態における選択肢類似度情報１７６を示す図である。
【図１７】本発明の第一の実施の形態における処理状態情報１７７を示す図である。
【図１８】本発明の第一の実施の形態における出力装置１４のモデル編集画面１４０１を示す図である。
【図１９】本発明の第一の実施の形態における出力装置１４の候補選択画面１４０２を示す図である。
【図２０】本発明の第一の実施の形態における出力装置１４の候補選択画面１４０３を示す図である。
【図２１】本発明の第一の実施の形態における出力装置１４の制約逸脱一覧画面１４０４を示す図である。
【図２２】本発明の第一の実施の形態における選択肢出力処理部１５１の処理を説明するフローチャートである。
【図２３】本発明の第一の実施の形態における制約解除処理部１５２の処理を説明するフローチャートである。
【図２４】本発明の第一の実施の形態における制約適合要素抽出処理部１５３の処理を説明するフローチャートである。
【図２５】本発明の第一の実施の形態における類似度抽出処理部１５４の処理を説明するフローチャートである。
【図２６】本発明の第一の実施の形態における変換前後情報作成処理部１５５の処理を説明するフローチャートである。
【図２７】本発明の第一の実施の形態における制約逸脱情報出力処理部１５６の処理を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照して、本発明にかかる情報処理装置、システム環境変更方法、及びシステム環境変更プログラムの実施の形態を詳細に説明する。
【実施例１】
【００１４】
以下、図１から図２７を用いて、第一の実施の形態における情報処理装置、システム環境変更方法、及びシステム環境変更プログラムにかかるシステムについて説明する。このシステムは、第一の実施の形態における多数のデータ項目を扱うシステムの開発環境を構築する際に、入力データ項目およびその制約の定義の間違いがシステムの開発工程に影響しないようにするために、定義に間違いがある場合にも制約数を減らして選択肢を出すことにより入力を支援し、出力データを生成する。かつ、このシステムでは、設計作業と並行して開発環境を修正する場合に、データ項目およびその制約の定義の間違い箇所を早く判別し、設計作業を支援すべく開発環境を早期に修正できることにより、多数のデータ項目を扱うシステムの開発環境を構築する際に、システムの開発および開発環境の構築の双方を効率化するものである。なお、以下では、データ項目のことを要素と呼ぶこともある。
【００１５】
図１は、第一の実施の形態の全体図である。図１に示す計算機１は、設計作業を支援し、かつ開発環境の変更を支援するための装置である。以下、前記計算機１の構成を説明する。前記計算機１は、ＣＰＵ１１と、メモリ１２と、を有する。前記ＣＰＵ１１と前記メモリ１２とは、入力装置１３と、出力装置１４と、に接続する。また、前記ＣＰＵ１１と前記メモリ１２とは、記憶装置１５に接続する。
【００１６】
前記記憶装置１５は、開発対象となるシステムの変換前のモデルの仕様を定義する変換前モデルスキーマ情報１０１のファイルと、そのシステムの変換後のモデルの仕様を定義する変換後モデルスキーマ情報１０２のファイルと、変換前モデルスキーマ情報１０１に基づく設計情報を表す変換前モデルインスタンス情報１０３のファイルと、変換後モデルスキーマ情報１０２に基づく設計情報を表す変換後モデルインスタンス情報１０４のファイルと、変換後モデルスキーマ情報１０２に基づく設計情報（変換後モデルインスタンス情報１０４）が守るべき制約の仕様を示す変換後モデル制約情報１０５のファイルと、変換前モデルスキーマ情報１０１から変換後モデルスキーマ情報１０２への変換処理を定義する変換処理情報１０６のファイルと、を保持する。
【００１７】
更に、前記メモリ１２は、選択肢出力処理部１５１と、制約解除処理部１５２と、制約適合要素抽出処理部１５３と、類似度抽出処理部１５４と、変換前後情報作成処理部１５５と、制約逸脱情報出力処理部１５６と、誤謬要素情報１７１と、制約逸脱情報１７２と、選択候補情報１７３と、変換前後情報１７４と、誤謬要素類似度情報１７５と、選択肢類似度情報１７６と、処理状態情報１７７と、を保持する。
【００１８】
前記誤謬要素情報１７１は、前記計算機１において変換した前記変換後モデルインスタンス情報１０４における、間違いを示す情報（変換後モデルインスタンス情報１０４に含まれるデータ項目のうち、値が誤っているデータ項目やその値を示す情報）である。この前記誤謬要素情報１７１は、前記計算機１の利用者によって入力装置１３より入力される。
【００１９】
前記制約逸脱情報１７２は、前記変換後モデルインスタンス情報１０４のデータ項目の値ごとの前記変換後モデル制約情報１０５に反する情報を示す情報である。前記選択候補情報１７３は、前記出力装置１４に出力される前記変換後モデルインスタンス情報１０４を修正するための選択肢を示す情報である。
【００２０】
前記変換前後情報１７４は、前記変換処理情報１０６に示された定義に従って作成された変換後モデルスキーマ情報１０２が有するデータ項目（例えば、「閉そく」）ごとに定義され、前記誤謬要素類似度情報１７５及び選択肢類似度情報１７６の計算の入力となる情報である。
【００２１】
前記誤謬要素類似度情報１７５は、前記変換後モデルインスタンス情報１０４ごとに記憶されている前記変換後モデル制約情報１０５によって示される制約に反する情報のそれぞれにおいて、前記誤謬要素情報１７１によって示される前記変換後モデルインスタンス情報１０４の要素に対する類似度を示す情報である。この前記誤謬要素類似度情報１７５は、変換前後情報１７４を用いて計算される。
【００２２】
前記選択肢類似度情報１７６は、前記選択候補情報１７３に保持する選択肢を示す情報である。前記選択肢類似度情報１７６は、前記変換後モデルインスタンス情報１０４ごとに記憶されている前記変換後モデル制約情報１０５に反する情報のいずれかに対する類似度を示す情報である。この前記選択肢類似度情報１７６は、変換前後情報１７４を用いて計算される。
【００２３】
前記処理状態情報１７７は、後に述べる選択肢出力処理部１５１における、現在の途中処理状況を表す情報である。
【００２４】
前記選択肢出力処理部１５１は、本発明の実施の第一の形態の特徴の一つである。前記選択肢出力処理部１５１は、前記変換前モデルスキーマ情報１０１と、変換後モデルスキーマ情報１０２と、変換前モデルインスタンス情報１０３と、変換後モデルインスタンス情報１０４と、変換後モデル制約情報１０５と、変換処理情報１０６とを読み込み、誤謬要素情報１７１の情報から前記選択候補情報１７３を作成し、選択肢類似度情報１７６の順番に従い出力装置１４に表示する。そして、前記選択肢出力処理部１５１は、入力装置１３より選択候補情報１７３に対する選択結果を得て、制約逸脱情報１７２に選択結果の情報を保存し、変換後モデルインスタンス情報１０４の情報を更新する。後述するように、前記選択肢出力処理部１５１により、入力データ項目およびその制約の定義の間違いがシステムの開発工程に影響しないようにするために、定義に間違いがある場合にも制約数を減らして選択肢を出すことにより入力を支援し、出力データを生成することが可能となる。
【００２５】
前記制約解除処理部１５２は、前記選択肢出力処理部１５１より呼び出され、変換後モデル制約情報１０５の中から適用を除外する制約を選択し、前記制約適合要素抽出処理部１５３を呼び出すことにより、前記選択肢出力処理部１５１が使用する選択肢の情報である前記選択候補情報１７３を作成する処理部である。
【００２６】
前記制約適合要素抽出処理部１５３は、変換後モデル制約情報１０５に示される制約を除外した場合に、変換後モデルインスタンス情報１０４の情報として設定可能な、前記選択肢出力処理部１５１が使用する選択肢の情報である前記選択候補情報１７３を作成する処理部である。
【００２７】
前記類似度抽出処理部１５４は、変換前後情報１７４に基づき、前記選択候補情報１７３に示される候補の類似度を計算し、選択肢類似度情報１７６に保存する処理部である。
【００２８】
前記変換前後情報作成処理部１５５は、変換処理情報１０６を読み込み、前記類似度抽出処理部１５４において使用する変換前後情報１７４を作成する処理部である。
【００２９】
前記制約逸脱情報出力処理部１５６は、本発明の実施の第一の形態の特徴の一つである。前記制約逸脱情報出力処理部１５６は、制約逸脱情報１７２に保存された制約に反する入力を表示し、合わせて制約逸脱情報１７２において示される制約に反する入力のあった制約に対する編集画面を表示し、編集結果を変換後モデル制約情報１０５に保存する処理部である。前記選択肢出力処理部１５１による制約逸脱情報１７２の保存と、前記制約逸脱情報出力処理部１５６とにより、設計作業と並行して開発環境を修正する場合に、データ項目およびその制約の定義の間違い箇所を早く判別し、設計作業を支援すべく開発環境を早期に修正することが可能となる。以上が、前記計算機１の構成である。
【００３０】
なお、図１では、全ての処理部は1つの計算機１に属しているが、複数の計算機を使用してもよい。また、図１では、計算機１と記憶装置１５は独立しているが、記憶装置の構成が異なっていてもよい。
【００３１】
前記変換前モデルスキーマ情報１０１と、変換後モデルスキーマ情報１０２と、変換前モデルインスタンス情報１０３と、変換後モデルインスタンス情報１０４と、変換後モデル制約情報１０５と、変換処理情報１０６と、誤謬要素情報１７１と、制約逸脱情報１７２と、選択候補情報１７３と、変換前後情報１７４と、誤謬要素類似度情報１７５と、選択肢類似度情報１７６と、処理状態情報１７７との詳細な説明、及び、選択肢出力処理部１５１と、制約解除処理部１５２と、制約適合要素抽出処理部１５３と、類似度抽出処理部１５４と、変換前後情報作成処理部１５５と、制約逸脱情報出力処理部１５６との詳細な流れ、及び、前記出力装置１４の出力結果の詳細、については後述する。
【００３２】
以下、図２から図２１を用いて、第一の実施の形態における各ファイルの詳細と、出力装置１４の表示の詳細とを説明する。
【００３３】
図２は、変換前モデルスキーマ情報１０１を示す図である。図２に示すように、変換前モデルスキーマ情報１０１は、駅１０１０１と、信号機１０１０２と、軌道回路１０１０３、回路端１０１０４、接続点１０１０５によってあらわされる各クラスを有している。
【００３４】
属性１０１０１１は、駅１０１０１によって示されるクラスが、属性「ＩＤ」を有し、型が文字列であることを示す。同様に、属性１０１０２１と属性１０１０２２とは、信号機１０１０２によって示されるクラスが、属性「ＩＤ」と「方向」を有し、その型が文字列と、後に述べる方向群１０１０６とであることを示す。属性１０１０３１は、軌道回路１０１０３によって示されるクラスが、属性「ＩＤ」を有し、その型が文字列であることを示す。属性１０１０４１は、回路端１０１０４によって示されるクラスが、属性「方向」を有し、その型が後に述べる方向群１０１０６であることを示す。属性１０１０５１は、接続点１０１０５によって示されるクラスが、属性「ＩＤ」を有し、その型が文字列であることを示す。
【００３５】
方向群１０１０６は、値が１である属性１０１０６１に示される「上り」か、値が２である属性１０１０６２に示される「下り」かのいずれかの値をとることを示す列挙型である。
【００３６】
関連１０１５１及び関連端１０１５１１と関連端１０１５１２とは、駅１０１０１によって示されるクラスと、信号機１０１０２によって示されるクラスとに1対多の関係があり、駅１０１０１によって示されるクラスは信号機群１０１５１２属性を、信号機は駅属性を有することを示す。
【００３７】
同様に、関連１０１５２及び関連端１０１５２１と関連端１０１５２２とは、信号機１０１０２によって示されるクラスと接続点１０１０５によって示されるクラスとの、関連１０１５３及び関連端１０１５３１と関連端１０１５３２とは、駅１０１０１によって示されるクラス同士の、関連１０１５４及び関連端１０１５４１と関連端１０１５４２とは、駅１０１０１によって示されるクラスと、軌道回路１０１０３によって示されるクラスとの、関連１０１５５及び関連端１０１５５１と関連端１０１５５２とは、軌道回路１０１０３によって示されるクラスと回路端１０１０４によって示されるクラスとの、関連１０１５６及び関連端１０１５６１と関連端１０１５６２とは、回路端１０１０４によって示されるクラスと接続点１０１０５によって示されるクラスとの、関連１０１５７及び関連端１０１５７１と関連端１０１５７２とは、軌道回路１０１０３によって示されるクラス同士の、関係及び関連によって追加される属性を示す。
【００３８】
線１０１５７３は、軌道回路１０１０３の隣接回路群［方向群．下り］属性１０１５７１と、隣接回路群［方向群．上り］１０１５７２によって示される関連１０１５７が、その関連クラスとして接続点１０１０５によって示されるクラスを有することを示す。なお、例では鉄道制御システムの駅、軌道回路、信号機などの例を用いているが、本発明は、いかなる特定の分野のシステムの設計にも限定されない。また、以下の説明で使用する例は、いかなる特定の実在の鉄道制御システムの設計情報および用語を反映するものでもなく、単に例として使用するものである。
【００３９】
図３は、変換後モデルスキーマ情報１０２を示す図である。駅１０２０１と、信号機１０２０２と、軌道回路１０２０３、回路端１０２０４、接続点１０２０５、方向群１０２０６は、図２の駅１０１０１と、信号機１０１０２と、軌道回路１０１０３、回路端１０１０４、接続点１０１０５、方向群１０１０６と同じ情報を変換後の生成対象とすること定義する。
【００４０】
また、駅１０２０１、信号機１０２０２、軌道回路１０２０３、回路端１０２０４、接続点１０２０５によって示されるそれぞれのクラスが有する属性は、変換前における各属性と同じ情報によって変換後の生成対象として定義される。さらに、変換後における関連及び関連端は、対応する変換前における各関連及び関連端と同じ情報によって変換後の生成対象として定義される。更に、線１０２５７３は、線１０１５７３と同じ情報を変換後の生成対象とすること定義する。
【００４１】
閉そく１０２０７は、変換後モデルスキーマ情報１０２に追加されるクラスを示す。属性１０２０７１は、値が上り１０２０６１もしくは下り１０２０６２である方向群１０２０６を型とする「方向」属性を、閉そく１０２０７によって示されるクラスが有することを示す。関連１０２５７及び関連端１０２５７１と関連端１０２５７２は、閉そく１０２０７によって示されるクラスと、信号機１０２０２によって示されるクラスが1対１の関係を有することを示している。また、閉そく１０２０７によって示されるクラスは型が信号機１０２０２である「信号機」属性１０２５７１を、信号機１０２０２によって示されるクラスは型が閉そく１０２０７である「所属閉そく」属性１０２５７２を有することを示す。
【００４２】
また、関連１０２５８及び関連端１０２５８１と関連端１０２５８２は、閉そく１０２０７によって示されるクラスと、軌道回路１０２０３によって示されるクラスが多対多の関係を有することを示している。また、閉そく１０２０７によって示されるクラスは型が軌道回路１０２０３のリストである「内方回路群」属性１０２５８２を、軌道回路１０２０３によって示されるクラスは型が閉そく１０２０７の集合である「内方閉そく」属性１０２５８１を有することを示す。また、関連１０２５９及び関連端１０２５９１と関連端１０２５９２は、閉そく１０２０７によって示されるクラスと、軌道回路１０２０３によって示されるクラスが１対１の関係を有することを示している。また、閉そく１０２０７によって示されるクラスは型が軌道回路１０２０３である「発点」属性１０２５９２を、軌道回路１０２０３によって示されるクラスは型が閉そく１０２０７の集合である「発点所属閉そく」属性１０２５９１を有することを示す。
【００４３】
図４は、変換前モデルインスタンス情報１０３の一部を示す図である。テーブル１０３１は変換前モデルインスタンス情報１０３のテーブルの一例であり、変換前モデルスキーマ情報１０１のクラス「軌道回路」１０１０３に基づくインスタンス情報を示すテーブルである。
【００４４】
行１０３１５１から行１０３１６７までの連番で示される各行は、テーブル１０３１のレコードである。テーブル１０３１はフィールドとして、ＩＤ１０３１０１と、軌道回路群［方向群．上り］．接続点１０３１０２と、軌道回路群［方向群．下り］．接続点１０３１０３と、駅１０３１０４とを有する。例えば、図１８に示すように、レコード１０３１５１は、ＩＤ１０３１０１が「軌０」である軌道回路は、「隣接回路群」属性として、「軌１」を有し、「軌１」は隣接回路群［方向群．上り］であって、その接続点は「点０」であること、隣接回路群［方向群．下り］は空値であること、駅属性として「駅０」を有することを表している。
【００４５】
なお、以下の例では、変換前モデルスキーマ情報１０１のクラス「軌道回路」１０１０３に基づく変換前モデルインスタンス情報１０３を、単に「軌道回路」と略して説明する。また、隣接回路群属性は、「方向群」列挙体１０１０６の「上り」列挙子１０１０６１の値「１」をインデックスとする軌道回路の集合と、「方向群」列挙体１０１０６の「下り」列挙子１０１０６２の値「２」をインデックスとする軌道回路の集合とによる配列であり、変換前モデルスキーマ情報１０１の関連１０１５７及び属性１０１５７１、属性１０１５７２により示される情報である。
【００４６】
図５は、変換前モデルインスタンス情報１０３の一部を示す図である。テーブル１０３２は変換前モデルインスタンス情報１０３のテーブルの一例であり、変換前モデルスキーマ情報１０１の接続点１０１０５に基づくインスタンス情報を示すテーブルである。
【００４７】
行１０３２５１から行１０３２７１までの連番で示される各行は、テーブル１０３２のレコードである。テーブル１０３２はフィールドとして、ＩＤ１０３２０１と、端点群１０３２０２と、信号機群１０３２０３とを有する。例えば、図１８に示すように、レコード１０３２５１は、ＩＤ１０３２０１が「点０」である接続点は、端点群１０３２０２が「軌０下」であり、信号機群１０３２０３が空値であることを示す。またレコード１０３２５２は、ＩＤ１０３２０１が「点１」である接続点は、端点群１０３２０２が「軌０上」「軌１下」である２つの軌道回路の端点と重なり、信号機群１０３２０３として「信０」と「信１」の２つの信号機を有することを示す。
【００４８】
図６は、変換前モデルインスタンス情報１０３の一部を示す図である。テーブル１０３３は変換前モデルインスタンス情報１０３のテーブルの一例であり、変換前モデルスキーマ情報１０１の回路端１０１０４に基づくインスタンス情報を示すテーブルである。
【００４９】
行１０３３５１から行１０３３８７までの連番で示される各行は、テーブル１０３３のレコードである。テーブル１０３３はフィールドとして、ＩＤ１０３３０１と、方向１０３３０２と、軌道回路１０３３０３とを有する。例えば、図１８に示すように、レコード１０３３５１は、ＩＤ１０３３０１が「軌０下」である回路端は、方向１０３３０２が「下り」であり、軌道回路１０３３０３が「軌０」であること、すなわち「軌０下」である回路端は軌道回路「軌０」の下り側に存在することを示す。
【００５０】
図７は、変換前モデルインスタンス情報１０３の一部を示す図である。テーブル１０３４は変換前モデルインスタンス情報１０３のテーブルの一例であり、変換前モデルスキーマ情報１０１の信号機１０１０２に基づくインスタンス情報を示すテーブルである。
【００５１】
行１０３４５１から行１０３４６５までの連番で示される各行は、テーブル１０３４のレコードである。テーブル１０３４はフィールドとして、ＩＤ１０３４０１と、方向１０３４０２と、駅１０３４０３とを有する。例えば、図１８に示すように、レコード１０３４５１は、ＩＤ１０３４０１が「信０」である信号機は、方向１０３４０２が「上り」であり、駅１０３４０３が「駅０」であることを示す。
【００５２】
図８は、変換後モデルインスタンス情報１０４の一部を示す図である。テーブル１０３５は変換後モデルインスタンス情報１０４のテーブルの一例であり、変換後モデルスキーマ情報１０２の閉そく１０２０７に基づくインスタンス情報を示すテーブルである。
【００５３】
行１０４５１から行１０４６５までの連番で示される各行は、テーブル１０３５のレコードである。テーブル１０３５はフィールドとして、ＩＤ１０４０１と、方向１０４０２と、信号機１０４０３と、発点１０４０４と、内方回路群１０４０５を有する。例えば、図１８に示すように、レコード１０４５１は、ＩＤ１０４０１が「閉０」である軌道回路の方向１０４０２が「上り」であり、信号機１０４０３が「信０」であり、発点１０４０４が「軌０」であり、内方回路（軌道回路）群１０４０５が、「軌１」「軌２」「軌４」「軌５」の順番のリストであることを示す。なお、レコード１０４５１は、信号機１０４０３が「閉０」である信号機は、「軌１」「軌２」「軌４」「軌５」への列車の進入をその現示により制御することを示す情報であり、本実施例は、閉そくテーブルの情報を、開発対象の情報制御システムへの設定情報とすることを想定する例である。
【００５４】
図９は、変換後モデル制約情報１０５を示す図である。テーブル１０５０は変換後モデル制約情報１０５の一例である。変換後モデル制約情報１０５は、変換後のモデルが守るべき制約を表す情報である。
【００５５】
行１０５５１から行１０５５４までの連番で示される各行は、テーブル１０５０のレコードである。テーブル１０５０はフィールドとして、番号１０５０１と、制約定義１０５０２と、説明１０５０３とを有する。レコード１０５５１は、番号１０５０１が「制約１」である制約の制約定義１０５０２は全ての閉そくに対し、閉そくを閉そくＸと表す場合に、方向Ｘを閉そくＸの「信号機」属性によってあらわされる信号機の「方向」属性の値とした場合に、閉そくＸの「発点」属性の隣接回路群[方向Ｘ]属性の値が閉そくＸの「内方回路群」属性の最初の値と同じであることを示している。またｋを１から閉そくＸの「内方回路群」属性の要素の個数から１引いた値までのいずれかの整数と置いた場合に、閉そくＸの「内方回路群」属性によって示される軌道回路群のｋ番目の軌道回路の「隣接回路群[方向Ｘ]」属性によって示される軌道回路が、閉そくＸの「内方回路群」属性によって示される軌道回路群のｋ＋１番目の軌道回路であることを示す。またレコード１０５５１は、番号１０５０１が「制約１」である制約の説明１０５０３が、「内方回路群は、発点の次から信号機の方向に連続している。」であることを示す。例えば、図１８および図８では、軌１０を発点とした閉そく１０は、軌１１、軌１２、軌１３と信号機の方向に連続しており、この制約１の条件を満たしていることがわかる。なお、この変換後モデル制約情報１０５は、あらかじめ管理者等によって設定されている。
【００５６】
図１０は、変換処理情報１０６を示す図である。テキスト１０６０は変換処理情報１０６の一例であり、図８に示される変換後モデルインスタンス情報１０４の情報を、図４から図７までの変換前モデルインスタンス情報から生成することを想定している。
【００５７】
処理式１０６０１は、信号機テーブルの信号機ごとに行う処理を定義する。処理式１０６０１において、処理式１０６０１１は、閉そくテーブルのレコードを新規に作成し、ＩＤを新規に作成する処理を定義する。処理式１０６０１２は、という処理を定義する。処理式１０６０１３は、閉そくテーブルの信号機フィールドに、信号機のＩＤを代入する処理を定義する。処理式１０６０１４は、信号機の接続点属性によって指定される接続点の回路端群属性に指定される回路端ごとに処理を行うことを定義する。処理式１０６０１５は、回路端の方向属性と閉そくの方向属性が等しければ、閉そくの発点属性に回路端の軌道回路属性を追加するという処理を定義する。この処理式１０６０１によって、閉そくの始点が定められることとなる。
【００５８】
処理式１０６０２は、閉そくテーブルの閉そくごとに行う処理を定義する。処理式１０６０２１は、対象とする閉そくの内方回路群属性に、次の処理式１０６０２２の結果を追加する処理を定義する。処理式１０６０２２は、式１０６０２３によって指定される要素を始点とし、式１０６０２４によって指定される全ての要素を、条件式１０６０２５が成り立つ限り、順番に取得するという処理を定義する。式１０６０２３は、処理式１０６０２２の始点が閉そくの「発点」属性により指定される軌道回路であることを定義する。式１０６０２４は、処理式１０６０２２において取得対象となるのは、軌道回路の隣接回路群［閉そく．方向］属性によって指定される軌道回路であることを示す。条件式１０６０２５は、処理式１０６０２６により取得できる要素の個数が０であることが、式１０６０２２の終了条件であることを示す。処理式１０６０２６は、式１０６０２４によって指定される取得対象の軌道回路、すなわち軌道回路の「隣接回路群［閉そく．方向］．接続点」属性により指定される接続点の「信号機群」属性によって指定される信号機において、信号機の「方向」属性が閉そくの「方向」属性と等しいものを取得することを示す。この処理式１０６０２によって、閉そくの終点が定められることとなる。なお、式１０６０２６は、軌道回路Ｘおよび軌道回路Ｙの間の接続点の信号機群を確認するものが正しく、図１０の変換のために後に示す誤謬要素情報１７１が入力装置１３により作成される必要があるものとする。
【００５９】
図１１は、誤謬要素情報１７１を示す図である。テーブル１７１０は誤謬要素情報１７１の一例である。行１７１５１と、行１７１５２とは、テーブル１７１０のレコードである。テーブル１７１０はフィールドとして、番号１７１０１と、対象１７１０２と、スキーマ１７１０３とを有する。レコード１７１５１は、番号１７１０１が「１」である誤謬要素は、変換後モデルインスタンス情報１０４のレコードにおいて、対象１７１０２「閉３」によって示される「閉そく」クラスの「内方回路群」属性に間違いがあり、レコード１７１５２は、番号１７１０１が「２」である誤謬要素は、変換後モデルインスタンス情報１０４のレコードにおいて、対象１７１０２「閉４」によって示される「閉そく」クラスの「内方回路群」属性に間違いがあることを示す。
【００６０】
図１２は、制約逸脱情報１７２を示す図である。テーブル１７２０は制約逸脱情報１７２の一例である。行１７２５１から行１７２７６までの連番で示される各行は、テーブル１７２０のレコードである。テーブル１７２０はフィールドとして、ＩＤ１７２０１と、誤謬要素１７２０２と、逸脱制約１７２０３と、選択値１７２０４と、更新前値１７２０５とを有する。レコード１７２５１は、ＩＤ１７２０１が「逸脱１」である情報は、誤謬要素１７２０２「閉そく（閉３）．内方回路群」によって示される変換後モデルインスタンス情報１０４のレコードについて、逸脱制約１７２０３の値「制約３」によって示される制約に反する形で、更新前値１７２０５に示される値「軌６」から選択値１７２０４に示される値「軌６，軌１０」に修正されたことを示す。上述したように、制約逸脱情報１７２は、前記選択肢出力処理部１５１が、入力装置１３より選択候補情報１７３に対する選択結果を得て保存する。また、制約逸脱情報１７２には、同様にして得られた選択結果が、過去の制約逸脱情報（図１２の例ではレコード１７２５２〜１７２５６の５つのレコード）として蓄積されている。
【００６１】
図１３は、選択候補情報１７３を示す図である。テーブル１７３０は選択候補情報１７３の一例である。行１７３５１から行１７３６５までの連番で示される各行は、テーブル１７３０のレコードである。テーブル１７３０はフィールドとして、制約１７３０１と、選択候補１７３０６とを制約１７３０１は更に、制約１を表すフィールド１７３０２、制約２を表すフィールド１７３０３、制約３を表すフィールド１７３０３、制約４を表すフィールド１７３０４により構成される。レコード１７３５１は、変換後モデル制約情報１０５のレコードに示される制約「制約１」１０５５１を適用せず、制約「制約２」１０５５２と「制約３」１０５５３と「制約４」１０５５４を適用した場合に、選択候補として選択候補１７３０６に示される選択肢として、図４の軌道回路テーブルに示される「軌０」と「軌１」と「軌４」と「軌６」とのいずれかを一つ含むか含まないかであり、最低一つの要素を有する、全ての配列を得ることを示す。このように、選択候補情報１７３には、ある制約を外した場合において選択させる要素の候補を、後に述べる制約適合要素抽出処理部１５３がそのパターンごとに記憶する。
【００６２】
図１４は、変換前後情報１７４を示す図である。テーブル１７４０は変換前後情報１７４の一例である。行１７４５１から行１７４５５までの連番で示される各行は、テーブル１７４０のレコードである。テーブル１７４０はフィールドとして、出力１７４０１と、変換前スキーマ入力１７４０２と、変換後スキーマ入力１７４０３と、類似度計算対象１７４０４とを有する。レコード１７４５１は、値「閉そく．ＩＤ」によって示される出力１７４０１は、変換前スキーマ入力１７４０２を「信号機」とし、変換後スキーマ入力１７４０３を空値とすること、また、類似度計算対象１７４０４を空値とすることを示す。
【００６３】
変換前後情報１７４は、図８に示した閉そくテーブルについての変換後モデルインスタンス情報１０４が有する各データ項目（ＩＤ１０４０１、方向１０４０２、信号機１０４０３、発点１０４０４、内方回路群１０４０５）ごとに出力１７４０１が定められ、その出力１７４０１ごとに、スキーマ情報の変換前後の値（変換前スキーマ入力１７４０２、変換後スキーマ入力１７４０３）が記憶されている。また、変換後スキーマ入力１７４０３として出力されるデータ項目が、類似度計算対象１７４０４として記憶されている。例えば、データ項目「閉そく．発点」における変換前スキーマ入力１７４０２には設定されていないが、そのデータ項目における変換後スキーマ入力１７４０３に「閉そく．方向」が含まれている場合には、類似度計算対象１７４０４として「閉そく．方向」が設定される。なお、変換前後情報１７４は、上述したように、前記変換前後情報作成処理部１５５が、変換処理情報１０６に示されている各処理式を実行して設定される。すなわち、変換後のスキーマ情報に含まれるデータ項目が類似度計算対象１７４０４として設定されている。
【００６４】
図１５Ａは、誤謬要素類似度情報１７５を示す図である。テーブル１７５０は誤謬要素類似度情報１７５の一例である。行１７５５１から行１７５５４までの連番で示される各行は、テーブル１７５０のレコードである。テーブル１７５０はフィールドとして、要素１７５０１と、指標値合計１７５０２と、更新前類似度１７５０３と、更新後指標値合計１７５０４とを有する。レコード１７５５１は、要素１７５０１の値「閉１１」に示される要素の指標値合計１７５０２は「１１」であり、更新前類似度１７５０３は「７３％」、更新後指標値合計１７５０４は「１１」と計算されること、を示す。
【００６５】
図１５Ａでは、図１１に示した誤謬要素情報１７１のうち、「閉そく４」についての「閉そく」クラスの「内方回路群」属性に間違いがある場合を例に示している。図１０に示した変換処理情報１０６に示された各処理式が実行されると、図２に示した変換後モデルスキーマ情報１０２や図８に示した変換後モデルインスタンス情報１０４が生成されるが、これらの各情報は、図９に示した変換後モデル制約情報１０５のファイルに示された制約を守る必要がある。しかし、例えば、変換後モデル制約情報１０５の登録時に誤りがある場合には、たとえ制約２を設定した場合であっても正しい処理結果を得ることができない。具体的には、閉そく４については、図１０に示した変換処理情報１０６の実行結果では、後述する図１８に示すように、軌４、軌２、軌１、軌０のすべてを含めて閉そく４とする必要があるが、図９に示した変換後モデル制約情報１０５の制約２の定義が誤っている（同方向の信号機によって保護されている軌道回路は、内方軌道回路に含めない）ため、閉そく４には軌４のみが含まれるようになってしまっており、正しい内容に修正する必要がある。
【００６６】
このため、まず、変換前後情報１７４のうち、誤謬要素情報１７１として登録された要素（例えば、図１１では、閉そく．内方軌道回路）についての処理式を、あるステップごとに分割する。図１１では、発点、隣接回路群、信号機群、方向、その隣接回路群の内方回路群、その内方回路群の信号機群の計６つのステップに分割する。そして、誤って変換後モデルインスタンス情報１０４の閉そく４を構成する内方回路群として軌４が設定されている場合での閉そく４について変換前後情報１７４を実行した場合の各ステップの実行結果を集計する。例えば、図１５Ｂに示す誤謬要素類似度集計情報１７５Ａのように、上述したステップごとの実行結果をテーブル形式として記憶させる。図１５Ｂに示す例では、その集計結果（指標値合計）が１５であることを示している。
【００６７】
一方、誤って閉そく４を構成する軌道回路は軌４のみとして設定され、この設定を正しい値に変更するには、正しい値を調べて設定し直すこともできる。しかし、実行される処理や、その処理の実行環境が複雑な場合には、正しい値を再設定するためにその調査や検証を行う必要があり、システムが複雑になればなるほどこれらの作業が煩雑となる可能性が高い。また、再設定時に名称の綴り間違いや、他の値の上書きなど、二次的な間違いを起こす可能性もある。従って、過去に今回の制約逸脱に類似した情報を制約逸脱情報１７２の中から特定して、正しい値に修正するほうが、利用者や開発者にとって煩雑さがなく、容易に修正したり処理の結果を利用したりすることができる。したがって、以下に示す方法により、類似する制約情報を特定し、問題となっている誤謬要素に含まれるデータ項目を修正させる。
【００６８】
まず、今回問題となっている閉そく４についての集計結果は上述したように１５であるが、制約逸脱情報１７２に記憶されている過去の閉そく（閉そく１１、閉そく１２、閉そく１７、閉そく２１）について、同様の集計を行う。図１５Ｂに示す例では、これらの各閉そくの集計結果は、それぞれ１１、９、８、９であることがわかる。従って、過去の制約逸脱情報として登録されている閉そくのなかで、閉そく４について変換処理情報１０６を実行した結果が最も類似している閉そくは閉そく１１であり、その類似度が７３％であることがわかる。
【００６９】
さらに、図１２に示すように、閉そく１１は、構成する内方軌道回路が、正しくは軌１１、軌１２、軌１６、軌１７であるため、この正しい構成での閉そく１１に対する変換処理上情報１０６の実行結果を、閉そく４の場合と同様に集計してその値を求め、図１６に示す選択肢類似度情報１７６の最上位行（最初のレコード）に設定する。
【００７０】
図１６は、選択肢類似度情報１７６を示す図である。テーブル１７６０は選択肢類似度情報１７６の一例である。行１７６３１から行１７６９０までの連番で示される各行は、テーブル１７６０のレコードである。テーブル１７６０はフィールドとして、候補１７６０１と、指標値合計１７６０２と、更新後類似度１７６０３とを有する。レコード１７６３１は、候補１７６０１が「軌４，軌２」であり、指標値合計１７６０２が「４」であり、更新後類似度１７６０３が「３６％」であることを示す。
【００７１】
図１６に示す例では、特に明示的に記載していないが、図１５Ｂに示した発点、隣接回路群、信号機群、方向、その隣接回路群の内方回路群、その内方回路群の信号機群の計６つのステップと同様の各ステップについての実行結果をテーブル形式として記憶させ、その集計結果（指標値合計）の値が１１（レコード１７６３０）であったことを示している。
【００７２】
また、選択肢類似度情報１７６は、最も類似していると判定された閉そく１１についての変換処理情報１０６の実行結果（図１２に示した制約逸脱情報１７２の選択値として軌１１、軌１２、軌１６、軌１７が設定された状態（更新後の状態）での実行結果）の集計値と、今回問題となっている閉そく４について図１３に示した選択候補情報１７３のそれぞれの組み合わせを選択した場合における変換処理情報１０６の実行結果の集計値とを比較し、その集計値（指標値合計）と類似度とをテーブル形式で記憶させている。図１６に示す例では、閉そく４を構成する軌道回路として、例えば、軌４、軌２、軌１、軌０を選択した場合や軌０を選択した場合には、閉そく１１についての変換処理情報１０６の実行結果との類似度が７３％であり、他の選択肢を選択した場合における実行結果に比べて類似度が高いことを示している。すなわち、選択肢類似度情報１７６には、過去の制約逸脱情報１７２のなかで今回修正対象となっている要素に最も類似している要素と、その要素について変換前後情報１７４を実行した場合の各ステップの実行結果の集計値とともに、今回修正対象となっている要素を正しい値にするために選択され得る要素の組み合わせのそれぞれを選択した場合の変換前後情報１７４を実行した場合の各ステップの実行結果の集計値および類似度をテーブル形式で記憶させることにより、両者がどの程度似ているかを示すものである。
【００７３】
図１７は、処理状態情報１７７を示す図である。テーブル１７７０は処理状態情報１７７の一例である。行１７７５１は、テーブル１７７０のレコードである。テーブル１７７０はフィールドとして、除外制約数１７７０１と、表示済候補１７７２０とを有する。レコード１７７５１は、除外制約数１７７０１が「１」であり、表示済候補１７７２０の値「（軌４），（軌４，軌２），（軌４，軌２，軌１），（軌４，軌２，軌１，軌０）」により、すでに出力装置１４により候補「軌４」と「軌４，軌２」と「軌４，軌２，軌１」と、「軌４，軌２，軌１，軌０」とが表示されていることを示す。この例では、閉そく４に対して制約２が守られておらず、その制約（制約２）を除外した場合であるので、除外制約数１７７０１が「１」であり、その場合の表示済み候補１７７０２として、図１３に示した選択肢情報１７３のうち、制約２を除外した場合のレコード１７３５２が設定されている状態を示している。
【００７４】
図１８は、出力装置１４の表示を示す図である。モデル編集画面１４０１は出力表示１４の一例である。図１４０１１は、設計対象全体の構造を示す図である。図１８に示す例では、線区は３つの駅を有し、これらの各駅の具体的な構成が、駅情報１４０１２〜１４０１４としてその下に表示されていることを示している。
【００７５】
部品１４０１１０１と、部品１４０１１０２と、部品１４０１１０３とは、変換前モデルスキーマ情報１０１の「駅」に対応する情報を示す部品である。部品１４０１１５１と、部品１４０１１５２とは、駅同士の隣接関係を示す部品である。図１４０１２と、図１４０１３と、図１４０１４とは、部品１４０１１０１と、部品１４０１１０２と、部品１４０１１０３とによって示されるそれぞれの駅の情報を示す図である。
【００７６】
また、部品１４０１２０１から部品１４０１２０７までの連番で示される各部品と、部品１４０１３０１から部品１４０１３０８までの連番で示される各部品と、部品１４０１４０１かおよび部品１４０１４０２の各部品は、それぞれ、「駅０」、「駅１」、及び「駅２」をその属性である駅１０２５４１の値とする変換前モデルスキーマ情報１０１のインスタンスである軌道回路テーブル１０３１のレコードを示す部品である。また、部品１４０１２０１１及び部品１４０１２０１２は、それぞれ部品１４０１２０１によって示される軌道回路の方向１０２０２２の値が方向群１０２０６の「上り」１０２０６２である回路端１０２０４、及び「下り」１０２０６１で示される回路端１０２０４のインスタンスである回路端テーブル１０３３のレコードを示す部品である。
【００７７】
同様に、部品１４０１２０２１及び部品１４０１２０２２と、部品１４０１２０３１及び部品１４０１２０３２と、部品１４０１２０４１及び部品１４０１２０４２と、部品１４０１２０５１及び部品１４０１２０５２と、部品１４０１２０６１及び部品１４０１２０６２と、部品１４０１２０７１及び部品１４０１２０７２と、部品１４０１３０１１及び部品１４０１３０１２と、部品１４０１３０２１及び部品１４０１３０２２と、部品１４０１３０３１及び部品１４０１３０３２と、部品１４０１３０４１及び部品１４０１３０４２と、部品１４０１３０５１及び部品１４０１３０５２と、部品１４０１３０６１及び部品１４０１３０６２と、部品１４０１３０７１及び部品１４０１３０７２と、部品１４０１３０８１及び部品１４０１３０８２と、部品１４０１４０１１及び部品１４０１４０１２と、部品１４０１４０２１及び部品１４０１４０２２とは、部品１４０１２０２から部品１４０１２０７までの連番で示される各部品と、部品１４０１２０１から部品１４０１２０７までの連番で示される各部品と、部品１４０１４０１かおよび部品１４０１４０２の各部品によって示される軌道回路の、方向１０２０２２の値が方向群１０２０６の「上り」１０２０６２である回路端１０２０４、及び「下り」１０２０６１で示される回路端１０２０４のインスタンスである回路端テーブル１０３３のレコードを示す部品である。
【００７８】
また、部品１４０１２５１から部品１４０１２５９までの連番で示される各部品と、部品１４０１３５１から部品１４０１３６１までの連番で示される各部品と、部品１４０１３５１から部品１４０１２５３までの連番で示される各部品とは、変換前モデルスキーマ情報１０１の接続点１０１０５によって定義される変換前モデルインスタンス情報１０３の接続点テーブル１０３２のレコードに対応する情報を示す部品である。
【００７９】
また、部品１４０１２８１から部品１４０１２８５までの連番で示される各部品と、部品１４０１３８１から部品１４０１３８７までの連番で示される各部品と、部品１４０１４８１及び部品１４０１４８２は、「駅０」、「駅１」、「駅２」をその属性である駅１０２５１１の値とする変換前モデルスキーマ情報１０１の信号機１０１０２によって定義される変換前モデルインスタンス情報１０３の信号機テーブル１０３４のレコードに対応する情報を示す部品である。
【００８０】
図１９は、出力装置１４の表示を示す図である。候補選択画面１４０２は出力表示１４の一例である。候補一覧１４０２１は、選択候補情報１７３の選択候補１７３０６に示される選択肢を、選択肢類似度情報１７６の更新後類似度１７６０３の順番に表示し、かつ選択肢への選択入力を受け付けるリストである。チェックボックス１４０２２は、選択を直接入力するかを指定するチェックボックスである。チェックボックス１４０２２がチェックされる場合、制約一覧１４０２３が表示される。制約一覧１４０２３の行１４０２３５１、行１４０２３５２、行１４０２３５３、行１４０２３５４は、変換後モデル制約情報のレコード１０５５１、レコード１０５５２、レコード１０５５３、レコード１０５５４に対応する。制約一覧１４０２３の選択１４０２３０１は、番号１４０２３０２と説明１４０２３０３により示される制約を選択肢が守る必要があるかを入力するチェックボックスである。更に、候補選択画面１４０２は入力装置１３に対する入力を受け付けることを示す「ＯＫ」ボタン１４０２４と、入力受付を取りやめることを示す「キャンセル」ボタン１４０２５とを有する。候補選択画面１４０２では、制約一覧１４０２３として表示された制約のうち、選択１４０２３０１のチェックボックスを外して選択が除外された場合の内方回路群の候補を、図１６に示した選択肢類似度情報１７６を参照し、類似度の高い順に表示させている。システムの実行者はチェックボックスを外すだけで容易に問題となっている制約を除外することができる。
【００８１】
図２０は、出力装置１４の表示を示す図である。候補選択画面１４０３は出力表示１４の一例である。候補一覧１４０２１、チェックボックス１４０２２、「ＯＫ」ボタン１４０２４、「キャンセル」ボタン１４０２５は図１９に示すものと同じである。「この中にない」ボタン１４０３１は、表示される候補一覧１４０２１に選択すべき候補がないという、計算機１の使用者の判断を受け付けるボタンである。
【００８２】
図２１は、出力装置１４の表示を示す図である。制約逸脱一覧画面１４０４は出力表示１４の一例である。件数１４０４１１は、スキーマ１４０４１２によって指定されるスキーマにおいて、制約１４０４１３によって示される制約について制約に反する入力があった件数を、インスタンス１４０４１４はその制約に反し入力された情報を示す。説明１４０４２と制約定義１４０４３とは、制約１４０４１３によって示される制約の説明文と定義を示す。更に、制約逸脱一覧画面１４０４は入力装置１３に対する入力を受け付けることを示す「ＯＫ」ボタン１４０４４と、入力受付を取りやめることを示す「キャンセル」ボタン１４０４５とを有する。
【００８３】
後述するように、制約逸脱一覧画面１４０４は、制約逸脱情報出力処理部１５６によって出力装置１４の画面上に表示されるが、この画面が表示されると、開発者は制約定義１４０４３や説明１４０４２を直接画面上から修正することとなる。
【００８４】
次に、第一の実施の形態における、各処理部での処理の流れを説明する。まず、選択肢出力処理部１５１の流れを、図２２のフローチャートと、図１１の誤謬要素情報１７１と、図１３の選択候補情報１７３と、図１７の処理状態情報１７７と、図１９の候補選択画面１４０２と、図２０の候補選択画面１４０３とを参照しながら、詳細に説明する。
【００８５】
まず、入力装置１３より誤謬要素情報１７１を受け付ける（ステップ１５１０１）。次に、誤謬要素情報１７１においてステップ１５１０４において未選択のレコードがあるかを確認する（ステップ１５１０２）。未選択のレコードがある場合は、誤謬要素情報１７１より未選択のレコード一つを選択する（ステップ１５１０３）。
【００８６】
次に、処理状態情報１７７の除外制約数１７７０１に０を、表示済候補１７５０３に空値を代入する（ステップ１５１０４）。次に、処理状態情報１７７の除外制約数１７７０１の値に１を追加する（ステップ１５１０５）。次に、制約解除処理部１５２を呼び出し、選択対象の要素の種類としてステップ１５１０３において選択した誤謬要素情報１７１の１レコードのスキーマ１７１０３の値と、また処理状態情報１７７の除外制約数１７７０１の値とを送付し、制約解除処理部１５２の処理終了を待つ（ステップ１５１０６）。
【００８７】
次に、選択候補情報１７３を読み込み、候補一覧１４０２１に選択候補情報１７３の選択候補１７３０６の情報から処理状態情報１７７の表示済候補１７５０３の値を除いた値を、選択肢類似度情報１７５の更新後類似度１７６０３が１００％に近い順に並べて設定した候補選択画面１４０２を、出力装置１４に表示する（ステップ１５１０７）。次に、処理状態情報１７７の表示済候補１７５０３に、ステップ１５１０７において表示した選択候補情報１７３の選択候補１７３０６の情報を追加する（ステップ１５１０８）。この段階では、図１９に示した例では、候補一覧１４０２１には、図１７に示した処理状態情報１７７の処理済候補１７７０２のみが表示されているが、追加された選択候補１７３０６の情報は、メモリ１２に記憶された状態となっている。
【００８８】
次に、候補選択画面１４０２において、「ＯＫ」ボタン１４０２４がクリックされたか、それとも「キャンセル」ボタン１４０２５がクリックされたか、それとも「この中にない」ボタン１４０３１がクリックされたか、それとも制約一覧１４０２３のチェックボックス１４０２３０１が変更されたかを確認する（ステップ１５１０９）。「ＯＫ」ボタン１４０２４または「キャンセル」ボタン１４０２５がクリックされた場合については後述する。ステップ１５１０９において制約一覧１４０２３のチェックボックス１４０２３０１が変更された場合は、後に述べるステップ１５１１３を実行する。
【００８９】
ステップ１５１０９において「この中にない」ボタン１４０３１がクリックされた場合は、候補選択画面１４０２において、チェックボックス１４０２２がチェックされているかを確認する（ステップ１５１１０）。チェックされていない場合は、ステップ１５１０５に戻る。ステップ１５１１０においてチェックされている場合は、候補選択画面１４０２において制約一覧１４０２３が表示されているかを確認する（ステップ１５１１１）。表示されていない場合は、変換後モデル制約情報１０５の全レコードの情報を制約一覧１４０２３に表示し（ステップ１５１１２）、後に述べるステップ１５１１３を実行する。ステップ１５１１１において表示されている場合は、次に述べるステップ１５１１３を実行する。すなわち、制約適合要素抽出処理部１５３を呼び出し、誤謬要素情報１７１の１レコードのスキーマ１７１０３の値と、番号１０５０１が選択されている番号１４０２３０２と等しい変換後モデル制約情報１０５のレコードの集合とを送付する（ステップ１５１１３）。次に、ステップ１５１０７の処理に戻る。
【００９０】
ステップ１５１０９において「ＯＫ」ボタン１４０２４がクリックされた場合は、候補選択画面で選択された要素の候補を設定した新たなレコードを、制約逸脱情報１７２に追加する。具体的には、制約逸脱情報１７２の新しい一レコードを追加し、ＩＤ１７２０１を他のレコードにおいて使用されていない値に、誤謬要素１７２０２をステップ１５１０３において選択した誤謬要素情報１７１の１レコードの対象１７１０２及びスキーマ１７１０３を示す値に、逸脱制約１７２０３を制約一覧１４０２３のチェックボックス１４０２３０１で選択されていない番号１４０２３０２と等しい番号１０５０１もしくは候補選択画面１４０２の候補一覧１４０２１において設定された候補を選択候補１７３０６に有する選択候補情報１７３のレコード群の制約１７３０１に示される制約に、選択値１７２０４を候補選択画面１４０２の候補一覧１４０２１において設定された候補の値に、更新前値１７２０５をステップ１５１０３で選択された誤謬要素情報１７１のレコードの対象１７１０２とスキーマ１７１０３が示す変換後モデルインスタンス情報１０４の要素の値に設定する（ステップ１５１１４）。制約１７３０１に示される制約が複数ある場合は、「または」でつなげて入力する。このステップ１５１１４が終了すると、図１２に示した制約逸脱情報１７２のレコード（例えば、閉そく４についてのレコード１７２５２）が追加される。
【００９１】
次に、誤謬要素情報１７１のレコードの対象１７１０２とスキーマ１７１０３が示す変換後モデルインスタンス情報１０４の要素の値をステップ１５１１４の選択値１７２０４に変更する（ステップ１５１１５）。次に、ステップ１５１０７の処理に戻る。ステップ１５１０２において未選択のレコードがない場合、及びステップ１５１０９において「キャンセル」ボタン１４０２５がクリックされた場合は、選択肢出力処理部１５１の処理を終了する。このステップ１５１１５が終了すると、図８に示した変更後モデルインスタンス情報１０４（閉そくテーブル）に、ステップ１５１１４で選択された値が反映されることとなる。
【００９２】
次に、制約解除処理部１５２の流れを、図２３のフローチャートと、図８の変換後モデルインスタンス情報１０４と、図９の変換後モデル制約情報１０５と、図１１の誤謬要素情報１７１と、図１７の処理状態情報１７７とを参照しながら、詳細に説明する。
【００９３】
まず、制約解除処理部１５２は、選択肢出力処理部１５１より、誤謬要素情報１７１の１レコードのスキーマ１７１０３の値を受け取る（ステップ１５２０１）。次に、変換後モデル制約情報１０５のレコードを取得し、レコードの総数から処理状態情報１７７の除外制約数１７７０１の値を引いた値のレコードの組み合わせを作成する（ステップ１５２０２）。次に、ステップ１５２０４において変換後モデル制約情報１０５のレコードの未選択の組み合わせがあるかを確認し（ステップ１５２０３）、ある場合は、ステップ１５２０２において作成した変換後モデルインスタンス情報１０４のレコードの組み合わせから、未選択の組み合わせ一つを選択する（ステップ１５２０４）。
【００９４】
次に、制約適合要素抽出処理部１５３を呼び出し、誤謬要素情報１７１の１レコードのスキーマ１７１０３の値と、ステップ１５２０４において選択したステップ変換後モデル制約情報１０５のレコードの集合とを送付する（ステップ１５２０５）。次に、ステップ１５２０２の処理に戻る。ステップ１５２０３において未選択の組み合わせがない場合は、類似度抽出処理部１５４を呼び出し、処理の終了を待つ（ステップ１５２０６）。最後に、制約解除処理部１５２の処理を終了する。このステップ１５２０６が終了すると、変換後モデルインスタンス情報１０４が守るべき制約の組み合わせ（図１９に示した候補選択画面で表示されている制約のなかで除外制約数１７７０１に示される数の制約を除外した組合せ）が抽出される。
【００９５】
次に、制約適合要素抽出処理部１５３の流れを、図２４のフローチャートと、図２の変換前モデルスキーマ情報１０１と、図８の変換後モデルインスタンス情報１０４と、図９の変換後モデル制約情報１０５と、図１１の誤謬要素情報１７１と、図１３の選択候補情報１７３を参照しながら、詳細に説明する。
【００９６】
まず、呼出元である選択肢出力処理部１５１または制約解除処理部１５２より、変換前モデルスキーマ情報１０１に含まれる要素種類と、変換後モデル制約情報１０５のレコードの集合とを取得する（ステップ１５３０１）。次に、変換後モデルインスタンス情報１０４より、ステップ１５３０１で取得した要素種類に対応するテーブルのレコードを全て取得する（ステップ１５３０２）。
【００９７】
ステップ１５３０２において取得した変換後モデルインスタンス情報１０４のレコードの集合から、ステップ１５３０１において取得した変換後モデル制約情報１０５のレコードの集合に含まれるいずれかのレコードの制約定義１０５０２を満たさない、変換後モデルインスタンス情報１０４のレコードを除去する（ステップ１５３０３）。
【００９８】
最後に、選択候補情報１７３に、変換後モデル制約情報１０５の全てのレコード（制約）に対し、ステップ１５３０１において取得した要素に含まれる場合は値「○」を、含まれない場合は値「×」を示す情報を、制約１７３０１において変換後モデル制約情報１０５の各レコードを示す列に記入し、かつステップ１５３０３においてレコードを除去した変換後モデルインスタンス情報１０４のレコードの集合を示す情報を選択候補１７３０６に記入した、１レコードを追加する（ステップ１５３０４）。このステップ１５３０４が終了すると、図１３に示した選択候補情報１７３が作成される。
【００９９】
次に、類似度抽出処理部１５４の流れを、図２５のフローチャートと、図４から図７の変換前モデルインスタンス情報１０３と、図８の変換後モデルインスタンス情報１０４と、図１１の誤謬要素情報１７１と、図１４の変換前後情報１７４と、図１５の誤謬要素類似度情報１７５と、図１６の選択肢類似度情報１７６とを参照しながら、詳細に説明する。
【０１００】
まず、呼出元である選択肢出力処理部１５１より誤謬要素情報１７１の１レコードを取得する（ステップ１５４０１）。次に、ステップ１５４０１において取得した誤謬要素情報１７１の１レコードの対象１７１０２が示す変換後モデルインスタンス情報１０４のレコードにおいて、変換前モデルインスタンス情報１０３及び変換後モデルインスタンス情報１０４において、ステップ１５４０１において取得した誤謬要素情報１７１の１レコードのスキーマ１７１０３と出力１７４０１の値が同じである変換前後情報１７４のレコードの、類似度計算対象１７４０４に示される要素の数を計算する（ステップ１５４０２）。
【０１０１】
図１５Ｂを用いて説明したように、図８の変換後モデルインスタンス情報１０４を例にとると、閉４において、閉そく．発点が存在するため「１」、閉そく．発点．隣接回路群［閉そく．方向］が存在するため指標値「１」、接続点は１つのみ存在するため指標値「１」、信号機群は一つのみ存在するため「１」、信号機の方向は「上り」が存在せず「下り」が存在するため、それぞれに「１」を割り振り「２」、閉そく．方向に指標値「１」、図１０の式１０６０２２において、「全てのパスを取得」の最後となる「内方回路群」属性の要素の隣接回路群［閉そく．方向］は「軌２」であるため指標値「１」、「軌２」の「接続点」属性に「１」、接続点の信号機群属性は接続点が２つであるため「２」、それぞれの信号機群の信号は「上り」と「下り」の2種に分かれうるため「４」とそれぞれ割り振る。従って、和となる値は「１５」となる。
【０１０２】
次に、変換前後情報１７４が未作成である場合は（ステップ１５４０３）、変換前後情報作成処理部１５５を呼び出し（ステップ１５４０４）、作成済である場合は呼び出さない。次に、誤謬要素１７２０２がステップ１５４０１において取得した誤謬要素情報１７１の１レコードのスキーマ１７１０３を示す、制約逸脱情報１７２のレコードを取得する（ステップ１５４０５）。
【０１０３】
次に、ステップ１５４０７において、制約逸脱情報１７２の未選択のレコードがある場合は（ステップ１５４０６）、ステップ１５４０５において取得した制約逸脱情報１７２のレコードから１レコードを選択する（ステップ１５４０７）。次に、ステップ１５４０７において選択した制約逸脱情報１７２の１レコードの誤謬要素１７２０２が示す変換後モデルインスタンス情報１０４のレコードにおいて、変換前モデルインスタンス情報１０３及び変換後モデルインスタンス情報１０４において、ステップ１５４０２において使用した類似度計算対象１７４０４に示される要素の数を計算する（ステップ１５４０８）。
【０１０４】
図８の変換後モデルインスタンス情報１０４を例にとると、閉１１において、閉そく．発点が存在するため「１」、閉そく．発点．隣接回路群［閉そく．方向］が存在するため「１」、接続点は１つのみ存在するため「１」、信号機群は「０」、同じ方向の信号機が1つのみ存在するため「１」、閉そく．方向は「上り」であるため「０」、図１０の式１０６０２２において、「全てのパスを取得」の最後となる「内方回路群」属性の要素の隣接回路群［閉そく．方向］は「軌１３」「軌１６」であり閉４と数が一致しないため指標値０、接続点の個数は２つであるため値が閉４と一致するため「１」、それぞれの接続点で信号機の値が一致するため「２」、接続点ごとに上り、下りの信号機数が一致するため「４」であり、和となる値は「１１」となる。
【０１０５】
次に、ステップ１５４０８で計算した値をステップ１５４０２で計算した値で割る（ステップ１５４０９）。次に、誤謬要素類似度情報１７５に、要素１７５０１の値がステップ１５４０７において選択した制約逸脱情報１７２の１レコードの誤謬要素１７２０２に示される要素の値であり、指標値合計１７５０２の値がステップ１５４０８において計算した値であり、更新前類似度１７５０３がステップ１５４０９において計算した値である１レコードを入力する（ステップ１５４１０）。このステップ１５４１０が行われると、誤謬要素類似度情報１７５の指標値合計１７５０２にステップ１５４０８の結果が設定され、更新前類似度１７５０３にステップ１５４０９の結果が設定されたレコードが追加される。誤謬要素類似度情報１７５を例にすると、「閉１１」を示すレコード１７５５１で、「１１」を「１５」でわり、「７３％」を入力している。次に、ステップ１５４０６に戻る。
【０１０６】
ステップ１５４０７において、制約逸脱情報１７２の未選択のレコードがない場合は、誤謬要素類似度情報１７５より更新前類似度１７５０３が１００％に最も近いレコードを選択し、ステップ１５４０２と同様に変更後指標値合計１７５０４を計算する（ステップ１５４１１）。図１５の誤謬要素類似度情報１７５の例では、変更後指標値合計１７５０４の値は１１となる。
【０１０７】
次に、ステップ１５４１３において未選択の、処理状態情報１７７の表示済候補１７７０２に含まれない選択候補情報１７２の選択候補１７３０６の要素があるかを確認し（ステップ１５４１２）、ある場合は、処理状態情報１７７の表示済候補１７７０２に含まれない選択候補情報１７２の選択候補１７３０６の要素を一つ選択する（ステップ１５４１３）。次に、ステップ１５４１３において選択した選択候補情報１７２の選択候補１７３０６の要素において、変換前モデルインスタンス情報１０３及び変換後モデルインスタンス情報１０４において、ステップ１５４０２において使用した類似度計算対象１７４０４に示される要素の数を計算する（ステップ１５４１４）。
【０１０８】
次に、ステップ１５４１４で計算した値をステップ１５４１１で選択した誤謬要素類似度情報１７５のレコードの更新後指標値合計１７５０４で割る（ステップ１５４１５）。次に、選択肢類似度情報１７６に、候補１７６０１の値がステップ１５４１３において選択した選択候補情報１７２の選択候補１７３０６の要素の値であり、指標値合計１７６０２の値がステップ１５４１４において計算した値であり、更新後類似度１７６０３がステップ１５４１５において計算した値である１レコードを入力する（ステップ１５４１６）。このステップ１５４１６が行われると、選択肢類似度情報１７６の指標値合計１７６０２にステップ１５４１４の結果が設定され、更新後類似度１７６０３にステップ１５４１５の結果が設定されたレコードが追加される。
【０１０９】
次に、ステップ１５４１２の処理に戻る。ステップ１５４１２において、未選択の要素がない場合は、類似度抽出処理部１５４の処理を終了する。なお、類似度抽出処理部１５４のステップ１５４０２、ステップ１５４０８、ステップ１５４１４に示される指標値の計算方法は本方法に限定されるものでない。そして、図２５に示した処理が終了すると、図１５に示した誤謬要素類似度情報１７５および選択肢類似度情報１７６が作成される。
【０１１０】
次に、変換前後情報作成処理部１５５の流れを、図２６のフローチャートと、図２の変換前モデルスキーマ情報１０１と、図３の変換後モデルスキーマ情報１０２と、図１０の変換処理情報１０６と、図１１の誤謬要素情報１７１と、図１４の変換前後情報１７４とを参照しながら、詳細に説明する。
【０１１１】
まず、変換処理情報１０６から、変換後モデルスキーマ情報１０２の各要素に対して代入する処理式を取得する（ステップ１５５０１）。次に、ステップ１５５０１において取得した処理式において、ステップ１５５０３において、未選択の処理式があるか（ステップ１５５０２）を確認する。未選択の処理式がある場合は、ステップ１５５０１において取得した処理式より、一つの処理式を選択する（ステップ１５５０３）。
【０１１２】
次に、ステップ１５５０３において選択した処理式より、代入対象となる変換後モデルスキーマ情報１０２の要素名を取得する（ステップ１５５０４）。次に、ステップ１５５０４において取得した変換後モデルスキーマ情報１０２の要素に対しステップ１５５０３において選択した処理式において代入する迄に変換処理情報１０６において使用する、変換前モデルスキーマ情報１０１の全ての要素を取得する（ステップ１５５０５）。次に、ステップ１５５０４において取得した変換後モデルスキーマ情報１０２の要素に対しステップ１５５０３において選択した処理式において代入する迄に変換処理情報１０６において使用する、変換後モデルスキーマ情報１０２の全ての要素を取得する（ステップ１５５０６）。
【０１１３】
次に、ステップ１５５０５において取得した変換前モデルスキーマ情報１０１の要素と、ステップ１５５０６において変換後モデルスキーマ情報１０２の要素のうち、値を設定されうる全ての要素を取得する（ステップ１５５０７）。次に、変換前後情報１７４に、出力１７４０１の値がステップ１５５０４において取得した要素名であり、変換前スキーマ入力１７４０２の値がステップ１５５０５において取得した要素であり、変換後スキーマ入力の値１７４０３がステップ１５５０６において取得した要素であり、類似度計算対象１７４０４の値がステップ１５５０７において取得した要素である１レコードを追加する（ステップ１５５０８）。次に、ステップ１５５０２に戻る。ステップ１５５０２において未選択の処理式がない場合は、変換前後情報作成処理部１５５の処理を終了する。このステップ１５５０８の処理が終了すると、図１４に示した変換前後情報１７４が作成される。
【０１１４】
最後に、制約逸脱情報出力処理部１５６の流れを、図２７のフローチャートと、図９の変換後モデル制約情報１０５と、図１２の制約逸脱情報１７２と、図２１の制約逸脱一覧画面１４０４とを参照しながら、詳細に説明する。
【０１１５】
まず、入力装置１３より、制約逸脱情報出力処理部１５６の起動を受け付ける（ステップ１５６０１）。次に、制約逸脱情報１７２と変換後モデル制約情報１０５を読み込み、制約逸脱一覧画面１４０４を出力装置１４に表示する（ステップ１５６０２）。具体的には、制約逸脱情報１７２の誤謬要素１７２０２に示されるスキーマをスキーマ１４０４１２に、逸脱制約１７２０３に示される制約を制約１４０４１３に表示し、スキーマ１４０４１２と制約１４０４１３ごとに、誤謬要素１７２０２に示されるインスタンスをインスタンス１４０４１４に、制約逸脱情報１７２のレコード数を件数１４０４１１に表示し、また、制約１４０５１３ごとに、変換後モデル制約情報１０５の説明１０５０３を制約説明１４０４２に、制約定義１０５０２を制約定義１４０４４に、それぞれ設定した制約逸脱一覧画面１４０４を出力装置１４に表示する。
【０１１６】
次に、「ＯＫ」ボタン１４０４４がクリックされたか、それとも「キャンセル」ボタン１４０４５がクリックされたかを確認する（ステップ１５６０３）。「ＯＫ」ボタン１４０４４がクリックされた場合は、制約逸脱一覧画面１４０４の制約説明１４０４２を変換後モデル制約情報１０５の説明１０５０３を、制約定義１４０４４を制約定義１０５０２に保存し（ステップ１５６０４）、制約逸脱情報出力処理部１５６の処理を終了する。ステップ１５６０３において「キャンセル」ボタン１４０４５クリックされた場合は、制約逸脱情報出力処理部１５６の処理を終了する。このステップ１５６０４の処理が終了すると、図２１に示した制約逸脱一覧画面で修正された制約定義やその説明を反映した変換後モデル制約情報１０５が記憶される。
【０１１７】
このように、本実施例では、上述した様々な処理を実行し、これら一連の処理、ならびにこれら一連の情報を保管するファイルないしメモリを設けることにより、システムの開発および開発環境の構築の双方の効率化を図ることができる。すなわち、互いに制約を有する多数のデータ項目を扱うシステムの開発環境を構築する際に、システムの開発および開発環境の構築の双方に対して、効率化を図ることができる。具体的には、多数のデータ項目を扱うシステムの開発環境を構築する際に、入力データ項目およびその制約定義の間違いがシステムの開発工程に影響しないようにするために、本発明による開発環境は、定義に間違いがある場合にも制約数を減らすことにより、入力データ項目の選択肢を表示する。従って、開発環境の利用者は選択肢を選択することにより、出力データを生成できる。また、設計作業と並行して開発環境を修正する場合に、データ項目およびその制約の定義の間違い箇所を早く判別し、設計作業を支援すべく開発環境を早期に修正することができる。
【０１１８】
なお、第一の実施の形態の装置構成において、計算機１は１台に制限される必要はなく、２台以上で実現してもよい。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアを用いて実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することにより実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、磁気テープ、ＤＶＤ等の記録媒体に置くことができる。また、各構成要素の接続は説明上必要と考えられるものを示しており、必ずしも全ての接続を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【０１１９】
最後に、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【０１２０】
１      計算機
１３    入力装置
１４    出力装置
１０１  変換前モデルスキーマ情報
１０２  変換後モデルスキーマ情報
１０３  変換前モデルインスタンス情報
１０４  変換後モデルインスタンス情報
１０５  変換後モデル制約情報
１０６  変換処理情報
１５１  選択肢出力処理部
１５２  制約解除処理部
１５３  制約適合要素抽出処理部
１５４  類似度抽出処理部
１５５  変換前後情報作成処理部
１５６  制約逸脱情報出力処理部
１７１  誤謬要素情報
１７２  制約逸脱情報
１７３  選択候補情報
１７４  変換前後情報
１７５  誤謬要素類似度情報
１７６  選択肢類似度情報
１７７  処理状態情報。
【図１】
2014178821.tif 000003
【図２】
2014178821.tif 000004
【図３】
2014178821.tif 000005
【図４】
2014178821.tif 000006
【図５】
2014178821.tif 000007
【図６】
2014178821.tif 000008
【図７】
2014178821.tif 000009
【図８】
2014178821.tif 000010
【図９】
2014178821.tif 000011
【図１０】
2014178821.tif 000012
【図１１】
2014178821.tif 000013
【図１２】
2014178821.tif 000014
【図１３】
2014178821.tif 000015
【図１４】
2014178821.tif 000016
【図１５Ａ】
2014178821.tif 000017
【図１５Ｂ】
2014178821.tif 000018
【図１６】
2014178821.tif 000019
【図１７】
2014178821.tif 000020
【図１８】
2014178821.tif 000021
【図１９】
2014178821.tif 000022
【図２０】
2014178821.tif 000023
【図２１】
2014178821.tif 000024
【図２２】
2014178821.tif 000025
【図２３】
2014178821.tif 000026
【図２４】
2014178821.tif 000027
【図２５】
2014178821.tif 000028
【図２６】
2014178821.tif 000029
【図２７】
2014178821.tif 000030