(57)【要約】【課題】ソフトウェア開発の成果物である設計データの再利用を支援する。【解決手段】設計データ再利用支援装置１は、設計データ２１を再利用向けに変換した抽象化設計データ２３を編集及び記憶する抽象化設計データ管理部１７と、設計データ２１を抽象化して抽象化設計データ２３を生成する際に利用し、抽象化設計データ２３を具体化して設計データを生成する際にも利用する再利用向け辞書データ２２を編集及び記憶する再利用向け辞書データ管理部１５と、設計データ２１から用語の親子関係と用語の兄弟関係を取り出し、用語のグラフ構造に変換する再利用向け辞書データ生成部１６と、抽象化設計データ２３中の置換可能な変数の値を、再利用向け辞書データ２２を探索して設定し、更に抽象化設計データ２３中の置換可能な変数を文字列に変換する設計データ具体化部１９を備える。【選択図】図１
2009151432.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発の成果物である設計データの再利用を支援する設計データ再利用支援装置であって、
入力装置と、
記憶装置と、
出力装置と、
前記設計データを前記記憶装置に記憶し、ユーザの前記入力装置からの指示に基づいて前記設計データを登録し、編集し、又は削除する処理を行い、当該処理結果を前記出力装置に出力する設計データ管理部と、
設計データを再利用向けに変換した抽象化設計データを前記記憶装置内に記憶及び編集する抽象化設計データ管理部と、
前記記憶装置に記憶されている前記設計データの内でユーザの前記入力装置からの識別子に合致する設計データから用語の親子関係と用語の兄弟関係とを取り出し、取り出した前記用語の親子関係と前記用語の兄弟関係とを用語のグラフ構造に変換することで再利用向け辞書データを生成する再利用向け辞書データ生成部と、
前記設計データを抽象化して前記抽象化設計データを生成する際に利用され、且つ、前記抽象化設計データを具体化して再利用される設計データを生成する際にも利用される前記再利用向け辞書データを前記記憶装置内に記憶及び編集する再利用向け辞書データ管理部と、
前記抽象化設計データ中の置換可能な変数の値を、前記再利用向け辞書データを探索して設定し、更に前記抽象化設計データ中の置換可能な変数を文字列に変換する設計データ具体化部とを備えることを特徴とする、
設計データ再利用支援装置。
【請求項２】
請求項１記載の設計データ再利用支援装置であって、
前記設計データは用語集を含んでおり、
前記用語集は複数の用語を有しており、
前記複数の用語の各々は複数の別名を有しており、
前記再利用向け辞書データ生成部は、前記用語集より前記用語の兄弟関係を取り出すことを特徴とする、
設計データ再利用支援装置。
【請求項３】
請求項１又は２に記載の設計データ再利用支援装置であって、
前記設計データはクラス図を含んでおり、
前記クラス図は、設計モデリング言語ＵＭＬのクラス図であり、
前記再利用向け辞書データ生成部は、前記クラス図から前記用語間の親子関係を取り出すことを特徴とする、
設計データ再利用支援装置。
【請求項４】
請求項１乃至３の何れかに記載の設計データ再利用支援装置であって、
前記設計データ及び前記再利用向け辞書データが持つデータ構造をグループ化することで前記抽象化設計データを作成し、且つ、グループ化された再利用向け辞書データに含まれる用語がグループ化された設計データ中に現れるときに、当該設計データ中に現れる前記用語の出現箇所を、置換可能な変数とし、当該変数の値を前記再利用向け辞書データの前記用語のグラフ構造の代表用語に設定する抽象化設計データ生成部を更に備えることを特徴とする、
設計データ再利用支援装置。
【請求項５】
請求項４記載の設計データ再利用支援装置であって、
ユーザの前記入力装置からの検索キーワードに基づいて、再利用向けに前記記憶装置内に記憶されている各抽象化設計データの内で、当該抽象化設計データに於けるグループ化された再利用向け辞書データの辞書用語あるいは別名辞書用語を検索し、前記検索キーワードと前記辞書用語あるいは前記別名辞書用語とが一致した抽象化設計データを、ユーザにより選択された抽象化設計データとして、前記出力装置に表示する抽象化設計データ検索部を更に備えることを特徴とする、
設計データ再利用支援装置。
【請求項６】
請求項４又は５に記載の設計データ再利用支援装置であって、
ユーザの前記入力装置からのキーワードに基づいて、前記抽象化設計データに於けるグループ化された再利用向け辞書データに前記キーワードに対応する前記辞書用語あるいは前記別名辞書用語を追加する再利用向け辞書データ編集部を更に備えており、
前記設計データ具体化部は、前記抽象化設計データ中の置換可能な変数の値を、前記抽象化設計データに於いてグループ化され且つ前記再利用向け辞書データ編集部により編集された再利用向け辞書データを探索して設定することを特徴とする、
設計データ再利用支援装置。
【請求項７】
ソフトウェア開発の成果物である設計データの再利用を支援するための設計データ再利用支援プログラムであって、
前記設計データを記憶装置に記憶し、ユーザの入力装置からの指示に基づいて前記設計データを登録し、編集し、又は削除する処理を行い、当該処理結果を出力装置に出力する設計データ管理処理と、
設計データを再利用向けに変換した抽象化設計データを前記記憶装置内に記憶及び編集する抽象化設計データ管理処理と、
前記記憶装置に記憶されている前記設計データの内でユーザの前記入力装置からの識別子に合致する設計データから用語の親子関係と用語の兄弟関係とを取り出し、取り出した前記用語の親子関係と前記用語の兄弟関係とを用語のグラフ構造に変換することで再利用向け辞書データを生成する再利用向け辞書データ生成処理と、
前記設計データを抽象化して前記抽象化設計データを生成する際に利用され、且つ、前記抽象化設計データを具体化して再利用される設計データを生成する際にも利用される前記再利用向け辞書データを前記記憶装置内に記憶及び編集する再利用向け辞書データ管理処理と、
前記抽象化設計データ中の置換可能な変数の値を、前記再利用向け辞書データを探索して設定し、更に前記抽象化設計データ中の置換可能な変数を文字列に変換する設計データ具体化処理とを、
コンピュータに実行させることを特徴とする、
設計データ再利用支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、あるソフトウェア開発の設計データを蓄積しておいて、別のソフトウェア開発で再利用する作業を支援するための設計データ再利用支援装置に関する。
【背景技術】
【０００２】
従来の設計データ再利用支援装置に於いては、設計データと検索用メタデータとを関連付けて蓄積しておき、検索用メタデータを用いて検索を行うことで設計データを発見することを支援する（例えば特許文献１参照。）。
【０００３】
【特許文献１】特開２００６−３５０８５１号公報（５頁３５行〜６頁１行、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この様な設計データ再利用支援装置は、設計データの検索性を向上させることを考慮しており、検索結果の設計データの再利用容易性については考慮していないという問題点があった。即ち、従来の設計データ再利用支援装置に於いては、検索結果の設計データを無修正で再利用出来るか否かは、その設計データの作成者の設計能力に負っているという問題点があった。しかも、検索結果の設計データを無修正で再利用出来ない場合に、どの箇所を修正すれば設計データに内部矛盾を起こさずに検索結果の設計データを再利用出来るのかが不明であるという問題点があった。
【０００５】
この発明は、上記の問題点を解決するために成されたものであり、設計データの再利用容易性を向上させる設計データ再利用支援装置を得ることを、その目的としている。
【課題を解決するための手段】
【０００６】
本発明の主題に係る設計データ再利用支援装置は、ソフトウェア開発の成果物である設計データの再利用を支援する設計データ再利用支援装置であって、入力装置と、記憶装置と、出力装置と、前記設計データを前記記憶装置に記憶し、ユーザの前記入力装置からの指示に基づいて前記設計データを登録し、編集し、又は削除する処理を行い、当該処理結果を前記出力装置に出力する設計データ管理部と、設計データを再利用向けに変換した抽象化設計データを前記記憶装置内に記憶及び編集する抽象化設計データ管理部と、前記記憶装置に記憶されている前記設計データの内でユーザの前記入力装置からの識別子に合致する設計データから用語の親子関係と用語の兄弟関係とを取り出し、取り出した前記用語の親子関係と前記用語の兄弟関係とを用語のグラフ構造に変換することで再利用向け辞書データを生成する再利用向け辞書データ生成部と、前記設計データを抽象化して前記抽象化設計データを生成する際に利用され、且つ、前記抽象化設計データを具体化して再利用される設計データを生成する際にも利用される前記再利用向け辞書データを前記記憶装置内に記憶及び編集する再利用向け辞書データ管理部と、前記抽象化設計データ中の置換可能な変数の値を、前記再利用向け辞書データを探索して設定し、更に前記抽象化設計データ中の置換可能な変数を文字列に変換する設計データ具体化部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の主題によれば、設計データを再利用時の修正箇所が明確化された形式である抽象化設計データに変換して記憶装置内に蓄積することが出来、再利用時には抽象化設計データの指定された修正箇所に修正を施す形で設計データを具体化して利用者に提示することが出来る。
【０００８】
以下、この発明の主題の様々な具体化を、添付図面を基に、その効果・利点と共に、詳述する。
【発明を実施するための最良の形態】
【０００９】
（実施の形態１）
本実施の形態の特徴点は、「設計データから再利用向け辞書データを生成し、再利用向け辞書データを用いて設計データを再利用向けに変換して抽象化設計データとし、再利用向け辞書データを用いて抽象化設計データを具体化して設計データを得ることで設計データの再利用を行う」点にある。
【００１０】
図１のブロック図に示す本実施の形態に係る設計データ再利用支援装置１は、ソフトウェア開発の成果物である設計データの再利用を支援する装置であり、例えばパーソナルコンピュータより成る。大要、設計データ再利用支援装置１は、ＣＰＵをその中核的構成要素とする中央処理制御装置１０、記憶装置２０、入力装置３０及び出力装置４０を備えている。図１には図示されていないが、設計データ再利用支援装置１は、ＲＯＭを更に備えている。設計データ再利用支援装置１の各装置は、バスを介して接続されている。
【００１１】
中央処理制御装置１０は、入力装置３０からの入力信号に基づいて、ＲＯＭから設計データ再利用支援装置１を起動するためのブートプログラムを読み出して実行し、更に記憶装置２０内に記憶されたオペレーティングシステム（ＯＳ）を読み出す。更に中央処理制御装置１０は、入力装置３０からの入力信号に基づいて、記憶装置２０に記憶されているプログラム及びデータを読み出して、中央処理制御装置１０内のＣＰＵのレジスタであるＲＡＭ５０にロードすると共に、記憶装置２０から読み出したプログラムのコマンドに基づいて、データの計算又は加工等、後述する一連の処理を実現する。以下、設計データ再利用支援装置１内の各構成要素の構成及び動作について記載する。
【００１２】
入力装置３０は、操作者が各種の操作を入力するキーボード又はマウス等の入力デバイスにより構成されており、操作者の操作に基づいて入力信号を生成し、バスを介して入力信号を中央処理制御装置１０に送信する。
【００１３】
出力装置４０は、ＣＲＴディスプレイ又は液晶ディスプレイ等の表示装置より成り、中央処理制御装置１０からバスを介して出力装置４０に於いて表示させる出力信号を受信して、例えば中央処理制御装置１０の処理結果等をその画面上に表示する。
【００１４】
記憶装置２０は、例えば半導体記憶装置又は磁気ディスク装置より構成されており、中央処理制御装置１０のＣＰＵによって実行されるプログラム及びデータを記憶している。即ち、記憶装置２０内には、中央処理制御装置１０のＣＰＵによって実行される「設計データ再利用支援プログラム」が記憶されていると共に、図１に示す様に、設計データ２１、再利用向け辞書データ２２、及び抽象化設計データ２３がそれぞれ記憶装置２０内の対応する格納領域に記憶されている。以下では、各データ２１，２２，２３について詳述する。
【００１５】
先ず、設計データ２１は、システム又はソフトウェアの開発をする際に作成する成果物であって、設計モデリング言語ＵＭＬと自然言語とを用いて作成される。設計データ２１は、用語集、ユースケース図、ユースケースシナリオ、クラス図、状態遷移図、アーキテクチャ仕様、テストシナリオ等の様々な成果物を含み得るが、再利用向け辞書データ２２及び抽象化設計データ２３を構成するために、設計データ２１は、用語集、ユースケースシナリオ、及びクラス図を必ず含むものとし、更に、用語集、ユースケースシナリオ、及びクラス図に対しては、以下に記載する様な制約が課される。
【００１６】
即ち、設計データ２１を構成する用語集は、図２に示すデータ構造を持つ。用語集は複数の用語を持ち、用語は、属性変数として、用語ＩＤ、用語名称、用語説明を持つ。用語は複数の別名を持ち、別名は、属性変数として、別名ＩＤ及び別名名称を持つ。
【００１７】
又、設計データ２１を構成するユースケースシナリオは、図３に示すデータ構造を持つ。ユースケースシナリオは、属性変数として、ユースケースＩＤ、ユースケース名称、及びアクター名称を持ち、１つの基本系列と０個以上複数個の代替系列と０個以上複数個の例外系列とを持つ。そして、基本系列、代替系列、及び例外系列は、共に、複数のユースケースステップを持つ。ユースケースステップは、属性変数として、ステップ順序、アクター名称、及びステップ記述を持つ。ここで、図４は、インターネットを用いた通信販売で商品を購入する場合のユースケースシナリオを示す一例である。この例では、代替系列を一つ持つユースケースシナリオの例が示されている。この例の用語集が持つ用語は、例えば、（商品、カート、購入、確定、送料、購入金額、配送方法）等が考えられる。又、（カート）の別名として（ショッピングカート）が、（配送方法）の別名として（配送）が、各々考えられる。
【００１８】
又、設計データ２１を構成するクラス図は、設計モデリング言語ＵＭＬのクラス図である。
【００１９】
次に、再利用向け辞書データ２２は、設計データ再利用支援装置１が、設計データ２１を構成する用語集、クラス図、及びユースケースシナリオから、抽象化設計データ２３を生成するために利用するデータ構造であって、図５に示す用語のグラフ構造を持つ。図５に示す様に、再利用向け辞書は、属性変数として、再利用向け辞書ＩＤ、再利用向け辞書名称を持ち、複数個の辞書用語を持つ。辞書用語は、属性変数として、辞書用語ＩＤ、辞書用語名称、及び辞書用語説明を持ち、複数個の別名辞書用語を持つ。別名辞書用語は、属性変数として、別名辞書用語ＩＤと別名辞書用語名称とを持つ。ある別名辞書用語のデータからは、originalという名前の関連端をたどることで、対応する辞書用語のデータを得ることが出来る。更に、辞書用語間はparent-childという関連で結合されており、ある辞書用語からは、parentという名前の関連端をたどることで、parent関係にある辞書用語を得ることが出来、childという名前の関連端をたどることで、child関係にある辞書用語を得ることが出来る。辞書用語は、辞書用語名称に示されるある概念を表すものとし、辞書用語Ａが表す概念が、辞書用語Ｂが表す概念を一般化したものである場合には、辞書用語Ａとchild関係にあるのが辞書用語Ｂとなり、辞書用語Ｂとparent関係にあるのが辞書用語Ａとなる。辞書用語Ａが表す概念の言い換えが、辞書用語Ａが持つ別名辞書用語である。
【００２０】
ある再利用向け辞書データが与えられ、辞書用語Ａが指定されたとき、指定された辞書用語のparent関係にある辞書用語を抽出し、抽出した辞書用語に対してもparent関係にある辞書用語を抽出し、この操作をparent関係にある辞書用語が抽出できなくなるまで繰り返したときに抽出されている辞書用語を、辞書用語Ａの「代表用語」と呼ぶ。又、別名辞書用語Ｂが指定されたとき、指定された別名辞書用語のoriginal関係にある辞書用語の代表用語を別名辞書用語Ｂの「代表用語」と呼ぶ。
【００２１】
再利用向け辞書データ２２の構造を用いて行う典型的な処理とは、ある概念が文字列で与えられたときに、既存の再利用向け辞書データ２２を検索し、辞書用語名称あるいは別名用語名称が与えられた文字列に合致する辞書用語あるいは別名辞書用語を抽出し、抽出したものが別名辞書用語であるならば、そのoriginal関連端をたどって辞書用語を特定し、更にそこからparent関連端をたどって辞書用語を特定し、このparent関連端をたどるといった処理を繰り返すことで、与えられた概念をより一般化された概念へと変換していく処理である。
【００２２】
次に、抽象化設計データ２３は、設計データ再利用支援装置１が設計データ２１の再利用のために保持するデータ構造であって、図６に示す様に、設計データ２１及び再利用向け辞書データ２２が持つデータ構造をグループ化して、それらに対して、パラメータ化ユースケースシナリオという独自のデータ構造を付加したものである。図６に示す用語集は、図２に示した用語集である。又、図６に示すクラス図は、前述した設計データ２１に含まれるクラス図である。図６に示す再利用向け辞書データは、図５に示した再利用向け辞書データである。図６に示すパラメータ化ユースケースシナリオは、図７に示すデータ構造を持ち、このデータ構造は、図３のユースケースシナリオの属性変数であるユースケース名称及びアクター名称と、図３のユースケースステップの属性変数であるアクター名称及びステップ記述とを、図８に示すパラメータ化文字列というデータ構造で以って表現する様に変更したものである。
【００２３】
設計データ再利用支援装置１の中央処理制御装置１０のＣＰＵは、記憶装置２０より設計データ再利用支援プログラムを読み込んで、当該プログラムをＯＳと共に実行する。この設計データ再利用支援プログラムの実行により、図１に示す様に、入力制御部１１、出力制御部１２、制御部１３、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、抽象化設計データ生成部１８、設計データ具体化部１９の各々が、設計データ再利用支援装置１内のハードウェアと連携して機能する機能部分として、実装される。以下に、設計データ再利用支援プログラムによってその動作が制御される各機能部分の説明を行なう。
【００２４】
入力制御部１１は、ユーザ（操作者）による入力装置３０の操作により取得された入力情報を制御部１３に出力する。
【００２５】
他方、出力制御部１２は、制御部１３から出力された出力情報を出力装置４０に表示し、その出力情報をユーザに閲覧させる。
【００２６】
制御部１３は、入力制御部１１、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、抽象化設計データ生成部１８及び設計データ具体化部１９からの各入力情報を受け取り、入力情報に含まれるステータスに応じて、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、抽象化設計データ生成部１８及び設計データ具体化部１９に情報を入力する。又、制御部１３は、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、抽象化設計データ生成部１８及び設計データ具体化部１９の何れかで生成された出力情報を受け取り、出力制御部１２に入力する。加えて、制御部１３は、再利用向け辞書データ生成部１６が生成した再利用向け辞書データ２２を受信して再利用向け辞書データ管理部１５へ送信し、再利用向け辞書データ管理部１５は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する格納領域に再利用向け辞書データ２２を記憶する。更に加えて、制御部１３は、抽象化設計データ生成部１８が生成した抽象化設計データ２３を受信して抽象化設計データ管理部１７へ送信し、抽象化設計データ管理部１７は、記憶装置２０にアクセス（アドレス指定）して、抽象化設計データ２３を記憶装置２０内の対応する格納領域に記憶する。
【００２７】
設計データ管理部１４は、入力装置３０、入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、設計データ２１を登録し、編集し、或いは削除する。具体的には、（１）ユーザが入力装置３０を用いて設計データ２１の「登録」を選択し指示した場合を考える。このとき、設計データ管理部１４は、新たな設計データ２１の識別子を採番して、当該識別子を制御部１３及び出力制御部１２を介して出力装置４０に表示することで当該識別子をユーザに認識させると共に、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する格納領域に、入力装置３０から入力された新たな設計データ２１と採番した上記識別子とを、当該識別子と新たな設計データ２１とを対応付ける様に記憶する。（２）これに対して、ユーザが入力装置３０を用いて設計データ２１の「編集」（設計データの取り出し）を選択し指示して来た場合には、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する設計データ用の格納領域から、入力装置３０から入力された識別子に合致する設計データ２１を抽出して、抽出した設計データ２１を、制御部１３及び出力制御部１２を介して、出力装置４０に表示する。そして、ユーザは、出力装置４０に表示された取り出し対象の設計データ２１に対して編集処理を行う。その後、ユーザが、入力装置３０を用いて、編集後の設計データの保存（戻し）を選択し、設計データの識別子と編集後の設計データとを入力した場合には、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する設計データ用の格納領域から、入力された設計データの識別子に合致する設計データ２１を読み出し、読み出した設計データ２１を入力された編集後の設計データ２１に置き換えて、置き換えた後の設計データ２１を、再び記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する設計データ用の格納領域に格納する。（３）他方、設計データの削除がユーザにより選択された場合には、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、入力装置３０から入力された識別子に合致する設計データ２１を、記憶装置２０内の対応する設計データ用の格納領域から削除する。
【００２８】
再利用向け辞書データ管理部１５は、入力装置３０、入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、再利用向け辞書データを登録し、編集し、或いは削除する。具体的には、（１）ユーザが入力装置３０を用いて再利用向け辞書データの「登録」を選択しその旨の指示を入力信号として入力した場合に、再利用向け辞書データ管理部１５は、新たな再利用向け辞書データの識別子を採番して、当該新たな再利用向け辞書データの識別子を、制御部１３及び出力制御部１２を介して出力装置４０に表示することで当該識別子をユーザに認識させると共に、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する再利用向け辞書データ用の格納領域に、再利用向け辞書データ生成部１６で生成されて同部１６より制御部１３を介して取得した再利用向け辞書データ２２と採番した新たな再利用向け辞書データ２２の識別子とを、当該識別子と新たな再利用向け辞書データ２２とを対応付けた上で、記憶する。（２）これに対して、ユーザが入力装置３０を用いて再利用向け辞書データ２２の「編集」（取出し）を選択して指示して来た場合には、再利用向け辞書データ管理部１５は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する再利用向け辞書データ用の格納領域から、入力装置３０より入力された識別子に合致する再利用向け辞書データ２２を読み出して（抽出）、制御部１３及び出力制御部１２を介して、出力装置４０に、抽出後の再利用向け辞書データ２２を表示させる。そして、ユーザは出力装置４０に表示された再利用向け辞書データ２２の編集処理を行い、その後に入力装置３０を用いて、編集後の再利用向け辞書データ２２の保存（戻し）を選択し、編集後の再利用向け辞書データ２２と再利用向け辞書データの識別子とを入力した場合には、再利用向け辞書データ管理部１５は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する再利用向け辞書データ用の格納領域から、入力された再利用向け辞書データの識別子に合致する再利用向け辞書データ２２を取り出し、取り出した再利用向け辞書データ２２を入力された編集後の再利用向け辞書データ２２に置き換えた上で、再び記憶装置２０にアクセス（アドレス指定）して、置換後の再利用向け辞書データ２２を、記憶装置２０内の対応する再利用向け辞書データ用の格納領域に格納する。（３）他方、ユーザが再利用向け辞書データ２２の削除を選択した場合には、再利用向け辞書データ管理部１５は、記憶装置２０にアクセス（アドレス指定）して、入力装置３０から入力された識別子に合致する再利用向け辞書データ２２を記憶装置２０内の対応する再利用向け辞書データ用の格納領域から削除する。
【００２９】
再利用向け辞書データ生成部１６は、次の通りに機能する。先ず、ユーザから再利用向け辞書データ生成のために入力装置３０及び入力制御部１１を介して制御部１３に設計データの識別子が入力された場合に、先ず、制御部１３は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する設計データ用の格納領域から、入力された設計データの識別子に合致する用語集及びクラス図を抽出し、抽出した用語集及びクラス図のデータを再利用向け辞書データ生成部１６に送信する。斯かるデータを受信した再利用向け辞書データ生成部１６は、（１）用語集からは用語の兄弟関係を取り出し、（２）クラス図からは用語の親子関係を取り出して、用語の兄弟関係及び用語の親子関係を図５に示す用語のグラフ構造に変換することで再利用向け辞書データ２２を生成し、生成した再利用向け辞書データ２２を制御部１３に送信する。斯かる再利用向け辞書データ２２を受信した制御部１３は、再利用向け辞書データ生成部１６によって生成された再利用向け辞書データ２２を再利用向け辞書データ管理部１５に送信する一方、出力制御部１２を介して再利用向け辞書データ生成部１６によって生成された再利用向け辞書データ２２を出力装置４０に表示させる。
【００３０】
抽象化設計データ管理部１７は、入力装置３０、入力制御部１１及び制御部１３を介して入力されたユーザからの入力指示に基づいて、抽象化設計データを登録し、編集し、或いは削除する。具体的には、（１）ユーザが入力装置３０を用いて抽象化設計データ２３の「登録」を選択し指示して来た場合には、抽象化設計データ管理部１７は、新たな抽象化設計データの識別子を採番して、当該新たな抽象化設計データの識別子を制御部１３及び出力制御部１２を介して出力装置４０に表示してユーザに当該識別子を認識させると共に、抽象化設計データ生成部１８で生成された抽象化設計データ２３を、制御部１３による抽象化設計データ生成部１８からの抽象化設計データ２３の取り出し処理及び制御部１３から抽象化設計データ管理部１７への取り出した抽象化設計データ２３の送信処理を介して、抽象化設計データ生成部１８より取得した上で、その後に、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する抽象化設計データ用の格納領域に、当該新たな抽象化設計データの識別子及び抽象化設計データ生成部１８で生成された抽象化設計データ２３を、格納する。（２）これに対して、ユーザが抽象化設計データ２３の編集、即ち、検索（ユーザは取り出した抽象化設計データ２３を画面上で見るだけの処理である。）を選択して指示した場合には、抽象化設計データ管理部１７は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する抽象化設計データ用の格納領域より、入力装置３０から入力された識別子に合致する抽象化設計データ２３を抽出して、抽出した抽象化設計データ２３を、制御部１３及び出力制御部１２を介して、出力装置４０に表示する。（３）他方、ユーザが抽象化設計データ２３の削除を選択し指示した場合には、抽象化設計データ管理部１７は、記憶装置２０にアクセス（アドレス指定）して、入力装置３０から入力された識別子に合致する抽象化設計データ２３を、記憶装置２０内の対応する抽象化設計データ用の格納領域より削除する。
【００３１】
抽象化設計データ生成部１８は、抽象化設計データを新規に作成する部分である。先ず、ユーザから抽象化設計データの作成指令と共に入力装置３０及び入力制御部１１を介して入力された識別子を受信した制御部１３は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する設計データ用の格納領域より、入力装置３０から入力された識別子に合致する設計データ２１を検索し、当該設計データ２１内に含まれる用語集、クラス図及びユースケースシナリオを読み出して、当該検索により得られた用語集、クラス図及びユースケースシナリオの各々を抽象化設計データ生成部１８に送信する。この送信信号を受けて、抽象化設計データ生成部１８は、当該検索により得られた用語集、クラス図及びユースケースシナリオの各々を抽象化設計データ２３に加える。更に、制御部１３は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の対応する再利用向け設計データ用の格納領域より、入力装置３０から入力された識別子に合致する再利用向け辞書データ２２を検索し、検索対象の再利用向け辞書データ２２内の再利用向け辞書データ２３を読み出して、当該検索により得られた再利用向け辞書データ２３を抽象化設計データ生成部１８に送信する。この送信信号を受けて、抽象化設計データ生成部１８は、当該検索により得られた再利用向け辞書データ２２を、用語集、クラス図及びユースケースシナリオが既に加えられている抽象化設計データ２３に追加する。そして、抽象化設計データ生成部１８は、再利用向け辞書データ２３に含まれる用語がユースケースシナリオ中に現れるときには、その出現箇所を、置換可能な変数とし、その変数の値を再利用向け辞書データ２２の用語のグラフ構造（図５）の代表用語に設定することで得られるパラメータ化されたユースケースシナリオを抽象化設計データ２３に加える。その上で、抽象化設計データ生成部１８は、新規に作成された抽象化設計データ２３を、制御部１３及び出力制御部１２を介して、出力装置４０に表示する。
【００３２】
設計データ具体化部１９は、設計データの再利用時に、抽象化設計データ２３の指定された修正箇所に修正を施して抽象化設計データ２３を具体化し、具体化された設計データをユーザに提示する機能を呈する部分である。具体的には、制御部１３は、ユーザから入力装置３０及び入力制御部１１を介して入力された抽象化設計データ２３の識別子を受信し、斯かる識別子に基づいて、記憶装置２０にアクセス（アドレス指定）し、記憶装置２０内の対応する抽象化設計データ用の格納領域より、入力装置３０から入力された識別子に合致する抽象化設計データ２３を抽出し、抽出した抽象化設計データ２３を設計データ具体化部１９に送信する。斯かる抽象化設計データ２３を入力された設計データ具体化部１９は、入力装置３０から入力制御部１１及び制御部１３を介して入力された「選択された辞書用語あるいは別名辞書用語」に基づいて、抽象化設計データ２３中の置換可能な変数の値を、抽象化設計データ２３中の再利用向け辞書データ２２を探索することで設定し、更に抽象化設計データ２３中の置換可能な変数を文字列に変換し、変換後の具体化された抽象化設計データ２３を制御部１３及び出力制御部１２を介して出力装置４０に表示させる。
【００３３】
次に、図９〜図１４の各図面を参照して、本実施の形態に係る設計データ再利用支援プログラムによる制御の下で作動する設計データ再利用支援装置１の動作について記載する。
【００３４】
図９は、設計データ再利用支援プログラムの制御の下で作動する設計データ再利用支援装置１の動作の概要を記載するフローチャートである。先ず、ステップＳ１に於いて、制御部１３は全体メニューを表示部４０の画面上に表示する。次に、ステップＳ２に於いて、制御部１３は、ユーザにより入力装置３０から入力されたメニュー選択情報に基づいて、以後の処理Ｓ３〜Ｓ５を振り分ける。具体的には、（１）制御部１３及び設計データ管理部１４の作動によるステップＳ３の設計データ２１の登録/編集/削除の処理、（２）制御部１３、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、及び抽象化設計データ生成部１８の作動によるステップＳ４の設計データ２１の再利用登録の処理、（３）制御部１３、設計データ具体化部１９、再利用向け辞書データ管理部１５、抽象化設計データ管理部１７の作動によるステップＳ５の設計データ２１の再利用の処理の、何れかが実行される。各処理Ｓ３〜Ｓ５の詳細については、図１０〜図１４の各図面を参照して後述する。
【００３５】
ステップＳ３，Ｓ４，Ｓ５の何れかの処理が完了すると、ステップＳ６に於いて、制御部１３は、処理を繰り返すかのメニューを表示部４０の画面上に表示し、ユーザにより入力装置３０から入力されたメニュー選択情報に基づいて、処理の継続が選択されていれば、ステップＳ１に戻り、処理の終了が選択されていれば、制御部１３は、全体の処理を終了させる。
【００３６】
ここで、図１０は、図９のステップＳ３を、即ち、制御部１３及び設計データ管理部１４の作動による設計データ２１の登録/編集/削除の処理を示すフローチャートである。
【００３７】
先ず、ステップＳ３０１に於いて、制御部１３は、出力装置４０の画面上にメニューを表示する。このメニューには、「設計データの登録」、「設計データの編集」、及び「設計データの削除」が含まれている。
【００３８】
ステップＳ３０２に於いて、制御部１３は、画面上のメニューを見たユーザによって入力装置３０からメニューが選択されると、次の処理に進む。
【００３９】
（Ａ）ステップＳ３０２に於いて、制御部１３は、「設計データの登録」が選択されたと判定する場合：
ステップＳ３０３に於いて、制御部１３は、設計データ２１中の何れの登録が選択されたかを判定する。「用語集の登録」が選択された場合には、制御部１３は、設計データ管理部１４を作動させ、設計データ管理部１４は、図２で示したデータ構造に基づいて用語集の雛形を生成し、当該用語集の雛形を新規な設計データ２１として出力装置４０の画面上に表示する。これに対して、「ユースケースシナリオの登録」が選択された場合には、制御部１３は、設計データ管理部１４を作動させ、設計データ管理部１４は、図３で示したデータ構造に基づいて、ユースケースシナリオの雛形を生成し、当該ユースケースシナリオの雛形を新規な設計データ２１として出力装置４０の画面上に表示する。更に、選択された設計データ２１の登録がクラス図であった場合には、制御部１３は、記憶装置２０内に記憶されている、例えば市販のＵＭＬ編集ツールを起動して起動結果を出力装置４０の画面上に表示する。又、それ以外の、例えば状態遷移図、シーケンス図、アーキテクチャ仕様、コンポーネント仕様等のシステム又はソフトウェアの開発をする際に作成する成果物を設計データ２１として登録しても良いが、その場合には設計データ２１の雛形は生成されず、制御部１３は、その設計データを編集するのに適した専用の編集ツール（記憶部２０内に記憶されている。）を起動して、起動結果を出力装置４０の画面上に表示する。尚、本実施の形態で示す用語集、ユースケースシナリオ、及びクラス図以外の定義方法、編集方法、及び保存方法は、本発明の範囲外である。
【００４０】
ステップＳ３０４に於いて、ユーザが出力装置４０の画面上に表示された用語集の雛形等のフォーマットを埋めるべく入力装置３０から設計データ２１の内容を入力すると、設計データ管理部１４は、用語集等の雛形のフォーマットが全て埋められた否かをチェックし、設計データ２１の雛形のフォーマットが図２又は図３で示したデータ構造に従って全て埋まって完成するまで、設計データ２１の内容が入力され続ける。そして、設計データ管理部１４は、設計データ２１の雛形のフォーマットが全て埋まって完成したと判断すると、次のステップに進む。
【００４１】
ステップＳ３０５に於いて、制御部１３による制御の下で、設計データ管理部１４は、完成した設計データ２１に対して設計データＩＤを発行して、出力装置４０にその設計データＩＤを表示させる。
【００４２】
次のステップＳ３０６に於いて、制御部１３による制御の下で、設計データ管理部１４は、設計データＩＤと完成された設計データ２１とを互いに対応付けた上で、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の設計データ用の格納領域内に、上記の設計データＩＤと完成された設計データ２１とを格納する。
【００４３】
（Ｂ）ステップＳ３０２に於いて、制御部１３は、「設計データの編集」が選択されたと判定する場合：
ステップＳ３０７に於いて、制御部１３による制御の下で、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の設計データ用の格納領域内に格納している全設計データ２１の設計データＩＤを読み出して設計データＩＤ一覧を、出力装置４０の画面上に表示する。
【００４４】
ステップＳ３０８に於いて、制御部１３は、設計データＩＤ一覧を見て編集対象の設計データ２１を選択したユーザによる入力装置３０からの入力情報より、或る設計データＩＤが選択されたものと判定すると、ステップＳ３０９に於いて、制御部１３は設計データ管理部１４を作動させて、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、選択された設計データＩＤに基づいて、編集対象の設計データ２１を検索し、該当する設計データ２１を抽出して、抽出した設計データ２１を出力装置４０の画面上に表示する。ここでも、本実施の形態で示す用語集、ユースケースシナリオ、及びクラス図以外の定義方法、編集方法、及び保存方法は、本発明の範囲外である。
【００４５】
ユーザは、出力装置４０の画面上に表示された編集対象の設計データ２１に対して、編集処理（編集内容の保存処理）を行う。即ち、ステップＳ３１０において、ユーザにより入力制御装置３０から保存すべき設計データ２１の内容が入力され、設計データ管理部１４は、出力装置４０に表示した設計データ２１の内容をユーザより入力された設計データ２１の内容に置換し、最終的に図２及び／又は図３で示したデータ構造に従って設計データ２１の編集が完了するまで設計データの内容を編集する処理（置換処理）を実行し、設計データ２１の編集が完了したことを判断すると、次のステップに進む。
【００４６】
ステップＳ３１１に於いて、制御部１３による制御の下、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、ステップＳ３０８で選択された設計データＩＤと、編集が完了した設計データ２１とを、記憶装置２０内の設計データ用の格納領域内に格納する。
【００４７】
（Ｃ）ステップＳ３０２に於いて、制御部１３は、「設計データの削除」が選択されたと判定する場合：
ステップＳ３１２に於いて、制御部１３は設計データ管理部１４を作動させ、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の設計データ用格納領域から、全設計データの設計データＩＤを読み出して設計データＩＤ一覧を作成した上で、当該設計データＩＤ一覧を出力装置４０に表示させる。
【００４８】
ステップＳ３１３に於いて、制御部１３は、入力装置３０からの入力でユーザにより或る設計データＩＤが選択されたと判定すると、ステップＳ３１４に於いて、制御部１３は設計データ管理部１４を作動させ、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、ユーザにより選択された設計データＩＤに基づいて記憶装置２０内の設計データ用格納領域内の設計データ２１を検索し、選択された設計データＩＤに該当する設計データ２１を設計データ用格納領域より抽出して、抽出された設計データ２１を出力装置４０に表示させる。そして、ステップＳ３１５に於いて、制御部１３は設計データ管理部１４を作動させて、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、該当する設計データ２１を記憶装置２０内の設計データ用格納領域から削除する。
【００４９】
ステップＳ３１６に於いて、制御部１３は、設計データ２１の登録/編集/削除の処理を繰り返すか否かのメニューを出力装置４０の画面上に表示し、入力されたメニュー選択情報に基づいて、処理の継続が選択されていれば、ステップＳ３０１に戻り、処理の終了が選択されていれば、設計データ２１の登録/編集/削除の処理を終了する。
【００５０】
図１１は、図９のステップＳ４の処理を、即ち、制御部１３、設計データ管理部１４、再利用向け辞書データ管理部１５、再利用向け辞書データ生成部１６、抽象化設計データ管理部１７、及び抽象化設計データ生成部１８の作動による設計データ２１の再利用登録の処理を示すフローチャートである。又、図１２は、図１１中のステップＳ４１０の処理の詳細を示すフローチャートであり、図１３は、図１１中のステップＳ４２０の処理の詳細を示すフローチャートである。
【００５１】
先ず、ステップＳ４０１に於いて、制御部１３は設計データ管理部１４を作動させ、設計データ管理部１４は、記憶装置２０にアクセス（アドレス指定）して、記憶装置２０内の設計データ用の格納領域に格納している全設計データ２１の設計データＩＤを読み出して設計データＩＤ一覧を作成した上で、当該設計データＩＤ一覧を出力装置４０の画面上に表示する。
【００５２】
次に、ステップＳ４０２に於いて、制御部１３は、記憶装置２０にアクセス（アドレス指定）して、ユーザによって入力装置３０から入力された設計データＩＤに基づいて、設計データＩＤに対応する設計データ２１を、記憶装置２０内の設計データ用の格納領域から選択する。このとき、初回の選択であれば、制御部１３は抽象化設計データ管理部１７を作動させ、抽象化設計データ管理部１７は、図６で示す構造に従って抽象化設計データ２３の雛形を生成し、制御部１３が選択した用語集、クラス図、及びユースケースシナリオを抽象化設計データ２３の雛形に追加する。尚、図６には、抽象化設計データ２３がユースケースシナリオを含むことを示してはいない。ステップＳ４０２に於いて、制御部１３による制御の下で抽象化設計データ管理部１７は、仮に抽象化設計データ２３の雛形にユースケースシナリオを追加しておいて、後述するステップＳ４２０に於いてユースケースシナリオをパラメータ化ユースケースシナリオに変換する。
【００５３】
ステップＳ４０３に於いて、制御部１３は、再利用したい設計データを複数個選択するための繰り返し処理を行う。この繰り返し処理により、複数の用語集、複数のクラス図、複数のユースケースシナリオを再利用対象として指定して抽象化設計データ２３の雛形に追加することが出来る。この繰り返し処理が終了すると、次のステップＳ４１０（図１２）に進む。
【００５４】
ステップＳ４１０は再利用向け辞書データ２２の生成を行う処理のフローであり、図１２を用いて詳細に記載する。上記の通りこの段階までの処理で既に抽象化設計データ２３の雛形が生成されており、その内部には、選択された用語集とクラス図とユースケースシナリオとが含まれている。ステップＳ４１１からステップＳ４１５までの処理で、図５で示したデータ構造を持つ再利用向け辞書データ２２が生成される。
【００５５】
先ず、ステップＳ４１１に於いて、制御部１３は、再利用向け辞書データ生成部１６を用いて、抽象化設計データ２３の雛形に含まれているクラス図から継承関係を除く関連の定義を削除する。このクラス図は、作業用クラス図として、図１のＲＡＭ５０（ＣＰＵのレジスタとして機能する。）中に保持される。
【００５６】
次に、ステップＳ４１２に於いて、制御部１３は、再利用向け辞書データ生成部１６を用いて、抽象化設計データ２３の雛形に含まれている作業用クラス図から属性の定義を削除する。
【００５７】
次に、ステップＳ４１３に於いて、制御部１３は、再利用向け辞書データ生成部１６を用いて、図５で示した構造を持つ再利用向け辞書データ２２の雛形を生成し、作業用クラス図を再利用向け辞書データ２２の辞書用語と辞書用語間のparent-child関係に変換することで、再利用向け辞書データ２２を作成する。
【００５８】
ここで、図１５は、作業用クラス図を、再利用向け辞書データ２２の辞書用語と辞書用語間のparent-child関係に変換する例を示している。作業用クラス図中のクラスＡは、再利用向け辞書データ２２の辞書用語Ａに変換される。又、作業用クラス図中のクラスＢは、再利用向け辞書データ２２の辞書用語Ｂに変換される。作業用クラス図中のクラスＡとクラスＢ間の継承関係は、再利用向け辞書データ２２の辞書用語Ａと辞書用語Ｂ間のparent-child関係に変換される。
【００５９】
ステップＳ４１４及びＳ４１５は再利用向け辞書データ２２の生成を行う処理の続きであり、ステップＳ４１３までで生成した再利用向け辞書データ２２に用語集の情報を追加する処理である。ステップＳ４１４に於いて、用語集の用語抽出/併合を行う。具体的には、制御部１３は、再利用向け辞書データ生成部１６を用いて、抽象化設計データ２３の雛形に含まれている用語集の各用語に対して、対応する辞書用語を生成し、生成した辞書用語を再利用向け辞書データ２２に追加する。このとき、既存の辞書用語があれば、再利用向け辞書データ生成部１６は何も行わない。次に、ステップＳ４１５に於いて、用語集からの別名抽出/併合を行う。具体的には、制御部１３は、再利用向け辞書データ生成部１６を用いて、抽象化設計データ２３の雛形に含まれている用語集の各別名に対して、対応する別名辞書用語を生成し、生成した別名辞書用語を再利用向け辞書データ２２に追加する。再利用向け辞書データ生成部１６は、用語集に於ける用語と別名との関係を、再利用向け辞書データ２２に於ける辞書用語と別名辞書用語との間のoriginal関係に変換する。
【００６０】
ステップＳ４１５の処理を終了すると、制御部１３は再利用向け辞書データ２２の生成処理（ステップＳ４１０）を終了し、再利用向け辞書データ管理部１５を用いて、生成された再利用向け辞書データ２２を記憶装置２０の再利用向け辞書データ用の格納領域内に記憶させた上で、図１１のステップＳ４０４を行う。
【００６１】
ステップＳ４０４に於いて、制御部１３は、生成された再利用向け辞書データ２２を、制御部１３の管理下にあるＲＡＭ５０中に格納されている抽象化設計データ２３の雛形に追加して、次のステップＳ４２０に進む。
【００６２】
ステップＳ４２０は抽象化設計データ２３の生成処理を行う処理フローであり、図１３を用いて、ステップＳ４２０に於ける動作を詳細に記載する。上記の通り、ここまでの段階の処理により、抽象化設計データ２３の雛形は生成されており、抽象化設計データ２３の雛形の内部には、選択された用語集とクラス図とユースケースシナリオが含まれており、更に、生成された再利用向け辞書データ２２が含まれている。ステップＳ４２１からＳ４２３までの処理を通じて、制御部１３は、抽象化設計データ２３の雛形の内部に、パラメータ化ユースケースシナリオを生成する。
【００６３】
先ず、ステップＳ４２１に於いて、制御部１３は抽象化設計データ生成部１８を作動させ、抽象化設計データ生成部１８は、ユースケースシナリオのパラメータ化を行う。抽象化設計データ生成部１８は、制御部１３より送信された抽象化設計データ２３の雛形に登録されている全てのユースケースシナリオに対して、ユースケースシナリオのデータをコピーして、パラメータ化ユースケースシナリオのデータを生成する。その際、抽象化設計データ生成部１８は、属性変数であるユースケース名称及びアクター名称のデータを、パラメータ化文字列に型変換する。そして、型変換されたパラメータ化文字列が、抽象化設計データ２３の雛形中の再利用向け辞書データ２２に含まれる辞書用語の辞書用語名称あるいは別名辞書用語の別名辞書用語名称を含んでいるならば、抽象化設計データ生成部１８は、パラメータ化文字列の該当部分をパラメータに置き換え、パラメータバリューとして一致した辞書用語あるいは別名辞書用語を設定する。次に、抽象化設計データ生成部１８は、ユースケースシナリオの基本系列、代替系列、例外系列のそれぞれのデータをコピーして、パラメータ化基本系列、パラメータ化代替系列、パラメータ化例外系列のデータを生成する。その際、各系列が持つユースケースステップの属性変数であるアクター名称及びステップ記述のデータを、パラメータ化文字列に型変換する。そして、型変換されたパラメータ化文字列が抽象化設計データ２３の雛形中の再利用向け辞書データ２２に含まれる辞書用語の辞書用語名称あるいは別名辞書用語の別名辞書用語名称を含んでいるならば、抽象化設計データ生成部１８は、パラメータ化文字列の該当部分をパラメータに置き換えて、パラメータバリューとして一致した辞書用語あるいは別名辞書用語を設定する。
【００６４】
次に、ステップＳ４２２に於いて、制御部１３は抽象化設計データ生成部１８を作動させ、抽象化設計データ生成部１８は、ステップＳ４２１で生成したパラメータ化ユースケースシナリオに対して、別名辞書用語の置換によるパラメータバリューの決定を行う。具体的には、ステップＳ４２１に於いて、抽象化設計データ生成部１８は、生成されたパラメータ化文字列のパラメータのパラメータバリューが別名辞書用語であるならば、抽象化設計データ２３の雛形中の再利用向け辞書データ２２を検索して当該別名辞書に対してoriginal関係にある用語辞書を抽出し、それを新しいパラメータバリューとする。
【００６５】
次に、ステップＳ４２３に於いて、制御部１３は同部１３の制御の下で抽象化設計データ生成部１８を引き続いて作動させ、抽象化設計データ生成部１８は、ステップＳ４２１からステップＳ４２２までで生成したパラメータ化ユースケースシナリオに対して、抽象化設計データ２３の雛形中の再利用向け辞書データ２２のparent-child関係を利用したパラメータバリューの決定を行う。具体的には、抽象化設計データ生成部１８は、ステップＳ４２１とステップＳ４２２とで生成されたパラメータ化文字列のパラメータのパラメータバリューが辞書用語であって、それがparent関係にある別の辞書用語を持つならば、それを新しいパラメータバリューとし、この処理をparent関係にある別の辞書用語が抽出出来なくなるまで繰り返す。この繰り返し処理を通じて、抽象化設計データ２３の雛形は完成されて、抽象化設計データ２３が生成される。抽象化設計データ生成部１８は、生成された抽象化設計データ２３を制御部１３に送信する。
【００６６】
ステップＳ４２０の処理を終了すると、制御部１３は抽象化設計データ２３の生成処理を終了し、図１１のステップＳ４０５を実行する。ステップＳ４０５に於いて、制御部１３は抽象化設計データ管理部１７を作動させて、自己の管理下にあるＲＡＭ５０中に保持されている抽象化設計データ生成部１８から送信されて来た抽象化設計データ２３を抽象化設計データ管理部１７に送信する。その送信を受けて、抽象化設計データ管理部１７は、記憶装置２０をアクセス（アドレス指定）し、抽象化設計データ２３を、記憶装置２０内の抽象化設計データ用の格納領域内に格納し、設計データの再利用登録を終了する。
【００６７】
図１４は、制御部１３、設計データ具体化部１９、再利用向け辞書データ管理部１５、及び抽象化設計データ管理部１７の作動による設計データの再利用処理を示すフローチャートである。
【００６８】
先ず、ステップＳ５０１に於いて、制御部１３は同部１３の制御の下で抽象化設計データ管理部１７を作動させ、抽象化設計データ管理部１７は、記憶装置２０をアクセス（アドレス指定）し、記憶装置２０内の抽象化設計データ用の格納領域内に格納されている全抽象化設計データのＩＤを読み出して抽象化設計データのＩＤ一覧を作成した上で、当該抽象化設計データのＩＤ一覧を出力装置４０に表示させる。
【００６９】
ステップＳ５０２に於いて、制御部１３は、抽象化設計データのＩＤ一覧を見て選択したユーザによる入力装置３０からの指示に従って、抽象化設計データＩＤを選択する。
【００７０】
ステップＳ５０３に於いて、制御部１３は抽象化設計データ管理部１７を作動させて選択された抽象化設計データＩＤの情報を抽象化設計データ管理部１７へ送信し、抽象化設計データ管理部１７は、記憶装置２０をアクセス（アドレス指定）し、選択されたＩＤに基づいて、記憶装置２０内の抽象化設計データ用の格納領域から対応する抽象化設計データ２３を抽出して、抽出した抽象化設計データ２３を出力装置４０に表示させる。このとき、抽象化設計データ２３に含まれる再利用向け辞書データ２２も、出力装置４０に表示させる。
【００７１】
次のステップＳ５０４に於いて、制御部１３は、入力装置３０からの入力信号に基づく判定を行い、出力装置４０の画面上に表示された抽象化設計データ２３の中にユーザが再利用したいものが無い場合に該当する「やり直し」がユーザにより指定されたならば、ステップＳ５０１に戻って、抽象化設計データ２３の検索をやり直す。入力装置３０からの入力信号に基づく判定の結果、「やり直し」が指定されていなければ、制御部１３は、再利用に用いる抽象化設計データ２３が確定したと判断して、次のステップＳ５０５に進む。
【００７２】
ステップＳ５０５に於いて、制御部１３は、この時点で出力装置４０に表示されている再利用向け辞書データ２２に含まれる辞書用語あるいは別名辞書用語の情報からユーザが選択した辞書用語あるいは別名辞書用語の情報を、入力装置３０から入力信号として受け取る。
【００７３】
ステップＳ５０６に於いて、制御部１３は、同部１３の制御の下で設計データ具体化部１９を作動させて、選択した辞書用語あるいは別名辞書用語の情報を、確定した再利用用の抽象化設計データ２３と共に、設計データ具体化部１９に送信し、当該送信信号の受信に応じて、設計データ具体化部１９は、選択された辞書用語あるいは別名辞書用語によるパラメータ化ユースケースシナリオのパラメータバリューの決定を行う。設計データ具体化部１９は、ステップＳ５０５で選択された辞書用語あるいは別名辞書用語のルート辞書用語を抽出し、パラメータ化ユースケースシナリオが持つパラメータ化文字列のパラメータバリューが、抽出されたルート辞書用語と同一であった場合に、パラメータ化ユースケースシナリオを、選択された辞書用語あるいは別名辞書用語で置き換え、制御部１３は次のステップに進む。
【００７４】
ステップＳ５０７に於いて、制御部１３は、設計データ具体化部１９を用いて、ステップＳ５０１からＳ５０４までで選択された抽象化設計データ２３から設計データを生成する。具体的には、設計データ具体化部１９は、抽象化設計データ２３に含まれるパラメータ化ユースケースシナリオが持つ全てのパラメータ化文字列を文字列に変換することで、ユースケースシナリオを生成する。設計データ具体化部１９は、パラメータ化文字列を文字列に変換する処理に於いて、パラメータ化文字列のパラメータをパラメータバリューに設定されている辞書用語あるいは別名辞書用語の属性変数である辞書用語名称あるいは別名辞書用語名称に置き換える。
【００７５】
ステップＳ５０８に於いて、制御部１３は、生成された設計データを出力装置４０の画面上に表示し、設計データの再利用の処理を終了する。
【００７６】
上述した様に、本実施の形態に係る設計データ再利用支援装置１は、設計データの内で、用語集、ユースケースシナリオ、及びクラス図のデータ構造を再利用に適したデータ構造に定義し、再利用向け辞書データ生成部１６、再利用向け辞書データ管理部１５、抽象化設計データ生成部１８、及び抽象化設計データ管理部１７が、設計データ２１を再利用時の修正箇所が明確化された形に抽象化した抽象化設計データ２３として蓄積し、再利用時には、設計データ具体化部１９が抽象化設計データ２３の修正箇所に修正を施した形で設計データを具体化して利用者に提示することが出来る。このため、設計データ作成者の設計能力に依存しない形で再利用に適した設計データが得られ、更に、再利用に適した形式に変換された抽象化設計データ２３が本装置１内に於いて自動生成により得られ、設計データ２１の再利用時には設計データ２１の修正箇所が明確であり、設計データ２１の再利用容易性を向上させることが出来ると言う効果が得られる。
【００７７】
（実施の形態２）
図１６は、本実施の形態に係る設計データ再利用支援装置１Ａの構成を示すブロック図である。図１６中、図１と同一の参照符号を有する構成要素は同等の構成要素を示す。図１の構成要素と相違する点は、抽象化設計データ検索部３１を更に備えている点にある。
【００７８】
ここでは、再利用向け辞書データ２２の辞書用語或いは別名辞書用語がキーワードを用いて特定されているものとする。このとき、抽象化設計データ２３を選択する場合に、入力装置３０からユーザによって入力された検索キーワードに基づいて、制御部１３より送信された抽象化設計データ２３に含まれる再利用向け辞書データの辞書用語あるいは別名辞書用語を検索し、辞書用語あるいは別名辞書用語と検索キーワードとが一致した抽象化設計データ２３を出力装置４０に表示する抽象化設計データ検索部３１を備えていても良い。このときの処理のフローを、図１４を用いて記載する。
【００７９】
ステップＳ５０１からステップＳ５０４までは制御部１３は抽象化設計データ管理部１７を用いて、抽象化設計データ２３の検索を行い、入力装置３０からの入力信号に基づく判定の結果、やり直しが指定されていなければ、再利用に用いる抽象化設計データ２３が確定したと判断して、次のステップＳ５０５に進むが、この処理フローが、制御部１３、抽象化設計データ管理部１７及び抽象化設計データ検索部３１による抽象化設計データの検索に置き換えられ、抽象化設計データ２３が確定したステップＳ５０５以降の処理フローは実施の形態１の場合と同様である。
【００８０】
この構成によれば、別のソフトウェア開発に於いて設計データを再利用しようとして抽象化設計データ２３を検索する際に、単に抽象化設計データ管理部１７が既に記憶装置２０内の抽象化設計データ用格納領域に蓄積されている抽象化設計データ２３のＩＤの一覧を表示して抽象化設計データ２３の選択を促す以上の利便性が得られて検索性が向上し、しかも、検索性を向上させるためにメタ情報を整備するという付加的な作業も必要とせずに設計データの再利用が進む様になると言う利点が得られる。
【００８１】
（実施の形態３）
図１７は、本実施の形態に係る設計データ再利用支援装置１Ｂの構成を示すブロック図である。図１７中、図１と同一の参照符号を有する構成要素は同等の構成要素を示す。図１の構成要素と相違する点は、再利用向け辞書データカスタマイズ部３２を更に備えている点にある。本実施の形態では、再利用向け辞書データカスタマイズ部３２を用いて、ユーザにとって使いたい辞書用語或いは別名辞書用語を、抽象化設計データ２３に含まれる再利用向け辞書データ中に追加・編集する点に、その特徴点がある。
【００８２】
即ち、設計データ具体化部１９により抽象化設計データ２３を具体化して設計データを得る場合に、入力装置３０からのキーワードに基づいて、選択されている抽象化設計データ２３に含まれる再利用向け辞書データに辞書用語あるいは別名辞書用語を追加する「再利用向け辞書データカスタマイズ部３２」を設けても良い。このときの処理のフローを、図１４を用いて説明する。
【００８３】
ステップＳ５０５では、制御部１３は辞書用語/別名辞書用語の選択を行うが、本実施の形態では、再利用向け辞書データカスタマイズ部３２による再利用向け辞書データのカスタマイズ処理をステップＳ５０５の直前に挿入する。具体的には、ステップＳ５０４まででユーザが設計データの再利用に使用したい抽象化設計データ２３が確定しているので、当該抽象化設計データ２３に含まれる再利用向け辞書データに、再利用向け辞書データカスタマイズ部３２はユーザからのキーワードに対応した辞書用語或いは別名辞書用語を追加する。ステップＳ５０５以降の処理フローは、実施の形態１の場合と同様である。
【００８４】
尚、本実施の形態の構成を実施の形態２の構成に適用することも可能である。
【００８５】
以上に記載した本実施の形態の構成により、再利用向けに蓄積されている抽象化設計データ２３を具体化して設計データを生成する際に、ユーザが所望する用語を用いた修正を加えることが出来ると言う利点が得られる。
【００８６】
（付記）
尚、実施の形態１〜３では、抽象化設計データが設計データ再利用支援プログラムに基づいて中央処理制御装置１０によって自動的に生成される場合が記載されたが、この構成に代わって、ユーザ自身によって作成された上記のデータ構造を有する抽象化設計データが記憶装置２０内の該当格納領域内に格納される場合には、中央処理制御装置１０は、設計データ再利用支援プログラムに基づいて、図１４に示す処理を実行することとしても良い。この場合には、図１、図１６、及び図１７に示された構成要素の内で、抽象化設計データ生成部１８のみが不要となり、抽象化設計データ管理部１７は、設計データを再利用向けに変換した上記抽象化設計データを編集及び記憶する処理を行う。
【００８７】
以上、本発明の実施の形態を詳細に開示し記述したが、以上の記述は本発明の適用可能な局面を例示したものであって、本発明はこれに限定されるものではない。即ち、記述した局面に対する様々な修正や変形例を、この発明の範囲から逸脱することの無い範囲内で考えることが可能である。
【産業上の利用可能性】
【００８８】
本発明は、例えば、パーソナルコンピュータを用いた設計システム技術の分野に適用して好適である。
【図面の簡単な説明】
【００８９】
【図１】本発明の実施の形態１に係る設計データ再利用支援装置の構成を示すブロック図である。
【図２】実施の形態1に於ける用語集のデータ構造を示す図である。
【図３】実施の形態１に於けるユースケースシナリオのデータ構造を示す図である。
【図４】実施の形態１に於けるユースケースシナリオの例を示す図である。
【図５】実施の形態１に於ける再利用向け辞書データのデータ構造を示す図である。
【図６】実施の形態１に於ける抽象化設計データの構成を模式的に示す図である。
【図７】実施の形態１に於けるパラメータ化ユースケースシナリオのデータ構造を示す図である。
【図８】実施の形態１に於けるパラメータ化文字列の構成を示す図である。
【図９】実施の形態１に係る設計データ再利用支援プログラムの全体の処理を示すフローチャートである。
【図１０】実施の形態１に係る設計データ再利用支援プログラムの設計データの登録/編集/削除の処理を示すフローチャートである。
【図１１】実施の形態１に係る設計データ再利用支援プログラムの設計データの再利用登録の処理を示すフローチャートである。
【図１２】実施の形態１に係る設計データ再利用支援プログラムの再利用向け辞書データ生成処理を示すフローチャートである。
【図１３】実施の形態１に係る設計データ再利用支援プログラムの抽象化設計データ生成処理を示すフローチャートである。
【図１４】実施の形態１に係る設計データ再利用支援プログラムの設計データ再利用処理を示すフローチャートである。
【図１５】実施の形態１に係る設計データ再利用支援装置のデータ変換処理を示す図である。
【図１６】本発明の実施の形態２に係る設計データ再利用支援装置の構成を示すブロック図である。
【図１７】本発明の実施の形態３に係る設計データ再利用支援装置の構成を示すブロック図である。
【符号の説明】
【００９０】
１，１Ａ，１Ｂ  設計データ再利用支援装置、１０  中央処理制御装置、１１  入力制御部、１２  出力制御部、１３  制御部、１４  設計データ管理部、１５  再利用向け辞書データ管理部、１６  再利用向け辞書データ生成部、１７  抽象化設計データ管理部、１８  抽象化設計データ生成部、１９  設計データ具体化部、２０  記憶装置、２１  設計データ、２２  再利用向け辞書データ、２３  抽象化設計データ、３０  入力装置、４０  出力装置。
【図１】
2009151432.tif 000003
【図２】
2009151432.tif 000004
【図３】
2009151432.tif 000005
【図４】
2009151432.tif 000006
【図５】
2009151432.tif 000007
【図６】
2009151432.tif 000008
【図７】
2009151432.tif 000009
【図８】
2009151432.tif 000010
【図９】
2009151432.tif 000011
【図１０】
2009151432.tif 000012
【図１１】
2009151432.tif 000013
【図１２】
2009151432.tif 000014
【図１３】
2009151432.tif 000015
【図１４】
2009151432.tif 000016
【図１５】
2009151432.tif 000017
【図１６】
2009151432.tif 000018
【図１７】
2009151432.tif 000019