ポートフォリオを新規に作成して保存 |
|
|
既存のポートフォリオに追加保存 |
|
PDFをダウンロード |
審決分類 |
審判 査定不服 5項独立特許用件 特許、登録しない。 G06F 審判 査定不服 2項進歩性 特許、登録しない。 G06F |
---|---|
管理番号 | 1313987 |
審判番号 | 不服2015-2675 |
総通号数 | 198 |
発行国 | 日本国特許庁(JP) |
公報種別 | 特許審決公報 |
発行日 | 2016-06-24 |
種別 | 拒絶査定不服の審決 |
審判請求日 | 2015-02-12 |
確定日 | 2016-04-28 |
事件の表示 | 特願2011-545200「負荷特性推定システム,負荷特性推定方法およびプログラム」拒絶査定不服審判事件〔平成23年 6月16日国際公開,WO2011/071010〕について,次のとおり審決する。 |
結論 | 本件審判の請求は,成り立たない。 |
理由 |
第1 手続の経緯 本願は,2010年12月6日(優先権主張2009年12月8日(以下「優先日」という))を国際出願日とする出願であって,それ以降の主な手続は以下のとおり 国内書面(提出日)平成24年 6月 7日 手続補正(提出日)平成24年 6月 8日 審査請求(提出日)平成25年11月 8日 拒絶理由(起案日)平成26年 2月27日(同年3月4日発送) 意見書 (提出日)平成26年 5月 7日 手続補正(提出日)平成26年 5月 7日 拒絶査定(起案日)平成26年11月 5日(同年11月11日謄本発送) 審判請求(提出日)平成27年 2月12日 手続補正(提出日)平成27年 2月12日 前置報告(作成日)平成27年 4月 6日 第2 平成27年2月12日付けの手続補正についての補正却下の決定 [補正却下の決定の結論] 平成27年2月12日付けの手続補正を却下する。 1.補正の内容 平成27年2月12日付けの手続補正(以下「本件補正」という)の内容は,平成26年5月7日付け手続補正により補正された特許請求の範囲の記載 「【請求項1】 所定のコンピュータシステム上で動作させるプログラムを入力するプログラム入力部と, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するプログラム特徴情報取得部と, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索する類似検索部と, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定する負荷特性推定部と, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行う負荷特性利用部と, を備えたことを特徴とする負荷特性推定システム。 【請求項2】 さらに,前記ソースコードの出現単語とその頻度を取得することにより,mを索引語数,nをプログラムの数とするm×nのデータ行列Dを作成し,該データ行列Dから次元数を縮退した特徴ベクトルを作成する特徴ベクトル作成部を備える請求項1の負荷特性推定システム。 【請求項3】 特徴ベクトル作成部は,予め作成された写像行列と,索引語とその出現頻度によるプログラムの内容ベクトルの積により,前記nより小さいk次元の特徴ベクトルを作成する請求項2の負荷特性推定システム。 【請求項4】 前記負荷特性推定部は,前記入力されたプログラムとの類似度が所定の閾値より高いプログラム群の負荷特性を用いて,前記入力されたプログラムの負荷特性を推定する請求項1から3いずれか一の負荷特性推定システム。 【請求項5】 前記負荷特性推定部は,前記入力されたプログラムが前記所定のコンピュータシステム上で動作させたことのあるプログラムと一致する場合,当該プログラムの負荷特性を用いて負荷特性を推定する請求項1から4いずれか一の負荷特性推定システム。 【請求項6】 さらに,過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性の履歴が記録される負荷特性記録部を備え, 前記負荷特性推定部は,前記入力されたプログラムの負荷特性として,前記負荷特性記録部から読み出した前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性の統計値を出力する請求項1から5いずれか一の負荷特性推定システム。 【請求項7】 前記プログラム入力部は,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入部であり, 前記負荷特性利用部は,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当て制御部である請求項1から6いずれか一の負荷特性推定システム。 【請求項8】 前記負荷特性の推定を経て前記所定のコンピュータシステム上で前記入力されたプログラムを動作させた際に当該コンピュータシステムに生じた負荷特性を,前記負荷特性記録部に追加する機能と, 前記プログラム特徴情報取得部にて取得されたプログラムの特徴情報を,前記類似検索部が類似検索時に参照する特徴情報保持部に追加する機能と, を備えたことを特徴とする請求項6の負荷特性推定システム。 【請求項9】 ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップと, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップと, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップと, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップと, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップと, を含む負荷特性推定方法。 【請求項10】 ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付ける処理と, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得する処理と, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索する処理と, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定する処理と, 前記入力されたプログラムの負荷特性情報を利用した情報処理と, をコンピュータに実行させるプログラム。」(以下,この特許請求の範囲に記載された請求項を「補正前の請求項」という)を, 「【請求項1】 所定のコンピュータシステム上で動作させるプログラムを入力するプログラム入力部と, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するプログラム特徴情報取得部と, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索する類似検索部と, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定する負荷特性推定部と, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行う負荷特性利用部と, を備えたことを特徴とする負荷特性推定システムであって, 前記プログラム入力部は,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入部であり, 前記負荷特性利用部は,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当て制御部である負荷特性推定システム。 【請求項2】 さらに,前記ソースコードの出現単語とその頻度を取得することにより,mを索引語数,nをプログラムの数とするm×nのデータ行列Dを作成し,該データ行列Dから次元数を縮退した特徴ベクトルを作成する特徴ベクトル作成部を備える請求項1の負荷特性推定システム。 【請求項3】 特徴ベクトル作成部は,予め作成された写像行列と,索引語とその出現頻度によるプログラムの内容ベクトルの積により,前記nより小さいk次元の特徴ベクトルを作成する請求項2の負荷特性推定システム。 【請求項4】 前記負荷特性推定部は,前記入力されたプログラムとの類似度が所定の閾値より高いプログラム群の負荷特性を用いて,前記入力されたプログラムの負荷特性を推定する請求項1から3いずれか一の負荷特性推定システム。 【請求項5】 前記負荷特性推定部は,前記入力されたプログラムが前記所定のコンピュータシステム上で動作させたことのあるプログラムと一致する場合,当該プログラムの負荷特性を用いて負荷特性を推定する請求項1から4いずれか一の負荷特性推定システム。 【請求項6】 さらに,過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性の履歴が記録される負荷特性記録部を備え, 前記負荷特性推定部は,前記入力されたプログラムの負荷特性として,前記負荷特性記録部から読み出した前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性の統計値を出力する請求項1から5いずれか一の負荷特性推定システム。 【請求項7】 前記負荷特性の推定を経て前記所定のコンピュータシステム上で前記入力されたプログラムを動作させた際に当該コンピュータシステムに生じた負荷特性を,前記負荷特性記録部に追加する機能と, 前記プログラム特徴情報取得部にて取得されたプログラムの特徴情報を,前記類似検索部が類似検索時に参照する特徴情報保持部に追加する機能と, を備えたことを特徴とする請求項6の負荷特性推定システム。 【請求項8】 前記ジョブ実行割り当て制御部は,前記入力されたプログラムの負荷特性情報及び前記計算機の負荷状態に基づいて前記プログラムの実行手順および計算機への割り当てを制御する請求項1の負荷特性推定システム。 【請求項9】 ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップと, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップと, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップと, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップと, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップと, を含む負荷特性推定方法であって, 前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップは,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入ステップであり, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップは,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当てステップである負荷特性推定方法。 【請求項10】 ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付ける処理と, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得する処理と, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索する処理と, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定する処理と, 前記入力されたプログラムの負荷特性情報を利用した情報処理と, をコンピュータに実行させるプログラムであって, 前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付ける処理は,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入処理であり, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行う処理は,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当て処理であるプログラム。」(以下,この特許請求の範囲に記載された請求項を「補正後の請求項」という)に補正するものである。 そして,本件補正は,国際出願の願書に添付した明細書、請求の範囲又は図面に記載した事項の範囲内においてなされており,特許法第17条の2第3項の規定に適合している。 2 目的要件 本件補正が,特許法第17条の2第5項の規定を満たすものであるか否か,すなわち,本件補正が,特許法第17条の2第5項に規定する請求項の削除,特許請求の範囲の減縮(特許法第36条第5項の規定により請求項に記載した発明を特定するために必要な事項を限定するものであって,その補正前の当該請求項に記載された発明とその補正後の当該請求項に記載される発明の産業上の利用分野及び解決しようとする課題が同一であるものに限る),誤記の訂正,或いは,明りょうでない記載の釈明(拒絶理由通知に係る拒絶の理由に示す事項についてするものに限る)の何れかを目的としてものであるかについて,以下に検討する。 (1)補正事項 本件補正は,以下の補正事項よりなるものである。 <補正事項1> 補正後の請求項1は,補正前の請求項1の「プログラム入力部」及び「負荷特性利用部」に補正前の請求項7の発明特定事項を追加し,「前記プログラム入力部は,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入部であり,前記負荷特性利用部は,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当て制御部である」という記載とする補正。 補正前の請求項2乃至6を補正後の請求項2乃至6とし,補正前請求項8を補正後の請求項7とする補正。 <補正事項2> 補正後の請求項8は,補正前の請求項7の発明特定事項であり,補正後の請求項1の発明特定事項でもある「ジョブ実行割り当て制御部」に限定事項を追加し,「前記ジョブ実行割り当て制御部は,前記入力されたプログラムの負荷特性情報及び前記計算機の負荷状態に基づいて前記プログラムの実行手順および計算機への割り当てを制御する請求項1の負荷特性推定システム。」という記載とする補正。 <補正事項3> 補正後の請求項9は,補正前の請求項9の「受け付けるステップ」及び「情報処理を行うステップ」に請求項7の発明特定事項を追加し,「前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップは,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入ステップであり,前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップは,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当てステップである」という記載とする補正。 <補正事項4> 補正後の請求項10は,補正前の請求項10の「受け付ける処理」及び「情報処理を行う処理」に請求項7の発明特定事項を追加し,「前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付ける処理は,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入処理であり,前記入力されたプログラムの負荷特性情報を利用した情報処理を行う処理は,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当て処理である」という記載とする補正。 (2)どのような目的であるかの認定 補正事項1は,補正前の請求項7が補正前の請求項1乃至6の従属項であることから,補正前の請求項1乃至6のうち、請求項7で限定されていない請求項を削除することを目的とするものである。 補正事項2乃至4は,限定的減縮を目的とするものであり,補正前後の請求項に記載される発明の産業上の利用分野及び解決しようとする課題は同一であることは明らかであるので,特許法第17条の2第5項第2号に掲げる特許請求の範囲の減縮を目的とするものである。したがって,本件補正は,特許法第17条の2第5項の規定に適合するものである。 3 独立特許要件 以上のように,本件補正は,特許法第17条の2第5項第2号に掲げる特許請求の範囲の減縮(以下「限定的減縮」という)を目的とする補正事項2乃至3を含むものである。そこで,限定的減縮を目的として補正された補正後の請求項9に記載された発明(以下「本件補正発明」という)が特許出願の際独立して特許を受けることができるものであるか(特許法第17条の2第6項において準用する同法第126条第7項の規定に適合するか)以下に検討する。 (1)本件補正発明 本件補正発明は,上記平成27年2月12日付け手続補正により補正された特許請求の範囲,明細書及び図面の記載からみて,その特許請求の範囲の請求項9に記載された事項により特定される,以下のとおりのものである。 「ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップと, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップと, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップと, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップと, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップと, を含む負荷特性推定方法であって, 前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップは,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入ステップであり, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップは,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当てステップである負荷特性推定方法。」 (2)引用文献 (2-1)本願の優先日前に既に頒布または電気通信回線を通して公衆に利用可能とされ,原審の拒絶査定の理由である上記平成26年2月27日付けの拒絶理由において引用された文献である特開2009-266044号公報(以下「引用文献1」という)には,関連図面とともに,以下の技術的事項が記載されている。 A 「 【要約】 【課題】ソフトウェアの処理時間を精度良く推定することを目的としたものである。 【解決手段】ソフトウェア解析手段が処理時間推定対象ソフトウェアの特性を解析し,一致性評価手段が処理時間推定対象ソフトウェアを実行する予定の実行予定ハードウェア条件を受信し,データベースの中からソフトウェア解析手段により解析された処理時間推定対象ソフトウェアの特性と一致し,且つ実行予定ハードウェア条件と一致するソフトウェアを処理時間推定ソフトウェアとして選択し,処理時間算出手段が一致性評価手段により選択された処理時間推定ソフトウェアの処理時間をデータベースに登録された処理時間を基に算出する。」 B 「【0001】 本発明は,ソフトウェアの処理時間を推定するソフトウェア処理時間推定システム及びソフトウェア処理時間推定方法に関するものである。 【背景技術】 【0002】 ソフトウェアの処理時間の推定を行う場合,従来は,評価対象のソフトウェアと類似したソフトウェアを選び,その類似したソフトウェアでの処理時間を基に,評価対象のソフトウェアの処理時間の推定を行い,推定対象のハードウェアと,類似したソフトウェアが実行されたハードウェアが異なる場合,性能差を仕様から算出し,推定した処理時間を補正していた。」 C 「【0008】 実施の形態1. 図1は,本発明の実施の形態1のソフトウェア処理時間推定システムの構成図である。10はソフトウェアの処理時間を推定するために入力されたソフトウェア名やソースコードなどのソフトウェア入力情報,20は処理時間を推定する推定対象のソフトウェアを実行する予定のハードウェアのハードウェア条件,30はソフトウェア入力情報10からソフトウェアの特性を解析するソフトウェア解析手段,40は過去に実行されたソフトウェアのソフトウェア情報が登録されているデータベース,50はソフトウェア解析手段30によって解析されたソフトウェアの特性とデータベース40に登録されているソフトウェア情報に含まれるソフトウェアの特性とから両者の特性の一致性を評価し,この評価結果とハードウェア条件20とから推定対象のソフトウェアを選択する一致性評価手段,60は一致性評価手段50によって選択されたソフトウェアの処理時間から,推定対象のソフトウェアの処理時間を算出し,この処理時間を出力する処理時間算出手段,70は処理時間算出手段60によって算出され出力された処理時間,80は処理時間算出手段60によって算出された処理時間や,推定対象のソフトウェアの特性などのソフトウェア情報を,データベース40に登録するデータベース(DB)登録手段である。 【0009】 図2は,データベース40に登録されているソフトウェア情報の説明図である。41はソフトウェアを特定するためのソフトウェア名,42はソフトウェアを実行したハードウェア(H/W)条件,43はソフトウェア名41の各ソフトウェアがハードウェア条件42の各条件で実行された時の処理時間,44,45,46はソフトウェア解析手段30によって解析されたソフトウェアの特性であり,図2では,それぞれFor文の比率,分岐比率,I/O処理の割合を示す。ハードウェア条件42,処理時間43,For文の比率44,分岐比率45,I/O処理の割合46は,それぞれソフトウェア名41毎に登録されている。 【0010】 次に,本実施の形態におけるソフトウェア処理時間推定システムの処理動作について説明する。 図3は,本実施の形態におけるソフトウェア処理時間推定システムの処理動作を示すフローチャートである。 ステップS100で,ソフトウェア解析手段30が,ソフトウェア名やソースコードなどのソフトウェア入力情報10を受信する。ここでは,例えば,図2に示すソフトウェア名(ニ)に相当するソフトウェア名やソースコードを受信したとする。 【0011】 次に,ステップS110で,一致性評価手段50が,推定対象のソフトウェアを実行する予定のハードウェアのハードウェア条件20を受信する。ここでは,例えば,図2に示すハードウェア条件Bに相当するハードウェア条件を受信したとする。 図2には,推定対象のソフトウェア名(ニ)のハードウェア条件Aの処理時間8秒がデータベース40に登録されている。 【0012】 ステップS120で,ソフトウェア解析手段30が,受信したソフトウェア入力情報10を基に推定対象のソフトウェアの特性を解析する。例えば,図2に示すソフトウェア名(ニ)に相当するソフトウェアをソフトウェア解析手段30で解析した結果,For文の比率が30%,分岐の比率が10%,I/O処理の比率が20%であるソフトウェアの特性が得られたとする。 なお,ソフトウェア解析手段30によるソフトウェアの特性の解析は,ソフトウェア入力情報10に含まれるソースコードの情報より行うことができる。 【0013】 ステップS130で,一致性評価手段50が,ソフトウェア解析手段30によって解析されたソフトウェアの特性と一致するソフトウェアの特性がデータベース40に登録されているか検索し,一致するソフトウェアの特性がある場合には,ソフトウェア解析手段30によって解析されたソフトウェアの特性とデータベース40に登録されているソフトウェア情報に含まれるソフトウェアの特性との一致性を評価し,この評価結果とステップS100で受信したハードウェア条件20とから,推定対象のソフトウェアと特性が一致し,且つ,推定対象のソフトウェアを実行する予定のハードウェア条件と一致するソフトウェアを選択する。図2では,ソフトウェア名(イ)とソフトウェア名(ハ)とソフトウェア名(ニ)が該当する。 【0014】 一致性評価手段50は,ソフトウェア名(ハ)とソフトウェア名(ニ)に対して,ハードウェア条件Aで実行された時の処理時間がデータベース40に登録されているが,ハードウェア条件Bで実行した場合の処理時間が登録されていないため,選択しない。ハードウェア条件AとBでの実行結果がデータベース40に登録されている,ソフトウェア名(イ)を,一致するソフトウェアとして選択する。 【0015】 ステップS140で,処理時間算出手段60は,データベース40に登録されているソフトウェア情報の処理時間43を基に,ソフトウェア名(イ)がハードウェア条件Aで実行された時の処理時間10秒と,ハードウェア条件Bで実行された時の処理時間5秒から,ハードウェア条件AとBの間でのソフトウェアの処理時間は1/2倍になると判断し,ソフトウェア名(ニ)がハードウェア条件Bで実行された時の処理時間は,ハードウェア条件Aで実行された時の処理時間8秒の1/2倍の,4秒と算出する。 ステップS150で,処理時間算出手段60が,4秒という算出した処理時間をDB登録手段80に出力し,ステップS160で,DB登録手段80が,データベース40にソフトウェア名(ニ)の算出した処理時間と,特性を解析した結果である,For文の比率30%,分岐比率10%,I/Oの比率20%,ハードウェア条件Bを登録する。登録された情報は,それ以降の算出に使用する。 【0016】 以上のように本実施の形態によれば,推定対象ソフトウェア(プログラム)の特性を解析し,特性が一致する他のソフトウェアを選択し,選択した他のソフトウェアを基に推定対象ソフトウェアの処理時間を算出するようにしているので,より精度よくソフトウェアの処理時間を推定することができる。」 D 「【0017】 実施形態2. 実施形態1では,一致性評価手段50において,推定対象のソフトウェアと特性が一致するソフトウェアを選出したが,本実施の形態では,一致するソフトウェアがデータベース40になかった場合に,特性の差分の合計から選出する場合について説明する。 本実施の形態では,一致性評価手段50は,推定対象のソフトウェアの特性と,一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベース40に登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が,最小のソフトウェアを,一致するソフトウェアとしてデータベース40から選択する。 図4は,データベース40に登録されているソフトウェア情報の説明図である。図2と同一の符号は,同一又は相当の部分を示す。 【0018】 次に,本実施の形態におけるソフトウェア処理時間推定システムの処理動作について説明する。 図5は,本実施の形態におけるソフトウェア処理時間推定システムの処理動作を示すフローチャートであり,図3と同一の符号は,同一又は相当の部分を示す。 ステップS100で,ソフトウェア解析手段30が,ソフトウェア名やソースコードなどのソフトウェア入力情報10を受信する。ここでは,例えば,図4に示すソフトウェア名(ニ)に相当するソフトウェア名やソースコードを受信したとする。 【0019】 次に,ステップS110で,一致性評価手段50が,推定対象のソフトウェアを実行する予定のハードウェアのハードウェア条件20を受信する。ここでは,例えば,図4に示すハードウェア条件Bに相当するハードウェア条件を受信したとする。 図4には,推定対象のソフトウェア名(ニ)のハードウェア条件Aの処理時間8秒がデータベース40に登録されている。 【0020】 ステップS120で,ソフトウェア解析手段30が,受信したソフトウェア入力情報10を基に推定対象のソフトウェアの特性を解析する。例えば,図4に示すソフトウェア名(ニ)に相当するソフトウェアをソフトウェア解析手段30で解析した結果,For文の比率が25%,分岐比率が10%,I/O処理の比率が20%であるソフトウェアの特性が得られたとする。 ステップS130で,一致率評価手段50が,データベース40に登録されているソフトウェア情報を検索し,ソフトウェア解析手段30によって解析されたソフトウェアの特性と一致するソフトウェアとして,ソフトウェア名(ニ)を選出する。しかし,データベース40には,ソフトウェア名(ニ)を実行したハードウェア条件Bがないためソフトウェア名(ニ)は使用しない。 【0021】 ステップS131で,一致率評価手段50が,ソフトウェア名(ニ)と特性が一致するソフトウェアがデータベース40には登録されていないため,ステップS132で,一致率評価手段50が,ソフトウェア名(ニ)と特性毎の差分の合計が一番小さいものを選択する。図4では,ソフトウェア名(イ)との差分が5%,ソフトウェア名(ロ)との差分が40%,ソフトウェア名(ハ)との差分が5%であるため,差分の合計が最小のソフトウェアであるソフトウェア名(イ)とソフトウェア名(ハ)を選出する。 【0022】 ステップS133で,推定対象のソフトウェア名(ニ)は,ハードウェア条件Aで実行された処理時間がデータベース40に登録されており,ハードウェア条件Bでの処理時間を見積もるため,ハードウェア条件Aとハードウェア条件Bで実行した処理時間の結果がある,ソフトウェア名(イ)を,一致するソフトウェアとして選択する。選択した後の動作は,実施の形態1の動作と同じである。 【0023】 以上のように本実施の形態によれば,推定対象プログラムの特性を解析し,特性が一致する他のプログラムがない場合個々の特性の差分の合計が最小のものを選択し,選択したプログラムの処理時間差から推定対象の処理時間を算出するようにしているので,より精度よくソフトウェアの処理時間を推定することができる。」 (2-2)引用発明の認定 引用文献1に記載されている事項を検討する。 ア 上記Aには「ソフトウェアの処理時間を精度良く推定することを目的としたものである。」と記載され,上記Bには「本発明は,ソフトウェアの処理時間を推定するソフトウェア処理時間推定システム及びソフトウェア処理時間推定方法に関するものである。」と記載されていることから,引用文献1には,ソフトウェアの処理時間を精度良く推定することを目的とした“ソフトウェア処理時間推定システム及びソフトウェア処理時間推定方法”が記載されていると認められる。 イ 上記Cには「10はソフトウェアの処理時間を推定するために入力されたソフトウェア名やソースコードなどのソフトウェア入力情報(中略)ステップS100で,ソフトウェア解析手段30が,ソフトウェア名やソースコードなどのソフトウェア入力情報10を受信する。」と記載されていることから,引用文献1には“ソフトウェア名やソースコードなどのソウトウェア情報の入力を受信するステップ”が記載されていると認められる。 ウ 上記Cには「30はソフトウェア入力情報10からソフトウェアの特性を解析するソフトウェア解析手段(中略)ステップS120で,ソフトウェア解析手段30が,受信したソフトウェア入力情報10を基に推定対象のソフトウェアの特性を解析する。」と記載されていることから,引用文献1には「ソフトウェア入力情報を基に推定対象ソフトウェアを解析するソフトウェア解析手段によるステップ」が記載されているといえる。 また,上記Cには「例えば,図2に示すソフトウェア名(ニ)に相当するソフトウェアをソフトウェア解析手段30で解析した結果,For文の比率が30%,分岐の比率が10%,I/O処理の比率が20%であるソフトウェアの特性が得られたとする。 なお,ソフトウェア解析手段30によるソフトウェアの特性の解析は,ソフトウェア入力情報10に含まれるソースコードの情報より行うことができる。」と記載され,上記Dには「例えば,図4に示すソフトウェア名(ニ)に相当するソフトウェアをソフトウェア解析手段30で解析した結果,For文の比率が25%,分岐比率が10%,I/O処理の比率が20%であるソフトウェアの特性が得られたとする。」と記載されていることから,引用文献1には「ソフトウェアの特性(For文比率,分析比率,I/O処理)を取得するソフトウェア解析手段」が記載されているといえる。 以上のことから,引用文献1には“ソフトウェア入力情報を基に推定対象ソフトウェアを解析し,ソフトウェアの特性(For文比率,分析比率,I/O処理)を取得するソフトウェア解析手段によるステップ”が記載されていると認められる。 エ 上記Cには「40は過去に実行されたソフトウェアのソフトウェア情報が登録されているデータベース」と記載されていることから,引用文献1には「過去に実行されたソフトウェアのソフトウェア情報が登録されているデータベース」が記載されているといえる。 また,上記Cには「図2は,データベース40に登録されているソフトウェア情報の説明図である。41はソフトウェアを特定するためのソフトウェア名,42はソフトウェアを実行したハードウェア(H/W)条件,43はソフトウェア名41の各ソフトウェアがハードウェア条件42の各条件で実行された時の処理時間,44,45,46はソフトウェア解析手段30によって解析されたソフトウェアの特性であり,図2では,それぞれFor文の比率,分岐比率,I/O処理の割合を示す。ハードウェア条件42,処理時間43,For文の比率44,分岐比率45,I/O処理の割合46は,それぞれソフトウェア名41毎に登録されている。」と記載されていることから,引用文献1には「ハードウェア条件と各条件で実行された時の処理時間,ソフトウェア解析手段によって解析されたソフトウェア特性が登録されているデータベース」が記載されているといえる。 そうすると,引用文献1には“過去に実行されたソフトウェアのソフトウェア情報,ハードウェア条件と各条件で実行された時の処理時間,ソフトウェア解析手段によって解析されたソフトウェア特性が登録されているデータベースによるステップ”が記載されていると認められる。 オ 上記Cには「50はソフトウェア解析手段30によって解析されたソフトウェアの特性とデータベース40に登録されているソフトウェア情報に含まれるソフトウェアの特性とから両者の特性の一致性を評価し,この評価結果とハードウェア条件20とから推定対象のソフトウェアを選択する一致性評価手段」と記載されていることから,引用文献1には「ソフトウェア解析手段によって解析されたソフトウェアの特性とデータベースに登録されているソフトウェア情報に含まれるソフトウェアの特性とから両者の特性の一致性を評価し,一致するソフトウェアを選択する一致性評価手段によるステップ」が記載されているといえる。 また,上記Dには「一致性評価手段50は,推定対象のソフトウェアの特性と,一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベース40に登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が,最小のソフトウェアを,一致するソフトウェアとしてデータベース40から選択する。」と記載されていることから,引用文献1には「一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベース40に登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が,最小のソフトウェアを,一致するソフトウェアとしてデータベース40から選択する一致性評価手段によるステップ」が記載されているといえる。 そうすると,引用文献1には“ソフトウェア解析手段によって解析されたソフトウェアの特性とデータベースに登録されているソフトウェア情報に含まれるソフトウェアの特性とから両者の特性の一致性を評価し,一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベース40に登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が最小のソフトウェアを,一致するソフトウェアとしてデータベース40から選択する一致性評価手段によるステップ”が記載されていると認められる。 カ 上記Cには「60は一致性評価手段50によって選択されたソフトウェアの処理時間から,推定対象のソフトウェアの処理時間を算出し,この処理時間を出力する処理時間算出手段」と記載されていることから,引用文献1には「一致性評価手段において推定対象と一致するとして選択されたソフトウェアの処理時間を算出し,この処理時間を出力する処理時間算出手段によるステップ」が記載されているといえる。 また,上記Cには「ステップS140で,処理時間算出手段60は,データベース40に登録されているソフトウェア情報の処理時間43を基に,ソフトウェア名(イ)がハードウェア条件Aで実行された時の処理時間10秒と,ハードウェア条件Bで実行された時の処理時間5秒から,ハードウェア条件AとBの間でのソフトウェアの処理時間は1/2倍になると判断し,ソフトウェア名(ニ)がハードウェア条件Bで実行された時の処理時間は,ハードウェア条件Aで実行された時の処理時間8秒の1/2倍の,4秒と算出する。(中略)選択した他のソフトウェアを基に推定対象ソフトウェアの処理時間を算出するようにしているので,より精度よくソフトウェアの処理時間を推定することができる。」と記載されていることから,引用文献1には「ハードウェア条件と各条件で実行された時の処理時間が登録されているデータベースから,選択されたソウトウェアの処理時間を算出し,処理時間を推定する処理時間算出手段によるステップ」が記載されているといえる。 そうすると,引用文献1には“ハードウェア条件と各条件で実行された時の処理時間が登録されているデータベースから,一致性評価手段において推定対象ソフトウェアと一致するとして選択されたソフトウェアの処理時間を算出し,処理時間を推定する処理時間算出手段によるステップ”が記載されていると認められる。 キ 上記ア乃至カでの検討より,引用文献1には以下の発明(以下「引用発明」という)が記載されていると認められる。 「ソフトウェア名やソースコードなどのソフトウェア情報の入力を受信するステップと, 前記ソフトウェア入力情報を基に推定対象のソフトウェアを解析し,ソフトウェアの特性(For文比率,分岐比率,I/O処理)を取得するソフトウェア解析手段によるステップと, 過去に実行されたソフトウェアのソフトウェア情報,ハードウェア条件と各条件で実行された時の処理時間,前記ソフトウェア解析手段によって解析されたソフトウェア特性が登録されているデータベースによるステップと, 前記ソフトウェア解析手段によって解析されたソフトウェア特性とデータベースに登録されているソフトウェア情報に含まれるソフトウェア特性とから両者の特性の一致性を評価し,一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベースに登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が最小のソフトウェアを,一致するソフトウェアとしてデータベースから選択する一致性評価手段によるステップと, ハードウェア条件と各条件で実行された時の処理時間が登録されているデータベースから,前記一致性評価手段において推定対象ソフトウェアと一致するとして選択されたソフトウェアの処理時間を算出し,処理時間を推定する処理時間算出手段によるステップと を備えるソフトウェア処理時間推定システム及びソフトウェア処理時間推定方法。」 (3) 参考文献 (3-1)周知文献1 本願の優先日前に既に頒布または電気通信回線を通して公衆に利用可能とされた文献である特開2008-90396号公報(以下「周知文献1」という)には,関連図面と共に,以下の技術的事項が記載されている。 E 「【0029】 図2に戻り,一次検索処理を終了すると,電子文書検索装置1は,類似検索処理を行う(ステップS102)。類似検索処理は,例えば図4の手順で行われる。 まず,ルール管理部3が,一次文書ファイルから検索語を読み出し,この検索語を検索条件として含む類似検索ルールを生成する。そして,検索部4が,この類似検索ルールにより,文書DB12に蓄積されている電子文書群の検索を行う。この検索により,1又は複数の類似文書が索出される。評価部5は,索出された類似文書毎に類似度を算出する。類似度は,類似文書が一次文書とどの位特徴が類似するかを表す一つの尺度である。本実施形態では,尺度として,類似度が高いほど大きくなる数値を用いる。 【0030】 すなわち,評価部5は,類似文書及び一次文書の各々に含まれる語ないし語句を抽出するとともに,各々の特徴ベクトルを算出し,類似文書における特徴ベクトルと一次文書における特徴ベクトルとの類似度合いを数値で表現する。このような類似度の算出は,例えば,TF・IDF(Term Frequency Inverse Document Frequency)法によって行うことができる。TF・IDF法については,例えば,「言語と計算5 情報検索と言語処理」徳永健伸 東京大学出版会 1999/11等の記載を参考にすることができる。 なお,類似度の算出は,TF・IDF法による算出方法に限られるものではなく,他の方法によって算出してもよいのは勿論である。評価部5は,上記のようにして類似度を算出すると,これを類似文書の各々に対応付けるための処理を行う。例えば,類似文書に付与されるIDと類似度とをリンクさせておく。」 (3-2)周知文献2 本願の優先日前に既に頒布または電気通信回線を通して公衆に利用可能とされた文献である特開2007-249491号公報(以下「周知文献2」という)には,関連図面と共に,以下の技術的事項が記載されている。 F 「【要約】 【課題】バッチジョブを実行させるサーバを複数の実行サーバの中から選ぶときに,バッチジョブの実行にかかる時間の範囲全体の中で最適な実行サーバを選択する。 【解決手段】バッチジョブ特性と入力データの件数からそのバッチジョブの実行にかかる時間を予測し,その時間の範囲全体で各実行サーバの負荷状況を予測し,それにもとづいてバッチジョブを実行させる実行サーバを選択する。また,バッチジョブを実行するたびに,そのバッチジョブの実行により生じた負荷を計測し,その実測値にもとづいてバッチジョブ特性を更新することによって,バッチジョブ特性の確度および実行サーバの選択の精度を高める。(中略) 【0009】 図1は本発明の原理を示す図である。本発明によるプログラムは,バッチジョブを実行するサーバが複数存在するマルチサーバ環境において,バッチジョブを実行させるサーバを選択するのに用いられる。本発明によるプログラムは,ステップS1において,バッチジョブの特性と入力データ量から,そのバッチジョブを実行するのにかかる実行時間を予測する。そしてステップS2において,その実行時間の範囲における各サーバの負荷状況を予測する。最後にステップS3において,予測した負荷状況にもとづいて,そのバッチジョブを実行させるサーバを選択する。選択されたサーバでバッチジョブを実行することにより,マルチサーバ環境におけるバッチジョブの適切な分散が実現される。(中略) 【0020】 図4は,本発明によってバッチジョブの実行サーバを選択しバッチジョブを分散実行させるシステムの一実施形態における構成図である。図4に示したバッチシステム101は,受付サーバ102と,複数の実行サーバ103-1,103-2,……,103-Nからなる実行サーバ群103と,リポジトリ104とを備える。受付サーバ102は,バッチジョブの実行要求を受け付けると,バッチジョブの実行にかかる時間を予測し,そのバッチジョブの実行範囲内での各実行サーバ103-1,103-2,……,103-Nの負荷状況を予測し,予測した負荷状況にもとづいて実行サーバ群103の中から適切な実行サーバを選択して,その実行サーバにバッチジョブを実行させる。受付サーバはこれらの予測と選択を,リポジトリ104に格納されたデータにもとづいて行う。図中の番号(1)から(15)は処理の流れを示すが,詳しくは後述する。」 (3-3)周知文献3 本願の優先日前に既に頒布または電気通信回線を通して公衆に利用可能とされた文献である特開2003-271405号公報(以下「周知文献3」という)には,関連図面と共に,以下の技術的事項が記載されている。 G 「【要約】 【課題】複数の異機種の計算機からなるシステムにおいて,ジョブを実行するのに最適な計算機を決定することにある。 【解決手段】ジョブ受付部2は入力されたジョブ情報1を管理し,ソースプログラム解析部3(以下,解析部3)に渡し,解析部3はソースプログラム101を解析して目的プログラムの特性パラメータを抽出し,特性パラメータと,ジョブ情報1と,ソースプログラムを中間言語に翻訳した翻訳情報を計算機評価部5に渡す。評価部5は,特性パラメータに従って計算機特性表4に登録された計算機における目的プログラムの実行時間を推定し,また,各計算機の混雑状況等をジョブ管理部7より取得し,推定結果と混雑状況等により実行計算機を選択し,選択結果とジョブ情報1をジョブ管理部7に渡し,オブジェクト生成部6は前記翻訳情報から選択した計算機用の目的プログラムを生成し,ジョブ管理部7に渡す。(中略) 【0007】 次に,図1におけるジョブスケジューラ10の動作について説明する。ジョブスケジューラ10は実行を依頼されたジョブを,同ジョブで実行される目的プログラムの特性とジョブ投入可能な計算機の特性および現在状況に応じて,特定の計算機に投入する機能を有し,ソースプログラム101を含むジョブ情報1が投入されることによってそのジョブの処理を開始する。ジョブ受付部2は入力されたジョブ情報1を管理し,ソースプログラム解析部3に引き渡す。本実施例では,ソースプログラム解析部3は入力されたジョブにおいて実行される目的プログラムのソースプログラム101を解析して同目的プログラムの特性を示す特性パラメータを抽出する。このパラメータの一例としては,目的プログラムの実行時間に密接に関与する要素として,目的プログラムに含まれる各ループについて,ループの一試行のステップ数,ループ回数,ループの各試行間の並列性を抽出する方法がある。ソースプログラム解析部3は,これら目的プログラムの特性パラメータをジョブ情報1とともに計算機評価部5に引き渡す。また,ソースプログラム解析部3は,ソースプログラムを中間言語に翻訳し,この翻訳情報を計算機評価部5に引き渡す。 【0008】 計算機評価部5は,ソースプログラム解析部3から受け取った目的プログラムの特性パラメータに従って計算機特性表4に登録されている計算機における目的プログラムの実行時間を推定し,各計算機の混雑状況等の現在状況をジョブ管理部7より取得した後,実行時間の推定値および混雑状況に基づいて目的プログラムを実行する計算機を選択し,この計算機選択情報とジョブ情報1をジョブ管理部7に引き渡す。また,選択した計算機を対象として目的プログラムを生成するようオブジェクト生成部6に指示し,ソースプログラムを中間言語に翻訳した翻訳情報を引き渡す。ジョブ情報1を引き渡す。オブジェクト生成部6は,ジョブ情報1に含まれるソースプログラム101を翻訳して選択された計算機を対象とする目的プログラムを生成し,ジョブ管理部7に引き渡す。ジョブ管理部7は,計算機選択情報によりジョブを処理する計算機を指定し,ジョブ情報1に基づいて目的プログラムを指定した計算機に投入する。」 (3-4)周知文献4 本願の優先日前に既に頒布または電気通信回線を通して公衆に利用可能とされた文献である特開2002-73576号公報(以下「周知文献4」という)には,関連図面と共に,以下の技術的事項が記載されている。 H 「【0020】 また,管理サーバ1は,ジョブ定義情報格納部12に格納されたジョブ定義情報を解析し,ジョブ投入受付部5により受け付けられたジョブについて,当該ジョブ中の各処理プログラムの実行順序および実行先となる計算機を決定するジョブ定義解析部8と,ジョブ投入受付部5により受け付けられたジョブの実行を制御し,ジョブ定義解析部8により決定された実行順序に基づいて,該当する実行サーバ2に対して該当する処理プログラムの実行要求をメッセージとして送信する実行中ジョブ制御部6とを有している。ここで,管理サーバ1の実行中ジョブ制御部6は,実行サーバ2に対して処理プログラムの実行要求をメッセージとして送信した後,実行サーバ2から処理プログラムの実行終了通知を待ち,当該実行終了通知を受信した時点で,次の処理プログラムの実行要求をメッセージとして送信し,最後の処理プログラムの実行が終了するまで同様の処理を繰り返すようになっている。なお,管理サーバ1の実行中ジョブ制御部6から送信されたメッセージは管理サーバ1のメッセージキューイング機構4を介して各実行サーバ2に対して送信される。」 (4)対比 ク 引用発明の「ソフトウェア処理時間推定方法」は,「ハードウェア条件と各条件で実行された時の処理時間」から「推定対象ソフトウェア」の「処理時間を算出し、処理時間を推定する」ので,「推定対象ソフトウェア」が「ハードウェア条件と各条件で実行された時」の負荷特性を推定しているといえる。すなわち、引用発明の「ソウトウェア処理時間」は,本願発明の「負荷特性」に対応する。 そうすると,引用発明における「ソフトウェア処理時間推定方法」は,本願発明における「負荷特性推定方法」に相当する。 ケ 引用発明の「ソフトウェア名やソースコード」は「所定のコンピュータシステム上で動作させるプログラム」であることは明らかであるので,引用発明における「ソフトウェア名やソースコードなどのソフトウェア情報の入力を受信するステップ」は,本願発明における「所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップ」に相当する。 コ 引用発明の「ソフトウェア入力情報」には「ソースコード」も含まれており,引用発明の「ソフトウェアの特性(For文比率,分岐比率,I/O処理)」は本願発明の「プログラムの特徴情報」といえるので,引用発明における「前記ソフトウェア入力情報を基に推定対象のソフトウェアの特性を解析し,ソフトウェアの特性(For文比率,分岐比率,I/O処理)を取得するソフトウェア解析手段によるステップ」は,本願発明における「前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップ」に相当する。 サ 引用発明の「ソフトウェアの特性(For文比率,分岐比率,I/O処理)」は,ソフトウェアプログラムのソースコードの特徴を数値的に表現した値といえるから,本願発明の「プログラム特徴ベクトル」とは,“プログラムの特徴を数値的に表現した値”という上位概念で一致するといえる。 また,引用発明の「過去に実行されたソフトウェアのソフトウェア情報,ハードウェア条件と各条件で実行された時の処理時間,前記ソフトウェア解析手段で解析されたソフトウェア特性」は,過去に所定のコンピュータ上で動作させたプログラムの特徴を数値的に表現した値といえる。 更に,引用発明の「一致する特性を持つソフトウェアがなかった場合,入力さえたソフトウェアの特性の値と,データベースに登録されているソフトウェアの特性毎の値との差分を求め,差分の合計が最小のソフトウェアを,一致するソフトウェアとしてデータベースから選択」することは,ソフトウェアの特性の類似するものを検索する「類似検索」といえる。 そうすると,引用発明における「過去に実行されたソフトウェアのソフトウェア情報,ハードウェア条件と各条件で実行された時の処理時間,前記ソフトウェア解析手段で解析されたソフトウェア特性が登録されているデータベースと,前記ソフトウェア解析手段によって解析されたソフトウェア特性とデータベースに登録されているソフトウェア情報に含まれるソフトウェア特性から両者の一致性を評価し,一致する特性を持つソフトウェアがなかった場合,入力されたソフトウェアの特性の値と,データベースに登録されているソフトウェアの特性毎の値の差分を求め,差分の合計が最小のソフトウェアを,一致するソフトウェアとしてデータベースから選択する一致性評価手段によるステップ」は,本願発明における「前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップ」と,後記する点で相違するものの,“前記特徴情報から計算したプログラムの特徴を数値的に表現した値と,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴を数値的に表現した値との類似検索を行うことにより前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップ”という点で一致する。 シ 引用発明の「ハードウェア条件と各条件で実行された時の処理時間が登録されているデータベース」は,本願発明の「過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部」に相当し,引用発明の「前記一致性評価手段において推定対象ソフトウェアと一致するとして選択されたソフトウェアの処理時間を算出し,処理時間を推定」することは,本願発明の「前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定」することに相当するといえる。 そうすると,引用発明における「ハードウェア条件と各条件で実行された時の処理時間が登録されているデータベースから,前記一致性評価手段において推定対象ソフトウェアと一致するとして選択されたソフトウェアの処理時間を算出し,処理時間を推定する処理時間算出手段によるステップ」は,本願発明における「過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップ」に相当する。 ス 上記ク乃至シで検討したとおり,本願発明と引用発明とは,以下の点で一致し,また,以下の点で相違する。 <一致点> 所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップと, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップと, 前記特徴情報から計算したプログラムの特徴を数値的に表現した値と,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴を数値的に表現した値との類似検索を行うことにより前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップと, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップと, を備えたことを特徴とする負荷特定推定方法。 <相違点1> 「類似する特徴を持つプログラムを検索するステップ」における「プログラムの特徴を数値的に表現した値」として,本願発明では「特徴ベクトル」を用いているのに対して,引用発明では「ソフトウェア特性(For文比率,分岐比率,I/O処理)」の値を用いている点。 <相違点2> 本願発明では「前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップ」を有しているのに対して,引用発明ではそのように特定されていない点。 <相違点3> 「所定のコンピュータ上で動作させるプログラムの入力を受け付けるステップ」において,本願発明では「前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入ステップ」であるのに対して,引用発明ではそのように特定されていない点。 <相違点4> 本願発明では「前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップは,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当てステップ」であるのに対して,引用発明ではそのように特定されていない点。 (5)当審の判断 (5-1)相違点1 特徴ベクトルを用いて類似検索を行うことは,周知技術にすぎず,それを適用する格別な困難性が認められない。 例えば,上記Eには「類似検索処理は,例えば図4の手順で行われる。(中略)検索部4が,この類似検索ルールにより,文書DB12に蓄積されている電子文書群の検索を行う。(中略)評価部5は,索出された類似文書毎に類似度を算出する。(中略)評価部5は,類似文書及び一次文書の各々に含まれる語ないし語句を抽出するとともに,各々の特徴ベクトルを算出し,類似文書における特徴ベクトルと一次文書における特徴ベクトルとの類似度合いを数値で表現する。このような類似度の算出は,例えば,TF・IDF(Term Frequency Inverse Document Frequency)法によって行うことができる。TF・IDF法については,例えば,「言語と計算5 情報検索と言語処理」徳永健伸 東京大学出版会 1999/11等の記載を参考にすることができる。」と記載されているように,「特徴ベクトル」を算出し,類似検索を行うことは,周知技術に過ぎず,これを引用発明の「一致性判断手段によるステップ」における「プログラム特性」である「プログラムの特徴を数値的に表現した値」として,「特徴ベクトル」を用いて類似検索することは当業者が適宜なし得ることである。 よって,相違点1は格別なものではない。 (5-2)相違点2 上記Fには「ステップS1において,バッチジョブの特性と入力データ量から,そのバッチジョブを実行するのにかかる実行時間を予測する。そしてステップS2において,その実行時間の範囲における各サーバの負荷状況を予測する。最後にステップS3において,予測した負荷状況にもとづいて,そのバッチジョブを実行させるサーバを選択する。選択されたサーバでバッチジョブを実行する(中略)受付サーバ102は,バッチジョブの実行要求を受け付けると,バッチジョブの実行にかかる時間を予測し,そのバッチジョブの実行範囲内での各実行サーバ103-1,103-2,……,103-Nの負荷状況を予測し,予測した負荷状況にもとづいて実行サーバ群103の中から適切な実行サーバを選択して,その実行サーバにバッチジョブを実行させる。」と記載され,上記Gには「計算機評価部5は,ソースプログラム解析部3から受け取った目的プログラムの特性パラメータに従って計算機特性表4に登録されている計算機における目的プログラムの実行時間を推定し,各計算機の混雑状況等の現在状況をジョブ管理部7より取得した後,実行時間の推定値および混雑状況に基づいて目的プログラムを実行する計算機を選択し,この計算機選択情報とジョブ情報1をジョブ管理部7に引き渡す。(中略)ジョブ管理部7は,計算機選択情報によりジョブを処理する計算機を指定し,ジョブ情報1に基づいて目的プログラムを指定した計算機に投入する。」と記載されているように,バッチジョブやプログラムの特性から実行時間を予測し,その実行時間におけるサーバや計算機の負荷状況や混雑状況に基づいて,サーバを選択し,選択されたサーバや計算機でバッチジョブやプログラムを実行させることは周知技術である。 すなわち,引用発明に周知技術を適用し,「前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップ」を備えることは,当業者が適宜なし得ることである。 よって,相違点2は格別なものではない。 (5-3)相違点3 上記Gには「ジョブ受付部2は入力されたジョブ情報1を管理し,ソースプログラム解析部3に引き渡す」と記載され,上記Hには「ジョブ投入受付部5により受け付けられたジョブの実行を制御」と記載されているように,コンピュータシステムに実行させるプログラムの入力を受け付けるステップを設けることは常套手段に過ぎず,これを引用発明に適用することは当業者が適宜なし得ることである。 よって,相違点3は格別なものではない。 (5-4)相違点4 上記Hには「管理サーバ1は,ジョブ定義情報格納部12に格納されたジョブ定義情報を解析し,ジョブ投入受付部5により受け付けられたジョブについて,当該ジョブ中の各処理プログラムの実行順序および実行先となる計算機を決定するジョブ定義解析部8と,ジョブ投入受付部5により受け付けられたジョブの実行を制御し,ジョブ定義解析部8により決定された実行順序に基づいて,該当する実行サーバ2に対して該当する処理プログラムの実行要求をメッセージとして送信する実行中ジョブ制御部6とを有」と記載され,上記Gには「ジョブ管理部7は,計算機選択情報によりジョブを処理する計算機を指定し,ジョブ情報1に基づいて目的プログラムを指定した計算機に投入する。」と記載されているように,ジョブの実行順序に基づいて処理プログラムの実行手順を制御して,ジョブ実行割り当てを制御したり,計算機の割り当てを制御して,ジョブ実行割り当てを制御することは,常套手段である。 すなわち,プログラムの負荷特性情報を利用した情報処理を行うステップは,プログラムの実行手順および計算機への割り当てを制御するジョブ実行割り当てステップとすることに格別の困難性が認められず,これを引用発明に適用することは当業者が容易になし得ることである。 よって,相違点4は格別なものではない。 (6)小括 上記で検討したごとく,相違点1乃至4に係る構成は当業者が容易に想到し得たものであり,そして,これらの相違点を総合的に勘案しても,本願発明の奏する作用効果は,上記引用発明及び当該技術分野の周知技術の奏する効果から予想される範囲内のものにすぎず,格別顕著なものということができない。 したがって,本件補正発明は,上記引用発明及び当該技術分野の周知技術に基づいて,当業者が容易に発明することができたものであり,特許法第29条第2項の規定により特許出願の際独立して特許を受けることができない。 4 補正却下のむすび 以上のとおり,補正後の請求項1に記載された発明は,特許出願の際独立して特許を受けることができるものではないから,本件補正は特許法第17条の2第6項において準用する同法第126条第7項の規定に違反するので,同法第159条第1項において読み替えて準用する同法第53条第1項の規定により却下すべきものである。 よって,上記補正却下の決定の結論のとおり決定する。 第3 本願発明について 1 本願発明 平成27年2月12日付けの手続補正は上記のとおり却下されたので,補正後の請求項9に対応する補正前の請求項9に係る発明(以下「本願発明」という)は,平成26年5月7日付けの手続補正により補正された特許請求の範囲の請求項9に記載された事項により特定される以下のとおりのものである。 「ユーザから,所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップと, 前記入力されたプログラムのソースコードを解析することにより,当該プログラムの特徴情報を取得するステップと, 前記特徴情報から計算した特徴ベクトルと,過去に前記所定のコンピュータシステム上で動作させたプログラムの特徴ベクトルとの類似検索を行うことにより,前記入力されたプログラムと類似する特徴を持つプログラムを検索するステップと, 過去に他のプログラムを前記所定のコンピュータシステム上で動作させた際に当該コンピュータシステムに生じた負荷特性を記録した負荷特性記録部から,前記入力されたプログラムと類似する特徴を持つプログラムの負荷特性情報を読み出して,前記入力されたプログラムの負荷特性を推定するステップと, 前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップと, を含む負荷特性推定方法。」 2 引用文献に記載されている技術的事項及び引用発明 原査定の拒絶の理由に引用された,引用発明は,前記「第2 平成27年2月12日付けの手続補正についての補正却下の決定」の「3 独立特許要件」の「(2)引用文献」に記載したとおりである。 3 対比・判断 本願発明は,上記「第2 平成27年2月12日付けの手続補正についての補正却下の決定」の「3 独立特許要件」で検討した本件補正発明から,補正前の請求項7の発明特定事項を削除したものである。そうすると,本願発明の発明特定事項を全て含み,更に補正前の請求項7の発明特定事項により限定された本件補正発明が,「前記所定のコンピュータシステム上で動作させるプログラムの入力を受け付けるステップは,前記所定のコンピュータシステムに実行させるプログラムを入力するプログラム実行投入ステップであり,前記入力されたプログラムの負荷特性情報を利用した情報処理を行うステップは,前記入力されたプログラムの負荷特性情報を用いて,プログラムの実行手順および計算機への割り当てを制御する,ジョブ実行割り当てステップである」という態様を省いたものであるので、 上記「第2 平成27年2月12日付けの手続補正についての補正却下の決定」の「3 独立特許要件」の「(2)引用文献」乃至「(4)対比」に記載した相違点1乃至4のうち、相違点1乃至2においてのみ相違する。 そうすると、当該相違点1乃至2は、上記「第2 平成27年2月12日付けの手続補正についての補正却下の決定」の「3 独立特許要件」の「(5)当審の判断」に記載したとおり,格別なものではないことから、本願発明は,引用発明及び当該技術分野の周知技術に基づいて,当業者が容易に発明することができたものである。 第4 むすび 以上のとおり,本願の請求項9に係る発明は,特許法第29条第2項の規定により特許を受けることができないものであるから,その余の請求項に係る発明について検討するまでもなく,本願は拒絶すべきものである。 よって,結論のとおり審決する。 |
審理終結日 | 2016-02-24 |
結審通知日 | 2016-03-01 |
審決日 | 2016-03-14 |
出願番号 | 特願2011-545200(P2011-545200) |
審決分類 |
P
1
8・
121-
Z
(G06F)
P 1 8・ 575- Z (G06F) |
最終処分 | 不成立 |
前審関与審査官 | 坂庭 剛史 |
特許庁審判長 |
石井 茂和 |
特許庁審判官 |
高木 進 須田 勝巳 |
発明の名称 | 負荷特性推定システム、負荷特性推定方法およびプログラム |
代理人 | 加藤 朝道 |