(57)【要約】【課題】追加や変更したジョブの実行所要時間およびそのジョブを含む業務システムの実行所要時間を推定する。【解決手段】類似ジョブ決定部２１１は、過去に実行された複数の実行済ジョブを定義する定義情報の中から、実行されたことのない未実行ジョブを定義する定義情報に最も類似する定義情報を選び出し、選び出された定義情報を有する実行済ジョブを未実行ジョブに類似する類似実行済ジョブと決定する。ジョブ実行所要時間算出部２１２は、類似ジョブ決定部２１１によって決定された類似実行済ジョブの実際の実行所要時間を未実行ジョブの実行所要時間と推定し、未実行ジョブの推定された実行所要時間と各実行済ジョブの実際の実行所要時間とに基づいて、未実行ジョブを含む業務システムの総実行所要時間を求める。【選択図】図２
2015055885.tif 000002
【特許請求の範囲】
【請求項１】
過去に実行された複数の実行済ジョブを定義する定義情報の中から、実行されたことのない未実行ジョブを定義する定義情報に最も類似する定義情報を選び出し、選び出された当該定義情報を有する実行済ジョブを前記未実行ジョブに類似する類似実行済ジョブと決定する類似ジョブ決定手段と、
前記類似ジョブ決定手段によって決定された類似実行済ジョブの実際の実行所要時間を前記未実行ジョブの実行所要時間と推定し、当該未実行ジョブの推定された実行所要時間と前記各実行済ジョブの実際の実行所要時間とに基づいて、前記未実行ジョブを含む業務システムの総実行所要時間を求めるジョブ実行所要時間算出手段と、
を備えることを特徴とするジョブ実行所要時間推定システム。
【請求項２】
前記類似ジョブ決定手段が、前記各実行済ジョブについて、前記未実行ジョブの定義情報と前記実行済ジョブの定義情報の同一の項目に含まれる文字列を同一にするための編集回数として定義される編集距離を求め、当該各項目の編集距離に基づいて前記類似の実行済ジョブを決定することを特徴とする請求項１に記載のジョブ実行所要時間推定システム。
【請求項３】
前記類似ジョブ決定手段が、ジョブの名称と、ジョブプログラムの名称と、当該ジョブが稼働するジョブ実行エージェントの名称との各項目を含む前記定義情報に基づいて前記類似の実行済ジョブを決定することを特徴とする請求項２に記載のジョブ実行所要時間推定システム。
【請求項４】
前記類似ジョブ決定手段が、前記定義情報の項目毎に前記編集距離を順位付けし、当該項目毎の順位を所定の優先係数で重み付けし、当該重み付けされた項目毎の順位に基づいて、前記類似の実行済ジョブを決定することを特徴とする請求項２または３に記載のジョブ実行所要時間推定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、まだ実行結果がなく、実際に実行した場合に処理に要する実行所要時間が定かではないジョブの実行所要時間を推定するジョブ実行所要時間推定システムに関する。
【背景技術】
【０００２】
コンピュータを使用したジョブ運用管理システムを使用するにあたっては、自動実行されるジョブが想定した時間の範囲内で実行完了するかどうかを見積もることが重要である。実行所要時間の推定を怠り、想定した時間内にジョブが実行完了しなかった場合、そのジョブに依存したサービスが提供不能になるなど業務上の致命的な問題につながるおそれがある。
例えば、特許文献１は、実際にジョブが稼働した過去の実行結果を元に次回以降の実行時の実行所要時間を推定するジョブ進捗監視システムを開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−５２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年、社会の情勢がめまぐるしく変化する中、業務システムの運用も継続的に変化していくことが求められている。このため、運用中のジョブ運用管理システムにジョブを追加したり変更したりする必要が生じる。この場合にも、追加や変更したジョブが想定した時間内に実行を完了するかどうか、実行所要時間を推定することが重要である。
少量のジョブの追加変更であれば、人手によって過去の経験から推定する方法や、試しにジョブプログラムをテスト実行して推定する方法など、従来知られている個別に実行所要時間を推定する方法を用いることができる。
【０００５】
しかし、業務に大幅な変更が発生し、大量にジョブを追加変更した場合、個別に実行所要時間を推定する方法は作業に長時間を要する。このため、このような場合に個別に実行所要時間を推定することは難しい。
また、特許文献１に記載されているようにジョブの過去の実行結果を元にして推定する方法は、新たに追加変更したジョブには当然実行結果がないことからこのような場合には適用できない
【０００６】
本発明の目的は、追加や変更したジョブの実行所要時間およびそのジョブを含む業務システムの実行所要時間を少ない作業量と高い精度で推定することができるジョブ実行所要時間推定システムを提供することである。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明のジョブ実行所要時間推定システムは、
過去に実行された複数の実行済ジョブを定義する定義情報の中から、実行されたことのない未実行ジョブを定義する定義情報に最も類似する定義情報を選び出し、選び出された当該定義情報を有する実行済ジョブを前記未実行ジョブに類似する類似実行済ジョブと決定する類似ジョブ決定手段と、
前記類似ジョブ決定手段によって決定された類似実行済ジョブの実際の実行所要時間を前記未実行ジョブの実行所要時間と推定し、当該未実行ジョブの推定された実行所要時間と前記各実行済ジョブの実際の実行所要時間とに基づいて、前記未実行ジョブを含む業務システムの総実行所要時間を求めるジョブ実行所要時間算出手段と、
を備えることを特徴とする。
【０００８】
好ましくは、本発明のジョブ実行所要時間推定システムは、
前記類似ジョブ決定手段が、前記各実行済ジョブについて、前記未実行ジョブの定義情報と前記実行済ジョブの定義情報の同一の項目に含まれる文字列を同一にするための編集回数として定義される編集距離を求め、当該各項目の編集距離に基づいて前記類似の実行済ジョブを決定することを特徴とする。
【０００９】
好ましくは、本発明のジョブ実行所要時間推定システムは、
前記類似ジョブ決定手段が、ジョブの名称と、ジョブプログラムの名称と、当該ジョブが稼働するジョブ実行エージェントの名称との各項目を含む前記定義情報に基づいて前記類似の実行済ジョブを決定することを特徴とする。
【００１０】
好ましくは、本発明のジョブ実行所要時間推定システムは、
前記類似ジョブ決定手段が、前記定義情報の項目毎に前記編集距離を順位付けし、当該項目毎の順位を所定の優先係数で重み付けし、当該重み付けされた項目毎の順位に基づいて、前記類似の実行済ジョブを決定することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、追加や変更したジョブの実行所要時間およびそのジョブを含む業務システムの実行所要時間を少ない作業量と高い精度で推定することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係るジョブ実行所要時間推定システムを備えた業務システムの構成の一例を示す図である。
【図２】ジョブ管理マネージャーと、ジョブ管理システムデータベースと、ジョブ実行所要時間推定システムとの詳細な構成の一例を示す図である。
【図３】ジョブ管理システムデータベースに格納されるジョブ定義データの構成の一例を示す図である。
【図４】ジョブ管理システムデータベースに格納されるジョブ実行所要時間データの構成の一例を示す図である。
【図５】ジョブ情報表示部によってジョブ実行所要時間推定システムのディスプレイ等に表示されるジョブ実行所要時間表示画面の一例を示す図である。
【図６】ジョブ実行所要時間データを作成するジョブ実行所要時間データ作成処理の流れの一例を示す図である。
【図７】類似ジョブ決定処理の流れの一例を示す図である。
【図８】類似ジョブ決定処理で用いられる各種の表の構成の一例を示す図である。図８（Ａ）は実行所要時間推定対象ジョブデータ表の構成の一例を示す。図８（Ｂ）は優先係数設定表の構成の一例を示す。図８（Ｃ）は最類似ジョブ計算表の構成の一例を示す。
【図９】編集距離の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態に係るジョブ実行所要時間推定システムについて図面を参照しながら説明する。なお、実施形態を説明する全図において、共通の構成要素には同一の符号を付し、繰り返しの説明を省略する。
【００１４】
図１は、本発明の実施形態に係るジョブ実行所要時間推定システム１０３を備えた業務システム１００の構成の一例を示す。
業務システム１００は、ジョブ管理マネージャー１０１と、ジョブ管理システムデータベース１０２と、ジョブ実行所要時間推定システム１０３と、ジョブプログラムを実行処理する1台から複数台のジョブ実行エージェント１０４とで構成される。
ジョブ管理マネージャー１０１とジョブ実行所要時間推定システム１０３とジョブ実行エージェント１０４とは、ネットワーク１０５に接続されており、相互に通信することができる。
【００１５】
図２は、ジョブ管理マネージャー１０１と、ジョブ管理システムデータベース１０２と、ジョブ実行所要時間推定システム１０３の詳細な構成の一例を示す。
ジョブ管理マネージャー１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成される主メモリと、ハードディスク等で構成される記憶装置とを有する。
ジョブ管理マネージャー１０１の記憶装置は、業務プログラムとデータベース管理プログラムとを記憶している。
ジョブ管理マネージャー１０１のＣＰＵが業務プログラムを記憶装置から主メモリに読み出して実行することにより、ジョブ実行エージェント１０４を管理し、所定の業務を遂行する業務遂行機能が実現される。また、ジョブ管理マネージャー１０１のＣＰＵがデータベース管理プログラムを記憶装置から主メモリに読み出して実行することにより、データベース管理部２０１の機能が実現される。
ジョブ管理システムデータベース１０２はジョブ管理マネージャー１０１に接続されている。ジョブ管理システムデータベース１０２には、ジョブ定義データ２０２と、ジョブ実行所要時間データ２０３と、業務の遂行に必要な各種データとが格納される。
データベース管理部２０１は、ジョブ実行所要時間推定システム１０３からの要求に応答して、ジョブ定義データ２０２とジョブ実行所要時間データ２０３を登録し、検索（取得）する。また、データベース管理部２０１は、業務の遂行に必要な各種データを登録し、検索（取得）する。
なお、ジョブ定義データ２０２とジョブ実行所要時間データ２０３を、ジョブ管理マネージャー１０１の記憶装置に格納する構成とすることもできる。
【００１６】
ジョブ実行所要時間推定システム１０３は、ＣＰＵと、ＲＡＭ等で構成される主メモリと、ハードディスク等で構成される記憶装置と、キーボードやマウス、スキャナ等の入力装置と、ディスプレイやプリンタ等の出力装置とを有する。
ジョブ実行所要時間推定システム１０３の記憶装置は、ジョブ実行所要時間推定プログラムを記憶している。
ジョブ実行所要時間推定システム１０３のＣＰＵがジョブ実行所要時間推定プログラムを記憶装置から主メモリに読み出して実行することにより、類似ジョブ決定部２１１と、ジョブ実行所要時間算出部２１２と、ジョブ情報表示部２１３との各部の機能が実現される。
類似ジョブ決定部２１１は、過去に実行された複数の実行済ジョブを定義する定義情報の中から、実行されたことのない未実行ジョブを定義する定義情報に最も類似する定義情報を選び出し、選び出された定義情報を有する実行済ジョブを未実行ジョブに類似する類似実行済ジョブと決定する。
ジョブ実行結果所要時間部２１２は、類似ジョブ決定部２１１によって決定された類似実行済ジョブの実際の実行所要時間を未実行ジョブの実行所要時間と推定し、未実行ジョブの推定された実行所要時間と各実行済ジョブの実際の実行所要時間とに基づいて、未実行ジョブを含む業務システムの総実行所要時間を求める。
ジョブ情報表示部２１３は、ジョブの実行所要時間等をディスプレイ等に表示する。
【００１７】
図３は、ジョブ管理システムデータベース１０２に格納されるジョブ定義データ２０２の構成の一例を示す。
ジョブ定義データ２０２は、ジョブ名３０１と、ジョブプログラム名３０２と、ジョブ実行エージェント名３０３と、先行ジョブ名３０４とを含む。
ジョブ名３０１は、ジョブ定義の名称である。
ジョブプログラム名３０２は、ジョブ名３０１のジョブとして実行処理されるコンピュータープログラムの名前である。
ジョブ実行エージェント名３０３は、ジョブプログラム名３０２のジョブプログラムを実行処理するジョブ実行エージェントの名称である。
先行ジョブ名３０４には、ジョブ名３０１のジョブの一つ前に実行されるジョブの名称が格納される。先行ジョブ名３０４によってジョブの実行順序が定義される。
ここで、ジョブ名３０１と、ジョブプログラム名３０２と、ジョブ実行エージェント名３０３とはジョブを定義する定義情報の一例である。なお、他の情報を定義情報に含めることも可能である。
【００１８】
図４は、ジョブ管理システムデータベース１０２に格納されるジョブ実行所要時間データ２０３の構成の一例を示す。
ジョブ実行所要時間データ２０３は、ジョブ名４０１と、平均ジョブ実行所要時間４０２と、予想ジョブ実行所要時間４０３とを含む。
ジョブ名４０１は、ジョブの名称である。ジョブ名４０１には、同一のジョブであれば、ジョブ定義データ２０２のジョブ名３０１と同じ名前が格納される。
平均ジョブ実行所要時間４０２には、過去に実行された実行済ジョブについては、これまでのジョブ実行所要時間の平均値が格納される。平均ジョブ実行所要時間４０２は、実行されたことがない未実行ジョブについては空白である
予想ジョブ実行所要時間４０３には、未実行ジョブについては、類似実行済ジョブの平均ジョブ実行所要時間４０２から推定されたジョブ実行所要時間が格納される。予想ジョブ実行所要時間４０３は、実行済ジョブについては空白である。また、<ジョブ集合>４０４の予想ジョブ実行所要時間４０３には、過去に実行された各実行済ジョブの平均ジョブ実行所要時間４０２と、実行されたことがない各未実行ジョブとに基づいて求められる業務システムの総実行所要時間が格納される。
【００１９】
図５は、ジョブ情報表示部２１３によってジョブ実行所要時間推定システムのディスプレイ等に表示されるジョブ実行所要時間表示画面の一例を示す。
ジョブ実行所要時間表示画面は、実行所要時間表示部５０１と実行所要時間サマリー表示部５０４とで構成される。
実行所要時間表示部５０１には、ジョブ実行所要時間データ２０３に格納されている各ジョブのアイコン５０２が表示される。各ジョブのアイコン５０２の中にはジョブ名４０１と、平均ジョブ実行所要時間４０２または予想ジョブ実行所要時間４０３の値が表示される。各ジョブのアイコン５０２は、実行される順序を示す関連線５０３で接続されて表示される。
実行所要時間サマリー表示部５０４には、<ジョブ集合>４０４の予想ジョブ実行所要時間４０３の値が表示される。
【００２０】
図６は、ジョブ実行所要時間データを作成するジョブ実行所要時間データ作成処理の流れの一例を示す。
まず、類似ジョブ決定部２１１は、ジョブ定義データ２０２とジョブ実行所要時間データ２０３の送信をジョブ管理マネージャー１０１のデータベース管理部２０１に要求する。データベース管理部２０１は、この要求に応答して、ジョブ管理システムデータベース１０２からジョブ定義データ２０２とジョブ実行所要時間データ２０３を取得し、ジョブ実行所要時間推定システム１０３に送信する。なお、この時点での実行所要時間データ２０３には、過去に実行された各実行済ジョブ（例えば、SYUKEI、CHOHYO_W、CHOHYO_M、MENTENASIU）についての平均ジョブ実行所要時間４０２は設定されているが、実行されたことのない未実行ジョブ（例えば、CHOHYO_X）についての予想ジョブ実行所要時間４０３は空である。また、＜ジョブ集合＞４０4についての予想ジョブ実行所要時間４０３には過去に実行された各実行済ジョブの平均ジョブ実行所要時間４０２の合計または空が設定されている。
ジョブ実行所要時間推定システム１０３がジョブ管理マネージャー１０１からジョブ定義データ２０２とジョブ実行所要時間データ２０３を受信する（Ｓ１０１）と、類似ジョブ決定部２１１は、過去に実行されたことのある実行済ジョブの定義情報の中から、推定対象の未実行ジョブの定義情報に最も類似する定義情報を選び出し、選び出された定義情報を有する実行済ジョブを類似実行済ジョブと決定する（Ｓ１０２）。ステップＳ１０２の詳細については、図７〜図９を参照して以下に説明する。
【００２１】
図７は、ステップＳ１０２における類似実行済ジョブ決定処理の流れの一例を示す。
類似ジョブ決定部２１１は、まずジョブ定義データ２０２から実行所要時間の推定対象とする未実行ジョブの定義情報を抽出し、図８（Ａ）の実行所要時間推定対象ジョブデータ表８０１を作成して、ジョブ実行所要時間推定システム１０３の主メモリに格納する（Ｓ２０１）。
次に、類似ジョブ決定部２１１は、ユーザーによって入力されるジョブの定義情報に含まれる各データ項目の優先係数を受け付け、図８（Ｂ）の優先係数設定表８０２を作成して、主メモリに格納する（Ｓ２０２）。優先係数設定表８０２は、ジョブ定義データ２０２の各項目を示すデータ項目名８０３と、ジョブの定義情報同士の類似値を計算する際の重み付けに用いられる優先係数８０４とで構成される。
【００２２】
次に、類似ジョブ決定部２１１は、図８（Ｃ）の最類似ジョブ計算表８０５を作成し、ジョブ定義データ２０２に含まれる過去に実行された各実行済ジョブの定義情報を項目値８０６に設定して、主メモリに格納する（Ｓ２０３）。そして、類似ジョブ決定部２１１は、最類似ジョブ計算表８０５の各項目値８０６のそれぞれに対して、実行所要時間推定対象ジョブデータ表８０１に格納されている推定対象の未実行ジョブの定義情報の各文字列との編集距離を求めて、最類似ジョブ計算表８０５の編集距離８０７に記録する（Ｓ２０４）。
ここで、「編集距離」は、任意の二つの文字列の類似の度合いを数値で表したものである。任意の二つの文字列の間の編集距離は、一方の文字列をもう一方の文字列と同一にするために必要な、文字の挿入、削除、および置換等の編集回数として定義される。図９は、編集距離計算の一例を示す。類似ジョブ決定部２１１は、過去に実行されたことのある実行済ジョブの定義情報の各文字列９０１と、実行所要時間の推定対象である未実行ジョブの定義情報の文字列９０２との編集距離を求める。図９の例では「CHOHYO_W」と「CHOHYO_X」の間は「W」と「X」を1回置き換える編集操作をすることで同一になるため、「CHOHYO_W」と「CHOHYO_X」の編集距離は「１」となる。
【００２３】
次に、類似ジョブ決定部２１１は、ジョブの定義情報の項目毎に編集距離の小さい順に順位を付け、最類似ジョブ計算表８０５の順位８０８に記録する（Ｓ２０５）。そして、類似ジョブ決定部２１１は、最類似ジョブ計算表８０５の項目毎の順位８０８に優先係数設定表８０２の優先係数８０４を乗算し、最類似ジョブ計算表８０５の類似値８０９に記録する（Ｓ２０６）。
次に、類似ジョブ決定部２１１は、ジョブの定義情報毎に、類似値８０９の総和を求めて最類似ジョブ計算表８０５のジョブ類似値<総計>８１０に記録する（Ｓ２０７）。そして、類似ジョブ決定部２１１は、ジョブ類似値<総計>８１０が最も値の小さい実行済ジョブを、実行所要時間の推定対象である未実行ジョブに最も類似する類似実行済ジョブに決定し（Ｓ２０８）、図６のステップＳ１０３に進む。もし、最も値の小さい実行済ジョブが複数あった場合には、それらの中から一つを任意に選択し決定する。
【００２４】
図６のステップＳ１０２で類似ジョブ決定部２１１によって類似実行済ジョブが決定されると、ジョブ実行所要時間算出部２１２は、類似実行済ジョブの平均ジョブ実行所要時間４０２を、推定対象のジョブの予想ジョブ実行所要時間４０３とし、ジョブ実行所要時間データに格納する（Ｓ１０３）。なお、推定対象の未実行ジョブが複数ある場合には、類似ジョブ決定部２１１とジョブ実行所要時間算出部２１２は、それらの未実行ジョブ全てについてステップＳ１０２とＳ１０３を実行し、推定対象の各ジョブの予想ジョブ実行所要時間４０３を求めてジョブ実行所要時間データに格納する。
次に、ジョブ実行所要時間算出部２１２は、ジョブ実行所要時間データから、予想ジョブ実行所要時間４０３が空である各実行済みジョブについては平均ジョブ実行所要時間４０２を取得し、平均ジョブ実行所要時間４０２が空である各未実行ジョブについては予想ジョブ実行所要時間４０３を取得し、それらを合計して<ジョブ集合>４０４の予想ジョブ実行所要時間４０３を求めてジョブ実行所要時間データに格納する。（Ｓ１０４）。そして、ジョブ実行所要時間算出部２１２は、推定対象の未実行ジョブと<ジョブ集合>４０４の予想ジョブ実行所要時間４０３を含むジョブ実行所要時間データをジョブ管理マネージャー１０１に送信し、データベース管理部２０１にジョブ実行所要時間データ２０３を格納することを要求する（Ｓ１０５）。データベース管理部２０１は、その要求に応答してジョブ実行所要時間データ２０３をジョブ管理システムデータベース１０２に格納する。
ジョブ情報表示部２１３は、ステップＳ１０５で作成されたジョブ実行所要時間データに基づいて図５の実行所要時間表示画面をディスプレイ等に表示する。
【００２５】
なお、上述した実施形態では、推定対象の未実行ジョブに類似する類似実行済ジョブを含む業務システムの実行所要時間を求める例について説明したが、本発明によれば、未実行ジョブを含んでいるが、類似実行済ジョブは含まない業務システムの実行所要時間を求めることができることはもちろんである。
【００２６】
以上説明したように、本発明によれば、新たに追加や変更した未実行ジョブの実行所要時間を、実際に実行して処理時間を計測したり、人手によって過去の経験から処理時間を推定したりしなくても、過去に実行された実行済ジョブの実績から自動的に推定できるため、業務の変更に伴うジョブの追加変更作業の効率を向上させることができる。
【符号の説明】
【００２７】
１００…業務システム、１０１…ジョブ管理マネージャー、１０２…ジョブ管理システムデータベース、１０３…ジョブ実行所要時間推定システム、１０４…ジョブ実行エージェント、１０５…ネットワーク、２０１…データベース管理部、２０２…ジョブ定義データ、２０３…ジョブ実行所要時間データ、２１１…類似ジョブ決定部、２１２…ジョブ実行所要時間算出部、２１３…ジョブ情報表示部
【図１】
2015055885.tif 000003
【図２】
2015055885.tif 000004
【図３】
2015055885.tif 000005
【図４】
2015055885.tif 000006
【図５】
2015055885.tif 000007
【図６】
2015055885.tif 000008
【図７】
2015055885.tif 000009
【図８】
2015055885.tif 000010
【図９】
2015055885.tif 000011