JP2002108656A - プログラム動作検証システム - Google Patents

プログラム動作検証システム

Info

Publication number
JP2002108656A
JP2002108656A JP2000298387A JP2000298387A JP2002108656A JP 2002108656 A JP2002108656 A JP 2002108656A JP 2000298387 A JP2000298387 A JP 2000298387A JP 2000298387 A JP2000298387 A JP 2000298387A JP 2002108656 A JP2002108656 A JP 2002108656A
Authority
JP
Japan
Prior art keywords
program
measurement
measured
performance index
end point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000298387A
Other languages
English (en)
Inventor
Takashi Horikawa
隆 堀川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2000298387A priority Critical patent/JP2002108656A/ja
Publication of JP2002108656A publication Critical patent/JP2002108656A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 被測定プログラム上に柔軟に測定点を配置す
ることができ、被測定プログラムが実際の装置で実行さ
れるときの動作状況を容易に検証することのできるプロ
グラム動作検証システムを提供する。 【解決手段】 測定点抽出手段133は性能設計情報1
31を含んだプログラム動作記述132から測定点を抽
出し、測定点埋込手段137によってプログラムコード
に測定点(開始点および終了点)を埋め込んで被測定プ
ログラム116を作成する。これを実行すると、測定手
段139は各測定点でそれらの時刻とイベントを出力し
て測定データ124とする。測定データ124によって
プログラム実行時の測定点間の経過時間が分かる。これ
により、動作状況を知り動作検証を行うことができる。
経過時間以外の性能指標(たとえばCPU消費時間、デ
ィスクやネットワークのアクセス回数)にも本発明を適
用できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はプログラムの動作を
検証するためのプログラム動作検証システムに係わり、
特にプログラムの開発時に実際の計算機等でその動作を
検証するためのプログラム動作検証システムに関する。
【0002】
【従来の技術】ソフトウェア工学の進展によって、比較
的大きなソフトウェアをその構成部品としてのコンポー
ネントを組み合わせて開発するといったコンポーネント
指向開発が普及しつつある。コンポーネントとは、ある
機能やサービスを提供するための独立して交換可能なソ
フトウェアの構成単位をいう。
【0003】このような開発手法をサポートする技術の
1つにUML(Unified Modeling Language)がある。
UMLはソフトウェアの仕様や、図示、体系化、文書化
の方法を規定したシステム設計用のモデリング言語であ
る。UMLを利用すると、高品質なシステム構築を可能
にするだけでなく、リアルタイムシステムや分散システ
ム等のさまざまなシステム設計を簡素化することができ
る。UMLはOMG(Object Management Group,Inc.)
が標準化を行っている。このUMLで規定されている記
述方法の1つであるシーケンス図は、作成したソフトウ
ェアがコンピュータ等の装置で実際に処理されるときの
動作を、前記したコンポーネントあるいはそれを構成す
るオブジェクトの間で行われる通信といった相互作用を
時間軸に沿って記述するものである。
【0004】このシーケンス図は、ソフトウェアの動作
を時間軸で表わしているので、この図の中に時間に関係
する性能情報を含めることが容易にできる。たとえばあ
るコンポーネントの処理は3秒間を要したといった情報
を含めてソフトウェアの動作を表現することができる。
実際に、UMLの第1.3版の仕様書(OMG UnifiedMod
eling Language Specification, http://cgi.omg.org/c
gi-bin/doc?formal/00-03-0.1.pdf)の3−96ページ
に示されているシーケンス図には、プログラムの実行に
関する性能条件も一緒に記述している。このような性能
条件の集まりを本明細書では性能設計情報と呼ぶことに
する。
【0005】一方、計算機の従来の性能測定は、マイク
ロソフト社のOS(オペレーションシステム)としての
ウィンドウズで使用されているパフォーマンスモニタ
(performance monitor)やユニックス(UNIX(登
録商標))におけるSAR(システム動作情報表示機能)
のようにCPU(中央処理装置)やディスクといった計
算機資源の使用率の計測が一般的である。
【0006】これら従来から使用されたツールは、一定
の周期で測定対象のシステムの状態を調べて計算機資源
の使用率を見積もるサンプリング手法をベースとしてい
る。また、計算機資源の使用開始や終了といったイベン
ト発生時に測定操作を行うことで、計算機資源の使用時
間を測定するようにしたイベントドリブン方式のツール
も存在している。
【0007】これらはいずれも、測定期間中の計算機資
源の使用率(あるいは使用時間)を測定するものであ
る。すなわちこれらの性能測定は、性能設計情報として
のシーケンス図で記述された性能条件に直接対応するも
のではない。したがって、たとえばあるオブジェクトが
処理要求メッセージを受信してからリプライを返すまで
の処理に要した計算機資源量を測定するといった、性能
条件で引用されているプログラム実行途中の2点の処理
を測定することはできない。このため、前記したように
ソフトウェアを作成するときにその構成部品としてのコ
ンポーネントごとの性能を評価するといったことができ
ない。
【0008】ところで、特開平11−96046号公報
ではプログラムが動作する計算機システムからプログラ
ムの稼動状況を取得する際に、予め該当するプログラ
ム、収集タイミング、収集するデータの項目等を含んだ
収集情報選択定義情報を外部から定義情報格納手段に格
納するようにしている。この技術では、熟練したソフト
ウェア開発者が収集情報選択定義情報を定義情報格納手
段に格納することでこれらの者のノウハウを活かして誤
った情報を収集したり不十分な情報を収集するといった
不都合を解消している。しかしながら、このような技術
で活用される定義情報格納手段では該当するプログラム
を指定するのは人手に頼ることになる。また、熟練者の
ノウハウを活用するということは定義情報格納手段に格
納する情報の入力を行う者は熟練者であることを必要と
するという問題がある。
【0009】一方、特開平9−18303号公報では、
現在使用されているプログラム言語よりも上位レベルの
記述を利用して、分散アプリケーションを自動構築する
手法の分野で、上位レベル記述から測定点を抽出して、
プローブを自動的に埋め込む処理を開示している。ま
た、特許第2924436号公報では、性能測定対象の
プロセスに遠隔手続き呼び出しがあることを前もって検
出して性能の測定を行うシステムを開示している。
【0010】更に特開平8−314767号公報では、
OS機能として用意されているイベント収集機能を使用
して計算機の性能を測定する技術を開示している。すな
わち、この技術ではタスクの実行中にOSによって収集
されるイベント情報を時系列的に格納して、全タスクの
実行後に、これらのイベント情報を順次読み出して、タ
スクごとにデータベースのリソースや入力操作に関する
データベース関連のイベント情報を抽出し、データベー
スの操作性に関する複数の評価パラメータを集計するよ
うにしている。
【0011】
【発明が解決しようとする課題】しかしながら、これら
の技術は先の特開平11−96046号公報とも共通す
るが、プログラムにおける測定点の抽出をソフトウェア
技術者あるいは測定実施者が手作業で行っていたり、メ
ッセージの送受信点といったように予め決まったルール
を使用したり、OS自体が用意している機能を利用する
ようになっている。
【0012】このため、手作業で行う場合には得られた
測定結果に人為的な影響が作用してしまい、測定結果が
妥当であるかどうかの判断が困難であるという問題があ
った。また、測定の実施者が特別な知識や経験を有する
者に限定されるだけでなく、作業に時間を要するといっ
た問題があった。更に、予め決まったルールや機能を使
用する場合には、手作業で行う場合の問題がなくなる一
方で、プログラム上に測定点を設置することができる位
置が、これらのルールや機能を適用できる箇所に限られ
ることになる。したがって、測定を柔軟に行うことがで
きないという問題があった。
【0013】このため、性能設計情報を含むプログラム
動作記述をもとに開発されたプログラムがこれらの性能
設計情報で示されている性能条件(たとえば、プログラ
ム実行中における任意の点を参照する)を満足している
かどうかを調べるための測定を行うものとすると、従来
ではソフトウェアの開発者が手作業で性能設計情報に対
応する測定点を抽出していた。そして、これらの測定点
を用いて、プログラムの実行に要した時間が適切な時間
範囲であったかといった性能測定を実施する必要があっ
た。このために、前記した手作業が原因で測定の実施に
手間がかかるといった問題があった。
【0014】またこのような従来の手法によると、測定
点の抽出操作を個々のプログラムごとに個別に行う必要
があった。このように、性能設計情報に対応させた測定
を行う測定手法を汎用化された測定ツールという形で提
供するまでに至っておらず、これが測定の実施に時間が
かかる一因ともなっていた。また、予め決まったルール
や機能を使用する場合には、測定点が一方的に定められ
ることになり、必要な測定点を任意に抽出することがで
きない。したがって、性能設計を行う際に性能条件を自
由に記述することができないという問題があった。
【0015】そこで本発明の目的は、被測定プログラム
上に柔軟に測定点を配置することができ、被測定プログ
ラムが実際の装置で実行されるときの動作状況を容易に
検証することのできるプログラム動作検証システムを提
供することにある。
【0016】
【課題を解決するための手段】請求項1記載の発明で
は、(イ)プログラムのある特定範囲の処理に要する経
過時間等の所定の性能指標を調べる性能設計情報を含ん
だプログラム動作記述から検証の対象となる被測定プロ
グラムに埋め込む測定開始のための測定開始点および測
定終了のための測定終了点を読み出す読出手段と、
(ロ)この読出手段で読み出した測定開始点および測定
終了点を該当する箇所にそれぞれ埋め込んだ被測定プロ
グラムを作成する被測定プログラム作成手段と、(ハ)
この被測定プログラム作成手段によって作成された被測
定プログラムを所定の装置に組み込んで実行するプログ
ラム実行手段と、(ニ)このプログラム実行手段の被測
定プログラムの実行の際に測定開始点および測定終了点
の埋め込み箇所の処理が実行されるときの性能指標をそ
れぞれ測定する性能指標測定手段と、(ホ)この時刻測
定手段によって測定された測定開始点と測定終了点のそ
れぞれの性能指標の差から被測定プログラムのこれら測
定開始点から測定終了点に至る性能指標値を算出する性
能指標値算出手段と、(へ)この性能指標値算出手段に
よって算出した性能指標値を被測定プログラムの対応す
る箇所と共に表示する表示手段とをプログラム動作検証
システムに具備させる。
【0017】すなわち請求項1記載の発明では、読出手
段によって性能設計情報を含んだプログラム動作記述か
ら検証の対象となる被測定プログラムに埋め込む測定開
始点と測定終了点および設計値を読み出して、被測定プ
ログラム作成手段で測定開始点と測定終了点をプログラ
ムの該当箇所に埋め込んで被測定プログラムを作成する
ようにしている。そして、時刻測定手段によってプログ
ラム実行手段の被測定プログラムの実行の際に測定開始
点および測定終了点の埋め込み箇所の処理が実行される
ときの性能指標をそれぞれ測定し、それぞれの性能指標
の差から被測定プログラムのこれら測定開始点から測定
終了点に至る性能指標値を算出するようにしている。算
出した性能指標値は判別手段を用いて設計値を満足する
か否かを判別し、判別結果が被測定プログラムの対応す
る箇所に表示される。このように請求項1記載の発明で
は、プログラム動作記述の性能設計情報に記述した内容
を基にして測定開始点と測定終了点を抽出するので、た
とえばプログラマが性能設計情報として測定の開始点や
終了点を判読できるデータを書き込んでおくことによ
り、被測定プログラムの所望の箇所で測定を開始したり
終了させることができる。したがって、プログラムにお
ける測定点の抽出をソフトウェア技術者あるいは測定実
施者が手作業で行う必要がない。また、メッセージの送
受信点といったように予め決まったルールを使用した
り、OS自体が用意している機能を利用する場合と異な
り、被測定プログラムの所望のコンポーネントの開始点
と終了点を任意に指定して測定を行うことができる。そ
してこれらの点での性能指標を求め、これらの差から性
能指標値を算出しこれを設計値と比較した判別結果を被
測定プログラムの対応する箇所に対応付けて表示するの
で、チェックするコンポーネントが多いような場合にも
それぞれの性能指標値が設計値を満足しているかどうか
を短時間にチェックすることができる。
【0018】請求項2記載の発明では、(イ)プログラ
ムのある特定範囲の処理に要する経過時間等の所定の性
能指標がその処理について予め定めた設計値の範囲内に
収まっているかどうかを少なくとも調べる性能設計情報
を含んだプログラム動作記述から検証の対象となる被測
定プログラムに埋め込む測定開始のための測定開始点と
測定終了のための測定終了点および設計値を読み出す読
出手段と、(ロ)この読出手段で読み出した測定開始点
および測定終了点を該当する箇所にそれぞれ埋め込んだ
被測定プログラムを作成する被測定プログラム作成手段
と、(ハ)この被測定プログラム作成手段によって作成
された被測定プログラムを所定の装置に組み込んで実行
するプログラム実行手段と、(ニ)このプログラム実行
手段の被測定プログラムの実行の際に測定開始点および
測定終了点の埋め込み箇所の処理が実行されるときの性
能指標をそれぞれ測定する性能指標測定手段と、(ホ)
この性能指標測定手段によって測定された測定開始点と
測定終了点のそれぞれの性能指標の差から被測定プログ
ラムのこれら測定開始点から測定終了点に至る性能指標
値を算出する性能指標値算出手段と、(へ)この性能指
標値算出手段によって算出した性能指標値を被測定プロ
グラムの対応する箇所ならびに設計値と共に表示する表
示手段とをプログラム動作検証システムに具備させる。
【0019】すなわち、請求項2記載の発明では、プロ
グラム動作記述の性能設計情報に記述した内容を基にし
て測定開始点と測定終了点を抽出するので、たとえばプ
ログラマが性能設計情報として測定の開始点や終了点を
判読できるデータを書き込んでおくことにより、被測定
プログラムの所望の箇所で測定を開始したり終了させる
ことができる。したがって、プログラムにおける測定点
の抽出をソフトウェア技術者あるいは測定実施者が手作
業で行う必要がない。また、メッセージの送受信点とい
ったように予め決まったルールを使用したり、OS自体
が用意している機能を利用する場合と異なり、被測定プ
ログラムの所望のコンポーネントの開始点と終了点を任
意に指定して測定を行うことができる。そしてこれらの
点での性能指標を求め、これらの差から性能指標値を算
出して表示するので、性能指標値を被測定プログラムの
対応する箇所に対応付けて簡単にチェックすることがで
きる。更に本発明では、算出した性能指標値を設計値と
共に被測定プログラムの対応する箇所に表示するので、
算出した性能指標値が設計値を満足しているか否かを簡
単にチェックすることができる。
【0020】請求項3記載の発明では、(イ)プログラ
ムのある特定範囲の処理に要する経過時間等の所定の性
能指標がその処理について予め定めた設計値の範囲内に
収まっているかどうかを少なくとも調べる性能設計情報
を含んだプログラム動作記述から検証の対象となる被測
定プログラムに埋め込む測定開始のための測定開始点と
測定終了のための測定終了点および設計値を読み出す読
出手段と、(ロ)この読出手段で読み出した測定開始点
および測定終了点を該当する箇所にそれぞれ埋め込んだ
被測定プログラムを作成する被測定プログラム作成手段
と、(ハ)この被測定プログラム作成手段によって作成
された被測定プログラムを所定の装置に組み込んで実行
するプログラム実行手段と、(ニ)このプログラム実行
手段の被測定プログラムの実行の際に測定開始点および
測定終了点の埋め込み箇所の処理が実行されるときの性
能指標をそれぞれ測定する性能指標測定手段と、(ホ)
この性能指標測定手段によって測定された測定開始点と
測定終了点の性能指標の差から被測定プログラムのこれ
ら測定開始点から測定終了点に至るまでのプログラムの
実行に要する性能指標値を算出する性能指標値算出手段
と、(へ)この性能指標値算出手段によって算出した性
能指標値が設計値を満足するか否かを判別する判別手段
と、(ト)この判別手段によって判別した結果を被測定
プログラムの対応する箇所と共に表示する表示手段とを
プログラム動作検証システムに具備させる。
【0021】すなわち請求項3記載の発明では、プログ
ラム動作記述の性能設計情報に記述した内容を基にして
測定開始点と測定終了点を抽出するので、たとえばプロ
グラマが性能設計情報として測定の開始点や終了点を判
読できるデータを書き込んでおくことにより、被測定プ
ログラムの所望の箇所で測定を開始したり終了させるこ
とができる。したがって、プログラムにおける測定点の
抽出をソフトウェア技術者あるいは測定実施者が手作業
で行う必要がない。また、メッセージの送受信点といっ
たように予め決まったルールを使用したり、OS自体が
用意している機能を利用する場合と異なり、被測定プロ
グラムの所望のコンポーネントの開始点と終了点を任意
に指定して測定を行うことができる。そしてこれらの点
での性能指標を求め、これらの差から性能指標値を算出
しこれを設計値と比較した判別結果を被測定プログラム
の対応する箇所に対応付けて表示するので、チェックす
るコンポーネントが多いような場合にもそれぞれの性能
指標値が設計値を満足しているかどうかを短時間にチェ
ックすることができる。
【0022】請求項4記載の発明では、性能指標は、た
とえばプログラムのある特定範囲の処理に要する経過時
間の他に、CPU消費時間、ディスクやネットワークの
アクセス回数、入出力データのサイズ等の指標であるこ
とを示している。
【0023】請求項5記載の発明では、(イ)プログラ
ムのある特定範囲の処理に要する経過時間がその処理に
ついて予め定めた設計値の範囲内に収まっているかどう
かを少なくとも調べる性能設計情報を含んだプログラム
動作記述から検証の対象となる被測定プログラムに埋め
込む測定開始のための測定開始点と測定終了のための測
定終了点および設計値を読み出す読出手段と、(ロ)こ
の読出手段で読み出した測定開始点および測定終了点を
該当する箇所にそれぞれ埋め込んだ被測定プログラムを
作成する被測定プログラム作成手段と、(ハ)この被測
定プログラム作成手段によって作成された被測定プログ
ラムを所定の装置に組み込んで実行するプログラム実行
手段と、(ニ)このプログラム実行手段の被測定プログ
ラムの実行の際に測定開始点および測定終了点の埋め込
み箇所の処理が実行されるときの時刻をそれぞれ測定す
る時刻測定手段と、(ホ)この時刻測定手段によって測
定された測定開始点と測定終了点の時刻の差から被測定
プログラムのこれら測定開始点から測定終了点に至るま
でのプログラムの実行に要する経過時間を算出する経過
時間算出手段と、(へ)この経過時間算出手段によって
算出した経過時間が設計値を満足するか否かを判別する
判別手段と、(ト)この判別手段によって判別した結果
を被測定プログラムの対応する箇所と共に表示する表示
手段とをプログラム動作検証システムに具備させる。
【0024】すなわち請求項5記載の発明では、読出手
段によって性能設計情報を含んだプログラム動作記述か
ら検証の対象となる被測定プログラムに埋め込む測定開
始点と測定終了点および設計値を読み出して、被測定プ
ログラム作成手段で測定開始点と測定終了点をプログラ
ムの該当箇所に埋め込んで被測定プログラムを作成する
ようにしている。そして、時刻測定手段によってプログ
ラム実行手段の被測定プログラムの実行の際に測定開始
点および測定終了点の埋め込み箇所の処理が実行される
ときの時刻をそれぞれ測定し、被測定プログラムのこれ
ら測定開始点から測定終了点に至るまでのプログラムの
実行に要する経過時間を経過時間算出手段によって算出
するようにしている。算出した経過時間は判別手段を用
いて設計値を満足するか否かを判別し、判別結果が被測
定プログラムの対応する箇所に表示される。
【0025】このように請求項5記載の発明では、プロ
グラム動作記述の性能設計情報に記述した内容を基にし
て測定開始点と測定終了点を抽出するので、たとえばプ
ログラマが性能設計情報として測定の開始点や終了点を
判読できるデータを書き込んでおくことにより、被測定
プログラムの所望の箇所で測定を開始したり終了させる
ことができる。したがって、プログラムにおける測定点
の抽出をソフトウェア技術者あるいは測定実施者が手作
業で行う必要がない。また、メッセージの送受信点とい
ったように予め決まったルールを使用したり、OS自体
が用意している機能を利用する場合と異なり、被測定プ
ログラムの所望のコンポーネントの開始点と終了点を任
意に指定して測定を行うことができる。そしてこれらの
点での処理時刻を求め、これらの差から経過時間を算出
しこれを設計値と比較した判別結果を被測定プログラム
の対応する箇所に対応付けて表示するので、チェックす
るコンポーネントが多いような場合にもそれぞれの所要
時間が設計値を満足しているかどうかを短時間にチェッ
クすることができる。
【0026】請求項6記載の発明では、請求項5記載の
プログラム動作検証システムで、表示手段は経過時間算
出手段によって算出した実際の経過時間も被測定プログ
ラムの対応する箇所と共に表示することを特徴としてい
る。
【0027】すなわち請求項6記載の発明では、請求項
3記載の発明による表示内容に加えて経過時間算出手段
によって算出した実際の経過時間も表示するようにして
いるので、この経過時間を設計値と対比することでプロ
グラムの実行について何らかの不具合があったときにそ
の原因を大まかに類推することができる。
【0028】請求項7記載の発明では、請求項1〜請求
項3または請求項5記載のプログラム動作検証システム
で、前記した所定の装置は複数の装置によって構成され
ており、プログラムのある特定範囲の処理とは被測定プ
ログラムのうち特定の装置に割り当てられたコンポーネ
ントの処理であることを特徴としている。
【0029】すなわち請求項7記載の発明では、1つの
被測定プログラムが複数の装置によってコンポーネント
単位で実行される例を示している。このようなコンポー
ネントごとの経過時間を表示したりそれぞれの設計値と
比較することがコンポーネント単位で測定開始点と測定
終了点をプログラム動作記述から抽出し被測定プログラ
ムに埋め込むことで実現可能になる。
【0030】請求項8記載の発明では、請求項1〜請求
項3または請求項5記載のプログラム動作検証システム
で、前記した所定の装置は通信ケーブルによって接続さ
れた複数の装置によって構成されており、それぞれの装
置に対して被測定プログラムのコンポーネントが割り振
られており、表示手段はそれぞれのコンポーネントにつ
いての表示を一箇所で集中的に行うことを特徴としてい
る。
【0031】すなわち請求項8記載の発明では、1つの
被測定プログラムが複数の装置によって実行されると
き、それぞれの装置におけるコンポーネントごとの検証
結果は1つの装置で集中的に表示される例を示してお
り、これにより被測定プログラムの動作全体についての
集中的な検証が可能になる。
【0032】請求項9記載の発明では、請求項1〜請求
項3または請求項5記載のプログラム動作検証システム
で、前記した所定の装置は通信ケーブルによって接続さ
れた複数の装置によって構成されており、それぞれの装
置に対して被測定プログラムのコンポーネントが割り振
られており、表示手段はそれぞれの装置単位で該当する
コンポーネントごとの表示を行うことを特徴としてい
る。
【0033】すなわち請求項9記載の発明では、1つの
被測定プログラムが複数の装置によって実行されると
き、それぞれの装置におけるコンポーネントごとの検証
結果は装置ごとに表示される例を示している。これによ
り、各装置側で自己に関係するコンポーネントの不具合
に対するハードウェア側の原因を探る等の対処を容易に
行うことができる。
【0034】
【発明の実施の形態】
【0035】
【実施例】以下実施例につき本発明を詳細に説明する。
【0036】図1は本発明の一実施例におけるプログラ
ム動作検証システムの構成の概要を示したものである。
本実施例のシステムは、被測定計算機101と測定装置
102とによって構成されている。被測定計算機101
は、通常のパーソナルコンピュータと同一の構成となっ
ており、CPU(中央処理装置)111およびハードデ
ィスク、RAM(ランダム・アクセス・メモリ)等から
なるメモリ112の他に、測定装置102にデータを出
力するためのデータ出力部113を備えており、それら
がバス114に接続されている。メモリ112内にはこ
の被測定計算機101の基本的な制御を行わせるための
プログラムとしてのOS115とこのOS115上で実
行される被測定プログラム116が格納されている。被
測定プログラム116には、プログラム動作記述を基に
して測定点が埋め込まれている。
【0037】なお、この図ではキーボード等の入力機器
(図示せず)やディスク読取装置等の装置からデータの
入力を行うデータ入力部やディスプレイ(図示せず)の
表示制御を行う表示制御部等の回路装置は本発明の動作
と直接関係しない。そこで、これらの図示を省略してい
る。
【0038】被測定計算機101のOS115の基本機
能を実現する部分としてのカーネル内には、CPUや磁
気ディスク、光ディスクといった計算機資源の使用状況
を示すイベントを出力するためにカーネルプローブ11
7が埋め込まれている。被測定プログラム116が実行
され、計算機資源の使用状況のうちの特定のものがカー
ネルプローブ117によって検出されると、これらの使
用状況がイベントデータ118として測定装置102に
出力される。このカーネルプローブ117の他にプログ
ラム中に埋め込まれた測定点を検出するプローブ(以
下、測定点プローブという。)も存在している。測定点
プローブもこれが実行されたときイベントデータ118
をデータ出力線119を介して測定装置102に出力す
るようになっている。
【0039】一方、測定装置102はデータ出力線11
9によって受信した被測定計算機からのイベントデータ
118を記録装置121に入力するようになっている。
記録装置121には測定装置102内に設けられた時計
回路122から時刻データ123も供給されるようにな
っている。記録装置121はイベントデータ118と時
刻データ123を対応付けて測定データ124として記
録する。この測定データ124を基にして、ある測定点
から他の測定点に至るまでの経過時間が検証したい動作
条件としての時間範囲(設計値)に合致しているかどう
かの判別が行われる。これについては次に説明する。
【0040】図2は、本実施例のプログラム動作検証シ
ステムの動作の概要を示したものである。図1に示した
被測定プログラム116を作成するために、プログラム
の作成時にプログラマは性能設計情報131を含んだプ
ログラム動作記述132を作成する。プログラム動作記
述132には、予めプログラマがプログラムの動作を実
際の装置で検証するための測定の開始点および終了点を
示す位置を記している。プログラムの実行に関する性能
条件を表わした性能設計情報131として、本実施例で
は測定点による測定の開始から終了までに許容できる所
要時間としての設計値が記述されている。
【0041】測定点抽出手段133は、各コンポーネン
トの境界位置のような測定点をプログラム動作記述13
2から抽出し、これを所定の記憶領域に測定点情報13
5として格納する。これらの測定点情報135は、プロ
グラムコード136の該当する位置に測定点埋込手段1
37によって埋め込まれる。被測定計算機101内で測
定点埋込手段137はOS115によって所定の制御を
行うCPU111が該当する。このような埋め込み操作
によって被測定プログラム116(図1参照)が作成さ
れる。
【0042】被測定プログラム116は測定点から他の
測定点まで所要時間を測定する装置(たとえば図1に示
した測定装置102)からなる測定手段139によって
測定され、その結果としての測定データ124が作成さ
れる。測定データ124は、データ分析比較手段142
に入力される。図1ではこれを記録装置121が兼用し
ている。データ分析比較手段142は、プログラム動作
記述132内の性能設計情報131から測定点の開始か
ら終了までに予想される時間の許容値(設計値)と実際
に費やした時間を比較して、被測定プログラム116の
動作が正常であるかどうかの検証結果を図1に示す記録
装置121のような装置でプリントアウトしたり、図示
しないディスプレイに表示するようになっている。
【0043】図3は、本実施例のプログラム検証用のク
ライアントとサーバの関係を示したものである。クライ
アント161はインターネットで通信を行うための通信
ケーブル162を介してサーバ163と接続されてい
る。なお、ここでは説明を簡単にするためにクライアン
ト161とサーバ163を1対1の関係で図示してい
る。図1に示した被測定計算機101と測定装置102
は、図示していないが通信ケーブルでこれらクライアン
ト161およびサーバ163と接続されている。
【0044】図4は、プログラマによるプログラム動作
記述の例を示したものである。本実施例ではUML(Un
ified Modeling Language)を使用して記述を行ってい
る。図で左側がクライアント161側の記述であり、右
側がサーバ163側の記述である。これらの記述で、枠
で示した“{”と“}”で囲まれた箇所が性能設計情報1
71〜173である。
【0045】この言語の記述を簡単に説明すると、“Be
gin Client Process”という記述によってクライアント
161が処理を開始し、“Send Request To Server”と
いう記述でたとえばある処理をサーバ163側に要求し
ている。この“Send RequestTo Server”という処理の
要求に付帯して、以下のような性能設計情報171が記
述されている。 {Send Request To Server - Begin Client Process < 1
sec} (性能設計情報171)
【0046】この性能設計情報171は、不等式の左辺
で示した2点間、すなわち“BeginClient Process”か
ら“Send Request To Server”までの間に消費するクラ
イアント161側のCPUの経過時間が右辺に示した
“1 sec”(1秒)よりも短いという条件を示している。
この条件は、プログラムを処理する装置側等に何らかの
不具合がなければ、達成される範囲の値である前記した
設計値として記載される。したがって、この場合には、
“Begin Client Process”と“Send Request ToServe
r”の記述が行われたプログラムの箇所がそれぞれ測定
点181、182となる。
【0047】“Send Request To Server”という処理の
要求の記述に基づいて、クライアント161側からサー
バ163側にリクエスト(Request)が行われる。サー
バ163では、“Receive Request From Client”とい
う記述の箇所でクライアント161から処理の要求を受
け、“Send Reply To Client” という記述の箇所で返
答(Reply)をクライアント161に返す。サーバ16
3側におけるこの箇所には以下のような性能設計情報1
72が記述されている。 {Send Reply To Client - Receive Request From Clien
t < 3 sec} (性能設計情報172)
【0048】この性能設計情報172は、不等式の左辺
で示した2点間、すなわち“Receive Request From Cli
ent”から“Send Reply To Client”までに消費するサ
ーバ163側の経過時間が、右辺に示した“3 sec”(3
秒)よりも短いという条件を示している。この条件も、
プログラムを処理する装置側等に何らかの不具合がなけ
れば、達成される範囲の値である前記した設計値として
記載される。したがって、この場合には、“Receive Re
quest From Client”と“Send Reply To Client”の記
述が行われたプログラムの箇所がそれぞれ測定点18
3、184となる。
【0049】クライアント161は“Receive Reply Fr
om Server”という記述の箇所でサーバ163側の返答
(Reply)を受ける。そしてそれから所定の作業を行っ
た後に“End Client Process”で所定の処理を完了させ
る。この記述の箇所には以下のような性能設計情報17
3が記述されている。 {End Client Process - Receive Reply From Server <
2 sec} (性能設計情報173)
【0050】この性能設計情報173は、不等式の左辺
で示した2点間、すなわち“End Client Process”から
“Receive Reply From Server”までに消費するクライ
アント161の経過時間が右辺に示した“2sec”(2秒)
よりも短いという条件を示している。この条件も、プロ
グラムを処理する装置側等に何らかの不具合がなけれ
ば、達成される範囲の値である前記した設計値として記
載される。したがって、この場合には、“Receive Repl
y From Server”と“End Client Process”の記述が行
われたプログラムの箇所がそれぞれ測定点185、18
6となる。
【0051】図1に示したCPU111はOS115に
よって、このようなUMLによる記述を解読する。そし
て、クライアント161側であれば、対応するそれぞれ
の測定点181、182、185、186と性能設計情
報171、173をそのメモリ112に一時的に格納
し、これを基にしてプログラム動作の検証を行うことに
なる。サーバ163側も同様の制御を行うがその結果を
独自にサーバ163側で表示することもできるし、クラ
イアント161側に返すような処理形態を採ることも可
能である。
【0052】図5は、クライアント側のプログラムコー
ドとしてのクライアントプログラムの流れの要部を示し
たものである。まず、図4の測定点181に対応するプ
リプロセス(Pre Process)(ステップS201)から測
定点182に対応するサーバ163側への処理要求(Se
nd Request To Server)(ステップS202)へ移行し
て、更にサーバ163側からの返答(Receive Reply Fr
om Server)(ステップS203)を受信し、所定のプ
ロセスを終了させる(Post Process)(ステップS20
4)ことになる。
【0053】図6は、サーバ側のプログラムコードとし
てのサーバプログラムの流れの要部を示したものであ
る。サーバは、クライアント161から処理の要求を受
ける(Receive Request From Client)(ステップS2
21)と、その要求された処理を実行し(Process Requ
est)(ステップS222)、クライアント161に返
答する(Send Reply To Client)(ステップS223)
という処理を繰り返す。したがって、サーバ163のプ
ログラムには実行の終了点は存在しない。
【0054】次に図2に示した測定点抽出手段133に
よる測定点の抽出動作を具体的に説明する。図1に示し
たCPU111とOS115によって実現する測定点抽
出手段133は、プログラム動作記述内の性能設計情報
171〜173を用いてそれぞれの測定点181〜18
6を抽出するようになっている。図4に示した例の場合
には、性能設計情報171〜173として記述されてい
る不等式の左辺で引用されている点、すなわち“Begin
Client Process”、“Send Request To Server”、“Re
ceive Request From Client”、“Send Reply To Clien
t”、“ReceiveReply From Server”および“End Clien
t Process”の6点が測定点181〜186を表わした
測定点情報として抽出される。
【0055】図7は、これら抽出された測定点情報を埋
め込んで作成した被測定プログラムを用いたクライアン
ト側の処理を示したものであり、図8はイベントを出力
するそれぞれのプローブとソフトウェアイベントを対応
させて示したものである。図7の処理は図5の処理と対
応している。クライアント161は、前記したプログラ
ム中に埋め込まれた測定点を検出する測定点プローブの
1つとしてのプローブ“Prb Cb”によってプリプロセス
(Pre Process)を検出し(ステップS241)、クラ
イアント処理を開始する。このとき、プローブ“Prb C
b”によってクライアント処理が開始した旨のイベント
データがデータ出力部113(図1)を介して被測定計
算機101から測定装置102に送られる。測定装置1
02では、このイベントデータおよび時計回路122の
出力する時刻データ123を記録装置121に送り、イ
ベントデータごとに時刻を記録して測定データ124を
作成していく。
【0056】さて、図7のステップS241で測定点の
うちの開始点が検出されたら、次の測定点プローブ“Pr
b Cs”によってサーバ163への処理要求(Send Reque
st To Server)が検出されて(ステップS242)、そ
の旨のイベントデータがデータ出力部113から測定装
置102に送られる。この後、ステップS243でサー
バ163側から返答を受ける(Receive Reply From Ser
ver)まで、クライアント161はスリープ(Sleep)状
態となる。これはカーネルプローブ117で検出され
て、同様にそのイベントが記録装置121側に送られて
記録される。また、サーバ163側はクライアント16
1からの処理要求(Send Request To Server)によって
ウエイクアップ(Wake Up)するが、同様にこれはカー
ネルプローブ117で検出されて、記録装置121側に
送られて記録されることになる。
【0057】ステップS243でサーバ163側からの
返答(Receive Reply From Server)があると、測定点
プローブの1つとしてのプローブ“Prb Cr”がこれを検
出して、同様に図8に示すようなイベントデータを出力
する。そしてその後、サーバ163の返答に基づいた所
定のプロセスを終了させる(Post Process)(ステップ
S204)と、測定点プローブの1つとしてのプローブ
“Prb Ce”がこれを検出して、同様に図8に示すような
イベントデータを出力することになる。
【0058】図9は、被測定プログラムを用いたサーバ
側の処理を示したものであり、図6の処理と対応してい
る。ステップS261ではクライアント161から要求
を受信(Receive Request From Client)し、これが測
定点プローブの1つとしてのプローブ“Prb Sr”で検出
される。プローブ“Prb Sr”は図8に示したように、サ
ーバ163がクライアント161から処理要求を受信し
た旨のイベントデータを出力する。ステップS262で
はサーバ163が要求された処理を実行(Process Requ
est)する。処理が終了すると、測定点プローブの1つ
としてのプローブ“Prb Ss”がこれを検出して、クライ
アントに返答する(Send Reply To Client)(ステップ
S263)。この後、サーバがスリープ(Sleep)状態
となり、クライアント161側がウエイクアップ(Wake
Up)する。これらはカーネルプローブ117で検出さ
れて、記録装置121側に送られて記録されることにな
る。それぞれのプローブによってイベントデータが出力
され、記録される。
【0059】ところで、図2に示したデータ分析比較手
段142は、本実施例ではクライアント161に設けら
れている。すなわち、クライアント161側で発生した
イベントデータだけでなく、サーバ163側で発生した
イベントデータもクライアント161側に集中的に集め
られて、性能設計情報131との比較が行われる。デー
タ分析比較手段142は、測定の開始点から終了点まで
の経過時間が性能設計情報131として記述された条件
を満足する場合には“Good”(条件満足)という結果を
実際に要した経過時間と共に表示し、条件を満足しなか
った場合には“Not Good”(条件不満足)という結果を
実際に要した経過時間と共に表示する。
【0060】図10は、このプログラム動作検証システ
ムで記録装置あるいは図示しないディスプレイが出力あ
るいは表示する検証結果の一例を示したものであり、図
4に対応させたものである。実際の経過時間としての実
行値と設計値および条件を満たしたかどうかの結果と
が、クライアント161とサーバ163の関係で一目で
わかるように表示されている。たとえばプログラマある
いは装置の設計者は、サーバ163がクライアント16
1から処理の要求を受けてから返答を返すまでの時間が
設計値である3秒よりも長い4.2秒かかったことを直
ちに知ることができる。すなわち、プログラムコードを
実行させたときの“Receive Request FromClient”と
“Send Reply To Client”(図4参照)の間の実行性能
が性能設計情報172で示されている性能条件を満足し
ていないことを知り、必要な対策を採ることができる。
【0061】第1の変形例
【0062】図11は先の実施例の図1に対応するもの
で被測定計算機の変形例を示したものである。図11で
図1と同一部分には同一の符号を付しており、これらの
説明を適宜省略する。先の実施例では被測定計算機10
1と測定装置102は別々の装置として構成されていた
が、これらを同一の装置で構成することができる。たと
えばパーソナルコンピュータとこれに接続された記録装
置あるいはディスプレイといったような構成を挙げるこ
とができる。この第1の変形例の被測定計算機301で
は、CPU302内の時計回路303を時刻データ12
3の出力用に使用している。また、この時刻データ12
3やOS115から出力れるイベントデータ118等の
データは測定データ124としてメモリ112内に格納
される。これらのデータが性能設計情報131と比較さ
れ、その結果が図示しないプリンタでプリントアウトさ
れたり、同じく図示しないディスプレイに視覚的に表示
されることになる。
【0063】この第1の変形例では、被測定計算機30
1を実施例のクライアントと同一のものとして構成する
ことができ、この場合には測定および検証を行うための
特別のハードウェアを必要としないという利点が生じ
る。もちろん、実施例でもその被測定計算機101をク
ライアント161と同一のものとして構成することがで
きる。
【0064】第2の変形例
【0065】図12は、本発明の第2の変形例における
プログラム動作検証システムの構成を示したものであ
る。このシステムはネットワーク401によって接続さ
れたクライアント402とサーバ403によって構成さ
れている。クライアント402およびサーバ403はそ
れぞれ図1に示したものと基本的に同一構成の被測定計
算機101C、101Sと測定装置102C、102S
によって構成されている。そこで、これらの構成部品で
図1に示したものと同一のものには同一の数字とアルフ
ァベットCまたはSを付しており、これらの部品の説明
を適宜省略する。測定装置102C内の時計回路122
Cと測定装置102S内の時計回路122Sとは時刻同
期用通信ケーブル404で接続されており、両時計回路
122C、122Sの出力する時刻データ123C、1
23Sの同期がとられている。
【0066】クライアント402の被測定計算機101
C上ではクライアントプログラムが動作し、サーバ40
3の被測定計算機101S上ではサーバプログラムが動
作するようになっている。クライアント402およびサ
ーバ403はそれぞれ単独に測定装置102Cあるいは
102Sを配置しているので、それぞれ自分の側でイベ
ントデータを時刻データと共に記録し、性能設計情報と
比較することができるようになっている。もちろん、ネ
ットワーク401で接続先にこれらの比較結果を送るこ
とで、ネットワーク全体のどの装置で処理が滞っている
といった情報も取得し、それぞれの計算機で表示したり
プリントアウトすることもできる。
【0067】図13は、この第2の変形例でクライアン
トがサーバに所定の処理要求を行って処理結果を得た場
合のそれぞれの被測定計算機のソフトウェアイベントと
プローブの関係を示したものである。この例は、処理内
容的には実施例の図8で説明したクライアント161と
サーバ163の処理と同一であるので、詳細な説明は省
略する。先の実施例では、測定装置がシステムに1つだ
けだったので、図10で示したような比較結果が1箇所
で集中的に行われるが、第2の変形例では自分の装置に
関係する分だけを部分的に表示したり、必要によりシス
テム全体の比較結果を表示することもできる。
【0068】なお、実施例および第2の変形例では1つ
のクライアントと1つのサーバの関係を説明したが、1
つの計算機から複数の計算機に順次処理が移行していく
ものや、1つの処理を複数の計算機が分散して行うよう
な場合にも本発明を同様に適用することができる。
【0069】更に実施例では図10に示すように、実際
の経過時間としての実行値と設計値および条件を満たし
たかどうかの結果とがディスプレイに表示されたりプリ
ンタでプリントアウトされるようにしていた。これとは
異なり、それぞれの処理に対しての実行値のみがコンポ
ーネントごとに表示されるものであってもよいし、設計
値との比較のみが表示されるものであってもよい。
【0070】また実施例および変形例では測定点間の経
過時間を性能設計情報に記述しその結果を表示させる場
合について説明したが、これ以外の性能設計情報、たと
えばCPUの稼動率等を併せてこれらの測定結果を合わ
せて表示するようにしてもよい。
【0071】
【発明の効果】以上説明したように請求項1および請求
項4記載の発明によれば、プログラム動作記述の性能設
計情報に記述した内容を基にして測定開始点と測定終了
点を抽出するので、たとえばプログラマが性能設計情報
として測定の開始点や終了点を判読できるデータを書き
込んでおくことにより、被測定プログラムの所望の箇所
で測定を開始したり終了させることができる。したがっ
て、プログラムにおける測定点の抽出をソフトウェア技
術者あるいは測定実施者が手作業で行う必要がない。ま
た、メッセージの送受信点といったように予め決まった
ルールを使用したり、OS自体が用意している機能を利
用する場合と異なり、被測定プログラムの所望のコンポ
ーネントの開始点と終了点を任意に指定して測定を行う
ことができる。そしてこれらの点での処理時刻を求め、
これらの差から経過時間を算出して表示するので、実際
にかかった時間を被測定プログラムの対応する箇所に対
応付けて簡単にチェックすることができる。
【0072】また請求項2および請求項4記載の発明に
よれば、プログラム動作記述の性能設計情報に記述した
内容を基にして測定開始点と測定終了点を抽出するの
で、たとえばプログラマが性能設計情報として測定の開
始点や終了点を判読できるデータを書き込んでおくこと
により、被測定プログラムの所望の箇所で測定を開始し
たり終了させることができる。したがって、プログラム
における測定点の抽出をソフトウェア技術者あるいは測
定実施者が手作業で行う必要がない。また、メッセージ
の送受信点といったように予め決まったルールを使用し
たり、OS自体が用意している機能を利用する場合と異
なり、被測定プログラムの所望のコンポーネントの開始
点と終了点を任意に指定して測定を行うことができる。
そしてこれらの点での処理時刻を求め、これらの差から
経過時間を算出して表示するので、実際にかかった時間
を被測定プログラムの対応する箇所に対応付けて簡単に
チェックすることができる。更に本発明では、算出した
経過時間を設計値と共に被測定プログラムの対応する箇
所に表示するので、算出した経過時間が設計値を満足し
ているか否かを簡単にチェックすることができる。
【0073】更に請求項3および請求項4記載の発明に
よれば、プログラム動作記述の性能設計情報に記述した
内容を基にして測定開始点と測定終了点を抽出するの
で、たとえばプログラマが性能設計情報として測定の開
始点や終了点を判読できるデータを書き込んでおくこと
により、被測定プログラムの所望の箇所で測定を開始し
たり終了させることができる。したがって、プログラム
における測定点の抽出をソフトウェア技術者あるいは測
定実施者が手作業で行う必要がない。また、メッセージ
の送受信点といったように予め決まったルールを使用し
たり、OS自体が用意している機能を利用する場合と異
なり、被測定プログラムの所望のコンポーネントの開始
点と終了点を任意に指定して測定を行うことができる。
そしてこれらの点での処理時刻を求め、これらの差から
経過時間を算出しこれを設計値と比較した判別結果を被
測定プログラムの対応する箇所に対応付けて表示するの
で、チェックするコンポーネントが多いような場合にも
それぞれの所要時間が設計値を満足しているかどうかを
短時間にチェックすることができる。
【0074】また請求項5記載の発明によれば、プログ
ラム動作記述の性能設計情報に記述した内容を基にして
測定開始点と測定終了点を抽出するので、たとえばプロ
グラマが性能設計情報として測定の開始点や終了点を判
読できるデータを書き込んでおくことにより、被測定プ
ログラムの所望の箇所で測定を開始したり終了させるこ
とができる。したがって、プログラムにおける測定点の
抽出をソフトウェア技術者あるいは測定実施者が手作業
で行う必要がない。また、メッセージの送受信点といっ
たように予め決まったルールを使用したり、OS自体が
用意している機能を利用する場合と異なり、被測定プロ
グラムの所望のコンポーネントの開始点と終了点を任意
に指定して測定を行うことができる。そしてこれらの点
での時刻を求め、これらの差から経過時間を算出しこれ
を設計値と比較した判別結果を被測定プログラムの対応
する箇所に対応付けて表示するので、チェックするコン
ポーネントが多いような場合にもそれぞれの経過時間が
設計値を満足しているかどうかを短時間にチェックする
ことができる。
【0075】更に請求項6記載の発明によれば、請求項
5記載の発明による表示内容に加えて経過時間算出手段
によって算出した実際の経過時間も表示するようにして
いるので、この経過時間を設計値と対比することでプロ
グラムの実行について何らかの不具合があったときにそ
の原因を類推することができる。
【0076】また請求項7記載の発明によれば、1つの
被測定プログラムが複数の装置によってコンポーネント
単位で実行される場合に、コンポーネントごとの経過時
間等の性能指標値を表示したりそれぞれの設計値と比較
することが可能になる。
【0077】更に請求項8記載の発明によれば、1つの
被測定プログラムが複数の装置によって実行されるとき
でも、それぞれの装置におけるコンポーネントごとの検
証結果を集中的に調べることができ、プログラムの全体
的な動作の把握を短時間に行うことができる。
【0078】また請求項9記載の発明によれば、1つの
被測定プログラムが複数の装置によって実行されると
き、それぞれの装置におけるコンポーネントごとの検証
結果を担当する装置ごとに表示するので、これらの装置
ごとにハードウェア側の原因を探る等の対処を容易に行
うことができる。
【図面の簡単な説明】
【図1】本発明の一実施例におけるプログラム動作検証
システムの構成の概要を示したブロック図である。
【図2】本実施例のプログラム動作検証システムの動作
の概要を示した説明図である。
【図3】本実施例のプログラム検証用のクライアントと
サーバの関係を示したブロック図である。
【図4】本実施例でプログラマによるプログラム動作記
述の例を示した説明図である。
【図5】本実施例でクライアント側のプログラムコード
としてのクライアントプログラムの流れの要部を示した
流れ図である。
【図6】本実施例でサーバ側のプログラムコードとして
のサーバプログラムの流れの要部を示した流れ図であ
る。
【図7】本実施例で測定点情報を埋め込んで作成した被
測定プログラムを用いたクライアント側の処理を示した
説明図である。
【図8】本実施例でイベントを出力するそれぞれのプロ
ーブとソフトウェアイベントを対応させて示した説明図
である。
【図9】本実施例で被測定プログラムを用いたサーバ側
の処理を示した説明図である。
【図10】本実施例のプログラム動作検証システムで記
録装置あるいは図示しないディスプレイが出力あるいは
表示する検証結果の一例を示した平面図である。
【図11】本発明の第1の変形例として被測定計算機の
構成を示したブロック図である。
【図12】本発明の第2の変形例におけるプログラム動
作検証システムの構成を示したブロック図である。
【図13】第2の変形例でクライアントがサーバに所定
の処理要求を行って処理結果を得た場合のそれぞれの被
測定計算機のソフトウェアイベントとプローブの関係を
示す説明図である。
【符号の説明】
101、301 被測定計算機 102 測定装置 111 CPU(中央処理装置) 112 メモリ 115 OS 116 被測定プログラム 117 カーネルプローブ 121 記録装置 122、303 時計回路 124 測定データ 132 プログラム動作記述 133 測定点抽出手段 137 測定点埋込手段 139 測定手段 142 データ分析比較手段 161、402 クライアント 163、403 サーバ 171〜173 性能設計情報 181〜184 測定点 401 ネットワーク

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 プログラムのある特定範囲の処理に要す
    る経過時間等の所定の性能指標を調べる性能設計情報を
    含んだプログラム動作記述から検証の対象となる被測定
    プログラムに埋め込む測定開始のための測定開始点およ
    び測定終了のための測定終了点を読み出す読出手段と、 この読出手段で読み出した測定開始点および測定終了点
    を該当する箇所にそれぞれ埋め込んだ被測定プログラム
    を作成する被測定プログラム作成手段と、 この被測定プログラム作成手段によって作成された被測
    定プログラムを所定の装置に組み込んで実行するプログ
    ラム実行手段と、 このプログラム実行手段の被測定プログラムの実行の際
    に前記測定開始点および測定終了点の埋め込み箇所の処
    理が実行されるときの性能指標をそれぞれ測定する性能
    指標測定手段と、 この時刻測定手段によって測定された測定開始点と測定
    終了点のそれぞれの性能指標の差から前記被測定プログ
    ラムのこれら測定開始点から測定終了点に至る性能指標
    値を算出する性能指標値算出手段と、 この性能指標値算出手段によって算出した性能指標値を
    前記被測定プログラムの対応する箇所と共に表示する表
    示手段とを具備することを特徴とするプログラム動作検
    証システム。
  2. 【請求項2】 プログラムのある特定範囲の処理に要す
    る経過時間等の所定の性能指標がその処理について予め
    定めた設計値の範囲内に収まっているかどうかを少なく
    とも調べる性能設計情報を含んだプログラム動作記述か
    ら検証の対象となる被測定プログラムに埋め込む測定開
    始のための測定開始点と測定終了のための測定終了点お
    よび前記設計値を読み出す読出手段と、 この読出手段で読み出した測定開始点および測定終了点
    を該当する箇所にそれぞれ埋め込んだ被測定プログラム
    を作成する被測定プログラム作成手段と、 この被測定プログラム作成手段によって作成された被測
    定プログラムを所定の装置に組み込んで実行するプログ
    ラム実行手段と、 このプログラム実行手段の被測定プログラムの実行の際
    に前記測定開始点および測定終了点の埋め込み箇所の処
    理が実行されるときの性能指標をそれぞれ測定する性能
    指標測定手段と、 この性能指標測定手段によって測定された測定開始点と
    測定終了点のそれぞれの性能指標の差から前記被測定プ
    ログラムのこれら測定開始点から測定終了点に至る性能
    指標値を算出する性能指標値算出手段と、 この性能指標値算出手段によって算出した性能指標値を
    前記被測定プログラムの対応する箇所ならびに前記設計
    値と共に表示する表示手段とを具備することを特徴とす
    るプログラム動作検証システム。
  3. 【請求項3】 プログラムのある特定範囲の処理に要す
    る経過時間等の所定の性能指標がその処理について予め
    定めた設計値の範囲内に収まっているかどうかを少なく
    とも調べる性能設計情報を含んだプログラム動作記述か
    ら検証の対象となる被測定プログラムに埋め込む測定開
    始のための測定開始点と測定終了のための測定終了点お
    よび前記設計値を読み出す読出手段と、 この読出手段で読み出した測定開始点および測定終了点
    を該当する箇所にそれぞれ埋め込んだ被測定プログラム
    を作成する被測定プログラム作成手段と、 この被測定プログラム作成手段によって作成された被測
    定プログラムを所定の装置に組み込んで実行するプログ
    ラム実行手段と、 このプログラム実行手段の被測定プログラムの実行の際
    に前記測定開始点および測定終了点の埋め込み箇所の処
    理が実行されるときの性能指標をそれぞれ測定する性能
    指標測定手段と、 この性能指標測定手段によって測定された測定開始点と
    測定終了点の性能指標の差から前記被測定プログラムの
    これら測定開始点から測定終了点に至るまでのプログラ
    ムの実行に要する性能指標値を算出する性能指標値算出
    手段と、 この性能指標値算出手段によって算出した性能指標値が
    前記設計値を満足するか否かを判別する判別手段と、 この判別手段によって判別した結果を前記被測定プログ
    ラムの対応する箇所と共に表示する表示手段とを具備す
    ることを特徴とするプログラム動作検証システム。
  4. 【請求項4】 性能指標は、プログラムのある特定範囲
    の処理に要する経過時間の他に、CPU消費時間、ディ
    スクやネットワークのアクセス回数、入出力データのサ
    イズ等の指標であることを特徴とする請求項1〜請求項
    3記載のプログラム動作検証システム。
  5. 【請求項5】 プログラムのある特定範囲の処理に要す
    る経過時間がその処理について予め定めた設計値の範囲
    内に収まっているかどうかを少なくとも調べる性能設計
    情報を含んだプログラム動作記述から検証の対象となる
    被測定プログラムに埋め込む測定開始のための測定開始
    点と測定終了のための測定終了点および前記設計値を読
    み出す読出手段と、 この読出手段で読み出した測定開始点および測定終了点
    を該当する箇所にそれぞれ埋め込んだ被測定プログラム
    を作成する被測定プログラム作成手段と、 この被測定プログラム作成手段によって作成された被測
    定プログラムを所定の装置に組み込んで実行するプログ
    ラム実行手段と、 このプログラム実行手段の被測定プログラムの実行の際
    に前記測定開始点および測定終了点の埋め込み箇所の処
    理が実行されるときの時刻をそれぞれ測定する時刻測定
    手段と、 この時刻測定手段によって測定された測定開始点と測定
    終了点の時刻の差から前記被測定プログラムのこれら測
    定開始点から測定終了点に至るまでのプログラムの実行
    に要する経過時間を算出する経過時間算出手段と、 この経過時間算出手段によって算出した経過時間が前記
    設計値を満足するか否かを判別する判別手段と、 この判別手段によって判別した結果を前記被測定プログ
    ラムの対応する箇所と共に表示する表示手段とを具備す
    ることを特徴とするプログラム動作検証システム。
  6. 【請求項6】 前記表示手段は経過時間算出手段によっ
    て算出した実際の経過時間も前記被測定プログラムの対
    応する箇所と共に表示することを特徴とする請求項5記
    載のプログラム動作検証システム。
  7. 【請求項7】 前記所定の装置は複数の装置によって構
    成されており、前記プログラムのある特定範囲の処理と
    は被測定プログラムのうち特定の装置に割り当てられた
    コンポーネントの処理であることを特徴とする請求項1
    〜請求項3または請求項5記載のプログラム動作検証シ
    ステム。
  8. 【請求項8】 前記所定の装置は通信ケーブルによって
    接続された複数の装置によって構成されており、それぞ
    れの装置に対して前記被測定プログラムのコンポーネン
    トが割り振られており、前記表示手段はそれぞれのコン
    ポーネントについての表示を一箇所で集中的に行うこと
    を特徴とする請求項1〜請求項3または請求項5記載の
    プログラム動作検証システム。
  9. 【請求項9】 前記所定の装置は通信ケーブルによって
    接続された複数の装置によって構成されており、それぞ
    れの装置に対して前記被測定プログラムのコンポーネン
    トが割り振られており、前記表示手段はそれぞれの装置
    単位で該当するコンポーネントごとの表示を行うことを
    特徴とする請求項1〜請求項3または請求項5記載のプ
    ログラム動作検証システム。
