(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-10
(45)【発行日】2024-05-20
(54)【発明の名称】ジョブ運用管理システム、およびジョブ運用管理方法
(51)【国際特許分類】
G06F 11/32 20060101AFI20240513BHJP
G06F 11/34 20060101ALI20240513BHJP
G06F 11/30 20060101ALI20240513BHJP
【FI】
G06F11/32 110
G06F11/34 119
G06F11/34 176
G06F11/30 140G
(21)【出願番号】P 2020149587
(22)【出願日】2020-09-07
【審査請求日】2022-12-16
【新規性喪失の例外の表示】特許法第30条第2項適用 〔ウェブサイトにおける掲載による公開〕 公開日:令和2年5月29日 掲載アドレス:https://www.hitachi-solutions.co.jp/ocs/
(73)【特許権者】
【識別番号】000233055
【氏名又は名称】株式会社日立ソリューションズ
(74)【代理人】
【識別番号】110002572
【氏名又は名称】弁理士法人平木国際特許事務所
(72)【発明者】
【氏名】尾関 嘉一郎
(72)【発明者】
【氏名】福井 学
【審査官】多賀 実
(56)【参考文献】
【文献】特開2007-114908(JP,A)
【文献】特開平11-039196(JP,A)
【文献】特開2017-016507(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 8/00- 8/77
G06F 9/44- 9/54
G06F 11/07
G06F 11/28-11/36
(57)【特許請求の範囲】
【請求項1】
コンピュータで実行するジョブの運用を管理するジョブ運用管理システムであって、
前記ジョブの実行結果の情報を格納する記憶装置と、
前記記憶装置から前記ジョブの実行結果の情報を取得し、当該実行結果に基づいて前記ジョブの運用状況を監視するための監視用データを生成し、出力するプロセッサと、を備え、
前記記憶装置は、少なくとも前記ジョブの実行開始時間および実行終了時間を、前記実行結果として格納し、
前記プロセッサは、
同一ジョブについて、複数回に亘る前記実行結果を取得する処理と、
前記同一ジョブについて、最新の前記実行結果をそれよりも古い実行結果と区別して表示させるように、前記同一ジョブの前記複数回の実行結果を並列表示するための前記監視用データを生成する処理と、
前記監視用データを出力する処理と、を実行する、
ジョブ運用管理システム。
【請求項2】
コンピュータで実行するジョブの運用を管理するジョブ運用管理システムであって、
前記ジョブの実行結果の情報を格納する記憶装置と、
前記記憶装置から前記ジョブの実行結果の情報を取得し、当該実行結果に基づいて前記ジョブの運用状況を監視するための監視用データを生成し、出力するプロセッサと、を備え、
前記記憶装置は、少なくとも前記ジョブの実行開始時間および実行終了時間を、前記実行結果として格納し、
前記プロセッサは、
同一ジョブについて、複数回に亘る前記実行結果を取得する処理と、
前記同一ジョブについて、前記複数回の実行結果から得られる前記同一ジョブの各回の実行時間の長さに応じて、前記各回の実行結果を矩形で表現し、前記各回の実行結果に対応する矩形を積み重ねて配置することにより、前記同一ジョブについて、前記複数回に亘る実行結果の前記実行開始時間と前記実行終了時間が比較可能なように
、前記同一ジョブの前記複数回の実行結果を並列表示するための前記監視用データを生成する
処理と、
前記監視用データを出力する処理と、を実行する、
ジョブ運用管理システム。
【請求項3】
コンピュータで実行するジョブの運用を管理するジョブ運用管理システムであって、
前記ジョブの実行結果の情報を格納する記憶装置と、
前記記憶装置から前記ジョブの実行結果の情報を取得し、当該実行結果に基づいて前記ジョブの運用状況を監視するための監視用データを生成し、出力するプロセッサと、を備え、
前記記憶装置は、少なくとも前記ジョブの実行開始時間および実行終了時間を、前記実行結果として格納し、
前記プロセッサは、
同一ジョブについて、複数回に亘る前記実行結果を取得する処理と、
前記同一ジョブの前記複数回の実行結果を並列表示するための前記監視用データを生成する処理と、
前記監視用データを出力する処理と、を実行し、
前記プロセッサは、監視対象の前記同一ジョブが、所定期間内に複数回実行され、当該所定期間内の実行が繰り返される定期実行ジョブである場合、前記監視用データを生成する処理において
、前記所定期間内の実行回ごとに前記同一ジョブの前記実行結果を並列表示するための前記監視用データを生成する、ジョブ運用管理システム。
【請求項4】
コンピュータで実行するジョブネットの運用を管理するジョブ運用管理システムであって、
前記ジョブネットの実行結果の情報を格納する記憶装置と、
前記記憶装置から前記ジョブネットを構成する各ジョブの実行結果の情報を取得し、当該実行結果に基づいて前記ジョブネットの運用状況を監視するための監視用データを生成し、出力するプロセッサと、を備え、
前記ジョブネットは、前記各ジョブの実行順序を定義する業務フローを示し、
前記記憶装置は、少なくとも前記ジョブネットを構成する各ジョブの実行開始時間および実行終了時間を、前記実行結果として格納し、
前記プロセッサは、
前記ジョブネットを構成する各ジョブのそれぞれの前記実行結果の情報を取得する処理と、
前記各ジョブの実行時間あるいは実行時間の増減率を含むジョブ実行特徴量を算出する処理と、
前記ジョブネットに従って、前記各ジョブを表す各アイコンを配列し、当該各アイコンの近傍に対応する前記ジョブ実行特徴量を併記して表示するための監視用データを生成する処理と、
前記監視用データを出力する処理と、を実行
し、
前記プロセッサは、さらに、前記監視用データを生成する処理において、前記ジョブ実行特徴量に応じて前記各ジョブの前記アイコンのサイズを決定する、ジョブ運用管理システム。
【請求項5】
コンピュータで実行するジョブの運用を管理するジョブ運用管理方法であって、
プロセッサが、同一ジョブについて、少なくとも前記ジョブの実行開始時間および実行終了時間を実行結果として格納する記憶装置から、複数回に亘る実行結果の情報を取得することと、
前記プロセッサが、
前記同一ジョブについて、最新の前記実行結果をそれよりも古い実行結果と区別して表示させるように、前記同一ジョブの前記複数回の実行結果を並列表示するための監視用データであって、前記ジョブの運用状況を監視するための監視用データを生成することと、
前記プロセッサが、表示装置の画面上に前記監視用データを出力することと、
を含む、ジョブ運用管理方法。
【請求項6】
コンピュータで実行するジョブネットの運用を管理するジョブ運用管理方法であって、 前記ジョブネットは、当該ジョブネットを構成する各ジョブの実行順序を定義する業務フローを示し、
前記方法は、
プロセッサが、少なくとも前記ジョブネットを構成する各ジョブの実行開始時間および実行終了時間を実行結果として格納する記憶装置から、前記ジョブネットを構成する各ジョブのそれぞれの前記実行結果を取得することと、
プロセッサが、前記各ジョブの実行時間あるいは実行時間の増減率を含むジョブ実行特徴量を算出することと、
前記プロセッサが、前記ジョブネットに従って、前記各ジョブを表す各アイコンを配列し、当該各アイコンの近傍に対応する前記ジョブ実行特徴量を併記して表示するための監視用データであって、前記ジョブネットの運用状況を監視するための監視用データを生成することと、
前記プロセッサが、前記ジョブ実行特徴量に応じて前記各ジョブの前記アイコンのサイズを決定することと、
前記プロセッサが、前記監視用データを表示装置の画面上に出力することと、
を含む、ジョブ運用管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ジョブ運用管理システム、およびジョブ運用管理方法に関する。
【背景技術】
【0002】
近年、業者が行う日々の業務を運用日や休業日を設定したカレンダを指定することで業務を自動運用したいという要望が増えつつある。そのための手段として各種業務を遂行するコンューターシステムでは、ジョブ運用管理システムが利用されている(例えば、特許文献1から4)。
【0003】
特許文献1から4に開示のジョブ運用管理システムによれば、業務に応じて、運用日や休業日を設定したカレンダを指定することや各業務の実行スケジュールとして日次、週次、月次などの各種処理サイクルを指定することによって、さまざまな業務サイクルに合わせて、スケジューリングすることができる。
【0004】
また、上記ジョブ運用管理システムでは、業務の流れをジョブやジョブネットとして定義し、それぞれのジョブやジョブネットの一連の処理(ジョブフロー)として実行している。ここで、ジョブとは、業務を構成する最小単位を意味し、ジョブネットとは、複数のジョブで構成され、各ジョブの実行順序を関連つけることで業務の流れをまとめた処理単位を意味する。これらジョブあるいはジョブネットをユニットと称することができる。そして、ジョブ運用管理システムでは、各ユニット(ジョブあるいはジョブネット)の実行順序を関連線で定義されている、ユニットの間に先行・後続の実行順序関係が関連線で定義(ジョブネット定義)されていると、先行するユニットが実行完了後、後続のユニットを実行開始する。そして、上記ジョブ運用管理システムでは、ジョブの日々実行結果(デイリースケジュール)がユニット毎に開始時刻から終了時刻に対応する長方形の横棒の一覧表(ガントチャート)によって表示される(
図2参照)。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2010-250749号公報
【文献】特開2007-241643号公報
【文献】特開2005-62961号公報
【文献】特開2016-170553号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
業務開始時点で設計・テストしたジョブ定義に従って数か月、数年に亘りジョブフローを運用するうちに各ユニットで処理する業務量の増加や季節性の変動などで、当初・設計した通りの時間でジョブが完了しない場合がある。その結果、深夜から朝までにバッチジョブ運用にて実行した業務の結果を朝からのオンラインシステムの稼働前提とするような運用では、予定した期限までにジョブが完了しないとオンラインが開始できず大きな社会問題になる可能性がある。そのため、デイリースケジュールを日々監視してジョブ実行スケジュールの問題を早期に検出し対応をとる必要性がある。
【0007】
しかしながら、従来のジョブ運用管理システムが提供するデイリースケジュールのガントチャートの表示では、ジョブ実行当日の各ユニットの開始終了時刻はわかるものの前日と比較した偏差(前日に比較し開始が遅れたのか、実行時間が遅れたのか)や傾向が把握できないという課題がある。また、ガントチャートから対応するジョブネット定義の関連が分かりにくいという課題がある。ジョブおよびジョブフローが適切に運用されているかを管理するには、各ユニットの実行開始時間、実行終了時間、および実行に掛かった時間(実行時間の3要素)を把握し、各ユニットの運用状況を俯瞰できることが望ましい。
【0008】
本開示は、このような状況に鑑み、デイリースケジュールの遅延要因を迅速かつ容易に把握することができるジョブ運用管理表示を提案する。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本開示は、コンピュータで実行するジョブの運用を管理するジョブ運用管理システムであって、ジョブの実行結果の情報を格納する記憶装置と、記憶装置からジョブの実行結果の情報を取得し、当該実行結果に基づいてジョブの運用状況を監視するための監視用データを生成し、出力するプロセッサと、を備え、
記憶装置は、少なくともジョブの実行開始時間および実行終了時間を、実行結果として格納し、プロセッサは、同一ジョブについて、複数回に亘る前記実行結果を取得する処理と、同一ジョブの複数回の実行結果を並列表示するための監視用データを生成する処理と、監視用データを出力する処理と、を実行する、ジョブ運用管理システムを提案する。
【0010】
本開示に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、本開示の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。
本明細書の記述は典型的な例示に過ぎず、本開示の特許請求の範囲又は適用例を如何なる意味においても限定するものではないことを理解する必要がある。
【発明の効果】
【0011】
本開示によれば、デイリースケジュールの遅延要因を迅速かつ容易に把握することができるようになる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態によるジョブ運用管理システム10の構成例を示す図である。
【
図2】一般的な(従来の)デイリースケジュール表示例を示す図である。
【
図3】本実施形態によるタイムライン式デイリースケジュール表示例を示す図である。
【
図4】
図3に示すタイムライン式デイリースケジュール表示300の一部(タイムライン式ジョブユニットの時間表示部分)の拡大図である。
【
図5】タイムライン式デイリースケジュール表示300から分かること(本実施形態の効果その1)を説明するための図である。
【
図6】ジョブフロー定義画面600の構成例を示す図である。
【
図7】ジョブネットおよび実行結果表示700の構成例を示す図である。
【
図8】本実施形態による実行結果集計データ800の構成例を示す図である。
【
図9】本実施形態による実行結果集計データ生成処理を説明するためのフローチャートである。
【
図10】本実施形態によるジョブネットおよび実行結果表示生成処理を説明するためのフローチャートである。
【発明を実施するための形態】
【0013】
本実施形態は、コンピュータ上で稼働するユニット(ジョブおよびジョブネットを含む概念)の実行結果画面表示に関するものである。以下、添付図面を参照して本実施形態によるジョブ運用管理システムについて説明する。添付図面では、機能的に同じ要素は同じ番号で表示される場合もある。なお、添付図面は本開示の原理に則った具体的な実施形態と実装例を示しているが、これらは本開示の理解のためのものであり、決して本開示を限定的に解釈するために用いられるものではない。
【0014】
本実施形態では、当業者が本開示を実施するのに十分詳細にその説明がなされているが、他の実装・形態も可能で、本開示の技術的思想の範囲と精神を逸脱することなく構成・構造の変更や多様な要素の置き換えが可能であることを理解する必要がある。従って、以降の記述をこれに限定して解釈してはならない。
更に、本開示の実施形態は、後述されるように、汎用コンピュータ上で稼動するソフトウェアで実装しても良いし専用ハードウェア又はソフトウェアとハードウェアの組み合わせで実装しても良い。
【0015】
なお、以後の説明では「テーブル」形式によって本開示の各情報について説明するが、これら情報は必ずしもテーブルによるデータ構造で表現されていなくても良く、リスト、DB、キュー等のデータ構造やそれ以外で表現されていても良い。そのため、データ構造に依存しないことを示すために「テーブル」、「リスト」、「DB」、「キュー」等について単に「情報」と呼ぶことがある。
【0016】
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いることが可能であり、これらについてはお互いに置換が可能である。
【0017】
本実施形態において、ジョブとは、コンピュータが処理する仕事の単位を意味し、各種業務に対応した外部プログラムを定義できるものである。また、ジョブネットとは、複数のジョブをまとめてそれぞれのジョブの実行順序を定義したものである。また、本実施形態における「ユニット」は、ジョブあるいはジョブネットを指すものである。
【0018】
<ジョブ運用管理システムの構成例>
図1は、本実施形態によるジョブ運用管理システム10の構成例を示す図である。ジョブ運用管理システム10は、演算装置100と、記憶装置110と、入力装置120と、表示装置(出力装置)130と、を備える。
【0019】
演算装置100は、例えば、CPUやMPUなどのプロセッサ(コンピュータ)で構成され、後述のフローチャートに対応するプログラムを図示しないメモリから読み込んで内部メモリに展開し、データ格納処理部1001と、ジョブ読み込み処理部1002と、関連線制御処理部1003と、画面表示処理部1004と、ジョブ実行処理部1005と、実行結果集計処理部1006と、をシステムの各機能として実現する。
【0020】
記憶装置110は、各ユニットの実行順序を記述するジョブスケジュールを格納するスケジュール定義データベース1101と、各ユニットの定義情報を格納するジョブ定義データベース1102と、各ユニットにおける各ジョブの関連線情報を格納する関連線データベース1103と、各ユニットの実行結果を格納する実行結果集計データベース1104と、を保持している。
【0021】
入力装置120は、例えば、マウス、キーボード、タッチパネルなどで構成される。表示装置130は、例えば、LCDディスプレイなどで構成される。
【0022】
データ格納処理部1001は、オペレータ(ユーザ)が入力装置120を介して入力するジョブ定義やジョブスケジュールを受け取り、それらをスケジュール定義データベース1101やジョブ定義データベース1102に格納する処理を実行する。ジョブ読み込む処理部1002は、各データベースから所定のユニットおよびそのユニットに関連するデータを読み込む処理を実行する。関連線制御処理部1003は、指定された複数のジョブに基づいてジョブ間を結ぶ関連線を決定する処理を実行する(ジョブが決まればそれに用いられる関連線も決まる)。画面表示処理部1004は、生成されるタイムライン式デイリースケジュールチャート(
図3参照)やジョブネット実行結果チャート(
図7参照)などを表示装置130に出力するためのデータを生成する処理を実行する。ジョブ実行処理部1005は、スケジュールに基づいて各ジョブを実行する。実行結果集計処理部1006は、実行された各ユニット(ジョブやジョブネット)の実行結果(
図8参照)を集計する処理を実行する。
【0023】
次に、ジョブ運用管理システム10における全体の処理の流れ(概要)について説明する。まず、表示装置130に表示された入力画面において、オペレータが入力装置120を用いてユニットの定義、ユニットのスケジュール、ユニットの先行および後続の関連付けを定義し、各データベースにデータを入力する。この処理はデータ格納処理部1001により行われ、ユニットの定義がジョブ定義データベース1102に、ユニットのスケジュールがスケジュール定義データベース1101に、ユニットの先行及び後続の関連付けの定義が関連線データベース1103に、ジョブ実行結果の集計データが実行結果集計データベース1104にそれぞれ格納される。
【0024】
<一般的なデイリースケジュール表示例>
図2は、一般的な(従来の)デイリースケジュール表示例を示す図である。一般的なデイリースケジュール表示200は、ツリー表示エリア201と、実行結果表示エリア204と、を含む。ツリー表示エリア201には、ジョブネットの階層構造を示し、ジョブJob11_202が表示される。また、実行結果表示エリア204には、表示日2016/01/20_203のジョブJob11_202の実行時間に対応する表示(横棒)205が表示される。
【0025】
このような一般的なデイリースケジュール表示では、例えば、Job01が2016年1月20日の9:00から9:30まで実行されたことは分かるが、前回(例えば、前日)に実行されたJob01がどの位の実行時間であったかを知ることはできない。このため、特定のジョブ(ここではJob01)について各実行回の結果を比較し、どの回で遅延が生じていたかなどの解析を行うことができない。
【0026】
<タイムライン式デイリースケジュール表示例>
図3は、本実施形態によるタイムライン式デイリースケジュール表示例を示す図である。タイムライン式デイリースケジュール表示300においては、例えば、資材所要量算出処理301に対応するジョブの当日の実行時間に対応する表示(横棒)302の下に、前日の同一ジョブの実行時間に対応する表示(横棒)303、その下に3日前の同一ジョブの実行時間に対応する表示(横棒)304、その下に4日前の同一ジョブの実行時間に対応する表示(横棒)305、さらにその下に4日前の同一ジョブの実行時間に対応するが表示(横棒)が配置される。図示されるように、当日の表示302の幅が一番大きく(太く)表示され、当日の表示が一番濃く表示され、古い実行結果ほど色が薄く表示される。また、各表示(横棒)の長さが実行時間の長さを示している。
【0027】
図3の表示例では、3日前の表示304と3日前の表示305の実行開始が遅延していることが分かる。また、表示302より前日に実行開始の遅延が回復していることが分かる。なお、実行結果に応じて各表示(横棒)の色を変更するようにしてもよい。例えば、青色表示(
図3ではハッチングで表現されている。時間的に過去の結果は薄青色表示:別のハッチングで表現されている)が正常終了、黄色表示が警告(オペレータはジョブ実行結果を確認する必要がある)、赤色表示が異常終了(ジョブが失敗:例えば、実行プログラムが無い場合や実行プログラムがエラーを返してきた場合など)とすることができる。
【0028】
なお、タイムライン式デイリースケジュール表示300は、後述する実行結果集計データ(
図8参照)のユニット名801、ユニット番号802、開始時刻803、終了時刻804を表示するものである。
【0029】
図4は、
図3に示すタイムライン式デイリースケジュール表示300の一部(タイムライン式ジョブユニットの時間表示部分)の拡大図である。
図4に示されるように、最上位に当日のジョブユニットの開始時刻401から終了時刻402の表示(横棒)が配置される。その下に、前日のジョブユニットの開始時刻403から終了時刻404の表示(横棒)が配置される。
【0030】
<タイムライン式デイリースケジュール表示から分かること>
図5は、タイムライン式デイリースケジュール表示300から分かること(本実施形態の効果その1)を説明するための図である。
結果表示501および502は、複数日に亘る同一ユニット(ジョブあるいはジョブネット)の実行結果の比較表示(横棒)を示している。結果表示501からは、各回の実行時間が伸びたことによりジョブ終了が遅延傾向にあることが分かる。結果表示502からは、各回の開始時間が遅れたことによりジョブ終了が遅延傾向にあることが分かる。また、結果表示502は平行四辺形を構成しているので、各ジョブの実行時間には変化はないが、前回実行されたジョブが結果表示501のように遅延傾向にあるということが分かる。
【0031】
結果表示503は、ジョブネット内における各ジョブの実行結果の比較表示(横棒)を示している。結果表示503からは、当日のJob2による遅延が全体に影響を与えている(当日のJob2の遅延により当日のJob3の開始が遅延している)ことが分かる。
【0032】
結果表示504は、1日で同一ジョブが複数回(例えば、午前0時、午前6時、午後0時、午後6時)実行される場合の実行結果の比較表示(横棒)を示している。結果表示504からは、1日の定期実行ジョブの実行状況が把握できるが、
図5においては定期実行ジョブ(当日の午後0時に実行すべきジョブ)の抜け(不実行)を認識することができる。
【0033】
<ジョブフロー定義>
図6は、ジョブフロー定義画面600の構成例を示す図である。ジョブフロー定義画面600は、ジョブネットの階層を表示するジョブネット階層表示領域601と、各種ジョブのアイコンを配置しているアイコンリスト領域602と、各種のユニットとユニット間の関連線を定義するための領域であるマップ領域603と、ジョブ同士を関連線で結ぶときに関連線を描画する指示を入力するための関連線ボタン614と、を含んでいる。
【0034】
例えば、ジョブネット621を新規作成する場合、ジョブネット階層表示領域601にジョブネット621のアイコンが表示される。次に、ジョブネット配下に、各種業務に応じた、外部プログラムを実行するためのジョブを定義する。ジョブは外部プログラムを実行したいジョブ種別をアイコンリスト領域602から選択して、それをマップ領域603にドラッグ&ドロップすることで定義できる。
【0035】
この例では、ジョブネット621配下に実行するジョブとして、マップ領域603上にジョブ622、623、および624が配置されている。ジョブの実行順序がジョブ622およびジョブ624(同時に実行してもどちらかを先に実行してもよい)を実行し、その後にジョブ623を実行する場合のジョブネットを定義するときには、まず、アイコンリスト領域602からジョブアイコン611を選択し、マップ領域603にドラッグ&ドロップを3回繰り返す。次に、ジョブの先行後続実行順序関係を制御するために、関連線ボタン614を押下し、ジョブ622とジョブ623をクリックすると、矢印631が描画される。また、関連線ボタン614を押下し、ジョブ624とジョブ623をクリックすると、矢印632が描画される。このようにすることにより、ジョブフローを考慮して各々のユニット間に関連線631、632を定義することができる。
【0036】
<ジョブネットおよびその実行結果表示>
図7は、ジョブネットおよび実行結果表示700の構成例を示す図である。ジョブネットおよびその実行結果表示700からは、1つのジョブネットにおける各ジョブ(ユニット)の実行状況を一目瞭然に把握することができる(本実施形態の効果その2)。
【0037】
ジョブネットおよび実行結果表示700は、ジョブネットの始点のジョブ701と、ジョブネットの終点のジョブ702と、その間に実行されるジョブ群と、各ジョブの実行時間とを表示(視覚化)する。そして、ジョブネットおよび実行結果表示700においては、各ジョブ(ユニット)のアイコンサイズは、実行時間の長短によって決定される。実行時間が長いジョブほど大きいサイズのアイコンで表示される。
【0038】
ジョブネットおよび実行結果表示700において、ジョブ群703、704、705、および706に含まれる各ジョブは、並列処理されるジョブである。並列処理されるジョブ群の全体の処理時間は、最大実行時間のジョブに影響される。つまり、例えば、ジョブ(ユニット)707の実行時間が0:00:49であり、ジョブ(ユニット)708の実行時間が0:01:27である場合、ジョブ708が終了しないと終点のジョブ702を実行することはできない。そして、ジョブ708がジョブ707よりも大きいアイコンで描画される。従って、ジョブ(ユニット)707よりもジョブ(ユニット)708が処理全体において遅延要因となっていることが一目で把握することが可能となる。
【0039】
なお、ジョブネットに関しては、
図3に示すようなデイリースケジュール表示とすることもできるし、
図7に示すようなジョブネットおよび実行結果表示とすることもできる。
【0040】
<実行結果集計>
図8は、本実施形態による実行結果集計データ800の構成例を示す図である。
図8は、テーブル形式で実行結果集計データを示しているが、テーブル形式に限らず、如何なる形式であってもよい。
【0041】
実行結果集計データ800は、ジョブの階層構造を保存するユニット(ジョブあるいはジョブネット)名801と、ユニットを一意に特定・識別するためのユニット番号(ユニットID)802と、ユニットの実行開始時刻を示す開始時刻803と、ユニットの終了時刻を示す終了時刻804と、同一ユニット(ジョブあるいはジョブネット)に関して所定期間単位(例えば、1日単位)で何回目の実行かを示す履歴番号805と、実行時間、および実行時間増加率(前日との比較、過去所定期間の平均値との比較など)などを表す特徴量(属性情報)806と、を構成項目として含んでいる。なお、実行結果集計データ800は、実行結果集計データベース1104に格納される。
【0042】
<実行結果集計データ生成処理>
図9は、本実施形態による実行結果集計データ生成処理を説明するためのフローチャートである。
【0043】
(i)ステップ901
ジョブ実行処理部1005が実行したユニットの実行終了契機で、実行結果集計処理部1006は、実行されたユニットのユニット名、実行の開始時刻、および終了時刻を入力として、ユニット実行結果を実行結果集計データ800に追加する。
【0044】
(ii)ステップ902
実行結果集計処理部1006は、追加するユニットの実行結果についてステップ903から907を実行する。
【0045】
(iii)ステップ903
実行結果集計処理部1006は、ステップ901で追加するユニットと同一ユニット名称で履歴番号が最大のレコードAを実行結果集計データ800から検索する。例えば、実行結果集計データ800にユニット808を追加する場合には、レコードAはユニット807に相当する。
【0046】
(iv)ステップ904
実行結果集計処理部1006は、実行結果集計データ800のレコードAの前(上)に当該ユニット実行結果を挿入する。ステップ903でレコードAが抽出できなかった場合には、実行結果集計データ800の一番上に単純に当該ユニット実行結果が追加される。
【0047】
(v)ステップ905
実行結果集計処理部1006は、当該ユニット実行結果(挿入したレコード)に対し、終了時刻-開始時刻を算出し、これを実行結果集計データ800の実行時間(特徴量806)に設定する。
【0048】
(vi)ステップ906
実行結果集計処理部1006は、実行時間/レコードAの実行時間 を算出し、これを実行結果集計データ800の実行時間増加率(特徴量806)に設定する。
【0049】
(vii)ステップ907
実行結果集計処理部1006は、当該ユニット実行結果の履歴番号を「Aの履歴番号+1」に設定する。
【0050】
<ジョブネットおよび実行結果表示生成処理>
図10は、本実施形態によるジョブネットおよび実行結果表示生成処理を説明するためのフローチャートである。
【0051】
(i)ステップ1001
画面表示処理部1004は、最大値(M1)=0、最小値(M2)=0で初期化する。
【0052】
(ii)ステップ1002
画面表示処理部1004は、ジョブ定義データベース1102から対象のジョブネットを構成する各ユニットを取り出す。
【0053】
(iii)ステップ1003
画面表示処理部1004は、当該対象のユニットに対して関連線データベースを検索し、ジョブネットに属するユニットを抽出するため、ステップ1004およびステップ1005を繰り返し実行する。
【0054】
(iv)ステップ1004
画面表示処理部1004は、各抽出したユニット毎に該当ユニットの特徴量を抽出(X)する。
【0055】
(v)ステップ1005
画面表示処理部1004は、最大値、最小値を算出のため、M1=max(M1,X)、M2=min(M2,X)を更新する。
【0056】
(vi)ステップ1006
画面表示処理部1004は、ステップ1004で抽出したユニットについて、アイコンサイズを算出するために、ステップ1007を繰り返す。
【0057】
(vii)ステップ1007
画面表示処理部1004は、Y=((X-M2)/(M1-M2)+0.2)×基準アイコンサイズを演算し、対象のユニットのアイコンサイズを決定する。
【0058】
(viii)ステップ1008
画面表示処理部1004は、対象のジョブネット、および当該ジョブネットを構成する各ユニットのアイコンサイズに基づいて、ジョブネットおよび実行結果表示700の描画データを生成し、表示装置130の表示画面上に表示する。
以上のようにして、ジョブネットおよび実行結果表示700(
図7参照)が表示画面上に表示される。
【0059】
<まとめ>
(i)本実施形態では、同一ジョブあるいはジョブネットの複数回の実行結果を並列表示するための監視用データを生成し、これを表示画面上に表示する(
図3参照)。並列表示する際には、最新の前記実行結果(例えば、当日のジョブの実行結果)とそれよりも古い実行結果(例えば、前日、前々日、3日前などのジョブの実行結果)と区別して表示する。区別は、例えば、表示色を変更(最新のジョブ実行結果は濃い色で表示し、最新ではないジョブ実行結果は薄い色で表示する。)したり、表示サイズを変更(最新のジョブ実行結果は矩形を大きく、最新ではないジョブ実行結果はそれよりも小さく矩形を表示する)したりすることにより行う。また、複数回に亘る実行結果の実行開始時間と実行終了時間が比較可能なように、同一ジョブの各回の実行時間の長さに応じて、各回の実行結果を表す矩形を積み重ねて配置することにより監視用データを生成するようにしてもよい。さらに、監視対象のジョブあるいはジョブネットが、所定期間(例えば、1日)内に複数回(午前0時、午前6時、午後0時、午後6時のように6時間毎)実行され、当該所定期間内の実行が繰り返される定期実行ジョブである場合には、所定期間内の実行回ごとに同一ジョブあるいはジョブネットの実行結果を並列表示するようにしてもよい。以上のように、本実施形態では、ジョブネットの定義および実行結果を日次でデータ収集・集計を行い、日々の偏差を視覚的に俯瞰表示する。これにより、ジョブ遅延の要因となるユニット(ジョブやジョブネット)の特定し、その遅延が開始時刻の遅れた要因であるか、あるいはそのユニットの実行が遅延したからなのか、さらにその遅延の傾向が継続的なものか、一時的なものかを実行結果を表す平行四辺形の形状にて瞬時に直感的に把握することが可能となる。また、定期実行のユニットについては不実施のジョブ(ジョブの抜け)を検出することが可能となる。
【0060】
(ii)本実施形態では、ジョブネット(各ジョブの実行順序を定義する業務フロー)を構成する各ジョブの実行時間あるいは実行時間の増減率を含むジョブ実行特徴量を算出し、ジョブネットに従って、各ジョブを表す各アイコンを配列し、当該各アイコンの近傍に対応するジョブ実行特徴量を併記して表示するようにしている。このとき、ジョブ実行特徴量に応じて(特徴量の大きさに比例して)各ジョブのアイコンのサイズを可変にしてもよい。このように、ジョブネットの構成要素のユニットの実行時間や平均実行時間、平均実行時間増加率のような特徴量(ジョブ実行特徴量)をジョブネットの業務フローに併記することにより、オペレータはどこがボトルネック(ジョブネットの中のどのユニットが要因で偏差が発生しているか)になっているか検証することができる。また、各ジョブのアイコンの大きさを上記特徴量に応じて可変にすることにより、アイコンの大きさの差異により視覚的に容易に(直感的に)ボトルネックを特定することが可能となる。
【0061】
(iii)本実施形態の機能は、ソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本開示を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD-ROM、DVD-ROM、ハードディスク、光ディスク、光磁気ディスク、CD-R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
【0062】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【0063】
さらに、本実施形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD-RW、CD-R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【0064】
なお、ここで述べたプロセス及び技術は本質的に如何なる特定の装置に関連することはなく、コンポーネントの組み合わせによってでも実装できる。また、汎用目的の多様なタイプのデバイスがここで記述した開示内容に従って使用可能である。ここで述べた方法のステップを実行するのに、専用の装置を構築してもよい。さらに、本実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の形態を形成することもできる。例えば、本実施形態に示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【0065】
また、本実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
【符号の説明】
【0066】
10 ジョブ運用管理システム
100 演算装置
110 記憶装置
120 入力装置
130 表示装置
1001 データ格納処理部
1002 ジョブ読み込み処理部
1003 関連線制御処理部
1004 画面表示処理部
1005 ジョブ実行処理部
1006 実行結果集計処理部
1101 スケジュール定義データベース
1102 ジョブ定義データベース
1103 関連線データベース
1104 実行結果集計データベース