JP2009064125A - サーバ装置、そのプログラム - Google Patents
サーバ装置、そのプログラム Download PDFInfo
- Publication number
- JP2009064125A JP2009064125A JP2007229710A JP2007229710A JP2009064125A JP 2009064125 A JP2009064125 A JP 2009064125A JP 2007229710 A JP2007229710 A JP 2007229710A JP 2007229710 A JP2007229710 A JP 2007229710A JP 2009064125 A JP2009064125 A JP 2009064125A
- Authority
- JP
- Japan
- Prior art keywords
- request
- performance data
- session
- arbitrary
- function
- 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
Links
Abstract
【解決手段】第1の性能データ収集プログラム16は所定のログ出力を行うと共に、セッションID、リクエストIDをスレッド固有変数領域31に格納する。第2の性能データ収集プログラム17は、アプリケーションプログラム(Javaクラス12)からの呼び出しに応じて、スレッド固有変数領域31から取得したセッションID、リクエストIDに対応付けて関数の性能データをログ出力する。第2の性能データ収集プログラム17と上記呼び出し処理を有するアプリケーションプログラム(Javaクラス12)は、アスペクトコンパイルにより生成される。
【選択図】図5
Description
図17において、クライアント100は、例えば一般ユーザが所有するパソコン等の汎用コンピュータであり、一般的なOS102環境上でブラウザ等のクライアントプログラム101を実行することにより、不図示のLAN、インターネット等のネットワークを介してWeb/Apサーバ70にアクセスして任意の処理を要求する。
あり、上記の通り関数と呼ぶ場合もある。また、概略的にはJavaクラス72をメソッド(関数)と見做してもよい。
特許文献1に記載の従来技術では、プログラム走行時間データとプロセッサ使用時間データとを、測定対象プログラムの1回の走行で求めることにより、データ作成効率の向上を図るものである。
(1)各アプリケーションプログラムのソースコードにそれぞれ手作業で性能データ収集のための仕組みを組み込み、実行モジュールを生成し、実行モジュールを入れ替える必要があるため、作業効率が悪い。何らかの問題が生じてから上記実行モジュール生成・入れ替え作業開始すると、実際に性能データが収集できる状態になるまで時間が掛かり、これより収集したデータに基づいて原因を特定できるまでの時間も掛かることになる。
また、上記サーバ装置において、例えば、任意のデータ収集オン/オフ情報を設定させて記憶する第1の設定・記憶手段を更に有し、前記第1又は第2の性能データ収集手段は、該データ収集オン/オフ情報を参照して、オフ設定である場合には前記ログ情報又は前記性能データの記録処理は実行しないようにすることもできる。
原因の特定が容易となる。
図1に、本例のクライアントとサーバからなるシステムのシステム構成図を示す。
図1において、クライアント100は、上記従来のクライアント100と同じであってよく(ブラウザ搭載の一般ユーザのパソコン等)、同一符号を付し、説明は省略する。
尚、第1の性能データ収集プログラム16と第2の性能データ収集プログラム17(その他、JSP/Servlet11、Javaクラス12等の他の各種プログラムも)は、例えば後述する図16に示す記憶部205等に格納されており、これをCPU201が読み出し・実行することにより、所定の機能・動作を実現するものであり、以下、特に逐一断らないが、当然、以下の説明における各種プログラムに係る機能・動作の説明は、これら各種プログラムがCPU201等の演算プロセッサにより実行されることにより実現される機能・動作を説明しているものである。
アプリケーションプログラム(Javaクラス12)及び第2の性能データ収集プログラム(Javaクラス)17は、アプリケーションプログラムのバイトコードと、当該アプリケーションプログラム内の任意のログ出力対象関数、当該関数内のログ出力箇所(例:関数開始点、関数終了点)、および所定のログ出力処理を記述したアスペクトプログラムのソースファイルとを、アスペクトコンパイラによりコンパイルすることで生成される。尚、アスペクトプログラムとは、所謂“アスペクト指向プログラミング”(略してAOPと呼ばれる)手法に係るプログラムである。AOPとは、端的に言えば、システムに渡って横断的に要求される機能を、一箇所に「アスペクト」としてまとめておくプログラミング手法のことである。よって、上記アスペクトプログラムは、複数の各アプリケーションプログラムに共通的な処理(例:ログ出力処理等)が記述されたものである。
上記第2の性能データ収集プログラム(Javaクラス)17(及び各Javaクラス12)は、図2に示すアプリケーションプログラムのバイトコード(.classファイル)22(以下、アプリケーションプログラム22と記す)と、アスペクトプログラムのソースファイル(.ajファイル)21(以下、アスペクトソースファイル21と記す)とを、アスペクトコンパイラ20によりコンパイルする(以下、アスペクトコンパイルという)ことで生成される。アスペクトソースファイル21には、アプリケーションプログラム22のログ出力対象関数、関数内のログ出力箇所(例:関数開始点、関数終了点)、およびログ出力処理が、プログラマ等によって記述されている。
(1)アスペクトソースファイル(.ajファイル)21;
アプリケーションプログラム22の各関数のうちの特定のログ出力対象関数、このログ出力対象関数に係るログ出力箇所(例:関数開始点、関数終了点)、および所定のログ出力処理を記述したソースファイル。Javaに似た言語にて記述する。
アプリケーションソースファイルをJavaコンパイラでコンパイルしたバイトコード。従来のJavaクラス72(但し、処理時間収集処理無しのバージョン)に相当する。
アスペクトソースファイル21をアスペクトコンパイルした結果生成される、上記第2の性能データ収集プログラム(Javaクラス)17である。アスペクトソースファイル21内で定義された各ログ出力対象関数内の各ログ出力箇所でアプリケーションプログラム(.classファイル)24が呼び出しを行うことで、ログ出力処理を行う。つまり、アスペクトプログラム(.classファイル)23自体は、基本的に、上記所定のログ出力処理を行うだけである。
(4)アプリケーションプログラム(.classファイル)24;
アプリケーションプログラム22に対しアスペクトコンパイルを行うことで、例えば図4(b)に示すように各ログ出力箇所に上記アスペクトプログラム(.classファイル)23の呼び出し処理が埋め込まれたプログラム。
」を有しており、例えば全ての「クラス」を上記アプリケーションプログラム22とし、アスペクトソースファイル(.ajファイル)21で指定された関数を有する「クラス」には、当該関数の実行箇所に呼び出し処理が埋め込まれるようにしてもよいし、アスペクトソースファイル(.ajファイル)21で指定された「クラス」のみを上記アプリケーションプログラム22としてアスペクトコンパイラ20に入力させるようにしてもよい。
Web/Apサーバ10は、任意のクライアント100(ブラウザ等)から送られてくる任意のリクエストを受信すると、まず、第1の性能データ収集プログラム(Servletフィルタ)16が、詳しくは後述する図6の処理によって得たセッションIDとリクエストIDを、主記憶装置30内のスレッド固有の変数領域31に格納する。尚、言うまでもないが、セッションIDは各セッションを識別する識別コードであり、リクエストIDは各リクエストに対し一意となるIDであり、スレッド固有の変数領域31は各スレッド毎に割り当てられる変数領域である。
そして、任意のJavaクラス12が実行されるとき、このJavaクラス12が上記呼び出し処理が埋め込まれたものである場合には、この呼び出し処理が実行されることで呼び出されたアスペクトプログラム(.classファイル)23(第2の性能データ収集プログラム(Javaクラス)17)が実行されることになる。
上記の通り、図6は第1の性能データ収集プログラム(Servletフィルタ)16の処理フローチャート図であり、図7は第2の性能データ収集プログラム(Javaクラス)17の処理フローチャート図である。
図6に示すように、第1の性能データ収集プログラム(Servletフィルタ)16は、任意のクライアントから任意のリクエストを受信する毎に(ステップS11)、まず、当該Apサーバが自動的に割り当てるセッションIDと、当該リクエストの通過時に当該プログラム(Servletフィルタ)がプログラム内でカウント/生成するリクエストIDとを、上記スレッド固有の変数領域31に格納する(ステップS12)。また、Java内部で付与されるスレッド名を取得する(ステップS13)。更に、現在日時(あるいは上記リクエストを受信した時点)を示す日付時刻情報等を、Web/Apサーバ10内の不図示のシステムクロック等から取得する(ステップS14)。
尚、図7に示す各ステップの処理のうち、第2の性能データ収集プログラム(Javaクラス)17自体によって実行される処理は、ステップS24〜S27であると見做してもよい。すなわち、ステップS21〜S23の処理は、任意の第2の性能データ収集プログラム(Javaクラス)17が呼び出されるまでの処理を意味すると見做してもよい。つまり、JSP/Servlet11が任意のJavaクラス12を呼出す毎に(ステップS21)、このJavaクラス12にログ出力対象関数がない場合(ステップS22,NO)、すなわち上記アスペクトコンパイルにより呼び出し処理が全く埋め込まれていない場合には、当然、第2の性能データ収集プログラム(Javaクラス)17が呼び出されることはなく、このJavaクラス12の処理が実行されるだけである。
て渡してもよいし、他の方法であってよい。
上述した処理により、任意のクライアント(セッション)からの任意のリクエストに応じた全てのログ出力対象関数に関する上記性能データには、同一のセッションID及びリクエストIDが格納されていることになり、後に、収集した性能データを分析する際に、例えば各リクエストによる同じ関数に係る処理時間を一覧表示して、他と比較して処理時間が非常に長いものがあった場合に、この関数の性能データに含まれるセッションID及びリクエストIDから、そのクライアントやリクエスト固有の問題があることが推定できる等、クライアントやリクエスト固有の問題があった場合に特定が容易となる
図8に、上記ログファイル41の格納データ形式の一例を示す。
セッションID53、リクエストID54、スレッド名55、開始/終了56、URL57には、それぞれ上記セッションID、リクエストID、スレッド名、処理の開始/終了情報、アクセスURLが格納される。
図9に、上記図8に示すテーブル50(性能データ50)の具体例を示す。
ることになる(例えば、ログ記録処理の際に、セッションID及びリクエストIDをキーにしてログファイル41を検索して、該当するレコード群の最後に新たなレコードを追加すればよい)。
上述した本システムのサーバ10等によれば、アプリケーションプログラムの各ソースコード毎に逐一、処理時間収集のための仕組みを組み込んだり、モジュールを入れ替える必要がなくなり、任意のJavaアプリケーションに関する性能データ収集処理の追加を容易に行うことができる。
図10に示す動作は、既に説明してある通りであり、任意のクライアント100のブラウザから任意のHTTPリクエストがあると、第1の性能データ収集プログラム(Servletフィルタ)16が、セッション情報(セッションID、リクエストID)の記憶や、上記各種情報のログ出力を行う。そして、リクエストに応じたJavaアプリケーションを実行させる。これにより、JSP/Servlet11は、各メソッド(Javaクラス12)を実行させ、Javaクラス12は上記呼び出し処理が挿入されているものである場合には、この呼び出し処理実行のタイミングで第2の性能データ収集プログラム(Javaクラス)17を呼び出す。本例では、上記の通り、一例として、Javaクラス12(関数)の実行開始と終了時のタイミングで、呼び出し処理が実行されるものである。
実際の動作と一致するものではないが(実際の動作は図5、図6、図7等で既に説明してある)、以下、簡単に説明するものとする。
変形例1については、図12、図13を参照して説明する。
以下、図12、図13について説明するが、既に述べている通り、上記図10、図11と比較して異なる点についてのみ説明する。
付してある。よって、図示の通り、ステップS31の処理の後にステップS61,S62が追加されている点を除いては図11の処理と同じであり、ステップS61、S62の処理についてのみ説明する。すなわち、ステップS61は上記性能データ収集のオン/オフ設定を参照・取得する処理であり、オン設定の場合には(ステップS62,YES)図11と同様にステップS32以降の処理を実行し、オフ設定の場合には(ステップS62,NO)これら処理は行わずにそのまま本処理を終了する。
図14は、変形例2におけるWeb/Apサーバ10の動作を示す図である。
以下、図5に示す動作とは異なる点についてのみ説明する。
能データ収集プログラム(Javaクラス)17は、スレッド固有変数領域62を参照することで上記の通りセッションID、リクエストIDを取得すると共に、本変形例2においては上記レベル値を取得する。そして、取得したレベル値のレベル情報に応じたログ出力処理を行う(換言すれば、呼び出されてもログ出力処理を行わない場合がある)。
上記の通り、レベル情報は、各レベル値毎に規定されているものであり、簡単の為、図示の例ではレベル1、レベル2の2つのレベル値の各レベル情報を示す。
図16に、上記Web/Apサーバ10等のコンピュータのハードウェア構成図を示す。
力部204、記憶部205、記録媒体駆動部206、及びネットワーク接続部207を有し、これらがバス208に接続された構成となっている。
メモリ202は、プログラム実行、データ更新等の際に、記憶部205(あるいは可搬型記録媒体209)に記憶されているプログラムあるいはデータを一時的に格納するRAM等のメモリである。CPU201は、メモリ202に読み出したプログラム/データを用いて、各種処理を実行する。
ネットワーク接続部207は、例えば不図示のネットワークに接続して、他の情報処理装置(クライアント100等)との通信(コマンド/データ送受信等)を行う為の構成である。
CPU201は、上記記憶部205に格納されている各種プログラムを読み出し・実行することにより、上述したWeb/Apサーバ10の各種機能・処理(特に図2、図5〜図7、図10〜図14に示す処理)を実現する。
あるいは、上記記憶部205に格納される各種プログラム/データは、可搬型記録媒体209に記憶されているものであってもよい。この場合、可搬型記録媒体209に記憶されているプログラム/データは、記録媒体駆動部206によって読み出される。可搬型記録媒体209とは、例えば、FD(フレキシブル・ディスク)209a、CD−ROM209b、その他、DVD、光磁気ディスク等である。
11 JSP/Servlet
12 Javaクラス
13 Servletコンテナ
14 JavaVM(Java仮想マシン)
15 OS
16 第1の性能データ収集プログラム
17 第2の性能データ収集プログラム
20 アスペクトコンパイラ
21 アスペクトソースファイル
22 アプリケーションプログラム
23 アスペクトプログラム(.classファイル)
24 アプリケーションプログラム(.classファイル)
30 主記憶装置
31 スレッド固有の変数領域
40 補助記憶装置
41 ログファイル
50 ログファイルのテーブル(性能データ)
51 年月日時分秒.ミリ秒
52 ログレベル
53 セッションID
54 リクエストID
55 スレッド名
56 開始/終了
57 URL
58 実行メソッド情報
61 クラス変数領域
62 スレッド固有の変数領域
200 コンピュータ
201 CPU
202 メモリ
203 入力部
204 出力部
205 記憶部
206 記録媒体駆動部
207 ネットワーク接続部
208 バス
209 可搬型記録媒体
209a FD(フレキシブル・ディスク)
209b CD−ROM
Claims (9)
- 任意のクライアントからの任意のリクエストに応じた処理を実行するサーバ装置であって、
任意のクライアントから任意のリクエストを受け付ける毎に、このリクエストに応じたセッションID、リクエストIDを所定の記憶領域に記憶すると共に、該セッションIDとリクエストIDとに対応付けて所定のログ情報を記録する第1の性能データ収集手段と、
前記リクエストに応じて所定の1以上の関数の処理を実行するアプリケーション実行手段と、
前記アプリケーション実行手段による前記各関数の処理実行時に、前記所定の記憶領域から前記セッションID、リクエストIDを取得して、該セッションIDとリクエストIDとに対応付けて前記各関数の処理実行に係る所定の性能データを記録する第2の性能データ収集手段と、
を有することを特徴とするサーバ装置。 - 前記第2の性能データ収集手段と前記アプリケーション実行手段を実現させるプログラムは、所定のログ出力処理と任意の各ログ出力対象/ログ出力箇所とが記述されたアスペクトソースファイルと、前記関数の処理に係るアプリケーションプログラムとをアスペクトコンパイルすることで生成されることを特徴とする請求項1記載のサーバ装置。
- 任意のデータ収集オン/オフ情報を設定させて記憶する第1の設定・記憶手段を更に有し、
前記第1又は第2の性能データ収集手段は、該データ収集オン/オフ情報を参照して、オフ設定である場合には前記ログ情報又は前記性能データの記録処理は実行しないことを特徴とする請求項1又は2記載のサーバ装置。 - 前記アスペクトソースファイルには各レベル値に応じた複数種類のログ出力条件が記述され、
任意のレベル値を設定させて記憶する第2の設定・記憶手段を更に有し、
前記第2の性能データ収集手段は、該記憶されているレベル値に応じたログ出力条件に基づいて前記性能データの記録処理を実行することを特徴とする請求項2記載のサーバ装置。 - 任意のクライアントからの任意のリクエストに応じた処理を実行するサーバ装置であって、
任意のクライアントから任意のリクエストを受け付ける毎に、このリクエストに応じたセッションID、リクエストIDを所定の記憶領域に記憶すると共に、該セッションIDとリクエストIDとに対応付けて所定のログ情報を記録する第1の性能データ収集手段と、
前記リクエストに応じて所定の1以上の関数の処理を実行すると共に、前記所定の記憶領域に記憶されている前記セッションIDとリクエストIDを取得し、該各関数の処理の実行に伴い所定の各タイミングで、該セッションIDとリクエストIDとに対応付けて前記各関数の処理実行に係る所定の性能データを記録するアプリケーション実行・性能データ収集手段と、
を有することを特徴とするサーバ装置。 - 前記アプリケーション実行・ログ記録手段を実現させるプログラムは、所定のログ出力処理と任意の各ログ出力対象/ログ出力箇所とが記述されたアスペクトソースファイルと、前記関数の処理に係るアプリケーションプログラムとをアスペクトコンパイルすること
で、該アプリケーションプログラム中の前記各ログ出力対象/ログ出力箇所に該当する箇所に前記所定のログ出力処理が埋め込まれることで生成されることを特徴とする請求項5記載のサーバ装置。 - 前記各関数の処理実行に係る所定の性能データは、該各関数の関数名、処理開始/終了日時であることを特徴とする請求項1〜6の何れかに記載のサーバ装置。
- 任意のクライアントからの任意のリクエストに応じた処理を実行するサーバ装置のコンピュータを、
任意のクライアントから任意のリクエストを受け付ける毎に、このリクエストに応じたセッションID、リクエストIDを所定の記憶領域に記憶すると共に、該セッションIDとリクエストIDとに対応付けて所定のログ情報を記録する第1の性能データ収集手段と、
前記リクエストに応じて所定の1以上の関数の処理を実行すると共に、該各関数の処理の実行に伴い所定のタイミングで第2の性能データ収集手段を呼び出すアプリケーション実行手段と、
前記アプリケーション実行手段からの前記呼び出しに応じて、前記所定の記憶領域から前記セッションID、リクエストIDを取得して、該セッションIDとリクエストIDとに対応付けて前記各関数の処理実行に係る所定の性能データを記録する第2の性能データ収集手段、
として機能させる為のプログラム。 - 任意のクライアントからの任意のリクエストに応じた処理を実行するサーバ装置のコンピュータを、
任意のクライアントから任意のリクエストを受け付ける毎に、このリクエストに応じたセッションID、リクエストIDを所定の記憶領域に記憶すると共に、該セッションIDとリクエストIDとに対応付けて所定のログ情報を記録する第1の性能データ収集手段と、
前記リクエストに応じて所定の1以上の関数の処理を実行すると共に、前記所定の記憶領域に記憶されている前記セッションIDとリクエストIDを取得し、該各関数の処理の実行に伴い所定の各タイミングで、該セッションIDとリクエストIDとに対応付けて前記各関数の処理実行に係る所定の性能データを記録するアプリケーション実行・性能データ収集手段、
として機能させる為のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007229710A JP2009064125A (ja) | 2007-09-05 | 2007-09-05 | サーバ装置、そのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007229710A JP2009064125A (ja) | 2007-09-05 | 2007-09-05 | サーバ装置、そのプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009064125A true JP2009064125A (ja) | 2009-03-26 |
Family
ID=40558677
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007229710A Pending JP2009064125A (ja) | 2007-09-05 | 2007-09-05 | サーバ装置、そのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009064125A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014081811A (ja) * | 2012-10-17 | 2014-05-08 | Hitachi Solutions Ltd | ログ管理システム、および、ログ管理方法 |
CN108063685A (zh) * | 2017-12-06 | 2018-05-22 | 迈普通信技术股份有限公司 | 日志分析方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07129438A (ja) * | 1993-11-02 | 1995-05-19 | Nec Corp | 情報処理性能測定方法 |
JP2001306364A (ja) * | 2000-04-18 | 2001-11-02 | Ntt Comware Corp | トランザクション処理システムおよびその記録媒体 |
WO2005048118A1 (ja) * | 2003-11-17 | 2005-05-26 | Kenji Katsui | オンライン手続きにおける計測方法、評価方法及びアンケート実施方法 |
-
2007
- 2007-09-05 JP JP2007229710A patent/JP2009064125A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07129438A (ja) * | 1993-11-02 | 1995-05-19 | Nec Corp | 情報処理性能測定方法 |
JP2001306364A (ja) * | 2000-04-18 | 2001-11-02 | Ntt Comware Corp | トランザクション処理システムおよびその記録媒体 |
WO2005048118A1 (ja) * | 2003-11-17 | 2005-05-26 | Kenji Katsui | オンライン手続きにおける計測方法、評価方法及びアンケート実施方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014081811A (ja) * | 2012-10-17 | 2014-05-08 | Hitachi Solutions Ltd | ログ管理システム、および、ログ管理方法 |
CN108063685A (zh) * | 2017-12-06 | 2018-05-22 | 迈普通信技术股份有限公司 | 日志分析方法及装置 |
CN108063685B (zh) * | 2017-12-06 | 2021-06-18 | 迈普通信技术股份有限公司 | 日志分析方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2442230B1 (en) | Two pass automated application instrumentation | |
US9632769B2 (en) | Software build optimization | |
Oaks | Java Performance: The Definitive Guide: Getting the Most Out of Your Code | |
US7877734B2 (en) | Selective profiling of program code executing in a runtime environment | |
US9411616B2 (en) | Classloader/instrumentation approach for invoking non-bound libraries | |
JP4681491B2 (ja) | プロファイリングプログラムおよびプロファイリング方法 | |
US7665098B2 (en) | System and method for monitoring interactions between application programs and data stores | |
JP2010079508A (ja) | プロファイリング方法およびプロファイリングプログラム | |
JP2006185211A (ja) | プログラム解析装置、テスト実行装置、その解析方法及びプログラム | |
Eichelberger et al. | Flexible resource monitoring of Java programs | |
US20150006961A1 (en) | Capturing trace information using annotated trace output | |
JP2004164554A (ja) | プログラム実行監視装置および方法 | |
US20040168157A1 (en) | System and method for creating a process invocation tree | |
JP4867864B2 (ja) | 性能データ収集・表示システム、性能データ表示装置、そのプログラム | |
Dupriez et al. | Sindarin: A versatile scripting api for the pharo debugger | |
JP2009237610A (ja) | コード変換装置及びコード変換方法 | |
JP2009064125A (ja) | サーバ装置、そのプログラム | |
US8261245B2 (en) | Method and system for associating profiler data with a reference clock | |
Ruprecht et al. | Automatic feature selection in large-scale system-software product lines | |
JP6717140B2 (ja) | 解析プログラム、解析方法、及び解析装置 | |
Nagarajan et al. | A system for debugging via online tracing and dynamic slicing | |
JP2022150518A (ja) | テスト処理プログラム、テスト処理方法および情報処理装置 | |
JP2007323299A (ja) | レビュー実施順序決定装置、レビュー実施順序決定プログラム、レビュー実施順序決定プログラムが格納された記録媒体およびレビュー実施順序決定方法 | |
JP2008123438A (ja) | コンピュータシステム、プログラム情報収集方法、およびコンピュータプログラム | |
JP2003015914A (ja) | 情報処理装置を評価するためのテストプログラムを作成する方法、装置、およびそのための処理を記述したプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A625 | Written request for application examination (by other person) |
Free format text: JAPANESE INTERMEDIATE CODE: A625 Effective date: 20100415 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20110422 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110720 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110726 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111122 |