JP2000298387A 2000-09-29 2000-09-29 プログラム動作検証システム Pending JP2002108656A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000298387A JP2002108656A (ja) 2000-09-29 2000-09-29 プログラム動作検証システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000298387A JP2002108656A (ja) 2000-09-29 2000-09-29 プログラム動作検証システム

Publications (1)

Publication Number Publication Date
JP2002108656A true JP2002108656A (ja) 2002-04-12

Family

ID=18780356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000298387A Pending JP2002108656A (ja) 2000-09-29 2000-09-29 プログラム動作検証システム

Country Status (1)

Country Link
JP (1) JP2002108656A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006285304A (ja) * 2005-03-31 2006-10-19 Nec Corp トランザクション・プロファイル作成方法および装置
US7376549B2 (en) 2003-01-17 2008-05-20 Nec Corporation System performance prediction mechanism and method based on software component performance measurements
JP2016143146A (ja) * 2015-01-30 2016-08-08 日本電信電話株式会社 オートリソースロギングシステム、オートリソースロギング方法及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376549B2 (en) 2003-01-17 2008-05-20 Nec Corporation System performance prediction mechanism and method based on software component performance measurements
JP2006285304A (ja) * 2005-03-31 2006-10-19 Nec Corp トランザクション・プロファイル作成方法および装置
JP4539405B2 (ja) * 2005-03-31 2010-09-08 日本電気株式会社 トランザクション・プロファイル作成方法および装置
JP2016143146A (ja) * 2015-01-30 2016-08-08 日本電信電話株式会社 オートリソースロギングシステム、オートリソースロギング方法及びプログラム

