(57)【要約】【課題】開発済みのサービスに追加部分のサービスを合成して開発した新しいサービスの検証作業を自動化し、工数を削減する。【解決手段】開発済みの第１のサービスモデルに追加部分の第２のサービスモデルを追加して合成した第３のサービスモデルを検証する場合、第３のサービスモデルのうち、第２のサービスモデルの部分の第２のモデル検査コードを生成し、第１のサービスモデルの第１のモデル検査コードと合成して、第３のサービスモデルの第３のモデル検査コードを生成し、第３のモデル検査コードのうち、第１のモデル検査コードを除いて例えば第２のモデル検査コードのみに基づいて第３のサービスモデルを検証する。【選択図】図３
2008250547.tif 000002
【特許請求の範囲】
【請求項１】
開発済みの第１のサービスモデルに追加部分の第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第１のサービスモデルが記録された第１のデータベースと、
前記開発済みの第１のサービスモデルの第１のモデル検査コードが記録された第２のデータベースと、
前記第１のデータベースに記録されている前記第１のサービスモデルに前記追加部分の第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第２のサービスモデルの部分の第２のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第１のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第１のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた合成サービス設計支援システム。
【請求項２】
前記サービスモデル作成手段により作成された第３のサービスモデルと、前記モデル検査コード生成手段により生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録する手段をさらに備えた請求項１に記載の合成サービス設計支援システム。
【請求項３】
開発済みの第１のサービスモデルに追加部分の第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第１のサービスモデルが記録されている第１のデータベースから前記第１のサービスモデルを読み出し、前記追加部分の第２のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第２のサービスモデルの部分の第２のモデル検査コードを生成して、前記開発済みの第１のサービスモデルの第１のモデル検査コードが記録されている第２のデータベースから前記第１のモデル検査コードを読み出して前記第２のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第１のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる合成サービス設計支援プログラム。
【請求項４】
前記サービスモデル作成ステップにより作成された第３のサービスモデルと、前記モデル検査コード生成ステップにより生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録するステップをさらに備えた請求項３に記載の合成サービス設計支援プログラム。
【請求項５】
新規開発の第１のサービスモデルに追加部分の開発済みの第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第２のサービスモデルが記録された第１のデータベースと、
前記開発済みの第２のサービスモデルの第２のモデル検査コードが記録された第２のデータベースと、
前記第１のサービスモデルに第１のデータベースに記録されている前記第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第１のサービスモデルの部分の第１のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第２のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた合成サービス設計支援システム。
【請求項６】
前記サービスモデル作成手段により作成された第３のサービスモデルと、前記モデル検査コード生成手段により生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録する手段をさらに備えた請求項５に記載の合成サービス設計支援システム。
【請求項７】
新規開発の第１のサービスモデルに追加部分の開発済みの第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第２のサービスモデルが記録されている第１のデータベースから前記第２のサービスモデルを読み出し、前記新規開発部分の第１のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第１のサービスモデルの部分の第１のモデル検査コードを生成して、前記開発済みの第２のサービスモデルの第２のモデル検査コードが記録されている第２のデータベースから前記第２のモデル検査コードを読み出して前記第１のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる合成サービス設計支援プログラム。
【請求項８】
前記サービスモデル作成ステップにより作成された第３のサービスモデルと、前記モデル検査コード生成ステップにより生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録するステップをさらに備えた請求項７に記載の合成サービス設計支援プログラム。
【請求項９】
開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第１のサービスモデルおよび及び第２のサービスモデルが記録された第１のデータベースと、
前記開発済みの第１のサービスモデルの第１のモデル検査コードおよび及び第２のサービスモデルの第２のモデル検査コードが記録された第２のデータベースと、
前記組み合わせ部分の第３のサービスモデルに、
前記第１のデータベースに記録されている前記第１のサービスモデルと第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第３のサービスモデルの部分の第３のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第１のモデル検査コードおよび及び第２のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第１のモデル検査コードおよび及び第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた合成サービス設計支援システム。
【請求項１０】
前記サービスモデル作成手段により作成された第３のサービスモデルと、前記モデル検査コード生成手段により生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録する手段をさらに備えた請求項９に記載の合成サービス設計支援システム。
【請求項１１】
開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第１のサービスモデルおよび及び第２のサービスモデルが記録されている第１のデータベースから前記第１のサービスモデルと第２のサービスモデルを読み出し、前記組み合わせ部分の第３のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第３のサービスモデルの部分の第３のモデル検査コードを生成して、前記開発済みの第１のサービスモデルの第１のモデル検査コードおよび及び第２のサービスモデルの第２のモデル検査コードが記録されている第２のデータベースから前記第１のモデル検査コードと第２のモデル検査コードを読み出して前記第３のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第１のモデル検査コードおよび及び第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる合成サービス設計支援プログラム。
【請求項１２】
前記サービスモデル作成ステップにより作成された第３のサービスモデルと、前記モデル検査コード生成ステップにより生成された第３のモデル検査コードをそれぞれ前記第１、第２のデータベースに登録するステップをさらに備えた請求項１１に記載の合成サービス設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、開発済みのサービスモデルに追加部分のサービスモデルを追加して合成し、新しく開発したサービスモデルを検証する合成サービス設計支援システム及び合成サービス設計支援プログラムに関する。
【背景技術】
【０００２】
新規なサービスを実現するためのソフトウエアやハードウエアを開発する場合、設計作業から始まって設計値に基づいて開発を行い、開発を行った後に実際の正常に動作するかを検証しなければならない。従来技術として、開発したソフトウエアやハードウエアをシステムに実装して動作させ、意図通りに動作するかを検証する方法がある。しかしながら、この方法では、検証時に不具合が見つかった場合に設計まで後戻りすることは膨大な工数が発生する可能性がある。さらに複数のサービスを組み合わせた複雑かつ大規模なサービス（ソフトウエア、ハードウエア）では、天文学的な工数が発生する可能性がある。新規に開発したソフトウエアやハードウエアを検証する従来技術としては、例えば下記の特許文献１、２、３が開示されている。
【特許文献１】特開平１１−１０２２９１号公報（要約書）
【特許文献２】特開２００４−２１７７３０号公報（要約書）
【特許文献３】特開２００６−５３８１３号公報（要約書）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、新規なサービスモデルを実現するためのソフトウエアやハードウエアを開発する場合、開発済みのサービスモデルのソフトウエアやハードウエアを利用して追加部分のソフトウエアやハードウエアに合成して開発することは一般的である。しかしながら、このような開発済みのソフトウエアやハードウエアを追加部分に合成して開発したソフトウエアやハードウエアをシステムに実装して動作させ、意図通りに動作するかを検証した場合、検証時に不具合が見つかった場合に設計まで後戻りすることがあり、膨大な工数が発生する可能性があるという問題点がある。
【０００４】
本発明は上記従来技術の問題点に鑑み、開発済みのサービスモデルに追加部分のサービスモデルを合成して開発した新しいサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる合成サービス設計支援システム及び合成サービス設計支援プログラムを提供することを目的とする。
また、本発明は上記従来技術の問題点に鑑み、新規開発のサービスモデルに追加部分の開発済みのサービスモデルを追加して合成したサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる合成サービス設計支援システム及び合成サービス設計支援プログラムを提供することを目的とする。
また、本発明は上記従来技術の問題点に鑑み、開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる合成サービス設計支援システム及び合成サービス設計支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は上記目的を達成するために、開発済みの第１のサービスモデルに追加部分の第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第１のサービスモデルが記録された第１のデータベースと、
前記開発済みの第１のサービスモデルの第１のモデル検査コードが記録された第２のデータベースと、
前記第１のデータベースに記録されている前記第１のサービスモデルに前記追加部分の第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第２のサービスモデルの部分の第２のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第１のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第１のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた。
また、本発明は上記目的を達成するために、開発済みの第１のサービスモデルに追加部分の第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第１のサービスモデルが記録されている第１のデータベースから前記第１のサービスモデルを読み出し、前記追加部分の第２のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第２のサービスモデルの部分の第２のモデル検査コードを生成して、前記開発済みの第１のサービスモデルの第１のモデル検査コードが記録されている第２のデータベースから前記第１のモデル検査コードを読み出して前記第２のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第１のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる。
この構成により、開発済みのサービスモデルのモデル検査コードについては正しいとみなして検証を行わず、例えば追加部分のサービスモデルのモデル検査コードについてのみ検証を行うので、開発済みのサービスモデルに追加部分のサービスモデルを合成して開発した新しいサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
【０００６】
また、本発明は上記目的を達成するために、新規開発の第１のサービスモデルに追加部分の開発済みの第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第２のサービスモデルが記録された第１のデータベースと、
前記開発済みの第２のサービスモデルの第２のモデル検査コードが記録された第２のデータベースと、
前記第１のサービスモデルに第１のデータベースに記録されている前記第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第１のサービスモデルの部分の第１のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第２のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた。
また、本発明は上記目的を達成するために、新規開発の第１のサービスモデルに追加部分の開発済みの第２のサービスモデルを追加して合成した第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第２のサービスモデルが記録されている第１のデータベースから前記第２のサービスモデルを読み出し、前記新規開発部分の第２のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第１のサービスモデルの部分の第１のモデル検査コードを生成して、前記開発済みの第２のサービスモデルの第２のモデル検査コードが記録されている第２のデータベースから前記第２のモデル検査コードを読み出して前記第１のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる。
この構成により、開発済みのサービスモデルのモデル検査コードについては正しいとみなして検証を行わず、追加部分のサービスモデルのモデル検査コードについてのみ検証を行うので、新規開発のサービスモデルに追加部分の開発済みのサービスモデルを追加して合成したサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
【０００７】
また、本発明は上記目的を達成するために、開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルを検証する合成サービス設計支援システムであって、
前記開発済みの第１のサービスモデルおよび及び第２のサービスモデルが記録された第１のデータベースと、
前記開発済みの第１のサービスモデルの第１のモデル検査コードおよび及び第２のサービスモデルの第２のモデル検査コードが記録された第２のデータベースと、
前記組み合わせ部分の第３のサービスモデルに、
前記第１のデータベースに記録されている前記第１のサービスモデルと第２のサービスモデルを合成して、前記第３のサービスモデルを作成するサービスモデル作成手段と、
前記サービスモデル作成手段により作成された第３のサービスモデルのうち、前記第３のサービスモデルの部分の第３のモデル検査コードを生成し、前記第２のデータベースに記録されている前記第１のモデル検査コードおよび及び第２のモデル検査コードと合成して、前記サービスモデル作成手段により作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成手段と、
前記モデル検査コード生成手段により生成された第３のモデル検査コードのうち、前記第１のモデル検査コードおよび及び第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証手段とを、
備えた。
また、本発明は上記目的を達成するために、開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルを検証する合成サービス設計支援プログラムであって、
前記開発済みの第１のサービスモデルおよび及び第２のサービスモデルが記録されている第１のデータベースから前記第１のサービスモデルと第２のサービスモデルを読み出し、前記組み合わせ部分の第３のサービスモデルと合成して、前記第３のサービスモデルを作成するサービスモデル作成ステップと、
前記サービスモデル作成ステップにより作成された第３のサービスモデルのうち、前記第３のサービスモデルの部分の第３のモデル検査コードを生成して、前記開発済みの第１のサービスモデルの第１のモデル検査コードおよび及び第２のサービスモデルの第２のモデル検査コードが記録されている第２のデータベースから前記第１のモデル検査コードと第２のモデル検査コードを読み出して前記第３のモデル検査コードと合成し、前記サービスモデル作成ステップにより作成された第３のサービスモデルの第３のモデル検査コードを生成するモデル検査コード生成ステップと、
前記モデル検査コード生成ステップにより生成された第３のモデル検査コードのうち、前記第１のモデル検査コードおよび及び第２のモデル検査コードを除いて前記第３のサービスモデルを検証するサービスモデル検証ステップとを、
コンピュータに実行させる。
この構成により、開発済みのサービスモデルのモデル検査コードについては正しいとみなして検証を行わず、例えば追加部分のサービスモデルのモデル検査コードについてのみ検証を行うので、開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
【発明の効果】
【０００８】
本発明によれば、開発済みのサービスモデルに追加部分のサービスモデルを合成して開発した新しいサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
また、本発明によれば、新規開発のサービスモデルに追加部分の開発済みのサービスモデルを追加して合成したサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
また、本発明によれば、開発済みの第１のサービスモデルと開発済みの第２のサービスモデルを組み合わせるための第３のサービスモデルの検証作業を自動化することができ、ひいては工数を削減することができる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して本発明の実施の形態について説明する。図１は本発明に係る合成サービス設計支援システム及び合成サービス設計支援プログラムの実施の形態を示すブロック図、図２はその動作を説明するためのフローチャートである。
【００１０】
本発明では、開発対象の要求仕様書から関係性が深い開発済みのサービスモデルをデータベースから抽出し、そのサービスモデルを再利用もしくは修正することで設計工数を削減する。さらに合成したサービスモデルの「モデル検査」を自動で行うことで検証工数を削減し安全かつ仕様書どおりに正確に動作することを保証する。「モデル検査」は「形式的検証手法」の一つである。「形式的検証」は数学的手段により、形式的に記述されたソフトウエアの仕様を厳密に検証することを言う。「モデル検査」はソフトウエアの振る舞いの仕様に対し、可能な実行パターンを網羅的かつ自動的に検査することにより検証を行う手法である。例えば「乗車支援サービス」を新しく開発するときに開発済みの「ユーザ認証サービス」、「ドア制御サービス」、「ユーザ位置特定サービス」を組み合わせる。このとき、すでに設計済みのモデルを利用し組み合わせて設計し、「乗車支援サービス」のみを自動でモデル検証を行うことで、設計および及び検証の工数を削減かつ仕様書どおりに正確に動作することを保証することができる。
【００１１】
これにより、
・複雑なサービス設計を容易かつ短期で完了できる。
・既存のサービスを提案し再利用することができる。
・サービスの動作検証を自動化することで、工数を削減することができる。
・サービスの追加および及び変更に柔軟に対応できる。
・サービスモデル検査のための時間を短縮することができる。
【００１２】
そこで、一例として図１に示す合成サービス設計支援システムは、モデル設計者１がカーメーカーやカーディーラーの要求仕様２やＥＣＵ（Electronic Control Unit）仕様３に対して新規なサービスモデル４を開発、検証して実装者５に渡すまでを対象としている。したがって、実装者５がサービスモデル４を実際の装置に実装して検証することは対象としていない。モデル設計者１は新規なサービスモデル４を開発、検証する際、開発済みのソフトウエアやハードウエアを追加部分に合成するために、開発済みのソフトウエアやハードウエアとしてサービスモデルデータベース１０、モデル検査コードデータベース２０にそれぞれ記録されている既存サービスモデル１１、既存モデル検査コード２１を利用する。
【００１３】
まず、モデル設計者１が仕様解析処理１２とサービスモデル生成処理１３を起動して、新規なサービスモデル１４を開発する。仕様解析処理１２では、要求仕様２やＥＣＵ仕様３が正確に記述されているかを解析する。サービスモデル生成処理１３では、要求仕様２やＥＣＵ仕様３で記述されたサービスのモデル（既存サービスモデル１１）がサービスモデルデータベース１０に登録されていればこれを取得し、既存サービスモデル１１と、仕様２、３から変換されたサービスモデルを合成し、開発するサービスモデル１４を生成する。この開発するサービスモデル１４は仕様２、３に沿ったモデルであり、このモデルの記述はＵＭＬ（Unified Modeling Language）に準拠する。
【００１４】
次に、モデル設計者１がサービスモデル１４を取得して、これをサービスモデル１５としてモデル検査を行う。モデル検査コード生成処理２２では、既存サービスモデル１１のモデル検査コード（既存モデル検査コード２１）がデータベース２０に登録されていればこれを取得し、既存のモデル検査コード２１と、仕様２、３から変換されたモデル検査コードを合成し、開発するモデル検査コード２３を生成する。モデル検査コード２３は、既存のモデル検査コード（PROMELA/SPINなど）を利用する。そして、モデル検査処理２４では、モデル検査コード２３のうち、既存のモデル検査コード２１を除き、新しく追加したモデル検査コードについてのみ検査を行い、その検査結果２５をモデル設計者１に提示する。
【００１５】
次に、図２を参照して処理を説明する。まず、発注者（カーメーカーやカーディーラー側）が要求仕様書やＥＣＵ仕様書を作成し、モデル設計者１がこの要求仕様書やＥＣＵ仕様書に基づいて処理を開始させる（ステップＳ１）。まず、仕様書を解析し（ステップＳ２）、仕様書のサービスがサービスモデルデータベース１０に登録されているか否かをチェックする（ステップＳ３）。登録されている場合には類似サービスモデルをデータベース１０から既存サービスモデル１１として取得し（ステップＳ４）、他方、登録されていない場合には仕様書のサービスを新しくサービスモデルに変換する（ステップＳ５）。次いで、ステップ４で取得した既存サービスモデル１１、又はステップ５で変換した新しいサービスモデルから、仕様に合ったサービスモデル１４を作成してモデル設計者１に提示する（ステップＳ６）。モデル設計者１はこの作成されたサービスモデル１４の作成・追加・修正を行う（ステップＳ７）。
【００１６】
次いで、サービスモデル１４内の既存サービスモデル１１に該当するモデル検査コードがデータベース２０に登録されているか否かをチェックする（ステップＳ８）。登録されている場合には既存モデル検査コード２１として抽出し（ステップＳ９）、他方、登録されていない場合には仕様書から新しくモデル検査コードに変換する（ステップＳ１０）。次いで、サービスモデル１４のモデル検査コード２３を作成する（ステップＳ１１）。モデル設計者１はこの作成されたモデル検査コード２３の追加・修正を行う（ステップＳ１２）。次いで、例えば図３に示すように新しく追加したモデル検査コードについてのみモデル検査を行い（ステップＳ１３）、検査結果２５をモデル設計者１に提示する（ステップＳ１４）。モデル設計者１はこの検査結果２５に基づいてモデルエラーがあるか否かをチェックし（ステップＳ１５）、あればステップＳ７に戻ってサービスモデル１４の作成・追加・修正を行い、他方、なければこの処理を終了して実装者５の処理に移行する。
【００１７】
図３を参照して、ステップＳ１３におけるモデル検査を詳しく説明する。数字で示す円形は個々のサービスを示し、数字は検査順を示す。従来のモデル検査の手法としては、図３（ａ）に示すような深さ優先全検査と図３（ｂ）に示すような幅優先全検査が知られている。深さ優先全検査では、１番目に最も上位のサービス１を検査し、２番目にサービス１の下位のサービス２を検査し、３、４番目にそれぞれサービス２の下位のサービス３、４を検査する。次いで５番目に最も上位のサービス１の下位のサービス５を検査し、６、７番目にそれぞれサービス６、７を検査する。これに対し、幅優先全検査では、１番目に最も上位のサービス１を検査し、２番目にサービス１の下位のサービス２を検査し、３番目に同じくサービス１の下位のサービス３を検査する。次いで４、５番目にそれぞれサービス２の下位のサービス４、５を検査し、６、７番目にそれぞれサービス３の下位のサービス６、７を検査する。
【００１８】
図３（ｃ）は本発明のモデル検査方法を示し、数字１、２、３、４で示すサービスが、新しく開発したサービスモデル１４の内の新規に追加したサービスであり、数字５、６、７で示すサービスが既存サービスである。本発明では、新規に追加したサービス１、２、３、４のみに対してモデル検査を行い、既存サービス５、６、７にはモデル検査を行わない。図３（ｃ）に示す例では、新規に追加したサービス１、２、３、４の下位に既存サービス５、６、７が存在するが、１番目に最も上位のサービス１を検査し、２番目にサービス１の下位のサービス２を検査し、３番目にサービス１の下位のサービス３を検査し、４番目にサービス３の下位のサービス４を検査し、モデル検査を終了する。なお、新規に追加したサービスのみに対してモデル検査を行う場合、図３（ａ）に示すような深さ優先検査でも、図３（ｂ）に示すような幅優先検査でもよい。
【００１９】
図４は、既存サービスモデル１１を用いて新しく開発したサービスモデル１４とそのモデル検査コード２３をそれぞれデータベース１０、２０に登録するシステムを示すブロック図である。サービスモデル登録処理１６では、サービスモデル１４をデータベース１０に対して既存サービスモデル１１として登録し、また、モデル検査コード登録処理２６では、モデル検査コード２３をデータベース２０に対して既存モデル検査コード２１として登録する。
【００２０】
図５を参照して処理を説明する。まず、モデル設計者１が登録する新サービスモデル１４とそのモデル検査コード２３を用意する（ステップＳ２１）。次いで、モデル設計者１は、新サービスモデル１４とそのモデル検査コード２３にそれぞれ類似するサービスモデルとそのモデル検査コードがデータベース１０、２０に登録されているか否かをチェックし（ステップＳ２２）、登録するか否かを決定する（ステップＳ２３）。そして、「登録する」と決定した場合には、新サービスモデル１４とそのモデル検査コード２３をそれぞれデータベース１０、２０に登録し（ステップＳ２４）、他方、「登録しない」と決定した場合にはこの処理を終了する。
【００２１】
次に図６を参照して具体例を挙げて説明する。乗車支援サービス１００は新しく開発するサービスモデル１４の内の新規に追加したサービスであり、ドアサービス１０１と、受動ドアサービス１０２とセンサーサービス１０３が既存のサービス１０３である。サービスモデル１４はこれらのサービス１００〜１０３により構成される。ここで、ドアサービス１０１はドアをオープン／クローズするサービスであり、自動ドアサービス１０２はドアサービス１０１の上位のサービスであってドアのオープン／クローズを自動化するサービスである。センサーサービス１０３は、ドアサービス１０１及び自動ドアサービス１０２とは独立したサービスであって、車速センサ、障害物センサ、着座センサなどを用いた各種のサービスである。
【００２２】
乗車支援サービス１００は、ユーザの指示により乗車を支援するサービスであり、ユーザが指示したドアをオープンし、また、センサーサービス１０３の着座センサを用いてユーザが車内に乗車するとドアをクローズしたりする。また、制約条件は、
・車が止まっており（車速度＝０ｋｍ）かつドアのまわりに障害物がないことを確認してドアをオープン／クローズする。
・ドアのオープン／クローズ中に車が動いたら（車速度≠０ｋｍ）、もしくはドアのまわりに障害物があるとこと確認したらドアのオープン／クローズをストップする。
・ユーザがいすに座ったことを確認しドアをクローズする。
したがって、乗車支援サービス１００は、ドアサービス１０１と、自動ドアサービス１０２とセンサーサービス１０３を利用できる。
【００２３】
本発明のモデル検査方法では、図６（ｂ）に示すように新しく開発したサービスモデル１４の内の新規に追加したサービスである乗車支援サービス１００のみを検査し、既存のサービスであるドアサービス１０１と、受動ドアサービス１０２とセンサーサービス１０３は検査しない。
【００２４】
＜第２の実施の形態＞
上記の実施の形態（第１の実施の形態）では、図７（ａ）に示すように開発済みの第１のサービスモデル１１に追加部分の第２のサービスモデル３０を追加して合成した第３のサービスモデル１４、１５を検証する場合について説明したが、第２の実施の形態として図７（ｂ）に示すように、新規開発の第１のサービスモデル３０に追加部分の開発済みの第２のサービスモデル１１を追加して合成した第３のサービスモデル１４、１５を検証する場合にも適用することができる。この場合にも、開発済みのサービスモデル１１のモデル検査コード２１については正しいとみなして検証を行わず、例えば追加部分のサービスモデルのモデル検査コード２３についてのみ検証を行うことにより、新規開発のサービスモデル３０に追加部分の開発済みのサービスモデル３０を追加して合成したサービスモデル１４、１５の検証作業を自動化することができ、ひいては工数を削減することができる。
【００２５】
＜第３の実施の形態＞
また、第３の実施の形態として図７（ｃ）に示すように、開発済みの第１のサービスモデル１１ａと開発済みの第２のサービスモデル１１ｂを組み合わせるための第３のサービスモデル１４、１５を検証する場合にも適用することができる。この場合にも、開発済みのサービスモデル１１ａ、１１ｂのモデル検査コード２１については正しいとみなして検証を行わず、例えば追加部分のサービスモデル１４、１５のモデル検査コード２３についてのみ検証を行うことにより、開発済みの第１のサービスモデル１１ａと開発済みの第２のサービスモデル１１ｂを組み合わせるための第３のサービスモデル１４、１５の検証作業を自動化することができ、ひいては工数を削減することができる。
【産業上の利用可能性】
【００２６】
本発明は、開発済みのサービスに追加部分のサービスを合成して開発した新しいサービスの検証作業を自動化することができ、ひいては工数を削減することができるという効果を有し、車両用の合成サービスなど各種の合成サービスを検証するシステム及びコンピュータプログラムに利用することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明に係る合成サービス設計支援システム及び合成サービス設計支援プログラムの実施の形態を示すブロック図である。
【図２】本発明に係る合成サービス設計支援システム及び合成サービス設計支援プログラムの実施の形態の動作を説明するためのフローチャートである。
【図３】図１、図２のモデル検査を示す説明図である。
【図４】本発明に係る合成サービス設計支援システム及び合成サービス設計支援プログラムの合成サービスモデル登録処理を説明するためのブロック図である。
【図５】本発明に係る合成サービス設計支援システム及び合成サービス設計支援プログラムの合成サービスモデル登録処理を説明するためのフローチャートである。
【図６】サービスモデル合成の具体例を示す説明図である。
【図７】第１、第２及び第３の実施の形態合成サービス設計支援システム及び合成サービス設計支援プログラムの処理を比較して示す説明図である。
【符号の説明】
【００２８】
１０  サービスモデルデータベース
１１  既存サービスモデル
１２  仕様解析処理
１３  サービスモデル生成処理
１４、１５  サービスモデル
２０  モデル検査コードデータベース
２１  既存モデル検査コード
２２  モデル検査コード生成処理
２３  モデル検査コード
２４  モデル検査
【図１】
2008250547.tif 000003
【図２】
2008250547.tif 000004
【図３】
2008250547.tif 000005
【図４】
2008250547.tif 000006
【図５】
2008250547.tif 000007
【図６】
2008250547.tif 000008
【図７】
2008250547.tif 000009