(57)【要約】【課題】異なるシステムで管理されている設計書を関連付けることで、設計書の管理を支援することを目的とする。【解決手段】設計管理支援プログラムは、機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定し、前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける、処理をコンピュータに実行させる。【選択図】図７
2015138490.tif 000002
【特許請求の範囲】
【請求項１】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定し、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける、
処理をコンピュータに実行させる設計書管理支援プログラム。
【請求項２】
関連付けられた前記プログラム書類と前記電子部品書類と前記機械部品書類との間に可視化したリレーションを設定した画面を表示する、
処理を前記コンピュータに実行させる請求項１記載の設計書管理支援プログラム。
【請求項３】
前記プログラム書類のキーワードを特定するときに、前記各プログラム書類のうち前記機械部品または前記電子部品を制御しないプログラムのプログラム書類を除外する、
処理を前記コンピュータに実行させる請求項１または２記載の設計書管理支援プログラム。
【請求項４】
前記電子部品書類または前記機械部品書類と前記プログラム書類とを関連付けるときに、前記各プログラム書類のうち前記機械部品または前記電子部品を制御しないプログラムのプログラム書類を除外する、
処理を前記コンピュータに実行させる請求項１乃至３のうち何れか１項に記載の設計書管理支援プログラム。
【請求項５】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各機械部品書類とを関連付ける、
処理をコンピュータに実行させる設計書管理支援プログラム。
【請求項６】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定し、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける、
設計書管理支援方法。
【請求項７】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各機械部品書類とを関連付ける、
設計書管理支援方法。
【請求項８】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定する第１の特定部と、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定する第２の特定部と、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定する第３の特定部と、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける第４の特定部と、
を備える設計書管理支援装置。
【請求項９】
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定する第１の特定部と、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定する第３の特定部と、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける第４の特定部と、
を備える設計書管理支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設計書管理プログラム、設計書管理方法および設計書管理装置に関する。
【背景技術】
【０００２】
例えば、制御システムは、機械部品や当該機械部品を制御する電子部品、当該電子部品の処理を実行させるプログラム等を含む。このような制御システムを開発する場合、機械部品や電子部品、プログラム等の設計書は、それぞれ電子データで管理される。
【０００３】
関連する技術として、ポート情報およびインスタンス情報に基づいて、複数のモジュールを相互に接続するように入力ポートと出力ポートとを対応付ける技術が提案されている。また、部品に実際に設けられた固定要素の個数を取得と固定要素の設けられるべき個数とが一致していないとその旨の情報を表示する技術が提案されている。
【０００４】
作成された図面間接続図ファイルの記載内容に従って複数の図面を概略化して一画面上に表示する論理図エントリ装置に関する技術が提案されている。機器３Ｄモデルの形状変更箇所を抽出し、機器３Ｄモデルに新規の寸法・配置パラメータとして格納し、新規の機器３Ｄモデルとして再利用する手段に関する技術が提案されている。編集フラグデータおよび他の図面オブジェクトとの図面間関係データを図面オブジェクトとして管理している技術が提案されている（例えば、特許文献１〜５参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】国際公開第ＷＯ２０１０／０３８３８７号
【特許文献２】特開２０１０−９３１４号公報
【特許文献３】特開２００３−２２２９４号公報
【特許文献４】特開２００８−２８７３００号公報
【特許文献５】特開平９−２６９５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
機械部品を設計するシステムと電子部品を設計するシステムとプログラムを設計するシステムとはそれぞれ異なる。従って、それぞれの設計書の電子データは異なるシステムで独自に管理される。
【０００７】
制御システムにおいて、機械部品と電子部品とプログラムとは相互に関連性を有する。従って、何れかの設計書に変更が生じたときには、他の設計書に影響が及ぼされることがある。例えば、プログラムの設計に変更が生じたときには、機械部品または電子部品の設計書に変更の影響が及ぼされる。
【０００８】
この点、機械部品の設計書と電子部品の設計書とプログラムの設計書とは、それぞれ異なるシステムで管理されている。従って、何れかのシステムで管理されている設計書が変更されたときに、当該変更によって影響を及ぼされる他のシステムの設計書を特定することは難しい。この影響を及ぼされる他のシステムの設計書を特定するための検証作業が煩雑になる。
【０００９】
本発明は、１つの側面では、異なるシステムで管理されている設計書を関連付けることで、設計書の管理を支援することを目的とする。
【課題を解決するための手段】
【００１０】
１つの案では、設計管理支援プログラムであって、機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定する。前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定する。前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定する。特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける。以上の処理をコンピュータが実行する。
【発明の効果】
【００１１】
異なるシステムで管理されている設計書を関連付けることで、設計書の管理を支援することができる。
【図面の簡単な説明】
【００１２】
【図１】システムの全体構成の一例を示す図である。
【図２】２つの機械部品の関連性の一例を示す図である。
【図３】設計書管理支援部の一例を示すブロック図である。
【図４】プログラム書類に関する処理の一例を示すフローチャートである。
【図５】電子部品書類に関する処理の一例を示すフローチャートである。
【図６】機械部品書類に関する処理の一例を示すフローチャートである。
【図７】書類データ間の関連を特定する処理の一例を示すフローチャートである。
【図８】表示部に表示される画面例（その１）である。
【図９】表示部に表示される画面例（その２）である。
【図１０】表示部に表示される画面例（その３）である。
【図１１】表示部に表示される画面例（その４）である。
【図１２】表示部に表示される画面例（その５）である。
【図１３】設計書管理支援装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１３】
＜システム構成の一例＞
以下、図面を参照して、実施形態について説明する。実施形態では、機械部品と電子部品とプログラムとの３種類の設計書の電子データの管理を支援する。以下、設計書の電子データを書類データと称することもある。また、機械部品の設計書を機械部品書類、電子部品の設計書を電子部品書類、プログラムの設計書をプログラム書類と称することもある。
【００１４】
機械部品の設計書は、機械部品の設計情報を記述した書類データである。電子部品の設計書は、電子部品の設計情報を記述した書類データである。プログラムの設計書は、プログラムの設計情報を記述した書類データである。これらの書類データは成果物と称されることもある。
【００１５】
プログラムの設計書には、機械部品を制御する設計情報や電子部品に所定の処理を実行させる設計情報等が記述されている場合がある。電子部品の設計書には、機械部品を制御する設計情報が記述されている場合がある。
【００１６】
実施形態では、機械部品と電子部品とプログラムとの３種類の書類データを管理の対象としているが、少なくとも機械部品の書類データとプログラムの書類データとが管理されればよい。
【００１７】
図１は、設計書管理支援を行うシステム１の一例を示している。システム１は、プログラム書類管理コンピュータ２と電子部品書類管理コンピュータ３と機械部品書類管理コンピュータ４と設計書管理支援コンピュータ５とを備えている。また、プログラム書類管理コンピュータ２と電子部品書類管理コンピュータ３と機械部品書類管理コンピュータ４と設計書管理支援コンピュータ５とはＬＡＮ（Local Area Network)６を介して接続されている。
【００１８】
プログラム書類管理コンピュータ２は、プログラム書類を管理している。電子部品書類管理コンピュータ３は、電子部品書類を管理している。機械部品書類管理コンピュータ４は、機械部品書類を管理している。図１の一例に示すように、プログラム書類と電子部品書類と機械部品書類とはそれぞれ異なるコンピュータで管理されている。
【００１９】
プログラムの設計を行うときには、プログラム書類管理コンピュータ２が用いられる。電子部品の設計を行うときには、電子部品書類管理コンピュータ３が用いられる。機械部品の設計を行うときには、機械部品書類管理コンピュータ４が用いられる。プログラム書類管理コンピュータ２と電子部品書類管理コンピュータ３と機械部品書類管理コンピュータ４とはそれぞれ異なるシステムである。
【００２０】
設計書管理支援コンピュータ５は、プログラム書類管理コンピュータ２、電子部品書類管理コンピュータ３および機械部品書類管理コンピュータ４から各種の書類データを取得する。設計書管理支援コンピュータ５は、取得した各種の書類データを関連付けて管理する。設計書管理支援コンピュータ５は、設計書管理支援装置の一例である。
【００２１】
＜書類データの一例＞
次に、書類データの一例について説明する。最初に、プログラム書類について説明する。プログラム書類はプログラムの設計書であり、機械部品を制御する記述や電子部品に所定の処理を実行させる記述を含む場合がある。以下、プログラム書類をソースコードと称することもある。ソースコードには複数の関数が含まれる。関数の一例としては、例えばクラスやメソッド、メンバ等がある。
【００２２】
一例として、「public class DoBraking」というクラスは、「DoBraking」という処理の内容を規定している。また、「public class」であることから、公開されたクラスになる。従って、他のソースコードは、「public class DoBraking」というクラスを呼び出すことができる。
【００２３】
実施形態では、キーワードが関数名やコメント等に定義されているものとする。上述した「public class DoBraking」のクラスの場合、キーワードは「Braking」になる。この場合、キーワードは、クラス名に定義されている。
【００２４】
また、「public class FileToString  //Breaking」というクラスは、コメント部分（「//」の部分）に「Braking」が定義されている。従って、キーワードは「Braking」になる。以上のキーワードは、ソースコードを作成するときに定義される。キーワードは関数に定義されていればよく、クラスだけではなく、メソッドやメンバ等にキーワードが定義されていてもよい。
【００２５】
次に、電子部品の書類データについて説明する。電子部品は、機械部品の動作を制御する。実施形態では、一例として、電子部品の書類データは回路設計データである。回路設計データは、例えば回路作成を行うためのＣＡＤ(Computer Aided Design)を用いて作成することができる。
【００２６】
回路設計データは、電子部品の機能を実現する種々の回路情報を有している。回路設計データは、属性を有している。属性にはキーワードが含まれる。例えば、機械部品を制御する電子部品であるＥＣＵ(Electric Control Unit)の回路設計データの属性にキーワード「Braking」が定義される場合がある。
【００２７】
次に、機械部品の書類データについて説明する。図２に示す一例では、パーツＡ（part A)とパーツＢ(part B）との２つの機械部品が示されている。パーツＡとパーツＢとは異なる機械部品であり、機械部品書類管理コンピュータ４は、パーツＡとパーツＢとをそれぞれ異なる機械部品書類として管理する。
【００２８】
図２は、パーツＡとパーツＢとの相互の関連性を示している。組み立て品Ｃ(Assy C)はパーツＡとパーツＢとを有している状態を示している。パーツＡとパーツＢとは相互に離間または近接する方向に移動することができる（図２の矢印の方向）。
【００２９】
また、パーツＡおよびパーツＢは、それぞれ２つの貫通穴を有している。パーツＡの貫通穴とパーツＢの貫通穴とは直線状に配置されている。図２に示す一例において、パーツＡおよびパーツＢに何らかの軸部材を挿通させることにより、パーツＡとパーツＢとは図２の矢印の方向に移動可能になる。
【００３０】
パーツＡおよびパーツＢは、機械部品書類である。実施形態では、機械部品書類はＣＡＤデータであるものとする。以下、ＣＡＤデータをモデルと称することもある。従って、機械部品書類管理コンピュータ４は、パーツＡのモデルとパーツＢのモデルとを管理する。図２の一例では、パーツＡのモデルとパーツＢのモデルと間に関連性がある。例えば、パーツＡとパーツＢとが当接したときに、両者の間には関連性がある。
【００３１】
機械部品の関連性の例としては、ネジ穴を有する板部材（機械部品）とネジ（機械部品）とがあるとする。板部材のネジ穴とネジとの穴フィーチャが同じ場合、ネジ穴を有する板部材とネジとの間には関連性がある。また、嵌合や溶接等により、機械部品同士が一体に接合されるような場合には、機械部品同士の関連性がある。また、１つの機械部品が他の機械部品と連携して動作する場合（キネマティクス等）にも、機械部品同士の関連性がある。
【００３２】
ＣＡＤデータの属性の一例を図２に示す。当該ＣＡＤデータのファイル名は、「CAD File Assy C」である。ＣＡＤデータの属性はキーワードを含む。図２の一例では、動作名「Braking」がキーワードとして定義されている。このキーワードは、パーツＡおよびパーツＢの機械部品書類の属性にも定義がされている。
【００３３】
また、図２の属性の「動作軸」は、上記の軸部材の軸を示している。また、「動作距離」はパーツＡおよびパーツＢの移動距離を示している。また、「動作部品」は、パーツＡおよびパーツＢを示している。
【００３４】
＜設計書管理支援部の一例＞
次に、図３を参照して、設計書管理支援部の一例について説明する。図３に一例として示す設計書管理支援部１０は、設計書管理支援コンピュータ５に設けられている。設計書管理支援部１０は、通信部１１、表示部１２およびデータベース１３と接続されている。設計書管理支援部１０の機能は、例えばソフトウェアで実現されてもよい。
【００３５】
通信部１１は、図１のバス６と通信するインタフェースである。設計書管理支援部１０は、通信部１１を介して、プログラム書類管理コンピュータ２、電子部品書類管理コンピュータ３および機械部品書類管理コンピュータ４と通信を行い、情報を取得することができる。表示部１２は、設計書管理支援部１０から出力される画面を表示する。データベース１３は、キーワードと書類データとを関連付けて記憶する。
【００３６】
設計書管理支援部１０は、設計書管理支援装置に備えられる。設計書管理支援部１０は、プログラム書類処理部２１と電子部品書類処理部２２と機械部品書類処理部２３と書類間関連特定部２４とリレーション設定部２５とを備えている。
【００３７】
機械部品書類処理部２３は、第１の特定部の一例である。電子部品書類処理部２２は、第２の特定部の一例である。プログラム書類処理部２１は、第３の特定部の一例である。書類間関連特定部２４は、第４の特定部の一例である。
【００３８】
プログラム書類処理部２１は、プログラム書類管理コンピュータ２が記憶しているプログラム書類の処理を行う。プログラム書類処理部２１は、通信部１１、ＬＡＮ６を介して、プログラム書類管理コンピュータ２に記憶されている全てのソースコードを取得する。取得されるソースコードは設計書に関するソースコードである。プログラム書類処理部２１は、ソースコードに含まれる全ての関数からキーワードを抽出する。
【００３９】
プログラム書類処理部２１は、抽出したキーワードのうち、機械部品書類に定義されているキーワードおよび電子部品の属性に定義されているキーワードを特定する。例えば、上述した「Braking」は、機械部品を制御するキーワードであり、且つ電子部品に所定の処理を実行させるキーワードである。従って、プログラム書類処理部２１がソースコードの関数からキーワード「Braking」を抽出したときには、プログラム書類処理部２１は、当該キーワードが機械部品のＣＡＤデータの属性および電子部品の回路設計データの属性に定義されていると特定する。
【００４０】
プログラム書類処理部２１は、抽出したキーワードと当該キーワードを含むソースコードとを関連付けて、データベース１３に記憶する。このとき、プログラム書類処理部２１は、キーワードとソースコードを特定する情報とを関連付けてデータベース１３に記憶することが好ましい。
【００４１】
例えば、ソースコードを特定する情報は、ソースコードのファイル名やソースコードに付与された値等とすることができる。ソースコードを特定する情報は、ソースコードを一意に特定できれば、任意の情報とすることができる。なお、ソースコード自体が、キーワードと関連付けられて、データベース１３に記憶されてもよい。
【００４２】
電子部品書類処理部２２は、電子部品書類管理コンピュータ３が記憶している電子部品書類の処理を行う。電子部品書類処理部２２は、通信部１１、ＬＡＮ６を介して、電子部品書類管理コンピュータ３に記憶されている全ての回路設計データを取得する。取得する回路設計データは設計書に関するものである。そして、電子部品書類処理部２２は、全ての回路設計データの属性に含まれるキーワードを抽出する。
【００４３】
電子部品書類処理部２２は、機械部品を制御する電子部品の回路設計データに含まれる属性に定義されているキーワードを特定する。電子部品書類処理部２２がキーワードを抽出したときには、電子部品書類処理部２２は、当該キーワードが機械部品を制御する電子部品の回路設計データの属性に定義されたキーワードであることを特定する。
【００４４】
電子部品書類処理部２２は、特定したキーワードを回路設計データに関連付ける。電子部品書類処理部２２は、回路設計データを特定する情報とキーワードとを関連付けて、データベース１３に記憶する。回路設計データを特定する情報としては、回路設計データのファイル名や回路設計データに付与された値等とすることができる。
【００４５】
機械部品書類処理部２３は、機械部品書類管理コンピュータ４が記憶している機械部品書類の処理を行う。機械部品書類処理部２３は、通信部１１、ＬＡＮ６を介して、機械部品書類管理コンピュータ４に記憶されている全てのＣＡＤデータを取得する。取得するＣＡＤデータは、設計書に関するものである。そして、機械部品書類処理部２３は、全てのＣＡＤデータの属性に含まれるキーワードを抽出する。
【００４６】
機械部品書類処理部２３は、抽出したキーワードをＣＡＤデータに関連付ける。機械部品書類処理部２３は、キーワードとＣＡＤデータを特定する情報とを関連付けて、データベース１３に記憶する。ＣＡＤデータを特定する情報としては、ＣＡＤデータのファイル名やＣＡＤデータに付与される値等がある。
【００４７】
書類間関連特定部２４は、機械部品書類と電子部品書類とプログラム書類との相互の関連を特定する。上述したように、データベース１３には、キーワードとソースコードを特定する情報とが関連付けられて記憶されている。また、データベース１３には、キーワードと回路設計データを特定する情報とが関連付けられて記憶されている。また、データベース１３には、キーワードとＣＡＤデータを特定する情報とが関連付けられて記憶されている。
【００４８】
書類間関連特定部２４は、データベース１３からキーワードを抽出して、抽出したキーワードに基づいて、プログラム書類と機械部品書類と電子部品書類とを関連付ける。つまり、書類間関連特定部２４は、同じキーワードを持つソースコードと回路設計データとモデルとを関連付ける。これにより、書類間関連特定部２４は、プログラム書類と機械部品書類と電子部品書類とを関連付ける。
【００４９】
リレーション設定部２５は、同種の書類間および異種の書類間で関連性を有する書類データにリレーションを設定する。同種の書類間の関連性としては、プログラム間の関連性がある。例えば、あるソースコードの関数が他のソースコードを呼び出しているとき、プログラム間の関連性がある。従って、リレーション設定部２５は、関連性のあるプログラム間にリレーションを設定する。
【００５０】
また、同種の書類間の関連性として、電子部品書類間の関連性がある。例えば、１つの回路設計データの回路と他の回路設計データの回路とが電気的に接続されているときに、電子部品書類間の関連性がある。従って、リレーション設定部２５は、関連性のある電子部品書類間にリレーションを設定する。
【００５１】
また、同種の書類間の関連性として、機械部品書類間の関連性がある。例えば、１つのモデルと他のモデルとの間に上述したような関連性がある場合には、機械部品書類間の関連性がある。従って、リレーション設定部２５は、関連性のある機械部品書類間にリレーションを設定する。
【００５２】
プログラム書類と電子部品書類と機械部品書類とは異種の書類データである。実施形態では、書類間関連特定部２４は、キーワードに基づいて、異種の書類データを関連付けている。リレーション設定部２５は、書類間関連特定部２４により関連付けられたプログラム書類と電子部品書類と機械部品書類との間にリレーションを設定する。
【００５３】
実施形態では、設計書管理支援部１０は、リレーション設定部２５が設定したリレーションの情報を可視化した画面を生成する。設計書管理支援部１０は、可視化した画面を表示部１２に表示する制御を行う。従って、表示部１２に同種の書類間および異種の書類間のリレーションが表示される。
【００５４】
＜実施形態の処理の一例＞
次に、図４〜図７を参照して、実施形態の処理の一例について説明する。以下、プログラム書類管理コンピュータ２は、ソースコードＡ〜ソースコードＦの６つのプログラムを記憶しているものとする。ただし、プログラム書類管理コンピュータ２が記憶しているプログラムの数は６つには限定されない。
【００５５】
また、電子部品書類管理コンピュータ３は、ＥＣＵ−ＡおよびＥＣＵ−Ｆの回路設計データを記憶しているものとする。ただし、電子部品書類管理コンピュータ３が記憶している回路設計データの数は２つには限定されない。
【００５６】
また、機械部品書類管理コンピュータ４は、モデルＡ〜モデルＦの６つのモデルを記憶しているものとする。ただし、機械部品書類管理コンピュータ４が記憶するモデルの数は６つには限定されない。ソースコードＡ〜ソースコードＦ、ＥＣＵ−ＡおよびＥＣＵ−Ｂの回路設計データ、およびモデルＡ〜モデルＦは、成果物の一例である。
【００５７】
図４は、プログラム書類に関する処理の一例である。図５は、電子部品書類に関する処理の一例である。図６は、機械部品書類に関する処理の一例である。図４〜図６の処理は、何れの処理から開始してもよい。つまり、図４〜図６の処理は、任意の順番で行うことができる。
【００５８】
図４を参照して、プログラム書類に関する処理の一例について説明する。設計書管理支援部１０は、通信部１１およびＬＡＮ６を介して、プログラム書類管理コンピュータ２にアクセスして、プログラム書類管理コンピュータ２に記憶されている全てのプログラムを取得する（ステップＳ１）。
【００５９】
上述したように、プログラム書類管理コンピュータ２は、一例として、６つのプログラム書類を記憶している。従って、設計書管理支援部１０はスースコードＡ〜ソースコードＦの６つのプログラム書類を取得する。プログラム書類処理部２１は、取得した６つのプログラム書類の処理を行う。
【００６０】
プログラム書類処理部２１は、ソースコードＡ〜ソースコードＦのそれぞれについて、ソースコードに含まれている関数に定義されているキーワードを抽出する（ステップＳ２）。上述したように、プログラム書類処理部２１は、メソッドやクラス、メンバ等の関数の関数名や関数に記述されているコメント等に基づいて、キーワードを抽出する。
【００６１】
プログラム書類処理部２１は、キーワードを抽出した関数の中で、機械部品または電子部品を制御する関数を特定する（ステップＳ３）。実施形態では、ソースコードＡに含まれるクラスのコメントに、機械部品のモデルＡおよび電子部品ＥＣＵ−Ａを制御する定義がされているものとする。一例として、この定義のキーワードを「ＫＥＹ−Ａ」とする。
【００６２】
また、ソースコードＢに含まれるクラスのクラス名にモデルＢの機械部品を制御する定義がされているものとする。一例として、この定義のキーワードを「ＫＥＹ−Ｂ」とする。また、ソースコードＣに含まれるクラスのクラス名にモデルＣの機械部品を制御する定義がされているものとする。一例として、この定義のキーワードを「ＫＥＹ−Ｃ」とする。
【００６３】
また、ソースコードＤに含まれるクラスのクラス名にモデルＣの機械部品を制御する定義がされているものとする。この定義は、モデルＣの機械部品を制御する定義であるため、この定義のキーワードを「ＫＥＹ−Ｃ」とする。また、ソースコードＥに含まれるクラスのクラス名にモデルＢの機械部品を制御する定義がされているものとする。この定義は、モデルＢの機械部品を制御する定義であるため、この定義のキーワードを「ＫＥＹ−Ｂ」とする。
【００６４】
また、ソースコードＦに含まれるクラスのコメントに、機械部品のモデルＦおよび電子部品ＥＣＵ−Ｆを制御する定義がされているものとする。一例として、この定義のキーワードを「ＫＥＹ−Ｆ」とする。
【００６５】
各ソースコードに含まれるクラス名やクラスのコメント部分に定義されるキーワードは、事前に設定されるものである。従って、実施形態の処理を行うために、各ソースコードに新たに何らかの定義を行う必要はない。
【００６６】
プログラム書類処理部２１は、ステップＳ３で特定された関数があるか否かの判定を行う（ステップＳ４）。ステップＳ３において特定された関数がある場合（ステップＳ４でＹＥＳ）、プログラム書類処理部２１は、特定した関数を含むソースコードを特定する情報とキーワードとを関連付けてデータベース１３に記憶する（ステップＳ５）。
【００６７】
従って、プログラム書類処理部２１は、ソースコードＡを特定する情報とキーワード「ＫＥＹ−Ａ」とを関連付けて、データベース１３に記憶する。また、プログラム書類処理部２１は、ソースコードＢを特定する情報とキーワード「ＫＥＹ−Ｂ」とを関連付けて、データベース１３に記憶する。
【００６８】
プログラム書類処理部２１は、ソースコードＣを特定する情報とキーワード「ＫＥＹ−Ｃ」とを関連付けて、データベース１３に記憶する。プログラム書類処理部２１は、ソースコードＤを特定する情報とキーワード「ＫＥＹ−Ｃ」とを関連付けて、データベース１３に記憶する。
【００６９】
プログラム書類処理部２１は、ソースコードＥを特定する情報とキーワード「ＫＥＹ−Ｂ」とを関連付けて、データベース１３に記憶する。プログラム書類処理部２１は、ソースコードＦを特定する情報とキーワード「ＫＥＹ−Ｆ」とを関連付けて、データベース１３に記憶する。
【００７０】
一方、ステップＳ３において、関数が特定されない場合もある。プログラム書類処理部２１がキーワードを抽出した関数が、機械部品や電子部品を制御する関数でない場合もある。この場合、プログラム書類処理部２１は、特定された関数がないと判定し（ステップＳ４でＮＯ）、プログラム書類処理部２１は、データベース１３に情報を記憶する処理は行わない。
【００７１】
プログラム書類処理部２１は、ステップＳ３で特定された関数の分、ステップＳ７およびステップＳ８のループ処理を行う（ステップＳ６）。プログラム書類処理部２１は、ステップＳ３で特定した関数を呼び出しているソースコードが存在するか否かを判定する（ステップＳ７）。
【００７２】
例えば、特定された関数を含むクラスをインスタンス化しているソースやメソッドをコールしているソースコードがあれば、ステップＳ７の判定はＹＥＳになる。一方、前記のソースコードがなければ、ステップＳ７の判定はＮＯになる。
【００７３】
プログラム書類処理部２１が、ステップＳ７でＹＥＳと判定した場合、リレーション設定部２５は、ステップＳ３で特定した関数を含むソースコードと当該ソースコードを呼び出しているソースコードとの間にリレーションを設定する（ステップＳ８）。
【００７４】
実施形態では、ソースコードＡに含まれるクラスはソースコードＢに呼び出されているものとする。また、ソースコードＣに含まれるメソッドはソースコードＥに呼び出されているものとする。
【００７５】
上述したように、ステップＳ３において、プログラム書類処理部２１は、ソースコードＡ〜ソースコードＦに含まれる関数を特定している。これらのうち、ソースコードＡおよびソースコードＣに含まれる関数は、他のソースコードから呼び出されている。よって、リレーション設定部２５は、ソースコードＡとソースコードＢとの間にリレーションを設定する。また、リレーション設定部２５は、ソースコードＣとソースコードＥとの間にリレーションを設定する。
【００７６】
一方、ソースコードＤおよびソースコードＦに含まれる関数を呼び出している他のソースコードはない。よって、リレーション設定部２５は、ソースコードＤおよびソースコードＦにリレーションを設定しない。
【００７７】
ステップＳ３で特定された全ての関数について、ステップＳ７およびステップＳ８の処理が終了したときに、ステップＳ６から開始したループ処理が終了する（ステップＳ９）。ステップＳ６からステップＳ９のループ処理により、同種の書類データの間でリレーションが設定される。つまり、関数の呼び出しがあるソースコード間でリレーションが設定される。
【００７８】
ここで、ステップＳ６〜ステップＳ９の処理は、ステップＳ３において電子部品または機械部品を制御する関数を含むソースコードについて行われる。従って、電子部品および機械部品を制御する関数を含まないソースコードについては、ステップＳ６〜ステップＳ９の処理は行われない。
【００７９】
つまり、ソースコードが機械部品または機械部品を制御しないソースコードの場合、プルグラム書類処理部２１は、当該ソースコードを除外して、ステップＳ６〜ステップＳ９の処理を行う。従って、ステップＳ６〜ステップＳ９の処理を行う対象となるソースコードを絞ることができ、処理を高速化することができる。
【００８０】
図５を参照して、電子部品書類に関する処理の一例について説明する。設計書管理支援部１０は、通信部１１およびＬＡＮ６を介して、電子部品書類管理コンピュータ３にアクセスして、電子部品書類管理コンピュータ３に記憶されている全ての回路設計データを取得する（ステップＳ１１）。
【００８１】
電子部品書類処理部２２は、取得した回路設計データの属性からキーワードを抽出する（ステップＳ１２）。実施形態では、電子部品ＥＣＵ−Ａの回路設計データの属性にキーワード「ＫＥＹ−Ａ」が定義されているものとする。また、電子部品ＥＣＵ−Ｂの回路設計データの属性にキーワード「ＫＥＹ−Ｆ」が定義されているものとする。これらのキーワードは、事前に回路設計データの属性に定義されるものであり、実施形態の処理のために、新たに回路設計データの属性に何らかの定義を行う必要はない。
【００８２】
電子部品書類処理部２２は、取得した回路設計データのうち、機械部品を制御する電子部品の回路設計データを特定する（ステップＳ１３）。例えば、回路設計データの属性に定義されているキーワードに基づいて、機械部品を制御する電子部品の回路設計データを特定することができる。
【００８３】
実施形態では、キーワード「ＫＥＹ−Ａ」および「ＫＥＹ−Ｆ」は、機械部品を制御する電子部品の回路設計データであるものとする。電子部品書類処理部２２は、ステップＳ１３で特定した回路設計データがあるか否かを判定する（ステップＳ１４）。
【００８４】
ステップＳ１４でＮＯと判定された場合には、電子部品書類処理部２２は、データベース１３に情報の記憶を行わない。一方、ステップＳ１４でＹＥＳと判定された場合には、電子部品書類処理部２２は、回路設計データを特定する情報とキーワードとを関連付けてデータベース１３に記憶する（ステップＳ１５）。
【００８５】
上述の場合、電子部品書類処理部２２は、「ＫＥＹ−Ａ」と電子部品ＥＣＵ−Ａの回路設計データを特定する情報とを関連付けて、データベース１３に記憶する。また、電子部品書類処理部２２は、「ＫＥＹ−Ｆ」と電子部品ＥＣＵ−Ｂの回路設計データを特定する情報とを関連付けて、データベース１３に記憶する。
【００８６】
電子部品書類処理部２２は、ステップＳ１３で特定された回路設計データの分、ステップＳ１７およびステップＳ１８のループ処理を行う（ステップＳ１６）。電子部品書類処理部２２がステップＳ１３で特定した回路設計データと関連性のある回路設計データがあるか否かを電子部品書類処理部２２が判定する（ステップＳ２７）。
【００８７】
例えば、回路設計データで実現される電子部品同士に電気的な接続関係があるとき等は、電子部品書類処理部２２は、回路設計データ同士が関連していると判定する。ステップＳ２７でＹＥＳと判定されたとき、電子部品書類処理部２２は、回路設計データ間にリレーションを設定する（ステップＳ１７）。
【００８８】
一方、ステップＳ２７でＮＯと判定されたとき、電子部品書類処理部２２は、回路設計データ間にリレーションを設定しない。実施形態では、電子部品ＥＣＵ−Ａと電子部品ＥＣＵ−Ｂとの間に電気的な接続関係はないものとする。よって、これらの電子部品の回路設計データにリレーションは設定されない。
【００８９】
ステップＳ１３で特定された全ての回路設計データについて、ステップＳ１７およびステップＳ１８の処理が終了したときに、ステップＳ１６から開始したループ処理が終了する（ステップＳ１９）。
【００９０】
図６を参照して、機械部品書類に関する処理の一例について説明する。設計書管理支援部１０は、通信部１１およびＬＡＮ６を介して、機械部品書類管理コンピュータ４にアクセスして、機械部品書類管理コンピュータ４に記憶されている全てのＣＡＤデータを取得する（ステップＳ２１）。
【００９１】
機械部品書類処理部２３は、取得したＣＡＤデータに基づいて、他の機械部品と関連性がある機械部品のモデルを特定する（ステップＳ２２）。例えば、取得したモデルの機械部品が他の機械部品に接触や当接、嵌合、組み付け等される場合には、機械部品書類処理部２３は関連性があると特定する。
【００９２】
また、機械部品書類処理部２３は、穴フィーチャが一致する２つの機械部品の間に関連性があると特定する。また、複数の機械部品が連携して動作する場合（キネマティクス）には、機械部品書類処理部２３は関連性があると特定する。
【００９３】
実施形態では、モデルＡとモデルＣとの２つの機械部品は、連携して動作するキネマティクスの関連性を有するものとする。また、モデルＤの機械部品はモデルＥの機械部品に組み付けられる関連性を有するものとする。また、モデルＥの機械部品とモデルＦの機械部品とは干渉する関連性を有するものとする。一方、モデルＢの機械部品は単体で存在しており、他の機械部品と関連性はないものとする。
【００９４】
機械部品書類処理部２３は、ステップＳ２２で特定したモデルの属性からキーワードを抽出する（ステップＳ２３）。実施形態では、モデルＡの属性には「ＫＥＹ−Ａ」が定義される。モデルＢの属性には「ＫＥＹ−Ｂ」が定義される。モデルＣの属性には「ＫＥＹ−Ｃ」が定義される。
【００９５】
モデルＤの属性には「ＫＥＹ−Ｄ」が定義される。モデルＥの属性には「ＫＥＹ−Ｅ」が定義される。モデルＦの属性には「ＫＥＹ−Ｆ」が定義される。これらのキーワードは、事前にＣＡＤデータの属性に定義されるものであり、実施形態の処理のために、新たにＣＡＤデータの属性に何らかの定義を行う必要はない。
【００９６】
機械部品書類処理部２３は、ステップＳ２３で抽出したモデルを特定する情報とキーワードとを関連付けて、データベース１３に記憶する（ステップＳ２４）。実施形態では、機械部品書類処理部２３は、モデルＡを特定する情報と「ＫＥＹ−Ａ」とを関連付けて、データベース１３に記憶する。また、機械部品書類処理部２３は、モデルＢを特定する情報と「ＫＥＹ−Ｂ」とを関連付けて、データベース１３に記憶する。
【００９７】
また、機械部品書類処理部２３は、モデルＣを特定する情報と「ＫＥＹ−Ｃ」とを関連付けて、データベース１３に記憶する。また、機械部品書類処理部２３は、モデルＤを特定する情報と「ＫＥＹ−Ｄ」とを関連付けて、データベース１３に記憶する。
【００９８】
また、機械部品書類処理部２３は、モデルＥを特定する情報と「ＫＥＹ−Ｅ」とを関連付けて、データベース１３に記憶する。また、機械部品書類処理部２３は、モデルＦを特定する情報と「ＫＥＹ−Ｆ」とを関連付けて、データベース１３に記憶する。
【００９９】
機械部品書類処理部２３は、ステップＳ２２で特定されたＣＡＤデータの分、ステップＳ２６およびステップＳ２７のループ処理を行う（ステップＳ２５）。機械部品書類処理部２３は、ステップＳ２２で特定したモデルの中で、相互に関連性のあるモデルがあるか否かを判定する（ステップＳ２６）。
【０１００】
モデルの関連性としては、一例として、上述したように、干渉や当接、組み付け、溶接、キネマティクス等がある。ステップＳ２６においてＹＥＳと判定された場合、機械部品書類処理部２３は、相互に関連性のあるＣＡＤデータにリレーションを設定する（ステップＳ２７）。
【０１０１】
実施形態では、モデルＡとモデルＣとはキネマティクスの関連性を有している。よって、機械部品書類処理部２３は、モデルＡとモデルＣとの間にリレーションを設定する。リレーションが設定されたモデルの属性にはどのような関連性を有しているかが定義されている。よって、機械部品書類処理部２３は、モデルＡとモデルＣとの間にキネマティクスのリレーションを設定したことを認識することができる。
【０１０２】
モデルＤとモデルＥとは組み付けの関連性を有している。よって、機械部品書類処理部２３は、モデルＤとモデルＥとの間に組み付けのリレーションを設定する。モデルＥとモデルＦとは干渉の関連性を有している。よって、機械部品書類処理部２３は、モデルＥとモデルＦとの間に干渉のリレーションを設定する。
【０１０３】
一方、ステップＳ２２において特定されたＣＡＤデータの機械部品が他の機械部品と関連性を有していない場合（ステップＳ２６でＮＯ）、機械部品書類処理部２３は、リレーションの設定を行わない。
【０１０４】
ステップＳ２２で特定された全てのＣＡＤデータについて、ステップＳ２６およびステップＳ２７の処理が終了したときに、ステップＳ２５から開始したループ処理が終了する（ステップＳ２８）。
【０１０５】
次に、図７を参照して、書類データ間の関連を特定する処理について説明する。書類間関連特定部２４は、異種の書類データ間の関連を特定する。書類間関連特定部２４は、プログラム書類処理部２１が特定した電子部品または機械部品を制御する関数を抽出する（ステップＳ３１）。
【０１０６】
この抽出処理は、異種の書類データ間で関連のない書類データを除外するために行われる。図４のステップＳ３で行われる処理は、電子部品または機械部品を制御する関数を抽出する処理である。よって、ソースコードに電子部品または機械部品を制御する関数が含まれない場合には、異種の書類データ間で関連がないことになる。
【０１０７】
そして、図４のステップＳ３で既に電子部品または機械部品を制御する関数は特定されている。このため、既に行われた処理を利用して、異種の書類データ間で関連の可能性のある書類データに絞って、関連を特定することができる。これにより、処理の高速化を図ることができる。
【０１０８】
また、書類間関連特定部２４は、図４のステップＳ３の結果をプログラム書類処理部２１から取得する。これにより、書類間関連特定部２４は、電子部品または機械部品を制御する関数を抽出する処理を新たに行う必要がない。
【０１０９】
次に、書類間関連特定部２４は、抽出した関数を含む全てのソースコードについてループ処理を開始する（ステップＳ３２）。書類間関連特定部２４は、データベース１３に記憶されている回路設計データに関連付けられているキーワードを検索する（ステップＳ３３）。
【０１１０】
上述したように、電子部品ＥＣＵ−Ａの回路設計データを特定する情報と「ＫＥＹ−Ａ」とが関連付けられて、データベース１３に記憶されている。また、電子部品ＥＣＵ−Ｆの回路設計データを特定する情報と「ＫＥＹ−Ｆ」とが関連付けられて、データベース１３に記憶されている。
【０１１１】
書類間関連特定部２４は、キーワードとして「ＫＥＹ−Ａ」および「ＫＥＹ−Ｆ」を認識する。書類間関連特定部２４は、データベース１３に記憶されているソースコードのうち、ステップＳ３１で特定された関数を含むソースコードおよび当該ソースコードに関連付けられているキーワードを取得する。
【０１１２】
実施形態では、ソースコードＡ〜ソースコードＦが電子部品または機械部品を制御する関数を含んでいる。そして、書類間関連特定部２４は、ソースコードＡ〜ソースコードＦと回路設計データとの間で一致するキーワードがあるか否かを判定する（ステップＳ３３）。
【０１１３】
ソースコードＡのキーワードは「ＫＥＹ−Ａ」であり、電子部品ＥＣＵ−Ａの回路設計データのキーワード「ＫＥＹ−Ａ」と一致する。よって、一致するキーワードがあるため（ステップＳ３４でＹＥＳ）、書類間関連特定部２４は、ソースコードＡと電子部品ＥＣＵ−Ａとの間に関連があることを特定する。このため、リレーション設定部２５は、ソースコードＡと電子部品ＥＣＵ−Ａとの間にリレーションを設定する（ステップＳ３５）。
【０１１４】
ソースコードＦのキーワードは「ＫＥＹ−Ｆ」であり、電子部品ＥＣＵ−Ｆの回路設計データのキーワード「ＫＥＹ−Ｆ」と一致する。よって、書類間関連特定部２４は、ソースコードＦと電子部品ＥＣＵ−Ｆとの間に関連があることを特定する。このため、リレーション設定部２５は、ソースコードＦと電子部品ＥＣＵ−Ｆとの間にリレーションを設定する。
【０１１５】
次に、書類間関連特定部２４は、データベース１３に記憶されているモデルを検索する（ステップＳ３６）。データベース１３には、モデルＡ〜モデルＦとキーワード「ＫＥＹ−Ａ」〜「ＫＥＹ−Ｆ」とが関連付けられて記憶されている。
【０１１６】
書類間関連特定部２４は、検索したモデルのキーワードとステップＳ３１で抽出された関数を含むソースコードとで一致するキーワードがあるか否かを判定する（ステップＳ３７）。一致するキーワードがあれば（ステップＳ３７でＹＥＳ）、書類間関連特定部２４は、ソースコードとモデルとの間に関連があると特定する。そして、リレーション設定部２５は、書類間関連特定部２４が特定したソースコードとモデルとの間にリレーションを設定する（ステップＳ３８）。一致するキーワードがなければ（ステップＳ３７でＮＯ）、リレーションは設定されない。
【０１１７】
実施形態では、ソースコードＡのキーワードは「ＫＥＹ−Ａ」であり、モデルＡのキーワードは「ＫＥＹ−Ａ」である。よって、リレーション設定部２５は、ソースコードＡとモデルＡとの間にリレーションを設定する。なお、上述したように、ソースコードＡと電子部品ＥＣＵ−Ａとの間にもリレーションが設定されている。従って、ソースコードＡと電子部品ＥＣＵ−ＡとモデルＡとの三者の間にリレーションが設定される。
【０１１８】
また、ソースコードＢのキーワードは「ＫＥＹ−Ｂ」であり、モデルＢのキーワードは「ＫＥＹ−Ｂ」である。よって、リレーション設定部２５は、ソースコードＢとモデルＢとの間にリレーションを設定する。
【０１１９】
また、ソースコードＣのキーワードは「ＫＥＹ−Ｃ」であり、モデルＣのキーワードは「ＫＥＹ−Ｃ」である。よって、リレーション設定部２５は、ソースコードＣとモデルＣとの間にリレーションを設定する。
【０１２０】
また、ソースコードＤのキーワードは「ＫＥＹ−Ｃ」であり、モデルＣのキーワードは「ＫＥＹ−Ｃ」である。よって、リレーション設定部２５は、ソースコードＤとモデルＣとの間にリレーションを設定する。なお、モデルＣはソースコードＣとの間にもリレーションが設定されている。
【０１２１】
また、ソースコードＥのキーワードは「ＫＥＹ−Ｂ」であり、モデルＢのキーワードは「ＫＥＹ−Ｂ」である。よって、リレーション設定部２５は、ソースコードＥとモデルＢとの間にリレーションを設定する。なお、モデルＢはソースコードＢとの間にもリレーションが設定されている。
【０１２２】
また、ソースコードＦのキーワードは「ＫＥＹ−Ｆ」であり、モデルＦのキーワードは「ＫＥＹ−Ｆ」である。よって、リレーション設定部２５は、ソースコードＦとモデルＦとの間にリレーションを設定する。なお、上述したように、ソースコードＦと電子部品ＥＣＵ−Ｆとの間にもリレーションが設定されている。従って、ソースコードＦと電子部品ＥＣＵ−ＦとモデルＦとの三者の間にリレーションが設定される。
【０１２３】
従って、異種の書類データの間にリレーションが設定される。また、図４のステップＳ８、図５のステップＳ１８および図６のステップＳ２７で同種の書類データ間にリレーションが設定される。以上により、異種の書類データ間および同種の書類データ間にリレーションを設定することができる。
【０１２４】
＜画面遷移の一例＞
次に、表示部１２に表示される画面例について説明する。図８は、表示部１２に表示される画面の一例である。画面４０は、プログラム書類に関する情報を表示する第１の表示領域４１と電子部品書類に関する情報を表示する第２の表示領域４２と機械部品書類に関する情報を表示する第３の表示領域４３とを有している。
【０１２５】
図８の一例では、設計書管理支援コンピュータ５を操作するオペレータは、入力デバイス（例えば、マウス）を用いてポインタＰを操作することができる。一例として、オペレータがマウスを用いて「表示」を選択することで、第１のメニュー４４が表示される。
【０１２６】
第１のメニュー４４には、「ソース」と「電子部品」と「機械部品」とが表示されている。ソースが選択されると、第１の表示領域４１にソースコードに関する情報が表示される。実施形態では、ソースコードＡ〜ソースコードＦの６つのソースコードがある。従って、第１の表示領域４１に６つのソースコードを示す情報（図８のソースＡ〜ソースＦ）が表示される。
【０１２７】
図９の一例では、オペレータは、マウスを用いて電子部品を選択している。これにより、第２の表示領域４２に電子部品に関する情報が表示される。実施形態では、電子部品ＥＣＵ−Ａおよび電子部品ＥＣＵ−Ｆの２つの回路設計データがあるため、これら２つの回路設計データを示す情報（図９のＥＣＵ−ＡおよびＥＣＵ−Ｆ）が表示される。
【０１２８】
図１０の一例では、オペレータは、マウスを用いて機械部品を選択している。これにより、第３の表示領域４３に機械部品に関する情報が表示される。実施形態では、モデルＡ〜モデルＦの６つのモデルがあるため、これら６つのモデルを示す情報（モデルＡ〜モデルＦ）が表示される。
【０１２９】
図１１の一例では、オペレータは、マウスを用いて「関連付け」を選択する。これにより、第２のメニュー４５が表示される。第２のメニュー４５には、４つの情報が表示される。「ソース・電子部品・機械部品」は、ソースコードと電子部品書類と機械部品書類との間のリレーションを表示するためのメニューである。
【０１３０】
「ソース・電子部品」は、ソースコードと電子部品書類との間のリレーションを表示するためのメニューである。「ソース・機械部品」は、ソースコードと機械部品書類との間のリレーションを表示するためのメニューである。「電子部品・機械部品」は、電子部品書類と機械部品書類との間のリレーションを表示するためのメニューである。
【０１３１】
上述した処理により、異種の書類データ間および同種の書類データ間にリレーションが設定される。従って、表示部１２は、このリレーションに基づいて、画面４０にリレーションを表示する。図１１の一例において、表示部１２は、異種の書類データ間のリレーションは実線の矢印で表示し、同種の書類データ間のリレーションは一点鎖線の矢印で表示している。
【０１３２】
リレーションの表示の態様は、図１１の例には限定されない。ただし、視認性の観点から、同種の書類データ間のリレーションの表示態様と異種の種類データ間のリレーションの表示態様とは異なっていることが好ましい。
【０１３３】
上述したように、書類データ間のリレーションは、その種類が特定されている。従って、図１１の一例では、表示部１２は、リレーションと共に当該リレーションの種類を示す情報を表示している。例えば、「クラス呼び出し」および「メソッド呼び出し」は、同種のソースコード間のリレーションを示す。また、「キネマティクス」、「組み付け」および「干渉」は、同種のモデル間のリレーションを示す。
【０１３４】
従って、オペレータは、画面４０を視認することで、異種の書類データ間および同種の書類データ間のリレーションを容易に認識することができる。これにより、何れかの書類データに変更が生じたときに、影響が及ぼされる範囲を容易に認識することができる。
【０１３５】
例えば、ソースコードＤに変更が生じたときには、オペレータは、画面４０に基づいて、モデルＣに変更の影響が及ぼされることを認識することができる。また、モデルＣはモデルＡとリレーションが設定されているため、ソースコードＤの変更がモデルＡにも及ぼされることを認識することができる。
【０１３６】
従って、機械部品と電子部品とプログラムとの書類データが異なるシステムで管理されていたとしても、何れかの書類データに変更を生じたときに、影響が及ぼされる書類データを容易に認識することができる。これにより、設計書の管理を支援することができる。
【０１３７】
ここで、各書類データのリレーションは、何れかの書類に対して変更を行ったバージョンごとに記憶してもよい。何れかの書類データに変更が生じると、変更後のリレーションと変更前のリレーションとは異なる場合がある。例えば、ソースコードを変更した結果、変更前には他の機械部品を制御していたソースコードは、変更後には他の機械部品を制御しなくなる場合もある。
【０１３８】
このような場合、変更前のリレーションのバージョンと変更後のリレーションのバージョンとをそれぞれ別個に記憶してもよい。これにより、書類データの変更により、リレーションにどのような影響が生じるかの検証を行うことができる。
【０１３９】
＜プログラム書類と機械部品書類との間のリレーションの一例＞
次に、プログラム書類と機械部品書類との間のリレーションの一例について説明する。ソースコードがモデルを制御している場合、プログラム書類と機械部品書類との間のリレーションを表示することが好ましい。この場合、電子部品に関する情報は表示されなくてもよい。
【０１４０】
上述したように、プログラム書類はプログラム書類管理コンピュータ２で管理され、機械部品書類は機械部品書類管理コンピュータ４で管理されている。よって、プログラム書類と機械部品書類とは異なるシステムで管理されている。従って、プログラム書類または機械部品書類の何れかに変更が生じたときに、異種の書類データのうち何れの書類データに影響が及ぼされるかの検証は難しい。
【０１４１】
このため、プログラム書類と機械部品書類との間にリレーションを設定することが好ましい。図１２は、ソースコードとモデルとの間のリレーションを表示する画面の一例である。オペレータは、画面４０の第２のメニューのうち「ソース・機械部品」を選択する。
【０１４２】
これにより、ソースコードとモデルとの間のリレーションが画面４０に表示される。また、第２の表示領域４２には、電子部品に関する情報は表示されない。第２の表示領域４２に電子部品に関する情報を表示してもよいが、視認性の観点から、電子部品に関する情報は表示されないことが好ましい。
【０１４３】
図１２に一例として示す画面４０では、ソースコードＡとモデルＡとの間にリレーションが設定されていることが表示される。また、ソースコードＢおよびソースコードＥとモデルＢとの間にリレーションが設定されていることが表示される。また、ソースコードＣおよびソースコードＤとモデルＣとの間にリレーションが設定されていることが表示される。
【０１４４】
また、ソースコードＦとモデルＦとの間にリレーションが設定されていることが表示される。モデルＤおよびモデルＥは、ソースコードと関連付けがされていないため、リレーションは設定されていない。
【０１４５】
例えば、ソースＥに変更を生じたときに、オペレータは、画面４０を視認することで、モデルＣに影響が及ぼされることを認識できる。また、同種の書類データ間のリレーションはそのまま表示されている。このため、オペレータは、ソースＥの変更が、モデルＣとキネマティクスの関係を有するモデルＡにも影響を及ぼすことを認識できる。
【０１４６】
以上のように、図１２に一例として示す画面４０を視認することで、プログラム書類と機械部品書類との関連性を容易に認識することができる。これにより、設計書の管理の支援を行うことができる。
【０１４７】
また、オペレータは、第２メニュー４５のうち「ソース・電子部品」を選択することで、画面４０には、プログラム書類と機械部品書類との間のリレーションが表示される。また、オペレータは、第２のメニュー４５のうち「電子部品・機械部品」を選択することで、画面４０には、電子部品書類と機械部品書類との間のリレーションが表示される。
【０１４８】
従って、第２のメニュー４５を表示することで、任意の２種類の書類データ間のリレーションを選択的に表示することができる。また、第２のメニュー４５に「ソース・電子部品・機械部品」を表示することで、３種類の書類データ間のリレーションを選択的に表示することができる。
【０１４９】
＜設計書管理支援コンピュータのハードウェア構成の一例＞
次に、設計書管理支援コンピュータ５のハードウェア構成の一例について説明する。図１３の一例に示すように、バス５０に対して、プロセッサ５１とＲＡＭ(Random Access Memory)５２とＲＯＭ(Read Only Memory)５３と補助記憶装置５４と周辺機器接続部５５と通信インタフェース５６と可搬型記憶装置接続部５７とが接続されている。
【０１５０】
プロセッサ５１はＣＰＵ（Central Processing Unit)のような任意の処理回路である。プロセッサ５１はＲＡＭ５２に展開されたプログラムを実行する。ＲＯＭ５３はＲＡＭ５２に展開されるプログラムを記憶する不揮発性の記憶装置である。
【０１５１】
補助記憶装置５４は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等を補助記憶装置５４に適用することができる。上述したバージョンごとのリレーションは、補助記憶装置５４に記憶されてもよい。周辺機器接続部５５は、ディスプレイ５８および入力デバイス５９を接続する。
【０１５２】
可搬型記憶装置接続部５７は、可搬型記憶装置６０と接続可能に設けられている。可搬型記憶装置６０としては、可搬型のメモリや光学式ディスク（例えば、ＣＤ（Compact Disk)やＤＶＤ（Digital Video Disk)等）を適用することができる。実施形態の処理を行うプログラムは、コンピュータ読み取り可能な記録媒体に記録されていてもよい。この場合、記録媒体に可搬型記憶装置６０を適用することができる。
【０１５３】
ＲＡＭ５２、ＲＯＭ５３および補助記憶装置５４は、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。
【０１５４】
図３で示した設計書管理支援部１０の各部の機能は、プロセッサ５１が実行可能なプログラムにより実現されてよい。通信部１１の機能は、通信インタフェース５６により実現されてよい。表示部１２の機能は、ディスプレイ５８により実現されてよい。データベース１３は補助記憶装置５４に記憶されてもよい。上述したマウスは、入力デバイス５９により実現されてもよい。
【０１５５】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【０１５６】
以上の実施形態に関し、更に以下の付記を開示する。
（付記１）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定し、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける、
処理をコンピュータに実行させる設計書管理支援プログラム。
（付記２）
関連付けられた前記プログラム書類と前記電子部品書類と前記機械部品書類との間に可視化したリレーションを設定した画面を表示する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記３）
前記電子部品書類または前記機械部品書類と前記プログラム書類とを関連付けるときに、前記各プログラム書類のうち前記機械部品または前記電子部品を制御しないプログラムのプログラム書類を除外する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記４）
前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とのうち、異種の書類間のリレーションと同種の書類間のリレーションとを異なる表示態様で表示する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記５）
前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とのうち、任意の２種類の書類間のリレーションまたは３種類の書類間のリレーションを選択可能なメニューを表示する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記６）
前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とのうち、何れかの書類に変更が生じるごとにリレーションを記憶する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記７）
前記プログラム書類はソースコードであり、１つのソースコードに含まれる関数が他のソースコードを呼び出しているときに、プログラム書類間の関連を特定する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記８）
前記機械部品が他の機械部品と連携して動作する関係にあるときに、機械部品書類間の関連を特定する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記９）
前記機械部品のうち１つの機械部品はネジ穴を有する部材であり、他の機械部品はネジであり、前記ネジ穴と前記ネジとの穴フィーチャが一致するとき、機械部品書類間の関連を特定する、
処理を前記コンピュータに実行させる付記１記載の設計書管理支援プログラム。
（付記１０）
前記リレーションと共に当該リレーションの書類を示す情報を表示する、
処理を前記コンピュータに実行させる付記２記載の設計書管理支援プログラム。
（付記１１）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各機械部品書類とを関連付ける、
処理をコンピュータに実行させる設計書管理支援プログラム。
（付記１２）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定し、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける、
設計書管理支援方法。
（付記１３）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定し、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定し、
特定した前記各プログラム書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各機械部品書類とを関連付ける、
設計書管理支援方法。
（付記１４）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定する第１の特定部と、
前記機械部品を制御する電子部品の設計情報を記述した電子部品書類間の関連を特定すると共に各電子部品書類間のキーワードを特定する第２の特定部と、
前記電子部品に処理を実行させるプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定する第３の特定部と、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける第４の特定部と、
を備える設計書管理支援装置。
（付記１５）
機械部品の設計情報を記述した機械部品書類間の関連を特定すると共に各機械部品書類のキーワードを特定する第１の特定部と、
前記機械部品を制御するプログラムの動作を記述したプログラム書類間の関連を特定すると共に各プログラム書類のキーワードを特定する第３の特定部と、
特定した前記各プログラム書類のキーワードと前記各電子部品書類のキーワードと前記機械部品書類のキーワードとでキーワードが共通する書類を相互に関連付けることで、前記各プログラム書類と前記各電子部品書類と前記各機械部品書類とを関連付ける第４の特定部と、
を備える設計書管理支援装置。
【符号の説明】
【０１５７】
１    システム
２    プログラム書類管理コンピュータ
３    電子部品書類管理コンピュータ
４    機械部品書類管理コンピュータ
５    設計書管理支援コンピュータ
１０  設計書管理支援部
１１  通信部
１２  表示部
１３  データベース
２１  プログラム書類処理部
２２  電子部品書類処理部
２３  機械部品書類処理部
２４  書類間関連特定部
２５  リレーション設定部
５１  プロセッサ
５２  ＲＡＭ
５３  ＲＯＭ
５４  補助記憶装置
５９  入力デバイス
６０  可搬型記憶装置
【図１】
2015138490.tif 000003
【図２】
2015138490.tif 000004
【図３】
2015138490.tif 000005
【図４】
2015138490.tif 000006
【図５】
2015138490.tif 000007
【図６】
2015138490.tif 000008
【図７】
2015138490.tif 000009
【図８】
2015138490.tif 000010
【図９】
2015138490.tif 000011
【図１０】
2015138490.tif 000012
【図１１】
2015138490.tif 000013
【図１２】
2015138490.tif 000014
【図１３】
2015138490.tif 000015