(57)【要約】  【課題】既存の設定内容情報に基づいて生成した設定内容情報を検証するに際し、その作業負担を抑えることができるようにする。  【解決手段】既存設定内容情報における既存設定内容と同じ設定内容を示す設定データの配置位置として、その既存設定内容を示す設定データの配置位置と同じ配置位置を決定したうえで、こうして決定された配置位置に設定データが配置されてなる設定内容情報を生成することができる。こうして生成された設定内容情報において、既存設定内容と同じ設定内容を示す設定データは、これにより示される設定内容と配置位置との関係が、既存設定内容情報のままで維持されている（Ａ１Ｄ４＿０１〜Ａ１Ｄ４＿０３参照）。【選択図】図１０
2010102490.tif 000002
【特許請求の範囲】
【請求項１】
特定ソフトウェアの処理に関する設定内容のうち、該特定ソフトウェアを実装する制御装置または該制御装置に制御させる制御対象の条件（以降「対象条件」という）に応じた各設定内容を示す１以上の設定データそれぞれが、該設定データで示される設定内容に基づく処理の実施される順に配置されてなる情報を、新たな設定内容情報として生成する情報生成システムであって、
所定の前記対象条件に応じた各設定内容を示す設定データそれぞれの配置位置を、既存の前記設定内容情報（以降「既存設定内容情報」という）におけるいずれかの設定データ（以降「既存設定データ」という）に基づいて決定する位置決定手段と、
所定の前記対象条件に応じた各設定内容を示す設定データそれぞれを、前記位置決定手段にて決定された配置位置に配置することにより前記設定内容情報を生成するデータ生成手段と、を備えており、
前記位置決定手段は、前記対象条件に応じた設定内容のうち、前記既存設定内容情報におけるいずれかの設定内容（以降「既存設定内容」という）と一致する設定内容を示す設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定した後、該決定した以外の設定内容を示す設定データそれぞれの配置位置を、先に決定した以外の配置位置に決定する
ことを特徴とする情報生成システム。
【請求項２】
前記既存設定内容情報における設定データそれぞれが、該設定データの種類に応じた優先度の高い順に配置されている場合において、
前記位置決定手段は、所定の前記対象条件に応じた各設定内容を示す設定データにおいて最も優先度の高い種類に分類される第１設定データのうち、前記既存設定内容情報におけるいずれかの前記既存設定内容と一致する設定内容を示す第１設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定して、該決定した以外で最も優先順位の高い種類に分類される第１設定データの配置位置それぞれを、先に決定した以外の配置位置の先頭から順に決定した後、ここまでに決定した以外の設定データそれぞれの配置位置を、先に決定した配置位置より後の配置位置に決定する
ことを特徴とする請求項１に記載の情報生成システム。
【請求項３】
前記位置決定手段は、前記第ｉ（ｉ＝１，２，…，ｎ）設定データの配置位置を決定した後、次に優先度の高い種類に分類される第ｉ＋１設定データのうち、前記既存設定内容情報におけるいずれかの前記既存設定内容と一致する設定内容を示す第ｉ＋１設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置が他の設定データの配置位置に決定していなければ、その同じ配置位置に決定して、該決定した以外の第ｉ＋１設定データの配置位置それぞれを、先に決定した以外の配置位置の先頭から順に決定する、といった手順を、最も優先度の低い種類に分類される第ｎ設定データまで繰り返す
ことを特徴とする請求項２に記載の情報生成システム。
【請求項４】
前記位置決定手段は、同一種類の設定データの配置位置を決定する毎に、該決定した次の配置位置から所定数の配置位置を、実体のないダミーデータの配置位置として決定する
ことを特徴とする請求項３に記載の情報生成システム。
【請求項５】
請求項１から４のいずれかに記載の全ての手段として機能させるための各種処理手順をコンピュータシステムに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特定ソフトウェアの処理に関する各設定内容を示す１以上の設定データそれぞれが、その設定内容に基づく処理の実施される順に配置されてなる設定内容情報，を生成する情報生成システムに関する。
【背景技術】
【０００２】
この種のシステムでは、特定ソフトウェアを実装する制御装置または制御装置に制御させる制御対象の条件に応じた１以上の設定内容それぞれを設定し、これらを設定データとして順に記述したコードとして設定内容情報を生成することが一般的である（特許文献１参照）。
【特許文献１】特開２００７−２３０２８６号公報（段落００４４〜００５４など）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
こうして生成した設定内容情報は、各設定内容に基づく処理の挙動などの検証を行う必要があるが、既存の設定内容情報を流用して新たな設定内容情報を生成することもできるため、設定内容情報として要求される品質によっては、この既存の設定内容情報から追加された設定内容についてのみ検証を行うことで、その検証の作業負担を抑えることができる。これは、既存の設定内容情報における設定内容については、これに基づく処理の挙動が先に検証済みといえるからである。
【０００４】
ただ、上記構成では、単に設定内容それぞれを設定データとして順に記述したコードとして設定内容情報が生成されるため、各設定内容を示す設定データの配置位置が、既存の設定内容情報とは異なったものとなってしまうことがある。
【０００５】
この場合、新たに生成した設定内容情報は、各設定データとその配置位置との関係が既存の設定内容情報とは異なっているため、検証の作業負担を抑えるためには、実際に追加された設定データがどれか，といった確認作業を行わなければならず、かえって作業負担が増えてしまう恐れがあった。
【０００６】
本発明は、このような課題を解決するためになされたものであり、その目的は、既存の設定内容情報に基づいて生成した設定内容情報を検証するに際し、その作業負担を抑えることができるようにすることである。
【課題を解決するための手段】
【０００７】
上記課題を解決するためには、設定内容情報を生成する情報生成システムを以下に示す第１の構成（請求項１）のようにするとよい。
この構成は、特定ソフトウェアの処理に関する設定内容のうち、該特定ソフトウェアを実装する制御装置または該制御装置に制御させる制御対象の条件（以降「対象条件」という）に応じた各設定内容を示す１以上の設定データそれぞれが、該設定データで示される設定内容に基づく処理の実施される順に配置されてなる情報を、新たな設定内容情報として生成する情報生成システムである。
【０００８】
そして、所定の前記対象条件に応じた各設定内容を示す設定データそれぞれの配置位置を、既存の前記設定内容情報（以降「既存設定内容情報」という）におけるいずれかの設定データ（以降「既存設定データ」という）に基づいて決定する位置決定手段と、所定の前記対象条件に応じた各設定内容を示す設定データそれぞれを、前記位置決定手段にて決定された配置位置に配置することにより前記設定内容情報を生成するデータ生成手段と、を備えており、前記位置決定手段は、前記対象条件に応じた設定内容のうち、前記既存設定内容情報におけるいずれかの設定内容（以降「既存設定内容」という）と一致する設定内容を示す設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定した後、該決定した以外の設定内容を示す設定データそれぞれの配置位置を、先に決定した以外の配置位置に決定する。
【０００９】
このように構成された情報生成システムであれば、既存設定内容情報における既存設定内容と同じ設定内容を示す設定データの配置位置として、その既存設定内容を示す設定データの配置位置と同じ配置位置を決定したうえで、こうして決定された配置位置に設定データが配置されてなる設定内容情報を生成することができる。
【００１０】
こうして生成された設定内容情報において、既存設定内容と同じ設定内容を示す設定データは、これにより示される設定内容と配置位置との関係が、既存設定内容情報のままで維持されている。そのため、新たに生成した設定内容情報と既存設定内容情報との差分をとれば、既存設定内容と一致しない設定データ，つまり既存設定内容情報からみて追加された設定データのみを抽出することができる。
【００１１】
これにより、既存設定内容情報から追加された設定データがどれかといった確認作業を行わなくても、新たな設定内容情報と既存設定内容情報との差分をとるだけで、差分として抽出された設定データを、既存設定内容情報から追加された設定データとして容易に特定することができる。
【００１２】
その結果、こうして特定した設定データで示される設定内容に基づく処理の挙動のみの検証作業を行い、既存設定内容情報から追加されていない設定データに基づく処理の挙動を検証済みとして省略することにより、上述した確認作業を行うことなく、新たな設定内容情報全体に対する検証の作業負担を抑えることができる。
【００１３】
この構成において「設定データの配置位置を決定する」とは、その設定内容または設定データと配置位置との対応関係を規定することであり、具体的には、例えば、設定内容または設定データと配置位置とを対応づけてデータテーブルに登録することが考えられる。
【００１４】
また、上記構成において生成される設定内容情報とは、特定ソフトウェアの処理に関する各設定内容を示す１以上の設定データそれぞれが、その設定内容に基づく処理の実施される順に配置されてなるものであればよく、その具体的なデータ構造は特に限定されない。例えば、各設定データで示される設定内容，および，その設定データについて決定された配置位置を、それぞれ所定のプログラム言語に従って記述したコンフィグコードとして生成することが考えられる。
【００１５】
また、上記構成においては、既存設定内容情報における既存設定内容と同じ設定内容であれば、これを示す設定データの配置位置をその種類に応じた優先度に拘わらず、その既存設定内容を示す設定データと同じ配置位置に決定することとすればよい。
【００１６】
ただ、前記既存設定内容情報における設定データそれぞれが、該設定データの種類に応じた優先度の高い順に配置されている場合には、その優先度に従って各設定データの配置位置を決定することが望ましい。
【００１７】
それは、次のような理由からである。
例えば、既存設定内容情報に対し、優先度が最も高くない種類に分類される設定データが追加されたようなケースにおいて、この設定データが先頭の配置位置に配置されてしまうと、こうして追加された設定データ以外の設定データが全て既存設定内容情報と同一であったとしても、全ての配置位置が既存設定内容情報と異なったものとなってしまう。
【００１８】
この場合、新たな設定内容情報と既存設定内容情報との差分が最大化してしまうため、全ての設定データが差分，つまり既存設定内容情報から追加された設定データとして特定されることになる結果、処理の挙動を検証済みとして省略することのできる設定データがなくなり、新たな設定内容情報全体に対する検証の作業負担を抑えることができなくなってしまう。
【００１９】
そこで、優先度に従って各設定データを配置してなる設定内容情報を生成するための構成として、例えば、上記構成を以下に示す第２の構成（請求項２）のようにすることが考えられる。
【００２０】
この構成において、前記位置決定手段は、所定の前記対象条件に応じた各設定内容を示す設定データにおいて最も優先度の高い種類に分類される第１設定データのうち、前記既存設定内容情報におけるいずれかの前記既存設定内容と一致する設定内容を示す第１設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定して、該決定した以外で最も優先順位の高い種類に分類される第１設定データの配置位置それぞれを、先に決定した以外の配置位置の先頭から順に決定した後、ここまでに決定した以外の設定データそれぞれの配置位置を、先に決定した配置位置より後の配置位置に決定する。
【００２１】
この構成であれば、まず、所定の対象条件に応じた各設定内容を示す設定データにおいて最も優先度の高い種類に分類される第１設定データのうち、既存設定内容情報における既存設定内容と同じ設定内容を示す設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定することができる。
【００２２】
これにより、最も優先度の高い種類に分類される第１設定データの配置位置が最初に決定されるため、既存設定内容情報に優先度が最も高い種類に分類される以外の設定データが追加されたようなケースにおいても、この設定データが先頭の配置位置に配置されてしまうといったことを防止することができる。その結果、こうして追加された設定データ以外の設定データが全て既存設定内容情報と同一であるにも拘わらず、全ての配置位置が既存設定内容情報と異なったものとなってしまう、といったこともなくなる。
【００２３】
こうして、少なくとも第１設定データについての配置位置を既存設定内容情報と一致させることができるため、この第１設定データに基づく処理の挙動を検証済みとして省略することで、新たな設定内容情報全体に対する検証の作業負担を抑えることができるようになる。
【００２４】
なお、この構成において「設定データの種類に応じた優先度」とは、例えば、既存設定内容情報における設定データそれぞれが、特定ソフトウェアの実行時に制御装置のメモリにおける所定の記憶領域を占有する場合において、パディング等の無駄を抑えるべく、その記憶領域（占有領域）が大きい順に配置されることが定められている場合であれば、占有領域が大きいほど高い優先度とすることが考えられる。
【００２５】
また、この構成においては、以下に示す第３の構成（請求項３）のようにするとよい。
この構成において、前記位置決定手段は、前記第ｉ（ｉ＝１，２，…，ｎ）設定データの配置位置を決定した後、次に優先度の高い種類に分類される第ｉ＋１設定データのうち、前記既存設定内容情報におけるいずれかの前記既存設定内容と一致する設定内容を示す第ｉ＋１設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置が他の設定データの配置位置に決定していなければ、その同じ配置位置に決定して、該決定した以外の第ｉ＋１設定データの配置位置それぞれを、先に決定した以外の配置位置の先頭から順に決定する、といった手順を、最も優先度の低い種類に分類される第ｎ設定データまで繰り返す。
【００２６】
この構成であれば、設定データそれぞれの配置位置を、その種類に応じた同一優先度のグループ毎に順次決定したうえで、設定内容情報を生成することができる。
また、この構成により新たに設定内容情報を生成した以降は、この設定内容情報を既存設定内容情報として、更に別の新たな設定内容情報を生成することも考えられる。この場合において、設定データが増えることを想定すると、あらかじめ空の配置位置を余分に確保しておくことが検証の作業負担を抑える意味で望ましいといえる。このためには、上記第３の構成を以下に示す第４の構成（請求項４）のようにするとよい。
【００２７】
この構成においては、前記位置決定手段は、同一種類の設定データの配置位置を決定する毎に、該決定した次の配置位置から所定数の配置位置を、実体のないダミーデータの配置位置として決定する。
【００２８】
この構成であれば、同一優先度のグループ毎にそれぞれダミーデータの配置位置が確保される。そのため、こうして生成した設定内容情報を既存設定内容情報として別の設定内容情報を生成する際には、あるグループの設定データが増えたとしても、その設定データの配置位置をダミーデータの配置位置に決定し直す（置き換える）ことで、既存設定内容情報における他の設定データの配置位置を維持したまま、新たな設定データが追加された設定内容情報を生成することができる。
【００２９】
なお、上述した各構成における情報生成システムは、上述した全ての手段を実装してなる単体の装置により構成すればよく、また、上述した全ての手段を複数の装置に分けて実装してなるシステムとして構成してもよい。
【００３０】
また、上記課題を解決するためには、上記第１から第４のいずれかの構成における全ての手段として機能させるための各種処理手順をコンピュータシステムに実行させるためのプログラム（請求項５）としてもよい。
【００３１】
このプログラムにより制御されるコンピュータシステムであれば、上記第１から第４のいずれかの構成の一部を構成することができる。
なお、上述したプログラムは、コンピュータシステムによる処理に適した命令の順番付けられた列からなるものであって、各種記録媒体や通信回線を介して情報生成システムや、これを利用するユーザ等に提供されるものである。
【発明を実施するための最良の形態】
【００３２】
以下に本発明の実施形態を図面と共に説明する。
（１）全体構成
情報生成システム１は、特定ソフトウェアの処理に関する各設定内容それぞれを示す１以上の設定データが配置された「設定内容情報」を生成するためのシステムであり、図１に示すように、周知のＣＰＵ，メモリ，ユーザインタフェース（Ｕ／Ｉ）などからなる周知のコンピュータシステムとして構成されている。
【００３３】
この「設定内容情報」は、特定ソフトウェアを実装する制御装置（ＥＣＵ；Electronic Control Unit ）または該制御装置に制御させる制御対象の条件（以降「対象条件」という）に応じた各設定内容を示す１以上の設定データそれぞれが、その設定データで示される設定内容に基づく処理の実施される順に配置されたコンフィグコードである。また、この設定内容情報は、設定内容，および，配置された位置（配置位置）がそれぞれ所定のプログラム言語（例えばＣ言語）に従って記述されたものである。
【００３４】
本実施形態における「特定ソフトウェア」は、制御装置に実装された他のアプリケーションの基本ソフトとして機能するソフトウェアプラットホーム１０であり、ライブラリ１２から選択されたソフトウェアプラットホーム本体を上述した設定内容情報１４および各種ユーザアプリケーション１６と結合することで生成される。
【００３５】
この情報生成システム１では、ＣＰＵがメモリに記憶されたプログラムに従って後述のコード生成処理を実行することにより、このコード生成処理の中で、制御装置を実装する実装対象の設計情報２２と、特定ソフトウェアの生成に関するプロジェクト情報と、から設定内容情報１４が生成される。
【００３６】
この設計情報２２とは、例えば、実装対象に実装される制御装置の構成，実装対象内に形成されたネットワーク構成，制御装置により実行すべきソフトウェア構成などで規定されたソフトウェアの設計に関する情報であり、設定内容情報１４の生成に先立って外部から供給される。
【００３７】
また、プロジェクト情報とは、過去にコンフィグコードを生成した際に参照された設計情報、このコンフィグコードからなるソフトウェアプラットホーム１０が実装された制御装置の仕様（例えば、通信データの送信タイミング，イベント送信条件，異常監視条件など）に関する仕様情報などであり、データベース２４に蓄積されている。
【００３８】
なお、本実施形態では、情報生成システム１が単体の装置として構成されているが、それぞれ後述する各処理の一部を複数の装置が協調して実行するように構成してもよい。
（２）ＣＰＵにより実行される処理
以下に、情報生成システム１のＣＰＵにより実行される各種処理について説明する。
（２−１）コード生成処理
はじめに、設定内容情報の生成を開始するための操作がユーザインタフェースに対して行われることで実行されるコード生成処理の処理手順を図２に従って説明する。
【００３９】
このコード生成処理が起動されると、まず、その起動に先立って外部から供給された設計情報が取得され、この設計情報の検証が行われる（ｓ１１０）。
ここでは、まず、設計情報２２の全体または一部分（過去に使用された設計情報２２との差分情報）が取得される。このとき、設計情報２２の一部分である差分情報が取得された場合には、さらに、この差分情報に対応する（差分情報からみてベースとなる）設計情報２２がデータベース２４から読み出され、この設計情報２２と差分情報とに基づいて、設計情報２２全体が生成され取得される。
【００４０】
そして、このｓ１１０では、例えば、設計情報２２で示された構成それぞれが、実現可能な正常範囲のものであり、制御装置による処理に矛盾を生じさせるものでなく、かつ、制御装置に実装する特定ソフトウェアとしての制約事項に抵触していない、といった場合に、その設計情報２２が正常であるものと判定される。
【００４１】
このｓ１１０による検証の結果、設計情報２２が正常なものでないと判定された場合には（ｓ１２０：ＮＯ）、その旨がユーザインタフェースを介して報知された後（ｓ１３０）、設定内容情報１４が生成されることなく本コード生成処理が終了する。このｓ１３０では、設計情報２２が正常ではない旨のメッセージがユーザインタフェースを介して表示または音声出力されることにより報知がなされる。
【００４２】
一方、上記ｓ１１０による検証の結果、設計情報２２が正常なものであると判定された場合には（ｓ１２０：ＹＥＳ）、後述するデータ配置決定処理が行われ（ｓ１４０）、これにより新たな設定内容情報１４における設定データの配置パターンが生成される。このデータ配置決定処理は、上記ｓ１１０にて取得された設計情報２２を引数として実行され、こうして生成された配置パターン（図３（ａ））が戻り値として返される。
【００４３】
このｓ１４０により生成された配置パターンに基づいて、１以上の設定内容それぞれをデータとして配置した設定内容情報１４が生成され（ｓ１５０）、これが出力データとして後工程に渡される（ｓ１６０）。こうして生成される設定内容情報１４であるコンフィグコードをＣ言語で記述した例を図３（ｂ）に示す。
【００４４】
なお、ここでいう「後工程」とは、設定内容情報１４を、ソフトウェアプラットホーム本体およびユーザアプリケーション１６を結合する工程である（図１におけるコンパイラ，リンカ３２参照）。
【００４５】
そして、プロセスがｓ１３０へと移行し、設定内容情報１４を出力した旨がユーザインタフェースを介して報知された後、本コード生成処理が終了する。
（２−２）データ配置決定処理
続いて、上述したｓ１３０として実施されるデータ配置決定処理の処理手順を図４に基づいて説明する。
【００４６】
このデータ配置決定処理では、まず、過去に生成した既存の設定内容情報（以降「既存設定内容情報」という）における設定データの配置パターンが特定される（ｓ２１０）。
ここでは、まず、引数として渡された設計情報２２に基づいて、その設計情報２２に対応づけられた設計情報（差分情報がある場合はこれからみてベースとなる設計情報）２２がデータベース１８から取得される。そして、そうして取得された設計情報２２に基づいて、これを参照して生成された既存設定内容情報における設定データの配置パターンが特定される。なお、このデータ配置決定処理の実施に先立って、外部から既存設定内容情報が渡されるように構成してもよく、この場合には、これを解析して配置パターンを特定することとすればよい。
【００４７】
設定内容情報１４は、例えば、データの名称，データの型，初期値，実装対象の障害監視方法，障害発生時に示すべき値，制御装置のメモリを占有する記憶領域，アクセスハンドラなどの対象条件に応じた設定内容それぞれを示す設定データを有するものである。
【００４８】
この中にあるように、設定データそれぞれは、そのデータサイズにより、特定ソフトウェアの実行時にメモリを占有する記憶領域（以降「占有領域」という）を規定しており、上記ｓ２１０では、設定データそれぞれとデータサイズとの対応関係を配置パターンとして特定する（図５（ａ）参照）。この配置パターンは、設定データおよびデータサイズの対応関係を各データ領域に登録したデータテーブルとして生成されるものである。
【００４９】
次に、引数として渡された設計情報２２に基づき、新たな設定内容情報１４を構成すべき設定データそれぞれが特定された後、こうして特定された設定データが、設定データの種類に応じたグループに分類される（ｓ２２０）。本実施形態においては、各設定データの占有領域（データサイズの大きさ）が大きい順に第１グループ，第２グループ，…第ｎグループとグループ分けされる（図６参照）。
【００５０】
次に、上記ｓ２１０にて特定された既存設定内容情報における配置パターンのうち、上記ｓ２２０にて特定されたデータと一致しない設定データ，つまり新たな設定内容情報１４を構成する設定データではない無効な設定データについての対応関係が削除される（ｓ２３０）。ここでは、既存設定内容情報における配置パターンの中から、上記ｓ２２０にて特定された設定データと一致しない設定データについての対応関係が削除される（図５（ａ）→（ｂ）参照）。
【００５１】
次に、上記ｓ２２０にて分類された第１グループ〜第ｎグループの中で最も優先度の高い未処理の第ｉグループ（i＝１，２，…，ｎ）が選択され（ｓ２４０）、この第iグループに属する第ｉ設定データそれぞれの配置パターンが次のようにして決定される。
【００５２】
なお、このｓ２４０では、例えば、設定内容情報における設定データが、パディング等の無駄を抑えるべく、占有領域の大きい順に配置されることが定められている場合であれば、占有領域が大きいほど高い優先度とし、最も占有領域の大きいグループが選択されることとすればよい。
【００５３】
まず、第ｊ設定データのうち、既存設定内容情報におけるいずれかの設定内容（以降「既存設定内容」という）と一致する設定内容を示す第ｊ設定データが抽出され（ｓ２５０）、この設定データの配置位置が、その既存設定内容を示す設定データと同じ配置位置に決定される（ｓ２６０）。
【００５４】
このｓ２６０では、既存設定内容情報における配置パターンに登録されている全ての設定データを対象に抽出を実施すればよいが、処理効率を高めるためには、既存設定内容情報における設定データのうち、第ｊグループに対応するデータサイズと同じデータサイズの設定データを対象とすればよい。
【００５５】
次に、上記ｓ２５０にて抽出された設定データが、雛型となる配置パターン（以降「雛型配置パターン」という）のうち、上記ｓ２６０にて決定された配置位置に登録される（ｓ２７０）。ここでは、雛型配置パターンに、上記ｓ２５０にて抽出された設定データと上記ｓ２６０にて決定された配置位置との対応関係が登録される（図７（ａ），（ｂ）参照）。
【００５６】
なお、上述したｓ２６０，ｓ２７０では、上述したｓ２５０においてデータが抽出されていなければ、何らの処理も行われない。また、雛型配置パターンに、設定データと上記ｓ２６０にて決定された配置位置との対応関係が既に登録されている場合についても、同様に何らの処理も行われない。
【００５７】
次に、第ｊグループに分類された設定データのうち、上記ｓ２６０にて配置位置が決定された以外の設定データ（その他の設定データ）それぞれの配置位置が、先に決定された以外の配置位置に決定された後（ｓ２８０）、その他の設定データそれぞれが、雛型配置パターンのうち、上記ｓ２８０にて決定された配置位置に登録される（ｓ２９０）。
【００５８】
ここでは、ｓ２８０において、その他の設定データそれぞれの配置位置が、上記ｓ２６０にて決定された以外の配置位置の先頭（図８（ｂ）でいう上側）から順に決定された後、該当設定データそれぞれと、そうして決定された配置位置との対応関係が雛型配置パターンに登録される（図８（ａ），（ｂ）参照）。
【００５９】
こうして、第ｊグループの各設定データに対して上記ｓ２５０〜ｓ２９０が行われた後、未処理のグループが残っていれば（ｓ３００：ＹＥＳ）、プロセスがｓ２４０へ戻り、次に優先度の高いグループに対してｓ２５０〜ｓ３００が行われる。
【００６０】
ここで、第２グループの各設定データに対してｓ２５０〜ｓ２９０が行われた場合における雛型配置パターンの登録状態を図９に示し、第３グループの各設定データに対してｓ２５０〜ｓ２９０が行われた場合における雛型配置パターンの登録状態を図１０に示す。
【００６１】
そして、上記ｓ３００にて未処理のグループが残っていないと判定される，つまり全てのグループについて上記ｓ２５０〜ｓ２９０が行われた状態となれば（ｓ３００：ＮＯ）、本データ配置決定処理が終了する。
【００６２】
こうして、第１グループ〜第ｎグループについて上記ｓ２５０〜ｓ２９０が行われることにより、各グループについての対応関係が登録された配置パターンが生成され（図１０（ｂ）参照）、これがコンフィグコード生成処理に返される。
【００６３】
なお、このデータ配置決定処理は、ここで生成した設定内容情報１４を、別の設定内容情報１４を生成する際の既存設定内容情報として用いることも考えられる。この場合において、設定データが増えることを想定すると、あらかじめ空の配置位置を余分に確保しておくとよい。このためには、次のような処理が行われるように構成してもよい。
【００６４】
具体的には、図１１に示すように、上記と同様にｓ２１０〜ｓ２９０を行い、このｓ２９０にて登録された設定データの次の配置位置から所定数の配置位置を、実体のないダミーデータの配置位置として決定し（ｓ３１０）、こうして決定された配置位置を登録，つまり空き領域として確保する（ｓ３２０）、といった構成である。
【００６５】
このとき、各グループのうち、雛型配置パターンにおける最後尾に設定データが配置される第ｎグループについては、ダミーデータに関する登録を行わないこととしてもよい。
これにより、各グループの設定データについての対応関係が登録された後に、それぞれ同一グループに属するものとして空き領域を確保することができる（図１２「ｄｕｍｍｙ」参照）。
【００６６】
こうしてダミーデータが登録された配置パターンに基づいて生成されたコンフィグコード（Ｃ言語で記述したもの）の例を図１３に示す。
（３）作用，効果
このように構成された情報生成システム１であれば、既存設定内容情報における既存設定内容と同じ設定内容を示す設定データの配置位置として、その既存設定内容を示す設定データの配置位置と同じ配置位置を決定したうえで（図４のｓ２６０）、こうして決定された配置位置に設定データが配置されてなる設定内容情報を生成することができる（図２のｓ１５０）。
【００６７】
こうして生成された設定内容情報において、既存設定内容と同じ設定内容を示す設定データは、これにより示される設定内容と配置位置との関係が、既存設定内容情報のままで維持されている（図１０（ｂ）のＡ１Ｄ４＿０１〜Ａ１Ｄ４＿０３参照）。
【００６８】
そのため、新たに生成した設定内容情報と既存設定内容情報との差分をとれば、既存設定内容と一致しない設定データ，つまり既存設定内容情報からみて追加された設定データのみを抽出することができる。
【００６９】
これにより、既存設定内容情報から追加された設定データがどれかといった確認作業を行わなくても、新たな設定内容情報と既存設定内容情報との差分をとるだけで、差分として抽出された設定データを、既存設定内容情報から追加された設定データとして容易に特定することができる。
【００７０】
その結果、こうして特定した設定データで示される設定内容に基づく処理の挙動のみの検証作業を行い、既存設定内容情報から追加されていない設定データに基づく処理の挙動を検証済みとして省略することにより、上述した確認作業を行うことなく、新たな設定内容情報全体に対する検証の作業負担を抑えることができる。
【００７１】
また、上記実施形態では、まず、最も優先度の高い種類に分類される第１設定データのうち、既存設定内容情報における既存設定内容と同じ設定内容を示す設定データの配置位置を、その既存設定内容を示す設定データと同じ配置位置に決定することができる（図４のｓ２４０〜ｓ２６０）。
【００７２】
これにより、最も優先度の高い種類に分類される第１設定データの配置位置が最初に決定されるため、既存設定内容情報に優先度が最も高い種類に分類される以外の設定データが追加されたようなケースにおいても、この設定データが先頭の配置位置に配置されてしまうといったことを防止することができる。その結果、こうして追加された設定データ以外の設定データが全て既存設定内容情報と同一であるにも拘わらず、全ての配置位置が既存設定内容情報と異なったものとなってしまう、といったこともなくなる。
【００７３】
こうして、少なくとも第１設定データについての配置位置を既存設定内容情報と一致させることができるため、この第１設定データに基づく処理の挙動を検証済みとして省略することで、新たな設定内容情報全体に対する検証の作業負担を抑えることができるようになる。
【００７４】
また、上記実施形態では、設定データそれぞれの配置位置を、その種類に応じた同一優先度のグループ毎に順次決定したうえで、設定内容情報を生成することができる（図４のｓ２４０〜ｓ３００）。
【００７５】
また、上記実施形態において、図１１のように、設定内容情報を生成する過程で、あらかじめ空の配置位置を余分に確保しておくように構成した場合には、同一優先度のグループ毎にそれぞれダミーデータの配置位置が確保される。
【００７６】
そのため、こうして生成した設定内容情報を既存設定内容情報として別の設定内容情報を生成する際には、あるグループの設定データが増えたとしても、その設定データの配置位置をダミーデータの配置位置に決定し直す（置き換える）ことで、既存設定内容情報における他の設定データの配置位置を維持したまま、新たな設定データが追加された設定内容情報を生成することができる。
（４）本発明との対応関係
以上説明した実施形態において、図４，図１１のｓ２６０，ｓ２８０，ｓ３１０，ｓ３２０が本発明における位置決定手段であり、図２のｓ１５０が本発明におけるデータ生成手段である。
【図面の簡単な説明】
【００７７】
【図１】情報生成システムの構成を示すブロック図
【図２】コード生成処理を示すフローチャート
【図３】設定データの配置パターン（ａ）および設定内容情報（ｂ）を示す図
【図４】データ配置決定処理を示すフローチャート
【図５】既存設定内容情報における配置パターンを示す図
【図６】既存設定内容情報における設定データをグループ分けした様子を示す図
【図７】雛型配置パターンに設定データと配置位置との対応関係を登録する様子を示す図（１／４）
【図８】雛型配置パターンに設定データと配置位置との対応関係を登録する様子を示す図（２／４）
【図９】雛型配置パターンに設定データと配置位置との対応関係を登録する様子を示す図（３／４）
【図１０】雛型配置パターンに設定データと配置位置との対応関係を登録する様子を示す図（４／４）
【図１１】別の実施形態におけるデータ配置決定処理を示すフローチャート
【図１２】別の実施形態において、雛型配置パターンに設定データと配置位置との対応関係を登録する様子を示す図
【図１３】別の実施形態における設定内容情報を示す図
【符号の説明】
【００７８】
１…情報生成システム、１０…ソフトウェアプラットホーム、１２…ライブラリ、１４…設定内容情報、１６…ユーザアプリケーション、１８…データベース、２２…設計情報、２４…データベース。
【図１】
2010102490.tif 000003
【図２】
2010102490.tif 000004
【図３】
2010102490.tif 000005
【図４】
2010102490.tif 000006
【図５】
2010102490.tif 000007
【図６】
2010102490.tif 000008
【図７】
2010102490.tif 000009
【図８】
2010102490.tif 000010
【図９】
2010102490.tif 000011
【図１０】
2010102490.tif 000012
【図１１】
2010102490.tif 000013
【図１２】
2010102490.tif 000014
【図１３】
2010102490.tif 000015