(57)【要約】【課題】検証対象装置の性能限界見極め検証において、検証者の稼働を削減し、検証を早期に終了することができる。【解決手段】検証管理装置３は、検証が実行される度に、検証対象装置５の消費リソースの許容量、検証対象装置５と負荷試験装置４とに投入した設定値、該投入した設定値に対する検証対象装置５の消費リソースを基に、負荷試験装置４及び検証対象装置５に次の検証で投入する設定値を計算する設定値計算部３２と、負荷試験装置４及び検証対象装置５に、設定値計算部３２によって計算された設定値を投入して検証を実行させる設定部３３と、投入した設定値に対する検証対象装置５の消費リソースの報告を検証対象装置５から受信する報告受信部３４と、各検証において負荷試験装置４及び検証対象装置５に投入した設定値のうち、消費リソースの許容量に最も近接した消費リソースとなる設定値を出力する出力装置７と、を有する。【選択図】図１
2019020947.tif 000002
【特許請求の範囲】
【請求項１】
検証対象装置の性能限界を見極める検証を管理する検証管理装置であって、
検証が実行される度に、前記検証対象装置の消費リソースの許容量、前記検証対象装置と前記検証対象装置に負荷を印加する負荷試験装置とに投入した設定値、及び、該投入した設定値に対する前記検証対象装置の消費リソースを基に、前記検証対象装置及び前記負荷試験装置に次の検証で投入する設定値を計算する設定値計算部と、
前記検証対象装置及び前記負荷試験装置に、前記設定値計算部によって計算された設定値を投入して検証を実行させる設定部と、
前記投入した設定値に対する前記検証対象装置の消費リソースの報告を前記検証対象装置から受信する受信部と、
受信した前記報告の前記消費リソースにおいて、各検証において前記検証対象装置及び前記負荷試験装置に投入した設定値のうち、前記消費リソースの許容量に最も近接した消費リソースとなる前記検証対象装置及び前記負荷試験装置に投入した設定値を出力する出力部と、
を有することを特徴とする検証管理装置。
【請求項２】
前記検証対象装置の設定値と前記負荷試験装置の負荷設定値との組の実行可能な集合は凸集合であり、
前記設定値計算部は、凸集合の境界点に素早く辿り着くための最適化手法を用いて、前記検証対象装置及び前記負荷試験装置に次の検証で投入する設定値を計算することを特徴とする請求項１に記載の検証管理装置。
【請求項３】
前記検証対象装置の消費リソースの許容量、前記検証対象装置及び前記負荷試験装置に投入する初期設定値、検証の実行指示及び検証の終了条件を入力する入力部と、
入力された検証実行指示に従って、前記検証対象装置及び前記負荷試験装置への前記設定値計算部による設定値の計算と前記設定部による検証の実行とを実施させ、前記終了条件を満たす場合に前記検証対象装置及び前記負荷試験装置への前記設定値計算部による設定値の計算と前記設定部による検証の実行とを終了させる検証司令部と、
を有することを特徴とする請求項１または２に記載の検証管理装置。
【請求項４】
検証対象装置の性能限界を見極める検証を管理する検証管理装置が実行する検証管理方法であって、
検証が実行される度に、前記検証対象装置の消費リソースの許容量、前記検証対象装置と前記検証対象装置に負荷を印加する負荷試験装置とに投入した設定値、及び、該投入した設定値に対する前記検証対象装置の消費リソースを基に、前記検証対象装置及び前記負荷試験装置に次の検証で投入する設定値を計算する設定値計算工程と、
前記検証対象装置及び前記負荷試験装置に前記設定値計算工程において計算された設定値を投入して検証を実行させる設定工程と、
前記投入した設定値に対する前記検証対象装置の消費リソースの報告を前記検証対象装置から受信する受信工程と、
前記受信工程において受信した前記報告の前記消費リソースにおいて、各検証において前記検証対象装置及び前記負荷試験装置へ投入した設定値のうち、前記消費リソースの許容量に最も近接した消費リソースとなる前記検証対象装置及び前記負荷試験装置へ投入した設定値を出力する出力工程と、
を含んだことを特徴とする検証管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検証管理装置及び検証管理方法に関する。
【背景技術】
【０００２】
従来のＬｏａｄ  Ｇｅｎｅｒａｔｏｒ(負荷試験機)（例えば、非特許文献１参照）は、ＤＵＴ(Device  Under  Test：検証対象装置やアプリケーション)検証の手順を事前にスクリプト化し自動実行する機能を有する。また、従来のＣＩ（Continuous  Integration）ツール（例えば、非特許文献２参照）は、Ｌｏａｄ  ＧｅｎｅｒａｔｏｒやＤＵＴ検証の手順を事前にスクリプト化し自動実行する機能を有する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Test  Automation，［平成２９年６月２９日検索］，インターネット＜ＵＲＬ：https://www.ixiacom.com/resources/test-automation＞
【非特許文献２】Jenkins，［平成２９年６月２９日検索］，インターネット＜ＵＲＬ：https://jenkins.io/＞
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来、ＤＵＴの性能限界見極め検証において下記の問題があった。まず、従来のＤＵＴの性能限界見極め検証は手動であり、検証作業者の稼働がかかっているという問題があった。言い換えると、従来の性能検証においては、装置設定値の検討、装置設定の投入、検証実行、検証結果の記録といった一連の作業、或いは、この一連の作業の一部の作業を、人手で行っていたため、検証作業者の稼働がかかっていた。
【０００５】
また、検証では、ＤＵＴの設定・負荷試験機の設定を変化させつつＤＵＴの消費リソース(ＣＰＵ使用率等)のデータを取得する作業を繰り返し行い、消費リソースが許容範囲内に収まる中でＤＵＴ及び負荷試験機の設定可能な限界値を見極める。しかしながら、従来のＤＵＴの性能限界見極め検証は、繰り返し作業におけるＤＵＴの設定及び負荷試験機の設定値が、単純なアルゴリズム(設定値を等間隔で変化させる等)により決定されていたため、検証回数が多くなり検証時間が長くかかるという問題があった。
【０００６】
本発明は、上記に鑑みてなされたものであって、検証対象装置の性能限界見極め検証において、検証者の稼働を削減し、検証を早期に終了することができる検証管理装置及び検証管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述した課題を解決し、目的を達成するために、本発明に係る検証管理装置は、検証対象装置の性能限界を見極める検証を管理する検証管理装置であって、検証が実行される度に、検証対象装置の消費リソースの許容量、検証対象装置と検証対象装置に負荷を印加する負荷試験装置とに投入した設定値、及び、該投入した設定値に対する検証対象装置の消費リソースを基に、検証対象装置及び負荷試験装置に次の検証で投入する設定値を計算する設定値計算部と、検証対象装置及び負荷試験装置に、設定値計算部によって計算された設定値を投入して検証を実行させる設定部と、投入した設定値に対する検証対象装置の消費リソースの報告を検証対象装置から受信する受信部と、受信した報告の消費リソースにおいて、各検証において検証対象装置及び負荷試験装置に投入した設定値のうち、消費リソースの許容量に最も近接した消費リソースとなる検証対象装置及び負荷試験装置に投入した設定値を出力する出力部と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、検証対象装置の性能限界見極め検証において、検証者の稼働を削減し、検証を早期に終了することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態に係る検証管理システムの構成の一例を模式的に示す図である。
【図２】図２は、図１に示す設定値計算部が使用する最適化アルゴリズムのモデルを説明する図である。
【図３】図３は、図１に示す設定値計算部が使用する最適化アルゴリズムを説明する図である。
【図４】図４は、図１に示す設定値計算部が使用する最適化アルゴリズムを示す図である。
【図５】図５は、実施の形態に係る検証管理処理の処理手順を示すシーケンス図である。
【図６】図６は、従来の検証処理の手順を説明する図である。
【図７】図７は、従来の検証処理における装置設定回数を説明する図である。
【図８】図８は、実施の形態に係る検証管理処理の手順を説明する図である。
【図９】図９は、実施の形態に係る検証管理処理における装置設定回数を説明する図である。
【図１０】図１０は、プログラムが実行されることにより、検証管理装置、負荷試験装置及び検証対象装置が実現されるコンピュータの一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して、本発明の一実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
【００１１】
［実施の形態］
本発明の実施の形態について説明する。本発明の実施の形態では、装置やアプリケーション開発の一工程として実行される検証対象装置の性能限界を見極める検証処理を自動的に実行する検証管理システムについて説明する。
【００１２】
［検証管理システムの構成］
まず、実施の形態における検証管理システムの構成について説明する。図１は、実施の形態における検証管理システムの構成の一例を模式的に示す図である。図１に示すように、検証管理システム１は、検証管理装置３、負荷試験装置４及び検証対象装置５を有する。検証管理装置３は、負荷試験装置４及び検証対象装置５と、インターネットや専用線等の通信ネットワークを介して接続する。
【００１３】
検証管理装置３は、検証対象装置５に対する性能限界を見極める検証処理の管理を行う。検証対象装置５の消費リソースがある許容範囲に収まる制約の中で検証対象装置５の装置設定をどの範囲まで設定可能か、及び、検証対象装置５にどの範囲までの負荷を印加可能か、を見極めるための検証作業を自動的に実行する。検証管理装置３は、負荷試験装置４及び検証対象装置５に対して計算した設定値を投入し、検証を実行させる。そして、検証管理装置３は、検証対象装置５から消費リソースの報告を受信し、次の検証で投入する設定値を計算して、次の検証を行う。
【００１４】
負荷試験装置４は、検証対象装置５に負荷を印加する装置である。例えば、負荷試験装置４は、検証管理装置３による負荷設定を投入し、検証対象装置５に負荷を印加する。負荷試験装置４は、実際に負荷を印加した際の印加状態を示すレスポンスを検証管理装置３に報告する。
【００１５】
検証対象装置５は、性能限界を見極める検証処理対象の装置である。検証対象装置５は、負荷試験装置４による負荷を受けた状態で、検証管理装置３による設定を投入し、これによる消費リソースを検証管理装置３に報告する。なお、本実施の形態では、検証処理対象が検証対象装置５である場合について説明するが、もちろん、検証処理対象は、装置等が有するアプリケーションであってもよい。
【００１６】
［検証管理装置の構成］
次に、検証管理装置３の構成について説明する。検証管理装置３は、ワークステーションやパソコン等の汎用コンピュータで実現され、ＣＰＵ（Central  Processing  Unit）等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図１に例示するように、検証司令部３１、設定値計算部３２、設定部３３及び報告受信部３４（受信部）として機能する。そして、検証管理装置３は、検証者による各種操作を受け付ける入力インタフェースである入力装置６、及び、検証に関する各種情報を出力する出力装置７と接続する。
【００１７】
検証司令部３１は、入力装置６を介して検証作業者から入力された検証実行指示に従って、負荷試験装置４及び検証対象装置５への設定値計算部３２（後述）による設定値の計算と設定部３３（後述）による検証の実行とを実施させる。検証司令部３１は、検証実行指示として、検証対象装置５と負荷試験装置４の初期設定値、検証対象装置５の消費リソースの許容量に対する制約条件を取得する。
【００１８】
検証司令部３１は、入力装置６を介して検証作業者から入力された終了条件を取得する。検証司令部３１は、この終了条件を満たす場合に、検証処理を終了する。すなわち、検証司令部３１は、負荷試験装置４及び検証対象装置５への設定値計算部３２による設定値の計算と設定部３３による検証の実行とを終了させる。そして、検証司令部３１は、受信した報告の消費リソースにおいて、各検証において負荷試験装置４及び検証対象装置５へ投入した設定値のうち、消費リソースの許容量に最も近接した消費リソースとなる負荷試験装置４及び検証対象装置５へ投入した設定値を、出力装置７から外部に出力する。
【００１９】
設定値計算部３２は、検証が実行される度に、負荷試験装置４及び検証対象装置５に対して、次の検証で投入する設定値を計算する。設定値計算部３２は、負荷試験装置４及び検証対象装置５へ投入した設定値、及び、該投入した設定値に対する検証対象装置５の消費リソースを基に、負荷試験装置４及び検証対象装置５に対し、次の検証で投入する設定値を計算する。
【００２０】
ここで、検証対象装置５の設定値と負荷試験装置４の負荷設定値との組の実行可能な集合は凸集合である。そこで、設定値計算部３２は、凸集合の境界点に素早く辿り着くための最適化手法を用いて、負荷試験装置４及び検証対象装置５に次の検証で投入する設定値を計算する。
【００２１】
設定部３３は、負荷試験装置４及び検証対象装置５に設定値計算部３２によって計算された設定値を投入して検証を実行させる。この際、設定部３３は、各装置の環境に合わせて設定値及び検証実行指示を変換し、負荷試験装置４及び検証対象装置５のそれぞれにおいて検証が実行できるようにする。
【００２２】
報告受信部３４は、検証対象装置５から、投入した設定値に対する検証対象装置５の消費リソースの報告を受信する。また、報告受信部３４は、負荷試験装置４から、印加状態を示すレスポンスを受信する。報告受信部３４は、受信した消費リソースの報告及びレスポンスを検証司令部３１に出力する。
【００２３】
入力装置６は、ボタン、タッチパネル、音声入力デバイス、キーボードやマウス等の入力デバイスによって構成される。入力装置６は、検証対象装置５の消費リソースの許容量、負荷試験装置４及び検証対象装置５へ投入する初期設定値、検証の実行指示、及び、検証の終了条件を入力する。
【００２４】
出力装置７は、例えば、液晶ディスプレイやプリンタ等である。出力装置７は、受信した報告の前記消費リソースにおいて、各検証において負荷試験装置４及び検証対象装置５へ投入した設定値のうち、消費リソースの許容量に最も近接した消費リソースとなる負荷試験装置４及び検証対象装置５へ投入した設定値を出力する。
【００２５】
［負荷試験装置の構成］
次に、負荷試験装置４の構成について説明する。負荷試験装置４は、ワークステーションやパソコン等の汎用コンピュータで実現され、ＣＰＵ等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図１に例示するように、設定部４１、負荷試験部４２及びレスポンス送信部４３として機能する。
【００２６】
設定部４１は、検証管理装置３が設定した負荷設定値を、負荷試験部４２に投入する。負荷試験部４２は、検証対象装置５の検証対象機能部５２（後述）に、投入された設定値で負荷を印加する。例えば、負荷試験部４２は、投入された設定値のトラヒックを印加する。レスポンス送信部４３は、実際に負荷を印加した際の印加状態を示すレスポンスを検証管理装置３に送信する。例えば、レスポンスは、タイムスタンプと、投入されたトラヒックと、実際に印加できたトラヒックとを示す。
【００２７】
［検証対象装置の構成］
次に、検証対象装置５の構成について説明する。検証対象装置５は、ワークステーションやパソコン等の汎用コンピュータで実現され、ＣＰＵ等の演算処理装置がメモリに記憶された処理プログラムを実行することにより、図１に例示するように、設定部５１、検証対象機能部５２及びリソース送信部５３として機能する。
【００２８】
設定部５１は、検証管理装置３が設定した設定値を、検証対象機能部５２に投入する。
検証対象機能部５２は、性能限界見極めの検証対象である機能部である。検証対象機能部５２は、負荷試験装置４に負荷を印加された状態で、投入された設定値での動作を行う。検証対象機能部５２が例えばルータであった場合、ｓＦｌｏｗのサンプリングレートが設定される。リソース送信部５３は、投入された設定値での動作で検証対象機能部５２が消費した消費リソースを検証管理装置３に送信する。例えば、リソース送信部５３は、検証対象機能部５２のＣＰＵ使用率、メモリ使用率を送信する。
【００２９】
［最適化アルゴリズムのモデル］
次に、設定値計算部３２が使用する最適化アルゴリズムのモデルについて説明する。図２は、図１に示す設定値計算部３２が使用する最適化アルゴリズムのモデルを説明する図である。本実施の形態では、図２に示すように、検証管理装置３が、負荷試験装置４と検証対象装置５に対する設定値を投入して検証を実行させるモデルを採用する。
【００３０】
図２に示すように、検証管理装置３は、検証対象装置５に、各検証回の消費リソースの許容量（アクセント）ｒを付与するとともに（枠Ｗ３参照）、検証回ごとに、装置設定の値ｃを設定する（枠Ｗ１参照）。そして、検証管理装置３は、検証回ごとに、負荷試験装置４に、負荷設定ｌを設定する（枠Ｗ２参照）。負荷試験装置４は、設定された負荷を検証対象装置５に印加し、検証対象装置５は、負荷試験装置４に負荷を印加された状態で、投入された設定値での動作を行う。検証対象装置５は、投入された設定値での動作で消費した消費リソースｒ（枠Ｗ４参照）を検証管理装置３に送信する。
【００３１】
ここで、本モデルでは、一定回数の検証で探索済の実行可能な（ｃ，ｌ）の凸包の超体積の最大化を目的関数とする。そして、消費リソースｒに対する制約条件を（１）式に示す。
【００３２】
【数１】
2019020947.tif 000003
【００３３】
そして、関数ｆｓ（ｃ，ｌ）は、単調増加関数（ｓ＝１，２，・・・，ｋ）であると仮定する。これより、実行可能な（ｃ，ｌ）空間は、凸空間である。言い換えると、検証対象装置５の設定値と負荷試験装置４の負荷設定値との組の実行可能な集合は凸集合であり、検証管理装置３における設定値計算部３２は、凸集合の境界点に素早く辿り着くための最適化手法を用いて、負荷試験装置４及び検証対象装置５に次の検証で投入する設定値を計算する。
【００３４】
なお、実行可能な（ｃ，ｌ）空間が凸空間であることは、以下のように証明できる。まず、あるｒｓ＝ｆｓ（ｃ，ｌ）のみに着目すると、（ｃ，ｌ）の実行可能な集合Ｓｓは凸集合である。これは、ｆｓ（ｃ，ｌ）の単調増加性から直ちに導ける。また、全てのｓに対して、（ｃ，ｌ）の実行可能な集合は凸集合である。これは、凸集合の積集合は、凸集合であるため、∩ｓＳｓは凸集合となるからである。
【００３５】
［最適化アルゴリズム］
次に、設定値計算部３２が使用する最適化アルゴリズムについて説明する。図３は、図１に示す設定値計算部３２が使用する最適化アルゴリズムを説明する図である。図４は、図１に示す設定値計算部３２が使用する最適化アルゴリズムを示す図である。図３は、検証対象装置５の装置設定の値ｃの、負荷試験装置４の負荷設定ｌ依存性を示す図である。図３の矢印は、図４の各手順（図４では手順を「＃」の記号で示す。）の計算内容をイメージするものである。
【００３６】
まず、最適化アルゴリズムは、実行可能解の境界を探索するものであり、検証対象装置５の装置設定の値ｃ及び負荷試験装置４の負荷設定ｌの初期値（ｃ０，ｌ０）、リソース許容量（アクセント）ｒ，ｆ１，・・・・，ｆｋの入力を受付ける。アウトプットは、最適な実行解となる検証対象装置５の装置設定の値ｃ及び負荷試験装置４の負荷設定ｌの組み合わせである。
【００３７】
まず、この最適化アルゴリズムの手順＃１について説明する。手順＃１では、各装置設定の値または各負荷設定の値を初期解から独立に変動させて実行可能解を探索する。すなわち、手順＃１では、対象となるｃ軸及びｌ軸から１軸を選び独立に変動させて、これらの軸の中の限界点ν´を探索する（図３の＃１に対応する矢印、及び、図４の＃１参照）。限界点探索は、各軸について実行する。限界点探索では、割線法等を使用する。
【００３８】
続いて、手順＃２に進む。手順＃２では、現状発見済みの実行可能解の凸包の面を計算する。この凸包は、図３では、＃２のようにハッチングを付して表す。手順＃２では、実行可能解の凸包の面の計算において、ギフト包装等を使用する。
【００３９】
そして、手順＃３に進む。手順＃３では、凸包の面の中で、ｍｉｎ(ｆ１，・・・・，ｆｋ)を最小にする点νを計算する。例えば、この計算によって、図３の＃３に対応する矢印に示すように、点νを求める。この場合、点νの計算において一般の凸最適化手法を使用する。
【００４０】
続いて、手順＃４に進む。手順＃４では、面ｐの点νからの法線を計算する（図３の＃４に対応する矢印参照）。そして、手順＃５に進む。手順＃５では、各装置設定の値または各負荷設定の値を点νから法線方面に変動させて（図３の＃５に対応する矢印参照）、実行可能解ν´を探索する。この実行可能解の探索では、割線法等を使用する。
【００４１】
そして、この最適化アルゴリズムでは、この実行可能解ν´に対応する検証対象装置５の装置設定の値ｃ及び負荷試験装置４の負荷設定ｌの組み合わせを出力する。設定値計算部３２は、この最適化アルゴリズムを使用して、検証対象装置５の装置設定の値及び負荷試験装置４の負荷設定の値を自動的に計算し、検証司令部３１に出力する。
【００４２】
検証司令部３１は、検証回ごとに設定値計算部３２が計算した検証対象装置５の装置設定の値及び負荷試験装置４の負荷設定の値で、実際に検証対象装置５に対する検証を実行させる。そして、検証司令部３１は、消費リソースの許容量に収まる範囲中で、負荷試験装置４及び検証対象装置５の設定可能な限界値を見極めて、この限界値に対応する検証対象装置５の装置設定の値及び負荷試験装置４の負荷設定値を出力装置７から出力する。
【００４３】
［検証管理処理の処理手順］
次に、図１に示す検証管理システム１の処理手順について説明する。図５は、実施の形態に係る検証管理処理の処理手順を示すシーケンス図である。
【００４４】
図５に示すように、入力装置６は、検証対象装置５と負荷試験装置４の初期設定値、検証対象装置５の消費リソースの許容量に対する制約条件の入力を受付けて検証司令部３１に入力する（ステップＳ１）。なお、入力装置６から検証処理の終了条件も例えばこのタイミングで検証司令部３１に入力される。
【００４５】
そして、検証司令部３１は、検証対象装置５と負荷試験装置４の初期設定値、検証対象装置５の制約を設定値計算部３２に通知する（ステップＳ２）。検証司令部３１は、設定値計算部３２からＯＫを受けると（ステップＳ３）、設定部３３に、この検証対象装置５と負荷試験装置４の初期設定値の設定を指示し、検証対象装置５と負荷試験装置４の検証実行を指示する（ステップＳ４）。
【００４６】
設定部３３は、検証対象装置５の設定部５１に、この検証対象装置５の初期設定値での設定を投入する（ステップＳ５）。検証対象装置５では、設定部５１が検証対象機能部５２に初期設定値を投入して実行させる（ステップＳ６）。検証管理装置３では、設定部３３は、検証対象装置５の設定部５１からＯＫを受けると（ステップＳ７）、負荷試験装置４の初期設定値での設定を投入する（ステップＳ８）。負荷試験装置４では、設定部４１が負荷試験部４２に初期設定値を投入して、検証対象機能部５２への負荷印加を実行させる（ステップＳ９）。
【００４７】
そして、検証管理装置３では、設定部３３は、負荷試験装置４の設定部４１からＯＫを受けると（ステップＳ１０）、検証司令部３１に、検証実行がＯＫだった旨を通知する（ステップＳ１１）。
【００４８】
検証司令部３１は、検証対象装置５と負荷試験装置４の停止と、検証対象装置５の消費リソース及び負荷試験装置４のレスポンスを示したログの収集を報告受信部３４に指示する（ステップＳ１２）。
【００４９】
これに応じて、報告受信部３４は、負荷試験装置４に対し、負荷の印加停止と、レスポンスを示したログの収集とを指示する（ステップＳ１３）。負荷試験装置４では、この指示を受け、レスポンス送信部４３が、負荷試験部４２の負荷の印加を停止し（ステップＳ１４）、レスポンスを示したログを取得して報告受信部３４に送信する（ステップＳ１５）。
【００５０】
続いて、報告受信部３４は、検証対象装置５に対し、検証停止と、消費リソースを示したログの収集とを指示する（ステップＳ１６）。検証対象装置５では、この指示を受け、リソース送信部５３が、検証対象機能部５２の動作を停止し（ステップＳ１７）、消費リソースを示したログを取得して報告受信部３４に送信する（ステップＳ１８）。
【００５１】
報告受信部３４は、受信した検証対象装置５と負荷試験装置４のログを検証司令部３１に通知する（ステップＳ１９）。検証司令部３１は、出力装置７から、検証対象装置５と負荷試験装置４の消費リソース及びレスポンスを示したログを出力させる（ステップＳ２０）。
【００５２】
また、検証司令部３１は、設定値計算部３２に、検証対象装置５と負荷試験装置４の消費リソース及びレスポンスを示したログを通知する（ステップＳ２１）。これを受けて、設定値計算部３２は、検証対象装置５と負荷試験装置４に次の検証で投入する設定値を計算する（ステップＳ２２）。この際、設定値計算部３２は、図３及び図４で説明した凸最適化手法、すなわち凸包を計算するアルゴリズムを用いて、次の検証で投入する設定値を計算する。
【００５３】
そして、設定値計算部３２は、検証対象装置５と負荷試験装置４の次の設定値を検証司令部３１に通知する（ステップＳ２３）。検証管理システム１では、ステップＳ４からステップＳ２３を繰り返すことによって、各回の検証処理を行う。そして、検証司令部３１は、検証処理の終了条件を満たす場合に、検証処理を終了する。
【００５４】
［実施の形態の効果］
本実施の形態では、検証管理装置３が、負荷試験装置４及び検証対象装置５を制御し、性能限界見極めのための検証処理を自動的に実行するため、検証者の稼働を削減し、検証を早期に終了することができる。そして、実施の形態では、負荷試験装置４及び検証対象装置５の設定値を、凸最適化手法を用いて計算することによって、性能限界に近接した設定へ迅速にアプローチでき、従来と比して少ない手順で検証処理を実行でき検証を早期に終了することができる。
【００５５】
ここで、図６及び図７を参照して従来の検証処理手順について説明する。図６は、従来の検証処理の手順を説明する図である。図７は、従来の検証処理における装置設定回数を説明する図である。図７は、従来の検証処理手順における装置設定値と検証対象装置（ＤＵＴ）の消費リソースとの依存関係を示す。
【００５６】
従来の検証処理においては、図６の（１）〜（４）に示すように、装置設定値の検討、装置設定の投入、検証実行、検証結果の記録といった一連の作業、もしくは、一部の作業を、人手を介して行っていたため検証作業者Ｕの稼働がかかっていた。そして、従来の検証処理においては、装置設定値の検討の際に単純なアルゴリズムが適用されることが多く、検証時間が長かった。例えば、従来の検証処理では、図７に示すように、装置設定値を等間隔のＴ１〜Ｔ５とするような単純な設定しか行えず、装置設定値とＤＵＴの消費リソースとの関係を示す曲線Ｐｒのように、消費リソースの許容量に近接する設定値を求めるために５回もの検証処理を実行していた。
【００５７】
これに対し、図８及び図９を参照して、本実施の形態における検証管理方法について説明する。図８は、実施の形態に係る検証管理処理の手順を説明する図である。図９は、実施の形態に係る検証管理処理における装置設定回数を説明する図である。
【００５８】
本実施の形態では、検証作業者Ｕが、初期装置設定と消費リソース許容値を検証管理装置３に入力すると（図８の（１）参照）、検証管理装置３が、検証処理のスケジューリングを行い、凸最適化手法を用いて装置設定値を探索する（図８の（２），（３）参照）。そして、検証管理装置３が、負荷試験装置４及び検証対象装置５に探索した値で装置設定を投入して（図８の（４）参照）、自動的に検証処理を実行させる。
【００５９】
そして、検証管理装置３は、負荷試験装置４及び検証対象装置５から検証結果であるレスポンス及び消費リソースについての報告を受信すると（図８の（５），（６）参照）、次の検証で投入する設定値を探索し、設定値の最適化を図っている（図８の（７）参照）。そして、検証管理装置３が、負荷試験装置４及び検証対象装置５に探索した設定値を投入し、自動的に、次の検証を進めている。
【００６０】
したがって、本実施の形態によれば、検証作業者Ｕは、初期装置設定と消費リソース許容値を検証管理装置３に入力するだけでよく、装置設定値の検討、装置設定の投入、検証実行、検証結果の記録を行う必要がないため、検証作業者Ｕの稼働を削減可能である。
【００６１】
また、本実施の形態における検証処理では、凸最適化手法を用いて装置設定値を探索するため、図９の曲線Ｐａ，Ｐｂに示すように、３回目或いは４回目の検証処理で消費リソース許容量に近接できる装置設定値Ｔ３´，Ｔ４´を設定することができる（矢印Ｙ１、Ｙ２参照）。したがって、本実施の形態では、多数回の検証処理を必要としていた従来と比較し、検証処理回数を削減することができ、検証時間を短縮することができる。
【００６２】
このように、本実施の形態では、検証管理装置３は、設定値の最適化機構を有し、負荷試験装置４及び検証対象装置５と連携して、性能限界見極めのための検証処理を自動的に行っている。このため、本実施の形態によれば、検証対象装置５の性能限界見極め検証において、検証者の稼働を削減し、検証を早期に終了することができる。
【００６３】
［システム構成等］
図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部又は任意の一部が、ＣＰＵ及び当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６４】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部又は一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００６５】
［プログラム］
図１０は、プログラムが実行されることにより、検証管理装置３、負荷試験装置４及び検証対象装置５が実現されるコンピュータの一例を示す図である。コンピュータ１０００は、例えば、メモリ１０１０、ＣＰＵ１０２０を有する。また、コンピュータ１０００は、ハードディスクドライブインタフェース１０３０、ディスクドライブインタフェース１０４０、シリアルポートインタフェース１０５０、ビデオアダプタ１０６０、ネットワークインタフェース１０７０を有する。これらの各部は、バス１０８０によって接続される。
【００６６】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１１００に挿入される。シリアルポートインタフェース１０５０は、例えばマウス１１１０、キーボード１１２０に接続される。ビデオアダプタ１０６０は、例えばディスプレイ１１３０に接続される。
【００６７】
ハードディスクドライブ１０９０は、例えば、ＯＳ（Operating  System）１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、検証管理装置３、負荷試験装置４及び検証対象装置５の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール１０９３として実装される。プログラムモジュール１０９３は、例えばハードディスクドライブ１０９０に記憶される。例えば、検証管理装置３、負荷試験装置４及び検証対象装置５における機能構成と同様の処理を実行するためのプログラムモジュール１０９３が、ハードディスクドライブ１０９０に記憶される。なお、ハードディスクドライブ１０９０は、ＳＳＤ（Solid  State  Drive）により代替されてもよい。
【００６８】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ１０９４として、例えばメモリ１０１０やハードディスクドライブ１０９０に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して実行する。
【００６９】
なお、プログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、プログラムモジュール１０９３及びプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール１０９３及びプログラムデータ１０９４は、他のコンピュータから、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【００７０】
以上、本発明者によってなされた発明を適用した実施形態について説明したが、本実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施形態、実施例及び運用技術等は全て本発明の範疇に含まれる。
【符号の説明】
【００７１】
１  検証管理システム
３  検証管理装置
４  負荷試験装置
５  検証対象装置
６  入力装置
７  出力装置
３１  検証司令部
３２  設定値計算部
３３，４１，５１  設定部
３４  報告受信部
４２  負荷試験部
４３  レスポンス送信部
５２  検証対象機能部
５３  リソース送信部
【図１】
2019020947.tif 000004
【図２】
2019020947.tif 000005
【図３】
2019020947.tif 000006
【図４】
2019020947.tif 000007
【図５】
2019020947.tif 000008
【図６】
2019020947.tif 000009
【図７】
2019020947.tif 000010
【図８】
2019020947.tif 000011
【図９】
2019020947.tif 000012
【図１０】
2019020947.tif 000013