(57)【要約】【課題】計算機システムを設計するに際して、計算機システムの性能値をシミュレーションで確認しながら設計を実施していく。【解決手段】システムの状態とリクエストと部品プログラムと結線とを含む計算機システム情報を生成するシステム設計手段１０３と、部品結合情報抽出手段と、計算機システム情報におけるシナリオ（操作）情報を生成するシナリオ生成手段１０４と、パラメータを設定するパラメータ設定手段１０５と、部品列を生成する部品列生成手段１０６と、部品列生成手段にて生成された部品列の各部品プログラムの実行順序、実行タイミング、各部品プログラムの仕様、設定されたパラメータを用いて設計された計算機システムの性能値をシミュレーションによって予測する性能予測手段１０７とを備えている。【選択図】      図１
2006185055.tif 000002
【特許請求の範囲】
【請求項１】
複数の部品プログラムを所定の順序で実行する計算機システムを設計支援するとともに設計した計算機システムの性能値を予測する計算機システムの設計支援システムにおいて、
前記設計される計算機システムにおける指定された時点の状態と、前記複数の部品プログラムと、前記状態時に前記部品プログラムの実行のリクエストと、前記状態とリクエスト及び各部品プログラム相互間を接続する結線とを含む計算機システム情報を生成するシステム設計手段と、
このシステム設計手段で生成された計算機システム情報における各部品プログラムに対する前記結線を用いた状態及びリクエストの接続状態を示す部品結合情報を抽出する部品結合情報抽出手段と、
前記生成された計算機システム情報におけるリクエストの発生タイミングを、前記生成された計算機システム情報の操作タイミングを想定して設定したシナリオ情報を生成するシナリオ生成手段と、
前記計算機システム情報のハードウェア構成仕様を含むパラメータを設定するパラメータ設定手段と、
前記シナリオ情報と前記部品結合情報とに基づいて、前記計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列を生成する部品列生成手段と、
この部品列生成手段にて生成された部品列の各部品プログラムの実行順序、実行タイミング、各部品プログラムの仕様、前記設定されたパラメータを用いて前記計算機システムの性能値をシミュレーションによって予測する性能予測手段と、
前記性能予測手段によって予測された計算機システムの性能値を出力する出力手段と
を備えたことを特徴とする計算機システムの設計支援システム。
【請求項２】
前記システム設計手段は、操作指示に応じて、ＧＵＩの表示画面上に、前記計算機システム情報の構成要素である部品プログラムを表すアイコン、前記計算機システム情報の状態を表すアイコン、前記部品プログラムの実行のリクエストを表すアイコンを配置し、前記状態のアイコン、リクエストのアイコン、部品プログラムのアイコン相互間の関係を結線で接続することにより前記計算機システム情報を生成することを特徴とする請求項１記載の計算機システムの設計支援システム。
【請求項３】
複数の部品プログラムを所定の順序で実行する計算機システムを設計支援するとともに設計した計算機システムの性能値を予測するコンピユータを、
前記設計される計算機システムにおける指定された時点の状態と、前記複数の部品プログラムと、前記状態時に前記部品プログラムの実行のリクエストと、前記状態とリクエスト及び各部品プログラム相互間を接続する結線とを含む計算機システム情報を生成するシステム設計手段、
このシステム設計手段で生成された計算機システム情報における各部品プログラムに対する前記結線を用いた状態及びリクエストの接続状態を示す部品結合情報を抽出して部品結合メモリに記憶する部品結合情報抽出手段、
前記生成された計算機システム情報におけるリクエストの発生タイミングを、前記生成された計算機システム情報の操作タイミングを想定して設定したシナリオ情報を生成してシナリオメモリに記憶するシナリオ生成手段、
前記計算機システム情報のハードウェア構成仕様を含むパラメータを設定してパラメータメモリに記憶するパラメータ設定手段、
前記シナリオ情報と前記部品結合情報とに基づいて、前記計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列を生成して部品列メモリに記憶する部品列生成手段、
この部品列生成手段にて生成された部品列の各部品プログラムの実行順序、実行タイミング、各部品プログラムの仕様、前記設定されたパラメータを用いて前記計算機システムの性能値をシミュレーションによって予測する性能予測手段および
前記性能予測手段によって予測された計算機システムの性能値を出力する出力手段
として機能させるための計算機システムの設計支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は高度な専門知識を必要とすることなく、インターネットシステム、イントラネットシステムなどの計算機システムの設計を行うと同時にその計算機システムの性能値が予測できる計算機システムの設計支援システム、及び計算機システムの設計支援プログラムに関する。
【背景技術】
【０００２】
従来、インターネットシステム、イントラネットシステムなどの計算機システムの設計では、技術者（設計者）の過去の経験や勘に頼って計算機システムの性能予測が行われていた。そのため、計算機システムの実装が完成した段階で、要求性能が満たされないことが判明して、再設計など工程の大きな後戻りが発生したり、やむなくサーバ計算機の追加や性能の高い機種への交換が行われるなどの問題があった。
【０００３】
特許文献１で開示されている「シミュレーションによるシステム設計支援方式」では、計算機システムの動作を複数のプロセスに分離し、プロセスのそれぞれを複数の動作の組合せで表現し、その組合せの動作パターンに分類し、この動作パターンに基づいて計算機システムのシミュレーションモデルを作成している。
【０００４】
しかし、その目的とするところは、シミュレーションモデルを容易に作成、変更、修正でき、またシミュレーションを効率よく実行することであり、どのようなシミュレーションが行われるのか、シミュレーションの結果、どのようなシステム性能値が得られるのかは明らかになっていない。
【０００５】
非特許文献１では、シングルプロファイル法と待ち行列ネットワークモデルを利用した性能予測方法が紹介されている。この方法は、1サーバに1クライアントのみが接続されている無競合状況でトランザクションを発生させ、1トランザクション当たりのシステム資源使用時間を測定し、次に、得られた測定情報を利用して、待ち行列ネットワークモデルを利用した解析的な方法でシステム性能を予測する方法である。
【０００６】
しかし、この文献で紹介されている実現方法は、システム資源使用時間を厳密に測定するため、ソフトウェア機能とハードウェア機能を併用した測定ツールが利用され、ＯＳ（オペレーティングシステム）のカーネルにソフトウェアを埋め込み、そのソフトウェアにより検出された事象をボードを介して電気信号として取り出し記録するという方法であり、専用の装置と専門的な知識と技術を持たなければ実現できない。
【０００７】
さらに、特許文献２の「計算機システムの性能予測プログラムおよび設計支援システム」では、計算機システムの設計段階において、シミュレーションにより計算機システムの性能値を予測することができる性能予測方法を提案している。
【０００８】
しかしながら、まだ、この設計支援システムにおいても、この設計支援システムを操作して計算機システムを設計する設計者に対する十分な操作性が確保されているとは言い難い。
【特許文献１】特開平７―１２９６５３号公報
【特許文献２】特開２００４―２７２５８２号公報
【非特許文献１】情報数学講座「性能評価の基礎と応用」  亀田、李、紀著（共立出版）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
このように従来の技術では、計算機システムの設計時に、システム性能の正確な見積りはできず、設計者（技術者）の経験や勘に頼っており、経験の無い技術者にとっては大きく性能見積を誤る危険があった。
【００１０】
また、提案されているシングルプロファイル法と待ち行列ネットワークモデルを利用した性能予測方法では、計算機システムの性能予測が行えるが、システム資源使用時間を計測するための専用装置と専門的な知識と技術を持たなければ実現できない問題がある。
【００１１】
本発明はこのような事情に鑑みてなされたものであり、例えば表示画面上における簡単な入力操作で、計算機システムのシステム設計と、計算機システムに対するオペレータの想定される操作内容を示すシナリオの生成とを実施でき、高度な専門知識を必要とすることなく、計算機システムの設計を行うと同時にその計算機システムの性能値が予測できる計算機システムの設計支援システム、及び計算機システムの設計支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解消するために本発明においては、複数の部品プログラムを所定の順序で実行する計算機システムを設計支援するとともに設計した計算機システムの性能値を予測する計算機システムの設計支援システムにおいて、設計される計算機システムにおける指定された時点の状態と、複数の部品プログラムと、状態時に部品プログラムの実行のリクエストと、状態とリクエスト及び各部品プログラム相互間を接続する結線とを含む計算機システム情報を生成するシステム設計手段と、このシステム設計手段で生成された計算機システム情報における各部品プログラムに対する結線を用いた状態及びリクエストの接続状態を示す部品結合情報を抽出する部品結合情報抽出手段と、生成された計算機システム情報におけるリクエストの発生タイミングを、生成された計算機システム情報の操作タイミングを想定して設定したシナリオ情報を生成するシナリオ生成手段と、計算機システム情報のハードウェア構成仕様を含むパラメータを設定するパラメータ設定手段と、シナリオ情報と部品結合情報とに基づいて、計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列を生成する部品列生成手段と、この部品列生成手段にて生成された部品列の各部品プログラムの実行順序、実行タイミング、各部品プログラムの仕様、設定されたパラメータを用いて計算機システムの性能値をシミュレーションによって予測する性能予測手段と、性能予測手段によって予測された計算機システムの性能値を出力する出力手段とを備えている。
【００１３】
このように構成された計算機システムの設計支援システムにおいては、例えば表示画面上における簡単な入力操作で、計算機システム情報のシステム設計と、計算機システム情報に対する想定される操作内容を示すシナリオの生成とを実施している。そして、計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列が生成され、この部品列に従って設計された計算機システム情報のシミュレーションが実施されて、計算機システムの性能値が予測される。
【００１４】
したがって、簡単に、ハードウェア構成仕様、操作内容（シナリオ）、システム構成等を変更した場合における計算機システムの性能値が予測でき、設計支援システムの操作性を大幅に向上できる。
【００１５】
また、別の発明は、上述した発明の計算機システムの設計支援システムにおけるシステム設計手段は、操作指示に応じて、ＧＵＩの表示画面上に、計算機システム情報の構成要素である部品プログラムを表すアイコン、計算機システム情報の状態を表すアイコン、部品プログラムの実行のリクエストを表すアイコンを配置し、状態のアイコン、リクエストのアイコン、部品プログラムのアイコン相互間の関係を結線で接続することにより計算機システム情報を設計するようにしている。
【００１６】
このように、計算機システム情報をＧＵＩの表示画面上で状態、リクエスト、部品プログラムの各アイコン相互間を結線で接続するという簡単な操作で作成できるので、操作性をより一層向上できる。
【００１７】
さらに、別の発明は、複数の部品プログラムを所定の順序で実行する計算機システムを設計支援するとともに設計した計算機システムの性能値を予測するコンピユータを、
設計される計算機システムにおける指定された時点の状態と、複数の部品プログラムと、前記状態時に部品プログラムの実行のリクエストと、状態とリクエスト及び各部品プログラム相互間を接続する結線とを含む計算機システム情報を生成するシステム設計手段、
このシステム設計手段で生成された計算機システム情報における各部品プログラムに対する前記結線を用いた状態及びリクエストの接続状態を示す部品結合情報を抽出して部品結合メモリに記憶する部品結合情報抽出手段、
生成された計算機システム情報におけるリクエストの発生タイミングを、生成された計算機システム情報の操作タイミングを想定して設定したシナリオ情報を生成してシナリオメモリに記憶するシナリオ生成手段、
計算機システム情報のハードウェア構成仕様を含むパラメータを設定してパラメータメモリに記憶するパラメータ設定手段、
シナリオ情報と部品結合情報とに基づいて、計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列を生成して部品列メモリに記憶する部品列生成手段、
この部品列生成手段にて生成された部品列の各部品プログラムの実行順序、実行タイミング、各部品プログラムの仕様、設定されたパラメータを用いて前記計算機システムの性能値をシミュレーションによって予測する性能予測手段および
性能予測手段によって予測された計算機システムの性能値を出力する出力手段
として機能させるための計算機システムの設計支援プログラムである。
【００１８】
このように構成された計算機システムの設計支援プログラムにおいては、先に説明した発明の計算機システムの設計支援システムとほぼ同様の作用効果を奏することが可能である。
【発明の効果】
【００１９】
本発明においては、例えば表示画面上における簡単な入力操作で、計算機システム情報のシステム設計と、計算機システム情報に対する想定される操作内容を示すシナリオ情報の生成とを実施している。そして、計算機システム情報で実行される各部品プログラムの実行順序と実行タイミングとを示す部品列が生成され、この部品列に従って設計された計算機システム情報のシミュレーションが実施されて、計算機システムの性能値が予測される。
【００２０】
したがって、簡単に、計算機システム情報のハードウェア構成仕様、操作内容（シナリオ）、システム構成、等を変更した場合における、計算機システムの性能値、例えば、負荷を変化させた場合のラウンド時間、サーバ計算機のＣＰＵ使用率、ボトルネックの発生有無などを予測でき、より適用範囲の広い性能値を予測でき、しかも操作性を大幅に向上できる。
【００２１】
このように、経験のない設計者（技術者）でも正確に計算機システムの性能を予測することができる。また、システム構築後の工程の後戻りやハードウェアの追加という状況を事前に防ぐことができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の一実施形態を図面を用いて説明する。  
図１は、本発明の一実施形態に係わる計算機システムの設計支援プログラムが組込まれた計算機システムの設計支援システムの概略構成を示す機能ブロック図である。
【００２３】
例えばコンピュータ等の情報処理装置からなる設計支援システム内には、部品プログラム仕様設定部１０１、メモリで構成されたプログラム性能表１１０、プログラム性能データベース１０２、システム設計部１０３、部品結合メモリとしての部品結合表１１１、シナリオ生成部１０４、シナリオメモリ１２２、パラメータ設定部１０５、パラメータメモリ１２３、部品列生成部１０６、部品列メモリとしての部品列１１９、性能予測部１０７、性能表示部１０８、及びＧＵＩ（グラフィカル・ユーザズ・インターフェース）部１０９が設けられている。
【００２４】
部品プログラム仕様設定部１０１は、設計対象の計算機システムの設計者がＧＵＩ部１０９を介して入力された、計算機システム（計算機システム情報）に組込まれる各部品プログラムの仕様をプログラム性能表１１０にまとめて、その後プログラム性能データベース１０２に書き込む。
【００２５】
プログラム性能データベース１０２内には、上記プログラム性能表１１０の他に、性能パラメータ表１１６が記憶されている。
【００２６】
システム設計部１０３は、計算機システムの設計者の指示に従って、ＧＵＩ部１０９上で状態アイコン、リクエストアイコン、部品プログラムアイコン、これらのアイコン相互間を接続する結線とで計算機システム（計算機システム情報）を生成する。そして、生成された計算機システムにおける各部品プログラムに対する前記結線を用いた状態及びリクエストの接続状態を示す部品結合情報を部品結合メモリとしての部品結合表１１１に記憶する。
【００２７】
シナリオ生成部１０４は、計算機システムの設計者のＧＵＩ部１０９を介した指示に基づいて、設計された計算機システムにおけるリクエストの発生タイミングを、設計された計算機システムの操作タイミング（計算機システムのユーザが行う例えばホームページの解読時間やデータ入力所要時間を考慮した操作のタイミング）を想定して設定したシナリオ（シナリオ情報、操作手順）を生成する。また、複数のシナリオを生成した場合には、各シナリオが発生する確率を設定する(一つのシナリオだけ生成する場合にはそのシナリオの発生確率は1.0になる)。そして、作成したシナリオをシナリオメモリ１２２内のシナリオ表１１２に記憶し、各シナリオの発生確率を同じくシナリオメモリ１２２内のシナリオ発生確率表１１３に記憶する。
【００２８】
パラメータ設定部１０５は、計算機システムの設計者のＧＵＩ部１０９を介した指示に基づいて、計算機システムのサーバ、計算機等のハードウェア構成仕様を含む各パラメータを設定し、サーバ設定表１１４、計算機性能表１１５、サーバ表１２０としてパラメータメモリ１２３内に記憶保持する。また、このパラメータ設定部１０５は、性能予測部１０７で行うシミュレーションのための出力項目候補表１１７、出力項目表１１８、シミュレーションパラメータ表１２１を作成して同じくパラメータメモリ１２３内に記憶保持する。
【００２９】
部品列生成部１０６は、シナリオ生成部１０４で作成されたシナリオ表１１２、シナリオ発生確率表１１３とシステム設計部１０３で作成された部品結合表１１１とに基づいて、計算機システムで実行される各部品プログラムの実行順序と実行タイミングとを示す部品列１１９を作成して記憶保持する。
【００３０】
性能予測部１０７は、シナリオ生成部１０４で作成されたシナリオ発生確率、部品列生成部１０６で作成された部品列１１９の各部品プログラムの実行順序、実行タイミング、プログラム性能データベース１０２のプログラム性能表１１０から読出した各部品プログラムの仕様、パラメータ設定部１０５のパラメータメモリ１２３から読出した前記計算機システムのパラメータ、シミュレーションのパラメータを用いて計算機システムの性能値をシミュレーションによって予測する。
【００３１】
性能表示部１０８は、性能予測部１０７によって予測された計算機システムの性能値を表示出力する。
【００３２】
次に、以上のように構成された設計支援システムの全体動作を図２の流れ図を用いて説明する。
【００３３】
設計対象の計算機システムに組込まれる各部品プログラムが設計、開発されると、その部品プログラムについて性能値が計測され、プログラム性能データベース１０２に保存される。なお、各部品プログラムがまだ完成していない場合は、部品プログラム仕様設定部１０１にて、計算機システムに組込まれる各部品プログラムの仕様の予測値を設定し、プログラム性能表１１０を完成させ、その後プログラム性能データベース１０２に書き込む。
【００３４】
設計支援システムのシステム設計部１０３において、前述した手順で計算機システムが設計される（STEP201）。そして、システム設計部１０３は、作成された計算機システムにおける各部品プログラムに対する前記結線を用いた状態及びリクエストの接続状態を示す部品結合情報を部品結合表１１１として記憶するとともに部品列作成部１０６へ送出する(STEP202)。
【００３５】
シナリオ生成部１０４においては、計算機システムの設計者のＧＵＩ部１０９を介した指示に基づいて、前述したように、一連のリクエストとそのタイミングからなるシナリオが一種類、あるいは複数種類作成され、シナリオが複数種類作成された場合には、その発生確率が設定され、シナリオ、シナリオ発生確率が部品列作成部１０６へ送出される。また、シナリオ発生確率は性能予測部１０７へも送出される(STEP203)。
【００３６】
パラメータ設定部１０５においては、計算機システムのハードウェア構成仕様であるサーバの種類、サーバ計算機、出力項目を含むパラメータ、シミュレーション条件のパラメータが設定され、性能予測部１０７に送信される(STEP204)。
【００３７】
プログラム性能データベース１０２から部品プログラムの仕様（性能値）が読み出される(STEP205)。部品列生成部１０６においては、シナリオ生成部１０４で生成されたシナリオと部品結合表１１１とに基づいて、計算機システムで実行される各部品プログラムの実行順序と実行タイミングとを示す部品列１１９が作成される(STEP206)。
【００３８】
性能予測部１０７においては、生成された部品列１１９の各部品プログラムの実行順序、実行タイミング、プログラム性能データベース１０２から読み出した各部品プログラムの仕様、前記計算機システムのパラメータを用いて計算機システムの性能値をシミュレーションによって予測する(STEP207)。性能表示部１０８は、性能予測部１０７によって予測された計算機システムの性能値を表形式又はグラフ形式で表示出力する(STEP208)。
【００３９】
計算機システムの設計者は、性能表示部１０８に表示されたシステム性能値を見て、シミュレーション条件のパラメータを変更すると判断すれば、STEP204のパラメータ設定に戻る(STEP209)。また、計算機システムの設計者は、部品プログラムを他の部品プログラムに変更すると判断すれば(STEP210)、STEP201のシステム設計段階に戻る。表示されたシステム性能値が問題なく、パラメータや部品プログラムを変更する必要が無ければシミュレーションによる性能予測を終了することになる。
【００４０】
以下、各部の具体的構成及び具体的動作を順番に説明していく。
【００４１】
（部品プログラムについて）
計算機システムの構成要素である部品プログラムが作成されると、各種サーバがそれぞれ別の計算機に搭載されるハードウェア構成で、無競合状態でその部品プログラムを単独に実行した場合の処理時間と、サーバ計算機の平均資源使用率又は平均資源使用量が計測され、プログラム仕様として、プログラム性能データベース１０２に保存されているプログラム性能表１１０に追加される。
【００４２】
図３は部品プログラムａ、ｂ、ｃ、ｄの性能値（仕様）の一例であり、処理時間と計算機システムに組込まれるＷｅｂサーバ計算機における平均ＣＰＵ使用率を表している。このように横軸が処理時間、縦軸がサーバ計算機の資源使用率又は資源使用量の長方形を部品ブロック３０１と定義する。
【００４３】
なお、ここでは、各部品プログラムは前もって作成され、部品プログラムの性能値（仕様）も計測値がプログラム性能データベース１０２に保存されているとして説明するが、前述したように、まだ作成されていない部品プログラムについて、計算機システムの設計者が、部品プログラム仕様設定部１０１を用いて、性能値のみを予め設定しておくことも可能であり、部品プログラムが作成され、性能値が計測された段階で性能値を計測値に変更することもできる。
【００４４】
（システム設計について）  
図４に示すように、設計支援システムのＧＵＩ部１０９上に表示されたメインウィンドウ上でシステム設計を選択したのち、計算機システムの設計者の操作に基づいて、状態アイコン４０１、リクエストアイコン４０２、部品プログラムアイコン４０３が配置され、アイコン相互間が結線４０４で接続されることにより、各リクエストから呼び出される部品プログラム列が設定され、計算機システムが設計される。
【００４５】
図４はメインウィンドウ上で設計された計算機システムの一例である。状態アイコン４０１・Ｓ１，Ｓ２，Ｓ３、リクエストアイコン４０２・Ｒ１，Ｒ２、部品プログラムアイコン４０３・ａ、b、c、dが設置され、状態アイコン４０１・Ｓ１からリクエストアイコン４０２・Ｒ１に、リクエストアイコン４０２・Ｒ１から部品プログラムアイコン４０３・ａとｂと状態アイコン４０１に、状態アイコン４０１・Ｓ２からリクエストアイコン４０２・Ｒ２に、リクエストアイコン４０２・Ｒ２から部品プログラムアイコン４０３・ｃとｄと状態アイコン４０１・Ｓ３に、結線４０４で接続されている。
【００４６】
ここで、各アイコン間の接続の意味を以下のように設定する。
【００４７】
状態アイコンからリクエストアイコンへの接続は、状態アイコンの状態時にリクエストアイコンのリクエストが要求される場合を示す。
【００４８】
リクエストアイコンから部品プログラムアイコンへの接続は、そのリクエストが要求された場合に実行される部品プログラムを示す。リクエストアイコンから複数の部品プログラムアイコンへの接続がある場合には、部品プログラムアイコンの位置が上のものから順に実行される。
【００４９】
リクエストアイコンから状態アイコンへの接続は、リクエストアイコンのリクエストによって遷移した後の状態を表す。
【００５０】
すると、図4のアイコン間の接続は、初期状態Ｓ１にリクエストＲ１が与えられると部品プログラムａとｂが呼び出され、状態Ｓ２に遷移し、続けてリクエストＲ２が与えられると部品プログラムcとdが呼び出され、状態Ｓ３に遷移するように設計されている。
【００５１】
このように、メインウィンドウ上で計算機システムが設計されると、メインウィンドウ上の結線による接続情報とアイコンの設置位置を基に部品結合表１１１が作成され、部品列生成部１０６へ送付される。
【００５２】
図５は部品結合表１１１の一例であり、元の状態（Ｓ１、Ｓ２）と、その状態に対して要求されるリクエスト（Ｒ１、Ｒ２）と、そのリクエスト（Ｒ１、Ｒ２）が要求された場合に順次実行される部品プログラム列（ａｂ、ｃｄ）と、プログラムが実行された後に遷移する遷移後の状態（Ｓ２、Ｓ３）を表している。このように、図５の部品結合表１１１の内容は図４のメインウィンドウ上で設計された内容を表している。
【００５３】
（部品プログラムの仕様の設定について）
設計支援システムの図４に示すメインウィンドウ上の部品プログラムアイコン４０３を選択し、[表示]メニュー４０５内の[プロパティ]を選択すると、図６に示す「プロパティダイアログ」が表示される。プロパティダイアログでは、この部品プログラムについてのプロパティの設定や表示をすることができる。したがって、部品プログラム仕様設定部１０１は、このプロパティダイアログを用いて計算機システムに組込む各部品プログラムの仕様（性能）を決定又は変更、選択してプログラム性能表１１０に書き込むことになる。
【００５４】
図６のプロパティダイアログには、[プログラム名]コンボボックス６０１、[説明]テキストボックス６０２、性能値として[処理時間]テキストボックス６０３、[サーバ計算機資源使用率]グループボックス６０４内に[計算機]コンボボックス６０５、[資源]コンボボックス６０６、[使用率／量]テキストボックス６０７、[パラメータ]リストボックス６０８が設けられている。
【００５５】
[プログラム名]コンボボックス６０１では、部品プログラム名がプルダウンメニューに表示され、その中から選択することができる。図６では「a」という名前の部品プログラムが選択されている。プルダウンメニューに表示されるプログラム名はプログラム性能データベース１０２のプログラム性能表１１０に保存されているプログラム名である。
【００５６】
プログラム性能表１１０の一例を図７に示す。このプログラム性能表１１０内には、プログラム名、説明（機能説明）、処理時間、各種サーバの資源使用率あるいは使用量が登録されている。このプログラム性能表１１０のプログラム名が集計されて、図６に示すプロパティダイアログの[プログラム名]コンボボックス６０１のプルダウンメニューに表示される。
【００５７】
［プログラム名］コンボボックス６０１で部品プログラム名が選択されると、プログラム性能表１１０からその部品プログラム名が検索され、一致するものが見つかると、その部品プログラムに関する情報が読み出され、[説明]テキストボックス６０２、[処理時間]テキストボックス６０３、[サーバ計算機資源使用率]グループボックス６０４に表示される。
【００５８】
［説明］テキストボックス６０２にはプログラム性能表の説明の項目が表示される。図６では選択されたプログラム名が「ａ」であるので、「ログイン処理」と表示されている。［処理時間］テキストボックス６０３にはプログラム性能表１１０の処理時間の項目の値が表示される。
【００５９】
［サーバ計算機資源使用率］グループボックス６０４内の［計算機］コンボボックス６０５、［資源］コンボボックス６０６はメニューから選択可能であり、この部品プログラムについて、[計算機]コンボボックス６０５、[資源]コンボボックス６０６で選択された計算機の資源に関する使用率あるいは使用量が[使用率／量]テキストボックス６０７に表示される。
【００６０】
[計算機]コンボボックス６０５のメニューには、「Ｗｅｂサーバ計算機」、「Ａｐｐ（アプリケーション）サーバ計算機」、「ＤＢ（データベース）サーバ計算機」が表示される。また、[資源]コンボボックス６０８のメニューには「ＣＰＵ使用率」、「メモリ使用量」が表示される。例えば[計算機]コンボボックス６０５で「Ｗｅｂサーバ計算機」が選択され、[資源]コンボボックス６０６で「ＣＰＵ使用率」が選択されると、[使用率／量]テキストボックス６０７にはＷｅｂサーバ計算機のＣＰＵ使用率、すなわち、図７のプログラム性能表１１０の[ＷＳ ＣＰＵ使用率]の値が表示される。
【００６１】
[処理時間]テキストボックス６０３と[使用率／量]テキストボックス６０７の値はパラメータを使った表現が可能になっている。利用できるパラメータは性能パラメータ表１１６としてプログラム性能データベース１０２に登録されている。図８は性能パラメータ表１１６の一例である。この性能パラメータ表１１６内には、図６に示すプロパティダイアログの［パラメータ］リストボックス６０８に性能パラメータ表１１６の内容が表示されている。
【００６２】
計算機システムの設計者は、［パラメータ］リストボックス６０８に表示されるパラメータを使って[処理時間]テキストボックス６０３と[使用率／量]テキストボックス６０７の値を修正することができる。
【００６３】
計算機システムの設計者は［ＯＫ］ボタン８０９をクリックすると図６に示すプロパティダイアログは閉じ、プログラム名を変更した場合には設計支援システムの図４に示すメインウィンドウ上の部品プログラムアイコン４０３上に表示されたプログラム名が変化する。
【００６４】
（計算機システム、シミュレーションのパラメータ設定について）
図４に示す設計支援システムにおけるメインウィンドウの[シミュレーション]メニュー４０６で[パラメータ]を選択すると、図９に示すパラメータウィンドウが表示される。パラメータウィンドウは性能予測のシミュレーションを行うために、サーバの種類、サーバ計算機の性能、計算機システムのユーザ（使用者）数の変化のさせ方などのシミュレーション条件を設定するためのウィンドウである。
【００６５】
このパラメータウィンドウは、図９に示すように、[サーバ計算機]グループボックス９０１、[サーバ]グループボックス９０２、[シミュレーション]グループボックス９０３から構成されている。
【００６６】
[サーバ計算機]グループボックス９０１においては、登録されている計算機名、ＣＰＵクロック周波数、ハードディスク転送速度、メモリ容量が、[サーバ計算機]グリッド９０４に表示される。この[サーバ計算機]グリッド９０４に表示される内容は図１０に示す計算機性能表１１８の内容である。この計算機性能表１１８内には、計算機名と、その計算機のＣＰＵクロック周波数、ハードディスク転送速度、メモリサイズが表形式で表現されており、パラメータ設定部１０５に登録されている。
【００６７】
計算機システムの設計者が計算機性能表１１８に新しくサーバ計算機を登録するには、図９のパラメータウィンドウの[新規登録]ボタン９０５をクリックする。すると、図１１に示すサーバ計算機ウィンドウが表示される。
【００６８】
計算機システムの設計者が、このサーバ計算機ウィンドウにおいて、[計算機名]テキストボックス１１０１にサーバ計算機名、[ＣＰＵ]テキストボックス１１０２にＣＰＵクロック周波数、[ＨＤＤ]テキストボックス１１０３にハードディスク転送速度、[Ｍｅｍ]テキストボックス１１０４にメモリ容量を入力し、[ＯＫ]ボタン１１０６をクリックすると、図１１のサーバ計算機ウィンドウは閉じ、図１０の計算機性能表１１８に新しいサーバ計算機の行が一行追加され、保存される。また、図９のパラメータウィンドウの[サーバ計算機]グリッド９０４に新しく登録したサーバ計算機が一行追加される。
【００６９】
図１０の計算機性能表１１８に登録済みのサーバ計算機を削除するには、[サーバ計算機]グリッド９０４上で削除したいサーバ計算機名を選択し、[削除]ボタン９０６をクリックすると、そのサーバ計算機は図１０の計算機性能表１１８から削除され、保存され、[サーバ計算機]グリッド９０４上からも削除される。
【００７０】
図９のパラメータウィンドウの[サーバ]グループボックス９０２では、Ｗｅｂサーバ（ＷＳ）、アプリケーションサーバ（ＡＳ）、データベースサーバ（ＤＳ）の種類が[サーバ]コンボボックス９０７に表示され、搭載される計算機が[計算機名]コンボボックス９０８に表示される。
【００７１】
なお、[サーバ]コンボボックス９０７のメニューに表示されるサーバ名は予め図１２に示すサーバ表１２０に登録されているものである。サーバ表１２０内には、図１２に示すように、Ｗｅｂサーバ、アプリケーションサーバ、データベースサーバのそれぞれについて、サーバ名が羅列されている。[計算機名]コンボボックス９０８のメニューに表示される計算機の名前は前述した図１０に示す計算機性能表１１５に登録されている計算機の名前である。
【００７２】
[サーバ]グループボックス９０２で選択されたサーバ名、搭載される計算機は図１３に示すサーバ設定表１１４としてパラメータ設定部１０５に保存される。このサーバ設定表１１４内には、図１３に示すように、設計対象の計算機システムで採用されるサーバの種類（ＷＳ、ＡＳ，ＤＳ）毎にサーバ名、計算機名が設定されている。
【００７３】
[シミュレーション]グループボックス９０３では、シミュレーション実行条件に関するパラメータを設定できる。ユーザ数の最小値と最大値と変化のさせ方、試行回数と試行時間を直接テキストボックスに入力することができる。これら入力値は図１４に示すシミュレーションパラメータ表１２１として、パラメータ設定部１０５に保存される。このシミュレーションパラメータ表１２１においては、Minがユーザ数の最小値、Maxがユーザ数の最大値、Stepがユーザ数の増加幅、TrialNoが試行回数、Timeが試行時間を表す。シミュレーションでは、ユーザ数が最小値（Min）から始まり、ユーザ数の増加幅（Step）ずつユーザ数を増加させ、ユーザ数が最大値(Max)を超えるとシミュレーションを終了する。各ユーザ数について、試行時間(Time)のシミュレーションがユーザの開始タイミングを変えて試行回数(trial)繰り返される。
【００７４】
[出力項目]リストボックス９１０には、シミュレーション結果として出力される項目が表示される。出力項目を変更するには、[変更]ボタン９０９をクリックする。すると、出力項目ウィンドウが表示される。
【００７５】
図１５は出力項目ウィンドウの一例である。図１５の出力項目ウィンドウでは出力項目候補が表示され、現在出力項目に選択されているもののチェックボックス１５０１にはチェックが付いている。出力項目ウィンドウに表示される出力項目候補は予め図１６に示す出力項目候補表１１７としてパラメータ設定部１０５に保存されている。
【００７６】
図１５に示す[出力項目]ウィンドウで、出力項目に設定するもののチェックボックス１５０１にチェックを付け、出力項目から外すもののチェックボックス１５０１はチェックを外し、[ＯＫ]ボタン１５０３をクリックする。すると、[出力項目]ウィンドウは閉じ、選択された出力項目が[出力項目]リストボックス９１０に表示される。[出力項目]リストボックス９０８の内容は、図１７に示す出力項目表１１８としてパラメータ設定部１０５に登録される。
【００７７】
計算機システムの設計者が、図９に示すパラメータウィンドウの[ＯＫ]ボタン９１１をクリックすると、サーバ設定表１１４、シミュレーションパラメータ表１２１、出力項目表１１８について変更した部分が上書き更新されて、図９に示すパラメータウィンドウが閉じて、図４のメインウィンドウが表示される。
【００７８】
（シナリオ生成について）
次に、ユーザが計算機システムにアクセスしている時の操作手順を想定した、一連のリクエストとそのタイミングから構成されるシナリオの生成方法について説明する。
【００７９】
設計支援システムにおける図４に示すメインウィンドウの[シミュレーション]メニュー４０６で[シナリオ]を選択すると、図１８に示すシナリオ設定ウィンドウが表示される。このシナリオ設定ウィンドウはシミュレーションのシナリオを設定するためのウィンドウである。
【００８０】
このシナリオ設定ウィンドウは、図１８に示すように、[シナリオ]グリッド１８０１、[シナリオ]コンボボックス１８０２、[シナリオ内容]リストボックス１８０３、[追加]ボタン１８０４、[編集]ボタン１８０５、[削除]ボタン１８０６、[新規作成]ボタン１８０７、[リクエスト]コンボボックス１８０８、[追加]ボタン１８０８、[スリープ]テキストボックス１８１０、[追加]ボタン１８１１、[削除]ボタン１８１２から構成され、１つ又は複数のシナリオの新規作成、編集を行うことができる。
【００８１】
[シナリオ]グリッド１８０１にはシミュレーションで実行されるシナリオとその発生確率が設定、表示されている。[シナリオ]グリッド１８０１に実行されるシナリオを追加するには、[シナリオ]コンボボックス１８０２で追加するシナリオを選択し、[追加]ボタン１８０４をクリックすると、[シナリオ]グリッド１８０１に追加される。シナリオの発生確率（実行頻度）については直接[シナリオ]グリッド１８０１上の該当シナリオの値を編集することができる。
【００８２】
また、[シナリオ]グリッド１８０１上のシナリオを削除するには、[シナリオ]グリッド１８０１上で削除したいシナリオを選択し、[削除]ボタン１８０６をクリックすると、そのシナリオを[シナリオ]グリッド１８０１から削除することができる。
【００８３】
[シナリオ]コンボボックス１８０２では既に定義されているシナリオを選択することができ、シナリオを選択すると、その内容が[シナリオ内容]リストボックス１８０３に表示される。なお、[シナリオ]コンボボックス１８０２に表示されるシナリオは既に図１９に示すシナリオ表１１２に登録されているシナリオである。この「シナリオ」は、シナリオ表１１２に示すようにスリープ（時間間隔 12000 ｍs）を挟んだリクエスト列（Ｒ１、Ｒ２）からなり、シナリオ名（Ａ１）が付けられている。シナリオ表１１２は、シナリオ生成部１０４に保存されている。このシナリオ表１１２のシナリオ名が集計されて［シナリオ］コンボボックス１８０２に表示される。
【００８４】
計算機システムの設計者がシナリオを編集するには、編集したいシナリオを[シナリオ]コンボボックス１８０２で選択すると、シナリオの内容が[シナリオ内容]リストボックス１８０３に表示されるので、[シナリオ内容]リストボックス１８０３上でシナリオを編集することができる。
【００８５】
例えば、リクエストを追加するには、[シナリオ内容]リストボックス１８０３内の追加させたい場所にカーソルを移動させ、[リクエスト]コンボボックス１８０８で追加するリクエストを選択し、[追加]ボタン１８０９をクリックすると、選択したリクエストが[シナリオ内容]リストボックス１８０３内のカーソル位置に挿入される。
【００８６】
また、スリープ時間を追加するには、[シナリオ内容]リストボックス１８０３内の追加させたい場所にカーソルを移動させ、[スリープ]テキストボックス１８１０にスリープ時間を設定し、[追加]ボタン１８１１をクリックすると、スリープ時間が[シナリオ内容]リストボックス１８０３内のカーソル位置に挿入される。
【００８７】
[シナリオ内容]リストボックス１８０３内のリクエストを削除するには、削除するリクエストを選択し、[削除]ボタン１８１２をクリックすると、選択したリクエストが[シナリオ内容]リストボックス１８０３内から削除される。
【００８８】
ここで、[リクエスト]コンボボックス１８０８に表示されるリクエストは設計支援システムの図４に示すメインウィンドウ上で設定された計算機システムを構成するリクエストアイコン４０２のリクエスト名である。
【００８９】
計算機システムの設計者がシナリオを新規に作成するには、図１８に示すシナリオ設定ウィンドウにおける[新規作成]ボタン１８０７をクリックする。すると、図２０に示すシナリオ作成ウィンドウが表示される。計算機システムの設計者がナリオ作成ウィンドウの[シナリオ名]テキストボックス２００１に新規のシナリオ名を入力し、[ＯＫ]ボタン２００２をクリックすると、図２０のシナリオ作成ウィンドウは閉じ、設定した名前のシナリオが新規に作成され、図１８のシナリオ設定ウィンドウの[シナリオ]コンボボックス１８０２に作成されたシナリオ名が表示される。なお、新規作成の場合、[内容]リストボックス１８０３は[シナリオ]コンボボックス１８０２で選択されたシナリオの内容が表示されるので空欄になる。
【００９０】
計算機システムの設計者が図１８に示すシナリオ設定ウィンドウの［ＯＫ］ボタン１８１３をクリックすると、このシナリオ設定ウィンドウは閉じ、設定されたシナリオ情報は図１９に示すシナリオ表１１２と図２１に示すシナリオ発生確率表１１３としてシナリオ生成部１０４に保存される。なお、シナリオ発生確率表１１３の発生確率とは、シナリオが発生する時に、当該シナリオが選択され発生する確率である。
【００９１】
（実行される部品（プログラム）列の生成について）
まず、部品列生成部１０６では、シナリオ生成部１０４から図１９に示すシナリオ表１１２と図２１に示すシナリオ発生確率表１１３を受信し、シナリオ発生確率表１１３からシナリオ名とその発生確率を読み込む。図２１の例ではシナリオ名Ａ１、発生確率１．０が読み込まれることになる。
【００９２】
次に、シナリオ発生確率表１１３から読み込んだシナリオ名に一致するシナリオをシナリオ表１１２から検索する。シナリオ名が一致するシナリオを見つけ出すと、そのリクエスト列が読み込まれる。図２０の例ではシナリオＡ１のリクエスト列［Ｒ１、Sleep(12000)、Ｒ２］が読み込まれる。図２２（ａ）は、シナリオＡ１のリクエスト列における各リクエストＲ１、Ｒ２とそのタイミングを表す図である。リクエストＲ１が要求され、ＴＴ１（12000 ｍｓ）の思考時間の後、リクエストＲ２が要求されていることを示す。
【００９３】
次に、システム設計部１０３から図５に示す部品結合表１１１を受信し、状態とリクエストが一致する組合せを検索する。状態とリクエストが一致する組合せが部品結合表１１１から見つかると、その時に実行される部品プログラム列と遷移後の状態を読み出される。リクエスト列の最後に到達するまで、遷移後の状態とリクエストが一致する組合せの検索が繰り返される。
【００９４】
初期状態は予めＳ１に決めているとすると、図５の部品結合表１１１では、元の状態Ｓ１にリクエストＲ１が要求されると、部品プログラムａ、ｂが実行されて、状態Ｓ２に遷移する。また、状態Ｓ２にリクエストＲ２が要求されると、部品プログラムｃ、ｄが実行されて、状態Ｓ３に遷移する。リクエスト列の最後に到達するので検索は終了する。
【００９５】
したがって、シナリオＡ１では、部品プログラムａ、ｂが実行され、ＴＴ１（12000ｍｓ）の思考時間の後、部品プログラムｃ、ｄが実行されることになる。このように、計算機システムにおける実行される各部品プログラムａ、ｂ、ｃ、ｄの実行順序と実行タイミングとを示す、図２２（ｂ）の部品列１１９が生成される。生成された部品列１１９は性能予測部１０７へ送出される。
【００９６】
（部品プログラムの性能値の設定）
性能予測部１０７が行う部品プログラムの性能値の設定手順を図２４を参照しながら説明する。
【００９７】
部品列１１９を受領した性能予測部１０７は、プログラム性能データベース１０２に保存されている図７に示すプログラム性能表１１０から、実行される部品プログラムの処理時間及び各種サーバの資源使用率または量を読み込む。
【００９８】
部品プログラムの処理時間及び各種サーバの資源使用率または量にパラメータが使用されている場合には、パラメータ設定部１０５の図１２に示すサーバ設定表１１４から各種サーバが搭載される計算機名を取得し、図１０に示す計算機性能表１１５からその計算機のパラメータ（ＣＰＵクロック周波数、ＨＤＤ転送速度、メモリサイズ）の値を読み込み、設定することで各部品プログラムにおける処理時間及び各種サーバの資源使用率または量を数値に変換することができる。
【００９９】
例では部品プログラムａ、ｂ、ｃ、ｄについて、図７に示す部品プログラム性能表１１０から、実行される部品プログラムの処理時間及び各種サーバの資源使用率または量が読み込まれる。
【０１００】
たとえば、部品プログラムａ、ｂについては、Ｗｅｂサーバ計算機ＣＰＵ使用率にはパラメータ％ＷＳＣ（Ｗｅｂサーバ計算機ＣＰＵクロック周波数）が使われているので、サーバ設定表１１４からＷｅｂサーバ計算機がWyvernであることを読み込み、計算機性能表１１５からWyvernのＣＰＵクロック周波数が５００ＭHzであることが読み込まれ、パラメータ％ＷＳＣに代入され、Ｗｅｂサーバ計算機ＣＰＵ使用率が計算される。
【０１０１】
このようにして計算された結果を図２３に示す。図示するように、計算機システムにおいて実行される各部品プログラムにおける、Ｗｅｂサーバ計算機のＣＰＵ使用率、処理所要時間、実行順序、実行タイミングがグラフィック表示される。ちなみに、縦軸はＷｅｂサーバ計算機のＣＰＵ使用率を表し、横軸は経過時間を示す。
【０１０２】
この例においては、シナリオＡ１のリクエストＲ１によって部品プログラムａとｂが続けて実行され、終了すると、思考時間２２０２ＴＴ１(12000ｍｓ)が入り、次いでリクエストＲ２によって部品プログラムｃとdが実行される。
【０１０３】
なお、図２３は縦軸がＷｅｂサーバ計算機のＣＰＵ使用率であるが、他の資源使用率／量についても同様の図を表すことができる。
【０１０４】
（シミュレーション実行）
次に、性能予測部１０７は、パラメータ設定部１０５から図１４に示すシミュレーションパラメータ表１２１と図１７に示す出力項目表１１８を受信し、ユーザ数、試行回数、一回の試行の持続時間などのシミュレーション実行条件およびシミュレーション結果として出力される出力項目を取得する。
【０１０５】
パラメータ表によって設定されるシミュレーション手順を図２５の流れ図を用いて説明する。
【０１０６】
まず、ユーザ数を表す変数UserNoに最小値Minが設定される(STEP2501)。ユーザ数を表す変数UserNoが最大値Maxより大きくなるまで以下の処理が繰り返される(ループ１)(STEP2502〜STEP2509)。
【０１０７】
試行回数を表す変数Ｎに0が設定される(STEP2503)。試行回数Ｎが設定された試行回数TrialNoより大きくなるまで以下の処理が繰り返される(ループ２)(STEP2504〜STEP2507)。
【０１０８】
ユーザのアクセスするタイミングをランダムに変更するなどして、ユーザ数UserNoのTime分間分のシミュレーションが行われる(STEP2505)。そして、試行回数Ｎが1加算される(STEP2506)。ここまでの処理が、試行回数ＮがTrialNoより大きくなるまで繰り返される(STEP2507)。
【０１０９】
試行回数ＮがTrialNoより大きくなると、ユーザ数UserNoがユーザ数の増加幅Stepだけ加算される(STEP2508)。ここまでの処理が、ユーザ数UserNoが最大値Maxより大きくなるまで繰り返される(STEP2509)。
【０１１０】
以上のように、ユーザ数を変化させながら、その中で、Time分間のシミュレーション試行が設定された試行回数TrialNo回繰り返される。
【０１１１】
次に、一試行分のシミュレーションについて説明する。このシミュレーションでは、まず、サーバ計算機の資源毎に、シナリオに従ってユーザ数分の部品ブロックが積み重ねられる。部品ブロックによるサーバ計算機資源の使用率合計が上限値を超える場合には、使用率合計が上限値に一致するように、その部分の部品ブロックのサーバ計算機資源使用率が自動的に縮小される。
【０１１２】
サーバ計算機資源使用率が縮小された部品ブロックについて、部品ブロックの面積（処理時間×サーバ計算機資源使用率）が一定に保たれるように、処理時間が伸長される。一つのサーバ計算機の資源について、ある部品ブロックの処理時間が伸長されると、それに合せて他のサーバ計算機の資源についても、その部品ブロックの処理時間が伸長され、同時にその部品ブロックの面積が一定に保たれるように、資源使用率が縮小される。部品ブロックを並べた結果から計算機システムの性能値が計測される。
【０１１３】
このシミュレーション結果から、図１７に示す出力項目表１１８に設定された各出力項目の性能値が計算され出力される。
【０１１４】
ここでは、図２２（ａ）のシナリオＡ１（図２２（ｂ）の部品列１１９）がユーザアクセス数２で同時に実行された場合のシミュレーション結果を説明する。また、本来はシミュレーションは試行時間(Time)の間、シナリオが繰り返されるが、ここではシナリオが一回実行された結果だけを示す。各部品プログラムが同時に実行され、その結果、部品ブロックが資源使用率方向に積まれることになる。説明を簡単にするため、最初に、Ｗｅｂサーバ計算機ＣＰＵ使用率だけを取り上げて説明する。
【０１１５】
図２６はＷｅｂサーバ計算機ＣＰＵ使用率についてのシミュレーション結果である。図２６中の縦軸のＤｗはＷｅｂサーバ計算機のＣＰＵ使用率の上限値であり、100％に近い固定値が与えられている。
【０１１６】
図２６では部品ブロックｄの部分で部品ブロックによるＷｅｂサーバ計算機のＣＰＵ使用率合計が上限値Ｄｗを超えており、その結果、ＣＰＵ使用率合計が上限値Ｄｗに一致するように部品ブロックｄが変形されている。部品ブロックｄの処理時間Ｔｗｄ、Ｗｅｂサーバ計算機ＣＰＵ使用率Ｄｗｄは以下のようにＴｗｄ２、Ｄｗｄ２に変化している。
【数１】
2006185055.tif 000003
【０１１７】
したがって、シミュレーション結果、計算機システムの性能値は以下のように変化する。
【０１１８】
ラウンド時間(2301)ＲＴ２は、
【数２】
2006185055.tif 000004
【０１１９】
になる。
【０１２０】
また、１秒間に処理されたリクエスト数は、
【数３】
2006185055.tif 000005
【０１２１】
になる。Ｗｅｂサーバ計算機の平均CPU使用率は
【数４】
2006185055.tif 000006
【０１２２】
になる。
【０１２３】
説明を簡単にするため、図２６ではＷｅｂサーバ計算機のＣＰＵ使用率だけで説明したが、サーバ計算機が複数ある場合には各サーバ計算機について、また、資源としてＣＰＵだけでなく、ハードディスク（ＨＤＤ）などについても同様に部品ブロックを積み重ねていき、資源使用率の上限値を超えた場合にはその部品ブロックが変形される。その場合、変形されるのは資源使用率の上限値を超えたサーバ計算機の資源だけでなく、全サーバ計算機の全資源使用率について、部品ブロックが変形される。
【０１２４】
次の説明では、Ｗｅｂサーバ計算機のＣＰＵ使用率とデータベースサーバ計算機のＣＰＵ使用率の２つを取り上げて説明する。
【０１２５】
図２７は図３と同じ部品プログラムａ、ｂ、ｃ、ｄの性能値の一例であり、この図においては、横軸に処理時間を示し、縦軸に平均データベースサーバ計算機ＣＰＵ使用率を表している。
【０１２６】
前述と同様に、図２２（ａ）のシナリオＡ１（図２２（ｂ）の部品列１１９）がユーザアクセス数２で同時に実行された場合を考える。２ユーザによって同時にシナリオが実行された場合の結果を図２８（ａ）（ｂ）に示す。
【０１２７】
すなわち、図２８（ａ）に示すように、Ｗｅｂサーバ計算機のＣＰＵ使用率について、部品ブロックｄで上限値Ｄｗを超えるので、図２６に示すシミュレーション結果と同様に、部品ブロックｄが変形される。この変化に伴って、図２８（ｂ）に示すように、データベースサーバ計算機のＣＰＵ使用率についても、部品ブロックｄの処理時間がＴｄｄ２に伸長され、データベースサーバ計算機のＣＰＵ使用率がＤｄｄ２に縮小される。
【数５】
2006185055.tif 000007
【０１２８】
上の説明では、ユーザアクセス数２で同時にシナリオが実行される場合について結果を示したが、実際のシミュレーションでは、図９に示すパラメータウィンドウの[シミュレーション]グループボックス９０３で設定されている、ユーザ数の変化範囲、試行時間、試行回数に従って、一つのユーザアクセス数に対して、試行時間Time分のシミュレーションが、ユーザアクセスの開始タイミングをランダムに変化させながら試行回数Trial回繰り返される。
【０１２９】
シミュレーションの結果得られた、計算機システムの性能値が性能表示部１０８に送信される。性能表示部１０８では、受信したシミュレーション結果を表形式やグラフなどで表示する。図２９から図３１はシミュレーション結果を表すグラフの例である。
【０１３０】
図２９は、ユーザ数を変化させた場合のリクエスト数の変化を示すグラフである。横軸がユーザ数、縦軸が1秒間に処理されるリクエスト数を示す。
【０１３１】
図３０は、横軸が1秒間に処理されるリクエスト数、縦軸がラウンド時間を示すグラフである。
【０１３２】
図３１は、横軸が1秒当たりのリクエスト数、縦軸がＷｅｂサーバのＣＰＵ使用率を示すグラフである。
【０１３３】
このように構成された実施形態の計算機システムの設計支援システムにおいては、システム設計部１０３にて、ＧＵＩ部１０９に表示されたメインウィンドウ上で、状態アイコン４０１とリクエストアイコン４０２と部品プログラムアイコン４０３を配置し、アイコン間を結線４０４で接続することにより計算機システムを設計している。
【０１３４】
そして、シナリオ生成部１０４において、先に設計された計算機システムがある状態時にリクエストが要求されると部品プログラムが呼び出される関係がシナリオとして設定される。さらに、計算機システムの設計が行われると同時に、シミュレーションにより、その計算機システムの性能が予測できる。
【０１３５】
したがって、計算機システムの設計者は、このシミュレーションによる予測結果を基に、部品プログラムの変更やハードウェア構成の変更などを判断することができる。また、部品プログラムの性能値は処理時間、サーバ計算機の資源使用率で、計測に特別な装置などを要しないので設計支援システムの構成を簡素化できるとともに、操作性を大幅に向上できる。
【０１３６】
なお、本実施形態の計算機システムの設計支援システムでは、シナリオウィンドウによりシナリオを設定し、パラメータウィンドウによりパラメータを設定する場合について説明したが、前もってシナリオ、パラメータが決まっている場合には、シナリオウィンドウによる設定、パラメータウィンドウによる設定を省略することができる。したがって、図1の構成図において、シナリオ生成部１０４、パラメータ設定部１０５を省くことができる。
【図面の簡単な説明】
【０１３７】
【図１】本発明の一実施形態に係わる計算機システムの設計支援プログラムが組込まれた計算機システムの設計支援システムの概略構成を示す機能ブロック図
【図２】同実施形態の設計支援システムの全体動作を示す流れ図
【図３】部品プログラムａ、ｂ、ｃ、ｄの処理時間と平均Ｗｅｂサーバ計算機ＣＰＵ使用率を示す図
【図４】同実施形態の設計支援システムのメインウィンドウを示す図
【図５】同実施形態の設計支援システム内に形成された部品結合表を示す図
【図６】同実施形態の設計支援システムの部品プログラムのプロパティダイアログを示す図
【図７】同実施形態の設計支援システム内に形成されたプログラム性能表を示す図
【図８】同実施形態の設計支援システム内に形成された性能パラメータ表を示す図
【図９】同実施形態の設計支援システムのパラメータウィンドウを示す図
【図１０】同実施形態の設計支援システム内に形成された計算機性能表を示す図
【図１１】同実施形態の設計支援システムのサーバ計算機ウィンドウを示す図
【図１２】同実施形態の設計支援システム内に形成されたサーバ表を示す図
【図１３】同実施形態の設計支援システム内に形成されたサーバ設定表を示す図
【図１４】同実施形態の設計支援システム内に形成されたシミュレーションパラメータ表を示す図
【図１５】同実施形態の設計支援システムの出力項目ウィンドウを示す図
【図１６】同実施形態の設計支援システム内に形成された出力項目候補表を示す図
【図１７】同実施形態の設計支援システム内に形成された出力項目表を示す図
【図１８】同実施形態の設計支援システムのシナリオ設定ウィンドウを示す図
【図１９】同実施形態の設計支援システム内に形成されたシナリオ表を示す図
【図２０】同実施形態の設計支援システムのシナリオ作成ウィンドウを示す図
【図２１】同実施形態の設計支援システム内に形成されたシナリオ発生確率表を示す図
【図２２】同実施形態の設計支援システムで生成されたシナリオ及び部品列を示す図
【図２３】同実施形態の設計支援システムにおいてシナリオＡ１を１ユーザで実行した場合のＷｅｂサーバ計算機ＣＰＵ使用率を示す図
【図２４】同実施形態の設計支援システムにおいてシミュレーション実行前に実施される各表間の検索手順を示す図
【図２５】同実施形態の設計支援システムのシミュレーション実行手順を示す流れ図
【図２６】同実施形態の設計支援システムにおいてシナリオＡ１を２ユーザで実行した場合のＷｅｂサーバ計算機ＣＰＵ使用率を示す図
【図２７】部品プログラムａ、ｂ、ｃ、ｄの処理時間と平均データベースサーバ計算機ＣＰＵ使用率を示す図
【図２８】同実施形態の設計支援システムにおいてシナリオＡ１を２ユーザで実行した場合のＷｅｂサーバ計算機ＣＰＵ使用率、およびデータベースサーバ計算機ＣＰＵ使用率を示す図
【図２９】同実施形態の設計支援システムで算出されたユーザ数に対するリクエスト数を示すシミュレーション結果のグラフ
【図３０】同実施形態の設計支援システムで算出されたリクエスト数に対するラウンド時間を示すシミュレーション結果のグラフ
【図３１】同実施形態の設計支援システムで算出されたリクエスト数に対するＷｅｂサーバ計算機ＣＰＵ使用率を示すシミュレーション結果のグラフ
【符号の説明】
【０１３８】
１０１…部品プログラム仕様設定部、１０２…プログラム性能データベース、１０３…システム設計部、１０４…シナリオ生成部、１０５…パラメータ設定部、１０６…部品列生成部、１０７…性能予測部、１０８…性能表示部、１０９…ＧＵＩ部１０９、１１０…プログラム性能表、１１１…部品結合表、１１２…シナリオ表、１１３…シナリオ発生確率表、１１４…サーバ設定表、１１５…計算機性能表、１１６…性能パラメータ表、１１７…出力項目候補表、１１８…出力項目表、１１９…部品列、１２０…サーバ表、１２１…シュミレーションパラメータ表
【図１】
2006185055.tif 000008
【図２】
2006185055.tif 000009
【図３】
2006185055.tif 000010
【図４】
2006185055.tif 000011
【図５】
2006185055.tif 000012
【図６】
2006185055.tif 000013
【図７】
2006185055.tif 000014
【図８】
2006185055.tif 000015
【図９】
2006185055.tif 000016
【図１０】
2006185055.tif 000017
【図１１】
2006185055.tif 000018
【図１２】
2006185055.tif 000019
【図１３】
2006185055.tif 000020
【図１４】
2006185055.tif 000021
【図１５】
2006185055.tif 000022
【図１６】
2006185055.tif 000023
【図１７】
2006185055.tif 000024
【図１８】
2006185055.tif 000025
【図１９】
2006185055.tif 000026
【図２０】
2006185055.tif 000027
【図２１】
2006185055.tif 000028
【図２２】
2006185055.tif 000029
【図２３】
2006185055.tif 000030
【図２４】
2006185055.tif 000031
【図２５】
2006185055.tif 000032
【図２６】
2006185055.tif 000033
【図２７】
2006185055.tif 000034
【図２８】
2006185055.tif 000035
【図２９】
2006185055.tif 000036
【図３０】
2006185055.tif 000037
【図３１】
2006185055.tif 000038