(57)【要約】【課題】ワークフローシステム開発中の画面単位の検証において、外部データベースへのアクセス機能を含めて本番実行に準じた安全で効率の良い動作確認を可能とすること。【解決手段】検証モードプロパティ定義ファイルＣ００６に、クライアントＣ００１が検証モードで起動されている場合に、各種データの入出力処理を、ワークフローサーバＣ００９に指示して行う実データモードで実行するか、あるいは、ワークフローサーバＣ００９に指示することなくクライアントＣ００１側で行うダミーデータモードで実行するか、処理種別毎に設定しておく。そして、各種データの入力処理を実行する際、データ取得制御部Ｃ００３は、検証モードで起動されていると判別され、検証モードプロパティ定義ファイルＣ００６で該入力処理の処理種別に対してダミーデータモードが設定されている場合、ワークフローサーバＣ００９に指示することなくクライアントＣ００１側でダミーデータを入力するように制御する。【選択図】図１
2010146270.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローで実行されるアクティビティで用いられる画面を表示し、画面に組み込まれた各種データの入出力処理をワークフローサーバに指示する情報処理装置であって、
本番運用モードで起動されているか検証モードで起動されているかを判別する起動モード判別手段と、
検証モードで起動されている場合に、前記各種データの入出力処理を、前記ワークフローサーバに指示して行う実データモードで実行するか、あるいは、前記ワークフローサーバに指示することなく情報処理装置側で行うダミーデータモードで実行するか、処理種別毎に設定する処理方法設定手段と、
各種データの入力処理を実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で該入力処理の処理種別に対して前記ダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でダミーデータを入力するダミーデータ入力処理を行うデータ入力手段と、
を有することを特徴とする情報処理装置。
【請求項２】
各種データの出力処理を実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で該出力処理の処理種別に対して前記ダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でデータ出力を行うデータ出力手段と、
を有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記データ入力手段は、各種データの入力処理の実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で当該処理の処理種別に対して前記実データモードが設定されている場合であって、前記ワークフローサーバに処理を指示した結果としてアクセス権限エラーが前記ワークフローサーバから通知された場合には、前記ダミーデータ入力処理を行うことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記ダミーデータ入力処理のダミーデータ入力モードとして、処理種別毎に自動取得モードと都度設定モードを設定するダミーデータ入力モード設定手段と、
前記データ入力手段は、ダミーデータ入力モードとして自動取得モードが設定されている場合、予め記憶手段に記憶されたダミーデータを取得するように制御し、ダミーデータ入力モードとして都度設定モードが設定されている場合、ユーザからのダミーデータの入力を受け付けるように制御することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記データ入力手段は、ダミーデータ入力モードとして自動取得モードが設定されている場合であって、前記記憶手段からダミーデータを取得できなかった場合には、ユーザからのダミーデータの入力を受け付けるように制御することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記ユーザから受け付けたダミーデータを前記記憶手段に記憶させるダミーデータ設定手段を有することを特徴とする請求項４又は５に記載の情報処理装置。
【請求項７】
前記記憶手段は、前記各種データの入力処理で入力するためのダミーデータを、前記各種データのデータ種別毎、又は、前記アクティビティで用いられる画面毎に階層化した構造で記憶するものであり、
前記ダミーデータ設定手段は、前記ダミーデータを前記記憶手段に記憶させる際の該ダミーデータの適用範囲として、データ種別毎又は画面毎を指定する適用範囲指定手段と、
前記ダミーデータを、前記記憶手段の前記適用範囲指定手段に指定された適用範囲に対応する階層に格納する格納手段とを有するものであり、
前記データ入力手段は、ダミーデータ入力モードとして自動取得モードが設定されている場合、前記入力処理に対応するダミーデータを、前記記憶手段の前記データ種別毎又は前記画面毎の階層から取得することを特徴とする請求項６に記載の情報処理装置。
【請求項８】
ワークフローを制御するワークフローサーバと、ワークフローで実行されるアクティビティで用いられる画面を表示し、画面に組み込まれた各種データの入出力処理を前記ワークフローサーバに指示する情報処理装置とを有するワークフローシステムであって、
前記情報処理装置は、
本番運用モードで起動されているか検証モードで起動されているかを判別する起動モード判別手段と、
検証モードで起動されている場合に、前記各種データの入出力処理を、前記ワークフローサーバに指示して行う実データモードで実行するか、あるいは、前記ワークフローサーバに指示することなく情報処理装置側で行うダミーデータモードで実行するか、処理種別毎に設定する処理方法設定手段と、
各種データの入力処理を実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で該入力処理の処理種別に対してダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でダミーデータを入力するダミーデータ入力処理を行うデータ入力手段とを有するものであり、
前記ワークフローサーバは、
前記情報処理装置から指示された各種データの入出力処理に対して処理種別及びデータ種別毎に前記情報処理装置の起動モード毎のアクセス権限を設定するアクセス権限設定手段と、
前記情報処理装置から指示された入出力処理を実行する際に、前に前記情報処理装置の起動モードに対応したアクセス権限をチェックするアクセス権限チェック手段と、
前記アクセス権限チェック手段により前記情報処理装置より指示された入出力処理がアクセス権限エラーとなった場合には、前記情報処理装置に対してアクセス権限エラーを通知するアクセス権限エラー通知手段とを有するものであり、
前記情報処理装置の前記データ入力手段は、各種データの入力処理の実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で当該処理の処理種別に対して実データモードが設定されている場合であって、前記ワークフローサーバに処理を指示した結果としてアクセス権限エラーが前記ワークフローサーバから通知された場合には、前記ダミーデータ入力処理を行うことを特徴とするワークフローシステム。
【請求項９】
ワークフローで実行されるアクティビティで用いられる画面を表示し、画面に組み込まれた各種データの入出力処理をワークフローサーバに指示する情報処理装置の検証制御方法であって、
処理方法設定手段に、検証モードで起動されている場合に、前記各種データの入出力処理を、前記ワークフローサーバに指示して行う実データモードで実行するか、あるいは、前記ワークフローサーバに指示することなく情報処理装置側で行うダミーデータモードで実行するか、処理種別毎に設定しておく処理方法設定ステップと、
起動モード判別手段が、本番運用モードで起動されているか検証モードで起動されているかを判別する起動モード判別ステップ、
データ入力手段が、各種データの入力処理を実行する際、前記起動モード判別ステップで検証モードで起動されていると判別され、前記処理方法設定手段で該入力処理の処理種別に対して前記ダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でダミーデータを入力するダミーデータ入力処理を行うデータ入力ステップと、
を有することを特徴とする情報処理装置の検証制御方法。
【請求項１０】
ワークフローで実行されるアクティビティで用いられる画面を表示し、画面に組み込まれた各種データの入出力処理をワークフローサーバに指示する情報処理装置を、
本番運用モードで起動されているか検証モードで起動されているかを判別する起動モード判別手段、
検証モードで起動されている場合に、前記各種データの入出力処理を、前記ワークフローサーバに指示して行う実データモードで実行するか、あるいは、前記ワークフローサーバに指示することなく情報処理装置側で行うダミーデータモードで実行するか、処理種別毎に設定する処理方法設定手段、
各種データの入力処理を実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記設定手段で該入力処理の処理種別に対して前記ダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でダミーデータを入力するダミーデータ入力処理を行うデータ入力手段、
として機能させるためのプログラム。
【請求項１１】
請求項１０に記載されたプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフローシステム開発中のテスト実行機能に関するものである。
【背景技術】
【０００２】
ワークフローシステムを開発する場合、従来は各アクティビティで用いられる画面の設計を行い、ワークフローの実行順序（プロセス）を決定し、また、外部データベースへのアクセスがある場合は、開発用の仮の外部データベースを用意してからテスト実行を行っていた。
【０００３】
ワークフローシステムには、様々な外部データや運用中のシステムデータへのアクセスが含まれる。ところが、こういった各種データには厳しいアクセス制限がかけられている。
【０００４】
このため、各種ワークフローシステムでは、こういった外部データやシステムデータへのアクセス制御の機能と開発、運用、保守の効率性の両立を実現するために、それぞれ機能が工夫されている。
【０００５】
特許文献１では、作業対象ファイルに対するユーザのアクセス権を、各作業段階に応じて動的に変更するシステムが記載されている。
【特許文献１】特開平７−２８７６８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１のようなアクセスコントロールの仕組みは、開発途中の画面単位の機能検証の段階では適用することができない。その理由は、画面単位の機能検証では、画面の属性だけでなくワークフロー中の位置によるアクセス制限もあるため、アクセス制御の判断の基準となるユーザやワークフロー中の位置が、画面単位の検証段階では不定であるからである。
【０００７】
このため、現状では、アクセス制御の機能を備えたワークフローシステムであっても、画面単位での検証の段階ではアクセス制限が適用されずに無制限に外部データにアクセスができてしまうか、又は、外部データへのアクセス機能自体が動作しないといった制約がつけられている。
【０００８】
上述のように、無制限に外部データへのアクセスが許可されている場合、誤って本番データベースに対して読込みや書込みをしてしまうリスクもある。
【０００９】
かといって、画面単位の検証において、外部ＤＢへのアクセスする機能自体が動作しないのでは、誤って本番データベースに対して読込みや書込みをしてしまう等のリスクはなくセキュリティが保てるものの、十分な検証ができず、開発効率が悪い。
【００１０】
本発明は、上記のような課題を解決するためになされたものである。本発明の目的は、ワークフローシステム開発中の画面単位の検証において、外部データベースへのアクセス機能を含めて本番実行に準じた安全で効率の良い動作確認を可能とする仕組を提供することである。
【課題を解決するための手段】
【００１１】
本発明は、ワークフローで実行されるアクティビティで用いられる画面を表示し、画面に組み込まれた各種データの入出力処理をワークフローサーバに指示する情報処理装置であって、本番運用モードで起動されているか検証モードで起動されているかを判別する起動モード判別手段と、検証モードで起動されている場合に、前記各種データの入出力処理を、前記ワークフローサーバに指示して行う実データモードで実行するか、あるいは、前記ワークフローサーバに指示することなく情報処理装置側で行うダミーデータモードで実行するか、処理種別毎に設定する処理方法設定手段と、各種データの入力処理を実行する際、前記起動モード判別手段により検証モードで起動されていると判別され、前記処理方法設定手段で該入力処理の処理種別に対して前記ダミーデータモードが設定されている場合には、前記ワークフローサーバに指示することなく情報処理装置側でダミーデータを入力するダミーデータ入力処理を行うデータ入力手段とを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ワークフローシステム開発中の画面単位での動作確認において、外部データへの不正なアクセスや、設定ミスによるデータ書き換え等のセキュリティ上の問題を防ぎつつ、またアクセス対象レコードを都度修正する手間なく、外部データベースアクセス機能を含めた検証が実行できるようになり、ワークフローシステムの開発効率が上がる等の効果を奏する。
【発明を実施するための最良の形態】
【００１３】
図１は、本発明の一実施形態を示すワークフローシステムの全体構成を示すシステム構成図である。
【００１４】
図１に示すように、本実施形態のワークフローシステムは、クライアントＣ００１、ワークフローサーバＣ００９、システムデータベースＣ０１４を有する。また、システム外に、複数の外部データベースＣ１００、外部システムＣ０１３が存在する。
【００１５】
ワークフローサーバＣ００９は、アクセス制御部Ｃ０１０を有し、アクセス制御部Ｃ０１０が、システムデータベースＣ０１４、外部データベースＣ１００、外部システムＣ０１３等へのアクセスを制御する。
【００１６】
クライアントＣ００１は、ワークフローサーバＣ００９を介して、システムデータベースＣ０１４、外部データベースＣ１００、外部システムＣ０１３等にアクセス可能である。
【００１７】
本ワークフローシステムでは、システムデータベースＣ０１４内に、帳票データＣ０１７と、ワークフローで扱う各帳票の設計情報として画面定義Ｃ０１５、外部ＤＢ接続定義Ｃ０１６、帳票データＣ０１７、ファンクション（データ処理）定義Ｃ０１８、外部システム接続定義Ｃ０１９、システムデータとして組織データＣ０２０等のテーブルと、項目構成定義Ｃ０２１、経路定義Ｃ０２２とを有する。
【００１８】
以下、システムデータベースＣ０１４内の各テーブルに格納されているデータについて説明する。
【００１９】
組織データＣ０２０は、図３で示す部門情報と図４で示すロール情報からなる。経路定義Ｃ０２２は、図５で示すようなワークフローの起案から申請、差戻しなどの承認プロセスを定義したデータである。
【００２０】
ファンクション定義Ｃ０１８には、詳細は図示しないが、帳票データＣ０１７からのデータ抽出処理や、外部ＤＢへのアクセスするための処理（ファンクション）が定義されている。
【００２１】
ファンクションは、例えば、帳票データＣ０１７からデータを取得する帳票データ取得、帳票データＣ０１７を更新する帳票データ更新、外部ＤＢＣ１００からデータを取得する外部ＤＢデータ取得、外部ＤＢＣ１００を更新する外部ＤＢデータ更新、外部システムＣ０１３を呼び出す外部システム呼出、別の帳票のデータを取得して処理中の帳票のデータとして取り込む別帳票データ取得、処置中の帳票のデータから別の帳票のデータを生成する別帳票データ生成、組織データＣ０２０からデータを取得する組織データ取得等のファンクション種別（処理種別）に分類される。なお、図６にファンクション種別と動作種別の例を示す。
【００２２】
外部ＤＢ接続定義Ｃ０１６では、図７に例示された外部ＤＢアクセス権限の他に、外部ＤＢへ接続する為のＩＰアドレスやポート番号、ログインＩＤやパスワード等が定義されている。
【００２３】
外部システム接続定義Ｃ０１９には、図示しないが、外部システムＣ０１３に接続するための処理が定義されている。項目構成定義Ｃ０２１には、図示しないが、帳票で扱うデータ項目が定義されている。なお、帳票で扱うデータ項目は、開発段階で定義される。
【００２４】
画面定義Ｃ０１５には、画面が定義されている。画面定義Ｃ０１５で定義される画面イメージの一例を図８に示す。帳票データＣ０１７には、ワークフローが動作する際の具体的なデータ項目の値が格納される。図９に、結婚届の帳票データが入力された例を示す。
【００２５】
以上が、システムデータベースＣ０１４内の各テーブルに格納されているデータの説明である。
【００２６】
クライアントＣ００１は、ファンクション制御部Ｃ００２、ファンクション制御部Ｃ００２、出力データ表示部Ｃ００４、ダミーデータ設定部Ｃ００５を有する。
【００２７】
ファンクション制御部Ｃ００２は、各種ファンクションの実行を制御する。
【００２８】
データ取得制御部Ｃ００３は、ファンクション制御部Ｃ００２からの制御によりデータ取得先からデータを取得する。なお、データ取得制御部Ｃ００３は、クライアントＣ００１の起動モードが運用モード（後述する「検証モード」でない）の場合には、ワークフローサーバＣ００９を介して各種ＤＢからデータを取得する。一方、後述する「検証モード」の際には、データ取得制御部Ｃ００３は、検証モードプロパティ定義ファイルＣ００６に記載されるデータ取得先からデータを取得する。データ取得先が「サーバ」であれば、ワークフローサーバＣ００９からデータを取得し、データ取得先が後述する「ダミー」であれば、ダミーデータ格納ディレクトリＣ００７からダミーデータを取得する。なお、検証モードプロパティ定義ファイルＣ００６の一例を図１０に示す。また、ダミーデータ格納ディレクトリＣ００７の一例を図１１に示す。
【００２９】
出力データ表示部Ｃ００４は、ファンクション制御部Ｃ００２からの制御によりデータの出力処理を行う。なお、出力データ表示部Ｃ００４は、クライアントＣ００１の起動モードが本番運用（運用モード）の場合には、ワークフローサーバＣ００９を介して各種ＤＢへデータを出力する。一方、「検証モード」の際には、出力データ表示部Ｃ００４は、ワークフローサーバＣ００９を介して各種ＤＢへデータ出力を行う代わりに、確認画面や、エクスポート／インポートファイルＣ００８にデータ出力を行う。
【００３０】
ダミーデータ設定部Ｃ００５は、ダミーデータ格納ディレクトリＣ００７へダミーデータを設定したり、エクスポート／インポートファイルＣ００８にデータを設定する。上記設定画面の一例を図１３に示す。なお、図１３の設定画面は、出力データ表示部Ｃ００４がダミーデータを出力する上述の確認画面としても使用される。
【００３１】
図２は、図１に示したクライアントＣ００１、ワークフローサーバＣ００９に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。
【００３２】
図２において、ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを統括的に制御する。また、ＲＯＭ２０３あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるオペレーティングシステム（ＯＳ）や、各サーバあるいは各クライアントの後述する各種機能を実現するためのプログラムが記憶されている。
【００３３】
ＲＡＭ２０２は、ＣＰＵ２０１の主メモリ、ワークエリア、一時待避領域等として機能する。
【００３４】
入力コントローラ２０５は、入力部２０９からの入力を制御する。この入力部２０９としては、特に、サーバやクライアント等の端末では、キーボード、マウス等のポインティングデバイスが挙げられる。
【００３５】
出力コントローラ２０６は、出力部２１０の表示を制御する。この出力部２１０としては、例えば、ＣＲＴや液晶ディスプレイ等が挙げられる。
【００３６】
外部メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタドライバ等を記憶する外部メモリ２１１へのアクセスを制御する。加えて、外部メモリコントローラ２０７には、各サーバあるいは各クライアントの各種機能を実現するための各種テーブル、パラメータが記憶されている。
【００３７】
この外部メモリ２１１としては、ハードディスク（ＨＤ）やフロッピー（登録商標）ディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）、スマートメディア等が挙げられる。
【００３８】
通信Ｉ／Ｆコントローラ２０８は、ネットワーク１００を介して外部機器との通信制御処理を実行する。
【００３９】
なお、外部メモリ２１１には、本発明を実現するためのプログラム２１２が記録されており、必要に応じてＲＡＭ２０２にロードされることによりＣＰＵ２０１によって実行されるものである。
【００４０】
また、図１に示したワークフローサーバＣ００９のアクセス制御部Ｃ０１０は、ワークフローサーバＣ００９を構成する情報処理装置のＣＰＵ２０１が外部メモリ２１１に記憶されたプログラムを読み出して実行することにより実現される機能に対応する。
【００４１】
クライアントＣ００１のファンクション制御部Ｃ００２、ファンクション制御部Ｃ００２、出力データ表示部Ｃ００４、ダミーデータ設定部Ｃ００５は、クライアントＣ００１を構成する情報処理装置のＣＰＵ２０１が外部メモリ２１１に記憶された（又はワークフローサーバＣ００９からダウンロードされてＲＡＭ２０２に記憶された）プログラムを読み出して実行することにより実現される機能に対応する。
【００４２】
図３は、図１に示した組織データＣ０２０に記憶される部門情報の一例を示す図である。
【００４３】
図３に示すような階層構造を有する部門情報が組織データＣ０２０に記憶されている。
【００４４】
図４は、図１に示した組織データＣ０２０に記憶されるロール情報の一例を示す図である。
【００４５】
図４に示すようなロール情報が組織データＣ０２０に記憶されている。
【００４６】
図５は、図１に示した経路定義Ｃ０２２に記憶される経路定義情報の一例を示す図である。
【００４７】
図５に示すようなワークフローの経路が定義された情報が経路定義Ｃ０２２に記憶されている。
【００４８】
図６は、図１に示したファンクション定義Ｃ０１８に記憶されるファンクション定義情報で定義されたファンクションのファンクション種別毎の動作種別を示す図である。
【００４９】
図７は、図１に示した外部ＤＢ接続定義Ｃ０１６に記憶される外部ＤＢアクセス権限設定の一部を例示する図である。
【００５０】
外部ＤＢ接続定義Ｃ０１６に記憶される外部ＤＢアクセス権限設定では、アクセス権限７０１に示すように、外部ＤＢキー毎に各データベースのテーブルへのアクセス権限が設定されている。なお、検証モードアクセス７０２は、外部ＤＢキー毎に検証モードで起動されたクライアントＣ００１からの各データベースのテーブルへのアクセスの可否を設定した情報である。即ち、「検証モード」で起動されたクライアントＣ００１からのアクセスがあった際に使用され、「運用モード」で起動されたクライアントＣ００１からのアクセスでは使用されない。
【００５１】
図８は、図１に示した画面定義Ｃ０１５に記憶される画面定義情報で定義された画面のイメージの一例を示す図である。
【００５２】
図９は、図１に示した帳票データＣ０１７に記憶される帳票データが記載された画面イメージの一例を示す図である。
【００５３】
図１０は、図１に示した検証モードプロパティ定義ファイルＣ００６の一例を示す図である。
【００５４】
図１０に示すように、検証モードプロパティ定義ファイルＣ００６には、ファンクション種別１４０１毎に、データ取得先１４０２、ダミーデータ取得モード１４０３が設定されている。
【００５５】
上述したように、検証モードにおいては、データ取得制御部Ｃ００３は、データ取得先１４０２が「ダミー」（ダミーデータモード）の場合にはダミーデータを取得し、データ取得先１４０２が「サーバ」（実データモード）の場合にはワークフローサーバＣ００９からデータを取得する。
【００５６】
なお、検証モードにおいて、ワークフローサーバＣ００９からのデータ取得に失敗した場合にも、データ取得制御部Ｃ００３は、ダミーデータを取得する。
【００５７】
また、ダミーデータを取得する際、データ取得制御部Ｃ００３は、ダミーデータ取得モード１４０３が「自動取得」の場合、ダミーデータ格納ディレクトリＣ００７からダミーデータを取得し、ダミーデータ取得モード１４０３が「都度設定」の場合、ダミーデータ設定画面からダミーデータを取得する。
【００５８】
図１１は、図１に示したダミーデータ格納ディレクトリＣ００７の一例を示す図である。
【００５９】
図１１に示すように、ダミーデータ格納ディレクトリＣ００７では、ダミーデータが、ファンクション種別毎、及び、データ種別毎に（画面別、データテーブル別に）階層化された構造で記憶されている。
【００６０】
即ち、ダミーデータ格納ディレクトリＣ００７は、テーブル別や画面別にディレクトリ等を設け、テーブル別や画面別に、対応するダミーデータを記憶する。なお、帳票ＩＤと帳票名の対応を図１２に示す。
【００６１】
図１３は、図１に示したシステムデータベースＣ０１４に格納されるデータに対応するダミーデータをダミーデータ格納ディレクトリＣ００７（図１１）に設定するためのダミーデータ設定画面の一例を示す図である。
【００６２】
このダミーデータ設定画面は、出力データ表示部Ｃ００４がシステムデータベース用のデータ出力を行う確認画面としても使用される。
【００６３】
図１３において、１５００はダミーデータ設定欄であり、この欄にダミーデータを入力する。
【００６４】
１５０２はダミーデータ登録ボタンであり、ダミーデータ設定欄１５００に入力されたダミーデータをダミーデータ格納ディレクトリＣ００７（図１１）登録する際に押下する。なお、この際、ダミーデータ適用範囲１５０１で「画面別」が選択されていた場合には、ダミーデータは画面別に登録され（ダミーデータ格納ディレクトリＣ００７内の画面別に設けられたディレクトリに格納され）、同一画面のダミーデータを取得する際に使用される。一方、ダミーデータ適用範囲１５０１で「テーブル別」が選択されていた場合には、ダミーデータはテーブル別に登録され（ダミーデータ格納ディレクトリＣ００７内のテーブル別に設けられたディレクトリに格納され）、同一テーブルのダミーデータを取得する際に使用される。以下、具体的に示す。
【００６５】
上述したように、ダミーデータ格納ディレクトリＣ００７では、ダミーデータのデータファイルを、データファイル毎に適用範囲（画面別／テーブル別）を決めて保存してある。
【００６６】
例えば、帳票種別「結婚届」があり、「申請用画面」「上長処理用画面」（図１８）「人事処理用画面」の３つの画面を持つとする。
【００６７】
この場合、「申請用画面」で検証したいデータは、初期状態であるので項目が空欄である。この場合、「『結婚届』の『申請用画面』用データ」として適用範囲１５０１に「画面別」を指定して、ダミーデータ設定欄１５００の項目が空欄であるデータファイルを作成して、図１１の１６０１に示すように、"ダミーデータ格納ディレクトリ"-"帳票データ取得用"-"KEKKON+SINSEI"の下に"「新規データ」のダミーデータファイル"としてダミーデータ登録する。
【００６８】
一方、「上長処理用画面」と「人事処理用画面」で検証したいデータは、「申請用画面」で既にほとんどの項目に値が入力されているデータである。この場合、「『結婚届』用データ」として適用範囲１５０１に「テーブル別」を指定して、ダミーデータ設定欄１５００の項目に値が入力されているデータＢを作成して、図１１の１６０２に示すように、"ダミーデータ格納ディレクトリ"-"帳票データ取得用"-"KEKKON"の下に"「申請後データ」のダミーデータファイル"としてダミーデータ登録する。
【００６９】
そして、データ取得制御部Ｃ００３が「結婚届」の「申請用画面」のダミーデータを取得する場合は、"ダミーデータ格納ディレクトリ"-"帳票データ取得用"-"KEKKON+SINSEI"の下から"「新規データ」のダミーデータファイル"１６０１が取得される。
【００７０】
また、データ取得制御部Ｃ００３が「出張申請書」の「上長処理用画面」又は「人事処理用画面」を取得する場合は、"ダミーデータ格納ディレクトリ"-"帳票データ取得用"-"KEKKON"の下から"「申請後データ」のダミーデータファイル"１６０２が取得される。このように、異なる画面間でデータを共有でき、同時に、特定の画面用に専用のデータを設定することも出来る。
【００７１】
なお、本実施形態では、クライアントＣ００１を構成する情報処理装置のローカルディレクトリにファイルを保存する形態となっているが、適用範囲をキー項目にして、ＤＢにデータを保存するように構成してもよい。
【００７２】
図１３の１５０３はエクスポートボタンであり、ダミーデータ設定欄１５００に入力されたダミーデータをエクスポート／インポートファイルＣ００８に出力する際に押下する。
【００７３】
１５０４はインポートボタンであり、エクスポート／インポートファイルＣ００８からダミーデータをインポートしてダミーデータ設定欄１５００にセットする際に押下する。
【００７４】
図１４は、図１に示した外部データベースＣ１００に格納されるデータに対応するダミーデータをダミーデータ格納ディレクトリＣ００７（図１１）に設定するための外部ＤＢ用ダミーデータ設定画面の一例を示す図である。
【００７５】
図１４において、１８０５は外部ＤＢ情報設定欄であり、外部ＤＢのＤＢ名、テーブル名、検索条件等を設定する。１８００はダミーデータ設定欄であり、この欄にダミーデータを入力する。
【００７６】
１８０２はダミーデータ登録ボタンであり、ダミーデータ設定欄１８００に入力されたダミーデータを外部ＤＢ情報設定欄１８０５で設定された外部ＤＢ情報に対応させてダミーデータ格納ディレクトリＣ００７（図１１）登録する際に押下する。なお、この際、ダミーデータ適用範囲１８０１で「画面別」が選択されていた場合には、ダミーデータは画面別に登録され（ダミーデータ格納ディレクトリＣ００７内の画面別に設けられたディレクトリに格納され）、同一画面のダミーデータを取得する際に使用される。一方、ダミーデータ適用範囲１８０１で「テーブル別」が選択されていた場合には、ダミーデータはテーブル別に登録され（ダミーデータ格納ディレクトリＣ００７内のテーブル別に設けられたディレクトリに格納され）、同一テーブルのダミーデータを取得する際に使用される。
【００７７】
１８０３はエクスポートボタンであり、外部ＤＢ情報設定欄１８０５で設定された外部ＤＢ情報及びダミーデータ設定欄１８００に入力されたダミーデータをエクスポート／インポートファイルＣ００８に出力する際に押下する。
【００７８】
１８０４はインポートボタンであり、エクスポート／インポートファイルＣ００８から外部ＤＢ情報及びダミーデータをインポートして外部ＤＢ情報設定欄１８０５及びダミーデータ設定欄１８００にセットする際に押下する。
【００７９】
なお、図１４に示した例は、申請フォームで、社員ＩＤをキーに、人事ＤＢの社員マスタから、等級と勤続年数を取得するためのダミーデータを登録する際の設定画面イメージに対応する。
【００８０】
図１５は、図１に示した出力データ表示部Ｃ００４が外部ＤＢ用のデータ出力を行う確認画面（外部ＤＢ用出力データ確認画面）の一例を示す図である。
【００８１】
図１５において、１９０１は外部ＤＢ情報表示欄、１９０２は出力データ表示欄であり、出力データ表示部Ｃ００４が出力した外部ＤＢ用のデータを表示する。
【００８２】
１９０３はエクスポートボタンであり、外部ＤＢ情報表示欄１９０１及び出力データ表示欄１９０２に表示された外部ＤＢ情報及び出力データをエクスポート／インポートファイルＣ００８に出力する際に押下する。
【００８３】
なお、図１４に示した例は、人事処理フォームで、経理ＤＢの振込み依頼テーブルに、祝金振込みのレコードを追加するための出力データを確認する際の確認画面イメージに対応する。
【００８４】
以下、本実施形態のワークフローシステムの処理の詳細を説明する前に、ワークフローシステムの問題点について整理しておく。
【００８５】
上述したように、ワークフローサーバＣ００９は、クライアントＣ００１からの要求に応じて各データへのアクセスを行うが、その際、データ種別に応じたアクセスチェックを行う。
【００８６】
例えば、「運用モード」のクライアントＣ００１からの表示用の帳票データの要求であれば、ワークフローサーバＣ００９は、クライアントＣ００１からログインユーザＩＤ、参照する帳票データのキー等を取得し、ログインユーザＩＤのユーザ情報との照合、帳票データのキーを元に該当帳票データの状態及び、現在の参照権限を持つユーザ情報と照合したうえで、帳票データをクライアントＣ００１に送信する。
【００８７】
また、外部ＤＢＣ１００へのアクセス要求の場合も、ワークフローサーバＣ００９は、同様の情報をクライアントＣ００１から取得し、帳票データのキーを元に適用される経路情報を特定、帳票データの現在状態から経路情報中のどの作業段階であるか（アクティビティ）を特定し、その位置に設定された外部ＤＢＣ１００に対するアクセス権限を照合した上で、クライアント要求に従って外部ＤＢＣ１００を編集、あるいは外部ＤＢＣ１００から取得したデータをクライアントＣ００１に送信する。
【００８８】
また、帳票データの更新の場合も、ワークフローサーバＣ００９は、同様に、ワークフローサーバＣ００９内の帳票データの状態、現在の参照権限を持つユーザ情報と照合した上で、データベース内の帳票データを更新、経路情報に従って、次の作業段階へ帳票データの状態、及び参照権限をもつユーザ情報を更新する。
【００８９】
一方、「検証モード」のクライアントＣ００１からの要求の場合、ワークフローサーバＣ００９が取得できる情報は、クライアントＣ００１が保持する検証対象の画面定義のキーのみであり、ログインユーザＩＤや表示する帳票データのキーは取得できない。開発中の画面の検証段階では、システムの稼動に必要なユーザ情報や、経路等の画面定義以外の設計情報が先に完成しているとは限らず、画面に表示できる帳票データも存在しないことを前提としているためである。
【００９０】
この場合、画面定義情報や、画面に適用される帳票の項目構成、画面に組み込まれたファンクションの設計情報であれば、検証モードのクライアントを実行できる開発権限を持つユーザであれば参照／編集可能な情報であるため、ワークフローサーバＣ００９からクライアントＣ００１へデータを送信しても問題にはならない。
【００９１】
しかし、帳票データや外部ＤＢＣ１００へのアクセス要求の場合、ワークフローサーバＣ００９側でアクセスチェックを行うために必要な情報がクライアントＣ００１側から取得できないため、ワークフローサーバＣ００９側が帳票データや外部ＤＢＣ１００へのアクセス権限をチェックできない。かといって、アクセスチェックを行わずに無制限に帳票データや外部ＤＢＣ１００へのアクセスを許可するのはセキュリティ上問題がある。
【００９２】
例えば、開発中のフローの経路に人事担当者による作業が含まれている場合、当該作業段階において人事システムで管理されている人事マスタへの外部ＤＢアクセスが含まれる場合がある。このような重要なデータが連携しているとはいえ別のシステムであるワークフローシステムの開発者から画面の単体検証機能を利用することで自由にアクセスできてしまってはならない。
【００９３】
通常は、開発作業中は検証用に専用の外部ＤＢ環境を用意するものであるが、本番運用環境と接続先を切り替える作業の手間があり、人為ミスによって誤って開発作業中に本番用の外部ＤＢに接続してしまうリスクがある。
【００９４】
一方、画面単位での検証において外部ＤＢや帳票データへのアクセス機能が動作しない等の制限をつけてしまうと、画面単体での検証が十分に出来ず、経路やユーザ情報等を含めたシステム稼動に必要なデータが一通り完成し、本番と同じ状態の検証環境を準備し、実際に経路に従って帳票データを流せるようになるまで、画面機能の十分な動作確認ができないことになってしまう。
【００９５】
例えば、長い経路の末尾で使用する最終承認者用画面の検証をしたい場合、途中の経路で使用する各画面や機能が正常に稼動し、帳票データが最終承認状態に到達するまで画面機能の検証ができない。
【００９６】
そこで、本実施形態のワークフローシステムにおいては、「検証モード」で実行中のクライアントＣ００１においてワークフローサーバＣ００９への要求が発生した場合、要求の種別に応じて、通用どおりワークフローサーバＣ００９へ要求を送信するか、ワークフローサーバＣ００９を介さずにクライアントＣ００１内で擬似的に機能を実行するかをクライアントＣ００１内で自動的に切り分けて動作検証をできるようにする。
【００９７】
以下、図１６，図１７を参照して、本実施形態のワークフローシステムにおける処理を詳細に説明する。
【００９８】
図１６は、本発明のワークフローシステムにおける入出力の処理の一例を示すフローチャートである。
【００９９】
図１７は、図１６のステップＳ２０２に示す取得系処理の一例を示すフローチャートである。
【０１００】
なお、図１６，図１７のフローチャートに示すクライアントＣ００１側の処理は、図１に示したファンクション制御部Ｃ００２、ファンクション制御部Ｃ００２、出力データ表示部Ｃ００４、ダミーデータ設定部Ｃ００５により実行される。即ち、クライアントＣ００１を構成する情報処理装置のＣＰＵ２０１が外部メモリ２１１に記憶された（又はワークフローサーバＣ００９からダウンロードされてＲＡＭ２０２に記憶された）プログラムを読み出して実行することにより実現される。
【０１０１】
また、図１６，図１７のフローチャートに示すワークフローサーバＣ００９側の処理は、ワークフローサーバＣ００９のアクセス制御部Ｃ０１０により実行される。即ち、ワークフローサーバＣ００９を構成する情報処理装置のＣＰＵ２０１が外部メモリ２１１に記憶されたプログラムを読み出して実行することにより実現される機能に対応する。
【０１０２】
なお、図１６，図１７のフローチャートを説明するにあたり、図１８，図１９に示す具体例を用いる。
【０１０３】
図１８は、帳票フローの例を示す図である。
【０１０４】
図１８に示す例では、「結婚届」帳票フローを示し、申請アクティビティ、上長承認アクティビティ、人事処理アクティビティから構成される。
【０１０５】
図１９は、図１８に示した帳票フローの各アクティビティの画面と画面に組み込まれた主なファンクションの例を示す図である。
【０１０６】
図１９に示す例では、「結婚届」帳票用経路定義の各アクティビティの画面と画面に組み込まれた主なファンクションの例を示す。
【０１０７】
クライアントＣ００１において、入出力の処理が発生した場合、ファンクション制御部Ｃ００２は、本フローチャートの処理を開始し、前記指示に応じたファンクションの実行を制御する。例えば、申請アクティビティにおいて「結婚届」の起案が指示されると、ファンクション制御部Ｃ００２は、図１９に示すように、「起案」ファンクション（ファンクション種別：帳票データ取得）を実行制御する。
【０１０８】
まず、図１６のステップＳ２０１において、ファンクション制御部Ｃ００２は、実行するファンクションの動作種別を判定する。
【０１０９】
そして、上記ステップＳ２０１において、実行するファンクションに対応するファンクション種別の動作種別が取得系であると判定した場合、ステップＳ２０２において、ファンクション制御部Ｃ００２は、データ取得制御部Ｃ００３に取得系処理（図１１）を実行させる。上記「起案」ファンクション（ファンクション種別：帳票データ取得）の場合、図６に示すように、「取得系」（入力処理系）であるので、ファンクション制御部Ｃ００２は、データ取得制御部Ｃ００３に取得系処理（図１７）を実行させることとなる。
【０１１０】
ここで、図１７を参照して、取得系処理について説明する。
【０１１１】
まず、データ取得制御部Ｃ００３は、ステップＳ００１において、モードを判別する。ここでモードについて説明する。
【０１１２】
クライアントの起動方法は、本番運用に使用する「運用モード」と、開発用クライアントで画面設計の検証にもちいる「検証モード」の二種類のモードに分けられる。
【０１１３】
「運用モード」で起動されたクライアントの場合は、ログインユーザＩＤ，表示する帳票データのキー等をパラメータとして起動される。「運用モード」のクライアントは、イントラネット画面のリンクや、ユーザへの処理依頼メールのリンク等から主にＷｅｂブラウザ上で起動される。
【０１１４】
一方、「検証モード」のクライアントの場合は、検証対象の画面定義を特定するキーのみをパラメータとして開発用クライアントから起動される。
【０１１５】
なお、クライアントＣ００１から各データへのアクセスは、ワークフローサーバＣ００９を通して行われる。
【０１１６】
開発用クライアントは、画面定義、帳票データの項目定義、画面に組み込むファンクションの定義、帳票に適用される経路情報等を設計する機能をもつ。画面定義の設計ツールからは、クライアントモジュールを「検証モード」で起動し、運用中の表示及び動作を確認できる。開発用クライアントは開発権限を持つユーザであれば操作ができる。
【０１１７】
開発用クライアントには、外部ＤＢ（第１のデータベース）参照機能は含まれない。開発権限を持つユーザがシステムで参照する外部ＤＢ（第１のデータベース）へのアクセス権をもつとは限らない。また、開発権限を持つユーザは、運用ユーザとは別に管理される。また、帳票データへのアクセス権限は開発権限には含まれていない。帳票データのメンテナンス等は、別途システム管理権限を持つ管理ユーザにのみ与えられる。
【０１１８】
データ取得制御部Ｃ００３は、上記ステップＳ００１において、モードが「検証モード」でない（「運用モード」である）と判定した場合（Ｓ００１でＹｅｓ）、ステップＳ００３に処理を進め、データ取得要求をワークフローサーバＣ００９に送信する。
【０１１９】
一方、データ取得制御部Ｃ００３は、上記ステップＳ００１において、モードが「検証モード」であると判定した場合（Ｓ００１でＹｅｓ）、ステップＳ００２に処理を進める。
【０１２０】
ステップＳ００２では、データ取得制御部Ｃ００３は、当該実行中のファンクションについて、検証モードプロパティのデータ取得先が「サーバ」か否かを判定する。
【０１２１】
そして、上記ステップＳ００２において、検証モードプロパティのデータ取得先が「サーバ」でない（「ダミー」である）と判定した場合（Ｓ００２でＮｏの場合）、データ取得制御部Ｃ００３は、ステップＳ００５に処理を進める。
【０１２２】
上述した「起案」ファンクション（ファンクション種別：帳票データ取得）の場合、図６の検証モードプロパティのデータ取得先が「ダミー」であるため、ステップＳ００５に処理が進められる。
【０１２３】
ステップＳ００５では、データ取得制御部Ｃ００３は、当該実行中のファンクションについて、検証モードプロパティ定義ファイルＣ００６で定義されている検証モードプロパティのダミーデータ取得モードが「自動取得」に設定されているか否かを判定する。
【０１２４】
そして、上記ステップＳ００５において、検証モードプロパティのダミーデータ取得モードが「自動取得」であると判定した場合（Ｓ００５でＹｅｓの場合）、データ取得制御部Ｃ００３は、ステップＳ００６に処理を進める。「起案」ファンクション（ファンクション種別：帳票データ取得）の場合、図６の検証モードプロパティのダミーデータ取得モードが「自動取得」であるため、ステップＳ００６に処理が進められる。
【０１２５】
ステップＳ００６では、データ取得制御部Ｃ００３は、ダミーデータ格納ディレクトリＣ００７下より指定された検証対象画面用に保存されたダミーデータファイルを検索する。
【０１２６】
次に、ステップＳ００７において、データ取得制御部Ｃ００３は、上記ステップＳ００６のダミーデータファイル検索で、ダミーデータファイルが見つかったか否かを判定する。そして、ダミーデータファイルが見つかったと判定した場合（Ｓ００７でＹｅｓの場合）、データ取得制御部Ｃ００３は、見つかったデータファイルを読み込み、ダミーデータを取得する。「結婚届」の「起案」ファンクションでは、ダミーデータ格納ディレクトリＣ００７から新規状態の帳票データのダミーデータファイル（図１１の１６０１に示す「新規データ」のダミーデータファイル１６０１）が検索され、読み込まれ、ダミーデータが取得される。このダミーデータには帳票データのみが含まれる。なお、画面の設計情報は、「運用モード」でも「検証モード」でもワークフローサーバＣ００９から実データが取得される（図１７のフローとは別の処理で取得される）。よって、「結婚届」の「起案」ファンクションでも、図示しない処理により、結婚届画面の設計情報が、ワークフローサーバＣ００９から実データが取得される。
【０１２７】
次に、ステップＳ００９において、データ取得制御部Ｃ００３は、上記取得したダミーデータを合成する（取得したダミーデータを加工して擬似的に帳票データを生成して、ワークフローサーバＣ００９から取得した場合と同様に処理可能にする）。
【０１２８】
次に、ステップＳ０１０において、データ取得制御部Ｃ００３は、「運用モード」／「検証モード」の区別なく、上記取得したデータを処理する。「結婚届」の「起案」ファンクションでは、新規状態の帳票データが表示された結婚届画面（図８に示した結婚届）がクライアントＣ００１の画面に表示される。
【０１２９】
「結婚届」の「起案」ファンクションが終了すると、図１９に示すように、ファンクション制御部Ｃ００２は、「等級取得」ファンクション（ファンクション種別：外部ＤＢデータ取得）を実行制御する。この「等級取得」ファンクションでは、データ取得制御部Ｃ００３は、図１６のステップＳ００２において、検証モードプロパティのデータ取得先が「サーバ」である（Ｙｅｓ）と判定し、ステップＳ００３に処理を進める。
【０１３０】
ステップＳ００３では、データ取得制御部Ｃ００３は、データ取得要求をワークフローサーバＣ００９に送信する。このデータ取得要求には、クライアントの起動モード（「検証モード」又は「運用モード」）が含まれる。なお、「結婚届」の「等級取得」ファンクションでは、結婚届画面（図８）の社員ＩＤの欄に記載されたユーザＩＤをキーにユーザの等級を、外部ＤＢである人事ＤＢの社員マスタから取得するデータ取得要求がワークフローサーバＣ００９に送信される。
【０１３１】
クライアントＣ００１からのデータ取得要求を受信すると、ステップＳ１０１において、ワークフローサーバＣ００９のアクセス制御部Ｃ０１０は、指定データへのアクセス権限があるか判定する。なお、指定データが外部ＤＢの場合、該データへのアクセス権限の判定は、外部ＤＢ接続定義Ｃ０１６内の外部ＤＢアクセス権限設定（図７）に基づいてなされる。なお、「本番モード」の場合、アクセス権限７０１に基づいてなされ、「検証モード」の場合、検証モードアクセス７０２に基づいてなされる。
【０１３２】
そして、上記Ｓ１０１において、指定データへのアクセス権限がないと判定された場合には、アクセス制御部Ｃ０１０は、ステップＳ１０２において、アクセス権限無しエラーをクライアントＣ００１に返信する。
【０１３３】
なお、「結婚届」の「等級取得」ファンクションでは、外部ＤＢである人事ＤＢの社員マスタから等級データが指定されているので、「検証モード」では、アクセス制御部Ｃ０１０は「不可」と判定され、アクセス権限無しエラーが返信される。この際に、ワークフローサーバＣ００９はクライアントＣ００１に返すべきデータの属性（項目構成情報）を送信しても良いし、クライアントＣ００１でワークフローサーバＣ００９から返るべきデータの属性を記憶しておいても良い。
【０１３４】
ワークフローサーバＣ００９からのアクセス権限無しエラーを受信すると、ステップＳ００４において、クライアントＣ００１のデータ取得制御部Ｃ００３は、「検証モード」であるか判定し、「検証モード」でない場合（「運用モード」の場合）、ステップＳ０１１において、エラー処理を行う。
【０１３５】
一方、上記Ｓ００４において、「検証モード」の場合、データ取得制御部Ｃ００３は、ステップＳ００５に処理を進める。
【０１３６】
そして、ステップＳ００５において、検証モードプロパティ（図１０）のダミーデータ取得モード１４０３が「自動取得」であるか判定する。
【０１３７】
そして、上記Ｓ００５において、ダミーデータ取得モード１４０３が「自動取得」でない（「都度取得」である）と判定した場合（Ｓ００５でＮｏの場合）、データ取得制御部Ｃ００３は、ステップＳ０１２に処理を進める。なお、「検証モード」で実行された「結婚届」の「等級取得」ファンクション（ファンクション種別：外部ＤＢデータ取得）の場合、Ｓ００４でＮｏとなり、図６の検証モードプロパティのダミーデータ取得モードが「都度取得」であるため、Ｓ００５でＮｏとなり、ステップＳ０１２に処理が進められる。
【０１３８】
ステップＳ０１２において、データ取得制御部Ｃ００３は、ダミーデータ設定部Ｃ００５に、ダミーデータ設定画面（図１３等）を表示させ、入力が必要な部分の入力を促す。なお、入力が必要な部分の属性は、上記Ｓ１０２でサーバから受信した属性でもクライアントで初めから記憶しておいても良い。
【０１３９】
なお、指定データが、システムＤＢＣ０１４内のデータの場合は、ダミーデータ設定画面（図１３）を表示し、入力が必要な※マークの部分の入力を促す。また、指定データが、外部ＤＢＣ１００のデータの場合は、外部ＤＢ用ダミーデータ設定画面（図１４）を表示し、入力が必要な部分の入力を促す。なお、「結婚届」の「等級取得」ファンクション（ファンクション種別：外部ＤＢデータ取得）の場合、外部ＤＢ用ダミーデータ設定画面（図１４）が表示される。
【０１４０】
なお、ユーザは、ダミーデータ設定画面のデータ登録ボタン（図１３の１５０２、図１４の１８０２）により、一度設定したデータ内容をダミーデータファイルとしてダミーデータ格納ディレクトリＣ００７に保存しておくことが出来る。この際、ダミーデータ適用範囲（図１３の１５０１、図１４の１８０１）を画面別（その帳票のその画面専用のデータ）またはテーブル別（そのデータテーブル全体の共通データ）かを設定できる。
【０１４１】
ダミーデータ設定画面で必要な部分が入力されＯＫボタンが指示されると、データ取得制御部Ｃ００３は、ステップＳ０１３に処理を進める。
【０１４２】
次に、ステップＳ０１３において、データ取得制御部Ｃ００３は、ダミーデータ設定部Ｃ００５を介してダミーデータ設定画面（図１４）から、手入力又は任意ファイル読み込み（インポート）によりデータ設定されたデータを取得し、ステップＳ００９に処理を進める。
【０１４３】
そして、データ取得制御部Ｃ００３は、取得したダミーデータを合成し（取得したダミーデータを加工して擬似的に帳票データを生成して、ワークフローサーバＣ００９から取得した場合と同様に処理可能にし）（Ｓ００９）、「運用モード」／「検証モード」の区別なく、取得したデータを処理する（Ｓ０１０）。「結婚届」の「等級取得」ファンクションでは、取得した等級が追加された結婚届画面に表示される。
【０１４４】
「結婚届」の「等級取得」ファンクションが終了し、等級欄に等級（例えば「Ｍ２」）が入力されると、図１９に示すように、ファンクション制御部Ｃ００２は、「祝金額取得」ファンクション（ファンクション種別：外部ＤＢデータ取得）を実行制御する。この「祝金額取得」ファンクション（ファンクション種別：外部ＤＢデータ取得）では、データ取得制御部Ｃ００３は、図１６のステップＳ００２において、検証モードプロパティのデータ取得先が「サーバ」である（Ｙｅｓ）と判定し、ステップＳ００３で、データ取得要求をワークフローサーバＣ００９に送信する。
【０１４５】
そして、「結婚届」の「祝金額取得」ファンクションでは、外部ＤＢである人事ＤＢの祝金額マスタから祝金額データが指定されているので、「検証モード」では、アクセス制御部Ｃ０１０は、図７の検証モードアクセス７０２に基づいて、アクセス権限があると判定して、ステップＳ１０３に処理を進める。
【０１４６】
ステップＳ１０３では、アクセス制御部Ｃ０１０は、データを取得し、ステップＳ１０４において、取得したデータをクライアントＣ００１に返送する。
【０１４７】
ワークフローサーバＣ００９から返送されるデータを受信を受信すると、ステップＳ０１０において、クライアントＣ００１のデータ取得制御部Ｃ００３は、取得したデータを処理する（Ｓ０１０）。「結婚届」の「祝金額取得」ファンクションでは、取得した祝金額が追加された結婚届画面に表示される。
【０１４８】
「結婚届」の「祝金額取得」ファンクションが終了すると、図１９に示すように、ファンクション制御部Ｃ００２は、「配偶者情報取得」ファンクション、「住所変更届作成」ファンクション、「申請」ファンクションの順に処理を実行する。この「申請」ファンクション（ファンクション種別：帳票データ更新）は、図６に示すように「出力系」（出力処理系）であるので、ファンクション制御部Ｃ００２は、ステップＳ２０３に処理を進める。
【０１４９】
ステップＳ２０３では、ファンクション制御部Ｃ００２は、モードが「検証モード」であると判定した場合（Ｓ２０３でＹｅｓ）、ステップＳ２０５に処理を進める。
【０１５０】
ステップＳ２０５では、ファンクション制御部Ｃ００２は、出力データ表示部に出力データ確認画面表示処理を実行させる。「検証モード」で実行された「結婚届」の「申請」ファンクションでは、申請内容が、図１３に示したダミーデータ設定画面に確認表示される。なお、外部ＤＢＣ１００に該当するＤＢのデータを更新する場合は、出力データが、外部ＤＢ用出力データ確認画面（図１５）に確認表示される。
【０１５１】
一方、ステップＳ２０３において、モードが「運用モード」であると判定した場合（Ｓ２０３でＮｏ）、ファンクション制御部Ｃ００２は、ステップＳ２０５において、出力データをワークフローサーバＣ００９に送信する。「運用モード」で実行された「結婚届」の「申請」ファンクションでは、申請内容が、ワークフローサーバＣ００９に送信されて、帳票データＣ０１７内の「結婚届」帳票の帳票データが更新される。
【０１５２】
そして、「申請」ファンクションが終了すると、「申請」アクティビティが終了する。そして、「上長承認」アクティビティ、「人事処理」アクティビティが処理されると、「結婚届」帳票のワークフローが終了する。
【０１５３】
以上示したように、本実施形態のワークフローシステムにおいては、「検証モード」で実行中のクライアントＣ００１においてワークフローサーバＣ００９への要求が発生した場合、要求の種別に応じて、通用どおりワークフローサーバＣ００９へ要求を送信するか、ワークフローサーバＣ００９を介さずにクライアントＣ００１内で擬似的に機能を実行するかをクライアントＣ００１内で自動的に切り分けて動作検証をできるようにする。
【０１５４】
したがって、ワークフローシステム開発中の画面単位での動作確認において、外部データへの不正なアクセスや、設定ミスによるデータ書き換え等のセキュリティ上の問題を防ぎつつ、またアクセス対象レコードを都度修正する手間なく、外部データベースアクセス機能を含めた検証が実行できるようになり、ワークフローシステムの開発効率が上がる等の効果を奏する。
【０１５５】
即ち、ワークフローシステム開発中の画面単位の検証において、外部データベースへのアクセス機能を含めて本番実行に準じた安全で効率の良い動作確認を可能とする。
【０１５６】
なお、上記実施形態では、検証モードプロパティ定義ファイルＣ００６（図１０）において、ファンクション種別１４０１毎に、データ取得先１４０２を設定し、入力処理（取得系の処理）を実行する際、検証モードで起動され、該入力処理のファンクション種別に対して「ダミー」（ダミーデータモード）が設定されている場合には、ワークフローサーバＣ００９に指示することなくクライアントＣ００１側でダミーデータを入力する構成について説明した。
【０１５７】
しかし、さらに、検証モードプロパティ定義ファイルＣ００６（図１０）において、ファンクション種別１４０１毎に、データ出力先を「サーバ」（実データモード）又は「ダミー」（ダミーデータモード）に設定しておき、データ出力先設定に応じて、ワークフローサーバＣ００９にデータ出力を行うか、クライアントＣ００１側でデータ出力（画面出力やファイルへの出力）を行うかを制御してもよい。即ち、出力処理（出力系の処理）を実行する際、検証モードで起動され、該出力処理のファンクション種別に対して「ダミー」（ダミーデータモード）が設定されている場合には、ワークフローサーバＣ００９に指示することなくクライアントＣ００１側で画面（図１３や図１５）やファイル等にデータ出力を行うように構成してもよい。
【０１５８】
上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１５９】
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１６０】
以下、図２０に示すメモリマップを参照して本発明に係るワークフローシステムを構成するクライアントＣ００１及びワークフローサーバＣ００９としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体の構成について説明する。
【０１６１】
図２０は、本発明に係るワークフローシステムを構成するクライアントＣ００１及びワークフローサーバＣ００９としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体（記憶媒体）のメモリマップを説明する図である。
【０１６２】
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０１６３】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０１６４】
本実施形態における図１６，図１７に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０１６５】
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０１６６】
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１６７】
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＤＶＤ−ＲＯＭ，磁気テープ，不揮発性のメモリカード，ＲＯＭ，ＥＥＰＲＯＭ，シリコンディスク等を用いることができる。
【０１６８】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６９】
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１７０】
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１７１】
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ，データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
【０１７２】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【図面の簡単な説明】
【０１７３】
【図１】本発明の一実施形態を示すワークフローシステムの全体構成を示すシステム構成図である。
【図２】図１に示したクライアントＣ００１、ワークフローサーバＣ００９に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。
【図３】図１に示した組織データＣ０２０に記憶される部門情報の一例を示す図である。
【図４】図１に示した組織データＣ０２０に記憶されるロール情報の一例を示す図である。
【図５】図１に示した経路定義Ｃ０２２に記憶される経路定義情報の一例を示す図である。
【図６】図１に示したファンクション定義Ｃ０１８に記憶されるファンクション定義情報で定義されたファンクションのファンクション種別毎の動作種別を示す図である。
【図７】図１に示した外部ＤＢ接続定義Ｃ０１６に記憶される外部ＤＢアクセス権限設定の一部を例示する図である。
【図８】図１に示した画面定義Ｃ０１５に記憶される画面定義情報で定義された画面のイメージの一例を示す図である。
【図９】図１に示した帳票データＣ０１７に記憶される帳票データが記載された画面イメージの一例を示す図である。
【図１０】図１に示した検証モードプロパティ定義ファイルＣ００６の一例を示す図である。
【図１１】図１に示したダミーデータ格納ディレクトリＣ００７の一例を示す図である。
【図１２】帳票ＩＤと帳票名の対応を示す図である。
【図１３】図１に示したシステムデータベースＣ０１４に格納されるデータに対応するダミーデータをダミーデータ格納ディレクトリＣ００７（図１１）に設定するためのダミーデータ設定画面の一例を示す図である。
【図１４】図１に示した外部データベースＣ１００に格納されるデータに対応するダミーデータをダミーデータ格納ディレクトリＣ００７（図１１）に設定するための外部ＤＢ用ダミーデータ設定画面の一例を示す図である。
【図１５】図１に示した出力データ表示部Ｃ００４が外部ＤＢ用のデータ出力を行う確認画面（外部ＤＢ用出力データ確認画面）の一例を示す図である。
【図１６】本発明のワークフローシステムにおける入出力の処理の一例を示すフローチャートである。
【図１７】図１６のステップＳ２０２に示す取得系処理の一例を示すフローチャートである。
【図１８】帳票フローの例を示す図である。
【図１９】図１８に示した帳票フローの各アクティビティの画面と画面に組み込まれた主なファンクションの例を示す図である。
【図２０】本発明に係るワークフローシステムを構成するクライアントＣ００１及びワークフローサーバＣ００９としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体（記憶媒体）のメモリマップを説明する図である。
【符号の説明】
【０１７４】
Ｃ００１    クライアント
Ｃ００２    ファンクション制御部
Ｃ００３    ファンクション制御部
Ｃ００４    出力データ表示部
Ｃ００５    ダミーデータ設定部Ｃ００５
Ｃ００６    検証モードプロパティ定義ファイル
Ｃ００７    ダミーデータ格納ディレクトリ
Ｃ００８    エクスポート／インポートファイル
Ｃ００９    ワークフローサーバ
Ｃ０１０    アクセス制御部
Ｃ０１３    外部システム
Ｃ０１４    システムデータベース
Ｃ０１５    画面定義
Ｃ０１６    外部ＤＢ接続定義
Ｃ０１７    帳票データ
Ｃ０１８    ファンクション（データ処理）定義
Ｃ０２０    組織データ等のテーブル
Ｃ０２１    項目構成定義
Ｃ０２２    経路定義
Ｃ１００    外部データベース
【図１】
2010146270.tif 000003
【図２】
2010146270.tif 000004
【図３】
2010146270.tif 000005
【図４】
2010146270.tif 000006
【図５】
2010146270.tif 000007
【図６】
2010146270.tif 000008
【図７】
2010146270.tif 000009
【図８】
2010146270.tif 000010
【図９】
2010146270.tif 000011
【図１０】
2010146270.tif 000012
【図１１】
2010146270.tif 000013
【図１２】
2010146270.tif 000014
【図１３】
2010146270.tif 000015
【図１４】
2010146270.tif 000016
【図１５】
2010146270.tif 000017
【図１６】
2010146270.tif 000018
【図１７】
2010146270.tif 000019
【図１８】
2010146270.tif 000020
【図１９】
2010146270.tif 000021
【図２０】
2010146270.tif 000022