JP2009169787A - ワークフロー監視制御システム、監視制御方法および監視制御プログラム - Google Patents

ワークフロー監視制御システム、監視制御方法および監視制御プログラム Download PDF

Info

Publication number
JP2009169787A
JP2009169787A JP2008008669A JP2008008669A JP2009169787A JP 2009169787 A JP2009169787 A JP 2009169787A JP 2008008669 A JP2008008669 A JP 2008008669A JP 2008008669 A JP2008008669 A JP 2008008669A JP 2009169787 A JP2009169787 A JP 2009169787A
Authority
JP
Japan
Prior art keywords
workflow
processing
unit
workflows
control
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
JP2008008669A
Other languages
English (en)
Inventor
Yoshihiro Jinnan
吉宏 神南
Shinji Kikuchi
伸治 菊地
Yosuke Isozaki
洋祐 磯崎
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 JP2008008669A priority Critical patent/JP2009169787A/ja
Publication of JP2009169787A publication Critical patent/JP2009169787A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】1つの処理単位の処理に同一の複数のアプリケーションソフトウェアを用意せずに、複数の処理単位の処理を順次経るワークフローを定められた時間内で達成できる可能性を高めたワークフロー監視制御システム、方法およびプログラムを得ること。
【解決手段】ワークフロー監視制御システム205は、予測部229が合成されたワークフローについて制御履歴格納DB234に格納された制御履歴を用いて業務の監視から完了までの時間を予測して、これが合意サービス水準リポジトリ212に格納された基準時間以内とならないときには、制御条件調整部231で複数の処理を兼用する業務アプリケーションシステムにおけるワークフロー間の待ち時間を調整する。これにより、時間が足りないワークフローは時間が余ったワークフローから待ち時間を融通して貰う管理が可能になる。
【選択図】図2

Description

本発明はワークフロー監視制御システム、ワークフロー監視制御方法およびワークフロー監視制御プログラムに係わり、特に特定の業務開始から業務の完了までの処理単位ごとに対応するアプリケーションソフトウェアを使用して処理を行うようにしたワークフロー監視制御システム、ワークフロー監視制御ネットワーク、ワークフロー監視制御方法およびワークフロー監視制御プログラムに関する。
複数のサービスを連携して動作させるときに、ユーザの要求の中でも特にレスポンス要件を保証して複数のサービスを組み合わせて実行するようにしたサービス制御システムが本発明の関連技術として提案されている(たとえば特許文献1参照)。
図26は、この関連技術によるサービス制御システムの構成を表わしたものである。このサービス制御システム100は、サービスを提供する第1および第2のサービスプロバイダ101、102と、サービスを要求するクライアントであるサービスリクエスタ103と、第1および第2のサービスプロバイダ101、102のいずれかが提供する提供サービスを複数組み合わせてサービスリクエスタ103に提供するサービスコーディネータ104を備えている。
このようなサービス制御システム100でサービスコーディネータ104は、サービスリクエスタ103から送られてくるリクエスト情報を受信する受信部111と、リクエスト情報の受け付けを拒否する受付拒否情報をサービスリクエスタ103に送信する送信部112と、複数のサービスを連携して動作させるための連携サービス管理部113と、連携サービス管理部113の判断結果に基づいて、受信部111により受信されたリクエスト情報によって求められるサービスグループの各サービスを実行する実行部114と、第1のサービスプロバイダ101が提供する提供サービス115と、第1のサービスプロバイダ101が提供するサービスの処理状況を示す負荷情報116とを記憶する記憶装置117とを備えている。
サービス制御システム100で、サービスリクエスタ103は複数のサービスの内の、いずれかをグループとして組み合わせたサービスグループの各サービスを提供することを求めるリクエスト情報を送信する。するとサービスコーディネータ104内の受信部111が、このリクエスト情報を受信して連携サービス管理部113に供給するようになっている。連携サービス管理部113は、前記したサービスグループの各サービスの現在の提供状況を管理している。連携サービス管理部113は、記憶装置117により記憶された複数のサービス提供条件情報が示すサービス提供条件に基づいて、受信部111により受信されたリクエスト情報が求めるサービスグループの各サービスを提供することが可能かどうかを判断する。
サービスコーディネータ104内の実行部114は、連携サービス管理部113が判断した結果に基づいて、受信部111によってサービスプロバイダ101から受信されたサービスグループの各サービスを実行し、サービスリクエスタ103に提供する。また、送信部112は、連携サービス管理部113により判断された結果として、受信部111により受信されたリクエスト情報が求めるサービスグループの各サービス全部を提供することが可能であるかを判別する。そして、各サービス全部を提供できない場合には、受信部111により受信されたリクエスト情報の受け付けを拒否する受付拒否情報をサービスリクエスタ103に送信するようになっている。
特開2004−362449号公報(第0009段落〜第0018段落、図1)
このような関連技術のサービス制御システム100では、次のような問題点があった。
第1の問題点として、サービスの処理時間が所定の基準時間内に終了するという合意サービス水準を達成するために、予備のサービスプロバイダとしての第2のサービスプロバイダ102を必要とした。サービス制御システム100では、同一のサービスを提供する複数のサービスプロバイダから適当なサービスプロバイダを選択できるようにして、1つのサービスプロバイダが使用中のときに他のサービスプロバイダを代わって使用できるようにして、同一のサービスの提供を受けるときの待ち時間の短縮を図って合意サービス水準を達成できるようにしているためである。
第2の問題点として、複数のサービスによって構成されるサービスに対応することができない。サービス制御システム100では、1つのサービスについて合意サービス水準を達成する手法となっているためである。
第3の問題点として、複数のサービスによって構成されるサービスが複数存在する場合に対応できない。サービス制御システム100では、1つのサービスについて合意サービス水準を達成する手法を採用しているためである。
第4の問題点として、合意サービス水準が複数存在する場合に対応することができない。前記したと同様に、サービス制御システム100では、1つのサービスについて1つの合意サービス水準を定義する手法であるためである。
以上、合意サービス水準を例に挙げたが、所定の業務の開始から完了に至る一連の処理の流れとしてのワークフローが所定の基準時間内に全体の処理(サービス)を完了させるかどうかについての他の技術についても同様の問題がある。
そこで本発明の目的は、1つの処理単位の処理に同一の複数のアプリケーションソフトウェアを用意する必要なく、複数の処理単位の処理を順次経るワークフローを定められた時間内で達成できる可能性を高めたワークフロー監視制御システム、ワークフロー監視制御方法およびワークフロー監視制御プログラムを提供することにある。
本発明では、(イ)特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記した処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを用意したワークフロー定義を設定するワークフロー定義設定手段と、(ロ)前記した特定の業務開始から業務の完了までに前記したワークフロー定義設定手段で設定されたそれぞれのワークフローが守るべきサービス提供品質を設定するサービス提供品質設定手段と、(ハ)前記した特定の業務開始の時刻を異にした複数のワークフローについて前記した業務の完了までに要する処理時間をそれぞれ予測する処理時間予測手段と、(ニ)この処理時間予測手段の予測した処理時間が前記サービス提供品質設定手段で設定したサービス提供品質を維持するワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整手段とをワークフロー監視制御システムに具備させる。
また、本発明では、(イ)特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記した処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを用意したワークフロー定義を設定するワークフロー定義設定手段で設定されたそれぞれのワークフローが、前記した特定の業務開始から業務の完了までに要する処理時間をそれぞれ予測する処理時間予測ステップと、(ロ)この処理時間予測ステップで予測した処理時間が予め設定した最大許容値の範囲内になるワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整ステップとをワークフロー監視制御方法に具備させる。
更に本発明では、特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記した処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを通信手段を介してそれぞれ用意したワークフロー定義をワークフロー定義設定手段に設定し、かつ前記した特定の業務開始から業務の完了までに前記したワークフロー定義設定手段で設定されたそれぞれのワークフローが守るべきサービス提供品質をサービス提供品質設定手段に設定した装置のコンピュータに、ワークフロー監視制御プログラムとして、(イ)前記した特定の業務開始の時刻を異にした複数のワークフローについて前記した業務の完了までに要する処理時間をそれぞれ予測する処理時間予測処理と、(ロ)この処理時間予測処理の予測した処理時間が前記したサービス提供品質設定手段で設定したサービス提供品質を維持するワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整処理とを実行させることを特徴としている。
以上説明したように本発明によれば、特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、守るべきサービス提供品質が設定されているときに、個々の処理時間をそれぞれ予測して、処理時間が最大許容値内となるワークフローが最大数となるように処理するアプリケーションソフトウェアに対するワークフロー間の処理開始までの待ち時間の調整を行うようにしたので、それぞれのワークフローの処理時間に大きな差異が生じにくくなり、処理時間の均一化を図ることができる。したがって、個々のワークフローにおける特定の業務開始の時間間隔が大きくばらついているような場合にも業務の完了時の時間間隔が等間隔に近づくことになり、これ以後の処理でも処理の効率化やバッファメモリの容量の節約を図ることができる。
次に本発明を詳細に説明する。
図1は、本発明が実施される一般的な通信環境を表わしたものである。この通信環境では、複数のサブネットワーク2011、2012、……がこれらサブネットワーク2011、2012、……の持つ管理ポリシ、セキュリティポリシの基で運営されている。更にこれら複数のサブネットワーク2011、2012、……がルータ2021、2022、……等の結合手段によって結合されて大きなネットワークを構成している通信環境となっている。
たとえば第1のサブネットワーク2011は、第2のサブネットワーク2012と第1のルータ2021によって接続されている。また、第2のサブネットワーク2012は、第3のサブネットワーク2013および第4のサブネットワーク2014と第2のルータ2022によって接続されている。
後に詳しく説明するワークフローにおける対応する処理単位の処理を担う業務アプリケーションシステム2031、2032、……は、サブネットワーク2011、2012、……のいずれかに接続されるようになっている。図1に示す通信環境で第1および第2の業務アプリケーションシステム2031、2032は、第1のサブネットワーク2011に接続されている。第3および第4の業務アプリケーションシステム2033、2034は、第4のサブネットワーク2014に接続されている。
業務アプリケーションシステム2031、2032、……を連携させて、特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフロー処理を実施するワークフローシステム2041、2042、……も、サブネットワーク2011、2012、……のいずれかに接続されるようになっている。図1に示す通信環境では、第1のワークフローシステム2041は第1のサブネットワーク2011に、第2のワークフローシステム2042は第3のサブネットワーク2013にそれぞれ接続されている。
サブネットワーク2011、2012、……上での通信を監視し、ワークフロー監視制御システム205に監視結果を通知する通信監視システム2061、2062、……は、サブネットワーク2011、2012、……の任意のものに任意の数だけ接続される。図1に示す通信環境では、第1のサブネットワーク2011には第1の通信監視システム2061が、第3のサブネットワーク2013には第2の通信監視システム2062が、第4のサブネットワーク2014には第3の通信監視システム2063がそれぞれ接続されている。通信監視システム2061、2062、……は、それぞれ監視対象となる業務アプリケーションシステム203およびワークフローシステム204を持つ。一般的には、自分自身と同一のサブネットワーク201に存在する業務アプリケーションシステム203およびワークフローシステム204を監視対象とする。
サブネットワーク2011、2012、……上での通信をワークフロー監視制御システム205からの制御信号に従って制御する各通信制御システム2071、2072、……は、サブネットワーク2011、2012、……に任意の数だけ接続される。第1のサブネットワーク2011には第1の通信制御システム2071が、第3のサブネットワーク2013には第2の通信制御システム2072が、第4のサブネットワーク2014には第3の通信制御システム2073がそれぞれ接続されている。通信制御システム207は、それぞれ制御対象となる業務アプリケーションシステム203およびワークフローシステム204を持つ。一般的には、自分自身と同一のサブネットワーク201に存在する業務アプリケーションシステム203およびワークフローシステム204を制御対象とする。
ワークフローの動作を監視し、ワークフロー監視制御システム205に通知するワークフロー監視システム2081、2082、……は、ワークフローシステム2041、2042、……ごとにサブネットワーク2011、2012、……に接続される。図1に示す通信環境では、第1のサブネットワーク2011には第1のワークフロー監視システム2081が、第3のサブネットワーク2013には第2のワークフロー監視システム2082がそれぞれ接続されている。ワークフロー監視システム208は、それぞれ監視対象となるワークフローシステム204を持つ。一般的には、自分自身と同一のサブネットワーク201に存在するワークフローシステム204を監視対象とする。
本発明が実施される一般的な通信環境には、業務アプリケーションシステム203およびワークフローシステム204を監視、制御するワークフロー監視制御システム205が1つ以上存在する。図1を参照すると、ワークフロー監視制御システム205は第2のサブネットワーク2012に接続されている。
以上のような通信環境での動作を次に説明する。
第1および第2のワークフローシステム2041、2042ならびに第1〜第4の業務アプリケーションシステム2031〜2034は、相互に連携して業務を行う。このとき、必要に応じて相互に通信を行う。ワークフローシステム204および業務アプリケーションシステム203が送信した情報は、送信側のワークフローシステム204および業務アプリケーションシステム203を制御対象とする通信制御システム207で受信され、必要に応じて制御が行われる。次にこの情報は受信側のワークフローシステム204ならびに業務アプリケーションシステム203を制御対象とする通信制御システム207に送信され、必要に応じて制御が行われる。次にこの情報は受信側のワークフローシステム204ならびに業務アプリケーションシステム203で受信される。
また、ワークフローシステム204ならびに業務アプリケーションシステム203が情報を送信したことは、送信側のワークフローシステム204ならびにアプリケーションシステム203を監視対象とする通信監視システム206で監視される。ワークフローシステム204および業務アプリケーションシステム203が情報を受信したことは、受信側のワークフローシステム204ならびに業務アプリケーションシステム203を監視対象とする通信監視システム206で監視される。
また、業務ワークフローシステムでたとえば業務の進捗があったことは、ワークフローシステム204を監視対象とするワークフロー監視制御システム205で監視される。
以上の図1に示した構成は、特定の組織等を想定したものではなく、一般性を失わない。
<発明の第1の実施の形態>
図2は、本発明の第1の実施の形態のワークフロー監視制御システムとその周辺のシステム構成を表わしたものである。これは、たとえば図1に示した通信環境を前提としている。図2には、ワークフロー監視制御システム205と、ワークフローシステム204と、ワークフロー監視システム208と、通信監視システム206と、通信制御システム207と、ワークフローシステム204で実行されるワークフローの定義情報と業務アプリケーションシステム203(図1)の定義情報を格納するワークフロー定義・業務定義リポジトリ211および合意サービス水準情報を格納する合意サービス水準リポジトリ212が示されている。ここで、「リポジトリ(repository)」とは、容器、貯蔵庫のように、一般にはデータや情報、プログラムを体系立てて保管する場所を意味している。
ワークフロー監視制御システム205は、ワークフロー定義と業務定義を取得するワークフロー定義・業務定義取得部221と、複数のワークフロー定義、業務定義間の通信関係を解析し、相互に通信するワークフロー定義、業務定義を合成した合成ワークフロー定義を生成するワークフロー合成部222と、合成ワークフロー定義を格納する合成ワークフロー定義DB(データベース)223と、ワークフロー監視システム208および通信監視システム206からの監視情報を受信する監視情報受信部224と、監視情報を合成ワークフロー定義に対応付けて解析する監視情報解析部225と、監視情報を格納する監視情報格納DB(データベース)226と、定期的に起動要求を送信する起動制御部227と、現在までの合成ワークフローの状態を取得する状態観測部228と、合成ワークフローの将来状態を予測する予測部229と、合成ワークフローが適切に動作するかを検証する検証部230と、合成ワークフローの制御条件を設定する制御条件調整部231と、予測時に制御内容を選択する制御選択部232と、合成ワークフローの制御ポリシを管理するポリシ記述管理部233と、過去の制御履歴を格納する制御履歴格納DB(データベース)234と、制御信号を通信制御システム207に送信する制御信号送信部235と、合意サービス水準を保持する目標状態管理部236と、通信制御システム207同士の対応関係を保持する制御システム格納DB(データベース)237とから構成されている。この図2では、通信制御システム207を代表的に1つのみ示しているが、これが複数存在するときに、制御システム格納DB237はこれらの対応関係を保持することになる。
ここで、合成ワークフローとは、合成ワークフロー定義に従って実行される合成ワークフローのインスタンス(instance:実体)である。本明細書の以下の説明では、特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、これが複数合成された合成ワークフローが現実的には多い状況に鑑みて、「合成ワークフロー」と総称することにしている。したがって、「合成ワークフロー」という用語は、合成されたワークフローのみでなく、単一のワークフローも含んだ意味として使用している。
本実施の形態でワークフロー監視制御システム205を中心とした各システムは、概略次のように動作する。
ワークフロー定義・業務定義リポジトリ211には、監視制御対象となるワークフローシステム204で実行されるワークフローの定義や、図1に示した業務アプリケーションシステム203で実行される業務アプリケーションの定義が予め格納されている。また、合意サービス水準リポジトリ212には、監視制御対象となるワークフローシステム204や、業務アプリケーションシステム203に設定された合意サービス水準が予め格納されている。合意サービス水準リポジトリ212は、ワークフローが要する処理時間の最大許容値を設定する最大許容値設定手段に相当する。ワークフローシステム204と、業務アプリケーションシステム203の実行前に、ワークフロー定義・業務定義取得部221はワークフロー定義・業務定義リポジトリ211からワークフロー定義と、業務定義を取得する。そして、ワークフロー合成部222によって合成ワークフロー定義を作成し、合成ワークフロー定義DB223に格納する。また、目標状態管理部236は、合意サービス水準リポジトリ212から合意サービス水準情報を取得し、保持する。ワークフローシステム204と、業務アプリケーションシステム203が実行されると、業務の進捗と通信の発生をワークフロー監視システム208と、通信監視システム206が検知し、監視情報受信部224に通知する。受信した監視情報は監視情報解析部225で合成ワークフロー定義に対応付けて解析され、監視情報格納DB226に格納される。
これと並行して、起動制御部227は定期的に状態観測部228に起動要求を送る。状態観測部228は監視情報格納DB226に格納された監視情報を合成ワークフロー定義DB223に格納された合成ワークフロー定義と対応付け、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を作成する。更に、状態観測部228は制御履歴格納DB234から、現在の制御条件を取得する。状態観測部228は、前記した現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、現在の制御条件を予測部229に入力する。
ここで過去に実行された合成ワークフローの統計情報とは、複数の合成ワークフローが時間的にどのような間隔あるいは頻度で発生しているかを表わしたものである。一般に、特定の業務開始の要求が頻繁に発生するほど、それぞれの合成ワークフローについての業務の完了までの所要時間は、業務アプリケーションシステム203に処理の要求が集中することによる合成ワークフローごとの待ち時間の発生、あるいは待ち時間の長時間化により、長時間化する。それぞれの業務アプリケーションシステム203は、1つの合成ワークフローについての1つの処理単位の処理を行っている間、他の合成ワークフローについての処理を行うことができず、これを待機状態に置いてしまうからである。そこで、過去に実行された合成ワークフローの統計情報を用いると、直近の過去の情報としての後に詳しく説明する履歴情報と共に、予測部229による所要時間の予測に役立てることができる。また、個々の合成ワークフローについて所要時間の調整を図るときに、履歴情報としてリストアップされた複数の合成ワークフロー間における所要時間の調整を行うだけでなく、これらの合成ワークフローに続いて処理される他の合成ワークフローに対しても、処理時間の最大許容値が基準の範囲内となるような調整を行うことが可能になる。
予測部229は入力された情報を基に、現在実行されている合成ワークフローの将来の状態を予測する。このとき、通信制御システム207で各時刻においてどのような制御を行うかを選択する必要がある場合、制御選択部232により制御内容を選択する。そして、予測部229は予測結果と入力を検証部230に出力する。
検証部230は目標状態管理部236を参照して予測結果を判定する。そして、予測結果が妥当であれば制御情報を制御履歴格納DB234に格納し、制御信号送信部235によって通信制御システム207に送信して終了する。予測結果が妥当でなければ、制御条件調整部231に予測部229の入力と出力を通知する。制御条件調整部231は、受け取った予測部229の入力と出力、ポリシ記述管理部233の情報を参照して調整された制御条件を作成し、この調整された制御条件を制御選択部232に設定する。このとき調整された制御条件の作成が不要と判断された場合、検証部230に予測結果が妥当であることを通知する。
検証部230は、予測結果が妥当であると通知された場合、制御情報を制御履歴格納DB234に格納し、制御信号送信部235によって通信制御システム207にこれを送信して終了する。一方、検証部230は予測結果が妥当でないと通知された場合、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報とを入力として予測部229で再度合成ワークフローの将来の状態を予測する。
図3は、第1の実施の形態における通信制御システムを中心とした各システムの構成を表わしたものである。ここでは、図1に示した通信環境で、ワークフロー監視制御システム205が第1の通信制御システム2071と第2の通信制御システム2072と接続されている例を示している。これは、図2でワークフロー監視制御システム205に接続された通信制御システム207が、図3では第1および第2の通信制御システム2071、2072であると考えればよい。第1の通信制御システム2071には、第1の業務アプリケーションシステム2031および第1のワークフローシステム2041が接続されている。同様に、第2の通信制御システム2072には、第2の業務アプリケーションシステム2032および第2のワークフローシステム2042が接続されている。
第1の通信制御システム2071は、第1の業務アプリケーションシステム2031および第1のワークフローシステム2041あるいは第2の通信制御システム2072等の他の通信制御システム207が送信した情報を受信する通信受信部241と、受信した情報を保持する通信情報保持部242と、受信した情報を保持し続けるか、送信するか、棄却するかを決定する通信制御部243と、業務アプリケーションシステム203、ワークフローシステム204あるいは第2の通信制御システム2072等の他の通信制御システム207へ情報を送信する通信送信部244と、ワークフロー監視制御システム205からの制御信号を受信する制御信号受信部245と、制御条件に関する情報を保持する制御情報保持部246とから構成されている。
なお、第2の通信制御システム2072は、第1の通信制御システム2071とその回路構成が同一である。そこで、その構成の説明は省略する。
この図3に示した箇所のワークフロー監視制御システム205を中心とした各システムは、概略次のように動作する。
たとえば第1の業務アプリケーションシステム2031や第1のワークフローシステム2041が実行され、通信が発生したとする。すると、これらから送信された情報はこれらを制御対象とする第1の通信制御システム2071の通信受信部241で受信され、通信情報保持部242に保持される。通信制御部243は通信情報保持部242に受信された情報が保持された場合と、予め定められた時間に起動する。そして、通信情報保持部242に保持された各通信情報を、制御情報保持部246に格納されている制御条件を参照して、保持する通信情報と送信する通信情報および棄却する通信情報に分類する。
このうち保持する通信情報に分類されたものはそのまま保持され、棄却する通信情報に分類されたものは通信情報保持部242から削除される。送信する通信情報に分類されたものは通信送信部244により受信側の業務アプリケーションシステム203、ワークフローシステム204あるいは第2の通信制御システム2072等の他の通信制御システム207へ送信される。
受信側の第2の業務アプリケーションシステム2032および第2のワークフローシステム2042を制御対象とする第2の通信制御システム2072も同様に動作する。この結果、送信された情報は最終的に受信側の第2の業務アプリケーションシステム2032あるいは第2のワークフローシステム2042で受信される。これと並行して、ワークフロー監視制御システム205は、必要に応じて第1および第2の通信制御システム2071、2072の制御信号受信部245に対して制御信号を送信する。
制御信号受信部245は受信した制御信号を通信制御部243に通知する。通信制御部243は必要であれば通信情報保持部242に保持された各通信情報について、受信した制御条件を参照し、保持する通信情報と送信する通信情報と棄却する通信情報に分類する。保持する通信情報に分類されたものはそのまま保持され、棄却する通信情報に分類されたものは通信情報保持部242から削除される。このように棄却が行われると、該当する合成ワークフローの処理はその段階で消失する。これは、該当する業務アプリケーションシステム203および後続の他の業務アプリケーションシステム203がその合成ワークフローのための処理を行わなくてよくなったことを意味する。すなわち、棄却の対象となった合成ワークフローの犠牲の下に、他の1つまたは複数の合成ワークフローが処理時間を短縮することが可能になる。本実施の形態では、1つの業務アプリケーションシステム203に複数の合成ワークフローの処理が競合したときの待ち時間の融通処理と共に、この棄却処理がより多くの合成ワークフローを基準時間内に業務の完了に導くためのキーとなる処理動作となる。
送信する通信情報に分類されたものは通信送信部244により受信側の第2の業務アプリケーションシステム2032や第2のワークフローシステム2042を制御対象とする第2の通信制御システム2072の通信受信部241に送信される。その後、制御信号を制御情報保持部246に格納する。
図4は、本実施の形態のワークフロー監視制御システムの全体的な処理動作の概要を表わしたものである。ワークフロー監視制御システム205は、図示しないがCPU(Central Processing Unit)と、このCPUが実行する制御プログラムを格納するハードディスク等の記憶媒体を備えている。CPUはこの制御プログラムを実行することによって以上説明したワークフロー監視制御システム205内の各部のうちの少なくとも一部をソフトウェアで機能的に実現する。また、次に説明する制御を実現する。図2および図3と共に説明する。
起動制御部227は、所定の制御時間が到来するまで待機しており(ステップS301)、動作が停止している。所定の制御時間が到来すると(Y)、起動制御部227は、状態観測部228により、監視情報格納DB226に格納された監視情報を合成ワークフロー定義DB223に格納された合成ワークフロー定義と対応付ける。そして、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を作成する(ステップS302)。
次に、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、制御履歴格納DB234から取得した現在の制御条件とが予測部229に入力される。予測部229は入力されたこれらの情報を基にして、現在実行されている合成ワークフローの将来の状態を予測する。予測を行う際に、通信制御システム207において通信情報保持部242に保持された通信情報を保持、送信、棄却のどれに分類するかを決定する必要が生じる場合がある。この場合には、制御を行うべき通信制御システム207と、制御を行う時刻における合成ワークフローの状態の予測結果から制御選択部232がこれらの分類を決定する。合成ワークフローの将来の状態の予測結果と予測部229への入力は検証部230に出力される。以上がステップS303として示した処理である。
以上の処理の結果、検証部230および制御条件調整部231は予測結果が妥当であるかを目標状態管理部236、ポリシ記述管理部233を参照して判定する(ステップS304)。予測結果が妥当であれば(Y)、制御履歴格納DB234を参照して制御条件が現行の制御条件と同一であるかを判定する(ステップS305)。
制御条件が現行の制御条件と同一であると判定された場合(Y)、制御条件を送信することなくステップS301の処理に戻る(リターン)。制御条件が現行の制御条件と同一ではない場合には(ステップS305:N)、制御条件を制御履歴格納DB234に格納すると共に制御信号送信部235によって通信制御システムに送信する(ステップS306)。
一方、ステップS304で予測結果が妥当でないと判定された場合(N)、制御条件調整部231は制御条件を再調整する(ステップS307)。そして、調整後の制御条件を制御選択部232に設定し、検証部230は現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を入力として予測部229で現在実行されている合成ワークフローの将来の状態を予測する(ステップS303)。このようにしてステップS307の再調整は、予測結果が妥当であると判定される(ステップS304:Y)まで繰り返されることになる。
図5は、ワークフロー監視制御システムの制御選択部の処理の一例を具体的に表わしたものである。図2および図3と共に説明する。なお、制御選択部232の動作は監視制御対象と合意サービス水準の内容や制御条件調整部231による調整によって変化する。
ワークフロー監視制御システム205の制御選択部232は、まず、予測部229から、制御を行うべき通信制御システム207と、制御を行う時刻における合成ワークフローの状態の予測結果を入力として受け取る。そして入力された合成ワークフローのうち、入力された通信制御システム207の制御対象となるワークフローシステム204または業務アプリケーションシステム203に対して、情報を送信済みでありかつ未受信であるものを取得する(ステップS321)。
次に、ステップ321で取得された合成ワークフロー群のうち、棄却対象に指定されているものがあればこれを棄却とする(ステップS322)。次に、ステップS321で取得された合成ワークフロー群からステップS322の処理で棄却とされたものを除いた合成ワークフローの1つ1つについて、予想最短処理完了時刻を計算する(ステップS323)。ここで予想最短処理完了時刻とは、合成ワークフローが最も標準的な処理手順を最も理想的に進捗した際に処理が完了すると予想される時刻である。予想最短処理完了時刻は、一般的には、計算時の時刻に、合成ワークフローが計算時以降に最も標準的な処理手順を行った場合に処理しなければならない通信制御システム207または業務アプリケーションシステム203の平均処理時間を加算した時刻である。すなわち、予想最短処理完了時刻には、1つの業務アプリケーションシステム203に複数の処理が競合した場合の待ち時間を含んでいない。
次に制御選択部232は、ステップS323で予想最短処理完了時刻を計算した合成ワークフローの1つ1つについて、合意サービス水準達成マージンを計算する(ステップS324)。ここで合意サービス水準達成マージンとは、合成ワークフローが合意サービス水準を達成可能な最も遅い時刻から、ステップS323で計算した予想最短処理完了時刻を減算したものである。これは、合成ワークフローが合意サービス水準を達成する際の余裕時間ということができる。本実施の形態では、この余裕時間を配分することで、より多くの合成ワークフローが合意サービス水準を達成できるようにしている。
次に制御選択部232は、ステップS324で合意サービス水準達成マージンを計算した合成ワークフロー群から、このステップS324で計算した合意サービス水準達成マージンの最も小さいものを選択する。そして、選択された合成ワークフローの通信情報を送信し、ステップS322で棄却となった合成ワークフローの通信情報を棄却し、他の通信情報を保持とする出力を作成して、予測部229へ通知する(ステップS325)。
図6は、ワークフロー監視制御システムの検証部および制御条件調整部の行う処理についての一例を具体的に表わしたものである。図2および図3と共に説明する。なお、図6に示した処理動作は、検証部230ならびに制御条件調整部231の動作の一例であり、これらの処理動作は監視制御対象と合意サービス水準の内容および制御条件調整部231による調整によって変化する。
まず、ワークフロー監視制御システム205の検証部230は、予測部229から、予測結果と、この予測部229が入力として与えられた現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、現在の制御条件とを入力として受け取る(ステップS341)。次に、受け取った予測結果から、合意サービス水準が達成可能と見込まれるか否かを判定する(ステップS342)。合意サービス水準が達成可能と見込まれる場合は(Y)、予測結果は妥当と判断される(ステップS343)。
これに対して合意サービス水準が達成不可能と見込まれる場合には(ステップS342:N)、合意サービス水準達成上問題となると予想されている合成ワークフローを取得する(ステップS344)。そして、この取得した合成ワークフローに、合成ワークフロー定義から見て今後予想より改善する可能性がない合成ワークフローが存在するか否かを判定する(ステップS345)。今後予想より改善する可能性がない合成ワークフローが存在しない場合(N)、再予測を行っても改善する見込みがないため、予測結果は妥当と判断される(ステップS343)。
これに対して、今後予想より改善する可能性がない合成ワークフローが存在する場合(ステップS345:Y)、これらを棄却することにより合意サービス水準の達成可能性が高まると見込まれる。そこで、今後予想より改善する可能性がない合成ワークフローを取得し(ステップS346)、このうち進捗度合いが最も小さい合成ワークフローを棄却対象に追加して(ステップS347)、再予測が必要と判定する(ステップS348)。
以上説明した本発明の第1の実施の形態によれば、業務アプリケーションシステムおよびワークフローシステムの性能、構成を変更することなく合意サービス水準に基づくサービス提供品質を維持する可能性を高めることができる。第1の実施の形態では、業務アプリケーションシステム、ワークフローシステムの動作予測を行い、合意サービス水準に基づくサービス提供品質を維持できる適切な動作を発見し、適切な動作を行うよう制御しているためである。
また、複数の合意サービス水準が設定されている場合でも、合意サービス水準に基づくサービス提供品質を維持する可能性を高めることができる。本実施の形態では、業務アプリケーションシステムと、ワークフローシステムの動作予測を行い、合意サービス水準に基づくサービス提供品質を維持できる適切な動作を発見する際に、複数の合意サービス水準を考慮しているからである。
更に、本実施の形態では、業務アプリケーションシステム、ワークフローシステムの性能が動的に変化した場合でも、合意サービス水準に基づくサービス提供品質を維持する可能性を高めることができる。本実施の形態では、業務アプリケーションシステムと、ワークフローシステムの性能の変化を観測し、性能の変化が業務アプリケーションシステムと、ワークフローシステムの動作に与える影響を予測した上で合意サービス水準に基づくサービス提供品質を維持できる適切な動作を発見し、適切な動作を行うよう制御しているからである。
<発明の第2の実施の形態>
図7は、本発明の第2の実施の形態におけるワークフロー監視制御システムとその周辺のシステム構成の概要を表わしたものである。図7で図2と同一部分には同一の符号を付しており、これらの説明を適宜省略する。
この第2の実施の形態のワークフロー監視制御システム205Aは、将来における合成ワークフローの新規生成を予測する入力予測部401を備えている。これ以外の構成は、図2に示したワークフロー監視制御システム205と同一である。
第2の実施の形態のワークフロー監視制御システム205Aとその周辺のシステムは、概略次のように動作する。
ワークフロー定義・業務定義リポジトリ211には、監視制御対象となるワークフローシステム204で実行されるワークフローの定義や、図1に示した業務アプリケーションシステム203で実行される業務アプリケーションの定義が予め格納されている。また、合意サービス水準リポジトリ212には、監視制御対象となるワークフローシステム204や、業務アプリケーションシステム203に設定された合意サービス水準が予め格納されている。ワークフローシステム204と、業務アプリケーションシステム203の実行前に、ワークフロー定義・業務定義取得部221はワークフロー定義・業務定義リポジトリ211からワークフロー定義、業務定義を取得する。そして、ワークフロー合成部222によって合成ワークフロー定義を作成し、合成ワークフロー定義DB223に格納する。また、目標状態管理部236は、合意サービス水準リポジトリ212から合意サービス水準情報を取得し、保持する。ワークフローシステム204と、業務アプリケーションシステム203が実行されると、業務の進捗と通信の発生をワークフロー監視システム208と、通信監視システム206が検知し、監視情報受信部224に通知する。受信した監視情報は監視情報解析部225で合成ワークフロー定義に対応付けて解析され、監視情報格納DB226に格納される。
これと並行して、起動制御部227は定期的に状態観測部228に起動要求を送る。状態観測部228は監視情報格納DB226に格納された監視情報を合成ワークフロー定義DB223に格納された合成ワークフロー定義と対応付け、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を作成する。更に、状態観測部228は制御履歴格納DB234から、現在の制御条件を取得する。また、状態観測部228は、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を入力予測部401に通知する。
入力予測部401は過去の合成ワークフローの実行頻度などの情報から将来の合成ワークフローの発生パターンを予測し、合成ワークフロー発生パターン予測結果を状態観測部228に通知する。状態観測部228は、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、現在の制御条件と、合成ワークフロー発生パターン予測結果を予測部229に入力する。予測部229は入力された情報を基に、現在実行されている合成ワークフローの将来の状態を予測する。このとき、通信制御システム207で各時刻においてどのような制御を行うかを選択する必要がある場合、制御選択部232により制御内容を選択する。そして、予測部229は予測結果と入力を検証部230に出力する。
検証部230は予測結果を目標状態管理部236を参照して判定する。そして、予測結果が妥当であれば制御情報を制御履歴格納DB234に格納し、制御信号送信部235によって通信制御システム207に送信して終了する。予測結果が妥当でなければ、制御条件調整部231に予測部229の入力と出力を通知する。制御条件調整部231は、受け取った予測部229の入力と出力およびポリシ記述管理部233の情報を参照して調整された制御条件を作成し、この調整された制御条件を制御選択部232に設定する。このとき調整された制御条件の作成が不要と判断された場合、検証部230に予測結果が妥当であることを通知する。
検証部230は、予測結果が妥当であると通知された場合、制御情報を制御履歴格納DB234に格納し、制御信号送信部235によって通信制御システム207に送信して終了する。これに対して、予測結果が妥当でないと通知された場合、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、現在の制御条件と、合成ワークフロー発生パターン予測結果を入力として予測部229で再度合成ワークフローの将来の状態を予測する。
図8は、第2の実施の形態のワークフロー監視制御システムにおける全体的な処理動作の概要を表わしたものである。ワークフロー監視制御システム205Aは、第1の実施の形態のワークフロー監視制御システム205と同様に図示しないがCPUと、このCPUが実行する制御プログラムを格納するハードディスク等の記憶媒体を備えている。CPUはこの制御プログラムを実行することによって以上説明したワークフロー監視制御システム205A内の各部の少なくとも一部をソフトウェアで機能的に実現する。また、次に説明する制御を実現する。図3および図7と共に説明する。なお、図8で図4と同一部分には同一のステップ番号を付している。
起動制御部227は、所定の制御時間が到来するまで待機しており(ステップS301)、動作が停止している。所定の制御時間が到来すると(Y)、起動制御部227は、状態観測部228により、監視情報格納DB226に格納された監視情報を合成ワークフロー定義DB223に格納された合成ワークフロー定義と対応付ける。そして、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報を作成する(ステップS302)。
次に、入力予測部401により、合成ワークフロー発生パターン予測結果を作成する(ステップS361)。
次に、現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、合成ワークフロー発生パターン予測結果と、制御履歴格納DB234から取得した現在の制御条件とを予測部229に入力する。予測部229は入力された情報を基に、現在実行されている合成ワークフローの将来の状態を予測する。予測を行う際に、通信制御システム207において通信情報保持部242に保持された通信情報を保持、送信、棄却にどのように分類するかを決定する必要が生じると、制御を行うべき通信制御システム207と、制御を行う時刻における合成ワークフローの状態の予測結果から制御選択部232が分類を決定する。そして、合成ワークフローの将来の状態の予測結果と予測部229への入力を検証部230に出力する(ステップS303)。
検証部230ならびに制御条件調整部231は予測結果を目標状態管理部236およびポリシ記述管理部233を参照して判定する(ステップS304)。そして、予測結果が妥当であれば(Y)、制御履歴格納DB234を参照し制御条件が現行の制御条件と同一であるかを判定する(ステップS305)。同一であれば(Y)、制御条件は送信せずにステップS301に戻る(リターン)。制御条件が現行の制御条件と同一でなければ(ステップS305:N)、制御条件を制御履歴格納DB234に格納し制御信号送信部235によって通信制御システム207に送信する(ステップS306)。
一方、ステップS304で予測結果が妥当でないと判定された場合(N)、制御条件調整部231は制御条件を再調整し(ステップS307)、調整後の制御条件を制御選択部232に設定する。検証部230は現在実行されている合成ワークフローの状態および履歴情報と、過去に実行された合成ワークフローの統計情報と、合成ワークフロー発生パターン予測結果を入力として予測部229で現在実行されている合成ワークフローの将来の状態を予測する(ステップS303)。このようにしてステップS307の再調整は、予測結果が妥当であると判定される(ステップS304:Y)まで繰り返されることになる。
以上説明した第2の実施の形態の効果を説明する。
第2の実施の形態では、過去の合成ワークフローの履歴を基に、適切であると思われる制御を適用した場合の将来の合成ワークフローの動作を予測し、予測結果が合意サービス水準達成の観点から妥当であることを確認してから制御を行うというように構成されている。このため、ワークフローシステムが適切な動作を行うようにすることができる。
また、本実施の形態では、更に、入力予測部401を使用することで、過去の合成ワークフローの履歴を基に、適切であると思われる制御を適用した場合の将来の合成ワークフローの動作を予測する。この結果、予測結果が合意サービス水準達成の観点から妥当でなかった場合、予測結果が合意サービス水準達成の観点から妥当となるまで別の適切であると思われる制御の適用を試行するというように構成されている。このため、履歴情報の参照を行った合成ワークフロー間での合意サービス水準達成の観点からだけでなく、これら参照を行った合成ワークフローに後続する合成ワークフローに対しても、ワークフローシステムが適切な動作を行うようにすることができる。
次に、本発明の第1の実施例を示す。
図9は、本発明の第1の実施例におけるワークフロー監視制御のためのシステム構成を表わしたものである。これらの監視制御のシステムには、1つのワークフローシステム204と、第1〜第5の業務アプリケーションシステム2031〜2035が存在しており、これらが監視制御対象となっている。また、第1の通信制御システム2071が第1の業務アプリケーションシステム2031を、第2の通信制御システム2072が第2の業務アプリケーションシステム2032を、第3の通信制御システム2073が第3の業務アプリケーションシステム2033を、第4の通信制御システム2074が第4の業務アプリケーションシステム2034を、第5の通信制御システム2075が第5の業務アプリケーションシステム2035を、第6の通信制御システム2076がワークフローシステム204をそれぞれ制御対象としている。
ワークフローシステム204には1つのワークフロー定義が存在する。このワークフロー定義は、図9のスタート(start)からエンド(end)で示される流れ図で、各ステップS1〜ステップS8を経るように順に通信を行う第1のフローと、分岐のステップS5でステップS6およびステップS7を経ずにステップS8までの通信を行う第2のフローのいずれかが存在する。
ここで、第1のフローでは、第1の業務アプリケーションシステム2031、第2の業務アプリケーションシステム2032、第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第5の業務アプリケーションシステム2035、第4の業務アプリケーションシステム2034、第5の業務アプリケーションシステム2035と順次通信を行う。また、第2のフローでは、第1の業務アプリケーションシステム2031、第2の業務アプリケーションシステム2032、第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第5の業務アプリケーションシステム2035と順次通信を行う。
第1〜第5の業務アプリケーションシステム2031〜2035にはそれぞれ対応する業務アプリケーションが定義されており、それらには平均処理時間が設定されている。平均処理時間は、第1の業務アプリケーションシステム2031および第2の業務アプリケーションシステム2032については処理1件あたり5秒となっており、第3の業務アプリケーションシステム2033は処理1件あたり8秒、第4の業務アプリケーションシステム2034は処理1件あたり12秒、第5の業務アプリケーションシステム2035は処理1件あたり10秒となっている。これらのワークフロー定義および業務アプリケーション定義は、図2に示したワークフロー定義・業務定義リポジトリ211に格納されている。
また、図2に示したワークフロー定義・業務定義取得部221とワークフロー合成部222により、これらのワークフローシステム204に存在する1つのワークフロー定義と、第1〜第5の業務アプリケーションシステム2031〜2035に存在する計5つの業務アプリケーション定義を合成した1つの合成ワークフロー定義が生成され、図2に示した合成ワークフロー定義DB223に格納されている。ここで、合成ワークフロー定義とは、合成ワークフローの動作を記述したメタ情報である。
このワークフローには合意サービス水準が設定されており、99%の処理を120秒以内に完了することが求められている。この合意サービス水準は、図2に示した合意サービス水準リポジトリ212に格納されている。
また、本実施例では、ワークフロー監視システム208がワークフローシステム204を監視対象としている。
初期状態で、第1〜第6の通信制御システム2071〜2076の図3で示した制御情報保持部246は、制御対象が送信する情報を即座に送信するように設定されている。制御対象が受信する情報は一旦保持して、制御対象の平均処理時間と同じ間隔で受信した順に送信するように設定されている。また、ワークフローシステム204、第1〜第5の業務アプリケーションシステム2031〜2035間の通信は、図2に示す通信監視システム206によって監視されている。これらの監視対象および制御対象情報は、図2に示した制御システム格納DB237に格納されている。
その他、図2に示した起動制御部227は、60秒ごとに図2に示した状態観測部228を起動するように設定されている。また、図2に示した制御選択部232には図5で説明したような選択ロジックが定義されている。更に、図2に示したポリシ記述管理部233には次に説明するような制御ポリシが合意サービス水準に対応して定義されている。
図10は、この制御ポリシを示したものである。まず、合意サービス水準が達成可能であるかの判定が行われ(ステップS501)、達成可能であると判定されたときには(Y)、予測結果が妥当であると判定する(ステップS502)。
合意サービス水準が達成可能でないと判定された場合には(ステップS501:N)、120秒以内に完了しないと予想されている合成ワークフローを取得する(ステップS503)。そして、図9に示したステップS6以降に進捗している合成ワークフローが存在するかを判定する(ステップS504)。存在しない場合には(N)、予測結果は妥当と判定する(ステップS502)。
図9のステップS6以降に進捗している合成ワークフローが存在すると判定された場合には(ステップS504:Y)、そのステップS6以降に進捗している合成ワークフローを取得する(ステップS505)。そして、進捗度合いが最も小さい合成ワークフローを棄却対象に追加する(ステップS506)。そして、再予測が必要と判定することになる(ステップS507)。
図11は、このような監視対象において後に説明する時刻0から合成ワークフローが実行されているときの、時刻660に実行されている合成ワークフローの状態を示したものである。ここで、合成ワークフローとは、前記したように合成ワークフロー定義に従って実行される合成ワークフローのインスタンスである。
図11を参照すると、この時刻660において(a)〜(f)で示した6つの合成ワークフローが動作している。ここで(a)、(b)、(d)、(e)で示した各合成ワークフローは、第5の通信制御システム2075において保持されている。(c)で示した合成ワークフローは第5の業務アプリケーションシステム2035で実行中であり、残りの(f)で示した合成ワークフローは第1の業務アプリケーションシステム2031で実行中である。
図12は、図2に示した監視情報格納DBに格納されている実行されている合成ワークフローの状態および履歴情報の詳細を示したものである。ここでは、図12では「未来」に相当する時刻660における場合を示している。この図12で合成ワークフロー(a)は時刻603.867に開始しており、ワークフロー定義に従って第1の業務アプリケーションシステム2031、第2の業務アプリケーションシステム2032、第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第5の業務アプリケーションシステム2035、第4の業務アプリケーションシステム2034を順に実行し、現在第5の業務アプリケーションシステム2035の実行待ち状態にある。また、合成ワークフロー(b)は、時刻625.932に開始し、第1の業務アプリケーションシステム2031、第2の業務アプリケーションシステム2032、第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033を実行した後、ワークフロー定義の条件分岐(ステップS5)に従って第5の業務アプリケーションシステム2035、第4の業務アプリケーションシステム2034の実行を飛ばして現在第5の業務アプリケーションシステム2035の実行待ち状態にある。同様に、他の合成ワークフローについても、開始からの履歴が監視情報格納DB226に格納されている。
ここで、時刻660において図2に示した起動制御部227が同じく図2に示した状態観測部228を初めて起動したとする。すると、状態観測部228は図12にあるような合成ワークフローの状態および履歴情報を取得する。この時点では制御履歴格納DB234には、図3に示した制御情報保持部246の初期状態である、制御対象が送信する情報は即座に送信し、制御対象が受信する情報は一旦保持し、制御対象の平均処理時間と同じ間隔で受信した順に送信するという情報が設定されている。
図2に示した状態観測部228は同じく図2に示した予測部229に対して図12にあるような合成ワークフローの状態および履歴情報と、図2に示した制御履歴格納DB234の情報を入力する。予測部229は、図2に示した制御選択部232を利用し、すべての合成ワークフローが完了するまでの合成ワークフローの動作の予測を作成しようとする。このとき、まず時刻661.867において第5の通信制御システム2075から第5の業務アプリケーションシステム2035に送信する情報を選択する必要が生じる。このため、図2に示した予測部229は図2に示した制御選択部232に時刻661.867における合成ワークフローの状態および履歴情報の予測と、制御を行うべき第5の通信制御システム2075に関する情報を図2に示した制御選択部232に入力する。
図2に示した制御選択部232は、第5の通信制御システム2075で保持されている情報に対応する合成ワークフローが合成ワークフロー(a)、(b)、(d)、(e)であることから、これらの予想最短処理完了時刻を計算する。これらは、それぞれ671.867、671.867、711.867、711.867となる。予想最短処理完了時刻が異なるのは、合成ワークフロー(a)、(b)は第5の業務アプリケーションシステム2035を実行すれば終了となるのに対し、合成ワークフロー(d)、(e)は第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第5の業務アプリケーションシステム2035、第4の業務アプリケーションシステム2034、第5の業務アプリケーションシステム2035をそれぞれ実行しないと終了しないと予想されるためである。
次に、図2に示した制御選択部232は合意サービス水準達成マージンを計算する。合意サービス水準達成マージンは、「開始時刻+120(秒)−予想最短処理完了時刻」で求められ、それぞれ52.000、74.065、44.881、51.316となる。このため、合意サービス水準達成マージンが最も小さい合成ワークフローは合成ワークフロー(d)となる。したがって、合成ワークフロー(d)を送信、合成ワークフロー(a)、(b)、(e)は保持という結果が得られ、これを図2に示した予測部229に通知する。
図13は、同様にして予測部が予測を続け、すべての合成ワークフローが完了するまで続けた場合の予測結果を表わしたものである。この図13によると、合成ワークフロー(a)、(b)、(c)、(e)は共に120秒以内に処理を完了しているが、合成ワークフロー(d)、(f)は共に120秒以上を要している。
図13に示した予測結果は図2に示した検証部230で検証される。図13を参照すると、合成ワークフロー(d)、(f)が共に120秒以上を要している。これに対して、合成ワークフロー(d)および(f)はまだワークフローシステム204に定義されているワークフロー定義のステップS6に到達しておらず、120秒以内に処理が完了する可能性があると判断される。このため、図2に示した検証部230は予測結果を妥当であると判断し、図2に示した制御履歴格納DB234を参照して制御条件が現行の制御条件と同一でないと判断し、制御条件を制御履歴格納DB234に格納し、制御信号送信部235によって通信制御システムに送信する。
図14は、時刻720に状態観測部が取得する合成ワークフローの状態および履歴情報を示したものである。時刻720において図2に示した起動制御部227が図2に示した状態観測部228を再度起動する。すると、図2に示した状態観測部228は図14にあるような合成ワークフローの状態および履歴情報を取得する。図14と図13を比較すると、ほぼ予測どおりに処理が進捗しているが、合成ワークフロー(f)について、ワークフロー定義の条件分岐に従って第5の業務アプリケーションシステム2035および第4の業務アプリケーションシステム2034の実行を飛ばして現在第5の業務アプリケーションシステム2035の実行待ち状態にある。
図15は、予測部制御選択部によって合成ワークフローの将来状態を予測したものである。時刻660の時点と同様に図2に示した予測部229と図2に示した制御選択部232によって合成ワークフローの将来状態を予測すると、この図15のようになる。この予測結果を図2に示した検証部230で検証すると、合成ワークフロー(d)が120秒以内に処理を完了できない。合成ワークフロー(d)はワークフローのステップS6以降に進捗しているため、制御条件調整部231は制御選択部232に合成ワークフロー(d)を棄却対象として設定し、検証部230は再予測が必要であると判定する。このため、予測部229は再予測を行う。このとき、合成ワークフロー(d)は棄却対象に設定されているため、図2に示した制御選択部232で選択を行う際に棄却される。
図16は、合成ワークフローの予測結果を示したものである。この図16に示すように、合成ワークフロー(d)は棄却され、他の合成ワークフローは120秒以内に処理が完了している。この予測結果を図2に示した検証部230で検証すると、動作しているすべての合成ワークフローが合意サービス水準を達成している。このため、図2に示した検証部230は予測結果を妥当であると判定し、図2に示す制御履歴格納DB234を参照して制御条件が現行の制御条件と同一でないと判断する。この判断された制御条件は、制御履歴格納DB234に格納されて、制御信号送信部235によって通信制御システムに送信される。これにより、合成ワークフロー(d)は棄却され、他の5つの合成ワークフローは120秒以内に処理を完了することができる。
図17は、制御を行わない場合の合成ワークフローの動作内容を示したものである。制御を行わない場合、合成ワークフローの動作はこの図17に示すようになる。これによると、合成ワークフロー(a)、(b)はきわめて早く処理が完了するものの、合成ワークフロー(d)、(e)、(f)は120秒以内に処理が完了しておらず、合意サービス水準を達成する可能性がより小さくなっている。すなわち、本実施例では、制御を行った結果、合成ワークフロー(a)、(b)、(c)以外に合成ワークフロー(e)、(f)が新たに合意サービス水準を達成できたことになる。
次に、本発明の第2の実施例を示す。
図18は、本発明の第2の実施例におけるワークフロー監視制御のためのシステム構成を表わしたものである。この図18に示すように、これらの監視制御のシステムには、第1および第2のワークフローシステム2041、2042と、8つの業務アプリケーションシステム2031、2032、2033、2034、2035、2036、2037、2038が存在しており、これらが監視制御対象となっている。
このうち第1のワークフローシステム2041には1つのワークフロー定義が存在し、このワークフロー定義は図18に示すように第1の業務アプリケーションシステム2031、第2の業務アプリケーションシステム2032、第3の業務アプリケーションシステム2033、第4の業務アプリケーションシステム2034と順次通信を行う。また、第2のワークフローシステム2042にも1つのワークフロー定義が存在し、このワークフロー定義は図18に示すように第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第6の業務アプリケーションシステム2036、第7の業務アプリケーションシステム2037、第8の業務アプリケーションシステム2038と順次通信を行う。
各業務アプリケーションシステム2031〜2038にはそれぞれ1つの業務アプリケーションが定義されており、それらには平均処理時間が設定されている。平均処理時間は、第1の業務アプリケーションシステム2031および第5の業務アプリケーションシステム2035について処理1件あたり5秒、第2の業務アプリケーションシステム2032について処理1件あたり8秒、第3の業務アプリケーションシステム2033および第8の業務アプリケーションシステム2038について処理1件あたり15秒、第4の業務アプリケーションシステム2034について処理1件あたり12秒、第6の業務アプリケーションシステム2036および第7の業務アプリケーションシステム2037について処理1件あたり10秒となっている。これらのワークフロー定義と、業務アプリケーション定義は図2に示すワークフロー定義・業務定義リポジトリ211に格納されている。
また、図2に示すワークフロー定義・業務定義取得部221およびワークフロー合成部222により、第1のワークフローシステム2041に存在する1つのワークフロー定義と、4つの業務アプリケーションシステム2031、2032、2033、2034に存在する計4つの業務アプリケーション定義を合成した1つの合成ワークフロー定義と、第2のワークフローシステム2042に存在する1つのワークフロー定義と、第5の業務アプリケーションシステム2035、第3の業務アプリケーションシステム2033、第6の業務アプリケーションシステム2036、第7の業務アプリケーションシステム2037、第8の業務アプリケーションシステム2038に存在する計5つの業務アプリケーション定義を合成した1つの合成ワークフロー定義が生成され、図2に示した合成ワークフロー定義DB223に格納されている。
これのワークフローには合意サービス水準が設定されており、第1のワークフローシステム2041に存在する1つのワークフロー定義を中心とする合成ワークフロー定義には99%の処理を180秒以内に完了することが求められている。また、第2のワークフローシステム2042に存在する1つのワークフロー定義を中心とする合成ワークフロー定義には99%の処理を120秒以内に完了することが求められている。この合意サービス水準は図2に示す合意サービス水準リポジトリ212に格納されている。
また、ワークフロー監視システム2081が第1のワークフローシステム2041を、ワークフロー監視システム2082が第2のワークフローシステム2042をそれぞれ監視対象としている。更に、第1の通信制御システム2071が第1の業務アプリケーションシステム2031を、第2の通信制御システム2072が第2の業務アプリケーションシステム2032を、第3の通信制御システム2073が第3の業務アプリケーションシステム2033を、第4の通信制御システム2074が第4の業務アプリケーションシステム2034を、第5の通信制御システム2075が第5の業務アプリケーションシステム2035を、第6の通信制御システム2076が第6の業務アプリケーションシステム2036を、第7の通信制御システム2077が第7の業務アプリケーションシステム2037を、第8の通信制御システム2078が第8の業務アプリケーションシステム2038を、第9の通信制御システム2079が第1のワークフローシステム2041を、第10の通信制御システム20710が第2のワークフローシステム2042をそれぞれ制御対象としている。
初期状態で、各通信制御システムの制御情報保持部246(図3)は、制御対象が送信する情報を即座に送信するよう設定されている。また、制御対象が受信する情報は一旦保持し、制御対象の平均処理時間と同じ間隔で受信した順に送信するように設定されている。更に、第1および第2のワークフローシステム2041、2042、第1〜第8の業務アプリケーションシステム2031〜2038間の通信は、図2に示した通信監視システム206によって監視されている。これらの監視対象、制御対象情報は、図2に示した制御システム格納DB237に格納されている。
その他、起動制御部227は、60秒ごとに図2に示した状態観測部228を起動するよう設定されている。また、制御選択部232には図5のような選択ロジックが、更に、図2に示したポリシ記述管理部233には図10のような制御ポリシが合意サービス水準に対応して定義されている。
図19は、このような監視対象において時刻0から合成ワークフローが実行されているときの、時刻660に実行されている合成ワークフローの状態を示したものである。この図19で、時刻660において第1のワークフローシステム2041を中心とする6個の合成ワークフローと、第2のワークフローシステム2042を中心とする6個の合成ワークフローが動作している。このうち第1のワークフローシステム2041に関しては、合成ワークフロー(a1)は既に動作を完了しており、合成ワークフロー(b1)は第3の業務アプリケーションシステム2033で実行中である。合成ワークフロー(c1)、(d1)、(e1)、(f1)は第3の通信制御システム2073において保持されている。
また、第2のワークフローシステム2042に関して、合成ワークフロー(a2)は第8の業務アプリケーションシステム2038で実行中である。合成ワークフロー(b2)は第6の業務アプリケーションシステム2036で実行中であり、合成ワークフロー(c2)、(d2)、(e2)は第3の通信制御システム2073において保持されており、合成ワークフロー(f2)は第5の業務アプリケーションシステム2035で実行中である。
図20は、時刻660において前記監視情報格納DBに格納されている実行されている合成ワークフローの状態および履歴情報の詳細を表わしたものである。この図20で、合成ワークフロー(a1)は時刻605.093に開始しており、ワークフロー定義に従って各業務アプリケーションシステム2031、2032、2033、2034を実行し、終了状態にある。また、合成ワークフロー(b1)は、時刻609.832に開始し、第1の業務アプリケーションシステム2031と第2の業務アプリケーションシステム2032、を実行し、第3の業務アプリケーションシステム2033の実行状態にある。同様に、他の合成ワークフローについても、開始からの履歴が図2に示した監視情報格納DB226に格納されている。
ここで、時刻660において図2に示した起動制御部227が図2に示した状態観測部228を初めて起動すると、図2に示した状態観測部228は図20にあるような合成ワークフローの状態および履歴情報を取得する。この時点で、図2に示した制御履歴格納DB234には、図3に示した制御情報保持部246の初期状態である、制御対象が送信する情報は即座に送信するという情報と、制御対象が受信する情報は一旦保持し、制御対象の平均処理時間と同じ間隔で受信した順に送信するという情報の2種類の情報が設定されている。
図2に示した状態観測部228は図2に示した予測部229に対して図20にあるような合成ワークフローの状態および履歴情報と、図2に示した制御履歴格納DB234の情報を入力する。図2に示した予測部229は、図2に示した制御選択部232を利用し、すべての合成ワークフローが完了するまでの合成ワークフローの動作の予測を作成しようとする。このとき、まず時刻670.102において第3の通信制御システム2073から第3の業務アプリケーションシステム2033に送信する情報を選択する必要が生じる。このため、図2に示した予測部229は図2に示した制御選択部232に時刻670.102における合成ワークフローの状態および履歴情報の予測と、制御を行うべき第3の通信制御システム2073を、図2に示した制御選択部232に入力する。図2に示した制御選択部232は、第3の通信制御システム2073で保持されている情報に対応する合成ワークフローが合成ワークフロー(c1)、(d1)、(e1)、(f1)、(c2)、(d2)、(e2)であることから、これらの予想最短処理完了時刻と合意サービス水準達成マージンを計算する。
合意サービス水準達成マージンは、第1のワークフローシステム2041を中心とする合成ワークフローについては「開始時刻+180(秒)−予想最短処理完了時刻」で、また、第2のワークフローシステム2042を中心とする合成ワークフローについては「開始時刻+120(秒)−予想最短処理完了時刻」でそれぞれ求められる。これらは、それぞれ98.433、103.761、107.892、113.635、25.187、35.443、44.739となる。このため、合意サービス水準達成マージンが最も小さい合成ワークフローは合成ワークフロー(c2)となる。したがって、合成ワークフロー(c2)を送信、合成ワークフロー(c1)、(d1)、(e1)、(f1)、(d2)、(e2)は保持という結果が得られ、これを図2に示した予測部229に通知する。
図21は、同様にして予測部が予測を続け、すべての合成ワークフローが完了するまで続けたときの予測結果を表わしたものである。図21によると、すべての合成ワークフローが定められた合意サービス水準を達成している。
図22は、時刻720に起動制御部が状態観測部を再度起動したときに状態観測部が取得する合成ワークフローの状態および履歴情報を示したものである。時刻720において図2に示した起動制御部227が図2に示した状態観測部228を再度起動すると、状態観測部228は図21にあるような合成ワークフローの状態および履歴情報を取得する。図21と図22を比較すると、予測どおりに処理が進捗している。ここでも、時刻660の時点と同様に図2に示した予測部229と図2に示した制御選択部232によって合成ワークフローの将来状態を予測し、これに基づいた制御を行うと予測通り図21のような結果が得られ、すべての合成ワークフローが定められた合意サービス水準を達成する。
図23は、制御を行わない場合の合成ワークフローの動作を示したものである。図23によると、合成ワークフロー(e2)および(f2)は共に120秒以内に処理が完了しておらず、合意サービス水準を達成する可能性がより小さくなっている。
次に、この監視対象において、別の、より複雑な合意サービス水準が設定されている場合の動作を説明する。
図18の監視制御対象において、第1のワークフローシステム2041に存在する1つのワークフロー定義を中心とする合成ワークフロー定義には99%の処理を180秒以内に完了することが求められている。また、第2のワークフローシステム2042に存在する1つのワークフロー定義を中心とする合成ワークフロー定義には合成ワークフロー定義の利用者に応じて2種類の合意サービス水準が定義されており、一部の利用者に対しては99%の処理を90秒以内に完了することが求められている。また、他の利用者に対しては99%の処理を150秒以内に完了することが求められている。この合意サービス水準は図2に示した合意サービス水準リポジトリ212に格納されている。
このような監視対象において時刻0から合成ワークフローが実行されており、時刻660において実行されている合成ワークフローの状態がすでに示した図19のようであったとする。また、図19に記述されている第2のワークフローシステム2042を中心とする6個の合成ワークフローのうち、合成ワークフロー(a2)、(b2)、(c2)、(d2)、(f2)はそれぞれ合意サービス水準により99%の処理を150秒以内に完了することが求められており、合成ワークフロー(e2)は99%の処理を90秒以内に完了することが求められている。
ここで、時刻660において図2に示した起動制御部227が図2に示した状態観測部228を初めて起動すると、図2に示した状態観測部228はすでに説明した図20にあるような合成ワークフローの状態および履歴情報を取得する。この時点で図2に示した制御履歴格納DB234には、図3に示した制御情報保持部246の初期状態である、制御対象が送信する情報は即座に送信するという情報と、制御対象が受信する情報は一旦保持し、制御対象の平均処理時間と同じ間隔で受信した順に送信するという情報の2種類の情報が設定されている。図2に示した状態観測部228は図2に示した予測部229に対し図20にあるような合成ワークフローの状態および履歴情報と、図2に示した制御履歴格納DB234の情報を入力する。
図2に示した予測部229は、図2に示した制御選択部232を利用し、すべての合成ワークフローが完了するまでの合成ワークフローの動作の予測を作成しようとする。このとき、まず時刻670.102において第3の通信制御システム2073から第3の業務アプリケーションシステム2033に送信する情報を選択する必要が生じる。このため、図2に示した予測部229は図2に示した制御選択部232に時刻670.102における合成ワークフローの状態および履歴情報の予測と、制御を行うべき第3の通信制御システム2073を図2に示した制御選択部232に入力する。図2に示した制御選択部232は、第3の通信制御システム2073で保持されている情報に対応する合成ワークフローが合成ワークフロー(c1)、(d1)、(e1)、(f1)、(c2)、(d2)、(e2)であることをから、これらの予想最短処理完了時刻と合意サービス水準達成マージンを計算する。
合意サービス水準達成マージンは、合成ワークフロー(c1)、(d1)、(e1)、(f1)については「開始時刻+180(秒)−予想最短処理完了時刻」で、合成ワークフロー(c2)、(d2)については「開始時刻+150(秒)−予想最短処理完了時刻」で、合成ワークフロー(e2)については「開始時刻+90(秒)−予想最短処理完了時刻」でそれぞれ求められる。これらは、それぞれ98.433、103.761、107.892、113.635、55.187、65.443、14.739となる。このため、合意サービス水準達成マージンが最も小さい合成ワークフローは合成ワークフロー(e2)となる。したがって、合成ワークフロー(e2)を送信、合成ワークフロー(c1)、(d1)、(e1)、(f1)、(c2)、(d2)は保持という結果が得られる。これを図2に示した予測部229に通知する。
図24は、同様にして予測部が予測を続け、すべての合成ワークフローが完了するまで続けたときの予測結果を示したものである。この図24に示した予測結果によると、すべての合成ワークフローが定められた合意サービス水準を達成している。
図25は、時刻720に起動制御部が状態観測部を再度起動した場合に、状態観測部が取得する合成ワークフローの状態および履歴情報を示したものである。時刻720において図2に示した起動制御部227が図2に示した状態観測部228を再度起動すると、図2に示した状態観測部228は図25のような合成ワークフローの状態および履歴情報を取得する。図24と図25を比較すると、予測どおりに処理が進捗している。ここでも、時刻660の時点と同様に図2に示した予測部229と図2に示した制御選択部232によって合成ワークフローの将来状態を予測し、これに基づいた制御を行うと予測通り図24のような結果が得られ、すべての合成ワークフローが定められた合意サービス水準を達成する。
すでに説明した図22と図24を比較すると、合成ワークフロー(e2)の処理時間が105.363から75.363に改善している。これにより、合意サービス水準を達成していることが分かる。
なお、以上説明した実施の形態および実施例では、業務アプリケーションシステム203を単位となる業務処理(サービス)のために使用したが、「業務」は必ずしも事務的な仕事に限定されるものではない。たとえば、ゲームのそれぞれ単位となる処理を、それぞれ対応した業務アプリケーションシステム203に行わせることも本発明の適用の範囲内である。
本発明が実施される一般的な通信環境を表わした説明図である。 本発明の第1の実施の形態のワークフロー監視制御システムとその周辺のシステム構成の概要を表わしたシステム構成図である。 第1の実施の形態における通信制御システムを中心とした各システムの構成を表わしたブロック図である。 第1の実施の形態におけるワークフロー監視制御システムの全体的な処理動作の概要を表わした流れ図である。 第1の実施の形態におけるワークフロー監視制御システムの制御選択部の処理の一例を具体的に表わした。 第1の実施の形態におけるワークフロー監視制御システムの検証部および制御条件調整部の行う処理についての一例を具体的に表わした流れ図である。 本発明の第2の実施の形態におけるワークフロー監視制御システムとその周辺のシステム構成の概要を表わしたシステム構成図である。 第2の実施の形態のワークフロー監視制御システムの全体的な処理動作の概要を表わした流れ図である。 本発明の第1の実施例におけるワークフロー監視制御のためのシステム構成を表わした説明図である。 第1の実施例における制御ポリシを示す流れ図である。 第1の実施例で時刻660に実行されている合成ワークフローの状態を示した説明図である。 第1の実施例で実行されている合成ワークフローの状態および履歴情報を示した説明図である。 第1の実施例ですべての合成ワークフローが完了するまで予測部が予測を続けた予測結果を表わした説明図である。 第1の実施例で時刻720に状態観測部が取得する合成ワークフローの状態および履歴情報を示した説明図である。 第1の実施例で予測部制御選択部によって合成ワークフローの将来状態を予測した内容を示す説明図である。 第1の実施例で合成ワークフローの予測結果を示した説明図である。 第1の実施例で制御を行わない場合の合成ワークフローの動作内容を示した説明図である。 本発明の第2の実施例におけるワークフロー監視制御のためのシステム構成を表わした説明図である。 第2の実施例で時刻660に実行されている合成ワークフローの状態を示した説明図である。 第2の実施例で時刻660において前記監視情報格納DBに格納されている実行されている合成ワークフローの状態および履歴情報を示した説明図である。 第2の実施例で予測部が予測を続け、すべての合成ワークフローが完了するまで続けたときの予測結果を表わした説明図である。 第2の実施例で時刻720に起動制御部が状態観測部を再度起動したときに状態観測部が取得する合成ワークフローの状態および履歴情報を示した説明図である。 第2の実施例で制御を行わない場合の合成ワークフローの動作を示した説明図である。 第2の実施例でより複雑な合意サービス水準が設定されている場合に予測部が予測を続け、すべての合成ワークフローが完了するまで続けたときの予測結果を示した説明図である。 第2の実施例でより複雑な合意サービス水準が設定されている場合に時刻720に起動制御部が状態観測部を再度起動したときの、状態観測部が取得する合成ワークフローの状態および履歴情報を示した説明図である。 関連技術によるサービス制御システムの構成を表わした。
符号の説明
201 サブネットワーク
202 ルータ
203 業務アプリケーションシステム
204 ワークフローシステム
205 ワークフロー監視制御システム
206 通信監視システム
207 通信制御システム
208 ワークフロー監視システム
211 ワークフロー定義・業務定義リポジトリ
212 合意サービス水準リポジトリ
222 ワークフロー合成部
223 合成ワークフロー定義DB
225 監視情報解析部
226 監視情報格納DB
227 起動制御部
228 状態観測部
229 予測部
230 検証部
231 制御条件調整部
232 制御選択部
233 ポリシ記述管理部
234 制御履歴格納DB
235 制御信号送信部
236 目標状態管理部
237 制御システム格納DB
242 通信情報保持部
243 通信制御部
246 制御情報保持部

Claims (14)

  1. 特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを用意したワークフロー定義を設定するワークフロー定義設定手段と、
    前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが守るべきサービス提供品質を設定するサービス提供品質設定手段と、
    前記特定の業務開始の時刻を異にした複数のワークフローについて前記業務の完了までに要する処理時間をそれぞれ予測する処理時間予測手段と、
    この処理時間予測手段の予測した処理時間が前記サービス提供品質設定手段で設定したサービス提供品質を維持するワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整手段
    とを具備することを特徴とするワークフロー監視制御システム。
  2. 前記処理時間予測手段は、過去における前記特定の業務開始の時刻の発生間隔を示す参考データを参考にして前記特定の業務開始の時刻を異にした複数のワークフローについての前記業務の完了までに要する処理時間を予測することを特徴とする請求項1記載のワークフロー監視制御システム。
  3. 前記ワークフローは、前記特定の業務開始から業務の完了までに複数のワークフローが合成された合成ワークフローであることを特徴とする請求項1記載のワークフロー監視制御システム。
  4. 前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが要する処理時間の最大許容値を設定する最大許容値設定手段を備えており、
    前記待ち時間調整手段は、前記特定の業務開始の時刻を異にした複数のワークフローのうちの特定の1または複数の処理を棄却することで前記最大許容値設定手段で設定した最大許容値の範囲内になるワークフローが最大数となるように調整するワークフロー棄却手段を具備することを特徴とする請求項1記載のワークフロー監視制御システム。
  5. 前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが要する処理時間の最大許容値を設定する最大許容値設定手段を備えており、
    この最大許容値設定手段は、合意サービス水準(SLA:Service Level Agreement)に基づくサービス提供品質で最大許容値を設定していることを特徴とする請求項1記載のワークフロー監視制御システム。
  6. 前記アプリケーションソフトウェアはそれぞれ対応する通信手段を介してネットワークを通じて対応する処理を行うことを特徴とする請求項1記載のワークフロー監視制御システム。
  7. 前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが要する処理時間の最大許容値を設定する最大許容値設定手段を備えており、
    前記最大許容値設定手段は、複数段階の最大許容値を設定することを特徴とする請求項1記載のワークフロー監視制御システム。
  8. 前記参考データは、過去のワークフローにおける前記特定の業務開始の要求の発生間隔の統計情報から予測される将来の前記特定の業務開始の要求の発生間隔を示すものであることを特徴とする請求項2記載のワークフロー監視制御システム。
  9. 前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが要する処理時間の最大許容値を設定する最大許容値設定手段を備えており、
    前記ワークフローが守るべきサービス提供品質は、前記ワークフローが要する処理時間の最大許容値であり、前記サービス提供品質設定手段で設定したサービス提供品質を維持するワークフローが最大数となるとは、前記最大許容値設定手段で設定した最大許容値の範囲内になるワークフローが最大数となることであることを特徴とする請求項1記載のワークフロー監視制御プログラム。
  10. 前記ワークフロー定義設定手段が設定するワークフロー定義は、前記処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアの少なくとも1つのアプリケーションソフトウェアが前記複数の処理単位のうちの所定の複数を時間を異にすることで兼用して処理するように取り決めたものであり、前記待ち時間調整手段は、前記複数の処理単位のうちの所定の複数を時間を異にすることで兼用して処理するアプリケーションソフトウェアに対するワークフロー間の処理開始までの待ち時間の調整を行うことを特徴とする請求項1記載のワークフロー監視制御プログラム。
  11. 特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを用意したワークフロー定義を設定するワークフロー定義設定手段で設定されたそれぞれのワークフローが、前記特定の業務開始から業務の完了までに要する処理時間をそれぞれ予測する処理時間予測ステップと、
    この処理時間予測ステップで予測した処理時間が予め設定した最大許容値の範囲内になるワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整ステップ
    とを具備することを特徴とするワークフロー監視制御方法。
  12. 前記待ち時間調整ステップは、前記特定の業務開始の時刻を異にした複数のワークフローのうちの特定の1または複数の処理を棄却することで前記最大許容値の範囲内になるワークフローが最大数となるように調整するワークフロー棄却ステップを具備することを特徴とする請求項11記載のワークフロー監視制御方法。
  13. 特定の業務開始から複数の処理単位の処理を順次経ることで業務の完了に至るワークフローについて、前記処理単位ごとに排他的な使用状態で処理を行うアプリケーションソフトウェアを通信手段を介してそれぞれ用意したワークフロー定義をワークフロー定義設定手段に設定し、かつ前記特定の業務開始から業務の完了までに前記ワークフロー定義設定手段で設定されたそれぞれのワークフローが守るべきサービス提供品質をサービス提供品質設定手段に設定した装置のコンピュータに、
    前記特定の業務開始の時刻を異にした複数のワークフローについて前記業務の完了までに要する処理時間をそれぞれ予測する処理時間予測処理と、
    この処理時間予測処理の予測した処理時間が前記サービス提供品質設定手段で設定したサービス提供品質を維持するワークフローが最大数となるようにワークフロー間の処理開始までの待ち時間の調整を行う待ち時間調整処理
    とを実行させることを特徴とするワークフロー監視制御プログラム。
  14. 前記待ち時間調整処理は、前記特定の業務開始の時刻を異にした複数のワークフローのうちの特定の1または複数の処理を棄却することで前記最大許容値の範囲内になるワークフローが最大数となるように調整するワークフロー棄却処理を実行させることを特徴とする請求項13記載のワークフロー監視制御プログラム。
JP2008008669A 2008-01-18 2008-01-18 ワークフロー監視制御システム、監視制御方法および監視制御プログラム Pending JP2009169787A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008008669A JP2009169787A (ja) 2008-01-18 2008-01-18 ワークフロー監視制御システム、監視制御方法および監視制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008008669A JP2009169787A (ja) 2008-01-18 2008-01-18 ワークフロー監視制御システム、監視制御方法および監視制御プログラム

Publications (1)

Publication Number Publication Date
JP2009169787A true JP2009169787A (ja) 2009-07-30

Family

ID=40970857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008008669A Pending JP2009169787A (ja) 2008-01-18 2008-01-18 ワークフロー監視制御システム、監視制御方法および監視制御プログラム

Country Status (1)

Country Link
JP (1) JP2009169787A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101643251B1 (ko) * 2015-04-29 2016-07-28 한국과학기술원 컴퓨팅 워크플로우에서 작업 분할 방식을 이용한 가상머신 스케줄링 방법
KR20200018999A (ko) * 2018-08-13 2020-02-21 에스케이하이닉스 주식회사 블록의 상태에 따라 사용 여부를 결정하는 메모리 시스템 및 메모리 시스템의 동작 방법

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101643251B1 (ko) * 2015-04-29 2016-07-28 한국과학기술원 컴퓨팅 워크플로우에서 작업 분할 방식을 이용한 가상머신 스케줄링 방법
KR20200018999A (ko) * 2018-08-13 2020-02-21 에스케이하이닉스 주식회사 블록의 상태에 따라 사용 여부를 결정하는 메모리 시스템 및 메모리 시스템의 동작 방법
KR102533072B1 (ko) * 2018-08-13 2023-05-17 에스케이하이닉스 주식회사 블록의 상태에 따라 사용 여부를 결정하는 메모리 시스템 및 메모리 시스템의 동작 방법

Similar Documents

Publication Publication Date Title
US8918792B2 (en) Workflow monitoring and control system, monitoring and control method, and monitoring and control program
US11748154B2 (en) Computing node job assignment using multiple schedulers
US8276143B2 (en) Dynamic scheduling of application tasks in a distributed task based system
CN111404992B (zh) 承租人控制的云更新
US8442958B2 (en) Server change management
CN104243405B (zh) 一种请求处理方法、装置及系统
US10338964B1 (en) Computing node job assignment for distribution of scheduling operations
US20230065049A1 (en) Configuring nodes for distributed compute tasks
JP2014532946A (ja) クラスタに依頼されたタスクを実行するために前記クラスタのコンピュータ資源を割り当てるための方法、コンピュータプログラム、およびデバイス
JP6301413B2 (ja) データ伝送制御方法及び装置
JPWO2007072544A1 (ja) 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム
US9607275B2 (en) Method and system for integration of systems management with project and portfolio management
CN101908004A (zh) 促进请求执行的装置和方法
CN104040506A (zh) 均衡使用共享的存储器系统的多个请求器的带宽
Huang et al. Dynamically scheduling and maintaining a flexible server
CN107172149A (zh) 大数据即时调度方法
JP2009169787A (ja) ワークフロー監視制御システム、監視制御方法および監視制御プログラム
US20060203813A1 (en) System and method for managing a main memory of a network server
JP2010009288A (ja) マルチプロセッサシステム及びプログラム実行方法
JP2016130962A (ja) データ退避制御方法、データ退避制御プログラム、及びデータ退避制御装置
Lent An online method for opportunistic task replications
JP2009151376A (ja) 分散処理方法、計算機管理装置及び分散処理システム
JP7475311B2 (ja) ネットワークに設定する設定帯域の決定装置
CN114866612B (zh) 一种电力微服务卸载方法及装置
US20230333908A1 (en) Method and system for managing resource buffers in a distributed multi-tiered computing environment