(57)【要約】本発明は、さらなる処理を行うデータのユーザにデータを供給する前の、データの前処理の方法であって、（ａ）データプロバイダにより、さらなる処理のためにユーザに供給されるデータの全体の少なくとも一部が、ユーザにより入力される少なくとも１つの要求に応じて選択されるステップ、および（ｂ）選択されたデータを、ユーザから隠される一方で供給後にさらなる処理および／又は実行が行われるよう、秘匿するステップ、を有する。
2012510656.tif 000002
【特許請求の範囲】
【請求項１】
さらなる処理を行うデータのユーザに前記データを供給する前の、前記データの前処理の方法であって、
（ａ）データプロバイダにより、前記さらなる処理のために前記ユーザに供給される前記データ全体の少なくとも一部が、前記ユーザにより入力される少なくとも１つの要求に応じて選択されるステップ、および
（ｂ）選択された前記データを、前記ユーザから隠される一方で前記供給後に前記さらなる処理および／又は実行が行われるよう、秘匿するステップ、
を有することを特徴とする方法。
【請求項２】
請求項１に記載の方法であって、
前記データは、１又は複数のソフトウエアコンポーネントを表すことを特徴とする方法。
【請求項３】
請求項１又は２に記載の方法であって、
前記データは複合組み込みシステムの１又は複数のソフトウエアコンポーネントであることを特徴とする方法。
【請求項４】
請求項２又は３に記載の方法であって、
前記ユーザは、前記１又は複数のソフトウエアコンポーネントの実時間処理能力を検証することを特徴とする方法。
【請求項５】
請求項２、３、又は４に記載の方法であって、
前記秘匿されたソフトウエアコンポーネントのインターフェースは前記ユーザから視認できるよう維持されることを特徴とする方法。
【請求項６】
請求項１から５のいずれかに記載の方法であって、
前記データプロバイダと前記ユーザはそれぞれ前記複合組み込みシステムの一部のみを供給し、前記一部間の相互作用により前記システム全体を使用することを特徴とする方法。
【請求項７】
請求項１から６のいずれかに記載の方法であって、
ステップ（ｂ）において選択された前記データを秘匿することで、前記ユーザは、前記データ全体を観測することなく前記データ全てに関する実行結果を得ることができることを特徴とする方法。
【請求項８】
請求項１から７のいずれかに記載の方法であって、
ライセンスドングルがユーザ要求として使用されることを特徴とする方法。
【請求項９】
請求項１から８のいずれかに記載の方法であって、
前記データはシミュレーションおよび／又は解析モデルを表すことを特徴とする方法。
【請求項１０】
請求項９に記載の方法であって、
選択された前記データは１又は複数のタスクモデルを表すことを特徴とする方法。
【請求項１１】
請求項１から１０のいずれかに記載の方法であって、
選択された前記データはエンコードによって秘匿されることを特徴とする方法。
【請求項１２】
請求項１から１１のいずれかに記載の方法であって、
ステップ（ａ）および（ｂ）は前記ユーザにおいても実行され、オリジナルの前記ユーザはデータプロバイダと見なされ、前記データプロバイダはユーザと見なされることを特徴とする方法。
【請求項１３】
請求項１２に記載の方法であって、
繰り返し処理は複数回実行されることを特徴とする方法。
【請求項１４】
請求項１から１３のいずれかに記載の方法であって、
前記データは、ＸＭＬ、ＵＭＬ、Ｃ、Ｃ＋＋、Ｍａｔｌａｂ／Ｓｉｍｕｌｉｎｋ−Ｓｃｒｉｐｔ、Ｐｙｔｈｏｎ、Ｐａｓｃａｌ、Ｆｏｒｔｒａｎ、もしくはＢａｓｉｃ形式で表現されることを特徴とする方法。
【請求項１５】
さらなる処理を行うデータのユーザに前記データを供給する前の、前記データの前処理を実行するための、請求項１から１４のいずれかの方法を実行するためのコンピュータシステムであって、
データプロバイダによる選択を行う選択デバイスであって、前記さらなる処理のために前記ユーザに供給される前記データの全体の少なくとも一部を、前記ユーザにより入力される少なくとも１つの要求に応じて選択する選択デバイスと、
選択された前記データを、前記ユーザから隠される一方で前記供給後に前記さらなる処理および／又は実行が行われるよう秘匿するユニットと、
を有することを特徴とするコンピュータシステム。
【請求項１６】
請求項１から１４のいずれかに記載の方法を実行するためのプログラム。
【請求項１７】
少なくとも２つの部分からなるシステム全体のシミュレーションおよび／又は解析を行う方法であって、
（ａ）前記システム全体の１又は複数の部分を表すデータを１又は複数のデータプロバイダから受信するステップであって、前記データは請求項１から１４のいずれかに記載の方法により少なくとも１のデータプロバイダによって前処理が行われたものであるステップ、
（ｂ）前記ユーザが、受信された前記データをコンパイルし前記システム全体を形成するステップ、および
（ｃ）前記ユーザが、前記システム全体の解析および／又はシミュレーションを実行するステップ
を有することを特徴とする方法。
【請求項１８】
請求項１７に記載の方法であって、ステップ（ｂ）において前記システム全体を形成するために、前記ユーザが、前記システム全体のさらなる部分を表す自身のデータを、前記受信された前記データに付加することを特徴とする方法。
【請求項１９】
請求項１７又は１８に記載の方法であって、前記データは１又は複数のソフトウエアコンポーネントを表すことを特徴とする方法。
【請求項２０】
請求項１７又は１８に記載の方法であって、前記データは複合組み込みシステムの１又は複数のソフトウエアコンポーネントであることを特徴とする方法。
【請求項２１】
請求項１９又は２０に記載の方法であって、秘匿された前記ソフトウエアコンポーネントのインターフェースは前記ユーザから視認できるよう維持されることを特徴とする方法。
【請求項２２】
請求項１から２１のいずれかに記載の方法であって、前記データはシミュレーションおよび／又は解析のモデルを表すことを特徴とする方法。
【請求項２３】
請求項１から２２のいずれかに記載の方法であって、選択された前記データは１又は複数のタスクモデルを表すことを特徴とする方法。
【請求項２４】
請求項１から１４および１７から２３のいずれかに記載の方法を実行するプログラムを有するチップ。
【請求項２５】
請求項１から１４および１７から２３のいずれかに記載の方法を実行するプログラムを記憶するデジタル記憶媒体。
【請求項２６】
シミュレーションおよび／又は解析モデルであって、
さらなるデータオブジェクトへのアクセスを制御する第１データオブジェクト、
当該シミュレーションおよび／又は解析モデルの外部インターフェースを形成する第２データオブジェクト、
当該シミュレーションおよび／又は解析モデルのコンテンツをさらなる処理が可能なデータとして有する第３データオブジェクト、および
前記第３データオブジェクトのシミュレーションおよび／又は解析モデルをシミュレーション実行可能に形成された形式で有する第４データオブジェクト
を有し、
前記第１データオブジェクトは、当該シミュレーションおよび／又は解析モデルのユーザの、前記第３データオブジェクトのさらなる処理が可能な前記データおよび前記第４データオブジェクトの実行可能に形成された前記データへのアクセスを制御することを特徴とするシミュレーションおよび／又は解析モデル。
【請求項２７】
請求項２６に記載のシミュレーションおよび／又は解析モデルであって、
前記第１データオブジェクトは、所与のアクセス認証情報を考慮して前記ユーザのアクセスを制御することを特徴とするシミュレーションおよび／又は解析モデル。
【請求項２８】
請求項２７に記載のシミュレーションおよび／又は解析モデルであって、
前記所与のアクセス認証情報は、前記第１データオブジェクトおよび／又はライセンスドングルに記憶されることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項２９】
請求項２８に記載のシミュレーションおよび／又は解析モデルであって、
前記第３データオブジェクトのさらなる処理が可能な前記データの前記アクセス認証情報および前記第４データオブジェクトの実行可能に形成されたシミュレーションの少なくとも１つがエンコードされていることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３０】
請求項２６から２９のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
前記第１データオブジェクトは、前記ユーザの前記第３データオブジェクトのさらなる処理が可能な前記データへのアクセスを拒絶する一方で、前記ユーザの前記第４データオブジェクトの実行可能に形成された前記データへのアクセスを許可し、これにより当該シミュレーションおよび／又は解析モデルは、前記ユーザにおいて、秘匿および／又はさらなる処理が不可能である一方で、実行が可能であることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３１】
請求項２６から３０のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
前記第３データオブジェクトの当該シミュレーションおよび／又は解析モデルのさらなる処理が可能な前記データの少なくとも一部が、当該シミュレーションおよび／又は解析モデルの時間挙動を記述することを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３２】
請求項２６から３１のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
前記第３データオブジェクトのさらなる処理が可能な前記データはソースコードを有し、前記第４データオブジェクトの実行可能に形成された前記シミュレーションは、前記第３データオブジェクトの前記ソースコードからのシミュレーションモデルの生成によって生成されることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３３】
請求項３２に記載のシミュレーションおよび／又は解析モデルであって、
前記第３データオブジェクトの前記ソースコードは、ＸＭＬ、ＵＭＬ、Ｃ、Ｃ＋＋、Ｍａｔｌａｂ／Ｓｉｍｕｌｉｎｋ−Ｓｃｒｉｐｔ、Ｐｙｔｈｏｎ、Ｐａｓｃａｌ、Ｆｏｒｔｒａｎ、もしくはＢａｓｉｃ形式であることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３４】
請求項３２又は３３に記載のシミュレーションおよび／又は解析モデルであって、
前記第４データオブジェクトの実行可能な前記データは、中間表現またはプレコンパイルが実行された形式であることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３５】
請求項３２から３５のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
前記第４データオブジェクトの実行可能に形成された前記シミュレーションは実行可能な包括的モデルの、前記ユーザのソフトウエア環境に組み込まれていることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３６】
請求項２６から３５のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
上位シミュレーションおよび／又は解析モデルの階層部分を形成することを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３７】
請求項２７から３６のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
組み込みシステムのモデル又はサブモデルを形成することを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３８】
請求項３７に記載のシミュレーションおよび／又は解析モデルであって、
前記第３データオブジェクトのさらなる処理が可能な前記データおよび前記第４データオブジェクトの実行可能に形成された前記シミュレーションの少なくとも一部が制御デバイスのタスクに割り当てられることを特徴とするシミュレーションおよび／又は解析モデル。
【請求項３９】
請求項２６から３８のいずれかに記載のシミュレーションおよび／又は解析モデルであって、
実時間解析に使用されることを特徴とするシミュレーションおよび／又は解析モデル。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理の方法、システム、およびシミュレーション又は解析モデルに関し、特にデータがさらなる処理のために該データの使用者に供給される前に、該データに対して実行される前処理に関する。特に本発明は、コンピュータベースのデータ処理の方法、システム、およびシミュレーション又は解析モデルに関する。
【背景技術】
【０００２】
情報技術においては、クライアントとコントラクタとが複合組み込みシステムにおいて共に作業することが多い。このシステムは、クライアントおよびコントラクタがソフトウエアコンポーネントを開発するための複数のプロセサを有することがある。ソフトウエアの分配は、プロセサの能力に応じて決定される。システムは全体として要求された機能を実現するが、ここでクライアントおよびコントラクタによるソフトウエアコンポーネント間の相互作用の挙動が実時間動作に求められる要求を満たすことが重要である。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
シミュレーションおよび解析は、要求される実時間動作能力の証明に使用される。クライアントもコントラクタも、自身のサブシステムに必要である部分以外については、開示されることを必要としていない。本発明の目的は、システム全体の解析やシミュレーションに必要な詳細情報をカプセル化もしくは秘匿化し、所望の結果以外のサブシステムに関する情報を第三者に開示しないシステムを提供することである。
【課題を解決するための手段】
【０００４】
上記目的は、独立項に記載される構成により達成される。
【０００５】
本発明は上記の目的を達成するものであり、さらなる処理を行うデータのユーザに前記データを供給する前の、コンピュータベースの前記データの前処理の方法である。当該方法は、（ａ）データプロバイダにより、前記さらなる処理のために前記ユーザに供給される前記データ全体の少なくとも一部が、前記ユーザにより入力される少なくとも１つの要求に応じて選択されるステップ、および（ｂ）選択された前記データを、前記ユーザから隠される一方で前記供給後に前記さらなる処理および／又は実行が行われるよう、秘匿するステップ、を有する。
【０００６】
前記データは、１又は複数のソフトウエアコンポーネントを表すことが好ましい。前記データは複合組み込みシステムの１又は複数のソフトウエアコンポーネントであることが好ましい。前記秘匿されたソフトウエアコンポーネントのインターフェースは前記ユーザから視認できるよう維持されてもよい。
【０００７】
前記ユーザは、前記１又は複数のソフトウエアコンポーネントの実時間処理能力を検証することが好ましい。
【０００８】
前記データプロバイダと前記ユーザはこうして、それぞれ前記複合組み込みシステムの一部のみを供給することができ、前記一部間の相互作用により前記システム全体を使用することができる。
【０００９】
ステップ（ｂ）において選択された前記データを秘匿することで、前記ユーザは、前記データ全体を観測することなく前記データ全てに関する実行結果を得ることができる。
【００１０】
ライセンスドングルがユーザ要求として使用されてもよい。
【００１１】
前記データはシミュレーションおよび／又は解析モデルを表すことが好ましい。選択された前記データは１又は複数のタスクモデルを表すことが好ましい。
【００１２】
選択された前記データはエンコードによって秘匿されることが好ましい。
【００１３】
ステップ（ａ）および（ｂ）は前記ユーザにおいても実行されてもよく、オリジナルの前記ユーザはデータプロバイダと見なされ、前記データプロバイダはユーザと見なされることが好ましい。
【００１４】
繰り返し処理は複数回実行されてもよい。
【００１５】
前記データは、ＸＭＬ、ＵＭＬ、Ｃ、Ｃ＋＋、Ｍａｔｌａｂ／Ｓｉｍｕｌｉｎｋ−Ｓｃｒｉｐｔ、Ｐｙｔｈｏｎ、Ｐａｓｃａｌ、Ｆｏｒｔｒａｎ、もしくはＢａｓｉｃ形式で表現されることが好ましい。
【００１６】
本発明のさらなる一側面によれば、さらなる処理を行うデータのユーザに前記データを供給する前の、前記データの前処理を実行するための、前記方法を実行するためのコンピュータシステムが提供される。当該コンピュータシステムは、データプロバイダによる選択を行う選択デバイスであって、前記さらなる処理のために前記ユーザに供給される前記データの全体の少なくとも一部を、前記ユーザにより入力される少なくとも１つの要求に応じて選択する選択デバイスを有する。さらに、当該コンピュータシステムは、前記選択された前記データを、前記ユーザから隠される一方で前記供給後に前記さらなる処理および／又は実行が行われるよう秘匿するユニットを有する。
【００１７】
本発明のさらなる一側面によれば、上記の方法を実行するためのプログラムが提供される。
【００１８】
本発明のさらなる一側面によれば、少なくとも２つの部分からなるシステム全体のシミュレーションおよび／又は解析を行うコンピュータベースの方法が提供される。当該方法は、前記システム全体の１又は複数の部分を表すデータを１又は複数のデータプロバイダから受信するステップであって、前記データは上記の方法により少なくとも１のデータプロバイダによって前処理が行われたものであるステップ、前記ユーザにより、受信された前記データをパケット化し前記システム全体を形成するステップ、および前記ユーザが、前記システム全体の解析および／又はシミュレーションを実行するステップを有する。
【００１９】
ステップ（ｂ）において前記システム全体を形成するために、前記ユーザは、前記システム全体のさらなる部分を表す自身のデータを、前記受信された前記データに付加することが好ましい。
【００２０】
前記データは１又は複数のソフトウエアコンポーネントを表してもよい。前記データは複合組み込みシステムの１又は複数のソフトウエアコンポーネントであることが好ましい。秘匿された前記ソフトウエアコンポーネントのインターフェースは前記ユーザから視認できるよう維持されることが好ましい。
【００２１】
前記データはシミュレーションおよび／又は解析のモデルを表すことが好ましい。選択された前記データは１又は複数のタスクモデルを表すことが好ましい。
【００２２】
本発明のさらなる一側面によれば、上記の方法を実行するプログラムを有するチップが提供される。
【００２３】
本発明のさらなる一側面によれば、上記の方法を実行するプログラムを記憶するデジタル記憶媒体が提供される。
【００２４】
本発明のさらなる一側面によれば、シミュレーションおよび／又は解析モデルであって、さらなるデータオブジェクトへのアクセスを制御する第１データオブジェクト、当該シミュレーションおよび／又は解析モデルの外部インターフェースを形成する第２データオブジェクト、当該シミュレーションおよび／又は解析モデルのコンテンツをさらなる処理が可能なデータとして有する第３データオブジェクト、および前記第３データオブジェクトのシミュレーションおよび／又は解析モデルをシミュレーション実行可能に形成された形式で有する第４データオブジェクトを有するシミュレーションおよび／又は解析モデルが提供される。
【００２５】
前記第１データオブジェクトは、前記シミュレーションおよび／又は解析モデルのユーザの、前記第２データオブジェクトのインターフェース情報、前記第３データオブジェクトのさらなる処理が可能な前記データ、および前記第４データオブジェクトの実行可能に形成された前記データへのアクセスへのアクセスを、所与のアクセス認証情報を考慮して制御することが好ましい。
【００２６】
前記第１データオブジェクトの前記所与のアクセス認証情報は、ライセンスドングルに記憶されることが好ましい。
【００２７】
前記第３データオブジェクトのさらなる処理又は実行が可能な前記データの前記アクセス認証情報および前記第４データオブジェクトの実行可能な前記データの少なくとも１つがエンコードされていることが好ましい。
【００２８】
前記第１データオブジェクトは、前記ユーザの前記第３データオブジェクトのさらなる処理が可能な前記データへのアクセスを拒絶する一方で、前記ユーザの前記第４データオブジェクトの実行可能に形成された前記データへのアクセスを許可し、これにより当該シミュレーションおよび／又は解析モデルは、前記ユーザにおいて、秘匿および／又はさらなる処理が不可能である一方で、実行が可能であることが好ましい。
【００２９】
前記第３データオブジェクトのさらなる処理が可能な前記データの少なくとも一部が、当該シミュレーションおよび／又は解析モデルの時間挙動を記述することが好ましい。
【００３０】
例えば、WO2007/051634 A2に記載されているように、前記第３データオブジェクトのさらなる処理が可能な前記データはソースコードを有してもよく、前記第４データオブジェクトの実行可能に形成された前記シミュレーションは、前記第３データオブジェクトの前記ソースコードからのシミュレーションモデルの生成によって生成されてもよい。
【００３１】
前記第３データオブジェクトの前記ソースコードは、ＸＭＬ、ＵＭＬ、Ｃ、Ｃ＋＋、Ｍａｔｌａｂ／Ｓｉｍｕｌｉｎｋ−Ｓｃｒｉｐｔ、Ｐｙｔｈｏｎ、Ｐａｓｃａｌ、Ｆｏｒｔｒａｎ、もしくはＢａｓｉｃ形式であることが好ましい。
【００３２】
前記第４データオブジェクトの実行可能な前記データは、例えば中間表現またはプレコンパイルが実行された形式であってもよい。
【００３３】
前記第４データオブジェクトの実行可能に形成された前記シミュレーションは実行可能な包括的モデルの、前記ユーザのソフトウエア環境に組み込まれていてもよい。
【００３４】
当該シミュレーションおよび／又は解析モデルは、上位シミュレーションおよび／又は解析モデルの階層部分を形成することが好ましい。当該シミュレーションおよび／又は解析モデルは、組み込みシステムのモデル又はサブモデルを形成することが好ましい。
【００３５】
当該シミュレーションおよび／又は解析モデルのコンテンツの少なくとも一部が、前記第３データオブジェクトのさらなる処理が可能なデータおよび前記第４データオブジェクトの実行可能な前記データとして、少なくとも制御デバイスのタスクに割り当てられることが好ましい。
【００３６】
当該シミュレーションおよび／又は解析モデルは、実時間解析に使用されてもよい。
【００３７】
特定の人（ライセンスを受けたプレイヤーの所有者）からなるグループに向けた、さらなる自動処理のためのエンコード処理を提供するデジタル著作権管理（ＤＲＭ、Digital Rights Management）と異なり、本発明による方法はユーザ自身のコンテンツとエンコードされたコンテンツとを結びつけるものであって、エンコードの際に想定されていない環境やシミュレーションのために使用される。
【００３８】
「ＡＵＴＯＳＡＲ」は部品、モジュール、およびシステム全体を記述するＸＭＬデータのやりとりのための技術標準である。しかしながらこの場合、送信者は自身の部品について常に全ての情報を開示し、その転送や使用目的のいずれも制限することはできない。
【発明を実施するための形態】
【００３９】
以下、本発明を好適な実施形態を用いて詳細に記述する。
【００４０】
記述において使用されるいくつかの用語について、以下に説明する。
【００４１】
○プロジェクトのエクスポート
エクスポートは、パーティ１のプロジェクトから特別な記述データを生成する特殊な処理であり、生成された記述データは次にパーティ２においてインポートされる。プロジェクトの、パーティ１により「hidden（秘匿）」マークが付された部分の内容はパーティ１においては完全に視認可能だが、パーティ２においてはブラックボックスとしか視認できない。パーティ２はプロジェクト全体の解析やシミュレーションを実行できるが、パーティ１により「hidden」マークが付された部分については詳細を知ることはできない。
【００４２】
○プロジェクトのインポート
プロジェクトのインポートはツールにおいて実行され、シミュレーションや解析が可能なプロジェクトを生成する。送信者により「hidden」マークが付された部分については、ブラックボックスとして視認され使用可能ではあるが、内部の解析はできない。
【００４３】
○秘匿
この用語は、ある部品がブラックボックスとして視認され、シミュレーションや解析において使用可能であることを示す。しかしながら内部の解析、すなわち内部動作の詳細を認識することは、プロジェクトビュー、シミュレーションや解析の結果のいずれにおいても不可能である。
【００４４】
○ブラックボックス
ブラックボックスは、他のシステムと接続可能なインターフェースの定義を有する。また、使用可能な（秘匿された）シミュレーションや解析のモデルを有する。ブラックボックス内部の詳細は視認できない。
【００４５】
○対象受信者
プロジェクトをエクスポートする際、ユーザは、「hidden」マークが付された部品を使用可能とする受信者を選択することができる。そして該受信者のみがインポートされたプロジェクトをシミュレーションや解析に使用できる。秘匿として受信（インポート）された受信者のリストについては、さらなる変更（特に追加）はできない。
【００４６】
ツールやライセンスドングルのインストールのそれぞれは、受信者として表示される。インストールのそれぞれはライセンスドングルへの接続ではなく個々の受信者に対応し、特にネットワークライセンスの場合にはグループ全体に対応する。
【００４７】
エクスポート処理の受信者の選択を可能とするために、受信者は対応する暗号化鍵を生成し送信者に送信する必要がある。送信者はそれに応じてこの鍵を自身のシステムに追加しなければならない。この送信者と受信者の結びつきが、ＰＧＰ／ＧｎｕＰＧの信頼性にも匹敵する信頼性を有するネットワークを構築する。
【００４８】
○ＰＧＰ／ＧｎｕＰＧ
電子メールや他の文書の非対象エンコード処理の準標準であり、デコード処理は対象受信者によってのみ実行可能である。
【００４９】
○エンコード
本発明においては、エンコード処理は常に、認知された暗号化処理を使用することを意味する。従って、非対称アルゴリズム（ＤＳＡ、ＲＳＡ）、対称アルゴリズム（ＡＥＳ）およびハッシュアルゴリズム（ＳＨＡ）が使用できる。特定の方法については、ライセンス認証の対象と称される。
【００５０】
本発明に係る方法を、例示的な実施形態を用いて説明する。
【００５１】
ステップ１：コントラクタ側
システム全体は、コントラクタによって構築される。また、必要なプロセッサおよびそれらの接続の情報を含むプロジェクトが定義される。加えて、開発されるソフトウエアコンポーネントの部分のタスクモデルが定義される。クライアントのソフトウエアコンポーネントについても、提示される仕様に従ってタスクモデルが生成される。ソフトウエアコンポーネント間のやりとりおよびそれらの実時間特性は、コントラクタによって、適切なシナリオにより検証される。
【００５２】
次のステップでは、コントラクタが、自身のソフトウエアコンポーネントのタスクモデルに「hidden」マークを付し、プロジェクトをエクスポートする。このようにして生成されたファイルは、「hidden」マークが付されなかった全ての部分については視認可能な形式で、「hidden」マークが付された部分についてはエンコードされた形式で含んでおり、対象受信者によってのみ処理される。このファイルはその後、クライアントからコントラクタに送信されるのが好ましい。
【００５３】
ステップ２：クライアント側
クライアントは、送信されたファイルを自身のツールにインポートする。システムの、「hidden」マークが付されなかった部分は、クライアント自身がプロジェクトに入力したものと同様に、視認も編集も可能である。「hidden」マークが付され、かつクライアントが認証された受信者と指定された部分については、ブラックボックスとして視認可能である。この部分については、インターフェースの定義のみが示される。シミュレーションや解析は記憶されたモデルにより実行可能だが、これらを視認することはできない。
【００５４】
送信されたファイルが、認証された受信者と指定されていない他者によってインポートされた場合、コントラクタにより「hidden」マークが付された部分は、彼は視認もシミュレーションや解析における使用もできない。
【００５５】
クライアントはこの時システムの試験を行うことができる。「hidden」マークが付された部分を含む全ての部分は、あらゆる抽象度の自身のタスクモデルで置き換えられる。より正確なタスクモデルによって、彼のシステムコンポーネントに対応するシステム部分を改良することが望ましい。こうして、プロジェクトの正しい動作はシミュレーションや解析によりテストされる。
【００５６】
こうして改良された部分は、その後「hidden」マークが付される。クライアントによるプロジェクトのエクスポートは、「hidden」マークが付された改良された部分を除いて、既にインポートされたバージョンに対応するバージョンで実行されるのが望ましい。クライアントはエクスポートされたプロジェクトをコントラクタに送り返す。
【００５７】
ステップ３：再度、コントラクタ側
コントラクタはまず、最初にエクスポートされたプロジェクトをロードし、クライアントから返送されたファイルをインポートする。バージョン間の差異を取得することで、ツールはクライアントによりどの修正が行われたのか認識し、これらの部分をプロジェクトに組み込む。この状況において、タスクモデルは「hidden」マークが付されたブラックボックスに置き換えられる。「hidden」マークが付されていない他の改良についても、組み込まれる。
【００５８】
コントラクタは改良されたプロジェクトのシミュレーションや解析を実行し、コントラクタはこうしてシステム全体の実時間処理能力を評価することができる。
【００５９】
ステップ１においてコントラクタにより「hidden」マークが付された部分は、最初の生成者に再度視認可能になる。詳細まで視認でき、評価や変更が可能である。
【００６０】
ステップ４：新規の繰り返し処理
ここでステップ１から３の処理が新たに開始できる。全ての参加者は自身のタスクモデルの改良を行い、秘匿すべきコンポーネントについては「hidden」マークを付し、プロジェクトをパートナーにエクスポートする。そして該パートナーは自身のコンポーネントに関連して、改良点の評価を行う。
【００６１】
実施例
○データ組み込み
以下、本発明を例示的なプロジェクトを用いて説明する。ここでは、プロジェクトはＸＭＬでエンコードされているとする。「hidden」マークが付された部分による拡張は以下のようになる。
<model>
<submodel name=”controlloop”>
<interface>
<connection> ... </connection>
</interface>
<implementation mode=”hidden”>
<receivers> ... CDATA ... </receivers>
<data id=”3”> ... CDATA ... </data>
<data id=”4”> ... CDATA ... </data>
</implementation>
</submodel>
<submodel name=”basepart”>
<interface>
<connection> ... </connection>
</interface>
<implementation mode=”visible” type=”c”>
<file>src/a.c</file>
<task name=”Process1”>
<entry>src/a.c/mainFunction</entry>
</task>
</implementation>
</submodel>
<model>
【００６２】
２つのサブモデルからなるモデルが示されている。”controlloop”という名称のサブモデルは、本発明により視認できない。”basepart”という名称のサブモデルは、全てのデータユーザが視認可能である。視認できないサブモデルにおいて、ＸＭＬタグ <connection>は、部分シミュレーションモデルの外部インターフェースを形成する第２データオブジェクトに対応する。ＸＭＬタグ <receivers>は、さらなるデータオブジェクトへのアクセスを制御する第１データオブジェクトに対応する。ＩＤ３を付されたＸＭＬタグ <data>は、認証されたユーザのために、さらなる処理が可能なデータとして部分シミュレーションモデルの内容を保持する第３データオブジェクトに対応し、ＩＤ４を付されたＸＭＬタグ <data>は、認証されたユーザのために、シミュレーションが実行可能な形式に形成されたシミュレーションモデルの内容を保持する第４データオブジェクトに対応する。こうして、サブモデル”controlloop”の開発者は、完成したサブモデルを、シミュレーションおよび解析環境におけるシステム全体のテストのために、秘密の専門的な知識（例えばエンジン音特性のための制御アルゴリズム）を開示することなくサブモデル”basepart”の開発者に供給できる。
【００６３】
秘匿は、論理的には全ての論理階層で実行される。エンコードされたデータストリームを解凍した際、再度解析が行われるＸＭＬ構成が生成される。
【００６４】
○データ評価
オブジェクトがインポートされると、「hidden」マークが付された部分は、そのタイプ、名称、およびインターフェース記述のヘルプのみで表示される。解析やシミュレーションの段階で、エンコードデータへのアクセスが行われる。
【００６５】
ユーザは、取得したデータの属性を変更することはできない。こうして、エンコードされたモデルの、システムの他の部分との整合性は維持される。ユーザがプロジェクトを保存する際、そのモデルについてもエンコードされた形式で保存される。
【００６６】
○データエンコード
エンコードには、標準的な方法が使用される。通常、実際に保護されるべきデータは任意に生成された鍵を使用してエンコードされる。暗号テキストは、上述のタグ<data>のデータを構成する。キー自体は、受信者の公共鍵を使用して、非対称エンコード方法によりエンコードされる。これは受信者のそれぞれについて個々に実行される。こうして保護されるデータを受信する受信者のそれぞれについて暗号化された鍵のリストは上述のタグ<receivers>の内容を構成する。
【００６７】
エンコードされたモデルと暗号化された鍵のリストは、データセットとして周囲のデータフォーマットに組み込まれる。
【００６８】
ユーザによるエンコードデータへのアクセスは可能になってはならない。ツールは、対応する手段を講じる必要がある。
【００６９】
エクスポートされた状態のシステムの記述は意味をなすものでなくてはならない。これは基本的に、自動処理が可能であることを意味し、視認可能な部分によるインタープリテーションとは異なる点である。
【００７０】
これは、具体的には次のような意味である。コンポーネントのインターフェースの記述はユーザから視認可能である。しかしながら、対応するエンコードされたシミュレーション記述はツールによって正当にインタープリテーション可能であるに過ぎない。
【００７１】
セマンティックのないテキストファイルは、反対の例である。パラグラフやチャプターがユーザから秘匿されると、ドキュメントはさらなる情報が得られないことには自動的にインタープリテーションされないため、これらは完全に使用不可能になる。
【００７２】
○シミュレーションモデルのコンポーネントの、視認性利用の例
以下の図１に示される利用例は、５つのコンポーネント：Ａ（４）、Ｂ（５）、Ｃ（１０）、Ｄ（１１）およびＥ（３０）からなるシステム全体を示している。２つのプロセッサ間の通信はＣＡＮ−ｂｕｓ（７）経由で実行される。コンポーネントＡは、ＣＰＵ−１（１）と、複数のオペレーティングシステムタスクおよびインタラプトサービスルーチン（２）と、からなり、データプロバイダによりシミュレーションモデルとして生成される。コンポーネントＢは、複数のオペレーティングシステムタスク（３）からなり、データプロバイダによりシミュレーションモデルとして生成される。コンポーネントＣは、ＣＰＵ−２（６）と、複数のオペレーティングシステムタスクおよびインタラプトサービスルーチン（８）と、からなり、データプロバイダによりシミュレーションモデルとして生成される。コンポーネントＤは、複数のオペレーティングシステムタスク（９）からなり、データプロバイダによりシミュレーションモデルとして生成される。コンポーネントＥは、ＣＡＮ−ｂｕｓ（７）からなり、データプロバイダによりシミュレーションモデルとして生成される。データ格納部Ａ（１２）は、コンポーネントＡ（４）の、第１（１６）、第２（１７）、第３（１８）、および第４（１９）データオブジェクトを格納する。データ格納部Ｂ（１３）は、コンポーネントＢ（５）の、第１（２０）、第２（２１）、および第３（２２）データオブジェクトを格納する。データ格納部Ｃ（１４）は、コンポーネントＣ（１０）の、第１（２３）、第２（２４）、第３（２５）、および第４（２６）データオブジェクトを格納する。データ格納部Ｄ（１５）は、コンポーネントＤ（１１）の、第１（２７）、第２（２８）、および第３（２９）データオブジェクトを格納する。データ格納部Ｅ（３４）は、コンポーネントＥ（３０）の、第１（３１）、第２（３２）、および第３（３３）データオブジェクトを格納する。
【００７３】
ユーザ１はコンポーネントＡのデータプロバイダおよびデータユーザであり、コンポーネントＢのデータユーザである。ユーザ２はコンポーネントＢおよびＥのデータプロバイダであり、コンポーネントＡ、Ｂ、Ｃ、Ｄ、およびＥのデータユーザである。ユーザ３はコンポーネントＣおよびＤのデータプロバイダである。
【００７４】
ユーザ１はコンポーネントＡおよびＢからなるサブシステム１の動作をシミュレーションによって試験したいと考えている。必要なコンポーネントＢはデータプロバイダ２により、データ格納部Ｂとして供給される。第３データオブジェクト（２２）へのアクセスは第１データオブジェクト（２０）により制御される。データユーザ１は、視認可能でありシミュレーションも可能である。ユーザ２はシステム全体のシミュレーションを実行したいと考えている。従って、彼は自身のコンポーネントＢおよびＥとは別に、データプロバイダ１から供給されるコンポーネントＡ、プロバイダ３から供給されるコンポーネントＣおよびＤが必要である。２つのコンポーネントＡおよびＣを彼は視認不可能であり、それぞれデータプロバイダから「hidden」としてエクスポートされ供給される。シミュレーションにおいては、データプロバイダ１は自身のコンポーネントＡの第４データオブジェクト（１９）を供給し、データプロバイダ３は自身のコンポーネントＣの第４データオブジェクト（２６）を供給する。これら２つのコンポーネントの第３データオブジェクトは視認できず、アクセスはそれぞれの第１データオブジェクトにより制御される。コンポーネントＡおよびＣのインターフェースは、これらが第２データオブジェクトとして供給されているため、データユーザ２によりシミュレーションにおいて使用可能である。コンポーネントＤはデータユーザ２により内部検査可能である。これは彼は自身による解析のために内部のダイナミックな動作を認識する必要があるためである。こうして、データプロバイダ３は第３データオブジェクト（２９）の内部検査を許可し、アクセスは第１データオブジェクト（２７）により制御される。第４データオブジェクトに関する認証されたデータユーザのリストは空白とすることができ、これはコンポーネントＢ、Ｄ、およびＥについては第４データオブジェクトは必要とされていないことを意味する。ユーザ３はコンポーネントＣおよびＤからなるサブシステム２のシミュレーションを実行する。彼はそのためにさらなるコンポーネントを必要とすることはない。
【図１】
2012510656.tif 000003
【国際調査報告】
2012510656.tif 000004
2012510656.tif 000005
2012510656.tif 000006
2012510656.tif 000007
2012510656.tif 000008
2012510656.tif 000009
2012510656.tif 000010
2012510656.tif 000011
2012510656.tif 000012
2012510656.tif 000013
2012510656.tif 000014
2012510656.tif 000015