JP6209862B2 - プログラム、ジョブ監視支援方法、情報処理装置およびシステム - Google Patents

プログラム、ジョブ監視支援方法、情報処理装置およびシステム Download PDF

Info

Publication number
JP6209862B2
JP6209862B2 JP2013109875A JP2013109875A JP6209862B2 JP 6209862 B2 JP6209862 B2 JP 6209862B2 JP 2013109875 A JP2013109875 A JP 2013109875A JP 2013109875 A JP2013109875 A JP 2013109875A JP 6209862 B2 JP6209862 B2 JP 6209862B2
Authority
JP
Japan
Prior art keywords
jobs
job
graph
execution order
information
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.)
Active
Application number
JP2013109875A
Other languages
English (en)
Other versions
JP2014229183A (ja
Inventor
大悟 岩月
大悟 岩月
利光 佐治
利光 佐治
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013109875A priority Critical patent/JP6209862B2/ja
Priority to US14/283,286 priority patent/US9864964B2/en
Publication of JP2014229183A publication Critical patent/JP2014229183A/ja
Application granted granted Critical
Publication of JP6209862B2 publication Critical patent/JP6209862B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Operations Research (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Debugging And Monitoring (AREA)
  • User Interface Of Digital Computer (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明はプログラム、ジョブ監視支援方法、情報処理装置およびシステムに関する。
現在、繰り返し行われる定型的な作業(例えば、毎日行う業務上のルーチンワーク)を、コンピュータが実行するひと纏まりの処理(ジョブ)として定義しておき、コンピュータを利用して自動化することが一般的になっている。
複数のジョブがコンピュータに登録されているとき、それら複数のジョブは、予め定義された順序に従って連続的に実行されることがある。例えば、データベースから所定の条件を満たすレコードを抽出するジョブ、抽出されたレコードに含まれる値を集計するジョブ、集計結果を示す文書ファイルを生成するジョブが、連続して実行される。各ジョブは、例えば、1つ前のジョブが終了した後に開始される。あるジョブから分岐して、2以上の後続のジョブが並行して実行されることもある(分岐点)。また、2以上の先行のジョブ全てが終了するのを待って、あるジョブが開始されることもある(待ち合わせ点)。
ジョブを繰り返し実行していると(例えば、毎日実行していると)、普段よりコンピュータの負荷が大きい、普段よりデータが多い、参照するファイルの到着が普段より遅いなどの種々の理由によって、想定よりジョブの終了が大きく遅延してしまうときがある。また、ジョブの実行中に想定していないエラーが発生して、ジョブが異常終了してしまうときもある。そこで、ジョブの実行状況を、コンピュータのオペレータが監視することが好ましい。ジョブの監視を支援するため、複数のジョブの間の順序関係を表したグラフを生成し、グラフを用いてジョブの実行状況を可視化することが考えられる。
なお、複数の業務ジョブが実行されるジョブ処理装置上で実行監視ジョブを起動し、実行監視ジョブを用いてそれら複数の業務ジョブの実行状況を監視する業務ジョブ実行監視方法が提案されている。この実行監視ジョブは、各業務ジョブから実行開始時に生成される実行開始ファイルと実行終了時に生成される実行終了ファイルとを取得し、実行開始ファイルおよび実行終了ファイルに基づいて当該業務ジョブの遅延を判定する。
特開2004−295508号公報
グラフを用いてジョブの実行状況を可視化するにあたっては、監視するジョブ全体についての実行状況をオペレータが俯瞰できるように、グラフ全体またはグラフの大部分が1つの画面内に表示される方が好ましい。グラフの一部分のみが画面に表示されていると、オペレータは表示範囲を切り替えながらグラフの各部分を確認していくことになり、操作性や理解容易性に劣る。しかし、監視するジョブの数が増大すると、ジョブに対応するノードの全てを1つの画面内に収容することが困難になるという問題がある。
複数のジョブが監視に適した形式に階層化されている場合には、上位階層のジョブを1つのノードとして表現することで、グラフ全体を1つの画面内に収容することもできる。一方、ジョブが監視に適した形式に予め階層化されていない場合、そのようなジョブ群から階層化されたグラフを生成することは容易でない。
1つの側面では、本発明は、ジョブの実行状況の監視を容易にするプログラム、ジョブ監視支援方法、情報処理装置およびシステムを提供することを目的とする。
1つの態様では、コンピュータに以下の処理を実行させるプログラムが提供される。当該プログラムを実行するコンピュータは、複数のジョブの実行順序情報を含むジョブ情報を取得する。ジョブ情報に基づき、複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出する。前段ジョブの数および後段ジョブの数に基づいて、複数のジョブの中から選択されたジョブが選択的に表示されたグラフを生成する。
また、1つの態様では、コンピュータが実行するジョブ監視支援方法が提供される。
また、1つの態様では、記憶部と生成部とを有する情報処理装置が提供される。記憶部は、複数のジョブの実行順序情報を含むジョブ情報を記憶する。生成部は、ジョブ情報に基づき、複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出する。また、生成部は、前段ジョブの数および後段ジョブの数に基づいて、複数のジョブの中から選択されたジョブが選択的に表示されたグラフを生成する。
また、1つの態様では、記憶装置と情報処理装置とを有するシステムが提供される。
1つの側面では、ジョブの実行状況の監視が容易になる。
第1の実施の形態の情報処理装置を示す図である。 第2の実施の形態のシステムを示す図である。 クライアントのハードウェア例を示すブロック図である。 監視フロー画面の例を示す図である。 クライアントとジョブ管理サーバの機能例を示すブロック図である。 ジョブ情報テーブルの例を示す図である。 履歴情報テーブルの例を示す図である。 制御情報テーブルの例を示す図である。 グラフ生成の手順例を示すフローチャートである。 初期設定の手順例を示すフローチャートである。 粒度決定の手順例を示すフローチャートである。 粒度に応じた監視ポイントの変化例を示す第1の図である。 粒度に応じた監視ポイントの変化例を示す第2の図である。 監視ポイント追加の手順例を示すフローチャートである。 監視ポイントの追加例を示す図である。 前後判定の手順例を示すフローチャートである。 ノードの自動再配置の例を示す図である。 粒度変更の手順例を示すフローチャートである。 部分的な粒度変更の例を示す図である。 アクティブ監視の手順例を示すフローチャートである。 アクティブ監視モードの例を示す図である。 クライアントとジョブ管理サーバの他の機能例を示すブロック図である。
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の情報処理装置を示す図である。
第1の実施の形態の情報処理装置10は、複数のジョブの実行状況を監視することを支援する。情報処理装置10は、オペレータが操作する端末装置としてのクライアントコンピュータでもよいし、サーバコンピュータであってもよい。ジョブは、情報処理装置10で実行されていてもよいし、他のコンピュータで実行されていてもよい。
情報処理装置10は、記憶部11および生成部12を有する。記憶部11は、RAM(Random Access Memory)などの揮発性記憶装置でもよいし、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発性記憶装置でもよい。生成部12は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などを含み得る。生成部12は、プログラムを実行するプロセッサであってもよい。ここで言う「プロセッサ」には、複数のプロセッサの集合(マルチプロセッサ)も含まれ得る。
記憶部11は、ジョブの実行順序情報を含むジョブ情報13を記憶する。実行順序情報は、ジョブが開始される順序を示す情報であり、ジョブ間の依存関係を表していると言うこともできる。あるジョブの直前に、当該ジョブに処理を引き渡す前段ジョブが定義されていることがある。当該ジョブは、前段ジョブに依存していると言える。また、あるジョブの直後に、当該ジョブから処理を引き継ぐ後段ジョブが定義されていることがある。
各ジョブは、原則として前段ジョブが終了してから開始される。あるジョブに対して、複数の前段ジョブが定義されていることもある。その場合、例えば、当該ジョブは、複数の前段ジョブの終了を待ち合わせて開始される。このようなジョブは、待ち合わせ点であると言うこともできる。また、あるジョブに対して、複数の後段ジョブが定義されていることもある。その場合、例えば、当該ジョブが終了した後、複数の後段ジョブが並列に実行される。このようなジョブは、分岐点であると言うこともできる。
ここで、図1に示した例では、ジョブ情報13にジョブJ1〜J7の情報が含まれている。ジョブJ1の後段ジョブはジョブJ2〜J4である。ジョブJ2の前段ジョブはジョブJ1であり、後段ジョブはジョブJ5である。ジョブJ3の前段ジョブはジョブJ1であり、後段ジョブはジョブJ5である。ジョブJ4の前段ジョブはジョブJ1であり、後段ジョブはジョブJ6である。ジョブJ5の前段ジョブはジョブJ2,J3であり、後段ジョブはジョブJ7である。ジョブJ6の前段ジョブはジョブJ4であり、後段ジョブはジョブJ7である。ジョブJ7の前段ジョブはジョブJ5,J6である。
生成部12は、ジョブ情報13に基づいて、複数のジョブの中から選択されたジョブが選択的に表示されたグラフ14を生成する。グラフ14は、選択されたジョブに対応するノードとノード間を結ぶリンクとを含む。グラフ14に表示されるジョブは、ジョブ情報13が示す複数のジョブの一部(サブセット)であることがある。グラフ14に含まれるリンクは、選択されたジョブの実行順序を表す。グラフ14には、ジョブ情報13が示す全てのジョブが表示されるとは限らず、一部のジョブが省略されることがある。
グラフ14を生成するにあたり、生成部12は、複数のジョブそれぞれについて前段ジョブ数と後段ジョブ数を算出する。そして、生成部12は、各ジョブの前段ジョブ数と後段ジョブ数に基づいて、複数のジョブの中からグラフ14に表示するジョブを選択する。選択するジョブが、ジョブ情報13が示すジョブの一部である場合、グラフ14に表示するジョブを限定していると言える。例えば、生成部12は、前段ジョブ数と後段ジョブ数の少なくとも一方が閾値以上であるジョブを選択する。生成されたグラフ14は、情報処理装置10に接続されたディスプレイに表示されてもよく、他のコンピュータに送信されて当該他のコンピュータに接続されたディスプレイに表示されてもよい。
ここで、図1に示した例では、ジョブJ1の後段ジョブ数は3である。ジョブJ2〜J4の前段ジョブ数は1であり、後段ジョブ数は1である。ジョブJ5の前段ジョブ数は2であり、後段ジョブ数は1である。ジョブJ6の前段ジョブ数は1であり、後段ジョブ数は1である。ジョブJ7の前段ジョブ数は2である。例えば、生成部12は、閾値=2と設定し、ジョブJ1,J5,J7を選択し、ジョブJ2〜J4,J6を選択しない。この場合、生成部12は、ジョブJ1,J5,J7に対応するノードを含み、ジョブJ2〜J4,J6に対応するノードが省略されたグラフ14を生成する。
なお、生成部12は、グラフ14が表示される表示領域の大きさに応じて閾値を変更してもよい。例えば、生成部12は、選択したジョブに対応するノードの全て(または大部分)が表示領域に収容できることを条件として、最小の整数を閾値に決定する。また、上記の説明ではジョブ情報13が記憶部11に記憶されているとしたが、生成部12が他のコンピュータからジョブ情報13を取得するようにしてもよい。
第1の実施の形態の情報処理装置10によれば、各ジョブの前段ジョブ数と後段ジョブ数とに基づいて、複数のジョブの中から選択されたジョブが選択的にグラフ14に表示される。これにより、コンピュータに登録されたジョブが多い場合であっても、グラフ14に含まれるノード(可視化するジョブ)を減らすことが可能となり、複数のジョブを含む業務フロー全体の実行状況を画面上で俯瞰することが可能となる。
また、業務フローを監視する上で重要である可能性が高いジョブが監視ポイントとして自動的に設定され、有用性の高いグラフ14が生成される。例えば、前段ジョブや後段ジョブが多いジョブを抽出することで、分岐点や待ち合わせ点など、遅延を監視する上で重要である可能性が高いジョブが監視ポイントとして設定される。また、ジョブが予め監視に適した形式に階層化されていない場合であっても、適切な監視ポイントが設定されたグラフ14を生成できる。よって、ジョブの実行状況の監視が容易になる。
[第2の実施の形態]
図2は、第2の実施の形態のシステムを示す図である。
第2の実施の形態のシステムは、ジョブ実行サーバ31,32、クライアント100およびジョブ管理サーバ200を有する。ジョブ実行サーバ31,32、クライアント100およびジョブ管理サーバ200は、ネットワーク33に接続されている。
ジョブ実行サーバ31,32は、プログラムによって予め定義されたジョブを実行するサーバコンピュータである。ジョブは、繰り返し行われる業務上の定型的な作業を、コンピュータが実行するひと纏まりの処理として定義したものである。1つのジョブは、例えば、1つのコマンドに対応する。ジョブは、所定のスケジュールに従って繰り返し(例えば、1日に1回)実行される。ネットワーク33は、LAN(Local Area Network)を含んでもよいし、インターネットなどの広域ネットワークを含んでもよい。
クライアント100は、ユーザ(例えば、システムのオペレータ)が操作する端末装置としてのクライアントコンピュータである。クライアント100は、ネットワーク33を介してジョブ管理サーバ200にアクセスし、ジョブ管理サーバ200からジョブ管理に関するデータを取得する。そして、クライアント100は、取得したデータに基づいて、ジョブ実行サーバ31,32によるジョブの実行状況を可視化したグラフを生成する。ユーザは、生成されたグラフを見てジョブの実行状況を監視する。ジョブの遅延や異常終了が確認された場合、ユーザは対応措置をとることができる。
ジョブ管理サーバ200は、ジョブ開始のスケジュールや複数のジョブの順序関係、ジョブの進行状況などを管理するサーバコンピュータである。例えば、ジョブ管理サーバ200は、予め定義されたスケジュールに従って、ジョブ実行サーバ31,32にジョブの開始を指示する。また、ジョブ管理サーバ200は、ネットワーク33を介してジョブ実行サーバ31,32から、ジョブの実行結果を示す情報を収集する。また、ジョブ管理サーバ200は、ジョブ管理に関するデータをクライアント100に提供する。
なお、クライアント100は、第1の実施の形態の情報処理装置10の一例である。上記では、ジョブを実行するジョブ実行サーバ31,32とジョブを管理するジョブ管理サーバ200とを分けたが、ジョブ管理サーバ200がジョブを実行してもよい。
図3は、クライアントのハードウェア例を示すブロック図である。
クライアント100は、CPU101、RAM102、HDD103、画像信号処理部104、入力信号処理部105、媒体リーダ106および通信インタフェース107を有する。CPU101は、第1の実施の形態の生成部12の一例であり、RAM102またはHDD103は、第1の実施の形態の記憶部11の一例である。
CPU101は、プログラムの命令を実行する演算回路を含むプロセッサである。CPU101は、HDD103に記憶されているプログラムやデータの少なくとも一部をRAM102にロードし、プログラムを実行する。なお、CPU101は複数のプロセッサコアを備えてもよく、クライアント100は複数のプロセッサを備えてもよく、以下で説明する処理を複数のプロセッサまたはプロセッサコアを用いて並列実行してもよい。また、複数のプロセッサの集合(マルチプロセッサ)を「プロセッサ」と呼んでもよい。
RAM102は、CPU101が実行するプログラムやCPU101が演算に用いるデータを一時的に記憶する揮発性メモリである。なお、クライアント100は、RAM以外の種類のメモリを備えてもよく、複数個のメモリを備えてもよい。
HDD103は、OS(Operating System)やアプリケーションソフトウェアなどのソフトウェアのプログラム、および、データを記憶する不揮発性の記憶装置である。なお、クライアント100は、フラッシュメモリやSSD(Solid State Drive)などの他の種類の記憶装置を備えてもよく、複数の不揮発性の記憶装置を備えてもよい。
画像信号処理部104は、CPU101からの命令に従って、クライアント100に接続されたディスプレイ41に画像を出力する。ディスプレイ41としては、CRT(Cathode Ray Tube)ディスプレイ、液晶ディスプレイ(LCD:Liquid Crystal Display)、プラズマディスプレイ(PDP:Plasma Display Panel)、有機EL(OEL:Organic Electro-Luminescence)ディスプレイなどを用いることができる。
入力信号処理部105は、クライアント100に接続された入力デバイス42から入力信号を取得し、CPU101に出力する。入力デバイス42としては、マウスやタッチパネルやタッチパッドやトラックボールなどのポインティングデバイス、キーボード、リモートコントローラ、ボタンスイッチなどを用いることができる。また、クライアント100に、複数の種類の入力デバイスが接続されていてもよい。
媒体リーダ106は、記録媒体43に記録されたプログラムやデータを読み取る読み取り装置である。記録媒体43として、例えば、フレキシブルディスク(FD:Flexible Disk)やHDDなどの磁気ディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光ディスク、光磁気ディスク(MO:Magneto-Optical disk)、半導体メモリなどを使用できる。媒体リーダ106は、例えば、記録媒体43から読み取ったプログラムやデータをRAM102またはHDD103に格納する。
通信インタフェース107は、ネットワーク33に接続され、ネットワーク33を介してジョブ実行サーバ31,32やジョブ管理サーバ200と通信を行うインタフェースである。通信インタフェース107は、ケーブルで通信装置と接続される有線通信インタフェースでもよいし、基地局と無線リンクで接続される無線通信インタフェースでもよい。
なお、クライアント100は、媒体リーダ106を備えていなくてもよい。また、ディスプレイ41や入力デバイス42が、クライアント100の筐体と一体に形成されていてもよい。ジョブ実行サーバ31,32およびジョブ管理サーバ200も、クライアント100と同様のハードウェアを用いて実現できる。ただし、ジョブ実行サーバ31,32やジョブ管理サーバ200は、端末装置からネットワーク33経由で制御される場合には、画像信号処理部104や入力信号処理部105を備えていなくてもよい。
図4は、監視フロー画面の例を示す図である。
クライアント100は、ジョブ管理サーバ200から取得したデータに基づいて、図4に示すような監視フロー画面44を生成しディスプレイ41に表示する。
監視フロー画面44には、監視フローとして、ジョブまたはジョブネットに対応するノードとジョブ間の実行順序に応じたリンクとを含むグラフ(有向グラフ)が表示される。ジョブネットは、複数のジョブが予め階層化されている場合に、下位階層のジョブ群を上位階層から見たものである。ジョブネットに対応するノードを展開する(下位方向へ階層を辿る)と、下位階層のジョブ群に対応する別のグラフが表示される。ただし、以下では説明を簡単にするために、1つのノードが1つのジョブに対応すると仮定する。
ノードには、ジョブの状態を示す情報が付加される。ジョブの状態には、例えば、正常終了、実行中、異常終了などが含まれる。ユーザは、監視フロー画面44を見ることで、遅延しているジョブや異常終了したジョブがないか確認することができる。ただし、ジョブ実行サーバ31,32が実行し得る全てのジョブをグラフ上に表示しようとすると、ジョブの増加に伴って、グラフ全体を1つの画面に収めることが難しくなる。そこで、第2の実施の形態のクライアント100は、複数のジョブの中から監視ポイントを選択し、選択した監視ポイントに限定してグラフ上に表示するようにする。
以下の説明では、ジョブ管理サーバ200に登録されたジョブ群の例として、図4に示すようなジョブ1〜13を含むジョブ群を考える。ジョブ群は、連続的に実行されるジョブの集合であって、1つの始点と1つの終点を含む。始点以外のジョブの前には、1つ前に実行されるべき1または2以上のジョブ(先行ジョブ)が存在する。終点以外のジョブの後には、1つ後に実行されるべき1または2以上のジョブ(後続ジョブ)が存在する。
あるジョブは、原則として先行ジョブが終了したことを受けて開始される。2以上の先行ジョブがある場合には、それらの先行ジョブが全て終了したことを受けて開始される。先行ジョブが2以上あるジョブは、待ち合わせ点と言うことができる。ただし、先行ジョブが終了したこと以外の開始条件が定義されているジョブもある。そのような開始条件には、開始時刻、所定のファイルの受け取り、所定のイベントの発生などが含まれ得る。また、2以上の後続ジョブがある場合には、それらの後続ジョブが並行して実行され得る。後続ジョブが2以上あるジョブは、分岐点と言うことができる。
ジョブ1は始点・分岐点であり、後続ジョブはジョブ2,4〜6である。ジョブ2の先行ジョブはジョブ1、後続ジョブはジョブ3である。ジョブ3の先行ジョブはジョブ2、後続ジョブはジョブ7である。ジョブ4,5の先行ジョブはジョブ1、後続ジョブはジョブ7である。ジョブ6は分岐点であり、先行ジョブはジョブ1、後続ジョブはジョブ7,8である。ジョブ7は待ち合わせ点であり、先行ジョブはジョブ3〜6、後続ジョブはジョブ9である。ジョブ8の先行ジョブはジョブ6、後続ジョブはジョブ9である。ジョブ9は待ち合わせ点・分岐点であり、先行ジョブはジョブ7,8、後続ジョブはジョブ10〜12である。ジョブ10〜12の先行ジョブはジョブ9、後続ジョブはジョブ13である。ジョブ13は待ち合わせ点・終点であり、先行ジョブはジョブ10〜12である。
なお、監視フロー画面44の表示領域は、複数の区間に分割されている。1つの区画は、1つのノードを収容することができる。ノードの大きさは予め設定されており、ノードを収容できる区画の数は表示領域の大きさに応じて決まる。各区間は、座標によって特定することが可能である。例えば、監視フロー画面44の横方向をx軸、縦方向をy軸とし、座標(x,y)によって複数の区間それぞれが特定される。
図5は、クライアントとジョブ管理サーバの機能例を示すブロック図である。
クライアント100は、制御情報記憶部111、データ取得部121、操作検出部122、グラフ生成部123および表示制御部124を有する。制御情報記憶部111は、RAM102またはHDD103に確保した記憶領域として実現できる。データ取得部121、操作検出部122、グラフ生成部123および表示制御部124は、CPU101が実行するソフトウェアのモジュールとして実現できる。ただし、これらの機能の一部または全部を、ASICなどの専用の電子回路を用いて実現してもよい。
制御情報記憶部111は、グラフ生成部123の動作を制御するための制御情報を記憶する。制御情報には、ユーザによって指定された設定情報と、グラフ生成の過程で算出された中間情報とが含まれる。制御情報は、操作検出部122を介してグラフ生成部123に提供される。また、制御情報は、ユーザ操作またはグラフ生成部123からの応答に応じて、操作検出部122により更新される。制御情報の詳細は後述する。
データ取得部121は、グラフ生成部123からの要求に応じて、ネットワーク33を介してジョブ管理サーバ200にアクセスする。そして、データ取得部121は、ジョブ管理に関するデータをジョブ管理サーバ200から取得し、グラフ生成部123に提供する。取得されるデータには、後述するようにジョブ情報と履歴情報とが含まれる。
操作検出部122は、監視フロー画面44に対する入力デバイス42を用いたユーザ操作を検出する。操作検出部122は、可視化を指示するユーザ操作が検出されると、グラフ生成部123にグラフ生成を要求する。このとき、操作検出部122は、制御情報記憶部111から制御情報を読み出してグラフ生成部123に提供する。そして、操作検出部122は、グラフ生成部123が生成したグラフを表示制御部124に提供する。
また、操作検出部122は、表示形態の変更を指示するユーザ操作が検出されると、変更後の表示形態に従ってグラフを再生成するようグラフ生成部123に要求し、新たなグラフを表示制御部124に提供する。また、操作検出部122は、設定変更のユーザ操作が検出されると、制御情報記憶部111に記憶された制御情報を更新する。操作検出部122は、グラフ生成部123からの応答に応じて制御情報を更新することもある。
グラフ生成部123は、操作検出部122からの要求に応じて、ジョブの実行状況を可視化したフラグを生成する。グラフ生成部123は、操作検出部122からグラフ生成が要求されると、ジョブ管理に関するデータをデータ取得部121に要求する。そして、グラフ生成部123は、データ取得部121から取得したデータと操作検出部122から提供された制御情報に基づいてグラフを生成し、操作検出部122に提供する。このとき、グラフ生成部123は、制御情報を適宜更新する。グラフ生成の詳細は後述する。
表示制御部124は、ディスプレイ41に表示する画面を制御する。表示制御部124は、操作検出部122からグラフを取得すると、監視フロー画面44の所定の表示領域にグラフを描画し、ディスプレイ41に監視フロー画面44を出力する。
ジョブ管理サーバ200は、ジョブ情報記憶部211、履歴情報記憶部212およびデータ提供部221を有する。ジョブ情報記憶部211および履歴情報記憶部212は、RAMまたはHDDに確保した記憶領域として実現できる。データ提供部221は、CPUが実行するソフトウェアのモジュールとして実現できる。ただし、これらの機能の一部または全部を、ASICなどの専用の電子回路を用いて実現してもよい。
ジョブ情報記憶部211は、ジョブの定義および今回の(例えば、各ジョブが1日1回実行される場合には今日の)ジョブの実行状況を示すジョブ情報を記憶する。ジョブの定義には、先行ジョブ・後続ジョブの関係や、先行ジョブが終了したこと以外の開始条件が含まれる。今回のジョブの実行状況には、開始時刻・終了時刻や、ジョブの状態(例えば、実行中・正常終了など)が含まれる。ジョブ情報の詳細は後述する。
履歴情報記憶部212は、過去所定回数の(例えば、各ジョブが1日1回実行される場合に過去1ヶ月間の)ジョブの実行状況を示す履歴情報を記憶する。過去のジョブの実行状況には、開始時刻・終了時刻が含まれる。履歴情報の詳細は後述する。
データ提供部221は、クライアント100からの要求に応じて、ジョブ情報記憶部211からジョブ情報を読み出しクライアント100に送信する。また、データ提供部221は、クライアント100からの要求に応じて、履歴情報記憶部212から履歴情報を読み出しクライアント100に送信する。データ提供部221は、ジョブ情報の要求と履歴情報の要求とをクライアント100から別個に受け付け、ジョブ情報と履歴情報とを別個に送信してもよい。また、データ提供部221は、ジョブ情報と履歴情報を一緒に送信してもよい。以下の説明では、ジョブ情報と履歴情報とを別個に送信するものとする。
図6は、ジョブ情報テーブルの例を示す図である。
ジョブ情報テーブル213は、ジョブ情報記憶部211に記憶される。ジョブ情報テーブル213は、ジョブ番号、ジョブ名、コマンド、先行ジョブ数、先行ジョブ、状態、開始時刻、終了時刻、開始時刻条件、終了予定時刻および他の開始条件の項目を含む。
ジョブ番号は、ジョブを識別するための識別情報である。ジョブ名は、ユーザがジョブの内容を認識しやすいようにジョブに付与した名称である。ただし、ジョブ名としてジョブ番号を用いてもよい。コマンドの項目には、ジョブに対応するプログラムの実行ファイルのパスおよびファイル名が記載される。ジョブの開始条件が満たされると、この実行ファイルが起動される。先行ジョブ数の項目には、先行ジョブの数が記載される。始点の先行ジョブ数は0であり、始点以外のジョブの先行ジョブ数は1以上である。先行ジョブの項目には、1以上の先行ジョブのジョブ番号が記載される。
状態の項目には、ジョブの状態を示す情報が記載される。ジョブの状態には、待ち(未実行)・実行中・正常終了・異常終了が含まれる。開始時刻の項目には、待ち状態以外のジョブについて、当該ジョブが開始された時刻が記載される。終了時刻の項目には、正常終了または異常終了したジョブについて、当該ジョブが終了した時刻が記載される。
開始時刻条件の項目には、ジョブを開始すべき時刻が記載される。開始時刻条件が設定されている場合、先行ジョブが終了しても、その時刻になるまでジョブは開始されない。終了予定時刻の項目には、ユーザが想定するジョブの終了時刻が記載される。他の開始条件の項目には、先行ジョブの終了および開始時刻条件以外の開始条件が記載される。他の開始条件には、所定のファイルの到着や所定のイベントの発生が含まれる。他の開始条件が設定されている場合、先行ジョブが終了しても、その条件が満たされるまでジョブは開始されない。なお、開始時刻条件、終了予定時刻および他の開始条件は、ジョブによって設定されていることもあるし設定されていないこともある。
図7は、履歴情報テーブルの例を示す図である。
履歴情報テーブル214は、履歴情報記憶部212に記憶される。履歴情報記憶部212には、過去所定回数のジョブの実行状況が登録される。履歴情報テーブル214は、世代番号、ジョブ番号、ジョブ名、開始時刻および終了時刻の項目を含む。
世代番号は、複数回のジョブの実行を互いに区別するための識別情報である。例えば、ジョブが1日1回実行されるものである場合、世代番号によって昨日のジョブ実行と一昨日のジョブ実行とが区別される。なお、世代番号として日付を用いてもよい。ジョブ番号およびジョブ名は、ジョブ情報テーブル213に記載されたものと同様である。開始時刻の項目には、過去にジョブが実行されたときの開始時刻が記載される。終了時刻の項目には、過去にジョブが実行されたときの終了時刻が記載される。
なお、履歴情報テーブル214には、ジョブ情報テーブル213に記載されたコマンド、先行ジョブ数、先行ジョブ、状態、開始時刻条件、終了予定時刻および他の開始条件の一部または全部が含まれてもよい。また、1つの世代(1回のジョブ群の実行)毎に履歴情報テーブル214を分割し、履歴情報記憶部212に格納するようにしてもよい。
図8は、制御情報テーブルの例を示す図である。
制御情報テーブル112は、制御情報記憶部111に記憶される。制御情報テーブル112は、ユーザ指定ジョブ、画面サイズ、画面の区画数、粒度、空き区画数、空き区画の閾値、自動再配置、部分粒度およびアクティブ監視モードの項目を含む。
ユーザ指定ジョブの項目には、複数のジョブのうちユーザが監視ポイントに指定したジョブのジョブ番号が列挙される。ユーザが指定した監視ポイントは、表示領域の大きさにかかわらず固定的にグラフ上に表示される。画面サイズは、監視フロー画面44内のグラフが表示される表示領域の大きさである。画面サイズは、クライアント100に接続されたディスプレイ41の解像度に応じて自動的に設定されるようにしてもよい。画面の区画数は、横方向および縦方向に配置できるノードの数を示す。画面の区画数は、予め設定されたノード1つあたりの大きさと画面サイズから算出できる。
粒度は、グラフ上に可視化するジョブを先行ジョブ数および後続ジョブ数に応じて限定するときに用いる閾値である。先行ジョブ数と後続ジョブ数の少なくとも一方が粒度以上であるジョブが、グラフ上に可視化される。空き区画数は、画面の区画数からグラフに含まれるノードの数を引いた値である。グラフに含まれるノードが画面の区画数より多い場合(グラフ全体を表示領域に収容できない場合)、空き区画数は負になる。空き区画の閾値は、画面の区画に対する空き区画の割合についての閾値である。粒度を決定した後の空き区画の割合が閾値以上ある場合、所定の条件を満たすジョブをグラフに追加する。
自動再配置の項目には、監視フロー画面44上でノードの配置を自動調整するか否かを示すフラグが記載される。自動再配置がOFFの場合、表示するノードを限定する前のノード間の相対的な位置関係が維持される。一方、自動再配置がONの場合、残ったノードが元の位置関係と関係なく詰めて表示される。部分粒度は、ユーザが指定したグラフの一部分に適用する部分的な粒度である。全体の粒度とは異なる粒度をグラフの一部分に対して適用することで、当該部分のみ詳細化する(表示するノードを増やす)ことができる。
アクティブ監視モードの項目には、アクティブ監視モードでグラフを表示するか否かを示すフラグが記載される。アクティブ監視モードがOFFの場合(通常モードの場合)、複数のジョブ全体を俯瞰できるように、始点および終点に対応するノードがグラフに含まれる。これに対し、アクティブ監視モードがONの場合、可視化するジョブが実行中ジョブおよび異常終了ジョブの存在する範囲(アクティブエリア)に限定される。アクティブ監視モードでは、グラフに始点および終点に対応するノードが含まれるとは限らない。
図9は、グラフ生成の手順例を示すフローチャートである。
(S10)データ取得部121は、ジョブ管理サーバ200にアクセスし、ジョブ管理サーバ200からジョブ情報(ジョブ情報テーブル213)を取得する。
(S11)グラフ生成部123は、監視ポイントの初期設定を行う。ここで最初に設定される監視ポイントは、粒度nに関係なくグラフ上に固定的に表示されるジョブであり、ユーザ指定ジョブと始点のジョブと終点のジョブとを含む。
(S12)グラフ生成部123は、グラフの全部または大部分が監視フロー画面44の表示領域に収容されるように粒度nを決定する。例えば、グラフ生成部123は、粒度nを1から順に上げていき、監視ポイントの数が画面の区画数以下になるときの最小の粒度nを見つける。初期設定した監視ポイントに加えて、先行ジョブ数と後続ジョブ数の少なくとも一方が粒度n以上であるジョブが監視ポイントに設定される。ここで設定される監視ポイントは、粒度nが1である場合を除き、分岐点および待ち合わせ点である。
(S13)グラフ生成部123は、グラフ上に表示するジョブが少なくなり過ぎないように、ステップS11,S12で監視ポイントを設定した後の空き区画数に応じて、監視ポイントを追加する。追加の監視ポイントの候補には、開始時刻条件または終了予定時刻が設定されたジョブや、開始条件としてファイルの待ち合わせまたはイベントの待ち合わせが設定されたジョブが含まれる。また、追加の監視ポイントの候補には、過去複数回実行されたときの実行時間のばらつき(分散度)が大きいジョブが含まれる。
(S14)グラフ生成部123は、ステップS11〜S13で設定された監視ポイントの実行タイミングの前後関係を判定する。これにより、設定された監視ポイントに対応するノードと、判定された前後関係に応じたリンクとを含むグラフが生成される。
(S15)グラフ生成部123は、制御情報テーブル112において自動再配置がONに設定されているか判断する。自動再配置=ONの場合はステップS16に処理を進め、自動再配置=OFFの場合はステップS17に処理を進める。
(S16)グラフ生成部123は、監視ポイントに対応するノードの配置を決定する。このとき、グラフ生成部123は、表示するノードを限定する前の元の位置関係にかかわらず、ノードを詰めて配置する。そして、ステップS18に処理を進める。
(S17)グラフ生成部123は、監視ポイントに対応するノードの配置を決定する。このとき、グラフ生成部123は、表示するノードを限定する前の元の相対的な位置関係を維持して、グラフを縮小する。例えば、ノードの大きさは変えず、グラフの全体または大部分が表示領域に収容されるようにリンクの長さを一定の倍率で縮小する。
(S18)操作検出部122は、グラフ生成部123が生成したグラフを表示制御部124に提供する。表示制御部124は、グラフを監視フロー画面44上に表示する。
図10は、初期設定の手順例を示すフローチャートである。図10に示すフローチャートの処理が、上記のステップS11において実行される。
(S110)グラフ生成部123は、データ取得部121からジョブ情報テーブル213を取得し、ジョブ情報テーブル213に登録されているジョブを1つ選択する。
(S111)グラフ生成部123は、選択したジョブが、制御情報テーブル112にユーザ指定ジョブとして登録されているか判断する。ユーザ指定ジョブである場合はステップS115に処理を進め、それ以外の場合はステップS112に処理を進める。
(S112)グラフ生成部123は、選択したジョブが始点であるか、すなわち、先行ジョブ数が0であるか判断する。先行ジョブ数=0の場合はステップS115に処理を進め、それ以外の場合(始点でない場合)はステップS113に処理を進める。
(S113)グラフ生成部123は、ジョブ情報テーブル213を参照して、ステップS110で選択したジョブを先行ジョブに含むジョブ(後続ジョブ)の数を算出する。
(S114)グラフ生成部123は、選択したジョブが終点であるか、すなわち、ステップS113で算出した後続ジョブ数が0であるか判断する。後続ジョブ数=0の場合はステップS115に処理を進め、それ以外の場合はステップS116に処理を進める。
(S115)グラフ生成部123は、選択したジョブを監視ポイントに設定する。すなわち、ユーザ指定ジョブと始点のジョブと終点のジョブが監視ポイントに設定される。
(S116)グラフ生成部123は、ステップS110においてジョブ情報テーブル213に登録された全てのジョブを選択したか判断する。未選択のジョブがある場合はステップS110に処理を進め、全てのジョブを選択した場合は処理を終了する。
図11は、粒度決定の手順例を示すフローチャートである。図11に示すフローチャートの処理が、上記のステップS12において実行される。
(S120)グラフ生成部123は、制御情報テーブル112に記載された画面サイズから画面の区画数、すなわち、監視フロー画面44に表示可能なノードの数を算出する。例えば、グラフ生成部123は、表示領域の横の長さと縦の長さをそれぞれノードの一辺の長さで割り、横方向と縦方向に配置可能なノードの数を掛ける。
(S121)グラフ生成部123は、粒度nを仮に1に設定する。
(S122)グラフ生成部123は、ジョブ情報テーブル213に登録されたジョブの中から、先行ジョブ数がn未満でありかつ後続ジョブ数がn未満のジョブを検索する。後続ジョブ数は、例えば、上記のステップS113で算出したものを利用できる。
(S123)グラフ生成部123は、ステップS122で検索されたジョブのうち、上記のステップS11で監視ポイントに設定されたもの(ユーザ指定ジョブ、始点のジョブおよび終点のジョブ)以外のジョブを、監視ポイントから除外する。なお、粒度n=1の場合は、ステップS122の条件に該当するジョブは存在しない。このため、粒度n=1のときは、ステップS122,S123の処理を実行しなくてもよい。
(S124)グラフ生成部123は、除外されずに残っているジョブの数が、ステップS120で算出した画面の区画数以下であるか判断する。すなわち、現在の粒度nを採用した場合にノードを表示領域に収容できるか判断する。条件を満たす場合はステップS127に処理を進め、条件を満たさない場合はステップS125に処理を進める。
(S125)グラフ生成部123は、残っているジョブが上記のステップS11で監視ポイントに設定されたもののみであるか判断する。初期設定のジョブのみである場合はステップS127に処理を進め、それ以外の場合はステップS126に処理を進める。
(S126)グラフ生成部123は、粒度nを1つ増加させて(粒度nをインクリメントして)、ステップS122に処理を進める。
(S127)グラフ生成部123は、現在の粒度nを確定する。そして、グラフ生成部123は、初期設定の監視ポイントに加えて、先行ジョブ数と後続ジョブ数の少なくとも一方が粒度n以上であるジョブを監視ポイントに設定する。ここで設定される監視ポイントは、粒度n=1である場合を除き、分岐点および待ち合わせ点である。
図12は、粒度に応じた監視ポイントの変化例を示す第1の図である。
ここでは、図4で説明したジョブ1〜13について、図10,11のフローチャートに従って監視ポイントを選択する場合を考える。なお、ユーザ指定ジョブは存在しない。ジョブ1,13は、始点および終点であるため、固定的に監視ポイントに設定される。
粒度n=1のときは、ジョブ1〜13の全てが監視ポイントとなる。グラフの表示領域に13個のノードを収容できる場合、粒度n=1に決定される。粒度n=2のときは、ジョブ1〜13のうちジョブ1,6,7,9,13が監視ポイントになる。ジョブ2〜5,8,10〜12は、先行ジョブ数と後続ジョブ数が1であるため、監視ポイントから除外される。グラフの表示領域に5個のノードを収容できる場合、粒度n=2に決定される。
なお、後述するように、グラフ上の2つのノードを結ぶリンクには、2つのノードが示す監視ポイントの間に存在する省略されたジョブの数が記載される。省略されたジョブは、一方のノードから他方のノードへ至る全ての経路上に存在するジョブである。省略されたジョブがない場合、数字は記載されない。ジョブ1,7間には、4個のジョブ(ジョブ2〜5)が省略されている。ジョブ6,9間には、1個のジョブ(ジョブ8)が省略されている。ジョブ9,13間には、3個のジョブ(ジョブ10〜12)が省略されている。
図13は、粒度に応じた監視ポイントの変化例を示す第2の図である。
粒度n=3のときは、ジョブ1,7,9,13が監視ポイントになる。ジョブ6は、先行ジョブ数が1で後続ジョブ数が2であるため、粒度n=3になると監視ポイントから除外される。グラフの表示領域に4個のノードを収容できる場合、粒度n=3に決定される。このとき、ジョブ1,7間には、5個のジョブ(ジョブ2〜6)が省略されている。ジョブ1,9間には、2個のジョブ(ジョブ6,8)が省略されている。
粒度n=4のときは、ジョブ1,7,13が監視ポイントになる。ジョブ9は、先行ジョブ数が2で後続ジョブ数が3であるため、粒度=4になると監視ポイントから除外される。グラフの表示領域に3個のノードを収容できる場合、粒度=4に決定される。このとき、ジョブ1,13間には、6個のジョブ(ジョブ6,8〜12)が省略されている。ジョブ7,13間には、4個のジョブ(ジョブ9〜12)が省略されている。
粒度=5のときは、ジョブ1,13が監視ポイントになる。ジョブ7は、先行ジョブ数が4で後続ジョブ数が1であるため、粒度n=5になると監視ポイントから除外される。このとき、ジョブ1,13間には、11個のジョブ(ジョブ2〜12)が省略されている。省略されずに残ったジョブは、初期設定のジョブのみである。このように、粒度を上げていくと、最終的には初期設定のジョブのみがグラフ上に表示されることになる。
図14は、監視ポイント追加の手順例を示すフローチャートである。図14に示すフローチャートの処理が、上記のステップS13において実行される。
(S130)グラフ生成部123は、上記のステップS12が終了した時点の空き区画の割合を算出する。例えば、グラフ生成部123は、画面の区画数からステップS12までに設定した監視ポイントの数を引いて空き区画数を算出し、空き区画数を画面の区画数で割る。そして、グラフ生成部123は、空き区画の割合が制御情報テーブル112に記載された空き区画の閾値以上であるか判断する。条件を満たす場合はステップS131に処理を進め、条件を満たさない場合は処理を終了する。なお、空き区画の閾値は負の値でもよい。その場合、少数のノードが表示領域の外に出ることが許容される。
(S131)グラフ生成部123は、ジョブ情報テーブル213から、開始時刻条件および終了予定時刻の少なくとも一方が設定されたジョブを検索する。そして、グラフ生成部123は、検索されたジョブがまだ監視ポイントに設定されていない場合、当該ジョブを監視ポイントに追加する。なお、このようなジョブを監視ポイントに追加するのは、ユーザがその実行タイミングに注目しており遅延を監視することが好ましいからである。
(S132)グラフ生成部123は、ステップS131が終了した時点の空き区画の割合を算出し、空き区画の割合が閾値以上であるか判断する。条件を満たす場合はステップS133に処理を進め、条件を満たさない場合は処理を終了する。
(S133)グラフ生成部123は、ジョブ情報テーブル213から、開始条件としてファイルの待ち合わせまたはイベントの待ち合わせが設定されたジョブを検索する。そして、グラフ生成部123は、検索されたジョブがまだ監視ポイントに設定されていない場合、当該ジョブを監視ポイントに追加する。なお、このようなジョブを監視ポイントに追加するのは、先行ジョブが終了しても開始できないときがあり、遅延原因を特定する上でその遅延の有無を監視することが好ましいからである。
(S134)グラフ生成部123は、ステップS133が終了した時点の空き区画の割合を算出し、空き区画の割合が閾値以上であるか判断する。条件を満たす場合はステップS135に処理を進め、条件を満たさない場合は処理を終了する。
(S135)データ取得部121は、ジョブ管理サーバ200にアクセスし、ジョブ管理サーバ200から履歴情報(履歴情報テーブル214)を取得する。
(S136)グラフ生成部123は、履歴情報テーブル214に基づいて、各ジョブの過去所定回数(例えば、過去1ヶ月分)の実行時間の分散度を算出する。分散度を表す指標として、例えば、統計学上の分散や標準偏差などを用いることができる。例えば、グラフ生成部123は、履歴情報テーブル214に記載された終了時刻と開始時刻の差から各回の実行時間を算出し、実行時間の分布を求める。なお、グラフ生成部123は、まだ監視ポイントに設定されていないジョブについてのみ分散度を算出してもよい。
(S137)グラフ生成部123は、まだ監視ポイントに設定されていないジョブを、ステップS136で算出した分散度が大きい順に並べる。そして、グラフ生成部123は、分散度が大きい方から、ステップS133が終了した時点の空き区画数だけジョブを選択し、選択したジョブを監視ポイントに追加する。なお、このようなジョブを監視ポイントに追加するのは、他のジョブより遅延するリスクが大きいためである。
図15は、監視ポイントの追加例を示す図である。
ここでは、上記のステップS12において粒度n=4に決定された場合を考える。前述のように、粒度n=4の場合、始点および終点であるジョブ1,13に加えて、先行ジョブ数が4であるジョブ7が監視ポイントに設定される。その後、上記のステップS131,S133,S137の何れかにおいて、ジョブ6が監視ポイントに追加されたとする。
すると、ジョブ1,6,7,13がグラフ上に表示される。ジョブ1,7間には、4個のジョブ(ジョブ2〜5)が省略されている。ジョブ6,13間には、5個のジョブ(ジョブ8〜12)が省略されている。ジョブ7,13間には、4個のジョブ(ジョブ9〜12)が省略されている。粒度nを1つずつ上げていくと、ある時点で監視ポイントの候補が大きく減少して監視ポイントが少なくなり過ぎるおそれがある。そこで、上記のように監視ポイントを追加することで、グラフのノード数を適切な水準に調整できる。
図16は、前後判定の手順例を示すフローチャートである。図16に示すフローチャートの処理が、上記のステップS14において実行される。
(S140)グラフ生成部123は、監視ポイントを1つ選択する。
(S141)グラフ生成部123は、ジョブ情報テーブル213を参照して、ステップS140で選択した監視ポイントの先行ジョブを列挙する。
(S142)グラフ生成部123は、省略ジョブリストを初期化する。すなわち、グラフ生成部123は、選択した監視ポイントに対応する空の省略ジョブリストを用意する。以下のステップS143〜S146は、先行ジョブ毎に再帰的に実行される。
(S143)グラフ生成部123は、着目している先行ジョブが監視ポイントに設定されているか判断する。監視ポイントである場合はステップS146に処理を進め、監視ポイントでない(省略ジョブである)場合はステップS144に処理を進める。
(S144)グラフ生成部123は、当該先行ジョブを省略ジョブリストに登録する。
(S145)グラフ生成部123は、ジョブ情報テーブル213を参照して、着目している先行ジョブの更に前の先行ジョブを列挙する。そして、グラフ生成部123は、新たに列挙した先行ジョブそれぞれについて、ステップS143〜S146の手続きを再帰的に呼び出す。このとき、現時点の省略ジョブリストを先行ジョブ毎にコピーする。
(S146)グラフ生成部123は、着目している先行ジョブを、ステップS140で選択した監視ポイントの先行監視ポイントに決定する。そして、グラフ生成部123は、ステップS140で選択した監視ポイントから当該先行監視ポイントへ至る経路についてのステップS143〜S146の再帰処理を終了する。
以上のステップS143〜S146を再帰的に実行することで、ステップS140で選択された監視ポイントに対して、1または2以上の先行監視ポイントが決定される。先行監視ポイントへ至るまでに辿った経路の数だけ省略ジョブリストが作成される。
(S147)グラフ生成部123は、同じ先行監視ポイント毎に1または2以上の省略ジョブリストに登録されたジョブを集計し、省略ジョブ数を求める。
(S148)グラフ生成部123は、ステップS140において全ての監視ポイントを選択したか判断する。未選択の監視ポイントがある場合はステップS140に処理を進め、全ての監視ポイントを選択した場合は処理を終了する。このようにして、監視ポイント間の前後関係と2つの監視ポイントの間の省略ジョブ数を決定することができる。グラフ生成部123は、決定した前後関係と省略ジョブ数に基づいて、監視ポイントに対応するノードを含みリンクに省略ジョブ数が記載されたグラフを生成できる。
図17は、ノードの自動再配置の例を示す図である。
制御情報テーブル112に自動再配置=ONと記載されている場合、上記のステップS16において監視ポイントに対応するノードが詰めて配置される。例えば、グラフ生成部123は、表示領域の左上の区画である座標(1,1)に、始点に対応するノードを配置する。また、グラフ生成部123は、後続の監視ポイントに対応するノードを、既にノードが配置された区画よりも右側(x軸の正方向)に配置する。後続の監視ポイントが複数ある場合、グラフ生成部123は、2番目以降の後続の監視ポイントを1番目の後続の監視ポイントより下側(y軸の正方向)に配置する。ただし、上記の配置方法は一例であり、グラフ生成部123は、グラフが見やすくなるように様々な配置方法を採用できる。
次に、図9の手順例に従って監視フロー画面44にグラフが表示された後、ユーザ操作に応じて表示形態を変更する例について説明する。
図18は、粒度変更の手順例を示すフローチャートである。
(S20)操作検出部122は、監視フロー画面44に対するユーザ操作を検出すると、当該ユーザ操作がグラフ全体の粒度を変更するものであるか判断する。全体の粒度を変更するユーザ操作としては、例えば、何れのリンクも選択せずにマウスのスクロールホイールを回転させる操作などが挙げられる。全体の粒度を変更する操作である場合はステップS21に処理を進め、それ以外の場合はステップS24に処理を進める。
(S21)グラフ生成部123は、ユーザ操作に応じて、制御情報テーブル112に記載された粒度nを更新する。例えば、グラフ生成部123は、スクロールホイールを特定の方向に回転させるユーザ操作が検出されたとき、粒度nを1つ減少(デクリメント)させる。粒度nが減少すると、グラフ上に表示されるノードの数が増加する。また、例えば、グラフ生成部123は、スクロールホイールを上記とは逆方向に回転させるユーザ操作が検出されたとき、粒度nを1つ増加(インクリメント)させる。
(S22)グラフ生成部123は、制御情報テーブル112に記載された部分粒度npを破棄する。例えば、グラフ生成部123は、部分粒度npを粒度nと一致させる。
(S23)グラフ生成部123は、更新後の粒度nに基づいてグラフを生成する。グラフの生成は、図9と同様の手順で行うことができる。ただし、ステップS12では、図11の手順に従って粒度nを決定するのではなく、ステップS21で決定された粒度nと各ジョブの先行ジョブ数および後続ジョブ数とを比較して、監視ポイントを選択する。粒度変更時のグラフ生成では、ステップS13の処理(監視ポイントの追加)を行わないようにしてもよい。表示制御部124は、監視フロー画面44の表示領域を再描画して、生成されたグラフが表示されるようにする。このとき、粒度変更後のグラフの全体を表示領域に収容できるとは限らない。そして、粒度変更の処理を終了する。
(S24)操作検出部122は、検出された監視フロー画面44に対するユーザ操作がグラフの一部分の粒度を変更するものであるか判断する。グラフの一部分の粒度を変更するユーザ操作としては、例えば、1つのリンクを選択してマウスのスクロールホイールを回転させる操作などが挙げられる。一部分の粒度を変更する操作である場合はステップS25に処理を進め、それ以外の場合は粒度変更の処理を終了する。
(S25)グラフ生成部123は、ユーザ操作に応じて、制御情報テーブル112に記載された部分粒度npを更新する。例えば、グラフ生成部123は、スクロールホイールを特定の方向に回転させるユーザ操作が検出されたとき、部分粒度npを1つ減少(デクリメント)させる。部分粒度npが減少すると、グラフ上に表示されるノードの数が増加する。また、例えば、グラフ生成部123は、スクロールホイールを上記とは逆方向に回転させるユーザ操作が検出されたとき、部分粒度npを1つ増加(インクリメント)させる。なお、部分粒度npの初期値は粒度nと同じである。
(S26)グラフ生成部123は、ジョブ情報テーブル213から、ユーザが選択した箇所の省略されたジョブを検索する。例えば、グラフ生成部123は、選択されたリンクの両端の監視ポイントの間に実行されるジョブを検索する。
(S27)グラフ生成部123は、更新後の部分粒度npに基づいて、選択された箇所に相当する部分グラフを生成する。部分グラフの生成は、ステップS23と同様の手順で行うことができる。ただし、処理対象とするジョブが、ユーザが選択した箇所に属するもの(図9の手順によって当初省略されたジョブを含む)に限定される。表示制御部124は、監視フロー画面44の表示領域を再描画して、生成された部分グラフを含むグラフが表示されるようにする。このとき、部分粒度変更後のグラフの全体を表示領域に収容できるとは限らない。そして、粒度変更の処理を終了する。
図19は、部分的な粒度変更の例を示す図である。
ここでは、最初にグラフが生成されたときの粒度nが3であるとする。前述のように、粒度n=3の場合は、ジョブ9,13間に3個のジョブが省略される。ユーザは、ジョブ9,13間に存在するジョブの実行状況を確認したい場合、ジョブ9,13間のリンクを選択して部分粒度npを減少させる操作(例えば、マウスのスクロールホイールの回転)を行う。選択された箇所の部分粒度npが1に変更されると、ジョブ9,13間に存在する省略されていたジョブ10〜12が、グラフ上に表示されるようになる。
次に、アクティブ監視モードでのグラフ生成について説明する。
図20は、アクティブ監視の手順例を示すフローチャートである。
ステップS30〜S40のうち、ステップS30,S34〜40は、図9のグラフ生成におけるステップS10,S12〜S18と同様であるため説明を省略する。
(S31)グラフ生成部123は、制御情報テーブル112にアクティブ監視モード=ONと記載されていることを確認する。すると、グラフ生成部123は、ジョブ情報テーブル213の中から制御情報テーブル112に登録されたユーザ指定ジョブを検索し、検索されたユーザ指定ジョブを監視ポイントに設定する。アクティブ監視モードでは、始点のジョブおよび終点のジョブは、監視ポイントに設定しなくてよい。
(S32)グラフ生成部123は、ジョブ情報テーブル213の中から実行中のジョブおよび異常終了したジョブを検索し、検索されたジョブを監視ポイントに設定する。
(S33)グラフ生成部123は、ステップS31,S32で設定された監視ポイントに基づいて、ユーザ指定ジョブと実行中ジョブと異常終了ジョブとを含む最小の範囲(アクティブエリア)を判定する。例えば、グラフ生成部123は、ステップS31,S32で設定された監視ポイントの集合の中で最も早く実行される監視ポイントをアクティブエリアの先頭とし、最も遅く実行される監視ポイントをアクティブエリアの末尾とする。そして、グラフ上で上記の先頭と末尾の間に表示されるべきジョブ(先頭を示す縦線と末尾を示す縦線とに挟まれる範囲)をアクティブエリアに属するジョブとする。アクティブエリアには、始点のジョブおよび終点のジョブが含まれなくてもよい。以降、ステップS34〜S40の処理が、アクティブエリアに属するジョブに限定して実行される。
図21は、アクティブ監視モードの例を示す図である。
ここでは、ジョブ2が実行中でありジョブ8が異常終了したものとする。また、ユーザ指定ジョブは存在しないとする。すると、ジョブ2を先頭としジョブ8を末尾とするアクティブエリアが設定される。このアクティブエリアには、ジョブ2〜8が含まれる。
アクティブ監視モードでは、アクティブエリアに属するジョブの中から監視ポイントが選択され、アクティブエリアの外にあるジョブからは監視ポイントが選択されない。監視フロー画面44には、アクティブエリアが拡大されて表示されることになる。図21の例の場合、始点および終点であるジョブ1,13はグラフ上に表示されない。粒度n=2と決定された場合、アクティブエリアに属するジョブ2〜8のうち、ジョブ3〜5が省略されてジョブ2,6〜8が監視ポイントに設定される。この場合、監視フロー画面44には、ジョブ2,6〜8に対応するノードを含むグラフが表示される。
第2の実施の形態のシステムによれば、システムに登録されたジョブの一部分が自動的に選択され、監視フロー画面44のグラフ上に表示するジョブが限定される。よって、システムに登録されたジョブが多い場合であっても、グラフに含まれるノードを減らすことができ、それらのジョブを含む業務フロー全体を1画面内で俯瞰することが可能となる。また、ジョブが予め監視に適した形式に階層化されていない場合であっても、監視ポイントが自動的に限定されて、理解容易なグラフが生成される。
また、ジョブの実行状況を監視する上で重要である可能性が高いジョブが監視ポイントとして自動的に抽出され、有用性の高いグラフが生成される。例えば、先行ジョブが多い待ち合わせ点や後段ジョブが多い分岐点など、マイルストーンとなるジョブが抽出される。また、所定の種類の開始条件が設定されたジョブや実行時間のばらつきの大きいジョブなど、業務フローが遅延する原因となり得るジョブが抽出される。また、アクティブ監視モードを利用することで、実行中ジョブと異常終了ジョブを含むアクティブエリアに限定して拡大されたグラフを表示させることができる。通常モードのグラフとアクティブ監視モードのグラフを併用することで、ユーザによるジョブ監視が一層容易になる。
[第3の実施の形態]
第3の実施の形態を説明する。前述の第2の実施の形態との違いを中心に説明し、第2の実施の形態と同様の事項については説明を省略する。前述の第2の実施の形態のシステムでは、クライアント100がジョブ管理サーバ200からジョブ情報や履歴情報を取得し、ジョブ監視用のグラフを生成することとした。これに対し、第3の実施の形態では、ジョブ管理サーバがクライアントからの要求に応じてジョブ監視用のグラフを生成する。
図22は、クライアントとジョブ管理サーバの他の機能例を示すブロック図である。
第3の実施の形態のシステムは、クライアント100aおよびジョブ管理サーバ200aを含む。クライアント100aは第2の実施の形態のクライアント100に対応し、ジョブ管理サーバ200aは第2の実施の形態のジョブ管理サーバ200に対応する。
クライアント100aは、制御情報記憶部111、操作検出部122、表示制御部124およびグラフ取得部125を有する。第2の実施の形態のクライアント100と異なり、クライアント100aはグラフ生成部123を有しない。
グラフ取得部125は、操作検出部122からグラフ生成が要求されると、ジョブ管理サーバ200aに当該要求を転送する。このとき、グラフ取得部125は、制御情報記憶部111に記憶されていた制御情報(制御情報テーブル112)をジョブ管理サーバ200aに送信する。また、グラフ取得部125は、ジョブ管理サーバ200aからグラフの情報を取得すると、グラフを操作検出部122に提供する。これにより、ジョブ管理サーバ200aで生成されたグラフがディスプレイ41に表示される。
ジョブ管理サーバ200aは、ジョブ情報記憶部211、履歴情報記憶部212、グラフ生成部222およびグラフ提供部223を有する。
グラフ生成部222は、グラフ提供部223からグラフ生成が要求されると、ジョブ情報記憶部211に記憶されたジョブ情報テーブル213とクライアント100aから受信された制御情報とに基づいてグラフを生成する。グラフ生成部222は、履歴情報記憶部212に記憶された履歴情報テーブル214を参照することもある。グラフ生成部222によるグラフ生成の手順は、第2の実施の形態のグラフ生成部123が行うものと同様である。グラフ生成部222は、生成したグラフをグラフ提供部223に提供する。
グラフ提供部223は、クライアント100aからグラフ生成の要求を受信すると、当該要求をグラフ生成部222に通知する。グラフ生成の要求には、制御情報記憶部111に記憶されていた制御情報が付加されている。また、グラフ提供部223は、グラフ生成部222で生成されたグラフの情報をクライアント100aに送信する。
第3の実施の形態のシステムによれば、第2の実施の形態のシステムと同様の効果が得られる。更に、第3の実施の形態のシステムによれば、ジョブの実行状況の可視化がジョブ管理サーバ200aで行われるため、クライアント100aの負荷を抑制できる。また、クライアント100aにグラフ生成のためのソフトウェアモジュールを組み込んでおかなくてもよく、クライアント100aの構成を簡素化でき保守管理が容易になる。
なお、前述のように、第1の実施の形態の情報処理は、情報処理装置10にプログラムを実行させることで実現することができる。また、第2の実施の形態の情報処理は、クライアント100およびジョブ管理サーバ200にプログラムを実行させることで実現することができる。また、第3の実施の形態の情報処理は、クライアント100aおよびジョブ管理サーバ200aにプログラムを実行させることで実現することができる。
プログラムは、コンピュータ読み取り可能な記録媒体(例えば、記録媒体43)に記録しておくことができる。記録媒体としては、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリなどを使用できる。磁気ディスクには、FDおよびHDDが含まれる。光ディスクには、CD、CD−R(Recordable)/RW(Rewritable)、DVDおよびDVD−R/RWが含まれる。プログラムは、可搬型の記録媒体に記録されて配布されることがある。その場合、可搬型の記録媒体からHDDなどの他の記録媒体(例えば、HDD103)にプログラムを複製して(インストールして)実行してもよい。
10 情報処理装置
11 記憶部
12 生成部
13 ジョブ情報
14 グラフ
J1〜J7 ジョブ

Claims (17)

  1. コンピュータに、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報と、前記複数のジョブそれぞれの過去複数回の実行時間を示す履歴情報とを取得し、
    前記履歴情報に基づき、前記複数のジョブのうち前記過去複数回の実行時間の分散度を示す指標値が閾値以上であるジョブを選択し、
    前記複数のジョブのうち前記選択したジョブを含む一部のジョブを含むグラフであって、前記実行順序情報に基づいて前記一部のジョブの間の実行順序を表したグラフを生成する、
    処理を実行させるプログラム。
  2. 前記ジョブ情報は、前記複数のジョブの最新の実行状況を示す実行状況情報を含み、
    前記コンピュータに、前記実行状況情報に基づき、前記複数のジョブのうち実行中のジョブおよびエラーが発生したジョブの少なくとも一方を、前記グラフに表示する前記一部のジョブとして追加する処理を更に実行させる、
    請求項1記プログラム。
  3. 前記ジョブ情報は、前記複数のジョブの開始条件を示す開始条件情報を含み、
    前記コンピュータに、前記開始条件情報に基づき、前記複数のジョブのうち処理の引き渡し元である前段ジョブが終了したこと以外の所定の種類の開始条件が設定されたジョブを、前記グラフに表示する前記一部のジョブとして追加する処理を更に実行させる、
    請求項1または2記載のプログラム。
  4. コンピュータに、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を取得し、
    前記実行順序情報に基づき、前記複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、
    前記複数のジョブのうち、前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを含む複数のジョブを選択し、
    前記選択した複数のジョブに対応する複数のノードと、前記選択した複数のジョブの間の実行順序を示す複数のリンクとを含み、前記複数のリンクそれぞれに対して、該リンクの両端にあるノードに対応するジョブの間に実行され、かつ、選択されなかったジョブの数が対応付けて示されたグラフを生成する、
    処理を実行させるプログラム。
  5. 前記コンピュータに、前記グラフが表示される表示領域の大きさに基づいて、前記表示領域が大きいほど前記閾値が小さくなるように前記閾値を決定する処理を更に実行させる、請求項記載のプログラム。
  6. コンピュータが実行するジョブ監視支援方法であって、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報と、前記複数のジョブそれぞれの過去複数回の実行時間を示す履歴情報とを取得し、
    前記履歴情報に基づき、前記複数のジョブのうち前記過去複数回の実行時間の分散度を示す指標値が閾値以上であるジョブを選択し、
    前記複数のジョブのうち前記選択したジョブを含む一部のジョブを含むグラフであって、前記実行順序情報に基づいて前記一部のジョブの間の実行順序を表したグラフを生成する、
    ジョブ監視支援方法。
  7. コンピュータが実行するジョブ監視支援方法であって、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を取得し、
    前記実行順序情報に基づき、前記複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、
    前記複数のジョブのうち、前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを含む複数のジョブを選択し、
    前記選択した複数のジョブに対応する複数のノードと、前記選択した複数のジョブの間の実行順序を示す複数のリンクとを含み、前記複数のリンクそれぞれに対して、該リンクの両端にあるノードに対応するジョブの間に実行され、かつ、選択されなかったジョブの数が対応付けて示されたグラフを生成する、
    ジョブ監視支援方法。
  8. 複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報と、前記複数のジョブそれぞれの過去複数回の実行時間を示す履歴情報とを記憶する記憶部と、
    前記履歴情報に基づき、前記複数のジョブのうち前記過去複数回の実行時間の分散度を示す指標値が閾値以上であるジョブを選択し、前記複数のジョブのうち前記選択したジョブを含む一部のジョブを含むグラフであって、前記実行順序情報に基づいて前記一部のジョブの間の実行順序を表したグラフを生成する生成部と、
    を有する情報処理装置。
  9. 複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を記憶する記憶部と、
    前記実行順序情報に基づき、前記複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、前記複数のジョブのうち、前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを含む複数のジョブを選択し、前記選択した複数のジョブに対応する複数のノードと、前記選択した複数のジョブの間の実行順序を示す複数のリンクとを含み、前記複数のリンクそれぞれに対して、該リンクの両端にあるノードに対応するジョブの間に実行され、かつ、選択されなかったジョブの数が対応付けて示されたグラフを生成する生成部と、
    を有する情報処理装置。
  10. 複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報と、前記複数のジョブそれぞれの過去複数回の実行時間を示す履歴情報とを記憶する記憶装置と、
    前記履歴情報に基づき、前記複数のジョブのうち前記過去複数回の実行時間の分散度を示す指標値が閾値以上であるジョブを選択し、前記複数のジョブのうち前記選択したジョブを含む一部のジョブを含むグラフであって、前記実行順序情報に基づいて前記一部のジョブの間の実行順序を表したグラフを生成する情報処理装置と、
    を有するシステム。
  11. 複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を記憶する記憶装置と、
    前記実行順序情報に基づき、前記複数のジョブそれぞれについて、当該ジョブに処理を引き渡す前段ジョブの数と当該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、前記複数のジョブのうち、前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを含む複数のジョブを選択し、前記選択した複数のジョブに対応する複数のノードと、前記選択した複数のジョブの間の実行順序を示す複数のリンクとを含み、前記複数のリンクそれぞれに対して、該リンクの両端にあるノードに対応するジョブの間に実行され、かつ、選択されなかったジョブの数が対応付けて示されたグラフを生成する情報処理装置と、
    を有するシステム。
  12. コンピュータに、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を取得し、
    取得した前記ジョブ情報に基づき、前記複数のジョブそれぞれについて、該ジョブに処理を引き渡す前段ジョブの数と、該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、
    算出した前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを選択し、
    前記選択したジョブに対応するノードと、前記複数のジョブのうち終点となるジョブに対応するノードとを含むグラフを生成する、
    処理を実行させるプログラム。
  13. 前記コンピュータに、算出した前記後段ジョブの数に基づき、前記複数のジョブのうち、前記終点となるジョブを特定する処理を更に実行させる、
    請求項12記載のプログラム。
  14. コンピュータが実行するジョブ監視支援方法であって、
    複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を取得し、
    取得した前記ジョブ情報に基づき、前記複数のジョブそれぞれについて、該ジョブに処理を引き渡す前段ジョブの数と、該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、
    算出した前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを選択し、
    前記選択したジョブに対応するノードと、前記複数のジョブのうち終点となるジョブに対応するノードとを含むグラフを生成する、
    ジョブ監視支援方法。
  15. 算出した前記後段ジョブの数に基づき、前記複数のジョブのうち、前記終点となるジョブを特定する、
    請求項14記載のジョブ監視支援方法。
  16. 複数のジョブの間の実行順序を示す実行順序情報を含むジョブ情報を記憶する記憶部と、
    前記ジョブ情報に基づき、前記複数のジョブそれぞれについて、該ジョブに処理を引き渡す前段ジョブの数と、該ジョブから処理を引き継ぐ後段ジョブの数とを算出し、算出した前記前段ジョブの数および前記後段ジョブの数の少なくとも一方が閾値以上であるジョブを選択し、前記選択したジョブに対応するノードと、前記複数のジョブのうち終点となるジョブに対応するノードとを含むグラフを生成する生成部と、
    を有する情報処理装置。
  17. 前記生成部は、算出した前記後段ジョブの数に基づき、前記複数のジョブのうち、前記終点となるジョブを特定する、
    請求項16記載の情報処理装置。
JP2013109875A 2013-05-24 2013-05-24 プログラム、ジョブ監視支援方法、情報処理装置およびシステム Active JP6209862B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013109875A JP6209862B2 (ja) 2013-05-24 2013-05-24 プログラム、ジョブ監視支援方法、情報処理装置およびシステム
US14/283,286 US9864964B2 (en) 2013-05-24 2014-05-21 Job monitoring support method and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013109875A JP6209862B2 (ja) 2013-05-24 2013-05-24 プログラム、ジョブ監視支援方法、情報処理装置およびシステム

Publications (2)

Publication Number Publication Date
JP2014229183A JP2014229183A (ja) 2014-12-08
JP6209862B2 true JP6209862B2 (ja) 2017-10-11

Family

ID=51935966

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013109875A Active JP6209862B2 (ja) 2013-05-24 2013-05-24 プログラム、ジョブ監視支援方法、情報処理装置およびシステム

Country Status (2)

Country Link
US (1) US9864964B2 (ja)
JP (1) JP6209862B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3279852A4 (en) * 2015-03-31 2018-02-14 Mitsubishi Heavy Industries, Ltd. Work planning system, work planning method, decision-making support system, computer program, and storage medium
US10078520B1 (en) * 2017-03-16 2018-09-18 Flexera Software Llc Calculating wait time for batch scheduler jobs
JP7215340B2 (ja) * 2019-05-31 2023-01-31 富士通株式会社 情報処理装置、ログ制御プログラム、およびログ制御方法
KR102391207B1 (ko) * 2020-03-12 2022-04-27 주식회사 넥스트코어테크놀로지 3d 모델링 기반 작업자 위치 관리 시스템

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63241605A (ja) 1987-03-30 1988-10-06 Toshiba Corp プロセスフロ−図の画面表示方法
JPS6441966A (en) * 1987-08-07 1989-02-14 Hitachi Ltd Method for displaying routing
JP3412238B2 (ja) * 1993-03-31 2003-06-03 株式会社ニコン 構図アドバイス機能を備えたカメラ
JP3554854B2 (ja) 1997-09-25 2004-08-18 日立ソフトウエアエンジニアリング株式会社 業務ジョブ実行関連図表示方法
JP2001084153A (ja) * 1999-09-16 2001-03-30 Nec Corp マルチジョブ集約展開システム及びマルチジョブ集約展開システムで読み込み可能なソフトウェアを記録した記録媒体
US6646652B2 (en) 2000-12-21 2003-11-11 Xerox Corporation System and method for browsing node-link structures based on an estimated degree of interest
US6944830B2 (en) 2000-12-21 2005-09-13 Xerox Corporation System and method for browsing hierarchically based node-link structures based on an estimated degree of interest
CA2365222C (en) * 2000-12-21 2009-10-27 Xerox Corporation System and method for browsing hierarchically based node-link structures based on an estimated degree of interest
JP2002207510A (ja) * 2001-01-12 2002-07-26 Matsushita Electric Ind Co Ltd スケジュール生成装置およびスケジュール生成方法
US6805502B2 (en) * 2001-01-23 2004-10-19 Xerox Corporation Method for determining optimal batch sizes for processing print jobs in a printing environment
US20030002056A1 (en) * 2001-05-22 2003-01-02 Matsushita Electric Industrial Co., Ltd. Printing apparatus and pre-printing information estimating method
JP2004227281A (ja) * 2003-01-23 2004-08-12 Hewlett Packard Co <Hp> 関連性ネットワーク型データの表示方法及び装置
JP2004295508A (ja) 2003-03-27 2004-10-21 Japan Research Institute Ltd 業務ジョブ実行監視方法およびコンピュータプログラム
JP4651295B2 (ja) 2004-03-26 2011-03-16 株式会社日立ソリューションズ ジョブスケジューリングシステムの監視方法
JP4308241B2 (ja) * 2006-11-10 2009-08-05 インターナショナル・ビジネス・マシーンズ・コーポレーション ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム
JP4838746B2 (ja) * 2007-03-19 2011-12-14 富士フイルム株式会社 コンテンツ表示方法、プログラム、及び装置、並びに記録媒体
JP2009151702A (ja) * 2007-12-21 2009-07-09 Canon Inc 情報処理装置、情報処理方法、及びプログラム
JP5463885B2 (ja) * 2009-12-07 2014-04-09 富士通株式会社 バッチジョブ処理時間推定プログラム、方法及び装置
JP5471400B2 (ja) * 2009-12-17 2014-04-16 富士通株式会社 ジョブ分析プログラム及び方法、並びにジョブ分析装置
US8836987B2 (en) * 2011-01-21 2014-09-16 Ricoh Company, Ltd. Print queue management in a print shop environment

Also Published As

Publication number Publication date
JP2014229183A (ja) 2014-12-08
US9864964B2 (en) 2018-01-09
US20140350996A1 (en) 2014-11-27

Similar Documents

Publication Publication Date Title
US7933995B2 (en) Computer program and apparatus for controlling computing resources, and distributed processing system
US10042669B2 (en) Concurrent execution of a computer software application along multiple decision paths
US8904234B2 (en) Determination of items to examine for monitoring
US7698545B1 (en) Computer configuration chronology generator
US10110505B2 (en) Methods and apparatus to manage and execute actions in computing environments using a graphical user interface
US10108455B2 (en) Methods and apparatus to manage and execute actions in computing environments based on a type of virtual compute node
US10122649B2 (en) Methods and apparatus to manage and execute actions in computing environments based on a routing path
JP6209862B2 (ja) プログラム、ジョブ監視支援方法、情報処理装置およびシステム
JP6009089B2 (ja) 計算機システムを管理する管理システム及びその管理方法
WO2014054230A1 (ja) 情報システム構築装置、情報システム構築方法および記憶媒体
JP5740338B2 (ja) 仮想環境運用支援システム
US20230126168A1 (en) Scalable visualization of a containerized application in a multiple-cluster and multiple deployment application environment
JP6048957B2 (ja) 情報処理装置、プログラム、及び情報処理方法
JP7032640B2 (ja) 影響範囲特定プログラム、影響範囲特定方法、および影響範囲特定装置
US20160373299A1 (en) Method for generating network optimizing information
US20160004584A1 (en) Method and computer system to allocate actual memory area from storage pool to virtual volume
US11544127B2 (en) System management method, non-transitory computer-readable storage medium for storing system management program, and system management device
US20210227023A1 (en) System and method for managing tagged virtual infrastructure objects
US20170111224A1 (en) Managing component changes for improved node performance
WO2017203556A1 (ja) 管理計算機及びシステムのパラメータの最適値算出方法
JP2012226703A (ja) 仮想環境管理システム
US11567800B2 (en) Early identification of problems in execution of background processes
JP6127754B2 (ja) プログラム、排他制御要求振り分け方法およびシステム
JP5938482B2 (ja) 情報処理装置及びプログラム
JP6630442B2 (ja) 適切なitリソース上にアプリケーションを配備するための管理コンピュータ及び非一時的なコンピュータ可読媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170327

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170815

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170828

R150 Certificate of patent or registration of utility model

Ref document number: 6209862

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150