(57)【要約】  本発明は管理サーバ、管理システム及び管理ネットワークに関し、特に半導体装置のテスト用プログラムの雛形である雛形プログラムの管理において、雛形プログラムの管理効率を向上することが目的とされる。そして、上記目的を達成するために、雛形プログラム管理サーバ（６）は、制御部（２１）と記憶部（２２）とを備え、制御部（２１）は雛形プログラムアクセス許可部（２１０）を有する。記憶部（２２）はディレクトリ（１０〜１３，１１１〜１１３，１２１〜１２３，１３１〜１３３）を有し、これらはいずれも雛形プログラムを格納することができる。当該ディレクトリには、それぞれアクセス権限が設定されている。雛形プログラムアクセス許可部（２１０）は、アクセス権限が満足された場合にのみ、当該アクセス権限に対応するディレクトリへのアクセスを許可する。
2006137126.tif 000002
【特許請求の範囲】
【請求項１】
アクセス権限が設定された複数のディレクトリを有し、前記ディレクトリにおいて半導体装置のテスト用プログラムの雛形である雛形プログラムを格納する記憶部と、
前記アクセス権限が満足された場合にのみ、当該アクセス権限に対応する前記ディレクトリにおいて格納された前記雛形プログラムへのアクセスを許可する雛形プログラムアクセス許可部と
を含む雛形プログラム管理サーバと、
前記雛形プログラム管理サーバに接続され、パスワードを入力可能な端末と
を備え、
前記雛形プログラム管理サーバは、前記端末で入力された前記パスワードを認証した場合にのみ前記ディレクトリへの前記アクセスを前記アクセス権限に従って可能にし、
前記端末からアクセス可能な前記ディレクトリから選択された前記雛形プログラムに基づいて前記テスト用プログラムを生成するテストプログラム生成部
を更に備える、雛形プログラム管理システム。
【請求項２】
前記半導体装置の所定の製造段階での検査において、前記所定の製造段階で使用しないことが選定された前記テスト用プログラムが適用された際には警告を促す警告部を更に備える、請求項１記載の雛形プログラム管理システム。
【請求項３】
前記雛形プログラム管理サーバは、前記雛形プログラムに関する履歴を記憶する履歴記憶部を更に含み、
前記テストプログラム生成部は、前記テスト用プログラムの生成に伴って、それに用いた前記雛形プログラムに関する履歴を前記雛形プログラム管理サーバに与え、
前記雛形プログラム管理サーバは、当該履歴を前記履歴記憶部に書き込む、請求項１記載の雛形プログラム管理システム。
【請求項４】
前記半導体装置の所定の製造段階での検査において、前記所定の製造段階で使用しないことが選定された前記テスト用プログラムが適用された際には警告を促す警告部を更に備える、請求項３記載の雛形プログラム管理システム。
【請求項５】
前記ディレクトリは階層構造を有し、
一の前記ディレクトリに対応した前記アクセス権限は、前記一の前記ディレクトリに対して上位である他の前記ディレクトリの全てについてもアクセス権限として有効である、請求項１乃至請求項４のいずれか一つに記載の雛形プログラム管理システム。
【請求項６】
請求項５に記載の雛形プログラム管理システムの複数を互いに接続して備え、
所定の前記雛形プログラム管理システムが、他の前記雛形プログラム管理システムに前記雛形プログラムを配信し、
前記他の前記雛形プログラム管理システムは、最上位にある前記ディレクトリに格納される一の前記雛形プログラムを更新する、雛形プログラム管理ネットワーク。
【請求項７】
半導体装置のテスト用プログラムの雛形である雛形プログラムと、前記雛形プログラムに関する仕様書とを格納する第１の記憶部と、
入力された雛形プログラムから仕様書を自動で生成する仕様書自動生成部と、
前記仕様書自動生成部で生成された前記仕様書に記載の不備がないか否かを判断する第１の判断部と、
前記第１の判断部で記載の不備がないと判断された場合に、前記入力された雛形プログラムの書式をチェックし、前記書式に不備がないか否かを判断する雛形プログラム書式チェック部と
を備え、
前記雛形プログラム書式チェック部が前記書式に不備がないと判断した場合に、前記入力された雛形プログラム及び自動で生成された前記仕様書を前記第１の記憶部に格納する、雛形プログラム管理サーバ。
【請求項８】
前記第１の記憶部に格納される前記雛形プログラムの一を指定する指定部と、
前記指定部で指定された前記雛形プログラムを部分的に改変し、これを前記仕様書自動生成部に入力する改変部と
を更に備える、請求項７記載の雛形プログラム管理サーバ。
【請求項９】
前記雛形プログラム書式チェック部は、
前記雛形プログラムが有する指令の組合せを予め記憶する第２の記憶部と、
前記入力された雛形プログラムが有する指令の組合せが、前記第２の記憶部に記憶された前記指令の組合せと一致する場合に前記書式に不備がないと判断し、一致しない場合に前記書式に不備があると判断する第２の判断部と
を有する、請求項８記載の雛形プログラム管理サーバ。
【請求項１０】
前記雛形プログラム書式チェック部は、
前記雛形プログラムが有する指令の組合せを予め記憶する第２の記憶部と、
前記入力された雛形プログラムが有する指令の組合せが、前記第２の記憶部に記憶された前記指令の組合せと一致する場合に前記書式に不備がないと判断し、一致しない場合に前記書式に不備があると判断する第２の判断部と
を有する、請求項７記載の雛形プログラム管理サーバ。
【請求項１１】
前記雛形プログラムに関する履歴を記憶する履歴記憶部を更に備え、
前記第２の判断部が一致すると判断した場合に、前記入力された雛形プログラムに関する前記履歴を前記履歴記憶部に書き込む、請求項９乃至請求項１０のいずれか一つに記載の雛形プログラム管理サーバ。
【請求項１２】
前記雛形プログラム書式チェック部で前記書式に不備がないと判断された場合に、前記入力された雛形プログラムと前記第１の記憶部に格納された前記雛形プログラムとの一致の割合を算出する一致率算出部と、
前記一致率算出部で算出された前記割合と所定の値との大小を比較する比較部と
を更に備え、
前記割合が前記所定の値よりも低いと前記比較部が判断した場合に、前記入力された雛形プログラム及び自動で生成された前記仕様書を前記第１の記憶部に格納する、請求項７乃至請求項１０のいずれか一つに記載の雛形プログラム管理サーバ。
【請求項１３】
前記雛形プログラムに関する履歴を記憶する履歴記憶部を更に備え、
前記割合が前記所定の値よりも低いと前記比較部が判断した場合に、前記入力された雛形プログラムに関する前記履歴を前記履歴記憶部に書き込む、請求項１２記載の雛形プログラム管理サーバ。
【請求項１４】
前記雛形プログラムは複数の部分プログラムを配列して有し、
前記一致率算出部は、
前記第１の記憶部に格納される前記雛形プログラムから抽出した前記部分プログラム及びその配列を記憶する第３の記憶部と、
前記入力された前記雛形プログラムが有する前記部分プログラム及びその配列と、前記第３の記憶部が記憶する前記部分プログラム及び前記配列とを比較して前記割合を算出する算出部と
を有する、請求項１２記載の雛形プログラム管理サーバ。
【請求項１５】
前記雛形プログラムに関する履歴を記憶する履歴記憶部を更に備え、
前記割合が前記所定の値よりも低いと前記比較部が判断した場合に、前記入力された雛形プログラムに関する前記履歴を前記履歴記憶部に書き込む、請求項１４記載の雛形プログラム管理サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は管理サーバ、管理システム及び管理ネットワークに関し、特に半導体装置のテスト用プログラムの雛形である雛形プログラムの管理に関する。
【背景技術】
【０００２】
半導体装置の製造段階において、性能や品質など種々の検査が例えば検査装置を用いて行われる。検査装置には半導体装置のテスト用プログラム（以下、「テストプログラム」という。）が与えられ、検査装置は当該テストプログラムを実行することで上記検査を行う。【０００３】
テストプログラムは、その雛形である雛形プログラムに基づいて生成される。雛形プログラムから所望のテストプログラムを生成する技術については、例えば特許文献１に紹介されている。【０００４】
本発明に関連するその他の技術が特許文献２〜４に開示されている。【０００５】
【特許文献１】特開２０００−１６３２７８号公報
【特許文献２】特開２０００−６６８８７号公報
【特許文献３】特開２００２−３４０９６０号公報
【特許文献４】特開２００４−７１８４４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
雛形プログラムは、その内容が変更可能であって、ユーザごとにその変更を行えることが望ましい。例えば上述した特許文献１においても雛形プログラムの内容を変更する技術が開示されている。【０００７】
しかし、ユーザの誰もが雛形プログラムを改変できるとすれば、一のユーザによって当該雛形プログラムが改変された場合、他のユーザが改変前の雛形プログラムを使用できなくなる。【０００８】
また、複数の雛形プログラムが重複する場合には、雛形プログラムを管理するという観点からは効率が低下する。【０００９】
更には、雛形プログラムの重複を避けるため、管理者のみが雛形プログラムの改変が可能であるとすると、管理者が雛形プログラムの改変を行っている間は、ユーザが当該雛形プログラムを使用できず、利用効率が低下する。【００１０】
本発明は上述した事情に鑑みてなされたものであり、雛形プログラムの管理効率を向上することが目的とされる。
【課題を解決するための手段】
【００１１】
この発明にかかる雛形プログラム管理システムは、雛形プログラム管理サーバと、端末と、テストプログラム生成部とを備える。前記雛形プログラム管理サーバは、記憶部と、雛形プログラムアクセス許可部とを含む。前記記憶部は、アクセス権限が設定された複数のディレクトリを有し、前記ディレクトリにおいて半導体装置のテスト用プログラムの雛形である雛形プログラムを格納する。前記雛形プログラムアクセス許可部は、前記アクセス権限が満足された場合にのみ、当該アクセス権限に対応する前記ディレクトリにおいて格納された前記雛形プログラムへのアクセスを許可する。前記端末は、前記雛形プログラム管理サーバに接続され、パスワードを入力可能である。前記雛形プログラム管理サーバは、前記端末で入力された前記パスワードを認証した場合にのみ前記ディレクトリへの前記アクセスを前記アクセス権限に従って可能にする。前記テストプログラム生成部は、前記端末からアクセス可能な前記ディレクトリから選択された前記雛形プログラムに基づいて前記テスト用プログラムを生成する。【００１２】
この発明にかかる雛形プログラム管理サーバは、第１の記憶部と、仕様書自動生成部と、第１の判断部と、雛形プログラム書式チェック部とを備える。前記第１の記憶部は、半導体装置のテスト用プログラムの雛形である雛形プログラムと、前記雛形プログラムに関する仕様書とを格納する。前記仕様書自動生成部は、入力された雛形プログラムから仕様書を自動で生成する。前記第１の判断部は、前記仕様書自動生成部で生成された前記仕様書に記載の不備がないか否かを判断する。前記雛形プログラム書式チェック部は、前記第１の判断部で記載の不備がないと判断された場合に、前記入力された雛形プログラムの書式をチェックし、前記書式に不備がないか否かを判断する。そして、前記雛形プログラム書式チェック部が前記書式に不備がないと判断した場合に、前記入力された雛形プログラム及び自動で生成された前記仕様書を前記第１の記憶部に格納する。
【発明の効果】
【００１３】
この発明にかかる雛形プログラム管理システムによれば、アクセス権限が満足されない場合には当該ディレクトリに格納される雛形プログラムにアクセスできないので、当該雛形プログラムの読込みや書込みを制限することができる。また端末からディレクトリへのアクセスを許可するか否かが容易に判断される。【００１４】
この発明にかかる雛形プログラム管理サーバによれば、雛形プログラムと、それに対応する仕様書とのいずれにも不備がない場合にのみ、第１の記憶部に格納される。よって、仕様書を確認することで、テスト用プログラムの生成に使用する所望の雛形プログラムを選択しやすい。【００１５】
この発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
【図面の簡単な説明】
【００１６】
【図１】実施の形態１で説明される、雛形プログラム管理システムを概念的に示す図である。
【図２】雛形プログラムアクセス許可部２１０を概念的に示す図である。
【図３】雛形プログラムアクセス許可部２１０の動作のフローを示す図である。
【図４】ディレクトリ２２１に登録された内容を示す図である。
【図５】ディレクトリに設定されるアクセス権限を示す図である。
【図６】システムライブラリに格納されるディレクトリの構造を示す図である。
【図７】グループライブライに格納されるディレクトリの構造を示す図である。
【図８】個人ライブラリに格納されるディレクトリの構造を示す図である。
【図９】実施の形態２で説明される、雛形プログラム管理サーバを概念的に示す図である。
【図１０】雛形プログラム管理サーバの動作のフローを示す図である。
【図１１】実施の形態３で説明される、テストプログラムの生成から検査装置の適用までのフローを示す図である。
【図１２】実施の形態４で説明される、ネットワークを概念的に示す図である。
【発明を実施するための最良の形態】
【００１７】
１．実施の形態１．
図１は、本実施の形態にかかる雛形プログラム管理システムを概念的に示す。雛形プログラム管理システムはテストプログラム生成部５，雛形プログラム管理サーバ６及び端末３１を備えており、これらは相互に接続されてネットワークを構成する。【００１８】
端末３１は、ログイン名及びパスワードの入力が可能であって、後述するようにログイン名及びパスワードが認証された場合にのみ、雛形プログラム管理サーバ６内のディレクトリにアクセスすることができる。【００１９】
雛形プログラム管理サーバ６は、制御部２１と記憶部２２とを備え、制御部２１は雛形プログラムアクセス許可部２１０を有する。【００２０】
記憶部２２はディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３を有し、これらはいずれも雛形プログラムを格納することができる。そのほか、記憶部２２はディレクトリ２２１〜２２３をも有している。ディレクトリ２２１〜２２３の機能については後述する。【００２１】
これらのディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３は階層構造を成している。具体的には、ディレクトリ１０の下位にディレクトリ１１〜１３が配置され、ディレクトリ１１の下位にディレクトリ１１１〜１１３、ディレクトリ１２の下位にディレクトリ１２１〜１２３、ディレクトリ１３の下位にディレクトリ１３１〜１３３がそれぞれ配置されている。【００２２】
ディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３には、それぞれアクセス権限が設定されている。【００２３】
図２は雛形プログラムアクセス許可部２１０を概念的に示し、図３はその動作をフローで示す。なお、図２には端末３１及び記憶部２２も示されているが、ディレクトリ１１１〜１１３，１３１〜１３３は省略されている。【００２４】
アクセス許可部２１０は、アクセス権限判断部２１１１及びアクセス許可部２１１２を含む。ディレクトリ２２１には、ログイン名及びパスワードと、当該ログイン名及び当該パスワードが認証された場合にアクセスが許可されるディレクトリとが登録されている。【００２５】
図４は、ディレクトリ２２１に登録された内容を例示する。ディレクトリ２２１には、ログイン名Ａ１１１及びパスワードＰＷ（Ａ１１１）（ここでは、組合せ（Ａ１１１，ＰＷ（Ａ１１１））という。他のログイン名及びパスワードについても同様である。）と、この組合せが認証された場合にアクセスが許可されるディレクトリ１０，１１，１１１が登録されている。さらにディレクトリ２２１には、組合せ（Ｂ１２１，ＰＷ（Ｂ１２１））〜（Ｂ１２３，ＰＷ（Ｂ１２３））と、この組合せが認証された場合にアクセスが許可されるディレクトリ１０，１２，１２１〜１２３とがそれぞれ登録され、組合せ（Ｃ１３１，ＰＷ（Ｃ１３１））〜（Ｃ１３３，ＰＷ（Ｃ１３３））と、この組合せが認証された場合にアクセスが許可されるディレクトリ１０，１３，１３１〜１３３とがそれぞれ登録されている。【００２６】
端末３１においてログイン名ＡＢＣ及びパスワードＰＷ（ＡＢＣ）が入力される（ステップ９１）。アクセス権限判断部２１１１は、上記ログイン名ＡＢＣ及びパスワードＰＷ（ＡＢＣ）と、ディレクトリ２２１に格納されたログイン名及びパスワードの組合せとを照合する（ステップ９２）。照合される両者が一致することは、端末３１で入力されたログイン名ＡＢＣ及びパスワードＰＷ（ＡＢＣ）が認証されたことを意味する。【００２７】
認証された場合には、アクセス許可部２１１２は、ログイン名ＡＢＣ及びパスワードＰＷ（ＡＢＣ）に対応するディレクトリ（図４参照）へのアクセスを、アクセス権限に従って許可する（ステップ９３）。これにより、当該ディレクトリに格納された雛形プログラムへのアクセスが可能になる。なお、アクセス権限についての詳細は後述する。【００２８】
一方、入力されたログイン名及びパスワードが認証されない場合（否認の場合）は、端末３１に対して例えば再入力を指示する。【００２９】
このような態様によれば、端末３１からディレクトリ１０〜１３，１１１〜１１３，１２１〜１２３，１３１〜１３３へのアクセスを許可するか否かが容易に判断される。【００３０】
図２に戻って、図２ではディレクトリ１２３へのアクセスが許可された場合が示されている。図３及び図４を用いて説明すれば、まず端末３１でログイン名Ｃ１２３及びパスワードＰＷ（１２３）が入力される。アクセス権限許可部２１１１は、ログイン名Ｃ１２３及びパスワードＰＷ（１２３）を認証する。認証によって、アクセス許可部２１１２は、上記組合せに対応したディレクトリ１２３への、端末３１からのアクセスを許可する。【００３１】
この場合、ディレクトリ１２３に対し上位のディレクトリ１０，１２へのアクセスも許可されており、図２ではこの場合が示されている。すなわち、一のディレクトリ１２３に対応したアクセス権限は、当該一のディレクトリ１２３に対して上位である他のディレクトリ１０，１２の全てについてもアクセス権限として有効である。なお、他のディレクトリ１１，１３，１２１，１２２へのアクセスは禁止される。図２では、ディレクトリ１１，１３の下位のディレクトリ１１１〜１１３，１３１〜１３３（図１）は示されていないが、これらのディレクトリへのアクセスも禁止される。【００３２】
図４では、ログイン名とパスワードとの組合せと対応するディレクトリに対して上位であるディレクトリも符号に括弧を付して記載しており、これらへのアクセスも許可することができることを示している。【００３３】
このような態様によれば、一のディレクトリ１１〜１３，１１１〜１１３，１２１〜１２３，１３１〜１３３へのアクセスが許可されることで、その上位のディレクトリへのアクセスも許可される。よって、当該上位のディレクトリへのアクセスを別途に行う必要がなく、以って複数のディレクトリへのアクセスが簡略化される。【００３４】
上述したアクセス許可を判断する技術は、アクセス権限が満足された場合にのみ、雛形プログラムアクセス許可部２１０が当該アクセス権限に対応するディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３へのアクセスを許可すると把握できる。【００３５】
上述した雛形プログラム管理サーバ６によれば、アクセス権限が満足されない場合には、当該アクセス権限が設定されたディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３に格納される雛形プログラムにアクセスできない。よって、当該雛形プログラムの読込みや書込みを制限することができる。【００３６】
例えば、ディレクトリ１０はシステム用として用いられ、ディレクトリ１１〜１３は当該システムに属するグループＡ〜Ｃ用としてそれぞれ用いられ、ディレクトリ１１１〜１１３，１２１〜１２３，１３１〜１３３はグループＡ〜Ｃに属する個人ａ１１１〜ａ１１３，ｂ１２１〜ｂ１２３，ｃ１３１〜ｃ１３３用としてそれぞれ用いられる。【００３７】
また、ディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３のうち所定の関係を有するもの同士でライブラリＬｉｂ１〜Ｌｉｂ３を構成しても良い。例えば、システム用ディレクトリ１０でシステムライブラリＬｉｂ１を、グループ用ディレクトリ１１〜１３でグループライブラリＬｉｂ２を、個人用ディレクトリ１１１〜１１３，１２１〜１２３，１３１〜１３３で個人ライブラリＬｉｂ３をそれぞれ構成する（図１）。【００３８】
図５は、ディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３に設定されるアクセス権限を例示する。図５では、アクセス権限が、ディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３が属するライブラリによって、すなわち上述したシステムライブラリ、グループライブラリ及び個人ライブラリによって分類されている。【００３９】
アクセス権限には、改廃管理権限、閲覧権限、生成システムからの利用権限などが採用できる。改廃管理権限が与えられた場合には、対応するディレクトリ内の雛形プログラムの改変及び廃棄をすることができる。閲覧権限が与えられた場合には、対応するディレクトリ内の雛形プログラムの閲覧だけが可能である。生成システムからの利用権限が与えられた場合には、実施の形態３で説明するテストプログラム生成手段を含むシステムからアクセスすることができる。【００４０】
システムライブラリＬｉｂ１に属するディレクトリ１０に設定される改廃管理権限は、システム管理者のみに与えられ、閲覧権限及び生成システムからの利用権限はそれぞれ全ユーザに与えられる。【００４１】
グループライブラリＬｉｂ２に属するディレクトリ１１〜１３に設定される改廃管理権限はそれぞれ、グループＡ〜Ｃに属するユーザ及びシステム管理者にのみ与えられる。生成システムからの利用権限についても同様である。閲覧権限は全ユーザに与えられる。【００４２】
個人ライブラリＬｉｂ３に属するディレクトリ１１１〜１１３，１２１〜１２３，１３１〜１３３に設定される改廃管理権限はそれぞれ、個人ａ１１１〜ａ１１３，ｂ１２１〜ｂ１２３，ｃ１３１〜ｃ１３３及びシステム管理者に与えられる。閲覧権限及び生成システムからの利用権限についても同様である。【００４３】
図６〜図８は、それぞれ上述したシステムライブラリＬｉｂ１、グループライブラリＬｉｂ２及び個人ライブラリＬｉｂ３に格納されるディレクトリの構造を例示する。なお、以下ではディレクトリに付されたディレクトリ名をカギ括弧（すなわち、「ディレクトリ名」）で示す（図を除く）。【００４４】
システムライブラリＬｉｂ１に格納される複数の雛形プログラムが、雛形プログラムが適用される試験装置Ｘ〜Ｚ、試験装置Ｘ〜Ｚが使用される工場ｆ１，ｆ２及び雛形プログラムのバージョンＶｅｒ１，Ｖｅｒ２によって分類して格納される態様を例にとって、ディレクトリの構造を説明する（図６）。【００４５】
システムライブラリＬｉｂ１には、ディレクトリ「試験装置Ｘ」〜「試験装置Ｚ」が格納されている。ディレクトリ「試験装置Ｘ」〜「試験装置Ｚ」のそれぞれには、後述するディレクトリ「工場ｆ１」，「工場ｆ２」，「共通」及びディレクトリ「バージョンＶｅｒ１」，「バージョンＶｅｒ２」を介して、試験装置Ｘ〜Ｚにおいて適用される雛形プログラムが格納されている。【００４６】
ディレクトリ「試験装置Ｘ」には、ディレクトリ「工場ｆ１」，「工場ｆ２」，「共通」が格納されている。ディレクトリ「試験装置Ｙ」には、ディレクトリ「共通」が格納されている。ディレクトリ「試験装置Ｚ」には、ディレクトリ「工場ｆ１」が格納されている。ディレクトリ「工場ｆ１」，「工場ｆ２」のそれぞれには、後述するディレクトリ「バージョンＶｅｒ１」，「バージョンＶｅｒ２」を介して、工場ｆ１，ｆ２において適用される雛形プログラムが格納されている。またディレクトリ「共通」には、工場ｆ１，ｆ２のいずれにも適用される雛形プログラムが格納されている。【００４７】
ディレクトリ「工場ｆ１」，「工場ｆ２」，「共通」のいずれにも、ディレクトリ「バージョンＶｅｒ１」，「バージョンＶｅｒ２」が格納されている。ディレクトリ「バージョンＶｅｒ１」，「バージョンＶｅｒ２」には、それぞれバージョンＶｅｒ１，Ｖｅｒ２の雛形プログラムが格納される。そして、ディレクトリ「バージョンＶｅｒ１」，「バージョンＶｅｒ２」には、その上位のディレクトリも含めたディレクトリ名に対応する雛形プログラムが格納される。【００４８】
例えば、ディレクトリ「試験装置Ｘ」が上位にあるディレクトリ「工場ｆ１」に格納されたディレクトリ「バージョンＶｅｒ１」には、試験装置Ｘに適用され、工場ｆ１で使用され、かつバージョンＶｅｒ１の雛形プログラムが格納される。他のディレクトリについても同様にして、ディレクトリ名に対応する雛形プログラムが格納される。【００４９】
試験装置Ｘ〜Ｚによって雛形プログラムを分類して格納することは、当該雛形プログラムから生成されるテストプログラムが試験装置Ｘ〜Ｚごとに記述される言語が異なる場合や、生成されるテストプログラムの出力内容が試験装置Ｘ〜Ｚごとに異なる場合などに望ましい。なお、生成されるテストプログラムの出力内容は、試験装置Ｘ〜Ｚのハードウェアやソフトウェアのオプション選択、プロ−バ・ハンドラ等の自動機とのインターフェース方式、工場側のネットワーク、テスト結果の計上システムなどが要因となって、試験装置１台ごとに異なる場合がある。【００５０】
グループライブラリＬｉｂ２に格納される複数の雛形プログラムが、雛形プログラムが使用されるグループＡ〜Ｃ、試験装置Ｘ〜Ｚ及び工場ｆ１，ｆ２によって分類して格納される態様を例にとって、ディレクトリの構造を説明する（図７）。【００５１】
グループライブラリＬｉｂ２には、ディレクトリ「グループＡ」〜「グループＣ」が格納されている。ディレクトリ「グループＡ」にはディレクトリ「試験装置Ｘ」が格納され、ディレクトリ「試験装置Ｘ」にはディレクトリ「工場ｆ１」，「共通」が格納されている。ディレクトリ「グループＢ」にはディレクトリ「試験装置Ｘ」，「試験装置Ｙ」が格納され、ディレクトリ「試験装置Ｘ」にはディレクトリ「工場ｆ１」，「工場ｆ２」，「共通」、ディレクトリ「試験装置Ｙ」にはディレクトリ「共通」がそれぞれ格納されている。ディレクトリ「グループＣ」にはディレクトリ「試験装置Ｚ」が格納され、ディレクトリ「試験装置Ｚ」にはディレクトリ「工場ｆ２」が格納されている。【００５２】
例えば、ディレクトリ「グループＡ」〜「グループＣ」には、それぞれディレクトリ１１〜１３（図１）が採用できる。【００５３】
ディレクトリ「工場ｆ１」，「工場ｆ２」，「共通」には、その上位のディレクトリも含めたディレクトリ名に対応する雛形プログラムが格納される。例えば、ディレクトリ「グループＡ」が上位にある「試験装置Ｘ」に格納されたディレクトリ「工場ｆ１」には、グループＡで使用され、試験装置Ｘに適用され、かつ工場ｆ１で使用される雛形プログラムが格納される。【００５４】
個人ライブラリＬｉｂ３に格納される複数の雛形プログラムが、雛形プログラムを使用する個人ａ１１１〜ａ１１３，ｂ１２１〜ｂ１２３，ｃ１３１〜ｃ１３３によって分類して格納される態様を例にとって、ディレクトリの構造を説明する（図８）。【００５５】
個人ライブラリＬｉｂ３には、ディレクトリ「個人ａ１１１」〜「個人ｃ１３３」が格納されている。ディレクトリ「個人ａ１１１」〜「個人ｃ１３３」には、それぞれ個人ａ１１１〜ｃ１３３用の雛形プログラムが格納されている。【００５６】
ディレクトリ「個人ａ１１１」〜「個人ｃ１３３」には、それぞれディレクトリ１１１〜１３３（図１）が採用できる。【００５７】
２．実施の形態２．
図９は、本実施の形態にかかる雛形プログラム管理サーバ６を概念的に示す。また、図１０は、当該雛形プログラム管理サーバ６の動作をフローで示す。【００５８】
当該雛形プログラム管理サーバ６が備える制御部２１は、仕様書自動生成部２１１、判断部２１２、雛形プログラム書式チェック部２１３、一致率算出部２１４、比較部２１５及び改変部２１６を有する。【００５９】
記憶部２２は、ライブラリ１及びディレクトリ２２２，２２３を有する。ライブラリ１は、例えば実施の形態１で説明したライブラリＬｉｂ１〜Ｌｉｂ３を含む。【００６０】
ディレクトリ２２２は、雛形プログラムの仕様書を格納する。仕様書には、雛形プログラムの目的、雛形プログラムの構成要素であるパラメータの説明、当該仕様書の書式チェックの内容などが記録される。【００６１】
ディレクトリ２２３は、雛形プログラムの履歴を格納する。当該履歴には、雛形プログラムの登録や更新の内容や日時、登録や変更を行った者の氏名、さらには雛形プログラムの利用状況などが記録される。【００６２】
雛形プログラム管理サーバ６には雛形プログラムが入力される。雛形プログラムの入力には、端末３１から新規の雛形プログラムを入力することの他、雛形プログラム管理サーバ６内の既存の雛形プログラムを改変することも含まれる。【００６３】
当該雛形プログラムの入力を操作する端末３１は、実施の形態１で説明したようにログイン名ＡＢＣ及パスワードＰＷ（ＡＢＣ）が認証されている。但し、ここでは認証のために用いられるアクセス許可部２１０やディレクトリ２２１は図示を省略している。【００６４】
図１０に従って、既存の雛形プログラムを改変する場合の雛形プログラム管理サーバ６の動作を具体的に説明する（ステップ７１）。まず、認証された端末３１からのアクセスが許可されているディレクトリ内にある雛形プログラムの一を、当該端末３１の操作によって指定する（ステップ７１１）。指定された雛形プログラムは改変部２１６に与えられる。【００６５】
改変部２１６は当該雛形プログラムを部分的に改変する。具体的には、雛形プログラムの構成要素であるパラメータに端末３１の操作によって数値を入力する（ステップ７１２）。ステップ７１２では、検査装置の種類や、工場の種類などの情報を入力してもよい。パラメータの数値を含め、これらの情報は雛形プログラムの属性情報と把握することができる。【００６６】
次に、改変前の雛形プログラムに対応する説明資料を指定する（ステップ７１３）。説明資料には、雛形プログラムを雛形として生成されるテストプログラムに基づいて実行される検査方法や、その制約などが記録されている。また説明資料は、例えばステップ７１１で指定された雛形プログラムが格納されているディレクトリ内に格納されている。なお、当該説明資料は、雛形プログラムの改変後においても影響を受けない。【００６７】
ステップ７１３の後、改変後の雛形プログラムの登録を端末３１の操作によって指示する（ステップ７１４）。当該登録の指示により、当該雛形プログラムが改変部２１６から仕様書自動生成部２１１に与えられる。【００６８】
ステップ７１によれば、新たな雛形プログラムを作成する際に既存の雛形プログラムを利用することができる。【００６９】
例えば、端末３１から雛形プログラム管理サーバ６に新規の雛形プログラムが入力される場合には、当該新規の雛形プログラムが仕様書自動生成部２１１に与えられても良い。この場合、ステップ７１では、ステップ７１１〜７１３に代えて当該新規の雛形プログラムを入力するステップが採用される。【００７０】
次に、雛形プログラムが仕様書自動生成部２１１に入力された後の雛形プログラム管理サーバ６の動作を説明する（ステップ７２〜８１）。【００７１】
仕様書自動生成部２１１は、入力された雛形プログラムから仕様書を自動で生成する（ステップ７２）。具体的には、例えば雛形プログラム中のコメント文を抽出し、所定の書式に基づいて仕様書を生成する。生成された仕様書は、判断部２１２に与えられる。【００７２】
判断部２１２は、仕様書に記載の不備があるか否かを判断する（ステップ７３）。具体的には、所定の書式で指定される記載事項が全て記載されているか否かが判断される。【００７３】
判断部２１２で記載の不備がないと判断された場合には、入力された雛形プログラムが雛形プログラム書式チェック部２１３に与えられる。当該雛形プログラムは、仕様書自動生成部２１１から直接与えられても良いし、判断部２１２を介して与えられても良い。一方、記載の不備があると判断された場合には、制御部２１はエラーメッセージを出力して動作を終了する（ステップ８１）。当該エラーメッセージは例えば端末３１に表示される。【００７４】
システムライブラリＬｉｂ１に属する雛形プログラムがバージョンごとに分類して格納されている場合には、判断部２１２は、雛形プログラムがシステムライブラリに属するか否かを更に判断し（ステップ７４）、属すると判断した場合には判断部２１２がバージョンの決定を指示（ステップ７４１）しても良い。【００７５】
雛形プログラム書式チェック部２１３は、雛形プログラムの書式をチェックし、書式に不備がないか否かを判断する（ステップ７５，７６）。具体的には、雛形プログラムに記載された命令文や関数などの指令の組合せが、予め記憶部２２などに記憶された指令の組合せと一致するか否かが判断される。すなわち、組合せが一致すると判断した場合には、雛形プログラムの書式に不備がないと判断し、一致しない場合には書式の不備があると判断する。【００７６】
書式の不備があるか否かの判断は、例えば使用が禁止された態様で、予約語が雛形プログラム中に使用されていないか否かを判断することによっても行うことができる。【００７７】
このような態様によれば、雛形プログラムが実行された場合には、例えば無限ループに陥ることが回避される。【００７８】
雛形プログラム書式チェック部２１３が書式に不備がないと判断した場合には、雛形プログラムは一致率算出部２１４に与えられる。一方、書式に不備があると判断された場合には、制御部２１はエラーメッセージを出力して動作を終了する（ステップ８１）。当該エラーメッセージは例えば端末３１に表示される。【００７９】
一致率算出部２１４は、雛形プログラム書式チェック部２１３から与えられた雛形プログラムと、記憶部２２に記憶されている雛形プログラムとの一致の割合（以下、「一致率」という。）を算出する（ステップ７７）。一致率は比較部２１５に与えられる。【００８０】
具体的には、例えば雛形プログラムが複数の部分プログラムを配列して構成されている場合、記憶部２２に予め格納されていた雛形プログラムから抽出した部分プログラム及びその配列と、雛形プログラム書式チェック２１３から与えられた雛形プログラムが有する部分プログラム及びその配列とを比較して、一致率を算出する。抽出した部分プログラム及びその配列は、記憶部２２に記憶しておいても良いし、他の記憶部に記憶しておいても良い。【００８１】
予め格納されていた雛形プログラムからの部分プログラム及びその配列の抽出は、例えば、雛形プログラム管理サーバ６へのアクセス時に閲覧可能なディレクトリ内にある雛形プログラムの全てを対象として行われる。アクセス権限が図５で示されるように設定されている場合、例えばディレクトリ１２３へのアクセスが許可された場合には、ディレクトリ１０〜１３が閲覧可能になる。【００８２】
このようにして既に格納されていた雛形プログラムと、入力された雛形プログラムとの比較を、部分プログラム及びその配列に基づいて行うことにより、これら二つの雛形プログラムの一致の度合いを数値として算出することができる。よって後述のような場合分けが容易となる。【００８３】
比較部２１５は、一致率と所定の値との大小を比較し（ステップ７８）、一致率が所定の値より低いと判断された場合には、雛形プログラム管理サーバに入力された雛形プログラムと、仕様書自動生成部２１１で生成された仕様書とが、記憶部２２に記憶されることで保管される（ステップ８０）。【００８４】
具体的には、当該雛形プログラムは、ライブラリ１内のディレクトリのうち、当該雛形プログラムを入力する際に操作した端末３１において認証されたログイン名及びパスワードの組合せと対応するディレクトリに格納される。当該仕様書は仕様書用ディレクトリ２２２に格納される。ただし、当該仕様書は、雛形プログラムが格納されるディレクトリに当該雛形プログラムとともに格納されても良い。【００８５】
これに伴って、記憶部２２のディレクトリ２２３に格納された雛形プログラムの履歴が更新される（ステップ７９）。当該履歴の更新は、雛形プログラム及び仕様書を格納する（ステップ８０）前に行って良いし、後に行っても良く、あるいは並行して行っても良い。図１０では、雛形プログラム及び仕様書を格納する前に履歴の更新を行う場合が示されている。【００８６】
このように雛形プログラムの履歴を記録しておくことで、雛形プログラムの利用状況を確認し、また利用頻度の低い雛形プログラムや重複した雛形プログラムを削除することで、雛形プログラム数の増大を防止することができる。【００８７】
一方、比較部２１５で一致率が所定の値よりも高いと判断された場合には、雛形プログラムの登録の要否を確認するメッセージが出力される（ステップ７８１）。当該メッセージは、例えば端末３１で表示されても良いし、電子メールなどでユーザに送信しても良い。当該雛形プログラムの登録が指示された場合には、上述したのと同様にして雛形プログラム及び仕様書の登録（ステップ８０）と、雛形プログラムの履歴の更新（ステップ７９）が行われる。【００８８】
例えば、当該メッセージを出力した後、一旦、雛形プログラム及び仕様書の登録（ステップ８０）を行い、当該雛形プログラムの登録が不要である旨が通知された場合に、一旦登録された仕様書及び雛形プログラムをディレクトリ２２２，２２３のそれぞれから削除しても良い。【００８９】
このような態様によれば、雛形プログラム及び仕様書をそれぞれ重複して記憶部２２に格納することが防げる。【００９０】
この本実施の形態にかかる雛形プログラム管理サーバ６によれば、雛形プログラムと、それに対応する仕様書とが、いずれにも不備がない場合にのみ記憶部２２に格納される。よって、仕様書を確認することで、テストプログラムの生成に使用する所望の雛形プログラムを選択しやすい。【００９１】
本実施の形態で説明した雛形プログラム管理システムは、実施の形態１にかかる雛形プログラム管理システム、更には後述する実施の形態３にかかる雛形プログラム管理システムに適用することができる。【００９２】
３．実施の形態３．
図１に戻って、本実施の形態にかかる雛形プログラム管理システムはテストプログラム生成部８を更に備える。テストプログラム生成部５は、雛形プログラム管理サーバ６及び端末３１と相互に接続されている。【００９３】
まず、ログイン名及びパスワードが認証された端末３１が、アクセス権限に従ってアクセス可能なディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３に格納された雛形プログラムを指定する。雛形プログラム管理サーバ６は、指定された雛形プログラムをテストプログラム生成部５に与える。【００９４】
テストプログラム生成部５は、当該雛形プログラムに基づいてテストプログラムを生成する。【００９５】
このような態様によれば、端末３１からディレクトリ１０〜１３、１１１〜１１３，１２１〜１２３，１３１〜１３３へのアクセスがアクセス権限に従って制限されているので、テストプログラムの生成についても制限される。【００９６】
なお、テストプログラム生成部５は、例えば雛形プログラム管理サーバ６が備えていても良く、テストプログラム生成部５が設けられる場所は特に限定されない。【００９７】
また、テストプログラム生成部５は、テストプログラムの生成に伴って、その雛形として用いた雛形プログラムに関する履歴を雛形プログラム管理サーバ６に与えても良い。当該履歴には、テストプログラム生成部５で選択した雛形プログラムの内容や、選択した日時、選択した者の氏名など、更には当該雛形プログラムから生成されたテストプログラムの内容や、生成した日時、生成した者の氏名などが記録される。【００９８】
当該履歴は、例えば実施の形態２で説明したディレクトリ２２３に格納される。そして、雛形プログラム管理サーバ６は、テストプログラム生成部５から与えられた履歴をディレクトリ２２３に書き込む。【００９９】
例えば、記憶部２２内のディレクトリ２２３とは異なる場所に履歴を記憶しても良いし、記憶部２２とは異なる記憶部に履歴を記憶しても良い。【０１００】
このように雛形プログラムの履歴を記録しておくことで、雛形プログラムの利用状況を確認し、また利用頻度の低い雛形プログラムや重複した雛形プログラムを削除することで、雛形プログラム数の増大を防止することができる。また、雛形プログラムの保守や、トラブル発生時の影響範囲の確認などにも用いることができる。【０１０１】
テストプログラム生成部５で生成されたテストプログラムは、半導体装置の製造段階において、当該半導体装置の性能や品質などを検査する検査装置に適用される。【０１０２】
図１１は、テストプログラムの生成から検査装置への適用までをフローで示す。テストプログラムが生成された（ステップ９５）後、当該テストプログラムが、半導体装置の所定の製造段階、例えば量産段階で使用しないことが選定されている否かを判断する（ステップ９６）。【０１０３】
当該製造段階で使用しないことが選定されていないとステップ９６で判断された場合には、当該テストプログラムは所定の製造段階で使用される検査装置に適用される（ステップ９７）。【０１０４】
一方、当該製造段階で使用しないことが選定されていると判断された場合には、当該テストプログラムは当該製造段階で使用できない旨を警告する（ステップ９８）。当該警告には、例えばパトライトの点灯や、テストプログラムの実行開始時にコメントを出力することなどが採用できる。【０１０５】
テストプログラムについての所定の製造段階での適用の可否の判断は、具体的には次のようにして行われる。テストプログラム生成部５は、雛形プログラムに所定の製造段階で使用しないことが選定されている場合にはフラグを立てず、選定されていない場合にはフラグを立てて、テストプログラムを生成する。テストプログラムのコンパイル時に、フラグが立てられている場合には当該製造段階で適用を許可するコードを埋め込み、フラグが立てられていない場合には当該コードの埋め込みを行わない。そして、コンパイル後のテストプログラムを実行した際に、当該コードが埋め込まれていない場合には、パトライトの点灯や、コメントの出力を行うことで警告する。【０１０６】
このような態様によれば、テストプログラムが所定の製造段階で使用される前に警告を促すことで、人為的なミスが低減される。【０１０７】
所定の製造段階への適用の可否については、例えば図５に例示されている。図５では、所定の製造段階が量産段階の場合と、試作・実験段階の場合とが示されている。量産段階では、システムライブラリ及びグループライブラリに属するディレクトリに格納された雛形プログラムから生成されるテストプログラムは、量産段階及び試作・実験段階のいずれにも適用可能である。一方、個人ライブラリに属するディレクトリに格納された雛形プログラムから生成されるテストプログラムは、試作・実験段階への適用は可能であるが、量産段階には適用することできない。【０１０８】
４．実施の形態４．
図１２は本実施の形態で採用されるネットワークを概念的に示す。当該ネットワークは、互いに接続されたネットワーク６１とネットワーク６２とを含む。ネットワーク６１は、雛形プログラム管理サーバ６１１〜６１３で構成される。ネットワーク６２は、雛形プログラム管理サーバ６２１〜６２３で構成される。また、ネットワーク６１，６２のいずれにも属さない雛形プログラム管理サーバ６３１がネットワーク６１に接続されている。雛形プログラム管理サーバ６１１〜６１３，６２１〜６２３，６３１には、これまでに説明したいずれの雛形プログラム管理サーバをも採用することができる。【０１０９】
雛形プログラム管理サーバ６１１〜６１３，６２１〜６２３，６３１にはそれぞれ端末が接続される。図１２では、雛形プログラム管理サーバ６１１〜６１３，６２３，６３１のそれぞれにクライアントである端末が接続された場合が示されている。【０１１０】
所定の雛形プログラム管理サーバ６１１は、他の雛形プログラム管理サーバ６１２，６１３，６２１〜６２３，６３１に雛形プログラムを配信する。当該雛形プログラムには、例えば以前に配信した雛形プログラムを部分的に改変したものが採用できる。【０１１１】
当該雛形プログラムを受信した他の雛形プログラム管理サーバ６１２，６１３，６２１〜６２３，６３１は、それぞれが有する記憶部２２に格納するディレクトリのうち、最上位にあるディレクトリ１０に格納された一の雛形プログラムを、受信した雛形プログラムに基づいて更新する。【０１１２】
上述したネットワークによれば、雛形プログラム管理システムの最上位にあるディレクトリに格納された雛形プログラムを、一元管理することができる。よって、当該雛形プログラムの更新漏れが防がれる。【０１１３】
他の雛形プログラム管理サーバ６１２，６１３，６２１〜６２３，６３１で最上位のディレクトリ１０内の雛形プログラムが更新された場合、下位にあるディレクトリ１１〜１３，１１１〜１１３，１２１〜１２３，１３１〜１３３に格納された雛形ディレクトリも更新される。具体的には、既に登録されたリレーショナルデータベースから必要なデータを抽出するインポート機能や、所定のファイルからリレーショナルデータベースへのデータ登録を行うエクスポート機能によって、部分的に改変される。インポート機能やエクスポート機能は、雛形プログラム管理サーバ６１２，６１３，６２１〜６２３，６３１に備えられる。【０１１４】
この発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、この発明がそれに限定されるものではない。例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。
【図１】
2006137126.tif 000003
【図２】
2006137126.tif 000004
【図３】
2006137126.tif 000005
【図４】
2006137126.tif 000006
【図５】
2006137126.tif 000007
【図６】
2006137126.tif 000008
【図７】
2006137126.tif 000009
【図８】
2006137126.tif 000010
【図９】
2006137126.tif 000011
【図１０】
2006137126.tif 000012
【図１１】
2006137126.tif 000013
【図１２】
2006137126.tif 000014
【国際調査報告】
2006137126.tif 000015
2006137126.tif 000016
2006137126.tif 000017
2006137126.tif 000018
2006137126.tif 000019
2006137126.tif 000020
2006137126.tif 000021