(57)【要約】【課題】複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照される関数の取り扱いの整合性を保つために人が行う作業量を低減する。【解決手段】パーソナルコンピュータ１の結合ツール２０の動作によって、参照側の部品が参照する関数の指定と当該参照側の部品との対応づけが参照情報として記憶装置に記憶され、またこの参照情報から、公開側の部品の開示する関数の指定に対応する参照側の部品が検索される。すなわち、公開側の部品の開示する関数を参照する参照側の部品が検索される。そして、参照側の部品の処理内容が更新される。【選択図】        図２
2004362048.tif 000002
【特許請求の範囲】
【請求項１】
第１のソフトウェア部品が参照するデータの指定を受け付ける参照情報受付手段（８１０）と、
前記参照情報受付手段が受け付けた前記データの指定と前記第１のソフトウェア部品とを対応づけた参照情報を記憶装置に記憶させる参照情報記憶制御手段（８６５）と、
第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段（３１０〜３４５）と、
前記記憶装置に記憶された前記参照情報から、前記開示情報受付手段が受け付けたデータの指定と対応付けられた第１のソフトウェア部品を検索する参照部品検索手段（３５５）と、
前記開示情報受付手段が受け付けたデータの情報に基づいて、前記参照部品検索手段が検索した第１のソフトウェアと前記第２のソフトウェアとの間の前記データの取り扱いの整合性を保つために、前記検索された第１のソフトウェア部品の処理内容を更新する更新手段（３６０）と、を備えたソフトウェア開発支援システム。
【請求項２】
前記開示情報受付手段が受け付ける前記データの情報は、前記データの表現形態に関する情報を含み、
前記更新手段は、前記開示情報受付手段が受け付けたデータの表現形態に関する情報に基づいて、前記参照部品検索手段が検索した第１のソフトウェアと前記第２のソフトウェアとの間の前記データの取り扱いの整合性を保つために、前記検索された第１のソフトウェア部品の処理内容を更新することを特徴とする請求項１に記載のソフトウェア開発支援システム。
【請求項３】
前記データの表現形態に関する情報は、前記データの表現における単位を有し、
前記更新手段は、前記開示情報受付手段が受け付けた前記単位に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値が当該単位による表現であると取り扱うようにする請求項２に記載のソフトウェア開発支援システム。
【請求項４】
前記データの表現形態に関する情報は、前記データの表現における規格化係数を有し、
前記更新手段は、前記開示情報受付手段が受け付けた前記規格化係数に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値に前記規格化係数を乗ずることを特徴とする請求項２または３に記載のソフトウェア開発支援システム。
【請求項５】
前記データの表現形態に関する情報は、前記データの表現におけるオフセット値を有し、
前記更新手段は、前記開示情報受付手段が受け付けた前記オフセット値に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値に前記オフセット値を減ずることを特徴とする請求項２ないし４のいずれか１つに記載のソフトウェア開発支援システム。
【請求項６】
前記更新手段は、第１のソフトウェア部品において前記データを取り扱う形式の定義を変更することで、前記検索された第１のソフトウェア部品の処理内容を更新することを特徴とする請求項２ないし５のいずれか１つに記載のソフトウェア開発支援システム。
【請求項７】
前記参照情報は、前記第１のソフトウェア部品毎に分けて設けられていることを特徴とする請求項１ないし６のいずれか１つに記載のソフトウェア開発支援システム。
【請求項８】
データの指定を受け付ける参照情報受付手段（８１０）と、
第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段（３１０〜３４０）と、
前記開示情報受付手段が受け付けた前記データの指定と前記データの情報とを対応づけた開示情報を記憶装置に記憶させる開示情報記憶制御手段（３４５）と、
前記記憶装置に記憶された前記開示情報から、前記参照情報受付手段が受け付けたデータの指定に対応するデータの情報を検索する開示情報検索手段（８２０）と、
前記開示情報検索手段が検索したデータの情報を表示する開示情報表示手段（８５０）と、を備えたソフトウェア開発支援システム。
【請求項９】
前記参照情報受付手段は、第１のソフトウェア部品が参照するデータの指定を受け付けることを特徴とし、
前記参照情報受付手段が受け付けた前記データの指定と前記第１のソフトウェア部品とを対応づけた参照情報を記憶装置に記憶させる参照情報記憶制御手段（８６５）と、
前記記憶装置に記憶された前記参照情報から、前記開示情報受付手段が受け付けたデータの指定と対応付けられた第１のソフトウェア部品を検索する参照部品検索手段（３５５）と、
前記参照部品検索手段が検索した前記第１のソフトウェア部品を表示する参照部品表示手段（３６０）と、を備えた請求項８に記載のソフトウェア開発支援システム。
【請求項１０】
前記参照情報は、前記第１のソフトウェア部品毎に分けて設けられていることを特徴とする請求項９に記載のソフトウェア開発支援システム。
【請求項１１】
前記開示情報受付手段が受け付ける前記データの情報は、前記データの表現形態に関する情報を含むことを特徴とする請求項８ないし１０のいずれか１つに記載のソフトウェア開発支援システム。
【請求項１２】
前記データの表現形態に関する情報は、前記データの表現における単位を有することを特徴とする請求項１１に記載のソフトウェア開発支援システム。
【請求項１３】
前記データの表現形態に関する情報は、前記データの表現における規格化係数を有することを特徴とする請求項１１または１２に記載のソフトウェア開発支援システム。
【請求項１４】
前記データの表現形態に関する情報は、前記データの表現におけるオフセット値を有することを特徴とする請求項１１ないし１３のいずれか１つに記載のソフトウェア開発支援システム。
【請求項１５】
前記開示情報検索手段が前記参照情報受付手段が受け付けたデータの指定に対応するデータの情報を前記記憶装置に記憶された前記開示情報から見つけることができなかった場合、前記データを開示する擬似的なソフトウェア部品を生成する疑似部品生成手段（８８０、８８５）を備えたことを特徴とする請求項８ないし１４のいずれか１つに記載のソフトウェア開発支援システム。
【請求項１６】
ソフトウェア部品の集合から前記擬似的なソフトウェア部品を検索してその検索結果を表示する疑似部品表示手段（２５）を備えた請求項１５に記載のソフトウェア開発支援システム。
【請求項１７】
前記開示情報は、前記第２のソフトウェア部品毎に分けて設けられていることを特徴とする請求項８ないし１６のいずれか１つに記載のソフトウェア開発支援システム。
【請求項１８】
第１のソフトウェア部品が参照するデータの指定を受け付ける参照情報受付手段、
前記参照情報受付手段が受け付けた前記データの指定と前記第１のソフトウェア部品とを対応づけた参照情報を記憶装置に記憶させる参照情報記憶制御手段、
第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段、
前記記憶装置に記憶された前記参照情報から、前記開示情報受付手段が受け付けたデータの指定と対応付けられた第１のソフトウェア部品を検索する参照部品検索手段、および
前記開示情報受付手段が受け付けたデータの情報に基づいて、前記参照部品検索手段が検索した第１のソフトウェアと前記第２のソフトウェアとの間の前記データの取り扱いの整合性を保つために、前記検索された第１のソフトウェア部品の処理内容を更新する更新手段として、コンピュータを機能させるためのソフトウェア開発支援プログラム。
【請求項１９】
第１のソフトウェア部品が参照するデータの指定を受け付ける参照情報受付手段、
第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段、
前記開示情報受付手段が受け付けた前記データの指定と前記データの情報とを対応づけた開示情報を記憶装置に記憶させる開示情報記憶制御手段、
前記記憶装置に記憶された前記開示情報から、前記参照情報受付手段が受け付けたデータの指定に対応するデータの情報を検索する開示情報検索手段、および
前記開示情報検索手段が検索したデータの情報を表示する開示情報表示手段、として、コンピュータを機能させるためのソフトウェア開発支援プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のソフトウェア部品を結合してソフトウェアを作成する作業において、当該結合の作業を支援するソフトウェア開発支援装置およびソフトウェア開発支援プログラムに関するものである。
【０００２】
【従来の技術】
従来、ソフトウェアは、そのソフトウェアが実現する個々の機能毎にソフトウェア部品として分離した状態で開発され、最終的にそれぞれのソフトウェア部品を結合することで、目的とするソフトウェアが完成される場合が多い。１つのソフトウェアを構成するソフトウェア部品（以下単に部品と記す）のそれぞれは、関数等のデータの公開、参照を他の部品との間で行っている場合が多い。この場合、データの公開側の部品と参照側の部品との間で、当該関数の取り扱いに整合性を持たせる必要がある。
【０００３】
例として、図１４に、Ｃソースコードで表現された２つの部品ＡＢＣ、ＸＹＺ間の変数の公開、参照の関係を示す。パーソナルコンピュータのファイルａｂｃ．ｃに格納される部品ＡＢＣは、ｅｘｔｅｒｎ文より成る外部参照宣言Ｓ１１を含んでいる。これによって、部品ＡＢＣは他の部品によって定義されたＧｅｔ＿Ｒａｔｅ関数を参照することができるようになる。実際、部品ＡＢＣは、自己のｍａｉｎ関数の中でＧｅｔ＿Ｒａｔｅ関数のｃａｌｌＳ１２を行う文を有し、これによってＧｅｔ＿Ｒａｔｅ関数の参照、利用を実現している。
【０００４】
また、パーソナルコンピュータのファイルｘｙｚ．ｃに格納される部品ＸＹＺは、Ｇｅｔ＿Ｒａｔｅ関数の定義文を有している。この定義文においては、Ｇｅｔ＿Ｒａｔｅ関数の戻り値として得られるデータが、Ｄｕｔｙ時間を周期で割った値、すなわち小数点表現によるＤｕｔｙ比である。したがって、この変数を参照する側の部品ＡＢＣでパーセント表示によるＤｕｔｙ比を得たいのであれば、図１４に示すように部品ＡＢＣ内でＧｅｔ＿Ｒａｔｅ関数ｃａｌｌの戻り値を１００倍する必要がある。
【０００５】
この１００倍する処理が必要かどうかは、参照する側の部品の開発者が参照される側の部品のソースコードの処理内容を自分で解析する必要があった。また、何らかの理由で参照される側（公開側）の部品の処理内容が変更され、Ｇｅｔ＿Ｒａｔｅ関数の戻り値が小数点表示からパーセント表示に変更された場合、それに合わせて参照側の部品の処理内容も書き換えなければ、公開側と参照側とで関数の取り扱いに整合性が取れなくなる。
【０００６】
上記の例は、説明を簡単にするため、参照側にて容易にソースコードを解析できるものとしたが、かなり複雑なソースコードの場合では人によるその解析は容易ではなく、作業が非常に煩雑なものとなってしまう。また、解析不充分な状態（あいまいな理解のまま）で参照側の部品のソースコードを作成してしまった場合、不具合の原因を内包してしまうことにもなる。例えば、図１４の例において、Ｇｅｔ＿Ｒａｔｅ関数の戻り値を１００倍するようソースコードを記述することを忘れると、パーセント表示をするつもりが小数点表示となってしまう。
【０００７】
この問題を解決するための従来の方法においては、参照される関数、すなわち公開する関数の情報を、開発者が公開情報として文書上に別途定義して、参照側の部品の開発者がその情報を閲覧できるようにしている。
【０００８】
【発明が解決しようとする課題】
しかし、公開側の部品と参照側の部品とがともに並行開発されている場合においては、この文書作成に手間が掛かり参照側の部品の開発スピードが遅れてしまうという問題や、一旦この文書を作成した後に公開側の部品を変更した後、その変更内容を反映する前に参照側の部品が完成してしまうという、同期のずれによる不具合が起こりうるという問題があった。すなわち、公開する関数の情報を別途作成することに手間がかかることに起因する問題があった。
【０００９】
上記問題点に鑑み、本発明は、複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照されるデータの取り扱いの整合性を保つために人が行う作業量を低減することを目的とする。
【００１０】
【課題を解決するための手段】
上記した課題を解決するための請求項１に記載の発明は、第１のソフトウェア部品が参照するデータの指定を受け付ける参照情報受付手段（８１０）と、前記参照情報受付手段が受け付けた前記データの指定と前記第１のソフトウェア部品とを対応づけた参照情報を記憶装置に記憶させる参照情報記憶制御手段（８６５）と、第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段（３１０〜３４５）と、前記記憶装置に記憶された前記参照情報から、前記開示情報受付手段が受け付けたデータの指定と対応付けられた第１のソフトウェア部品を検索する参照部品検索手段（３５５）と、前記開示情報受付手段が受け付けたデータの情報に基づいて、前記参照部品検索手段が検索した第１のソフトウェアと前記第２のソフトウェアとの間の前記データの取り扱いの整合性を保つために、前記検索された第１のソフトウェア部品の処理内容を更新する更新手段（３６０）と、を備えたソフトウェア開発支援システムである。
【００１１】
これによって、第１のソフトウェア部品が参照するデータの指定と当該第１のソフトウェア部品との対応づけが参照情報として記憶装置に記憶され、またこの参照情報から、第２のソフトウェア部品の開示するデータの指定に対応する第１のソフトウェア部品が検索される。すなわち、第２のソフトウェア部品の開示するデータを参照する第１のソフトウェア部品が検索される。そして、更新手段（３５０）によって第１のソフトウェア部品の処理内容が更新され、その結果第１のソフトウェア部品と第２のソフトウェア部品との間のデータの取り扱いの整合性が保たれる。したがって、複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照されるデータの取り扱いの整合性を保つために人が行う作業量を低減することができる。
【００１２】
なお、データとは、関数、変数、構造体、オブジェクト等を包含する概念である。また、開示とは、任意の外部からの参照を許す公開、および特定の外部のみからの参照を許す限定開示の双方を含む概念である。
【００１３】
また、請求項２に記載の発明は、請求項１に記載のソフトウェア開発支援システムにおいて、前記開示情報受付手段が受け付ける前記データの情報は、前記データの表現形態に関する情報を含み、前記更新手段は、前記開示情報受付手段が受け付けたデータの表現形態に関する情報に基づいて、前記参照部品検索手段が検索した第１のソフトウェアと前記第２のソフトウェアとの間の前記データの取り扱いの整合性を保つために、前記検索された第１のソフトウェア部品の処理内容を更新することを特徴とする。
【００１４】
また、請求項３に記載の発明は、請求項２に記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現における単位を有し、前記更新手段は、前記開示情報受付手段が受け付けた前記単位に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値が当該単位による表現であると取り扱うようにする。
【００１５】
また、請求項４に記載の発明は、請求項２または３に記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現における規格化係数を有し、前記更新手段は、前記開示情報受付手段が受け付けた前記規格化係数に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値に前記規格化係数を乗ずることを特徴とする。
【００１６】
また、請求項５に記載の発明は、請求項２ないし４のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現におけるオフセット値を有し、前記更新手段は、前記開示情報受付手段が受け付けた前記オフセット値に基づいて、前記検索された第１のソフトウェア部品内で参照する前記データの値に前記オフセット値を減ずることを特徴とする。
【００１７】
また、請求項６に記載の発明は、請求項２ないし５のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記更新手段は、第１のソフトウェア部品において前記データを取り扱う形式の定義を変更することで、前記検索された第１のソフトウェア部品の処理内容を更新することを特徴とする。
【００１８】
また、請求項７に記載の発明は、請求項１ないし６のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記参照情報は、前記第１のソフトウェア部品毎に分けて設けられていることを特徴とする。
【００１９】
また、請求項８に記載の発明は、データの指定を受け付ける参照情報受付手段（８１０）と、第２のソフトウェア部品が開示するデータの指定および前記データの情報を受け付ける開示情報受付手段（３１０〜３４０）と、前記開示情報受付手段が受け付けた前記データの指定と前記データの情報とを対応づけた開示情報を記憶装置に記憶させる開示情報記憶制御手段（３４５）と、前記記憶装置に記憶された前記開示情報から、前記参照情報受付手段が受け付けたデータの指定に対応するデータの情報を検索する開示情報検索手段（８２０）と、前記開示情報検索手段が検索したデータの情報を表示する開示情報表示手段（８５０）と、を備えたソフトウェア開発支援システムである。
【００２０】
これによって、第２のソフトウェア部品が開示するデータの指定およびこのデータの情報が開示情報として記憶され、またこの開示情報から、ある受け付けたデータの指定に対応するデータの情報が検索され、この検索されたデータの情報が表示されるので、開発者が作成するソフトウェア部品が参照するデータの情報について、逐一当該データを公開するソフトウェア部品の処理内容を確認する必要がない。したがって、複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照されるデータの取り扱いの整合性を保つために人が行う作業量を低減することができる。
【００２１】
また、請求項９に記載の発明は、請求項８に記載のソフトウェア開発支援システムにおいて、前記参照情報受付手段は、第１のソフトウェア部品が参照するデータの指定を受け付けることを特徴とし、前記参照情報受付手段が受け付けた前記データの指定と前記第１のソフトウェア部品とを対応づけた参照情報を記憶装置に記憶させる参照情報記憶制御手段（８６５）と、前記記憶装置に記憶された前記参照情報から、前記開示情報受付手段が受け付けたデータの指定と対応付けられた第１のソフトウェア部品を検索する参照部品検索手段（３５５）と、前記参照部品検索手段が検索した前記第１のソフトウェア部品を表示する参照部品表示手段（３６０）と、を備えたことを特徴とする。
【００２２】
これによって、第１のソフトウェア部品が参照するデータの指定と当該第１のソフトウェア部品との対応づけが参照情報として記憶装置に記憶され、また、第２のソフトウェア部品の開示するデータの指定を受け付けると、この参照情報から、受け付けたデータの指定に対応する第１のソフトウェア部品が検索される。すなわち、受け付けられた第２のソフトウェア部品の開示するデータを参照する第１のソフトウェア部品が検索される。そして、この第１のソフトウェア部品が表示されるので、第２のソフトウェア部品の開発者は、当該第２のソフトウェア部品が開示するデータの情報を変更した場合等には、当該データを参照する第１のソフトウェア部品の表示を確認することができる。そして、例えばｅ−ｍａｉｌ等の方法で当該第１のソフトウェア部品の開発者に、当該データの情報が変更されたことを通知することができる。
【００２３】
したがって、複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照されるデータの取り扱いの整合性を保つために人が行う作業量を低減することができる。
【００２４】
また、請求項１０に記載の発明は、請求項９に記載のソフトウェア開発支援システムにおいて、前記参照情報は、前記第１のソフトウェア部品毎に分けて設けられていることを特徴とする。
【００２５】
また、請求項１１に記載の発明は、請求項８ないし１０のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記開示情報受付手段が受け付ける前記データの情報は、前記データの表現形態に関する情報を含むことを特徴とする。
【００２６】
また、請求項１２に記載の発明は、請求項１１に記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現における単位を有することを特徴とする。
【００２７】
また、請求項１３に記載の発明は、請求項１１または１２に記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現における規格化係数を有することを特徴とする。
【００２８】
また、請求項１４に記載の発明は、請求項１１ないし１３のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記データの表現形態に関する情報は、前記データの表現におけるオフセット値を有することを特徴とする。
【００２９】
また、請求項１５に記載の発明は、請求項８ないし１４のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記開示情報検索手段が前記参照情報受付手段が受け付けたデータの指定に対応するデータの情報を前記記憶装置に記憶された前記開示情報から見つけることができなかった場合、前記データを開示する擬似的なソフトウェア部品を生成する疑似部品生成手段（８８０、８８５）を備えたことを特徴とする。
【００３０】
また、請求項１６に記載の発明は、請求項１５に記載のソフトウェア開発支援システムにおいて、ソフトウェア部品の集合から前記擬似的なソフトウェア部品を検索してその検索結果を表示する疑似部品表示手段（２５）を備えたことを特徴とする。
【００３１】
また、請求項１７に記載の発明は、請求項８ないし１６のいずれか１つに記載のソフトウェア開発支援システムにおいて、前記開示情報は、前記第２のソフトウェア部品毎に分けて設けられていることを特徴とする。
【００３２】
また、請求項１８に記載の発明は、請求項１に記載の発明をソフトウェアとして実現するものであり、請求項１９に記載の発明は、請求項８に記載の発明をソフトウェアとして実現するものである。
【００３３】
なお、上記各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【００３４】
【発明の実施の形態】
図１に、本発明の一実施形態に係るソフトウェア開発支援システムとしてのパーソナルコンピュータ１の構成を示す。パーソナルコンピュータ１は、ディスプレイ１１、入力装置１２、ＲＡＭ１３、ＲＯＭ１４、ＨＤＤ（ハードディスクドライブ）１５、ＣＰＵ１６等から構成される。
【００３５】
ディスプレイ１１は、ＣＰＵ１６から入力された映像信号を、ユーザに対して映像として表示する。
【００３６】
入力装置１２は、キーボード、マウス等から構成され、ユーザが操作することにより、その操作に応じた信号をＣＰＵ１６に出力する。
【００３７】
ＣＰＵ１６は、パーソナルコンピュータ１に電源が投入されることによって起動すると、ＲＯＭ１４から所定のブートプログラムを読み出して実行し、このブートプログラムに規定されるオペレーティングシステム（以下ＯＳと記す）その他のプログラムを記憶装置としてのＨＤＤ１５から読み出して実行することにより、起動処理を行う。起動処理以後電源が遮断されるまで、ＣＰＵ１６は、入力装置１２からの信号、ＯＳによって予め定められたスケジュール等に基づいて、ＨＤＤ１５に記録されている各種プログラムを当該ＯＳ上のプロセスとして実行する。また、上記した起動処理およびプロセスにおいて、ＣＰＵ１６は必要に応じて入力装置１２から信号の入力を受け付け、またディスプレイ１１に映像信号を出力し、またＲＡＭ１３、ＨＤＤ１５に対してデータの読み出し／書き込みの制御を行う。
【００３８】
図２に、ＨＤＤ１５に保存され、ＯＳ上のプロセスとして実行されるプログラムの１つである結合ツール２０（プログラム開発支援プログラムに相当する）の機能を概念的に示す。結合ツール２０は、公開情報を登録する機能２１、公開情報を検索する機能２２、自動で更新する機能２３、結合作業支援機能２４、ダミーＩ／Ｆを表示する機能２５、および参照部品を表示する機能２７を備えており、それぞれの機能は必要に応じてＨＤＤ１５中に記憶される情報の集合としての情報登録用ＤＢ（データベース）２６に対して情報の読み出し、書き込みを行い、また入力装置１２およびディスプレイ１１を介して公開側開発者１８、参照側開発者１９と情報の授受を行い、またＨＤＤ１５の所定の領域に記憶されている部品ＸＹＺ、部品ＡＢＣ等の部品に対して読み出し、書き込みを行う。
【００３９】
公開側開発者１８が作成する部品ＸＹＺと、参照側開発者１９が作成する部品ＡＢＣとの関係を図３に概念的に示す。部品ＡＢＣは、そのＣソースファイルにおいてＧｅｔＲａｔｅ関数を参照しており、部品ＸＹＺは外部から参照できるＸＹＺ＿ＧｅｔＲａｔｅ関数を算出している。そして、部品ＡＢＣは結合用ファイルｔｏｏｈ．ｈをインクルードしている。結合用ファイルｔｏｏｌ．ｈ内の、ソースファイルのコンパイル時にＣのプリプロセッサによって処理される＃ｄｅｆｉｎｅ文により、部品ＡＢＣ内のＧｅｔＲａｔｅはＸＹＺ＿ＧｅｔＲａｔｅに読み替えられるので、結果として部品ＸＹＺの公開する関数を参照するようになっている。１つのソフトウェアを構成する部品は、このように参照側の部品（第１のソフトウェア部品）、および公開側の部品（第２のソフトウェア部品）となる。なお、部品が参照側であるか公開側であるかは、着目する関数によって決まるようになっているので、ある関数に着目すれば公開側である部品が、別の関数に着目すれば参照側となるような場合もある。なお、結合用ファイルは、後述する様に結合ツール２０によって生成、更新される。
【００４０】
以下、上記した結合ツール２０の各機能について説明する。なお以降は、プログラムを実行することによるＣＰＵ１６の動作を、その実行されるプログラム自体の動作であるとして説明する。結合ツール２０はその実行が始まると、メニュー表示をディスプレイ１１を介して行う。そして、ユーザがこのメニューに表示された項目の１つを選択するための操作を入力装置１２に対して行うことで、その選択に基づいたルーチンを実行し、そのルーチンの実行によって上記した各機能が実現される。
【００４１】
図４に、上記メニューの１つがユーザに選択されることで実行される結合ツール２０のルーチンの１つである公開情報の登録処理のフローチャートを示す。この登録処理は、図２に示した機能のうち、公開情報を登録する機能２１、自動で更新する機能２３、参照部品を表示する機能２７等の機能を実現するようになっている。
【００４２】
ステップ３１０では、ユーザに対してキーワード入力を促すための表示をディスプレイ１１に行わせる。キーワードとは、予め公開側および参照側の部品の開発者の間で取り決められた、特定の特性値を戻り値として返す関数に与えられた別名である。特性値とは、例えばエンジン回転数、水温、各気筒の噴射量、アクセル開度等である。本実施形態では、エンジン回転数を戻り値として返す関数のキーワードはＮＥ、水温を戻り値として返す関数のキーワードはＴＨＷ、各気筒の噴射量を戻り値として返す関数のキーワードはＱＯＵＴ、アクセル開度を戻り値として返す関数のキーワードはＡＣＣＰ、との取り決めがなされている。
【００４３】
そして、入力装置１２からユーザの入力によるキーワードの情報を受け取ると、処理はステップ３２０に進み、情報登録用ＤＢ２６内に記憶されている公開情報のテーブル内で、当該キーワードを検索する。図５に、この公開情報のテーブルの内容の一例を示す。公開情報は、公開情報エントリを複数有しており、本実施形態においては、図５の様に各公開情報エントリを一行とするテーブルとして構成される。
【００４４】
また、公開情報エントリはキーワード、および当該キーワードに係る型、単位、ＬＳＢ、オフセット、関数名、パラメータ、概要から成る。
【００４５】
型とは、関数が返す戻り値の変数型であり、図５の例においては、ＮＥの関数は浮動小数点型（ＦＬｏａｔ）を、ＴＨＷの関数は１バイトｕｎｓｉｎｅｄ型（Ｕ１）を、ＱＯＵＴおよびＡＣＣＰの関数は２バイトｕｎｓｉｎｅｄ型（Ｕ２）を、戻り値の変数型としている。
【００４６】
単位とは、回転数ｒｐｍ、温度ｄｅｇ、単位気筒当たりの体積ｍｍ３／ｓｔ、パーセント％等の、関数が返す戻り値の単位を示すものである。
【００４７】
ＬＳＢとは、関数が返す戻り値の規格化の係数を示すものである。すなわち、戻り値が示す特性値と、その戻り値の実際の値との比を示すものである。図５の例においては、ＡＣＣＰのＬＳＢは０．１であり、ＡＣＣＰの関数の戻り値の実際の値が１００の場合に、その戻り値の示すアクセル開度は１０％となる。
【００４８】
オフセットとは、関数が返す戻り値のオフセット値、すなわち、戻り値の実際の値と、その戻り値が示す特性値の値とのずれを示すものである。図５の例においては、ＴＨＷのオフセット値は４０であり、ＴＨＷの関数の戻り値の実際の値が４０の場合に、その戻り値の示す水温値は０℃となる。
【００４９】
関数名とは、部品が公開している関数の名称から一意に導かれる名称である。ある部品で公開する関数を作成する場合には、その関数の名称として、その部品の名称に文字”＿”を追加したものから始まる名称を付けるようにあらかじめ取り決められている。そして、関数名とは、上記名称の＿より後の部分のことである。図３の例においては、部品ＸＹＺが公開する、名称ＸＹＺ＿ＧｅｔＲａｔｅの関数の関数名は、ＧｅｔＲａｔｅとなる。
【００５０】
パラメータとは、関数が返す戻り値の属性を示すための付加的な値である。図５の例においては、ＱＯＵＴの関数が返す戻り値の属性として、気筒ナンバーが付与される。これは、当該キーワードの戻り値が複数ある気筒のうちどれに係るものであるかを特定するためのものである。
【００５１】
概要とは、関数が返す戻り値が示す特性値の性質を示す文である。
【００５２】
ステップ３２０の検索とは、具体的には、この公開情報のテーブルから、ステップ３１０で入力されたキーワードと同一のキーワードを有する公開情報エントリを特定することである。
【００５３】
次にステップ３３０では、ステップ３２０の検索の結果、当該キーワードを有する公開情報エントリが特定されたか否かを判定し、特定されていれば処理はステップ３３５に進み、特定されていなければ処理はステップ３４０に進む。
【００５４】
ステップ３３５では、現在登録しようとしている関数の公開情報が既に存在している旨、および登録の作業を継続するか否かの選択を促す旨の警告をディスプレイ１１に表示させる。
【００５５】
次にステップ３３８では、ユーザの上記促した選択の操作に基づく入力装置１２からの信号入力があるまで待ち、入力があると、その入力が作業を継続する旨の信号であるか否かを判定し、継続する旨の信号ならば処理はステップ３４０に進み、そうでなければ公開情報の登録処理は終了する。
【００５６】
ステップ３４０では、公開情報登録画面をディスプレイ１１に表示させる。具体的には、ステップ３１０で入力されたキーワードに対応するエントリの作成、更新、削除のための入力を促すダイアログボックスルーチンを起動する。
【００５７】
ダイアログボックスルーチンはＯＳあるいは結合ツール２０自身によって提供されるプログラムであり、起動することで、ディスプレイ１１に文字および数値の入力フィールドやボタンを有するダイアログボックスを表示させる。またダイアログボックスルーチンは、ユーザがマウスやキーボード等の入力装置１２を用いて上記した入力フィールドの選択やボタンの押下のための操作を行ったことを検知することができる。そして、入力フィールドの選択が行われたことを検知すると、当該入力フィールドをアクティブとし、引き続き入力装置１２の操作によって入力された文字や数値を当該入力フィールド内に表示し、また入力された文字や数字を、当該入力フィールドの名称と関連づけてＲＡＭに記録する。また、ボタンの押下が行われたことを検知すると、当該ボタンにあらかじめ規定された処理を行う。また、他のプログラムからデータを表示する命令を受けると、この命令に基づいてダイアログボックス内に当該データの表示をディスプレイ１１に行わせる。
【００５８】
図６に、ステップ３４０で起動したダイアログボックスルーチンによって表示される公開情報登録ダイアログボックスＳ３０を例示する。公開情報登録ダイアログボックスＳ３０は、複数の入力フィールドＳ３１〜Ｓ３８およびボタンＳ３９、Ｓ３９１を有している。
【００５９】
入力フィールドＳ３１には、公開情報の登録処理のルーチンからの命令に基づいて、ステップ３１０で入力されたキーワードが表示される。入力フィールドＳ３２〜Ｓ３８の名称は、それぞれその公開情報エントリの概要、型、単位、ＬＳＢ、オフセット、関数名、パラメータに対応している。当該キーワードの公開情報エントリが存在していなければ、入力フィールドＳ３２〜Ｓ３８中には何も表示されない。
【００６０】
ユーザがこれら入力フィールドＳ３２〜３８に、開発を行った関数についての情報を入力し、さらにＯＫボタンＳ３９１または削除ボタンＳ３９を押下する操作を行うと、このダイアログボックスルーチンはＲＡＭに記録した当該関数の情報、およびＯＫボタンＳ３９１が押された旨または削除ボタンＳ３９が押された旨の情報を公開情報の登録処理のルーチンに渡す。この情報を受けた公開情報の登録処理のルーチンは、処理をステップ３４５に進める。
【００６１】
ステップ３４５では、上記ダイアログボックスルーチンから受けた情報を公開情報エントリとして、上述した公開情報のテーブルに追加する。なお、既に同一のキーワードを有するエントリが公開情報のテーブルにあれば、そのエントリを削除した後に上記追加を行う。
【００６２】
次にステップ３５０では、ステップ３４５による登録が、公開情報エントリの更新または削除のためのものであるか、あるいは新規登録のためのものであるかを判定する。削除のためのものであると判定する場合は、削除ボタンＳ３９が押された旨の信号をダイアログボックスルーチンから受けた場合である。更新のためのものであると判定する場合は、ＯＫボタンＳ３９１が押された旨の信号をダイアログボックスルーチンから受け、かつステップ３３０で既に存在する当該キーワードの公開情報エントリが特定された場合である。新規登録のためのものであると判定する場合は、ＯＫボタンＳ３９１が押された旨の信号をダイアログボックスルーチンから受け、かつステップ３３０で既に存在する当該キーワードの公開情報エントリが特定されなかった場合である。
【００６３】
更新または削除のためのものであると判定した場合、処理はステップ３５５に進み、新規登録のためのものであると判定した場合、この公開情報の登録処理のルーチンは終了する。
【００６４】
ステップ３５５では、参照部品の検索を行う。具体的には、ステップ３１０で入力されたキーワードを有する参照情報エントリを情報登録用ＤＢ２６の参照情報のテーブルから特定する。
【００６５】
図７に、参照情報のテーブルの一例を示す。参照情報は、参照情報エントリを複数有しており、本実施形態においては、図７の様に各参照情報エントリを一行とするテーブルとして構成される。
【００６６】
また、参照情報エントリはキーワード、参照部品のリストから成る。参照部品のリストとは、当該キーワードの関数を参照している部品の名称のリストである。図７の例においては、キーワードＴＨＷに係る参照情報エントリには、キーワードとしてＴＨＷ、参照部品リストとしてＤＥＦ、ＧＨＩを有している。これは、キーワードＴＨＷの関数は、部品ＤＥＦ、部品ＧＨＩから参照されていることを示している。
【００６７】
なお、後述する様に、この公開情報のテーブルの内容は、図２に示す結合作業支援機能２４の実現によって、参照側開発者１９の操作に基づいて更新されるようになっている。従って、この公開情報のテーブルを参照することで、あるキーワードの関数を参照している部品を全て検索することができる。
【００６８】
そしてステップ３６０では、ステップ３５５で検索の結果特定した参照情報エントリの参照部品リストに含まれる部品の内容を更新する。具体的には、当該参照部品リストに名称が含まれる部品のソースコードを有するファイルを特定し、当該ファイルの内容を更新する。なお、本実施形態においては部品の名称と、当該部品のソースコードを含むファイルのプレフィックス（．の前の部分）とが同一であるとしており、この関係によって部品の名称から当該部品のソースコードを含むファイル（以下ソースファイルと記す）が特定される。
【００６９】
部品の処理内容の更新は、具体的には当該部品が参照するファイルの表現形態を変換する定義文を作成または書き換えることで実現する。このような書き換えによって、参照側の部品の処理内容が更新されることになる。本実施形態においては、図３で示した結合用ファイルｔｏｏｌ．ｈの内容を書き換える。図８に、一例として、関数Ｇｅｔ＿Ｒａｔｅの公開情報の単位が％（パーセント表示）から無し（小数点表示）に変更となった場合の、結合用ファイルの書き換えの内容を示す。
【００７０】
この図の例においては、公開側の部品ＸＹＺにおいて、公開する関数の戻り値は、特性値の表現形態を％表示から小数点表示に変更したので、公開側と参照側との部品の間で関数の取り扱いの整合性を保つには、参照側の部品ＡＢＣにおいて、Ｇｅｔ＿Ｒａｔｅ関数の呼び出しによって得た戻り値に１００を乗ずる必要がある。そこで、結合用ファイルにおいて、＃ｄｅｆｉｎｅ文のＧｅｔ＿Ｒａｔｅの部分を、これに１００を乗じたものの表現であるＧｅｔ＿Ｒａｔｅ＊１００に変更する。つまり、開示情報に記憶された単位に基づいて、検索された参照部品内で参照する関数の値を当該単位によるものであると取り扱うために、＃ｄｅｆｉｎｅ文を変更する。
【００７１】
また、開示情報に記憶されたＬＳＢおよびオフセットに基づいて、検索された参照側部品内で参照する関数の値にＬＳＢを乗じ、さらにオフセットを減じるように、＃ｄｅｆｉｎｅ文を変更するようになっていてもよい。
【００７２】
このように結合用ファイルの＃ｄｅｆｉｎｅ文、すなわち参照側の部品において当該関数を取り扱う形式の定義を変更することで、ステップ３６０の処理が実現される。
【００７３】
なお、ステップ３６０では、自動更新の処理の代わりに、ステップ３５５で検索した部品を表示するようになっていてもよい。
【００７４】
ステップ３６０の処理の後、公開情報の登録処理のルーチンは終了する。
【００７５】
このように、ステップ３１０〜３４５で、キーワードとして入力された名称を、当該部品によって公開される関数の指定として受け付け、また公開情報登録画面内のパラメータとして入力された値を、当該関数の表現形態に関する情報として受け付ける。そしてその際、入力された関数の指定が既に公開情報として情報登録用ＤＢ２６に記憶されていれば、その旨の警告を表示し、その後登録処理を終了する。
【００７６】
またステップ３５０〜３６０では、ＨＤＤ１５の記憶された情報登録用ＤＢ２６の参照情報から、開示情報受付手段が受け付けたデータの指定と対応付けられた部品を検索し、入力された当該関数の表現形態に関する情報に基づいて、この検索した部品の処理内容を更新する。この処理内容の更新は、公開側の部品と参照側の部品との間で当該関数の取り扱いの整合性を保ためのものである。
【００７７】
次に、図２の公開情報を検索する機能２２、結合作業支援機能２４の処理を実現するための公開情報の参照処理のルーチンについて説明する。このルーチンは、先述した結合ツール２０のメニューの１つがユーザによって選択されることで開始し、まず図９に例示するような参照部品指定画面Ｓ１００をディスプレイ１１に表示させる。そして、ユーザが入力装置１２を用いて入力フィールドＳ１０１に文字を入力したことを検知すると、その入力された文字を当該入力フィールドＳ１０１に表示し、その後ＯＫボタンＳ１０２が押下されたことを検知すると、当該入力された文字を部品名であるとしてＲＡＭ１３に記録し、その後、図１０にフローチャートとして示す公開情報の参照の処理を開始する。
【００７８】
ステップ８１０では、図１１に例示するような公開情報参照ダイアログボックスＳ５０をディスプレイ１１に表示させることで、ユーザにキーワードの入力を促す。公開情報参照ダイアログボックスＳ５０は、キーワードを入力するための入力フィールドＳ５１、およびＯＫボタンＳ５１１、外部参照追加ボタンＳ５９、外部参照ボタンＳ５９２、関数名コピーボタンＳ５９１を有している。
【００７９】
ユーザが入力装置１２を用いて入力フィールドＳ５１を選択してキーワードを入力すると、当該入力フィールドＳ５１に入力されたキーワードが表示される。そして、ユーザが入力装置１２を用いてＯＫボタンＳ５１１を押下する操作を行ったことを検知すると、処理はステップ８２０に進み、先に図５を用いて説明した公開情報のテーブル内で、当該キーワードを検索する。具体的には、当該公開情報のテーブル内の、ステップ８１０で入力されたキーワードに係る公開情報エントリを特定する。
【００８０】
次にステップ８３０で、当該キーワードを有する公開情報エントリが特定されたか否かを判定し、特定されていれば処理はステップ８５０に進み、特定されていなければ処理はステップ８８０に進む。
【００８１】
ステップ８５０では、図１１に示した公開情報参照ダイアログボックスＳ５０を表示するダイアログボックスルーチンを起動し、ステップ８２０にて特定した公開情報エントリの内容を当該ダイアログボックスに表示させる命令を渡す。具体的には、当該公開情報エントリの概要を位置Ｓ５２に、型をＳ５３に、単位を位置Ｓ５４に、ＬＳＢを位置Ｓ５５に、オフセット値を位置Ｓ５６に、関数名を位置Ｓ５７に、パラメータを位置Ｓ５８に表示させる命令をこのダイアログボックスルーチンに渡す。
【００８２】
また、この公開情報参照ダイアログボックスＳ５０は、ＯＫボタンＳ５１１、外部参照追加ボタンＳ５９、外部参照削除ボタンＳ５９２、関数名コピーボタンＳ５９１を有している。
【００８３】
ＯＫボタンＳ５１１が押下されると、ダイアログボックスプログラムは終了し、同時に公開情報の参照処理プログラムも終了させる。
【００８４】
関数名コピーボタンＳ５９１が押下されると、ダイアログボックスルーチンは位置Ｓ５７に表示されている関数名をクリップボードにコピーする。なお、クリップボードとは、ＯＳによって提供される特定のメモリ領域であり、ユーザは特定の操作をすることによってこのクリップボードの内容を作成中のソースコード中に追記することができる。このようなクリップボードによるいわゆるカット＆ペースト機能を実現することにより、参照側開発者１９が参照する関数名を直接タイプしてソースコードに追記する必要がなくなる。
【００８５】
外部参照追加ボタンＳ５９、外部参照削除ボタンＳ５９２は、押下されると、、このダイアログボックスルーチンが、公開情報参照ダイアログボックスＳ５０に表示した情報、および外部参照追加ボタンＳ５９が押された旨または外部参照削除ボタンＳ５９２が押された旨の情報を公開情報の登録処理のルーチンに渡す。
【００８６】
公開情報の参照処理では、ステップ８５０の後、ダイアログボックスルーチンから上記した情報および外部参照追加ボタンＳ５９が押された旨または外部参照削除ボタンＳ５９２が押された旨の情報が渡されるまでステップ８６０および８７０の処理を繰り返し、外部参照追加ボタンＳ５９が押された旨の情報が渡されると処理はステップ８６５に進み、外部参照削除ボタンＳ５９２が押された旨の情報が渡されると処理はステップ８７５に進む。
【００８７】
ステップ８６５では、ダイアログボックスルーチンから外部参照追加ボタンＳ５９が押された旨の情報と共に受けた公開情報を外部参照に自動的に追加する。この自動追加の方法は、図４のステップ３６０と同様、で関数の定義文を生成または更新することで実現する。
【００８８】
またステップ８７５では、ダイアログボックスルーチンから外部参照追加ボタンＳ５９が押された旨の情報と共に受けた公開情報に係る関数を呼び出している部分をソースコードから削除する。ステップ８６５、８７５の後、公開情報の参照処理のルーチンは終了する。
【００８９】
また、ステップ８３０で当該キーワードを有する公開情報エントリが特定されていないと判定された場合に進むステップ８８０では、ステップ８１０で入力された関数のダミーＩ／Ｆ（インターフェース）を作成するかどうかの決定を促す旨の表示を行い、その決定の入力に基づく入力装置１２からの信号の入力があると、それが作成する旨の信号であれば処理はステップ８８５に進み、作成しない旨の信号であれば公開情報の参照処理のルーチンは終了する。
【００９０】
関数のダミーＩ／Ｆとは、当該関数の戻り値が示すべき特性値を実際に計算または検出することなく、仮の値を戻り値とするような、当該関数の代用となる疑似的なソフトウェア部品である。この擬似的なソフトウェア部品としては、例えば、あらかじめ定められたその特性値の代表的な値を常に返すような関数、あるいは当該代用される関数名を特定の値に読み替える定義文（Ｃにおいては＃ｄｅｆｉｎｅ文）、等がある。
【００９１】
ステップ８８５では、当該キーワードの関数についてのダミーＩ／Ｆを生成する。この際、当該キーワードについてのダミーＩ／Ｆの関数名は、“Ｄｕｍｍｙ＿”の文字列から始まるようにあらかじめ決められていてもよい。
【００９２】
このように、公開情報の参照処理のルーチンでは、ステップ８１０で部品が参照する関数のキーワードを受け付け、ステップ８２０では、受け付けた関数の指定に対応する関数の情報を公開情報のテーブルから検索する。そして、ステップ８５０では、検索した関数の表示形態に関する情報を表示する。また、ステップ８６５では、ステップ８１０で受け付けたキーワードと、図４を用いて説明した様に入力された部品の名称とを対応づけた参照情報を記憶装置に記憶させる。
【００９３】
また、参照する関数の情報が公開情報に存在しない場合、ステップ８８０において、当該関数を公開する擬似的な部品を生成する。
【００９４】
次に、図２に示したダミーＩ／Ｆを表示する機能２５の機能について説明する。この機能は、情報登録用ＤＢ２６の公開情報のテーブルに記憶された部品から擬似的なソフトウェア部品としてのダミーＩ／Ｆを検索してその検索結果を表示するためのものである。この機能によって、ソフトウェアの開発の最終段階で、ソフトウェアがダミーＩ／Ｆを残していないかを開発者が確認することができる。
【００９５】
具体的には、このルーチンは、先述した結合ツール２０のメニューの１つがユーザによって選択されることで開始し、情報登録用ＤＢ２６の公開情報のテーブルを読み出し、このテーブル中の各公開情報エントリの内容から、当該公開情報エントリに係る関数がダミーであるか否かを判定する。判定の基準となる公開情報エントリの内容としては、例えばその公開情報エントリが有する関数名が文字列“Ｄｕｍｍｙ＿”で始まるか否を用いる。
【００９６】
そしてこのルーチンは、ダミーであると判定した関数について、その関数のキーワードを有する参照情報エントリを参照情報のテーブルから読み出し、そのキーワードと参照部品リストをディスプレイ１１に表示させる。これによって、全てのダミーＩ／Ｆの関数のキーワードと、その関数を参照する部品との対応がディスプレイ１１によって表示される。図１２に、このようなダミーＩ／Ｆ表示の一例を示す。この例においては、キーワードＳ７１と参照している部品名Ｓ７２との対応が表として表示されている。
【００９７】
以上のような結合ツール２０の動作によって、参照側の部品が参照する関数の指定と当該参照側の部品との対応づけが参照情報として記憶装置に記憶され、またこの参照情報から、公開側の部品の開示する関数の指定に対応する参照側の部品が検索される。すなわち、公開側の部品の開示する関数を参照する参照側の部品が検索される。そして、参照側の部品の処理内容が更新され、その結果参照側の部品と公開側の部品との間の関数の取り扱いの整合性が保たれる。
【００９８】
また、公開側の部品が開示する関数の指定およびこの関数の情報が開示情報として記憶され、またこの開示情報から、受け付けた関数の指定に対応する関数の情報が検索され、この検索された関数の情報が表示されるので、開発者が作成するソフトウェア部品が参照する関数の情報について、逐一当該関数を公開するソフトウェア部品の処理内容を確認する必要がない。
【００９９】
また、参照側の部品が参照する関数の指定と当該参照側の部品との対応づけが参照情報として記憶装置に記憶され、また、公開側の部品の開示する関数の指定を受け付けると、この参照情報から、受け付けた関数の指定に対応する参照側の部品が検索される。すなわち、受け付けられた公開側の部品の開示する関数を参照する参照側の部品が検索される。そして、この参照側の部品が表示されるので、公開側の部品の開発者は、当該公開側の部品が開示する関数の情報を変更した場合等には、当該関数を参照する参照側の部品の表示を確認することができる。そして、例えばｅ−ｍａｉｌ等の方法で当該参照側の部品の開発者に、当該関数の情報が変更されたことを通知することができる。
したがって、複数のソフトウェア部品を結合する作業において、当該複数のソフトウェア間で公開、参照される関数の取り扱いの整合性を保つために人が行う作業量を低減することができる。
【０１００】
なお、本実施形態においては、ソフトウェア開発支援システムを１台のパーソナルコンピュータ１によって実現しているが、必ずしもこのようになっていなくともよく、例えば、インターネットやＬＡＮ等のネットワークを介して接続される２以上の装置に結合ツール２０の各機能が分散されて設けられていてもよい。
【０１０１】
また、本実施形態においては、情報登録用ＤＢ２６中の公開情報と参照情報は、それぞれ１つのファイルから成り、複数の部品についての情報を有している。しかし、必ずしもこのようになっている必要はなく、部品毎にその部品に関する公開情報、参照情報が設けられ、それぞれが別個のファイルに格納されていてもよい。図１３に、このようにして設けられた公開情報のファイル、参照情報のファイルの構成の一例を示す。この図に示す例では、例えば部品ＡＡＡに関する公開参照情報Ｓ８１としては、公開情報ファイルＳ８２と参照情報ファイルＳ８３とがある。そして、公開情報ファイルＳ８２は当該部品のキーワード、型、単位、ＬＳＢ、オフセット、関数名、パラメータ、概要の情報を含む。
【０１０２】
参照情報ファイルＳ８３は、当該部品の名称および当該部品が参照する関数のキーワードのリストから成る。このような公開参照情報が、例えば部品ＢＢＢに付いての公開参照情報Ｓ８４、部品ＣＣＣに付いての公開参照情報Ｓ８５等、部品毎に存在する。
【０１０３】
このようになっていることで、例えば情報登録用ＤＢ２６のあるシステムに対してアクセスできない開発者が存在する場合にも対応することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るパーソナルコンピュータ１の構成を示す図である。
【図２】結合ツール２０の機能を概念的に示す図である。
【図３】公開側開発者１８が作成する部品ＸＹＺと、参照側開発者１９が作成する部品ＡＢＣとの関係を概念的に示す図である。
【図４】公開情報の登録処理のフローチャートを示す図である。
【図５】公開情報のテーブルの内容の一例を示す図表である。
【図６】公開情報登録ダイアログボックスＳ３０の一例を示す図である。
【図７】参照情報のテーブルの一例を示す図表である。
【図８】結合用ファイルの書き換え後の内容の一例を示す図である。
【図９】参照部品指定画面Ｓ１００の一例を示す図である。
【図１０】公開情報の参照の処理を示すフローチャートである。
【図１１】公開情報参照ダイアログボックスＳ５０の一例を示す図である。
【図１２】ダミーＩ／Ｆ表示の一例を示す図である。
【図１３】部品毎に分けられた公開情報のファイル、参照情報のファイルの構成の一例を示す図である。
【図１４】Ｃソースコードで表現された２つの部品ＡＢＣ、ＸＹＺ間の変数の公開、参照の関係を示す図である。
【符号の説明】
１…パーソナルコンピュータ、１１…ディスプレイ、１２…入力装置、
１３…ＲＡＭ、１４…ＲＯＭ、１５…ＨＤＤ、１６…ＣＰＵ、
１８…公開側開発者、１９…参照側開発者、２０…結合ツール、
２１…公開情報を登録する機能、２２…公開情報を検索する機能、
２３…自動で更新する機能、２４…結合作業支援機能、
２５…ダミーＩ／Ｆを表示する機能、２６…情報登録用ＤＢ、
２７…参照部品を表示する機能。
【図１】
2004362048.tif 000003
【図２】
2004362048.tif 000004
【図３】
2004362048.tif 000005
【図４】
2004362048.tif 000006
【図５】
2004362048.tif 000007
【図６】
2004362048.tif 000008
【図７】
2004362048.tif 000009
【図８】
2004362048.tif 000010
【図９】
2004362048.tif 000011
【図１０】
2004362048.tif 000012
【図１１】
2004362048.tif 000013
【図１２】
2004362048.tif 000014
【図１３】
2004362048.tif 000015
【図１４】
2004362048.tif 000016