Similar Documents

Publication Publication Date Title
JP4787460B2 (ja) ソフトウェア・コンポーネントの性能測定を基にしたシステム性能予測方式および方法
Draheim et al. Realistic load testing of web applications
Christmansson et al. Generation of an error set that emulates software faults based on field data
Urunuela et al. Storm a simulation tool for real-time multiprocessor scheduling evaluation
CN109685089B (zh) 评估模型性能的系统及方法
WO2010061735A1 (ja) 検出イベントに応じたアクション実行を支援するシステム、検出イベントに応じたアクション実行を支援する方法、支援装置及びコンピュータプログラム
JP2008140162A (ja) デバッグ情報収集方法
CN113190443A (zh) 测试方法、装置、计算机设备和存储介质
US20060250970A1 (en) Method and apparatus for managing capacity utilization estimation of a data center
Carnevali et al. Putting preemptive Time Petri Nets to work in a V-Model SW life cycle
Smith et al. Performance validation at early stages of software development
CN112527568A (zh) 数据流量测试方法、装置、电子设备及存储介质
JP2002108656A (ja) プログラム動作検証システム
Stewart et al. A tool for analyzing and fine tuning the real-time properties of an embedded system
Abrams A tool to aid in model development and validation
Calvez et al. Performance monitoring and assessment of embedded HW/SW systems
CN114676198A (zh) 一种面向多模数据库的基准评测系统及其构建方法
JP2003030007A (ja) プログラム開発支援システム及び、プログラム開発支援方法及び、プログラム開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体及び、プログラム開発支援プログラム
CN103217942B (zh) 调用测量值,诊断信息或者设备参数
JP2715904B2 (ja) 計算機システム性能評価装置
JP2009181494A (ja) ジョブ処理システムおよびジョブ情報取得方法
JP2006018735A (ja) コーディング規準遵守状況監視システム
JP2010102372A (ja) データ処理装置、検証システム、データ処理装置検証方法
JPH11242614A (ja) 並列プログラム用リアルタイム検証装置および方法
KR102045892B1 (ko) 모바일 센싱 애플리케이션의 개발 보조 장치, 이를 포함하는 개발 보조 시스템 및 이를 이용하는 개발 보조 방법

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040127

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040326

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040407

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040507

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050314