JP3889633B2 - 仕様交換装置及び仕様交換プログラム - Google Patents
仕様交換装置及び仕様交換プログラム Download PDFInfo
- Publication number
- JP3889633B2 JP3889633B2 JP2002024735A JP2002024735A JP3889633B2 JP 3889633 B2 JP3889633 B2 JP 3889633B2 JP 2002024735 A JP2002024735 A JP 2002024735A JP 2002024735 A JP2002024735 A JP 2002024735A JP 3889633 B2 JP3889633 B2 JP 3889633B2
- Authority
- JP
- Japan
- Prior art keywords
- system specification
- component
- execution order
- query
- parts
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明は、計算機や電子機器等のハードウエア、ソフトウエア、及びその組み合わせを含むシステムの設計支援に関する。
【0002】
【従来の技術】
近年、ハードウエアとソフトウエアとを区別しない、システムレベルでの仕様記述のためのシステム仕様記述言語が開発され、これによりシステムレベルでの仕様から具体的なソフトウエアまたはハードウエアに分割された仕様へ、同一の仕様の書式に基づいて一貫して仕様記述を行う環境が整いつつある。システム設計の上流段階において、システム仕様を確かめながらの設計環境を提供するラピッドプロトタイピングツール(RapidやBetterState)が知られている。Rapidの参考文献:「Rapid-plus, White Paper」,http://www.e-sim.com/pdf/whtpaper.pdf)。
【0003】
これらラピッドプロトタイピングツールは、階層的な状態遷移図を利用してシステム分析と設計をシームレスに、かつ迅速に行えることを特徴としており、仕様の実装方法が明らかでないシステムレベルでの仕様設計の観点からすると割込み実行、逐次実行、並列実行を階層的に組み合わせることで効率的な設計が行える利点がある。
【0004】
設計の上流段階、すなわちアーキテクチャが決まっていない段階においてシステム設計を効率的に行うためには、システムレベルでの仕様を部品化し、再利用するための技術が必須である。システム仕様記述言語では、自然言語ではなく形式的な仕様記述規則に従ってシステムの内容(動作)を記述できる。しかし、システムレベルの仕様記述に基づいて仕様部品の内容を検索し、再利用するための仕組みはこれまで提供されていない。
【0005】
これまでのソフトウエア工学におけるソフトウエアの部品化は、詳細に設計された部品、いわゆる実装レベルの部品を提供するものであり、部品のAPI(Application Programming Interface)の関数仕様を利用者に提供するというものであった。再利用を考慮した部品化においても、予め決められたアーキテクチャでのみの利用が可能となっている。例えば、Java言語で記述されたプログラムにおけるJavaBeansは、Java実行環境における部品化のための仕様を規定しており、この規定された部品化仕様の範囲でのみ部品を再利用できる。JavaBeansの参考文献(「JavaプログラミングJavaBeans−コンポーネント・フレームワーク」,サイエンス社,(1997/12/01),ISBN:4781908624)。
【0006】
このようなソフトウエアの部品化に関する従来技術は、自然言語による部品の説明や分類指標(インデクス)を付与しておき、これを検索することで部品検索および再利用を実現するものであり、自然言語以外のソフトウエアの内容にまで踏み込んで部品の検索、再利用を実現するものではない。
【0007】
つまり、上述したようにシステム仕様記述言語に沿って作成されたシステムレベルの仕様を部品化し、再利用する仕組みはこれまで存在しなかった。
【0008】
【発明が解決しようとする課題】
本発明は、システム仕様記述言語に沿って作成された仕様を部品化しておき、詳細化前のシステムレベルの設計段階において適切な部品を検索し、仕様に組み込んで有効に再利用するための仕様交換方法、設計支援システム、仕様交換プログラム、ならびに設計支援プログラムを提供することを目的とする。
【0009】
【課題を解決するための手段】
本発明に係る仕様交換方法は、システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、複数のシステム仕様部品を用いて実現するための仕様交換方法であって、前記システム仕様の一部を満たす第1のシステム仕様部品を前記複数の仕様部品から検索するステップと、検索された前記第1のシステム仕様部品を考慮して、前記システム仕様の他部に相当するシステム仕様を生成するステップと、前記システム仕様の他部を満たす第2のシステム仕様部品を前記複数の仕様部品のなかから検索するステップと、前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合するステップと、前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換えるステップと、を具備することを特徴とする仕様交換方法である。
【0010】
また、本発明に係る設計支援システムは、システムレベルの計算の仕様および通信の仕様からなる仕様モデルを作成するステップと、前記仕様モデルの部分構造を分割して所定のアーキテクチャの部分要素に分配し、アーキテクチャモデルを作成するステップと、前記アーキテクチャの部分要素間の通信手順を前記通信の仕様に基づいて合成し、コミュニケーションモデルを作成するステップと、前記仕様モデル、前記アーキテクチャモデル、前記コミュニケーションモデルを相互に関連付けてシステム仕様として記録するステップと、前記システム仕様からハードウエア仕様を生成するステップと、前記システム仕様からソフトウエア仕様を生成するステップと、システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、複数のシステム仕様部品を用いて実現する仕様交換ステップであって、前記システム仕様の一部を満たす第1のシステム仕様部品を前記複数の仕様部品から検索するステップと、検索された前記第1のシステム仕様部品を考慮して、前記システム仕様の他部に相当するシステム仕様を生成するステップと、前記システム仕様の他部を満たす第2のシステム仕様部品を前記複数の仕様部品のなかから検索するステップと、前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合するステップと、前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換えるステップと、を具備する仕様交換ステップと、を具備することを特徴とする設計支援システムである。
【0011】
また、本発明に係る仕様交換プログラムは、システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、複数のシステム仕様部品を用いて実現するための仕様交換プログラムであって、コンピュータを、前記システム仕様の一部を満たす第1のシステム仕様部品を前記複数の仕様部品から検索する手段、検索された前記第1のシステム仕様部品を考慮して、前記システム仕様の他部に相当するシステム仕様を生成する手段、前記システム仕様の他部を満たす第2のシステム仕様部品を前記複数の仕様部品のなかから検索する手段、前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合する手段、前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換える手段として機能させるための仕様交換プログラムである。
【0012】
また、本発明に係る設計支援プログラムは、コンピュータを、システムレベルの計算の仕様および通信の仕様からなる仕様モデルを作成する手段、前記仕様モデルの部分構造を分割して所定のアーキテクチャの部分要素に分配し、アーキテクチャモデルを作成する手段、前記アーキテクチャの部分要素間の通信手順を前記通信の仕様に基づいて合成し、コミュニケーションモデルを作成する手段、前記仕様モデル、前記アーキテクチャモデル、前記コミュニケーションモデルを相互に関連付けてシステム仕様として記録する手段、前記システム仕様からハードウエア仕様を生成する手段、前記システム仕様からソフトウエア仕様を生成する手段、として機能させるとともに、システム記述言語で記述され、実行順序制約が規定されたシステム仕様の一部を満たす第1のシステム仕様部品を複数の仕様部品から検索する手段、検索された前記第1のシステム仕様部品を考慮して、前記システム仕様の他部に相当するシステム仕様を生成する手段、前記システム仕様の他部を満たす第2のシステム仕様部品を前記複数の仕様部品のなかから検索する手段、前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合する手段、前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換える手段、を具備する仕様交換手段として機能させるための設計支援プログラムである。
【0013】
また、本発明に係る第2の仕様交換方法は、システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、複数のシステム仕様部品を用いて実現するための仕様交換方法であって、前記システム仕様の一部を満たす第1のシステム仕様部品を前記複数のシステム仕様部品から検索するステップと、検索された前記第1のシステム仕様部品を考慮して、前記システム仕様の他部に相当するシステム仕様を生成するステップと、前記システム仕様の他部を満たすシステム仕様部品が前記複数のシステム仕様部品のなかに存在するか否かを判定するステップと、前記システム仕様の他部を満たすシステム仕様部品が前記複数のシステム仕様部品のなかに存在しないと判定された場合に、該システム仕様の他部を満たす第2のシステム仕様部品を生成するステップと、前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合するステップと、前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換えるステップと、を具備することを特徴とする仕様交換方法である。
【0014】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施形態を説明する。
【0015】
図1は、本発明の一実施形態に係る仕様交換装置が適用されたシステム設計支援装置の全体構成を示すブロック図である。
【0016】
図1に示すシステム設計支援装置1は、仕様モデル記述部2、システム仕様記録部3、アーキテクチャ探索部4、コミュニケーション合成部6、ハードウエア仕様生成部8、部品再利用部10、およびソフトウエア仕様生成部12から構成されている。
【0017】
本実施形態のシステム設計支援装置1は、計算機で実行されるソフトウエアの仕様、半導体素子等を組み合わせたハードウエアの仕様、ソフトウエアとハードウエアとを組み合わせた組み込みシステムの仕様、ワークフロー等のビジネスプロセスの仕様などについての、システムレベルでの仕様を扱う。
【0018】
このようなシステムレベルでの仕様における計算の仕様および通信の仕様からなる仕様モデルを設計するための仕様モデル記述部2は、設計者による仕様記述を支援する部分である。予め定められた仕様記述形式に従って、計算内容の仕様、通信内容の仕様を設計者が記述した結果、仕様記述モデルが生成される。この仕様記述モデルは、後述する仕様構造を含んでいる。仕様記述形式の例としては、構造化プログラミング言語に代表される構造化テキスト形式、グラフを利用する構造図形式、テーブルを利用する表形式などがある。
【0019】
アーキテクチャ探索部4は、与えられた仕様記述モデルを元に、アーキテクチャ(ハードウエアとソフトウエア実行環境の構成)に対し、仕様の内容を保存したまま仕様記述モデルの部分構造を分割してアーキテクチャ要素に分配する。具体的な実施形態では、仕様モデル記述部2で設計された計算内容の仕様や通信内容の仕様を構成する部品(仕様記述モデルの構成要素)をアーキテクチャ要素に割り当てる(アーキテクチャモデル作成)。
【0020】
コミュニケーション合成部6は、アーキテクチャ上の仕様要素間の通信手順を合成する。具体的には、アーキテクチャ探索部4で分配された通信仕様要素間に対して通信手順(プロトコル)を挿入し、通信内容の仕様が挿入された通信手順と整合性を保つためのプロトコル変換(通信手順の組替え)を行う(コミュニケーションモデル作成)。
【0021】
システム仕様記録部3は、仕様モデル記述部2により作成された仕様モデル、アーキテクチャ探索部4により作成されたアーキテクチャモデル、コミュニケーション合成部6により作成されたコミュニケーションモデルを相互に関連付け、これをシステム仕様として記録する。
【0022】
ハードウエア仕様生成部8は、システム仕様記録部3に記録されているシステム仕様からハードウエア仕様を生成する。一方、ソフトウエア仕様生成部12は、システム仕様記録部3に記録されているシステム仕様からソフトウエア仕様を生成する。
【0023】
部品化再利用部10は、システム仕様記録部3に記録されているシステム仕様を部品化し、これを仕様モデル記述部2、アーキテクチャ探索部4、およびコミュニケーション合成部6のそれぞれの設計における再利用に供する。
【0024】
本実施形態のシステム設計支援装置1は、少なくとも、「逐次実行」、「繰り返し」、「割込み終了」、「割込み一次停止」、「並列実行」の仕様を記述するための記述要素を具備しており、これらの記述要素を階層的に組み合わせることによってシステム全体の仕様を記述することができる。
【0025】
システム仕様記述方式には、図形的に仕様を記述するステートチャート(StateChart)や、構造的な言語として文字により仕様を表現するSpecC(Specification description language based on C)言語等がある。SpecCについては、例えば"SpecC: Specification Language and Methodology", Daniel D.Gajski, Kluwer Academic Publishers, Dordrecht, ISBN0-7923-7822-9に詳しい。
以下、本実施形態ではシステム仕様記述方式として、SpecC言語の記述形式に沿った説明を行うが、本発明はSpecC言語に限定されない。
【0026】
<仕様の構造>
当該実施形態において、仕様は、複数の「ビヘイビア」と呼ぶ基本単位で構成されるものとする。ビヘイビアは、階層構造を持つことができる。すなわち、ひとつのビヘイビアは、複数の他のビヘイビアを下階層として持つことができる。ビヘイビアは、ソフトウエアの仕様の場合は、関数やクラスに相当し、ハードウエアの場合は、LSIブロックに相当し、ビジネスプロセスの場合は、ジョブやタスクに相当する。
【0027】
「仕様の構造」とは、ビヘイビアで構成される仕様の構造を規定し、ビヘイビアの実行の順番に関する階層構造と、ビヘイビア間でのデータの通信路に関する階層構造とによって構成される。実行の順番に関する構造と通信路に関する構造は、階層としては同じ構造を持つ。すなわち、ビヘイビアAが実行の順番に関してビヘイビアBの上位階層にあるならば、ビヘイビアAは通信路に関してもビヘイビアBの上位階層である。
【0028】
仕様の構造により、アーキテクチャに対する仕様分割の方法も定義できる。例えば、組み込みシステムならば、ハードウエアとソフトウエアのそれぞれに対応する部分に、仕様がどのように分割されるかを、仕様として構造化して記述する。
【0029】
<仕様の書式>
仕様の構造のうち、実行の順番に関係する構造は、少なくとも「逐次実行および繰返し実行」(fsm)、「並列実行」(par)、「同期実行」(fork,join,start,end)、「割込み実行」(try,trap,itrp)という4分類の文法的要素を用いた階層構造として表現される。fsmは有限状態機械(finite state machine)の略である。
【0030】
例えば、
fsm{a,b}は、
“aを実行し終了の後にbを実行する”
という仕様を表現し、
par{a,b}は、
“aとbを並列に実行する”
という仕様を表現し、
階層的な仕様である、fsm{a,par{b,c},d}は、
“aを実行した後にb,cを並列に実行し、
そしてb,cが両方終了したらdを実行する”
という仕様を表現している。
【0031】
また、「割込み実行」に関する仕様である、try{a}trap(e){b}は、
“最初にaを実行する。aの実行中にイベントeが発生したら、
aの実行を強制終了し、bの実行を開始する”
という仕様を示す。
【0032】
「逐次実行および繰り返し実行」、「並列実行」、「同期実行」、「割込み実行」は、ソフトウエア、ハードウエア、そしてビジネスプロセスの仕様を記述するために用いられる実行制御方法規定のための手段として必要最小限の要素であり、これらを階層的に組み合わせることにより、いわゆるシステムの仕様を記述する。
【0033】
一方、通信路に関する構造は、ビヘイビア間のデータのやりとりを規定する。ここでは、変数およびチャネルと呼ばれる部品により、通信路が実現されるものとする。変数やチャネルは仕様の階層関係の上位階層のビヘイビアの直属の部品として定義され、これと下位階層のビヘイビアとがポートと呼ばれる接続口を介して接続することにより、下位階層同士のビヘイビアが通信路を介して互いに通信することを可能にしている。
【0034】
通信路は、ソフトウエアの場合は変数や通信用の関数に相当し、ハードウエアの場合はLSIを結ぶ結線に相当する。ポートは、通信のための入出力口であり、ソフトウエアの場合は引数に相当し、ハードウエアの場合は部品同士を結線で結ぶための端子に相当する。チャンネルは、データを送受信するために特別に用意されたコマンドを受け付ける部品である。例えば、“put(データ)”,“get()”といったコマンドが考えられる。変数は、書き込み“write(データ)”コマンドと読み込み“read()”コマンドとを備えたチャンネルの一種であるとみなすことができる。
【0035】
SpecC言語の、簡便な文法要素および規則を説明する。
}において、i,j,kはローカル変数であり、A,B,Cは下位階層のビヘイビアで、それぞれポートを持ち、ポートがローカル変数と接続していることを示している。
のいずれかで構成され、特に指定が無い場合は、左から順に逐次実行される。すなわち、遷移ラベルの項目が無い場合、{ラベル,処理内容}は、処理内容が終了すると、次のfsm要素を実行することになる。また、ラベルが1のfsm要素又は最左のfsm要素が最初に実行されるものとする。遷移は、「goto(X):Xはラベル番号」にて表す。例えば、goto(1)は、最初のfsm要素に戻ることを表している。
上記の処理内容例では、Aが実行され、終了すれば、Bが実行され、Bが終了したとき、変数flgの値が3ならばAを、1ならばBを実行することを表している。
【0036】
次に例示するように、ラベルの無い要素は、ラベルを用いた或る実行制御の簡略形であるといえる。
fsm{A,B,C}=fsm{{1,A,goto(2)},{2,B,goto(3)},{3,C,…},…}
・try{A}trap(ev1){B}itrp(ev2){C}…
この処理内容例では、まず、Aを実行する。そして、Aの実行中にイベントev1が発生すれば、Aを強制終了して、Bを実行する。また、Aの実行中にイベントev2が発生すれば、Aを一時停止して、Cを実行し、Cが終了したとき、Aの処理を再開する。
なお、trap(e){X},itrp(e2){Y}は、複数あってもよい。
・wait(ev)
これは、イベントevの発生を待つ同期処理である。
・notify(ev)
これは、イベントevを発生させる同期処理である。
・flg=X
これは、変数flgへの値の代入である。
・flg==X
これは、条件判断である。
・start(ID);
fork(ID);
これは、同期処理Iであり、startとforkは同期して実行される。
・end(ID);
join(ID);
これは、同期処理IIであり、endとjoinは同期して実行される。
【0037】
上記に列挙した書式に従った、階層構造を持つ仕様の例を以下に挙げる。
(例:ex0)
A:={i,par{B(i),g(i)}}
B(i):={j,k,fsm{a(j),b(k,i),C(k)}>}
C(k):={par{d,e,f(k)}}
これは、以下の仕様を表現している。
「ビヘイビアAはB,C,g,a,b,d,e,fという子ビヘイビアから構成され、ビヘイビアAは下位階層B,gより構成され、Bとgは並列実行であり、Aの下位階層であるBは下位要素a,b,Cより構成され、逐次実行され、さらにBの下位階層であるCは下位要素d,e,fより構成され、並列実効される。また、Aは通信路iを持ち、iを介してBのポートiとgのポートiが接続しており、またBは通信路j,kを持ち下位要素aのポートjと通信路jが接続し、bのポートkと通信路kが、bのポートiとBのポートiが、Cのポートkと通信路kがそれぞれ接続し、Cのポートkとfのポートkが接続していることを示している。すなわち、階層を渡ってビヘイビアfとb、gとbがそれぞれ通信線により接続し互いにデータをやり取りする。」
以下では、説明のために実行の順番に着目して通信路と階層関係を簡略化する場合がある。例えば、上記の仕様例(ex0)を実行の順番に着目して簡略化すると以下のように記述できる。
A:=par{fsm{a,b,par{d,e,f}},g}
また、説明のために通信路と接続関係に着目して、実行の順番を簡略化する場合がある。上記の仕様例(ex0)を通信路と接続関係に着目して簡略化すると以下のように記述できる。
A:={i,bh{B(i),g(i)}}
B(k):={i,j,bh{a(i),b(i,j),C(j)}>}
C(j):={bh{d,e,f(j)}}
fork(x)とstart(x)、およびend(x)とjoin(x)は、それぞれ対となって、同期制約を表し、これらの2つが常に同期して実行されることを規定している(ここで、xはid番号であり同じid番号をもつペアが同期して実行されることとする)。
例えば、
という仕様は、1から3および2から4の逐次実行(fsm)を並列実行(par)することを階層的に示しているが、fork,join,start,endの同期関係より1と3の間に2が実行されることがわかる。
通信路の構造に関しては、上記の仕様例(ex0)においては、fとbがBの通信路jを介して互いにデータをやり取りし、Aの通信路iを介してa,b,gが互いにデータをやり取りできることを示している。
【0038】
さて、本実施形態の仕様交換装置は、システム仕様の部品化・再利用のために部品化再利用部10に設けられている。
【0039】
図2は、本実施形態に係る部品化・再利用の概略を示すブロック図である。 本実施形態の仕様交換装置20は、システム仕様記述形式で記述された問合わせ仕様31と部品のデータベース(DB)30に格納されている部品の宣伝32とを照合し、該照合結果に基づいて新たな問合わせ生成して検索を行うとともに、通信合成を行うことで実行順序制約を満足する通信手順33を合成し、これを問合わせ仕様31に組み込むことで統合された仕様を得る。これにより仕様部品の再利用を実現する。
【0040】
図3は、このような本実施形態の仕様交換装置の概略構成を示すブロック図、図4は、該仕様交換装置により実行される部品再利用の概略手順を示すフローチャートである。
【0041】
図3に示すように、本実施形態の仕様交換装置20は、検索部21、照合部22、問合わせ生成部23、通信合成部24、および組込み部25を備えている。
【0042】
検索部21は、与えられた問合せに対しこれを満たすシステム仕様記述を部品のデータベース30から検索する(ステップS1)。検索の結果に基づいて照合が行われる(ステップS2)。問い合わせの一部が満たされる場合は、該当する部分を元々の問合せから引き算して新しい問合せが生成され(ステップS5)、検索部21はさらに検索を行って、当初の問合せ仕様が最終的に満たされるまで(ステップS4==YESとなるまで)、検索・照合・問合せの生成を順次に繰り返す制御を行う。
【0043】
照合部22は、システム仕様Aとシステム仕様Bとが与えられたとき、一方の仕様に対して他方の仕様が充足するかどうかを計算する部分である(ステップS2)。問合せ生成部23は、仕様Aと仕様Bとが与えられ、かつ仕様Bが仕様Aの一部を充足する場合に、仕様Aから仕様Bに該当する部分を取り除いた仕様A’を問合わせとして生成する(ステップS5)。通信合成部24は、問合せに対して、これを充足する1つ以上のシステム仕様部品の組合わせが存在するとき、これらの部品と、元々の問合せとの間を結合するための通信手順を生成する。これを本実施形態では「通信合成」という(ステップS6)。
【0044】
組込み部25は、通信合成を行った後(ステップS7)、検索により得られた仕様の部品と、通信合成部24が生成した通信手順とを合成し、当初与えられた問合わせの仕様における置き換えを行う(ステップS8)。
また、本実施形態の仕様交換装置20は、図2に示した既存の仕様(システム仕様記録部3)に基づくシステムレベルの仕様の「問合せ」31を記録保持する部分と、データベース30から提供されるシステムレベルでの部品の「宣伝」32(の記述)を部品ごとに記録保持する部分も備えている。
【0045】
<システム仕様>
本明細書において、「(システム)仕様」とは、設計の上流段階でまだ実装方法が決定されていない段階でシステムの動作を決めるための仕様記述を意味する。また、システム設計において既存の設計成果物の部品が、該部品に対するシステム設計段階での仕様と共に記録保存されており、これらを利用して部品を検索し、問い合わせ仕様に組み込みながらシステム設計を進める場合を想定する。
【0046】
<SpecC言語の仕様から実行順序を抽出>
SpecC言語に従い仕様が構造的に記述されると、該仕様に含まれる情報から、2つの任意の仕様に対して、判断基準に従い同等かどうかを計算することができる。この判断基準は用途に応じて様々であるが、例えば、仕様に含まれるタスクの実行順序制約を満たしているかどうかを判断基準の一例として挙げることができる。
【0047】
SpecC言語においては、実行順序に関する明確な順序制約が言語セマンティクスとして規定されており、これをもとに仕様全体の実行順序制約をタスクをノード、順序制約をエッジとして表現したグラフとして抽出することができる。このグラフをETG(Extended Task Graph)と呼ぶ。
【0048】
ETGにおいては、順序制約に関するエッジの他に並行動作に関しする特別なエッジ(fork/join)を用意して並行動作を表現する。ETGにおける並行動作とは、並列に動くべきものとして仕様が記述されるのではなく、どちらが先に動いても構わないということを示しているものとする。
【0049】
SpecC言語で記述された仕様からETGを一意に抽出できる。並行動作(par)が「どちらが先に動いても構わない」という意味であるので、fork/joinに関する制約は実行順序を規定しないことに鑑み、以下の実施形態では、半順序関係“<”(a<b:aはbの後に実行される)をもって実行順序制約を表現するものとする。図5に、SpecC言語で記述されたシステム仕様記述、ETGの記述、および実行順序制約の関係を示す。
【0050】
<実行順序上の充足関係>
一般的に工学的な設計においては、設計工程が進むにつれて、仕様は詳細化される。システムレベルの設計では並行動作で仕様記述されたものは、詳細設計においては、並行動作がスケジューリングされ、実装に最適な順序で逐次実行されるように詳細化が施される。システムレベルの段階で並行動作として記述された仕様Aと、これを逐次化した仕様Bとがある場合を仮定する、この仕様Bは仕様Aに対して実行順序において強制約になっており、これを「仕様Bは仕様Aを充足している」と定義する。すなわち、「仕様Bが仕様Aを充足する」ということは「仕様Aに含まれる全てのタスクに対する実行順序制約が、仕様Bにおける実行順序にも含まれることである」と定義する。
【0051】
例えば、実行順序制約を半順序関係“<”にて記述すると、
仕様A=par{a,fsm{b,c}}、
仕様B=fsm{a,b,c}
について、仕様Aの実行順序制約は、
A_seiyaku = “b<c”
である。一方、仕様Bの実行順序制約は、
B_seiyaku = “a<b,b<c”
である。ここで、
“a<b,b<c”は“b<c”を含んでいるので仕様Bは仕様Aを充足している。
同様に、fsm{b,a,c}, fsm{b,c,a}も 仕様Aを充足している。
【0052】
<部分充足>
また、「仕様Aに含まれるタスクに対する実行順序制約の部分集合が、仕様Bにおける実行順序に含まれること」を、「仕様Bが仕様Aを部分充足する」と定義する。例えば、
仕様A=par{a,fsm{b,c}}
に対して、
仕様B=fsm{a,c}は仕様Aを部分充足している。
【0053】
<「宣伝」と「問合せ」>
SpecC言語に従ったシステム仕様記述は、仕様の部品の内容の記述のみならず検索にも活用される。詳細設計まで終了した過去の設計実績に対して、システムレベルでの仕様を記録保存しデータベース化(部品化)する。このデータベースにおける個々の部品に対する検索用指標(インデクス)としての仕様を「宣伝」と呼ぶことにする。宣伝記録部は、システム仕様レベルでの「宣伝」の記述を部品ごとに記録保持する。
【0054】
また、システム仕様の設計段階において、詳細設計までは至らないがある程度の仕様が設計済みであるとき、この設計中途の仕様を部品検索のための検索式として利用する。この仕様を「問合せ」と呼ぶ。問合せ記録部は、システム仕様レベルでの「問合せ」を記録保存する。
【0055】
これら「問合せ」および「宣伝」は、タスク間の実行順序制約に基づいて記述される。それぞれのタスクは実現性に関する属性を有し、そのタスクを実現するための手段の有無が記録される。
【0056】
以降、本実施形態では、実現手段が有るタスクを「a」と表現し、実現手段が無いタスクに記号「~」を付与して「a~」と表現する。また図面においては、点線により囲まれたタスクは、実現手段が無いタスクを示す。
【0057】
典型的な「問合せ」の記述は、含まれる全てのタスクに対する実現手段が無いタスクにより構成され、典型的な「宣伝」の記述は、含まれる全てのタスクに対する実現手段が有るタスクにより構成される。しかし、全ての場合がこれに当てはまるわけではない。問合せにおいて一部が実現されていたり、宣伝においても一部が実現されていないものを含むことも可能である。
【0058】
<照合>
照合部22は、仕様AとBとが与えられたとき、仕様AとBを共に部分充足する仕様Cがある場合に、仕様A,Bが交換可能であると判断する。逆に仕様AとBを共に部分充足する仕様Cがない場合は「交換可能でない」と判断する。
【0059】
例えば、
仕様A=fsm{par{e,b},d}
仕様B=fsm{b,par{d,e}}
が与えられたとき、仕様A,Bを共に充足する仕様Cは、
仕様C=fsm{b,e,d}
が存在するので、仕様AとBは交換可能である。
【0060】
照合部22において、与えられた2つの仕様を両方充足する仕様を計算する方法としては、例えば2つの仕様に含まれる順序制約の和を取る方法がある。
例えば上記の例では、
仕様Aが含む実行順序制約は、
{e<d, b<d}
であり、
仕様Bが含む実行順序制約は、
{b<d,b<e}
であり、これらの和をとると、
{e<d, b<d,b<e}
になる。ここで、半順序関係<の性質により、次の推移律、
“b<eかつe<dならばb<d”
が成り立つので、{e<d, b<d,b<e}は、{b<e,e<d}と簡略化できる。
【0061】
これをSpecC記述で表現すると、仕様C=fsm{b,e,d}となる。
【0062】
順序制約の和を取ったときに、該制約上の矛盾が生じる場合がすなわち交換不可能な場合である。なお、本実施形態では順序制約を利用した集合演算を利用して計算を行う場合を説明したが、本発明はこれに限定されない。例えばグラフ理論を用いて同様な計算を行ってもよい。
【0063】
<実行順序制約の引き算>
問合せ生成部23は、例えば、仕様AとBが与えられ、仕様Aに実現されていないタスクが含まれており、この仕様Aに基づく問い合わせを生成する場合、仕様Bから実現されているタスクを取り除き、仕様Aに含まれずかつ仕様Bに含まれており、かつ、仕様Bにおいて実現されていないタスクを追加することによって、新しい問合せの仕様A’を生成する。
【0064】
このような問合せ生成の例として、例えば次のような問合せ仕様A、
A=fsm{par{a~,fsm{b~,c~}},d~}
に対して、宣伝仕様B、
B=fsm{c,a}
があるとき、問合せ生成部23は、問合わせ仕様Aから宣伝仕様Bを減算し、新しい問合せ仕様C、
C=fsm{b~,d~}
を生成する。
【0065】
問合せ生成における仕様の減算は、順序制約における集合演算を利用して実現可能である。
【0066】
上記の例において、実行順序制約を半順序関係「<」にて表現すると、
A_seiyaku = {a~<d~, c~<d~, b~<c~}
B_seiyaku = {c<a}
と記述できる。
【0067】
宣伝仕様Bには、タスクa~,c~に対するタスクa,cが含まれるので、問合わせ仕様Aからタスクc~,a~が削除される。
【0068】
問合わせ仕様Aの中での実行順序が保存されるように注意し、「c~<d~, b~<c~」から「c~」を減ずると、「b~<d~」となる。
【0069】
したがって、最終的には仕様Cの制約、すなわち、
C_seiyaku{b~<d~}
が得られる。
【0070】
<検索アルゴリズム>
検索部21は、与えられた問合せ仕様に対しこれを満たす仕様記述を検索する。検索結果が問い合わせ仕様の一部を満足する場合、該当する部分を元々の問合せ仕様から引き算し、問合わせ生成部23により新しい問合せが生成される。そして検索部21はさらなる検索を行い、問合せが最終的に満たされるまで、「検索」、「照合」、「問合せの生成」が順次に繰り返して行われるような制御を行う。
【0071】
<通信の合成>
通信合成部24は、「問合せ」に対して、これを充足する1つ以上のシステム仕様の部品の組合わせが存在するとき、これらの部品と、元々の問合せの間を結合する際に必要な通信手順(プロトコル)を生成する。具体的には、検索部21及び照合部22における部品検索および照合計算の結果履歴に基づいて通信手順を組み立てる。
【0072】
通信手順の組み立て方は、上述した順序制約における集合演算を利用して実現される。
例えば、問合せ仕様A、
A=fsm{par{a~,fsm{b~,c~}},d~}
に対して、宣伝仕様B、
B=fsm{e~,c,a}
が存在し、これが検索部21により検索されたとき、問合せ生成部23は問合せ仕様Aから宣伝仕様Bを減算し、
C=fsm{par{e~,b~},d~}
という新しい問合せが生成されたとき、通信合成部24は、2つの仕様A,Bの順序制約、
A_seiyaku= {a~<d~, c~<d~, b~<c~}
B_seiyaku= {e~<c, c<a}
より、仕様Aにおけるタスク「a~,c~」を「a,c」に換えて2つを加算し、
{a<d~, c<d~, b~<c, e~<c, c<a}
を得る。
上記「c<d~」は{c<a,a<d~}より推移律で計算でき、不必要であるから、これを削除し、
{a<d~, b~<c, c<a, e~<c}
を得る。
【0073】
この順序制約が実行手順に相当する。すなわち、問合せ仕様Aを実現するためには仕様の宣伝部品Bと、未だ検索されていないe,b,dを実現する部品Xを準備した上で、「最初に部品Xにおけるタスクb,eを実行した後に、仕様Bにおけるタスクcとaをc<aの順番で実行して最後に部品Xにおけるタスクdを実行する。」という通信手順が生成されることを表している。この例では部品Xがまだ検索されていないので、この部品Xを検索し、通信合成部24は上記通信手順を修正する。
【0074】
<通信手順の組込み>
組込み部25は、問合せに対しての最終的な検索が終了した際、通信合成部24により生成された通信手順を用い、検索部21により検索された各部品と元々の問合せとの間を該通信手順を介して結合するとともに、該結合体を用いて元の問合せの仕様の置き換えを行う。
【0075】
以下、図6〜図10を参照して、問い合わせに基づく仕様部品の再利用の実施形態を具体例に基づいて説明する。
【0076】
図6に示すように、
問合せ仕様1=fsm{par{a~,fsm{b~, c~}},d~}
に対して、宣伝として以下の2つの部品が準備されているとする。
部品1の宣伝=fsm{e~,c,a}
部品2の宣伝=fsm{b,par{d,e}}
検索部21は、問合せ仕様1について、これを満たす仕様を宣伝記録部から検索する(図4のステップS1)。そして、照合部21により、部品1の宣伝が部分充足するものと判断される(ステップS2)。
ここで、問合せ生成部23は、図8に示すように、問合せ仕様1から部品1の宣伝を減算し、次に示す新たな問合せ仕様2を生成する(ステップS5)。
問合せ仕様2=fsm{par{e~,b~},d~}
生成された問合せ仕様2を図7に示す。
【0077】
このとき、通信合成部24は、問合せ仕様1に対して部品1を組み込むための、通信手順1、すなわち、
通信手順1={a<d~, b~<c, c<a, e~<c}
を得る(ステップS6)。
【0078】
さらに、検索部21が検索を行なうと、照合部22により問合せ仕様2に対して部品2の宣伝が充足することが判断される(図7の下部参照)。結果として、問合せ仕様1に含まれる全てのタスクが充足されることになり、検索部21は検索を終了する(ステップS4==YES)。
【0079】
通信合成部24は、通信手順1を更新し、問合せ仕様1に対して部品1と部品2とを部品として組み込むための、通信手順2、すなわち、
通信手順2={b<e, e<c, c<a, a<d}
を生成する(ステップS7)(図9参照)。この通信手順2が意味するところは、「問合せ1を実現するためには、部品1、部品2を準備し、部品2のb、部品2のe、部品1のc、部品1のa、部品2のdの順番で部品1,2の機能を呼ぶことにより実現される」という部品1、2を組み込むための通信手順(プロトコル)である。この通信手順は、図10に示すチャネルとして実装される。チャネルは、プロトコルに従い、部品の構成要素を順序立てて呼び出す手段である(プロトコルを実行する部品)。このようなチャネルは、階層構造を有していてもよい。つまり、あるチャネルが、その構成要素としてチャネルを含み、部品として再利用に供されても良い。
【0080】
最後に、組込み部25が通信手順2のチャネルを利用して部品1と部品2を問合せ仕様1に置き換える(ステップS8)。以上の手順により部品の再利用が実現される。
【0081】
以上説明したように、本実施形態の仕様交換装置によれば、システム仕様記述言語に沿って作成されたシステム仕様を部品化しておき、詳細化前のシステムレベルの設計段階において適切な部品を部品データベース(DB)30から検索し、仕様に組み込んで有効に再利用することができるようになる。
【0082】
なお、問合わせに応じうる部品の全てを、部品データベース(DB)30が提供し得ない場合も考えられる。この場合、不足の部品を作成するための環境を仕様交換装置20が提供するよう実施形態を構成しても良い。
【0083】
不足の部品は、例えば、生成された新たな問合わせを満たすシステム仕様部品である。このシステム仕様部品は、新たな問合わせの実行順序制約を満足する。システム仕様部品の作成は、宣伝に対する問合わせ(検索)の結果、不足が判明した時点で行われてよい。あるいは、宣伝に対する検索を行わないで、最初から相当する部品を作成するようにしても良い。
【0084】
このようにすれば、既存のシステム仕様を利用し、いわゆるボトムアップの形態でシステム仕様を構築することができるようになる。
【0085】
以下、不足の仕様部品を仕様交換装置内で生成するよう構成した他の実施形態を、図11乃至図13を参照して説明する。図11は、他の実施形態に係る仕様交換装置の概略構成を示すブロック図である。図11に示すように、この仕様交換装置20は検索部21、照合部22、問合わせ生成部23、通信合成部24、組込み部25に加えて部品生成部26を備える構成である。部品生成部26以外の各構成要素は図3に示したものと同様である。部品生成部26は、図2に示した部品データベース30に対して問合わせを行った結果、該当する仕様部品が見つからなかった場合に、問合わせを行った側で部品を生成するための機能を提供する。ここで、部品の生成とは、問合わせ仕様を詳細化すると共に、これを再利用に供するため必要な情報を生成することを意味する。詳細化とは、エディタ等を用いてユーザがコーディングを行うことであり、必要な情報の生成とは、上述した「宣伝」に相当する情報や、部品としての識別情報等を生成することである。生成された部品は部品化再利用部10において再利用可能になる。
【0086】
図12は、このような部品生成の処理を含めた他の実施形態に係る仕様交換装置の概略手順を示すフローチャートである。
【0087】
ステップS1において部品データベース30に対し部品の検索を行ったのち、かかる検索の結果、該当する部品が見つかったか否かを判断する(ステップS2)。ここで、問合わせに応じる部品が部品データベース30に存在し、検索にヒットしたときはステップS2に進み、照合が行われる。以降の動作は図4にて説明したものと同様である。
【0088】
一方、ステップS2において、問合わせに応じる部品が部品データベース30に存在せず、検索において見つからない(not found)場合は、ステップS7に進む。ステップS7においては、部品の生成を行うか否かをユーザに問いわせる。ユーザに部品生成を行う意志がない場合はここで処理を終了する。
【0089】
続くステップS8においては、部品生成部26が起動される。ユーザは、同部品生成部26を利用して問合わせ仕様を詳細化する。
【0090】
例えば図13に示すように、問合わせ生成部23により生成された問合わせ仕様2を満足する仕様部品が部品データベース30に存在しないような場合、部品生成部26を介してユーザが部品2’を生成する。
【0091】
ステップS8において生成された部品は、ステップS9において、部品データベース30或いは部品化再利用部10内の他のデータベースに登録、保存され、再利用に供することができるようになる。
【0092】
なお、この実施形態は次のように変形することができる。すなわち、図12における部品検索処理(ステップS1)及びその結果判定処理(ステップS3)を省略することができる。
【0093】
以上説明した他の実施形態によると、問合わせ仕様2に照合可能な図7の部品2がデータベース30に存在しない場合に、図13に示したように部品2’を生成するのであるが、この部品2’は、生成することが最低限必要な部品である。すなわち、他の実施形態では少なくとも部品1を利用して所要の仕様を実現することができ、同図に示す問合わせ仕様1の全てを一から生成するよりも負担を軽減できる利点がある。
【0094】
<割り込み>
なお、以上の例では、仕様の構造に割り込みに関する記述(try/trap/itrp)が含まれる場合については述べなかった。これは割り込みに関する記述は事前に局所化して、局所化された部分構造を単独ビヘイビアとして取り扱うことができるので、全体としては割り込みの構造を排除してpar,fsmのみで構成される階層構造とすることができるからである。
【0095】
例えば、
try{fsm{a,b,c}}trap(e){fsm{d}}
というビヘイビアは、「a,b,cを逐次実行している間にイベントeが発生したらa,b,cの実行を中止してdを実行する。eが発生しなかったらcが終了した時点で終了する。」という仕様を示しているが、これは、try/trap構造を下階層へ移動することにより、次に示すような等価な仕様の構造に変換することができる。
ここでは、同期機構とflgフラグの値で元々の順序制約を保っている。
【0096】
さらに、マクロ化を行うことで構造上try/trapを隠蔽することもできる。
【0097】
なお、以上の各機能は、ソフトウエアとして実現可能である。
また、本実施形態は、コンピュータを所定の手段として機能させるためのプログラムとして実施することもでき、該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
【0098】
なお、この発明の実施の形態で例示した構成は一例であって、それ以外の構成を排除する趣旨のものではなく、例示した構成の一部を他のもので置き換えたり、例示した構成の一部を省いたり、例示した構成に別の機能あるいは要素を付加したり、それらを組み合わせたりすることなどによって得られる別の構成も可能である。また、例示した構成と論理的に等価な別の構成、例示した構成と論理的に等価な部分を含む別の構成、例示した構成の要部と論理的に等価な別の構成なども可能である。また、例示した構成と同一もしくは類似の目的を達成する別の構成、例示した構成と同一もしくは類似の効果を奏する別の構成なども可能である。
また、この発明の実施の形態で例示した各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
また、この発明の実施の形態は、個別装置としての発明、関連を持つ2以上の装置についての発明、システム全体としての発明、個別装置内部の構成部分についての発明、またはそれらに対応する方法の発明等、種々の観点、段階、概念またはカテゴリに係る発明を包含・内在するものである。
従って、この発明の実施の形態に開示した内容からは、例示した構成に限定されることなく発明を抽出することができるものである。
【0099】
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0100】
【発明の効果】
以上説明したように、本発明によれば、システム仕様記述言語に沿って作成された仕様を部品化しておき、詳細化前のシステムレベルの設計段階において適切な部品を検索し、仕様に組み込んで有効に再利用することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る仕様交換装置が適用されたシステム設計支援装置の全体構成を示すブロック図
【図2】上記実施形態に係る部品化・再利用の概略を示すブロック図
【図3】上記実施形態に係る仕様交換装置の概略構成を示すブロック図
【図4】上記仕様交換装置により実行される部品再利用の概略手順を示すフローチャート
【図5】SpecC言語で記述されたシステム仕様記述、ETGの記述、および実行順序制約の関係を示す図
【図6】ある問合せ仕様に対応する2つの宣伝部品を示す図
【図7】照合結果に基づく新たな問合わせの生成を示す図
【図8】問合せ仕様の生成時における減算の様子を示す図
【図9】新たな問合わせと宣伝部品とにより生成された通信手順を示す図
【図10】生成された通信手順の詳細を示す図
【図11】本発明の他の実施形態に係る仕様交換装置の概略構成を示すブロック図
【図12】部品生成の処理を含む上記他の実施形態に係る仕様交換装置の概略手順を示すフローチャート
【図13】他の実施形態に係り、ユーザによる部品生成の一例を示す図
【符号の説明】
1…システム設計支援装置
2…仕様モデル記述部
3…システム仕様記録部
4…アーキテクチャ探索部
6…コミュニケーション合成部
8…ハードウエア仕様生成部
10…部品化再利用部
12…ソフトウエア仕様生成部
30…仕様交換装置
31…仕様の問合わせ
32…部品の宣伝
33…通信手順
Claims (10)
- システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、実行順序制約を有する複数のシステム仕様部品を用いて実現するための仕様交換装置であって、
前記システム仕様の第1の問合わせ仕様の一部を満たす第1のシステム仕様部品の宣伝を前記複数の仕様部品から検索する手段と、
検索された前記第1のシステム仕様部品の宣伝を前記第1の問合わせ仕様から減じると共に、この減じた結果に対し、前記第1のシステム仕様部品の宣伝において第1の問合わせ仕様では充足されない実行順序制約を加えることにより、第2の問合わせ仕様を生成する手段と、
前記第2の問合わせ仕様を満たす第2のシステム仕様部品の宣伝を前記複数の仕様部品のなかから検索する手段と、
検索されたそれぞれの宣伝に対応する前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合する手段と、
前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換える手段と、を具備することを特徴とする仕様交換装置。 - 前記検索手段は、前記第1のシステム仕様の第1の問合わせ仕様の一部に関する実行順序制約と、前記第1のシステム仕様部品の宣伝の実行順序制約との和を計算する手段と、計算された前記和に実行制約上に矛盾があるか否かを判断する手段と、を具備する請求項1に記載の仕様交換装置。
- 前記和の計算は、集合演算を利用した計算を含む請求項2に記載の仕様交換装置。
- 前記和の計算は、グラフ理論を利用した計算を含む請求項2に記載の仕様交換装置。
- 前記統合手段は、前記第1のシステム仕様部品の第1のチャネルを生成する手段と、前記第2のシステム仕様部品の第2のチャネルを生成する手段と、前記第1及び第2のチャネルを用いる通信プロトコルを生成する手段と、を具備する請求項1に記載の仕様交換装置。
- システム記述言語で記述され、実行順序制約が規定されたシステム仕様を、実行順序制約を有する複数のシステム仕様部品を用いて実現するための仕様交換プログラムであって、
コンピュータを、
前記システム仕様の第1の問合わせ仕様の一部を満たす第1のシステム仕様部品の宣伝を前記複数の仕様部品から検索する手段、
検索された前記第1のシステム仕様部品の宣伝を前記第1の問合わせ仕様から減じると共に、この減じた結果に対し、前記第1のシステム仕様部品の宣伝において第1の問合わせ仕様では充足されない実行順序制約を加えることにより、第2の問合わせ仕様を生成する手段、
前記第2の問合わせ仕様を満たす第2のシステム仕様部品の宣伝を前記複数の仕様部品のなかから検索する手段、
検索されたそれぞれの宣伝に対応する前記第1のシステム仕様部品と前記第2のシステム仕様部品とを、前記システム仕様に規定された前記実行順序制約を満たすように統合する手段、
前記システム仕様を、統合された前記第1のシステム仕様部品及び前記第2のシステム仕様部品で置き換える手段として機能させるための仕様交換プログラム。 - 前記検索手段は、前記第1のシステム仕様の第1の問合わせ仕様の一部に関する実行順序制約と、前記第1のシステム仕様部品の宣伝の実行順序制約との和を計算する手段と、計算された前記和に実行制約上に矛盾があるか否かを判断する手段と、を具備する請求項6に記載の仕様交換プログラム。
- 前記和の計算は、集合演算を利用した計算を含む請求項7に記載の仕様交換プログラム。
- 前記和の計算は、グラフ理論を利用した計算を含む請求項7に記載の仕様交換プログラム。
- 前記統合手段は、前記第1のシステム仕様部品の第1のチャネルを生成する手段と、前記第2のシステム仕様部品の第2のチャネルを生成する手段と、前記第1及び第2のチャネルを用いる通信プロトコルを生成する手段と、を具備する請求項6に記載の仕様交換プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002024735A JP3889633B2 (ja) | 2001-01-31 | 2002-01-31 | 仕様交換装置及び仕様交換プログラム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001024889 | 2001-01-31 | ||
JP2001-24889 | 2001-01-31 | ||
JP2002024735A JP3889633B2 (ja) | 2001-01-31 | 2002-01-31 | 仕様交換装置及び仕様交換プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002304428A JP2002304428A (ja) | 2002-10-18 |
JP3889633B2 true JP3889633B2 (ja) | 2007-03-07 |
Family
ID=26608727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002024735A Expired - Fee Related JP3889633B2 (ja) | 2001-01-31 | 2002-01-31 | 仕様交換装置及び仕様交換プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3889633B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5164032B2 (ja) * | 2005-03-02 | 2013-03-13 | 公立大学法人会津大学 | 編集支援プログラムおよびプログラム編集の支援方法 |
-
2002
- 2002-01-31 JP JP2002024735A patent/JP3889633B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002304428A (ja) | 2002-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101777004B (zh) | 面向服务环境中基于模板实现bpel子流程复用的方法及系统 | |
JP3856969B2 (ja) | オブジェクト分析設計支援方法 | |
EP2378415B1 (en) | Service integration modeling and execution framework | |
Taentzer et al. | Change-preserving model repair | |
JP5350428B2 (ja) | 自動プログラム生成装置、方法及びコンピュータプログラム | |
JP5005510B2 (ja) | ソフトウェアの設計支援方法、設計支援装置及び設計支援プログラム | |
France et al. | Providing support for model composition in metamodels | |
KR20090120481A (ko) | 소프트웨어 자산 기반 솔루션을 개발하기 위한 일관된 방법, 시스템 및 컴퓨터 프로그램 | |
US6980941B2 (en) | Method and computer program product for realizing a system specification which is described in a system description language | |
CN118377605B (zh) | 任务调度模型构建方法及装置 | |
JP3889633B2 (ja) | 仕様交換装置及び仕様交換プログラム | |
Ali et al. | Perspectives to promote modularity, reusability, and consistency in multi-language systems | |
CN116243893A (zh) | 一种低代码出码方法 | |
Sukaviriya et al. | Model-driven approach for managing human interface design life cycle | |
JP4906424B2 (ja) | Webサービス設計方法及び装置 | |
Ganser et al. | Engineering model recommender foundations-from class completion to model recommendations | |
Patel et al. | Survey of existing web models techniques to design web application | |
JP2007265418A (ja) | 自動詳細化システム | |
WO2021024791A1 (ja) | 設計支援システム及び設計支援方法 | |
Hauptmann et al. | Supporting derivation and customization of user interfaces in software product lines using the example of web applications | |
JP2002041287A (ja) | 再利用部品抽出装置、再利用部品抽出方法及びその装置での処理をコンピュータに行なわせるためのプログラムを格納した記憶媒体 | |
JP2002230063A (ja) | 割込み構造局所化の装置および方法およびプログラム | |
JP2007034806A (ja) | 情報処理装置及びプログラム | |
JP2002157117A (ja) | フレームワーク開発支援装置及びフレームワーク開発支援方法 | |
Jafarlou et al. | From two-way to three-way: domain-specific model differencing and conflict detection. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060522 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060731 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060905 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061106 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061130 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091208 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101208 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111208 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121208 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121208 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131208 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |