JP4999567B2 - 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体 - Google Patents

情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体 Download PDF

Info

Publication number
JP4999567B2
JP4999567B2 JP2007159587A JP2007159587A JP4999567B2 JP 4999567 B2 JP4999567 B2 JP 4999567B2 JP 2007159587 A JP2007159587 A JP 2007159587A JP 2007159587 A JP2007159587 A JP 2007159587A JP 4999567 B2 JP4999567 B2 JP 4999567B2
Authority
JP
Japan
Prior art keywords
version
information
organization
job
workflow
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
JP2007159587A
Other languages
English (en)
Other versions
JP2008310710A (ja
JP2008310710A5 (ja
Inventor
弘毅 島田
賢治 飯沼
Original Assignee
キヤノンソフトウェア株式会社
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 キヤノンソフトウェア株式会社 filed Critical キヤノンソフトウェア株式会社
Priority to JP2007159587A priority Critical patent/JP4999567B2/ja
Publication of JP2008310710A publication Critical patent/JP2008310710A/ja
Publication of JP2008310710A5 publication Critical patent/JP2008310710A5/ja
Application granted granted Critical
Publication of JP4999567B2 publication Critical patent/JP4999567B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、遷移経路が前記組織情報で定義されたジョブのワークフロー制御に関する。
特許文献1には、組織変更後及び変更前の新旧両組織を登録し、あるユーザが、現在もしくは過去において指定された組織に所属していた(または所属している)ことをもってワークフロー処理の実行権限があるかどうかを判定するワークフローが開示されている。
特開2006−195812号公報
しかしながら、特許文献1では、ユーザの実行権限の有無は判定可能であるが、組織変更を跨いだワークフローの場合、次の担当者(遷移先)を自動的に決定できない場合が発生するといった問題点があった。
例えば、あるユーザが同一部門に所属している間に上司にあたる課長が替わっている場合に、そのユーザが申請した伝票をどちらの課長が承認するべきなのかを自動的に決定することが出来ないため、ユーザが判断をしてどちらかの課長に承認を依頼するといった煩雑な作業をユーザに課してしまうといった問題点があった。
また、組織の判定を現在から過去に向かって行うので、将来の組織と現在の組織と区別がつかないため、将来の組織をあらかじめ登録しておくといったことが出来ない。
また、ワークフロー開始時に指定した組織コードをもとに参照する組織を決定するため、個別のワークフローの進行のみ現組織での運用を行いたい場合に対応できないといった問題点があった。
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、ワークフローにおいて新旧を含む複数のバージョンを共存させ、組織情報を効率的に管理できる仕組みを提供することである。
本発明は、遷移経路が組織情報により定義されたジョブのワークフローを制御する情報処理装置であって、前記組織情報を構成する要素毎に当該要素の有効となる期間の開始を示すバージョンを特定可能な開始バージョン識別情報および期間の終了を示すバージョンを特定可能な終了バージョン識別情報を記憶する組織情報格納手段と、前記バージョン毎の有効となる期間を特定する日時情報を記憶するバージョン有効期間格納手段と、前記ジョブの遷移先を決定する際に参照する前記組織情報のバージョンとして、指定されたバージョン識別情報、又は、指定された日時と前記バージョン有効期間格納手段に格納された日時情報から確定されるバージョンを該ジョブの関連情報として設定する設定手段と、前記遷移経路を定義する組織情報および前記ジョブの関連情報として設定された前記組織情報のバージョンに応じて、該ジョブの遷移先を決定し、該決定された遷移先にジョブを遷移させてワークフローを進行させるワークフロー進行手段と、前記組織情報の更新指示を受付けた際に前記要素の更新種別を判別する要素更新判別手段と、前記要素更新判別手段による判別結果に応じて前記組織情報格納手段に格納された開始バージョン識別情報または終了バージョン識別情報を更新する組織情報更新手段と、を有することを特徴とする。
本発明によれば、組織情報の開始バージョンと終了バージョンを管理することで、組織情報があった場合の組織変更を効率的に管理し実行することができる。
また、ワークフローの状態に関わらず将来の組織情報を登録することができる。また、有効化を行うまで使用しないことができる。
また、旧バージョンの組織で進行中のワークフローでも、途中で現バージョンの組織での運用に切り替えることができる。そして、このような切替のために発生しうる合議のやり直しを抑制することができる。
また、複数のバージョンの組織を管理するが、変更がない部分のデータを効率よく管理することにより、データレコード数を抑えることができる。また、差分を考慮しないバッチ処理による編集を行ってもデータレコード数が膨大になってしまうといった事態の発生を抑制することができる。
従って、新旧を含む複数のバージョンの組織で進行するワークフローを共存させ、矛盾なく処理することができる等の効果を奏する。即ち、旧組織で進行するワークフローと、新組織で進行するワークフローとを共存させることができる。即ち、進行中のワークフローの組織バージョンを新旧自在に変更することができる。
〔第1実施形態〕
以下、本発明の実施形態について図面を参照して説明する。
図1は、本発明の一実施形態を適用可能なワークフローシステムの一例を示す図である。
図1において、ワークフローシステムは少なくとも1つのワークフローサーバ101とワークフロークライアント102とがネットワーク100を介して接続されている。
ユーザは、例えばウェブブラウザやクライアントソフトウェア等を利用して、ワークフロークライアント102から、ワークフローサーバ101に対して、ワークフロー進行の要求等を行う。
ワークフローサーバ101は、ワークフロークライアント102からの要求に応じた処理、管理を行い、必要があればワークフロークライアント102に対して結果等を送信する。
ワークフローサーバ101とワークフロークライアント102の間の通信は、通常のHTTPのリクエストでもよいし、SOAPなどを利用したウェブサービスのリクエストでもよい。
図2は、図1に示したワークフローサーバ101とワークフロークライアント102のハードウェア構成の一例を示すブロック図である。
図2において、CPU201は、システムバス204に接続される各デバイスを統括的に制御する。また、ROM203あるいは外部メモリ211には、CPU201の制御プログラムであるオペレーティングシステム(OS)や、各サーバあるいは各クライアントの後述する各種機能を実現するためのプログラムが記憶されている。
RAM202は、CPU201の主メモリ、ワークエリア、一時待避領域等として機能する。
入力コントローラ205は、入力部209からの入力を制御する。この入力部209としては、特に、サーバやクライアント等の端末では、キーボード、マウス等のポインティングデバイスが挙げられる。また、印刷装置等では、この入力部209として、タッチパネル、ボタン、スイッチ等が挙げられる。
出力コントローラ206は、出力部210の表示を制御する。この出力部210としては、例えば、CRTや液晶等が挙げられる。
外部メモリコントローラ207は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ211へのアクセスを制御する。加えて、外部メモリコントローラ207には、各サーバあるいは各クライアントの各種機能を実現するための各種テーブル、パラメータが記憶されている。
この外部メモリ211としては、ハードディスク(HD)やフロッピー(登録商標)ディスク(FD)、PCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)、スマートメディア等が挙げられる。
通信I/Fコントローラ208は、ネットワーク214を介して外部機器との通信制御処理を実行する。
なお、212はハードウェアの如く図示されているが、ハードウェアではなく、本発明を実現するためのプログラムである。このプログラム212は、外部メモリ211に記録されており、必要に応じてRAM202にロードされることによりCPU201によって実行されるものである。
図3は、図1に示したワークフローサーバ101において実現される機能構成の一例を示す図である。
図3に示すように、ワークフローサーバ101は、その機能構成として、入出力処理部301と、ワークフロー進行部302と、担当者判定部303と、組織情報登録部304と、組織付替部305と、プロセス定義情報格納部310と、ジョブ情報格納部311と、バージョン有効期間情報格納部312と、組織情報格納部316(部門情報格納部313と、ロール情報格納部314と、ユーザポジション情報格納部315)とを含んでいる。
入出力処理部301は、ワークフローサーバ101の入力コントローラ205または通信I/Fコントローラ208からの入力情報を受け付ける処理を行う。また、入出力処理部301は、受け付けた入力情報を内容によりワークフロー進行部302や組織情報登録部304への要求に変換する。さらに、入出力処理部301は、上記要求に対応する結果が応答される場合には、その結果を出力コントローラ206または通信I/Fコントローラ208に対して出力する。
ワークフロー進行部302は、入出力処理部301からの要求に応じて、ワークフローの進行(回覧)を制御する。詳細には、ワークフロー進行部302は、プロセス定義情報格納部310に格納されているプロセス定義情報を参照して、ジョブの作成または進行を行い、作成または進行したジョブをジョブ情報格納部311に格納し、次回の進行時に参照する。なお、ジョブの作成の際には、ワークフロー進行部302は、後述する図12に示すバージョン番号確定処理により確定したバージョン番号をジョブ情報格納部311にあわせて格納する。また、ジョブの進行の際には、ワークフロー進行部302は、担当者判定部303によって判定された担当者をジョブの担当者として、ジョブ情報格納部311にあわせて格納する。
担当者判定部303は、ワークフロー進行部302などからの要求に応じて、部門情報格納部313に格納されている部門情報と、ロール情報格納部314に格納されているロール情報と、ユーザポジション情報格納部315に格納されているユーザポジション情報と、バージョン有効期間情報格納部312に格納されているバージョン有効期間情報と、を参照して指定された部門およびロール(役割)の担当者が指定されたバージョンにおいてどのユーザポジションであるかの判定を行う。
組織付替部305は、ワークフロー進行部302などからの要求に応じて、ジョブ情報格納部311に格納されているジョブ情報と、部門情報格納部313に格納されている部門情報と、ロール情報格納部314に格納されているロール情報と、ユーザポジション情報格納部315に格納されているユーザポジション情報と、バージョン有効期間情報格納部312に格納されているバージョン有効期間情報と、を参照してジョブの参照組織バージョンの付替え(詳細は後述する)を行う。
組織情報登録部304は、入出力処理部301から要求された組織登録要求を処理し、部門情報を部門情報格納部313に、ロール情報をロール情報格納部314に、ユーザポジション情報をユーザポジション情報格納部315に、バージョン有効期間情報をバージョン有効期間情報格納部312に、それぞれ格納する。
プロセス定義情報格納部310は、プロセス定義情報を格納する格納部である。なお、プロセス定義情報格納部に格納されているプロセス定義情報の詳細は後述する図4などに示す。
ジョブ情報格納部311は、ジョブ情報を格納する格納部である。ジョブ情報格納部311には、項目として、ジョブ識別情報、参照プロセス定義識別情報、参照組織バージョン識別情報、現在アクティビティ識別情報、割当担当者識別情報等を含む。
部門情報格納部313は、部門情報を格納する格納部である。なお、部門情報格納部313に格納されている部門情報の詳細は後述する図6などに示す。
ロール情報格納部314は、ロール情報(役割情報)を格納する格納部である。なお、ロール情報格納部314に格納されているロール情報の詳細は後述する図7などに示す。
ユーザポジション情報格納部315は、ユーザポジション情報(所属情報)を格納する格納部である。なお、ユーザポジション情報格納部315に格納されているユーザポジション情報の詳細は後述する図8などに示す。
バージョン有効期間情報格納部312は、バージョン有効期間情報を格納する格納部である。なお、バージョン有効期間情報格納部312に格納されているバージョン有効期間情報の詳細は後述する図9などに示す。
なお、入出力処理部301と、ワークフロー進行部302と、担当者判定部303と、組織情報登録部304と、組織付替部305は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される機能に対応する。
また、プロセス定義情報格納部310と、ジョブ情報格納部311と、バージョン有効期間情報格納部312と、組織情報格納部316(部門情報格納部313と、ロール情報格納部314と、ユーザポジション情報格納部315)とは、外部メモリ211内の記憶領域として実現される。
以下、図4〜図9を用いて、本実施形態の説明に用いるプロセス定義、組織、部門情報、ロール情報、ユーザポジション情報、バージョン有効期間情報等を説明する。
図4は、図3に示したプロセス定義情報格納部310に格納されるプロセス定義情報の一例を示す図である。
図4に示すように、プロセス定義情報は、アクティビティ501において、申請者が申請を行うと、次のアクティビティ502に遷移し、申請部門の課長が担当者となり、さらに、アクティビティ502において、担当者である申請部門の課長が承認を行うと、次のアクティビティ503に遷移し、申請部門の部長と業務部の部長が合議担当者となり、さらに、アクティビティ503において、合議担当者である申請部門部長と業務部部長が賛成の承認処理を行うと、完了アクティビティに遷移する、ことを示す情報に対応する。
なお、上記申請部門とは、申請者が所属する部門のことを示している。また、上記合議担当者とは、1つのアクティビティを複数人の投票によって承認の可否を決定するようなアクティビティの場合の担当者のことをいう。例えば、営業課課員のCが申請した場合には、アクティビティ502の担当者は申請部門である営業課の課長Bが担当となるし、合議アクティビティ503では申請部門である営業部の部長Aと、業務部部長Dが合議の担当者となり、ワークフローが進行する。
図4に示したプロセス定義は単純な例だが、分岐や並列処理をともなう複雑なプロセス定義であるとしても、担当部門と担当ロールが定義されたアクティビティと、その遷移先を示すトランジションが定義されていることにおいて、かわりはない。また、この例においては、部門の指定を申請部門としているが、実際の部門識別情報を用いて指定することもできる。
以上に示したように、本実施形態のワークフローサーバ101は、図4に示したように、遷移経路が組織情報(部門,役割)で定義されたプロセス定義によって定義されたジョブのワークフローを制御する構成となっている。
図5は、本実施形態の説明に用いる組織の一例を示す図である。
例えば、図5に示すように、2007年3月1日以降2007年4月1日までは、V2バージョン601の組織が有効である。このV2バージョン601の組織には、例えば営業部610と、営業課611と、業務課612と、が含まれ、営業課611と、業務課612と、は営業部610の配下にあることを示す。
また、営業部610には、ユーザAが部長として所属620し、営業課611には、ユーザBが課長として所属621し、ユーザCが課員として所属622し、業務課612には、ユーザDが課長として所属623し、ユーザEが課員として所属624している様子を表している。
また、V3バージョン602の組織においては、2007年4月1日以降2007年4月10日まで有効である。このV3バージョン602の組織では、業務部613が新設され、業務課612は業務部613の配下に移る組織変更が行われ、業務部613にユーザEが部長として所属625(兼務)になる、人事異動が行われたことを示している。
また、V4バージョン603の組織においては、2007年4月10日以降2007年7月1日まで有効である。このV4バージョン603の組織では、営業課611に課長として所属していたユーザB621は任をとかれ、新たに課長としてユーザGが所属627になり、業務課612に課長を兼務していたユーザDはその任を解かれ、業務課612に課員として所属していたユーザEは、業務課612に課長として所属626になり、あらたにユーザFが課員として所属628する、人事異動が行われたことを示している。
図6は、図3に示した部門情報格納部313に格納されている部門情報の一例を示す図である。
図6に示すように、部門情報は、各部門毎に、項目として、部門ID701と、部門名702と、親部門ID703と、開始バージョン番号704(開始情報)と、終了バージョン番号705(終了情報)とを含む。
例えば、部門ID701には、部門を識別する識別情報が設定されている。また、部門名702には、前記部門の名称が設定されている。また、親部門ID703には、前記部門が所属する部門の識別情報が設定されている。
また、開始バージョン番号704には、前記部門が新設された組織のバージョン番号が設定されている。また、終了バージョン番号705には、前記部門が破棄された組織のバージョン番号、または前記組織がもっとも未来の組織のバージョンにおいても存在する場合にはそれを示す値、例えば「HV」が設定されている。
なお、図6に示す例は、図5に示した組織変更が行われた例に対応する。例えば、部門ID701がD3である業務課612の親部門703は、バージョンV1以降V3まではD1(営業部)であるが、バージョンV3以降は、D4(業務部)となっていることが表されている。また、バージョンV3以降に、部門ID701がD4である業務部が新設されたことが表されている。
図7は、図3に示したロール情報格納部314に格納されているロール情報の一例を示す図である。
図7に示されるように、ロール情報は、ロール(役割)毎に、項目として、ロールID801と、ロール名称802と、開始バージョン番号803と終了バージョン番号804とを含む。
例えば、ロールID801には、ロールを識別する識別情報が設定されている。また、ロール名802には、前記ロールの名称が設定されている。
また、開始バージョン番号804には、前記ロールが新設された組織のバージョン番号が設定されている。また、終了バージョン番号805には、前記ロールが破棄された組織のバージョン番号、または前記ロールがもっとも未来の組織のバージョンにおいても存在する場合にはそれを示す値、例えば「HV」が設定されている。
図8は、図3に示したユーザポジション情報格納部315に格納されているユーザポジション情報の一例を示す図である。
図8に示されるように、ユーザポジション情報は、ユーザポジション毎に、項目として、ユーザID901と、部門ID902と、ロールID903と、ユーザポジション名称904と、開始バージョン番号905と、終了バージョン番号906とを含む。
例えば、ユーザID901にはユーザを識別する識別情報が設定されている。また、部門ID902には、前記ユーザが所属する部門の識別情報が設定されている。
また、ロールID903には、前記ユーザが前記部門に所属する際のロールの識別情報が設定されている。また、ユーザポジション名称904には、前記ユーザが前記部門に前記ロールで所属する際のユーザ名称などが設定されている。また、開始バージョン番号905には、前記ユーザが前記部門に前記ロールで所属し始めた組織のバージョン番号が設定されている。
また、終了バージョン番号906には、前記ユーザが前記部門に前記ロールで所属しなくなった組織のバージョン番号、または前記ロールがもっとも未来の組織のバージョンにおいても所属する場合にはそれを示す値、例えば「HV」が設定されている。
図8に示した例は、図5に示した人事異動が行われた例に対応している。例えば、ユーザID901がDであるユーザについては、バージョンV1以降バージョンV4までは、部門ID902がD3(業務課)にロールID903がR2(課長)として所属していることを示す。また、バージョンV3以降は、部門ID902がD4(業務部)にロールID903がR1(部長)として所属していることを示す。
図9は、図3に示したバージョン有効期間情報格納部312に格納されるバージョン有効期間情報の一例を示す図である。
図9に示されるように、バージョン有効期間情報は、バージョン毎に、項目として、バージョン番号1001と、有効開始日時1002と、有効終了日時1003とを含む。
例えば、バージョン番号1001には、組織のバージョンを識別する識別番号が設定されている。
また、有効開始日時1002には、前記バージョンが有効となる日時の情報が設定されており、有効終了日時1003には前記バージョンが有効でなくなる日時の情報、または前記バージョンがもっとも未来のバージョンであり、未来に渡って有効である場合にはそれを示す値、例えば「HV」が設定されている。
従って、ワークフローの状態に関わらず将来の組織情報を登録しておき、有効開始日時まで使用しないように運用することができる。
以上、図6〜図8に示したように、部門情報,ロール情報,ユーザポジション情報等から構成される組織情報は、レコード毎に当該レコードが有効となる1又は複数のバージョンを特定可能なバージョン識別情報(開始バージョン番号,終了バージョン番号)を保持し、複数のバージョンの組織情報を共存させて外部メモリ211(部門情報格納部313,ロール情報格納部314,ユーザポジション情報格納部315)に記憶可能な構成になっている。
また、図9に示したように、バージョン毎の有効となる期間を特定する日時情報(有効開始日時,有効終了日時)を有するバージョン有効期間情報が外部メモリ211(バージョン有効期間情報格納部312)に記憶されている。
以下、図10〜図17を参照して、本発明におけるワークフロー進行処理について説明する。
図10は、本発明における第1の制御処理手順の一例を示すフローチャートであり、ワークフロー進行部302等により実行されるワークフロー進行処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
入出力処理部301を経由してワークフロー開始の要求がなされたとき、ワークフロー進行部202は、ジョブ開始処理を行い(S401)、ジョブを作成および開始する。なお、ジョブの開始時には、日付またはバージョン番号によって、ジョブが参照する組織のバージョンが決定される。なお、S401のジョブ開始処理の詳細については後述する図11に示す。
次に、ステップS402では、ワークフロー進行部202は、遷移先のアクティビティがプロセス完了を示すものかどうかの判定を行う。
そして、ステップS402で、遷移先のアクティビティがプロセス完了を示すと判定した場合には、ワークフロー進行部202は、ステップS409においてジョブ終了処理を行い、当該ジョブを完了する。
一方、ステップS402で、遷移先のアクティビティがプロセス完了を示すものでないと判定した場合には、ワークフロー進行部202は、ステップS403の担当者割当処理へ処理を進める。
ステップS403の担当者割当処理では、ワークフロー進行部202は、担当者判定部303に依頼し、前記アクティビティにおける担当者を確定する。担当者判定部303は前記ジョブが参照する組織バージョンを使用して担当者の判定を行う。なお、ステップS403の担当者割当処理の詳細については後述する図13に示す。
次に、ステップS404において、ワークフロー進行部202は、要求待ち処理を実行する。詳細には、ワークフロー進行部202は、入出力処理部301を経由して前記アクティビティの担当者からの承認要求、または管理者からの組織付替要求が行われるのまで待機し、いずれかの要求が行われると、ステップS405へ処理を進める。なお、ステップS404の要求待ち処理の詳細については後述する図15に示す。
ステップS405では、ワークフロー進行部202は、ステップS404の要求待ち処理で受けた要求が「承認要求」であったかどうかの判定を行う。なお、図4の503に示したように合議の場合は、合議での承認要求があった場合に「承認要求」があったと判定する。
そして、ステップS405において、ステップS404で受けた要求が「承認要求」であったと判定した場合には(Yes)、ワークフロー進行部202は、ステップS407のワークアイテム承認処理へ処理を進める。
ステップS407のワークアイテム承認処理では、ワークフロー進行部202は、前記承認要求の内容に応じて承認処理を行い、遷移先のアクティビティを確定し、ステップ402の判定へ処理を戻す。なお、ステップS407のワークアイテム承認処理の詳細については後述する図16に示す。
一方、ステップS405において、ステップS404で受けた要求が「承認要求」でなかったと判定した場合には(No)、ワークフロー進行部202は、ステップS406へ処理を進める。
ステップS406では、ワークフロー進行部202は、ステップS404の要求待ち処理で受けた要求が「組織付替要求」であったかどうかの判定を行う。
そして、ステップS405において、ステップS404で受けた要求が「承認要求」でなかったと判定した場合には(No)、ワークフロー進行部202は、ステップS404の要求待ち処理へ処理を戻し、再び要求待ちを行う。なお、その他の要求について対応する処理を行う場合には、S404の要求待ち処理に戻るまえに、前記その他の要求に対応する処理を行ってもよい。
一方、ステップS406において、ステップS404で受けた要求が「組織付替要求」であったと判定した場合には(Yes)、ワークフロー進行部202は、ステップS408において、組織付替部305へ組織付替処理を実行させる。
ステップS408の組織付替処理では、組織付替部305は、前記組織付替要求の内容に応じて前記ジョブが参照する組織バージョンを新たに指定したものに付替える処理を行い、S404へ処理を戻す。なお、ステップS408の組織付替処理の詳細については後述する図17に示す。
以上、図10に示すような処理を行うことで、ワークフローの実体であるジョブは、開始時(ジョブ作成時)に指定された、参照する組織バージョンに応じて、遷移先アクティビティの担当者を決定しながら、ワークフローを進行し、処理することができる。
従って、図10に示すような処理を実行することにより、単一のワークフローサーバ101の単一のワークフローシステム上においてであっても、過去や現在や未来の組織を共存させ、ワークフローを矛盾なく進行することができる。
また、必要に応じて、個々のワークフローの実体であるジョブ毎に、それまで参照していた組織とは別のバージョンを参照させることにより、旧組織時代のジョブをスムーズに新組織に移行することができる。
以下、図11を参照して、図10のステップS401に示したジョブ作成処理について説明する。
図11は、本発明における第2の制御処理手順の一例を示すフローチャートであり、図10のステップS401に示したジョブ作成処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図11に示すように、ジョブ作成処理が開始されると、ステップS1101において、ワークフロー進行部302は、入出力処理部301から渡された入力情報を使用し、バージョン確定処理を行う。なお、ステップS1101のバージョン確定処理の詳細については後述する図12において示す。
そして、ステップS1101のバージョン確定処理においてジョブが参照する組織のバージョン番号が確定すると、ステップS1102へ処理を進める。
ステップS1102では、ワークフロー進行部302は、入出力処理部301から渡された入力情報に含まれるプロセス定義識別情報に該当する、プロセス定義格納部310に格納されるプロセス定義情報を参照し、ワークフローの実体であるジョブを作成する。さらに、ワークフロー進行部302は、S1101のバージョン確定処理により確定した組織のバージョン番号をジョブ関連情報と関連付けて、ジョブの他の属性とともにジョブ情報格納部311に格納し、ステップS1103に処理を進める。
次に、ステップS1103において、ワークフロー進行部302は、プロセス定義ジョブの状態を開始状態にするなどして、ジョブを開始し、その状態をジョブ情報格納部311に格納し、ステップS1104に処理を進める。
ステップS1104では、ワークフロー進行部302は、プロセス定義格納部310に格納される前記プロセス定義を参照し、その最初のアクティビティを遷移先アクティビティとしてジョブ情報に設定し、ジョブ情報格納部311に格納する。
以上、図11に示すような処理を行うことによって、入力情報に応じたプロセス定義に基づくジョブが、入力情報に応じた組織のバージョンを参照する状態で作成、開始される。
以下、図12を参照して、図11のステップS1101に示したバージョン確定処理について説明する。
図12は、本発明における第3の制御処理手順の一例を示すフローチャートであり、図11のステップS1101に示したバージョン確定処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図12に示すように、バージョン確定処理が開始されると、ステップS1201において、ワークフロー進行部302は、組織バージョン指定方法について判定を行う。組織バージョン指定方法としては、日時による指定方法と、バージョン番号による指定方法と、無指定とがある。この組織バージョン指定方法は、申請時に申請者によりワークフロークライアント102の入力部から入力されるものであり、ワークフロー開始要求内に含まれる。
なお、組織バージョン指定方法が「日時」による指定方法の場合には、ワークフロー進行部302は、指定された日時を指定日時としてステップS1203へ処理を進める。
また、組織バージョン指定方法が「バージョン番号」による指定方法の場合には、ワークフロー進行部302は、そのバージョン番号を指定バージョン番号としてステップS1204へ処理を進める。
また、組織バージョン指定方法が「無指定」の場合には、ワークフロー進行部302は、そのまたステップS1202へ処理を進める。
ステップ1202では、担当者判定部303は、現在の日時を取得し、それをもって指定日時とみなして、ステップS1203へ処理を進める。
ステップ1203では、担当者判定部303は、バージョン有効期間情報格納部312に格納されるバージョン有効期間情報を参照し、前記指定日時が有効開始日時1002以降であることと、且つ、前記指定日時が有効終了日時1003より前であることと、を満たすバージョン番号1001を取得し、そのバージョン番号をもって指定バージョン番号とし、ステップ1204へ処理を進める。
ステップ1204においては、担当者判定部303は、指定バージョン番号を入力情報に対応する組織のバージョン番号として確定し、バージョン確定処理の結果として、呼出元(図11の処理)に返し、本フローチャートの処理を終了する。
以上、図12に示すような処理を行うことによって、現在時において有効な組織のバージョンのみならず、日時やバージョン番号といった指定方法で対象となる組織のバージョン番号を確定することができる。このことによって、現在の組織だけでなく、ジョブに対応する業務の種類などによって前月の組織のバージョンを指定したり、翌月の組織のバージョンを指定したり、といった柔軟な指定が可能となる。
以下、図13を参照して、図10のステップS403に示した担当者割当処理について説明する。
図13は、本発明における第4の制御処理手順の一例を示すフローチャートであり、図10のステップS403に示した担当者割当処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図13に示すように、担当者判定部303は、ステップS1301において、ジョブ情報格納部311に格納される当該ジョブのジョブ情報を参照し、遷移先アクティビティ情報と、参照している組織のバージョン番号とを取得し、ステップS1302へ処理を進める。
ステップS1302では、担当者判定部303は、プロセス定義情報格納部310に格納されている当該ジョブが結びついているプロセス定義情報を参照し、前記遷移先アクティビティの定義情報に定義される、担当者の部門識別情報と、担当者のロール識別情報とを取得し、S1303の担当者検索処理へ処理を進める。なお、ステップS1303の担当者検索処理の詳細については後述する図14に示すが、前記組織のバージョン番号と、前記担当者の部門情報と、前記担当者のロール情報と、から、少なくとも1つ以上のユーザポジション情報を検索し、ステップ1304へ処理を進める。
次に、ステップS1304において、担当者判定部303は、S1303の担当者検索処理において検索されたユーザポジション情報の一部または全部を、当該ジョブの遷移先アクティビティの担当者として割当て、ジョブ情報格納部311にジョブ情報の一部として格納し、ステップS1305へ処理を進める。
次に、ステップS1305において、担当者判定部303は、前記ユーザポジション情報を参照し、該当ユーザにメールなどによる通知を行い、本フローチャートの処理を終了する。なお、S1305の通知の処理は必須の処理ではない。
以上、図13に示すような処理を行うことによって、ジョブの遷移先のアクティビティにおける担当者をジョブが参照する組織のバージョンにおいて検索し、割当てることが可能となる。
以下、図14を参照して、図13のステップS1303に示した担当者検索処理について説明する。
図14は、本発明における第5の制御処理手順の一例を示すフローチャートであり、図13のステップS1303に示した担当者検索処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
まず、担当者判定部303は、担当者の部門識別情報と、担当者のロール識別情報と、組織のバージョン番号とが与えられており、ステップS1401では、担当者判定部303は、ユーザポジション情報格納部315に格納されているユーザポジション情報を参照し、前記担当者の部門識別情報が部門ID902と一致することと、前記担当者のロール識別情報がロールID903と一致することと、組織のバージョン番号が開始バージョン番号905以上であることと、組織のバージョン番号が終了バージョン番号906未満であることとを全て満たすユーザポジション情報を検索し、ステップS1402へ処理を進める。
ステップS1402では、担当者判定部303は、ステップS1401で少なくとも1つの該当ユーザポジション情報が検索されたかどうか判定する。
そして、ステップS1402において、ステップS1401で1つの該当ユーザポジション情報も存在しなかったと判定した場合には(No)、担当者判定部303は、ステップS1403へ処理を進める。
ステップS1403では、担当者判定部303は、部門情報格納部313に格納されている部門情報を参照し、前記担当者の部門識別情報と部門ID701が一致することと、組織のバージョン番号が開始バージョン番号704あることと、組織のバージョン番号が終了バージョン番号705あることと、を全て満たすユーザポジション情報を検索し、その部門情報の項目である親部門ID703の部門識別情報の値で前記担当者の部門識別情報を書き換え、ステップ1401へ処理を戻す。
一方、ステップS1402において、ステップS1401ですくなくとも1つの該当ユーザポジション情報が検索された(存在した)と判定した場合には(Yes)、担当者判定部303は、ステップS1404へ処理を進める。
ステップ1404では、担当者判定部303は、ステップ1401で検索された少なくとも1つのユーザポジション情報を担当者検索処理の結果として、呼出元(図13の処理)に返し、本フローチャートの処理を終了する。
以上、図14に示すような処理を行うことによって、アクティビティに定義された部門識別情報およびロール識別情報を元に、特にその部門に該当ロールのユーザポジションが存在しない場合は、部門階層を上位へ登りながら、該当するユーザポジションを検索することが可能である。
以下、図15を参照して、図10のステップS404に示した要求待ち処理について説明する。
図15は、本発明における第6の制御処理手順の一例を示すフローチャートであり、図10のステップS404に示した要求待ち処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図15に示すように、入出力処理部301は、ステップS1501において、ワークフローサーバ101の入力コントローラ205または通信I/Fコントローラ208から何らかの入力情報の入力を待機し、入力を受け取ると、ステップS1502に処理を進める。
続いてステップS1502において、入出力処理部301は、その入力が「ワークフロー実行要求」であるか否かを判定する。
そして、ステップS1502において、入力が「ワークフロー実行要求」でない(即ち「組織登録要求」もしくは「その他のワークフローサーバ101が対応する要求」)と判定した場合には、入出力処理部301は、図示しないステップにおいて、該要求を処理して、ステップS1501に処理を戻す。
一方、ステップS1502において、入力が「ワークフロー実行要求」と判定した場合には、入出力処理部301は、本フローチャートの処理を終了する。
以下、図16を参照して、図10のステップS407に示したワークアイテム承認処理について説明する。
図16は、本発明における第7の制御処理手順の一例を示すフローチャートであり、図10のステップS407に示したワークアイテム承認処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図16に示すように、まずステップ1601において、ワークフロー進行部302は、入出力処理部301が受け付けたワークアイテム承認要求を取得し、ステップS1602へ処理を進める。
ステップS1602では、S1601で取得したワークアイテム承認要求が、そのアクティビティを「承認」するものなのか、それともそのアクティビティを否認して「差戻」するものなのかの判定を行う。この判定は、前記ワークアイテム承認要求に含まれるフラグなどを参照することなどで行う。
ステップS1602において、S1601で取得したワークアイテム承認要求がそのアクティビティを「承認」するものであると判定した場合には、ワークフロー進行部302は、ステップS1603に処理を進める。
ステップS1603では、ワークフロー進行部302は、ジョブ情報格納部311に格納されているジョブ情報を参照し、現在の遷移先アクティビティの情報を取得し、プロセス定義情報格納部310に格納されているプロセス定義情報を参照し、現在の遷移先アクティビティの次のアクティビティ情報を取得し、前記次のアクティビティをあらたに遷移先アクティビティに設定し、ジョブ情報格納部311にジョブ情報を格納し、本ワークアイテム承認処理を終了する。
一方、ステップS1602において、S1601で取得したワークアイテム承認要求がそのアクティビティを否認して「差戻」するものであると判定した場合には、ワークフロー進行部302は、ステップS1604に処理を進める。
ステップ1604において、ワークフロー進行部302は、ジョブ情報格納部311に格納されているジョブ情報を参照し、現在の遷移先アクティビティの情報を取得し、プロセス定義情報格納部310に格納されているプロセス定義情報を参照し、現在の遷移先アクティビティの少なくとも一つ以上手前のアクティビティ情報を取得し、前記次のアクティビティをあらたに遷移先アクティビティに設定し、ジョブ情報格納部311にジョブ情報を格納し、本ワークアイテム承認処理を終了する。
以上、図16に示すような処理を行うことによって、ワークアイテム承認要求毎に、遷移先のアクティビティを決定し、次の担当者にワークフローを進行することが可能になる。
以下、図17を参照して、図10のステップS408に示した組織付替処理について説明する。
図17は、本発明における第8の制御処理手順の一例を示すフローチャートであり、図10のステップS408に示した組織付替処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図17に示すように、組織付替部305は、ステップS1701において、入出力処理部301を経由して付替え対象のジョブと、付替える組織のバージョンの指定とを受け付け、S1702のバージョン再確定処理へ処理を進める。
ステップS1702のバージョン再確定処理では、組織付替部305は、前記付替る組織のバージョンの指定を伴って、担当者判定部303に、付替える組織のバージョン番号の再確定処理を依頼し、確定した組織のバージョン番号を受け取り、ステップS1703へ処理を進める。なお、バージョン番号の再確定処理の詳細については前述の図12で示したとおりである。
次に、ステップS1703において、組織付替部305は、ジョブ情報格納部311に格納されているジョブ情報を参照し、前記付替え対象のジョブが現在参照している組織のバージョン番号を取得し、S1704の担当者検索処理へ処理を進める。
ステップS1704の担当者検索処理では、組織付替部305は、ステップS1703で参照したジョブ情報より、現在の遷移先アクティビティの担当部門識別情報と、現在の遷移先アクティビティの担当ロール識別情報と、前記ジョブが現在参照している組織のバージョン番号をともなって、担当者判定部303に担当者となるユーザポジション情報の検索を依頼し、結果を受け取り、S1705の担当者検索処理へ処理を進める。なお、担当者検索処理の詳細については前述の図14で示したとおりである。
次に、ステップS1705の担当者検索処理では、組織付替部305は、ステップS1703で参照したジョブ情報より、現在の遷移先アクティビティの担当部門識別情報と、現在の遷移先アクティビティの担当ロール識別情報と、バージョン確定処理S1702により確定した付替える組織のバージョン番号をともなって、担当者判定部303に担当者となるユーザポジション情報の検索を依頼し、結果を受け取り、ステップS1706へ処理を進める。なお、担当者検索処理の詳細については前述の図14で示したとおりである。
ステップS1706では、組織付替部305は、S1704で検索したユーザポジション情報とS1705で検索したユーザポジション情報の比較を行う。
そして、ステップS1706において、比較の結果、S1704で検索したユーザポジション情報とS1705で検索したユーザポジション情報の双方に差異がある場合は、組織付替部305は、ステップS1708へ処理を進める。
ステップS1708においては、組織付替部305は、担当者検索処理S1704で検索したユーザポジションを参照し、該当ユーザにメールなどによる通知を行い、ステップS1709に処理を進める。なお、S1708の通知処理は必須ではない。
ステップS1709では、組織付替部303は、ジョブ情報格納部311に格納されている当該ジョブのジョブ情報から割当に関連する情報があれば破棄し、ステップS1710へ処理を進める。
ステップS1710では、組織付替部303は、前記付替える組織のバージョン番号をジョブ関連情報として、ジョブの他の属性とともにジョブ情報格納部311に格納し、S1711の担当者割当処理へ処理を進める。
ステップS1711の担当者割当処理において、組織付替部303は、担当者判定部303に担当者割当処理を依頼して、本組織付替え処理を終了する。なお、担当者割当処理の詳細については前述の図13で示したとおりであるが、ステップS1710において当該ジョブの参照する組織のバージョンが付替える組織のバージョンに変更済みであるため、担当者割当処理(S1711)の結果は、付替える組織のバージョンにおける担当者となる。
一方、ステップS1706において、比較の結果、S1704で検索したユーザポジション情報とS1705で検索したユーザポジション情報の双方が同一の場合は、組織付替部305は、ステップS1707へ処理を進める。
ステップS1707では、組織付替部305は、付替える組織のバージョン番号をジョブ関連情報として、ジョブの他の属性とともにジョブ情報格納部311に格納して、本組織付替え処理を終了する。なお、ステップS1707では、ステップS1710と同様の処理を行うが、担当者割当処理の依頼は行わない。なぜなら、ステップ1706の判定の結果担当者に変更がないことが判明しているからである。
なお、ステップS1702で再確定されたバージョン番号とステップS1702で取得したジョブに関連づいたバージョン識別情報(即ち、再確定前のバージョン識別情報)とが一致する場合には、ステップS1704以降の処理を実行せず、そのまま本組織付替処理を終了するように構成してもよい。
以上、図17に示すような処理を行うことによって、特定のジョブを指定してその組織のバージョンを付替えることが可能であり、その際に、担当者の変更がない場合には不要なユーザへの通知や、再割当処理や、それにともなう承認の遣り直しなどの発生を抑制することが可能となる。
以上のような形態をそなえることによって、たとえば、あるユーザが同一部門に所属している間に上司にあたる課長が替わっている場合であっても、申請時に確定したジョブが関連する組織バージョンに基づいて、そのバージョンの組織における課長が承認すべきであることを、自動的に判断して、承認すべき課長に通知を行うことができる。
また、以上のような形態をそなえることによって、あるジョブが参照する組織のバージョンが特定されているため、将来の組織のバージョンをあらかじめ登録しておき、現在のジョブは前記組織のバージョンは参照しないものの、その将来となった時点以降のジョブは前記組織のバージョンを参照する、といった運用が可能となり、組織の切替に起因するシステム停止を行う必要がないために、ワークフローシステムの可用性の向上に役立つ。
また、以上のような形態をそなえることによって、業務の種類などに応じて参照する組織のバージョンを切り替えたり、進行中のジョブであっても組織のバージョンを付替えることが可能であるので、個別のワークフローの進行のみ現組織での運用を行いたい場合などでも対応でき、柔軟なワークフローの進行を行うことができることとなる。
通常企業において、人事情報はその時点でのスナップショットの情報であり、以前の組織との差分情報がない場合、もしくは差分情報を作成するのが煩雑である場合がおおい。
本発明において、組織情報は、図6および図7および図8に示すように、それぞれの組織要素が存続したバージョンの番号の範囲で構成されているため、その編集のためには、直前の組織との差分の情報、すなわち追加情報と、変更情報と、削除情報とが必要となる。
しかし、前述の通り多くの企業において差分情報を保持しておらず、その作成も煩雑であるため、一旦、組織要素全体を削除したのち、現在存在する要素をすべて追加するという手法をとることも多い。
ただし、この手法をとると図18に示すように、存在しつづける組織要素についてもバージョン毎に一旦削除された状態となるので、組織情報のデータ量が非常に増大してしまうという問題点があった。
図18は、従来の組織登録時の問題点を説明するためのイメージ図である。
これを防ぐために、図3に示した組織情報登録部304では図19に示すような組織登録方法を行っている。
以下、図19を用いて、図3に示した組織情報登録部304における組織情報更新処理を説明する。
図19は、本発明を適用可能なワークフローサーバ101における組織情報更新処理の一例を示した図である。
図19は、本発明における第9の制御処理手順の一例を示すフローチャートであり、図3に示した組織情報登録部304等で実行される組織登録処理に対応する。即ち、このフローチャートの処理は、ワークフローサーバ101のCPU101が外部メモリ211に格納されるプログラム212をRAM202にロードして実行することにより実現される。
図19に示すように、入出力処理部301が、ステップS2001において、ワークフローサーバ101の入力コントローラ205または通信I/Fコントローラ208から組織編集(更新)コマンドの入力を待機し、該入力を受け取ると、ステップS2002に処理を進める。なお、組織編集コマンドは、項目として、コマンド種別と、要素データとを含む。コマンド種別には、「クリア」、「追加」、「変更」、「削除」等があり、要素データにはそれぞれのコマンドに対応した要素の識別情報などのデータが含まれる。なお、組織編集コマンドは、複数のコマンドをまとめで入力することも可能である。その場合には、組織登録部305は、ステップS2002〜S2013の処理を組織編集コマンドの分だけ繰り返す。即ち、ステップS2002〜S2013の処理を各組織編集コマンドに対して実行する。
ステップS2003では、組織登録部305は、処理対象の組織編集コマンドの前記コマンド種別が「クリア」であるかどうかを判定し、「クリア」であると判定した場合には(Yes)、ステップS2004に処理を進める。
ステップS2004では、組織登録部305は、例えば部門情報格納部313から1つ前のバージョンにおいて存在している要素を、すなわち終了バージョン番号が「HV」のものを全て取得し、ステップS2005に処理を進める。
ステップS2005では、組織登録部305は、ステップS2004で取得した要素の終了バージョンに、現バージョンを設定し、例えば部門情報格納部313に格納し、ステップS2013へ処理を進める。なお、ステップS2005の処理により、全ての要素が一旦現バージョンにおいて削除された状態となる。
一方、ステップS2003において、処理対象の組織編集コマンドの前記コマンド種別が「クリア」でないと判定した場合には(No)、ステップS2006に処理を進める。
ステップ2006では、組織登録部305は、前記組織編集コマンドの要素データに含まれる、識別情報により、例えば部門情報格納部313から該当要素の情報を取得し、ステップS2007に処理を進める。
ステップS2007では、組織登録部305は、処理対象の組織編集コマンドのコマンド種別を判定する。
ステップS2007において、前記コマンド種別が「削除」であると判定した場合には、組織登録部305は、ステップS2012に処理を進める。
ステップS2012では、組織登録部305は、ステップS2006で取得した該当要素の終了バージョン番号に、現バージョンを設定し、例えば部門情報格納部313に格納し、ステップS2013へ処理を進める。この処理により、識別情報で指定された要素の情報は、現バージョンにおいて削除された状態となる。
また、ステップS2007において、前記コマンド種別が「変更」であると判定した場合には、組織登録部305は、ステップS2011に処理を進める。
ステップS2011では、組織登録部305は、ステップS2006で取得した該当要素の終了バージョン番号に、現バージョンを設定し、例えば部門情報格納部313に格納し、ステップS2010へ処理を進める。
ステップS2010では、前記処理対象の組織編集コマンドの要素データにより、新たな要素を作成し、その開始バージョン番号(開始情報)を現バージョンに設定し、その終了バージョン(終了情報)を「HV」に設定し、例えば部門情報格納部313に該当要素の情報を追加し、ステップS2013へ処理を進める。このステップS2011およびステップS2010の処理により、前記組織編集コマンドの要素データに含まれる、識別情報で識別される組織要素は、現バージョンにおいて変更されたことになる。
また、ステップS2007において、前記コマンド種別が「追加」であると判定した場合には、組織登録部305は、ステップS2008に処理を進める。
ステップS2008では、組織登録部305は、ステップS2006で取得した該当要素の終了バージョン番号に設定されているバージョン番号と現バージョンのバージョン番号が等しいか否か判定する。
そして、ステップS2008において、ステップS2006で取得した該当要素の終了バージョン番号に設定されているバージョン番号と現バージョンのバージョン番号が等しくない判定した場合には(No)、組織登録部305は、ステップS2010を実行し、ステップS2013へ処理を進める。このステップS2008およびステップS2010の処理により、前記組織編集コマンドの要素データに含まれる、識別情報で識別される組織要素が、現バージョンにおいて追加されたことになる。
一方、ステップS2008において、ステップS2006で取得した該当要素の終了バージョン番号に設定されているバージョン番号と現バージョンのバージョン番号が等しい判定した場合には(Yes)、組織登録部305は、ステップS2009へ処理を進める。
ステップS2009においては、ステップS2006で取得した該当要素の終了バージョン番号に設定されているバージョン番号を「HV」に変更して設定し、例えば部門情報格納部313に格納し、ステップS2013へ処理を進める。このステップS2008およびステップS2009の処理により、前記組織編集コマンドの要素データに含まれる、識別情報で識別される組織要素が、以前のバージョンから継続していたことになる。
そして、ステップS2013では、組織登録部305は、未だ入力された全てのコマンドに対してステップS2002〜S2013の処理を終了していないと判定した場合には、処理対象を次のコマンドの移し、ステップS2002に処理を戻す。
一方、ステップS2013では、組織登録部305は、入力された全てのコマンドに対してステップS2002〜S2013の処理を終了したと判定した場合には、本組織編集処理を終了する。
なお、ここでは、例として部門情報格納部313の登録処理をあげたが、他の情報の登録処理でも同様である。なお、部門情報の登録時には部門情報登録部312が格納先であり、ロール情報の登録時にはロール情報格納部314が格納先であり、ユーザポジション情報の登録時にはユーザポジション情報314が格納先となることはいうまでもない。
以上、図19のような処理を行うことにより、一旦クリアをしてから全体を追加するような手法で組織の登録を行ったとしても、図18のように細切れになることによるデータ量の増大を抑制し、図20のような連続した組織要素として管理することが可能となる。即ち、差分を考慮しないバッチ処理による編集を行っても、ステップS2008,S2009の処理において、コマンドに該当する要素の終了バージョン番号に設定されているバージョン番号と現バージョンのバージョン番号が等しい場合には、前記コマンドに該当する要素の終了バージョン番号に設定されているバージョン番号を「HV」に変更して設定することにより、データレコード数が膨大になってしまうといった事態(図18)の発生を抑制することができる(図20)。
図20は、本発明の組織登録処理における組織登録時のイメージ図である。
以上示したように、本発明によれば、ワークフローに使用する組織情報を複数のバージョン登録することができ、ワークフローは開始時に指定したバージョンの組織に従って進行、即ち指定されたバージョンの組織における各担当者の決定が行われるため、例えば月初めに組織変更がなされても、前月分の清算処理と今月分の申請処理等を同時に矛盾なく処理することができる。即ち、ワークフロー開始時の組織情報のスナップショットに従ってジョブを進行させ、組織変更の影響を受けないようにすることができる。
また、ワークフローの状態に関わらず将来の組織情報を登録することができる。また、有効化を行うまで使用しないことができる。
また、旧バージョンの組織で進行中のワークフローでも、途中で現バージョンの組織での運用に切り替えることができる。そして、このような切替のために発生しうる合議のやり直しを抑制することができる。
また、複数のバージョンの組織を管理するが、変更がない部分のデータを効率よく管理することにより、データレコード数を抑えることができる。また、差分を考慮しないバッチ処理による編集を行ってもデータレコード数が膨大になってしまうといった事態の発生を抑制することができる。
従って、新旧を含む複数のバージョンの組織で進行するワークフローを共存させ、矛盾なく処理することができる等の効果を奏する。即ち、旧組織で進行するワークフローと、新組織で進行するワークフローとを矛盾なく共存させることができる。さらに、旧組織で進行するワークフローを新組織で進行するように変更させることもできる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以下、図21に示すメモリマップを参照して本発明に係るワークフローサーバで読み取り可能なデータ処理プログラムの構成について説明する。
図21は、本発明に係るワークフローサーバで読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図10,図11,図12,図13,図14,図15,図16,図17,図19に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
図1は、本発明の一実施形態を適用可能なワークフローシステムの一例を示す図である。 図1に示した本発明に適応可能な情報処理装置としてのワークフローサーバ101とワークフロークライアント102のハードウェア構成の一例を示すブロック図である。 図1に示したワークフローサーバ101において実現される機能構成の一例を示す図である。 図3に示したプロセス定義情報格納部310に格納されるプロセス定義情報の一例を示す図である。 本実施形態の説明に用いる組織の一例を示す図である。 図3に示した部門情報格納部313に格納されている部門情報の一例を示す図である。 図3に示したロール情報格納部314に格納されているロール情報の一例を示す図である。 図3に示したユーザポジション情報格納部315に格納されているユーザポジション情報の一例を示す図である。 図3に示したバージョン有効期間情報格納部312に格納されるバージョン有効期間情報の一例を示す図である。 本発明における第1の制御処理手順の一例を示すフローチャートである。 本発明における第2の制御処理手順の一例を示すフローチャートである。 本発明における第3の制御処理手順の一例を示すフローチャートである。 本発明における第4の制御処理手順の一例を示すフローチャートである。 本発明における第5の制御処理手順の一例を示すフローチャートである。 本発明における第6の制御処理手順の一例を示すフローチャートである。 本発明における第7の制御処理手順の一例を示すフローチャートである。 本発明における第8の制御処理手順の一例を示すフローチャートである。 従来の組織登録時の問題点を説明するためのイメージ図である。 本発明における第9の制御処理手順の一例を示すフローチャートである。 本発明の組織登録処理における組織登録時のイメージ図である。 本発明に係るワークフローサーバで読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
符号の説明
100 ネットワーク
101 ワークフローサーバ
102 ワークフロークライアント
201 CPU
202 RAM
211 外部メモリ
212 プログラム
301 入出力処理部
302 ワークフロー進行部
303 担当者判定部
304 組織情報登録部
305 組織付替部
310 プロセス定義情報格納部
311 ジョブ情報格納部
313 部門情報格納部
314 ロール情報格納部
315 ユーザポジション情報格納部
312 バージョン有効期間情報格納部312

Claims (9)

  1. 遷移経路が組織情報により定義されたジョブのワークフローを制御する情報処理装置であって、
    前記組織情報を構成する要素毎に当該要素の有効となる期間の開始を示すバージョンを特定可能な開始バージョン識別情報および期間の終了を示すバージョンを特定可能な終了バージョン識別情報を記憶する組織情報格納手段と、
    前記バージョン毎の有効となる期間を特定する日時情報を記憶するバージョン有効期間格納手段と、
    前記ジョブの遷移先を決定する際に参照する前記組織情報のバージョンとして、指定されたバージョン識別情報、又は、指定された日時と前記バージョン有効期間格納手段に格納された日時情報から確定されるバージョンを該ジョブの関連情報として設定する設定手段と、
    前記遷移経路を定義する組織情報および前記ジョブの関連情報として設定された前記組織情報のバージョンに応じて、該ジョブの遷移先を決定し、該決定された遷移先にジョブを遷移させてワークフローを進行させるワークフロー進行手段と、
    前記組織情報の更新指示を受付けた際に前記要素の更新種別を判別する要素更新判別手段と、
    前記要素更新判別手段による判別結果に応じて前記組織情報格納手段に格納された開始バージョン識別情報または終了バージョン識別情報を更新する組織情報更新手段と、
    を有することを特徴とする情報処理装置。
  2. 前記要素更新判別手段により要素が変更されたと判別された場合、
    前記組織情報更新手段は、前記組織情報格納手段に格納された現在の要素の終了バージョン識別情報を現在のバージョンに、かつ変更後の要素を作成するとともに該要素の開始バージョン識別情報を現在のバージョンにかつ該要素の終了バージョン識別情報を終了バージョンがないことを示す情報に更新することを特徴とする請求項1記載の情報処理装置。
  3. 前記要素更新判別手段により要素が追加されたと判別された場合、
    前記組織情報更新手段は、前記追加された要素を作成するとともに該要素の開始バージョン識別情報を現在のバージョンにかつ該要素の終了バージョン識別情報を終了バージョンがないことを示す情報に更新することを特徴とする請求項1または2記載の情報処理装置。
  4. 前記要素更新判別手段により要素が削除されたと判別された場合、
    前記組織情報更新手段は、前記削除された要素の終了バージョン識別情報を現在のバージョンに更新することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記設定手段により前記ジョブの関連情報として設定された前記組織情報のバージョンの変更指示を受付けた場合に、該指示された組織情報のバージョンを前記ジョブの関連情報として再設定する再設定手段と、
    前記再設定手段により再設定されたバージョンに応じて前記組織情報を構成する要素の開始バージョン識別情報および終了バージョン識別情報を参照して前記ジョブの遷移先を変更する組織付替手段を更に有し、
    該組織付替手段は、前記再設定手段により再設定されたバージョンに基づくジョブの遷移先と前記再設定前のバージョンに基づくジョブの遷移先とが一致する場合には、前記ジョブの遷移先は変更しない、ことを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記組織情報は、部門を示す部門情報、役割を示すロール情報およびユーザを示すユーザポジション情報を含むことを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 遷移経路が組織情報により定義されたジョブのワークフローを制御する情報処理装置の制御方法であって、
    組織情報登録手段が、組織情報を構成する要素毎に当該要素の有効となる期間の開始を示すバージョンを特定可能な開始バージョン識別情報および期間の終了を示すバージョンを特定可能な終了バージョン識別情報を組織情報格納手段に登録する組織情報登録ステップと、
    バージョン有効期間登録手段が、前記バージョン毎の有効となる期間を特定する日時情報をバージョン有効期間格納手段に登録するバージョン有効期間登録ステップと、
    設定手段が、前記ジョブの遷移先を決定する際に参照する前記組織情報のバージョンとして、指定されたバージョン識別情報、又は、指定された日時と前記バージョン有効期間格納手段に格納された日時情報から確定されるバージョンを該ジョブの関連情報として設定する設定ステップと、
    ワークフロー進行手段が、前記遷移経路を定義する組織情報および前記ジョブの関連情報として設定された前記組織情報のバージョンに応じて、該ジョブの遷移先を決定し、該決定された遷移先にジョブを遷移させてワークフローを進行させるワークフロー進行ステップと、
    要素更新判別手段が、前記組織情報の更新指示を受付けた際に前記要素の更新種別を判別する要素更新判別ステップと、
    組織情報更新手段が、前記要素更新判別ステップによる判別結果に応じて前記組織情報格納手段に格納された開始バージョン識別情報または終了バージョン識別情報を更新する組織情報更新ステップと、
    を有することを特徴とする情報処理装置の制御方法。
  8. 遷移経路が組織情報により定義されたジョブのワークフローを制御するコンピュータを、
    前記組織情報を構成する要素毎に当該要素の有効となる期間の開始を示すバージョンを特定可能な開始バージョン識別情報および期間の終了を示すバージョンを特定可能な終了バージョン識別情報を記憶する組織情報格納手段と、
    前記バージョン毎の有効となる期間を特定する日時情報を記憶するバージョン有効期間格納手段と、
    前記ジョブの遷移先を決定する際に参照する前記組織情報のバージョンとして、指定されたバージョン識別情報、又は、指定された日時と前記バージョン有効期間格納手段に格納された日時情報から確定されるバージョンを該ジョブの関連情報として設定する設定手段と、
    前記遷移経路を定義する組織情報および前記ジョブの関連情報として設定された前記組織情報のバージョンに応じて、該ジョブの遷移先を決定し、該決定された遷移先にジョブを遷移させてワークフローを進行させるワークフロー進行手段と、
    前記組織情報の更新指示を受付けた際に前記要素の更新種別を判別する要素更新判別手段と、
    前記要素更新判別手段による判別結果に応じて前記組織情報格納手段に格納された開始バージョン識別情報または終了バージョン識別情報を更新する組織情報更新手段として機能させるためのプログラム。
  9. 遷移経路が組織情報により定義されたジョブのワークフローを制御するコンピュータを、
    前記組織情報を構成する要素毎に当該要素の有効となる期間の開始を示すバージョンを特定可能な開始バージョン識別情報および期間の終了を示すバージョンを特定可能な終了バージョン識別情報を記憶する組織情報格納手段と、
    前記バージョン毎の有効となる期間を特定する日時情報を記憶するバージョン有効期間格納手段と、
    前記ジョブの遷移先を決定する際に参照する前記組織情報のバージョンとして、指定されたバージョン識別情報、又は、指定された日時と前記バージョン有効期間格納手段に格納された日時情報から確定されるバージョンを該ジョブの関連情報として設定する設定手段と、
    前記遷移経路を定義する組織情報および前記ジョブの関連情報として設定された前記組織情報のバージョンに応じて、該ジョブの遷移先を決定し、該決定された遷移先にジョブを遷移させてワークフローを進行させるワークフロー進行手段と、
    前記組織情報の更新指示を受付けた際に前記要素の更新種別を判別する要素更新判別手段と、
    前記要素更新判別手段による判別結果に応じて前記組織情報格納手段に格納された開始バージョン識別情報または終了バージョン識別情報を更新する組織情報更新手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2007159587A 2007-06-15 2007-06-15 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体 Active JP4999567B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007159587A JP4999567B2 (ja) 2007-06-15 2007-06-15 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007159587A JP4999567B2 (ja) 2007-06-15 2007-06-15 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体

Publications (3)

Publication Number Publication Date
JP2008310710A JP2008310710A (ja) 2008-12-25
JP2008310710A5 JP2008310710A5 (ja) 2010-07-29
JP4999567B2 true JP4999567B2 (ja) 2012-08-15

Family

ID=40238230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007159587A Active JP4999567B2 (ja) 2007-06-15 2007-06-15 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体

Country Status (1)

Country Link
JP (1) JP4999567B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5436309B2 (ja) * 2010-04-01 2014-03-05 三菱電機株式会社 データ処理装置及びデータ処理方法及びプログラム
CN106296022A (zh) * 2016-08-18 2017-01-04 太仓市智威智能科技有限公司 一种员工自动排班系统
JP2023101281A (ja) 2022-01-07 2023-07-20 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4727097B2 (ja) * 2001-09-19 2011-07-20 三菱電機株式会社 更新操作情報提供システム
JP4209179B2 (ja) * 2002-11-27 2009-01-14 株式会社ザナヴィ・インフォマティクス 地図情報提供装置および地図情報提供プログラム
JP2005165639A (ja) * 2003-12-02 2005-06-23 Matsushita Electric Ind Co Ltd 差分地図データ生成装置、地図データ更新装置、差分地図データ生成プログラムおよび地図差分更新システム
JP2006195833A (ja) * 2005-01-14 2006-07-27 Ffc Ltd ワークフローシステム、そのプログラム

Also Published As

Publication number Publication date
JP2008310710A (ja) 2008-12-25

Similar Documents

Publication Publication Date Title
US10338796B2 (en) Event services modeling framework for computer systems
US20060047558A1 (en) Method, system, and computer program product for assigning personnel to project tasks
JPH06342357A (ja) ユーザインタフェース方式
JP2008305094A (ja) 文書管理方法及びその装置
JP4999567B2 (ja) 情報処理装置および情報処理装置の制御方法およびプログラムおよび記録媒体
JP2007293619A (ja) サーバ装置および情報共有システムおよびプログラムおよび記録媒体
JP2022097622A (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2022022451A (ja) サーバ、情報処理装置、処理方法およびプログラム
JP2018106519A (ja) サーバ、情報処理装置、処理方法およびプログラム
JP4489340B2 (ja) 情報管理支援装置、情報管理支援システム、情報管理支援方法、記憶媒体、及びプログラム
US10997564B2 (en) Electronic change planning manager
JP3461749B2 (ja) 伝送路設計システムおよび回線業務支援システム
JP5949278B2 (ja) 情報処理装置、情報処理装置の制御方法、プログラムおよび記録媒体
JP2011039626A (ja) ワークフローシステム、制御方法、およびプログラム
JP5300902B2 (ja) 画面制御プログラム及び情報処理装置
JP2007257603A (ja) リスト登録対象情報取得システム、方法、プログラム及び装置
JP2013228958A (ja) ワークフローシステム、ワークフローシステムの制御方法、プログラムおよび記録媒体
JP2015143975A (ja) ワークフローシステム、ワークフロー管理装置、ワークフロー管理方法及びプログラム
JP5750659B2 (ja) ワークフローシステム、ワークフローシステムの制御方法、プログラム、および記録媒体
JP5509941B2 (ja) 情報管理装置および方法
JP7158030B2 (ja) 情報処理装置
JP7528422B2 (ja) 情報処理装置およびプログラム
JP2007219844A (ja) 組織構成管理システム
JP2006302141A (ja) 表示システム及びその制御方法
JP4059353B2 (ja) 電子回覧システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100614

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100614

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20100614

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20100625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101004

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110314

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110322

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110603

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120515

R150 Certificate of patent or registration of utility model

Ref document number: 4999567

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150525

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250