(57)【要約】【課題】申請処理に加え、このような各種作業を含めた業務処理を実行することができ、例えば製造メーカー等の業務推進に寄与するワークフローシステム及びワークフロー制御方法を提供する。【解決手段】サーバとクライアントとから構成され、作業フローと承認申請フローとを任意に組み合わせて設定された業務を、ネットワークを介して遂行するワークフローシステムであって、１つのワークフローに並行して設定できる作業フローの並行数をクライアントが任意に設定する。【選択図】図４
2019175342.tif 000002
【特許請求の範囲】
【請求項１】
サーバとクライアントとから構成され、作業フローと承認申請フローとを任意に組み合わせて設定されたワークフローを有する業務処理を、ネットワークを介して遂行するワークフローシステムであって、
前記ワークフローシステムは、
前記ワークフローを制御するための情報を定義したワークフロー定義情報を記憶するワークフロー定義情報記憶部と、
前記ワークフローで用いられる複数のフォームを定義したフォーム定義情報を記憶するフォーム定義情報記憶部と、
前記ワークフローの実行により生成されるプロセス情報を記憶するプロセスインスタンス記憶部と、
前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行するワークフロー制御手段と、を備え、
前記ワークフローシステムは、前記クライアントによって設定された画面の構成要素と属性に応じて、前記フォーム定義情報に基づいて生成したフォーム情報をフォーム情報記憶部に格納し、
前記ワークフロー制御手段は、前記ワークフローで行われる作業状況を管理可能であり、
１つの前記ワークフローに並行して設定できる前記作業フローの並行数を前記クライアントが任意に設定することができることを特徴とするワークフローシステム。
【請求項２】
請求項１記載のワークフローシステムにおいて、
前記作業フローと承認申請フローとは、予め設定されたサブフローを任意の順番で組み合わせることにより設定されることを特徴とするワークフローシステム。
【請求項３】
サーバとクライアントとから構成され、複数のワークフローを有する業務処理をネットワークを介して実行するワークフローシステムであって、
前記サーバは、
前記業務処理の前記ワークフローを実行するためのフロー処理を定義したワークフロー定義情報を記憶するワークフロー定義情報記憶部と、
前記ワークフローの実行中に前記クライアントに表示される画面の構成要素を定義したフォーム定義情報を記憶するフォーム定義情報記憶部と、
前記ワークフローの実行により生成されるプロセス情報を記憶するプロセスインスタンス記憶部と、
前記ワークフローの実行中に前記クライアントより入力される前記画面の前記構成要素に基づいた項目入力情報を記憶するフォーム入力内容記憶部と、
前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行するワークフロー制御手段と、
前記フォーム定義情報、前記プロセス情報及び前記項目入力情報に基づいて、前記ワークフローの実行中に表示が要求される前記画面の画面情報を、当該画面の表示が要求される毎に生成する画面生成手段と、
前記クライアントより入力された前記項目入力情報を受信し、当該項目入力情報を前記画面生成手段に提供するワークフロー画面制御手段と、
を備え、
前記ワークフロー定義情報は、複数の前記ワークフローのうち、少なくとも１つの前記ワークフローの終了処理に、他のワークフローの起動処理が含まれていることを特徴とするワークフローシステム。
【請求項４】
請求項３記載のワークフローシステムにおいて、
複数の前記ワークフローは、少なくとも１つの承認申請フローと、複数の作業が並行して実施される少なくとも１つの作業フローとを含むことを特徴とするワークフローシステム。
【請求項５】
請求項４記載のワークフローシステムにおいて、
少なくとも１つの前記作業フローと少なくとも１つの前記承認申請フローとが、任意の順番で組み合わされていることを特徴とするワークフローシステム。
【請求項６】
請求項４又は５記載のワークフローシステムにおいて、
前記ワークフロー定義情報は、前記承認申請フローの終了処理に、前記作業フローの起動処理が含まれていることを特徴とするワークフローシステム。
【請求項７】
請求項４又は５記載のワークフローシステムにおいて、
前記ワークフロー定義情報は、前記作業フローの終了処理に、前記承認申請フローの起動処理が含まれていることを特徴とするワークフローシステム。
【請求項８】
請求項４又は５記載のワークフローシステムにおいて、
前記ワークフロー定義情報は、第１の前記承認申請フローの終了処理に、前記作業フローの起動処理が含まれ、前記作業フローの終了処理に、第２の前記承認申請フローの起動処理が含まれていることを特徴とするワークフローシステム。
【請求項９】
請求項３〜８のいずれか１項に記載のワークフローシステムにおいて、
前記作業フローは、納期が設定され、前記納期が経過した段階で、終了処理が実施されることを特徴とするワークフローシステム。
【請求項１０】
請求項３〜９のいずれか１項に記載のワークフローシステムにおいて、
前記作業フローは、それぞれ並行して実施される前記複数の作業が終了した段階で、終了処理が実施されることを特徴とするワークフローシステム。
【請求項１１】
サーバとクライアントとから構成され、作業フローと承認申請フローとを任意に組み合わせて設定された業務を、ネットワークを介して遂行するワークフロー制御方法であって、
前記ワークフロー制御方法は、
前記ワークフローを制御するための情報を定義したワークフロー定義情報を記憶する工程と、
前記ワークフローで用いられる複数のフォームを定義したフォーム定義情報を記憶する工程と、
前記ワークフローの実行により生成されるプロセス情報を記憶する工程と、
前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行する工程と、を備え、
さらに、前記ワークフロー制御方法は、
前記クライアントによって設定された画面の構成要素と属性に応じて、前記フォーム定義情報に基づいて生成したフォーム情報をフォーム情報記憶部に格納する工程と、
１つの前記ワークフローに並行して設定できる前記作業フローの並行数を前記クライアントが任意に設定する工程とを有することを特徴とするワークフロー制御方法。
【請求項１２】
サーバとクライアントとから構成され、複数のワークフローを有する業務処理をネットワークを介して実行するワークフロー制御方法であって、
前記業務処理の前記ワークフローを実行するためのフロー処理を定義したワークフロー定義情報を記憶する工程と、
前記ワークフローの実行中に前記クライアントに表示される画面の構成要素を定義したフォーム定義情報を記憶する工程と、
前記ワークフローの実行により生成されるプロセス情報を記憶する工程と、
前記ワークフローの実行中に前記クライアントより入力される前記画面の前記構成要素に基づいた項目入力情報を記憶する工程と、
前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行する工程と、
前記フォーム定義情報、前記プロセス情報及び前記項目入力情報に基づいて、前記ワークフローの実行中に表示が要求される前記画面の画面情報を、当該画面の表示が要求される毎に生成する工程と、
前記クライアントより入力された前記項目入力情報を受信し、当該項目入力情報を提供する工程と、
を備え、
前記ワークフロー定義情報は、複数の前記ワークフローのうち、少なくとも１つの前記ワークフローの終了処理に、他のワークフローの起動処理が含まれていることを特徴とするワークフロー制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークフローのサブフローである作業フローと承認申請フローとを任意に組み合わせて設定された業務をネットワークを介して処理するワークフローシステム及びワークフロー制御方法に関する。
【背景技術】
【０００２】
特許文献１には、各種定義情報及びその設定値に基づいて、業務処理に基づいた並列フロー制御及び／又は直列フロー制御を実行すると共に、プログラムソースコードを生成することなく、並列フロー制御及び／又は直列フロー制御の実行時に使用される画面を生成することにより、システムの資源管理を容易にすると共に、複数の業務システムに汎用的に適用すること可能なワークフローシステム、ワークフロー制御方法及びプログラムが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−６９８７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１では、例えば上長の承認が必要な申請処理（休暇申請）に関する記述があり、それ以外の処理、例えば作業の依頼を含めた業務に関する処理は記載がない。
【０００５】
製造メーカー等においては、複数人による各種作業（図面作成、工程表作成等）が頻繁に発生する。申請処理に加え、このような各種作業を含めた業務処理を実行するワークフローシステムがないのが現状である。
【０００６】
本発明は上記のような課題を考慮してなされたものであり、申請処理に加え、このような各種作業を含めた業務処理を実行することができ、例えば製造メーカー等の業務推進に寄与するワークフローシステム及びワークフロー制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
［１］  第１の本発明に係るワークフローシステムは、サーバとクライアントとから構成され、作業フローと承認申請フローとを任意に組み合わせて設定されたワークフローを有する業務処理を、ネットワークを介して遂行するワークフローシステムであって、前記ワークフローシステムは、前記ワークフローを制御するための情報を定義したワークフロー定義情報を記憶するワークフロー定義情報記憶部と、前記ワークフローで用いられる複数のフォームを定義したフォーム定義情報を記憶するフォーム定義情報記憶部と、前記ワークフローの実行により生成されるプロセス情報を記憶するプロセスインスタンス記憶部と、前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行するワークフロー制御手段と、を備え、前記ワークフローシステムは、前記クライアントによって設定された画面の構成要素と属性に応じて、前記フォーム定義情報に基づいて生成したフォーム情報をフォーム情報記憶部に格納し、前記ワークフロー制御手段は、前記ワークフローで行われる作業状況を管理可能であり、１つの前記ワークフローに並行して設定できる前記作業フローの並行数を前記クライアントが任意に設定することができることを特徴とする。
【０００８】
これにより、複数人の作業者（設計者等）が同時に作業を進める作業フローの並行数をクライアントが任意に設定することができるため、処理フローの適用範囲を様々な業務に拡大させることができ、業務推進の向上に寄与する。
【０００９】
［２］  第１の本発明において、前記作業フローと承認申請フローとは、予め設定されたサブフローを任意の順番で組み合わせることにより設定されてもよい。
【００１０】
これにより、承認申請フローと、複数人の作業者（設計者等）が同時に作業を進める作業フローとを任意の順番で組み合わせることで、例えば製品設計で実施される様々な承認や作業に沿ってワークフローを構築することができる。
【００１１】
［３］  第２の本発明に係るワークフローシステムは、サーバとクライアントとから構成され、複数のワークフローを有する業務処理をネットワークを介して実行するワークフローシステムであって、前記サーバは、前記業務処理の前記ワークフローを実行するためのフロー処理を定義したワークフロー定義情報を記憶するワークフロー定義情報記憶部と、前記ワークフローの実行中に前記クライアントに表示される画面の構成要素を定義したフォーム定義情報を記憶するフォーム定義情報記憶部と、前記ワークフローの実行により生成されるプロセス情報を記憶するプロセスインスタンス記憶部と、前記ワークフローの実行中に前記クライアントより入力される前記画面の前記構成要素に基づいた項目入力情報を記憶するフォーム入力内容記憶部と、前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行するワークフロー制御手段と、前記フォーム定義情報、前記プロセス情報及び前記項目入力情報に基づいて、前記ワークフローの実行中に表示が要求される前記画面の画面情報を、当該画面の表示が要求される毎に生成する画面生成手段と、前記クライアントより入力された前記項目入力情報を受信し、当該項目入力情報を前記画面生成手段に提供するワークフロー画面制御手段と、を備え、前記ワークフロー定義情報は、複数の前記ワークフローのうち、少なくとも１つの前記ワークフローの終了処理に、他のワークフローの起動処理が含まれていることを特徴とする。
【００１２】
従来は、休暇申請等のような承認申請を単独で行う手法、承認申請を直列に接続する手法、ＸＯＲ分岐によって複数の承認申請から１つの承認申請を選択する手法が主体であり、複数人の作業者（設計者等）が同時に作業を進める処理フロー（作業フロー）までは想定していなかった。
【００１３】
本実施の形態では、承認申請フローに、複数人の作業者（設計者等）が同時に作業を進める作業フローを任意に組み合わせることで、処理フローの適用範囲を様々な業務に拡大させることができ、業務推進の向上に寄与する。
【００１４】
［４］  第２の本発明において、複数の前記ワークフローは、少なくとも１つの承認申請フローと、複数の作業が並行して実施される少なくとも１つの作業フローとを含んでもよい。
【００１５】
例えばある製品の設計を実施するための承認申請を行い、承認が下りた段階で、複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施することができ、例えば設計承認から設計図面の作成依頼までの処理を１つのワークフローにて実行することが可能となる。
【００１６】
［５］  第２の本発明において、少なくとも１つの前記作業フローと少なくとも１つの前記承認申請フローとが、任意の順番で組み合わされてもよい。例えば複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施した後に、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【００１７】
［６］  第２の本発明において、前記ワークフロー定義情報は、前記承認申請フローの終了処理に、前記作業フローの起動処理が含まれていてもよい。これにより、前記承認申請フローの終了後に、作業フローを実施することができ、上述した例えば設計承認から設計図面の作成依頼までの処理を１つのワークフローにて実行することが可能となる。
【００１８】
［７］  第２の本発明において、前記ワークフロー定義情報は、前記作業フローの終了処理に、前記承認申請フローの起動処理が含まれていてもよい。これにより、前記作業フローの終了後に、承認申請フローを実施することができ、上述した例えば複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施した後に、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【００１９】
［８］  第２の本発明において、前記ワークフロー定義情報は、第１の前記承認申請フローの終了処理に、前記作業フローの起動処理が含まれ、前記作業フローの終了処理に、第２の前記承認申請フローの起動処理が含まれていてもよい。
【００２０】
これにより、例えばある製品の設計を実施するための承認申請を行い、承認が下りた段階で、複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を行い、さらに、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【００２１】
［９］  第２の本発明において、前記作業フローは、納期が設定され、前記納期が経過した段階で、終了処理が実施されてもよい。
【００２２】
納期が経過した段階で、作業が完了していれば、正常終了として、例えば作業の結果物に対する承認申請を実施し、作業が未完であれば、異常終了として、その後の承認申請等を実施しない等の処理を１つのワークフローにて実行することが可能となる。
【００２３】
［１０］  第２の本発明において、前記作業フローは、それぞれ並行して実施される前記複数の作業が終了した段階で、終了処理が実施されてもよい。作業が完了した時点が納期内であれば、正常終了として、例えば作業の結果物に対する承認申請を実施し、作業が完了した時点で納期を過ぎていれば、異常終了として、その後の承認申請等を実施しない等の処理を１つのワークフローにて実行することが可能となる。
【００２４】
［１１］  第３の本発明に係るワークフロー制御方法は、サーバとクライアントとから構成され、作業フローと承認申請フローとを任意に組み合わせて設定された業務を、ネットワークを介して遂行するワークフロー制御方法であって、前記ワークフロー制御方法は、前記ワークフローを制御するための情報を定義したワークフロー定義情報を記憶する工程と、前記ワークフローで用いられる複数のフォームを定義したフォーム定義情報を記憶する工程と、前記ワークフローの実行により生成されるプロセス情報を記憶する工程と、前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行する工程と、を備え、さらに、前記ワークフロー制御方法は、前記クライアントによって設定された画面の構成要素と属性に応じて、前記フォーム定義情報に基づいて生成したフォーム情報をフォーム情報記憶部に格納する工程と、１つの前記ワークフローに並行して設定できる前記作業フローの並行数を前記クライアントが任意に設定する工程とを有することを特徴とする。
【００２５】
［１２］  第４の本発明に係るワークフロー制御方法は、サーバとクライアントとから構成され、複数のワークフローを有する業務処理をネットワークを介して実行するワークフロー制御方法であって、前記業務処理の前記ワークフローを実行するためのフロー処理を定義したワークフロー定義情報を記憶する工程と、前記ワークフローの実行中に前記クライアントに表示される画面の構成要素を定義したフォーム定義情報を記憶する工程と、前記ワークフローの実行により生成されるプロセス情報を記憶する工程と、前記ワークフローの実行中に前記クライアントより入力される前記画面の前記構成要素に基づいた項目入力情報を記憶する工程と、前記ワークフロー定義情報及び前記プロセス情報に基づいて、前記ワークフローを実行する工程と、前記フォーム定義情報、前記プロセス情報及び前記項目入力情報に基づいて、前記ワークフローの実行中に表示が要求される前記画面の画面情報を、当該画面の表示が要求される毎に生成する工程と、前記クライアントより入力された前記項目入力情報を受信し、当該項目入力情報を提供する工程と、を備え、前記ワークフロー定義情報は、複数の前記ワークフローのうち、少なくとも１つの前記ワークフローの終了処理に、他のワークフローの起動処理が含まれていることを特徴とする。
【発明の効果】
【００２６】
本発明に係るワークフローシステム及びワークフロー制御方法によれば、申請処理に加え、このような各種作業を含めた業務処理を実行することができ、例えば製造メーカー等の業務推進に寄与することができる。
【図面の簡単な説明】
【００２７】
【図１】本実施の形態に係るワークフローシステムの概略構成図である。
【図２】本実施の形態によるソフトウェア画面を生成する方法を説明するための図である。
【図３】図３Ａは承認申請のフロー処理をビジネスプロセスモデリング表記（ＢＰＭＮ）により表した図であり、図３Ｂは作業依頼のフロー処理をＢＰＭＮにより表した図である。
【図４】代表的な１つの業務処理のフロー処理をＢＰＭＮにより表した図である。
【図５】様々なサブフローを組み合わせて構成された業務処理の例を示す説明図である。
【図６】図６Ａは一例として、第１設計課に所属する設計者等を示す説明図であり、図６Ｂは一例として、第２設計課に所属する設計者等を示す説明図である。
【図７】図７Ａは第１設計課用の製品設計の承認申請フォームの例を示す説明図であり、図７Ｂは第２設計課用の製品設計の承認申請フォームの例を示す説明図である。
【図８】図８Ａは第１設計課用の製品の設計図面の作成依頼フォームの例を示す説明図であり、図８Ｂは第２設計課用の製品の設計図面の作成依頼フォームの例を示す説明図である。
【図９】図９Ａは第１設計課の設計図面の承認申請フォームの例を示す説明図であり、図９Ｂは第２設計課の設計図面の承認申請フォームの例を示す説明図である。
【図１０】フォーム作成ツールによる申請フォーム及び依頼フォームの作成手順を示すフローチャートである。
【図１１】１つの業務処理Ａのフロー処理の作成手順を示すフローチャートである。
【図１２】設計の承認申請フローの終了処理の一例を示すＢＰＭＮである。
【図１３】作業依頼フローの第１終了処理の一例を示すＢＰＭＮである。
【図１４】作業依頼フローの第２終了処理の一例を示すＢＰＭＮである。
【図１５】ワークフローの起票申請の手順を示すフローチャート（その１）である。
【図１６】ワークフローの起票申請の手順を示すフローチャート（その２）である。
【図１７】申請した設計承認申請や設計図面承認申請の承認作業手順を示すフローチャートである。
【発明を実施するための形態】
【００２８】
以下、本発明に係るワークフローシステム及びワークフロー制御方法の実施の形態例を図１〜図１７を参照しながら説明する。
【００２９】
本実施の形態に係るワークフローシステム１０は、図１に示すように、データベースサーバ２０、アプリケーションサーバ３０及びＷＥＢクライアント４０が、ネットワーク５０を介して互いに通信可能に接続された構成である。ＷＥＢクライアント４０は、例えばユーザが使用する端末装置であって、例えばワークフローで使用する申請フォームや依頼フォームのデザインを作成したり、承認申請や作業依頼等を行う。
【００３０】
データベースサーバ２０は、フォーム定義情報記憶部２１、ワークフロー定義情報記憶部２２、フロー定義ひな形記憶部２３、フォーム入力内容記憶部２４、プロセスインスタンス記憶部２５、及びワークフローエンジン２６等を備えている。
【００３１】
フォーム定義情報記憶部２１は、ワークフロー実行中にＷＥＢクライアント４０に表示される画面の構成要素を定義したフォーム定義情報を記憶する。ワークフロー定義情報記憶部２２は、業務処理のワークフローを実行するためのフロー処理を定義したワークフロー定義情報をする。フロー定義ひな形記憶部２３は、所定の業務処理をパターン化したフロー処理の情報を予め定義したフロー定義ひな形情報を記憶する。
【００３２】
フォーム入力内容記憶部２４は、ワークフローの実行中にＷＥＢクライアント４０より入力される画面の構成要素に基づいた項目入力情報を記憶する。プロセスインスタンス記憶部２５は、ワークフローの実行により生成されるプロセス情報（プロセスインスタンス）を記憶する。
【００３３】
ワークフローエンジン２６は、ワークフロー実行時に、ワークフロー定義情報及びプロセスインスタンスに基づいて、ワークフローの並列フロー制御及び／又は直列フロー制御を実行する。
【００３４】
アプリケーションサーバ３０は、フォーム作成ツール３１、プロセス作成ツール３２、画面生成モジュール３３、及びワークフロー画面制御モジュール３４を備えている。
【００３５】
フォーム作成ツール３１は、予め用意されている複数の部品（例えば、文字列、数値等を入力するためのアイコン）の中からワークフローに必要な部品を選択し、選択した部品を画面の構成要素として、その属性情報（名称、表示サイズ等部品に関連した情報）及び配置情報（画面上の表示位置に関連した情報）を設定する。また、フォーム作成ツール３１は、設定した構成要素の属性情報及び配置情報に基づいて、フォーム定義情報を生成し、生成したフォーム定義情報をフォーム定義情報記憶部２１に格納する。また、フォーム作成ツール３１は、生成されたフォーム定義情報に対応付けられるフォーム入力内容記憶部２４をデータベースサーバ２０上に確保する。
【００３６】
例えばフォーム作成ツール３１の実行により、フォーム定義情報記憶部２１にフォーム定義情報Ａが格納された際、フォーム定義情報Ａに対応付けられたフォーム入力内容記憶部２４−Ａがデータベースサーバ２０上に１つ確保される。従って、フォーム定義情報記憶部２１にｎ個のフォーム定義情報が格納されている場合は、ｎ個のフォーム入力内容記憶部２４がデータベースサーバ２０上に確保されている。
【００３７】
プロセス作成ツール３２は、フロー処理が１つの場合は、当該フロー処理の終了処理を設定し、複数のフロー処理が直列に接続される場合は、例えば前段のフローの終了処理と、後段のフローの終了処理を設定する。フロー処理の終了処理としては、例えば承認申請フローの場合、承認結果を当事者（申請者等）に伝えることが挙げられる。
【００３８】
前段のフロー処理の終了処理としては、当事者に対する後段のフロー処理の起動通知等が挙げられる。これらのフロー処理は、予め設定されたフロー定義ひな形情報に基づいてパターン化されて、新たなワークフロー定義情報としてワークフロー定義情報記憶部２２に格納される。
【００３９】
また、プロセス作成ツール３２は、設定したフロー処理に基づいてワークフロー定義情報を生成し、生成したワークフロー定義情報をワークフロー定義情報記憶部２２に格納する。
【００４０】
画面生成モジュール３３は、ワークフローを実行中に使用される画面の画面情報を、フォーム定義情報、プロセス情報及び項目入力情報に基づいて、画面の表示が要求される毎に生成する。
【００４１】
また、画面生成モジュール３３は、ワークフローの実行により、ＷＥＢクライアント４０から入力された項目入力情報の論理チェックも行い、正常な項目入力情報をフォーム入力内容記憶部２４に格納する。例えば日付について「３月３４日」を入力した場合に、論理エラーと判断する。
【００４２】
画面生成モジュール３３は、ワークフローの実行開始要求を、ワークフローエンジン２６に出力する。また、画面生成モジュール３３は、ワークフローの実行により発生したプロセス情報をプロセスインスタンス記憶部２５に格納する。
【００４３】
ワークフロー画面制御モジュール３４は、画面生成モジュール３３により生成された画面情報に基づいた画面を、ブラウザを介して、ＷＥＢクライアント４０に表示させる。また、ワークフロー画面制御モジュール３４は、ＷＥＢクライアント４０を介してユーザによって入力された項目入力情報を受信する。また、ワークフロー画面制御モジュール３４は、ＷＥＢクライアント４０から受信した項目入力情報を、画面生成モジュール３３に提供する。
【００４４】
次に、図２を参照して、ＷＥＢ環境で動作するソフトウェア画面を生成する方法について説明する。図２は、本発明によるソフトウェア画面を生成する方法を説明するための図である。
【００４５】
図２のステップＳ１において、画面生成モジュール３３は、画面の表示が要求されたときに、項目入力情報を一時的に記憶する入力情報記憶領域６０をアプリケーションサーバ３０上に確保する。次に、ステップＳ２において、画面生成モジュール３３は、表示が要求された画面のフォーム定義情報記憶部２１に基づいて、画面情報（入力フォーム）を生成する。
【００４６】
次に、ステップＳ３において、表示が要求された画面において、ＷＥＢクライアント４０より項目入力情報が入力されると、ワークフロー画面制御モジュール３４は項目入力情報を受信し、入力情報記憶領域６０に一時的に格納する。例えば、入力項目ａは入力情報記憶領域６０のエリアａに、入力項目ｂは入力情報記憶領域６０のエリアｂに、それぞれ格納される。
【００４７】
最後に、画面生成モジュール３３は、入力情報記憶領域６０とフォーム定義情報記憶部２１とに基づいて、入力された項目入力情報の論理チェックを行い、フォーム入力内容記憶部２４に格納する（ステップＳ４）。
【００４８】
次に、図３Ａ〜図４を参照して、ワークフローエンジン２６によって実行されるワークフローのワークフロー制御方法について説明する。
【００４９】
図３Ａは、承認申請のフロー処理（以下、承認申請フローＦａと記す）をビジネスプロセスモデリング表記（ＢＰＭＮ）により表した図であり、図３Ｂは、作業依頼のフロー処理（以下、作業依頼フローＦｂと記す）をＢＰＭＮにより表した図である。図４は、代表的な１つの業務処理Ａのフロー処理をＢＰＭＮにより表した図である。業務処理Ａは、２つの承認申請フローＦａと、１つの作業依頼フローＦｂとを組み合わせた内容になっている。
【００５０】
図３Ａ〜図４のＢＰＭＮは、それぞれプロセスオブジェクトと接続線とから構成されている。プロセスオブジェクトには、実行中に発生する事象を表すイベントと、作業や処理を表すアクティビティと、シーケンスの分岐と収束の制御を行うゲートウェイの３つの要素を持っている。図３Ａ〜図４では、イベントを丸で、アクティビティを角丸長方形で、ゲートウェイをひし形で表している。また、接続線は矢印で表している。
【００５１】
承認申請フローＦａは、図３Ａに示すように、処理Ａ−ａ（申請）、処理Ａ−ｂ（承認）の２個のアクティビティと、開始Ｅ−ａ、終了Ｅ−ｂの２つのイベントと、判定Ｃ−ａの１個のゲートウェイと、各プロセスオブジェクトを接続する５個の接続線とから構成される。判定Ｃ−ａは処理Ａ−ｂの終了を判定する。
【００５２】
同様に、作業依頼フローＦｂは、図３Ｂに示すように、処理Ａ−ｃ（依頼）及び処理Ａ−ｄから処理Ａ−ｇ（作業）の５個のアクティビティと、開始Ｅ−ｃ、終了Ｅ−ｄの２つのイベントと、並列分岐Ｃ−ｂ及び合流Ｃ−ｃの２個のゲートウェイと、各プロセスオブジェクトを接続する１１個の接続線とから構成される。並列分岐Ｃ−ｂは、処理Ａ−ｃの終了後に、処理Ａ−ｄ〜処理Ａ−ｇを並行して処理することを示している。
【００５３】
そして、図４に示すように、業務処理Ａは、作業依頼フローＦｂの前後にそれぞれ承認申請フローＦａを組み合わせた内容になっている。従って、前段の承認申請フローＦａの終了Ｅ−ｂは中間Ｅ−ｂ’となり、作業依頼フローの開始Ｅ−ｃは中間Ｅ−ｃ’、終了Ｅ−ｄは中間Ｅ−ｄ’となり、後段の承認申請フローの開始Ｅ−ａは中間Ｅ−ａ’となる。なお、図４において、後段の承認申請処理は、前段の承認申請処理と区別するために、処理Ａ−ａ（申請）を処理Ａ−ａ’、処理Ａ−ｂ（承認）を処理Ａ−ｂ’、判定Ｃ−ａを判定Ｃ−ａ’と記している。
【００５４】
ワークフローエンジン２６によって実行されるフロー制御は、ピンと呼ぶフラグを次に実行されるプロセスオブジェクトの位置に対応付けながら、ピンに位置づけされたプロセスオブジェクトの処理を順次実行する。
【００５５】
図４に示す業務処理Ａのフロー処理は、開始Ｅ−ａのイベントにより開始する。このとき、実行状態のピン１を生成する。次に、ピン１を処理Ａ−ａ（申請）のアクティビティに対応付け、処理Ａ−ａ（申請）を実行する。処理Ａ−ａ（申請）が終了すると、ピン１を処理Ａ−ｂ（承認）のアクティビティに対応付け、処理Ａ−ｂ（承認）及び判定Ｃ−ａを実行する。処理Ａ−ｂ（承認）が終了すると、中間Ｅ−ｂ’及びＥ−ｃ’を介して処理Ａ−ｃ（依頼）に進み、ピン１を処理Ａ−ｃのアクティビティに対応付け、処理Ａ−ｃ（依頼）を実行する。
【００５６】
処理Ａ−ｃ（依頼）が終了すると、ピン１を並列分岐Ｃ−ｂのゲートウェイに対応付け、並列分岐Ｃ−ｂを実行する。この並列分岐Ｃ−ｂの実行により、ピン１を休止状態にし、新たに４つのピン１−１〜１−４を生成して実行状態にして、ピン１−１〜１−４をそれぞれ処理Ａ−ｄ（作業）〜処理Ａ−ｇ（作業）のアクティビティに対応付け、処理Ａ−ｄ（作業）〜処理Ａ−ｇ（作業）をそれぞれ実行する。
【００５７】
上記処理Ａ−ｄ（作業）〜処理Ａ−ｇ（作業）が終了すると、ピン１−１〜１−４を判定Ｃ−ｃのゲートウェイに対応付け、判定Ｃ−ｃを実行する。判定Ｃ−ｃは、ピン１−１〜１−４を削除して、休止状態のピン１を実行状態にする。その後、中間Ｂ−ｄ’及びＢ−ａ’を介して処理Ａ−ａ’（申請）に進み、ピン１を処理Ａ−ａ’（申請）のアクティビティに対応付け、処理Ａ−ａ’（申請）を実行する。処理Ａ−ａ’（申請）が終了すると、ピン１を処理Ａ−ｂ’（承認）のアクティビティに対応付け、処理Ａ−ｂ’（承認）及び判定Ｃ−ａ’を実行する。
【００５８】
このように、業務処理Ａは、承認申請フローＦａ→作業依頼フローＦｂ→承認申請フローＦａの順番に進行する。特に、作業依頼フローＦｂは、複数人において並行して進行する。
【００５９】
上述したように、並列処理を実行可能な並列分岐のゲートウェイにおいて、実行状態のピン（図４ではピン１）を休止状態にし、並列処理の処理数分のピン（図４ではピン１−１〜ピン１−４）を新たに生成して実行状態にすることにより、ワークフローにおける並列分岐された複数の処理（図４の例では、処理Ａ−ｄ〜Ａ−ｇ）を並列処理することができる。
【００６０】
従って、ワークフローシステム１０は、様々なサブフローを組み合わせて１つのワークフローを構築することができる。すなわち、例えば図５に示すように、承認申請フロー（サブフロー）と作業依頼フロー（サブフロー）とをそれぞれ単独で処理するほか、１以上の承認申請フローと１以上の作業依頼フローとを任意の順番で組み合わせて、様々な業務処理Ａ〜Ｆ等を実施することができる。
【００６１】
次に、具体的に、図６Ａ〜図１７を参照して、承認申請フォーム及び作業依頼フォームの作成手順、プロセス情報の生成、並びに承認申請及び作業依頼の手順を説明する。
【００６２】
申請や依頼としては、製造メーカー等を例にしたとき、例えば新製品あるいは改良製品の設計の承認申請、承認が下りた後の作業依頼（例えば設計図面の作成依頼）並びに作業結果物の承認申請（例えば設計図面の承認申請）等が挙げられる。
【００６３】
そこで、以下の例では、説明を簡単にするために、代表的に２つの設計部門（第１設計課及び第２設計課）を想定して承認申請フォーム及び作業依頼フォームの作成手順を説明する。
【００６４】
図６Ａに示すように、第１設計課は、例えば課長Ａ、係長ａ、設計者ｂ、ｃ及びｄが所属し、第２設計課は、図６Ｂに示すように、例えば課長Ｂ、係長ｅ、設計者ｆ、ｇ及びｈが所属する。
【００６５】
そこで、製品設計の承認申請フォームは、第１設計課では、図７Ａに示すように、デフォルトとして、申請者が課長Ａ、承認結果を受ける者として課長Ａを想定している。同様に、第２設計課では、図７Ｂに示すように、デフォルトとして、申請者が課長Ｂ、承認結果を受ける者として、課長Ｂを想定している。
【００６６】
従って、これらの申請フォームにおいて、「製品設計の承認申請」、「製品名」、「申請日」、「申請者」、「承認者」、「承認結果を受ける者」、「承認期限」、「関係資料のアドレス」等の名称、並びに「課長Ａ」、「課長Ｂ」の氏名は、申請フォームとして必要な事項の属性情報である。
【００６７】
申請日、製品名、承認者、承認期限、関係資料のアドレスは、いずれも申請時に決定される。もちろん、承認結果を受ける者も申請時に決定してもよい。
【００６８】
次に、製品の設計図面の作成依頼フォームは、第１設計課では、図８Ａに示すように、デフォルトとして、依頼者が課長Ａ、作業者が係長ａ、設計者ｂ、ｃ及びｄで、作業完了の通知を受ける者として、課長Ａを想定している。同様に、第２設計課では、デフォルトとして、図８Ｂに示すように、依頼者が課長Ｂ、作業者が係長ｅ、設計者ｆ、ｇ及びｈで、作業完了の通知を受ける者として、課長Ｂを想定している。
【００６９】
従って、これらの依頼フォームにおいて、「設計図面の作成依頼」、「製品名」、「依頼日」、「依頼者」、「作業者」、「作業完了を受ける者」、「納期」、「関係資料のアドレス」等の名称、並びに「課長Ａ」、「係長ａ」、「係長ｅ」、「設計者ｂ」、「設計者ｃ」、「設計者ｄ」、「設計者ｆ」、「設計者ｇ」、「設計者ｈ」の氏名は、依頼フォームとして必要な事項の属性情報である。
【００７０】
依頼日、製品名、納期、関係資料のアドレスは、いずれも依頼時に決定される。もちろん、作業完了を受ける者も申請時に決定してもよい。
【００７１】
上記作成依頼フォームの形態として、図８Ａ及び図８Ｂでは、作業者の１つの入力欄に作業者の全員を設定したが、その他、作業者の入力欄に１人ずつ作業者を設定してもよい。この場合、作業者の人数分の作成依頼フォームが必要となる。
【００７２】
次に、第１設計課の設計図面の承認申請フォームは、図９Ａに示すように、デフォルトとして、申請者が係長ａ、承認結果を受ける者として、係長ａを想定している。その他の申請日、設計対象の製品名（プロジェクト名、製番等）、承認者、承認期限等は、申請者によって申請時に設定される。これは、第２設計課用の製品の設計申請の申請フォームも同様である（図９Ｂ参照）。
【００７３】
従って、これらの申請フォームにおいて、「設計図面の承認申請」、「製品名」、「申請日」、「申請者」、「承認者」、「承認結果を受ける者」、「承認期限」、「設計図面のアドレス」等の名称、並びに「係長ａ」、「係長ｅ」の氏名は、申請フォームとして必要な事項の属性情報である。
【００７４】
申請日、製品名、承認者、承認期限、設計図面のアドレスは、いずれも申請時に決定される。もちろん、承認結果を受ける者も申請時に決定してもよい。
【００７５】
これらの申請フォーム、依頼フォームは、オペレータがＷＥＢクライアント４０を通じてフォーム作成ツール３１を起動して、ＷＥＢクライアント４０の表示画面に表示されるフォーム作成画面に、上述したデフォルトとして必要な事項を入力することで作成される。
【００７６】
次に、フォーム作成ツール３１による申請フォーム、依頼フォームの作成について図１０を参照しながら説明する。
【００７７】
先ず、図１０のステップＳ１０１において、ＷＥＢクライアント４０は、ネットワーク５０を介してアプリケーションサーバ３０のフォーム作成ツール３１を起動して、フォーム作成画面の呼び出し要求をする。
【００７８】
次に、フォーム作成ツール３１は、ＷＥＢクライアント４０からの要求がフォーム作成画面の更新であるときは、ステップＳ１０２において、更新対象となるフォーム作成画面のフォーム定義情報をフォーム定義情報記憶部２１より取得する。そして、作成済みのフォーム定義情報に基づいたフォーム作成画面の画面情報を生成し、生成したフォーム作成画面の画面情報をＷＥＢクライアント４０に出力する。
【００７９】
一方、ＷＥＢクライアント４０からの要求がフォーム作成画面の新規作成であるときは、ステップＳ１０３において、新規作成用のフォーム作成画面の画面情報を生成し、生成したフォーム作成画面の画面情報をＷＥＢクライアント４０に出力する。
【００８０】
次に、ステップＳ１０４において、ＷＥＢクライアント４０は、受信した画面情報によって表示されたフォーム作成画面により、ネットワーク５０を介してフォーム作成ツール３１と通信しながら申請フォーム、依頼フォームの構成要素を設定する。すなわち、申請フォーム、依頼フォームの画面デザインを実行する。この画面デザインでは、上述したデフォルトとして必要な事項の属性情報と、その事項の配置情報を入力する。
【００８１】
次に、ステップＳ１０５において、フォーム作成ツール３１は、ＷＥＢクライアント４０によって設定された申請フォームの構成要素の属性情報及び配置情報に基づいて、申請フォーム、依頼フォームの確認画面の画面情報を生成し、ＷＥＢクライアント４０へ生成した申請フォーム、依頼フォームの確認画面の画面情報を出力する。
【００８２】
次に、ステップＳ１０６において、ＷＥＢクライアント４０は、受信した画面情報によって表示された申請フォーム、依頼フォームの確認画面の確認結果をフォーム作成ツール３１へ出力する。このとき、作成した申請フォーム、依頼フォームの表示イメージをＷＥＢクライアント４０の画面上に表示すると共に、申請フォーム、依頼フォームのファイル名又はリンク名を設定する。
【００８３】
次に、ステップＳ１０７において、フォーム作成ツール３１は、確認が完了した申請フォーム、依頼フォームの構成要素の属性情報及び配置情報を、フォーム定義情報として、フォーム定義情報記憶部２１に格納する。
【００８４】
次に、ステップＳ１０８において、フォーム作成ツール３１は、生成されたフォーム定義情報に対応付けられるフォーム入力内容記憶部２４をデータベースサーバ２０に生成する。
【００８５】
次に、ステップＳ１０９において、フォーム作成ツール３１は、ＷＥＢクライアント４０に対して、申請フォーム、依頼フォームの登録が完了したことを通知して、申請フォーム、依頼フォームの作成が終了する。
【００８６】
次に、図１１を参照して、１つの業務処理Ａのフロー処理の作成手順を説明する。図１１は、プロセス作成ツール３２による業務処理Ａのフロー処理の作成手順を示すフローチャートである。
【００８７】
先ず、ステップＳ２０１において、ＷＥＢクライアント４０は、ネットワーク５０を介してアプリケーションサーバ３０のプロセス作成ツール３２の起動要求をする。
【００８８】
ステップＳ２０２において、プロセス作成ツール３２は、フロー処理に使用される申請フォームあるいは依頼フォームの名称（ファイル名、リンク名等）の入力を促す入力画面を生成し、生成した入力画面の画面情報をＷＥＢクライアント４０へ出力する。
【００８９】
次に、ステップＳ２０３において、ＷＥＢクライアント４０は、受信した画面情報によって表示された入力画面により、フロー処理に使用されるフォームの名称（ファイル名、リンク名等）を入力する。
【００９０】
次に、ステップＳ２０４において、プロセス作成ツール３２は、入力画面を通じて入力されたファイル名に対応する申請フォームあるいは依頼フォームを読み出して、当該フォームに対応する画面を生成し、生成した画面の画面情報をＷＥＢクライアント４０へ出力する。
【００９１】
ＷＥＢクライアント４０は、受信した画面情報によって表示された申請フォーム画面あるいは依頼フォーム画面が正しければ、ステップＳ２０５において、終了処理設定画面の要求を行う。正しくなければ、ステップＳ２０１以降の処理を繰り返す。
【００９２】
次に、ステップＳ２０６において、プロセス作成ツール３２は、終了処理設定画面の要求に基づいて、終了処理設定画面を生成し、生成した画面の画面情報をＷＥＢクライアント４０へ出力する。ステップＳ２０７において、ＷＥＢクライアント４０は、終了処理設定画面を使用して、終了処理に必要な事項を入力する。
【００９３】
終了処理とは、例えば承認申請では、承認の場合に、申請者にその旨を通知すると共に、次のフロー処理があれば、該フロー処理を起動する旨の通知を行って終了し、否認の場合には、当事者にその旨を通知して終了する場合等が挙げられる。
【００９４】
例えば第１設計課における装置Ａの設計の承認申請フローであれば、承認の通知及び否認の通知は、申請者である課長Ａに通知され、特に、承認の場合には作業依頼フローが起動される。一方、例えば第１設計課における装置Ａの設計図面の承認申請フローであれば、承認の通知及び否認の通知は、申請者である係長ａに通知される。
【００９５】
この終了処理をＢＰＭＮで示すと、図１２に示すように、開始Ｓ３００からスタートし、承認者による承認処理Ｓ３０１の終了により、承認結果判断処理Ｓ３０２が実行され、判断結果が「承認」であれば、承認通知処理Ｓ３０３が実行される。承認通知処理Ｓ３０３は予め設定された当事者（申請者等）に対して承認された旨の通知を行う。その後、フロー処理起動判断処理Ｓ３０４が実行され、次のフロー処理（例えば依頼フロー等）があると判断された場合は（ステップＳ３０４：ＹＥＳ）、次のステップＳ３０５において、フロー処理を起動する旨の通知（フロー処理起動通知処理）が実行されて正常終了（Ｓ３０６）で終了する。上記フロー処理起動判断処理Ｓ３０４で次のフロー処理がないと判断された場合は（ステップＳ３０４：ＮＯ）、フロー処理起動通知処理Ｓ３０５を実施せずに正常終了（Ｓ３０６）で終了する。
【００９６】
上記承認結果判断処理Ｓ３０２での判断結果が「否認」であれば、否認通知処理Ｓ３０７が実行されて、異常終了（Ｓ３０８）で終了する。否認通知処理Ｓ３０７は予め設定された当事者（申請者等）に対して否認された旨の通知を行う。
【００９７】
一方、作業依頼フローは、例えば２つの終了処理（第１終了処理及び第２終了処理）が挙げられる。
【００９８】
第１終了処理は、同時に進行している作業が納期までに全て完了した場合に、依頼者及び作業者にその旨を通知すると共に、次のフロー処理があれば、該フロー処理を起動する旨の通知を行って終了する。納期が経過した時点で、同時に進行している作業が全て完了していない場合は、依頼者及び作業者にその旨を通知して終了する。
【００９９】
例えば第１設計課に対する装置Ａの設計図面作成の作業依頼フローであれば、作業完了の通知及び作業未完の通知は、依頼者である課長Ａに通知され、特に、作業完了の場合には設計図面の承認申請フローが起動される。
【０１００】
この第１終了処理をＢＰＭＮで示すと、図１３に示すように、開始Ｓ４００からスタートし、複数人の作業者による作業処理Ｓ４０１が開始され、その後、納期判断処理Ｓ４０２が実行される。判断結果が「納期が経過していない」であれば、作業処理Ｓ４０１が続けられ、判断結果が「納期が経過した」であれば、作業完了判断処理Ｓ４０３が実行される。判断結果が「完了」であれば、作業完了通知処理Ｓ４０４が実行される。この作業完了通知処理Ｓ４０４は予め設定された当事者（依頼者等）に対して作業が完了した旨の通知を行う。その後、フロー処理起動判断処理Ｓ４０５が実行され、次のフロー処理（例えば申請フロー等）があると判断された場合は、次のフロー処理を起動する旨の通知（フロー処理起動通知処理Ｓ４０６）が実行されて正常終了（Ｓ４０７）で終了する。このフロー処理起動通知処理Ｓ４０６では、設計図面のアドレス等も通知される。
【０１０１】
上述した作業完了判断処理Ｓ４０３での判断結果が「未完」であれば、作業未完通知処理Ｓ４０８が実行される。この作業未完通知処理Ｓ４０８はでは、予め設定された当事者（依頼者等）に対して作業が未完である旨の通知を行い、異常終了（Ｓ４０９）で終了する。
【０１０２】
一方、第２終了処理は、並行して進行している作業が全て完了した場合に、納期までに完了したか否かを、依頼者及び作業者に通知すると共に、次のフロー処理があれば、該フロー処理を起動する旨の通知を行って終了する。
【０１０３】
例えば第１設計課に対する装置Ａの設計図面作成の作業依頼フローであれば、納期までに完了又は納期を超過して完了の通知は、依頼者である課長Ａに通知され、特に、納期までに完了の場合には設計図面の承認申請フローが起動される。
【０１０４】
この第２終了処理をＢＰＭＮで示すと、図１４に示すように、開始Ｓ５００からスタートし、複数人の作業者による作業処理Ｓ５０１が開始され、その後、作業完了判断処理Ｓ５０２が実行される。判断結果が「作業が未完」であれば、作業処理が続けられ、判断結果が「作業が完了」であれば、納期判断処理Ｓ５０３が実行される。判断結果が「納期が経過していない」であれば、作業完了通知処理Ｓ５０４が実行される。この作業完了通知処理Ｓ５０４は予め設定された当事者（依頼者等）に対して作業が完了した旨の通知を行う。その後、フロー処理起動判断処理Ｓ５０５が実行され、次のフロー処理（例えば申請フロー等）があると判断された場合は、次のフロー処理を起動する旨の通知（フロー処理起動通知処理Ｓ５０６）が実行されて正常終了Ｓ５０７で終了する。このフロー処理起動通知処理Ｓ５０６では、設計図面のアドレス等も通知される。
【０１０５】
一方、納期判断処理Ｓ５０３での判断結果が「すでに納期が経過」であれば、納期超過通知処理Ｓ５０８が実行される。この納期超過通知処理Ｓ５０８は予め設定された当事者（依頼者等）に対して納期超過で作業が完成した旨の通知を行い、異常終了Ｓ５０９で終了する。
【０１０６】
従って、図１１に示す終了処理の設定（Ｓ２０５）において、ＷＥＢクライアント４０は、承認申請では、承認の場合に通知すべき当事者の氏名等を入力し、次のフロー処理があれば、そのフロー処理の名称、シンボルあるいはアドレス等を入力する。また、否認の場合に通知すべき当事者の氏名等を入力する。
【０１０７】
作業依頼では、作業の完了又は未完（納期内での完了又は納期を超過）を通知する依頼者及び作業者の氏名等を入力し、次のフロー処理があれば、そのフロー処理の名称、シンボル、アドレス等のいずれかを入力する。
【０１０８】
次に、図１１のステップＳ２０８において、プロセス作成ツール３２は、ＷＥＢクライアント４０によって設定された内容の確認をするための最終確認画面の画面情報を生成し、生成した最終確認画面の画面情報をＷＥＢクライアント４０へ出力する。
【０１０９】
次に、ステップＳ２０９において、ＷＥＢクライアント４０は、受信した画面情報によって表示された確認画面により確認結果をプロセス作成ツール３２へ出力する。確認結果としては、例えば全ての必要事項が入力されて問題なければ、例えば完了ボタンを操作し、全ての必要事項が入力されていなければ、例えば戻るボタンを操作する等である。
【０１１０】
完了ボタンの操作に基づき、ステップＳ２１０において、プロセス作成ツール３２は、申請フロー、依頼申請フロー、依頼フローのフロー定義ひな形情報を、フロー定義ひな形記憶部２３から読み出し、申請フロー、依頼フローのワークフロー定義情報を生成して、ワークフロー定義情報記憶部２２に格納する。
【０１１１】
次に、ステップＳ２１１において、プロセス作成ツール３２は、ＷＥＢクライアント４０に対して、申請フロー、依頼フローのワークフロー定義情報の登録が完了したことを通知して、申請フロー、依頼フローに関するワークフロー定義情報の作成は終了する。
【０１１２】
次に、ワークフロー（申請フロー、依頼フロー）の起票からワークフローの開始までの作業手順を図１５及び図１６を参照しながら説明する。
【０１１３】
この作業は、申請者、依頼者が行う。承認申請フローのうち、例えば第１設計課における装置Ａの設計の承認申請フローであれば、課長Ａが申請者として作業を行う。この承認者としては、例えば課長Ａの上長である部長等が設定される。
【０１１４】
同様に、例えば第１設計課に対する装置Ａの設計図面作成に関する作業依頼フローであれば、課長Ａが依頼者として作業を行う。
【０１１５】
承認申請フローのうち、例えば第１設計課で作成された設計図面の承認申請フローであれば、係長ａが申請者として作業を行う。この承認者としては例えば係長ａの上長である課長Ａが設定される。
【０１１６】
そして、ワークフローの起票申請は、先ず、図１５のステップＳ６０１において、ＷＥＢクライアント４０は、表示されている選択画面により、起票するワークフローを選択し、選択した情報を、ネットワーク５０を介してアプリケーションサーバ３０のワークフロー画面制御モジュール３４へ出力する。
【０１１７】
次に、ステップＳ６０２において、ワークフロー画面制御モジュール３４は、受信した起票するワークフローのワークフロー定義情報を、ワークフロー定義情報記憶部２２から取得し、取得したワークフロー定義情報を画面生成モジュール３３へ提供する（Ｓ６０３）。
【０１１８】
次に、ステップＳ６０４において、画面生成モジュール３３は、起票するワークフローのフォーム定義情報をフォーム定義情報記憶部２１から取得し、取得したフォーム定義情報に基づいて、申請フォーム、依頼フォームの画面を生成するのに必要な情報に変換する。また、ステップＳ６０５において、申請フォーム、依頼フォームの入力内容を全て保管するための入力情報記憶領域を一時的に確保し、フォーム定義情報に基づいて、申請フォーム、依頼フォームの画面情報を生成し、ワークフロー画面制御モジュール３４を介してＷＥＢクライアント４０に出力する（Ｓ６０６）。
【０１１９】
次に、ステップＳ６０７において、ＷＥＢクライアント４０は、画面に表示された申請フォーム、依頼フォームにより、項目入力情報を入力する。例えば承認申請であれば、承認を受ける申請内容を示すタイトル（例えば「装置Ａの設計申請」、「装置Ａの設計図面の承認申請」等）、承認者の氏名、承認期限、コメント等を入力する。作業依頼であれば、依頼対象の作業内容を示すタイトル（例えば「装置Ａの設計図面作成」等）、納期、コメント等を入力する。
【０１２０】
次に、ステップＳ６０８において、ワークフロー画面制御モジュール３４は、申請フォーム、依頼フォームにより入力された項目入力情報を入力情報記憶領域に格納し、項目入力情報の論理チェックを画面生成モジュール３３に依頼する。
【０１２１】
次に、ステップＳ６０９において、画面生成モジュール３３は、フォーム定義情報に基づいて、入力情報記憶領域に確報されている項目入力情報の論理チェックを行い、申請内容の確認を行わせるための確認画面の画面情報を生成し、ワークフロー画面制御モジュール３４を介してＷＥＢクライアント４０に出力する。
【０１２２】
次に、ステップＳ６１０において、ＷＥＢクライアント４０は、確認画面により、申請内容（項目入力情報）の確認を行う。
【０１２３】
次に、ステップＳ６１１において、ワークフロー画面制御モジュール３４は、項目入力情報のフォーム入力内容記憶部２４への格納を画面生成モジュール３３に依頼する。
【０１２４】
次に、ステップＳ６１２において、画面生成モジュール３３は、項目入力情報をフォーム入力内容記憶部２４に格納し、ステップＳ６１３において、申請フロー、依頼フローに必要なプロセス情報をプロセスインスタンス記憶部２５に格納し、ステップＳ６１４において、ワークフローエンジン２６に、申請フロー、依頼フローの開始を通知する。
【０１２５】
次に、ステップＳ６１５において、ワークフローエンジン２６は、承認申請フロー、作業依頼フローを開始し、開始したことをワークフロー画面制御モジュール３４に通知する。
【０１２６】
次に、ステップＳ６１６において、ワークフロー画面制御モジュール３４は、承認申請フロー、作業依頼フローの申請が完了したことをＷＥＢクライアント４０に通知する。この段階で、承認申請フロー、作業依頼フローのワークフローの申請は終了する。
【０１２７】
次に、図１７を参照して、申請した設計承認申請や設計図面承認申請の承認作業手順を説明する。図１７は、承認作業手順を示すフローチャートである。
【０１２８】
図１７に示すように、先ず、ステップＳ７０１において、ＷＥＢクライアント４０は、承認待ちの一覧を表示する承認待ち一覧画面の表示要求をワークフロー画面制御モジュール３４へ出力する。
【０１２９】
次に、ステップＳ７０２において、ワークフロー画面制御モジュール３４は、承認待ちのプロセス情報をプロセスインスタンス記憶部２５から取得し、承認待ち一覧画面の画面情報をＷＥＢクライアント４０に出力する。
【０１３０】
次に、ステップＳ７０３において、ＷＥＢクライアント４０は、承認待ち一覧画面により、承認する申請を選択する。
【０１３１】
次に、ステップＳ７０４において、ワークフロー画面制御モジュール３４は、選択された申請のプロセス情報をプロセスインスタンス記憶部２５から取得し、画面生成モジュール３３に提供する。
【０１３２】
次に、ステップＳ７０５において、画面生成モジュール３３は提供されたプロセス情報に基づいて、項目入力情報をフォーム入力内容記憶部２４より取得し、申請内容確認画面の画面表示情報を生成し、ワークフロー画面制御モジュール３４を介して、ＷＥＢクライアント４０に出力する。
【０１３３】
次に、ステップＳ７０６において、ＷＥＢクライアント４０は、表示された申請内容確認画面により、承認の選択を行う。
【０１３４】
次に、ステップＳ７０７において、ワークフロー画面制御モジュール３４は、ＷＥＢクライアント４０により選択された結果を、ワークフローエンジン２６に通知する。
【０１３５】
次に、ステップＳ７０８において、ワークフローエンジン２６は、選択された結果に基づいて、承認申請のワークフローを進め、承認処理を実行したことをワークフロー画面制御モジュール３４に通知する。
【０１３６】
次に、ステップＳ７０９において、ワークフロー画面制御モジュール３４は、承認申請の承認作業が完了したことをＷＥＢクライアント４０に通知して、承認申請の承認作業は終了する。
【０１３７】
このように、本実施の形態に係るワークフローシステム１０は、サーバ２０、３０とＷＥＢクライアント４０とから構成され、作業フローと承認申請フローとを任意に組み合わせて設定された業務を、ネットワーク５０を介して遂行するワークフローシステムである。
【０１３８】
そして、ワークフローシステム１０は、ワークフローを制御するための情報を定義したワークフロー定義情報を記憶するワークフロー定義情報記憶部２２と、ワークフローで用いられる複数のフォームを定義したフォーム定義情報を記憶するフォーム定義情報記憶部２１と、ワークフローの実行により生成されるプロセス情報を記憶するプロセスインスタンス記憶部２５と、ワークフロー定義情報及びプロセス情報に基づいて、ワークフローを実行するワークフローエンジン２６と、を備える。
【０１３９】
ワークフローシステム１０は、ＷＥＢクライアント４０によって設定された画面の構成要素と属性に応じて、フォーム定義情報に基づいて生成したフォーム情報をフォーム定義情報記憶部２１に格納し、ワークフローエンジン２６は、ワークフローで行われる作業状況を管理可能であり、１つのワークフローに並行して設定できる作業フローの並行数をＷＥＢクライアント４０が任意に設定することができる。
【０１４０】
これにより、複数人の作業者（設計者等）が同時に作業を進める作業フローの並行数をクライアントが任意に設定することができるため、処理フローの適用範囲を様々な業務に拡大させることができ、業務推進の向上に寄与する。
【０１４１】
作業フローと承認申請フローとは、予め設定されたサブフローを任意の順番で組み合わせることにより設定される。
【０１４２】
これにより、承認申請フローと、複数人の作業者（設計者等）が同時に作業を進める作業フローとを任意の順番で組み合わせることで、例えば製品設計で実施される様々な承認や作業に沿ってワークフローを構築することができる。
【０１４３】
また、本実施の形態に係るワークフローシステム１０は、ワークフロー定義情報として、複数のワークフローのうち、少なくとも１つのワークフローの終了処理に、他のワークフローの起動処理が含まれている。
【０１４４】
従来は、休暇申請等のような承認申請を単独で行う手法、承認申請を直列に接続する手法、ＸＯＲ分岐によって複数の承認申請から１つの承認申請を選択する手法が主体であり、複数人の作業者（設計者等）が同時に作業を進める処理フロー（作業フロー）までは想定していなかった。
【０１４５】
本実施の形態では、承認申請フローに、複数人の作業者（設計者等）が同時に作業を進める作業フローを任意に組み合わせることで、処理フローの適用範囲を様々な業務に拡大させることができ、業務推進の向上に寄与する。
【０１４６】
本実施の形態において、複数のワークフローは、少なくとも１つの承認申請フローと、複数の作業が並行して実施される少なくとも１つの作業フローとを含む。
【０１４７】
例えばある製品の設計を実施するための承認申請を行い、承認が下りた段階で、複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施することができ、例えば設計承認から設計図面の作成依頼までの処理を１つのワークフローにて実行することが可能となる。
【０１４８】
本実施の形態において、少なくとも１つの作業フローと少なくとも１つの承認申請フローとが、任意の順番で組み合わされている。
【０１４９】
例えば複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施した後に、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【０１５０】
本実施の形態において、ワークフロー定義情報は、承認申請フローの終了処理に、作業フローの起動処理が含まれている。
【０１５１】
これにより、承認申請フローの終了後に、作業フローを実施することができ、上述した例えば設計承認から設計図面の作成依頼までの処理を１つのワークフローにて実行することが可能となる。
【０１５２】
本実施の形態において、ワークフロー定義情報は、作業フローの終了処理に、承認申請フローの起動処理が含まれている。これにより、作業フローの終了後に、承認申請フローを実施することができ、上述した例えば複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を実施した後に、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【０１５３】
本実施の形態において、ワークフロー定義情報は、第１の承認申請フローの終了処理に、作業フローの起動処理が含まれ、作業フローの終了処理に、第２の承認申請フローの起動処理が含まれている。
【０１５４】
これにより、例えばある製品の設計を実施するための承認申請を行い、承認が下りた段階で、複数の作業者（設計者等）に対して作業依頼（例えば設計図面の作成依頼等）を行い、さらに、完成した設計図面の検証や承認のための申請までの処理を１つのワークフローにて実行することが可能となる。
【０１５５】
本実施の形態において、作業フローは、納期が設定され、納期が経過した段階で、終了処理が実施される。
【０１５６】
納期が経過した段階で、作業が完了していれば、正常終了として、例えば作業の結果物に対する承認申請を実施し、作業が未完であれば、異常終了として、その後の承認申請等を実施しない等の処理を１つのワークフローにて実行することが可能となる。
【０１５７】
本実施の形態において、作業フローは、それぞれ並行して実施される複数の作業が終了した段階で、終了処理が実施される。
【０１５８】
作業が完了した時点が納期内であれば、正常終了として、例えば作業の結果物に対する承認申請を実施し、作業が完了した時点で納期を過ぎていれば、異常終了として、その後の承認申請等を実施しない等の処理を１つのワークフローにて実行することが可能となる。
【０１５９】
なお、この発明は、上述した実施の形態に限定されるものではなく、この発明の主旨を逸脱しない範囲で自由に変更できることは勿論である。
【符号の説明】
【０１６０】
１０…ワークフローシステム              ２０…データベースサーバ
２１…フォーム定義情報記憶部            ２２…ワークフロー定義情報記憶部
２３…フロー定義ひな形記憶部            ２４…フォーム入力内容記憶部
２５…プロセスインスタンス記憶部        ２６…ワークフローエンジン
３０…アプリケーションサーバ            ３１…フォーム作成ツール
３２…プロセス作成ツール                ３３…画面生成モジュール
３４…ワークフロー画面制御モジュール
【図１】
2019175342.tif 000003
【図２】
2019175342.tif 000004
【図３】
2019175342.tif 000005
【図４】
2019175342.tif 000006
【図５】
2019175342.tif 000007
【図６】
2019175342.tif 000008
【図７】
2019175342.tif 000009
【図８】
2019175342.tif 000010
【図９】
2019175342.tif 000011
【図１０】
2019175342.tif 000012
【図１１】
2019175342.tif 000013
【図１２】
2019175342.tif 000014
【図１３】
2019175342.tif 000015
【図１４】
2019175342.tif 000016
【図１５】
2019175342.tif 000017
【図１６】
2019175342.tif 000018
【図１７】
2019175342.tif 000019