JP2006099728A - 共同アプリケーションにおけるワークフローの関連付け - Google Patents

共同アプリケーションにおけるワークフローの関連付け Download PDF

Info

Publication number
JP2006099728A
JP2006099728A JP2005188274A JP2005188274A JP2006099728A JP 2006099728 A JP2006099728 A JP 2006099728A JP 2005188274 A JP2005188274 A JP 2005188274A JP 2005188274 A JP2005188274 A JP 2005188274A JP 2006099728 A JP2006099728 A JP 2006099728A
Authority
JP
Japan
Prior art keywords
workflow
computer
schedule
implemented method
participant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005188274A
Other languages
English (en)
Inventor
George E Hatoun
イー.ヘイトン ジョージ
Imran Aziz
アジィズ イムラン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2006099728A publication Critical patent/JP2006099728A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063114Status monitoring or status determination for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 ワークフローを開発および管理する方法を開示する。
【解決手段】 この方法は、ワークフローテンプレートおよび/または事前にプログラムされたコンポーネントからワークフローを開発できるようにし、ワークフローをスケジュールに関連付け、ワークフローを複数のタスクおよび複数の人間対人間または人間対コンピュータの対話ポイントとしてモデル化し、ワークフローの内部状態を永続的に記憶する。この方法は、ワークフローの開発、パッケージング、インストール、展開、有効化、関連付け、インスタンス化、および終了を制御するための、コンピュータによって実施されるフォームを採用する。
【選択図】 図2

Description

本発明はコンピュータソフトウェアに関し、より詳細にはワークフローの再利用に関する。
プロジェクトタスクの実行を管理する必要性は、人々が協力して作業する限り存在する。簡単だが典型的なタスク管理プロセスが、図1に示されている。ブロック100から132によって表される行為は、準備のステップとみなすことができ、ブロック136から144によって表される行為は、プロジェクトの進行中の管理におけるステップとみなすことができる。まずは100において、プロジェクト用の1つの目標または目標のセットが定義される。次に104において、目標を達成する完了日が設定される。次いで108において、完了日までに目標を達成するために実行しなければならないタスクのリストが作成される。また112では、タスクを実行できる参加者のリストが作成される。参加可能な参加者を前提として各タスクにどれぐらい時間がかかるかの見積もりを116において作成することが好ましい。タスク間の依存関係、すなわち1つまたは複数のどのタスクが完了してからでないと別のタスクを開始できないかを120において作成することも好ましい。124において、参加者がタスクの実行に参加できる時間帯を指摘することもできる。128では、前のステップからの情報を使用して、プロジェクト用のタスクのスケジュールが作成される。132では、タスクが必ず正しく時間どおりに完了するように、タスクのスケジュール内にマイルストーンすなわちチェックポイントが設置される。ブロック136では、プロジェクト自体の作業が開始し、タスクが実行され、経過が追跡される。140では、マイルストーンごとに設定された時間になると、関連するタスクおよびプロジェクト全体のステータスが評価される。144において、すべてのタスクが完了し、すべてのマイルストーンが満たされると、プロジェクトの目標は達成される。
図1に示されている前述の直線的なタスク管理プロセスは、プロセスのステップが再編成、結合、または削除される場合や、新しいステップが挿入される場合、何人かの参加者が他のタスクによって中断を強いられる場合、プロジェクト上の作業が進む間にプロジェクトの要件および目標が変わる場合、ならびにプロセスを調節しなければならない場合のような複雑な要素を無視している。タスク管理をさらにいっそう混乱させていることに、コンピューティングデバイスおよびコンピュータソフトウェアが組織にとって幅広く利用可能になるまで、タスクの計画、管理、および経過の追跡は、情報のリスト、チャート、図、および他の視覚表示を手動で作成および更新することによって行われていた。このような管理のツールは、手書きまたはタイプされることが多く、容易には修正できない。コンピュータに基づく意思伝達、すなわち電子メールが利用可能になるまで、タスクの実行を担当する参加者への連絡は、経過の追跡が困難で信頼性を欠くことが多い口頭でのやり取りや、時間のかかる手書きのメモの形態を取っていた。
タスク管理の歴史における発展の次なる段階は、コンピューティングデバイスおよびコンピュータソフトウェアによって可能となった。計画、リスト化、作図、チャート化、および通信に伴う雑務の多くは、コンピュータソフトウェアツールを力任せに適用することによってスピードアップされ、容易になった。しかしこれらの雑務は、依然として雑務や参加者の間での連携をほとんど行わずに実行されていた。これらの雑務の連携を図る試みの大半は、コンピュータプログラミングを少なからず伴い、高度なトレーニングを受けたコンピュータプログラマの時間、労力、およびコストを必要とするものであった。コンピュータソフトウェアツールを使用して、ビジネスプロセスの少なくともいくつかの部分を自動化することによって、ビジネスプロセス全体を通じた作業の流れについて考えることが容易になった。したがってコンピュータソフトウェアツールの開発は、所与のビジネスプロセスから、ビジネスプロセス全体を流れる「ワークフロー」へと焦点を移してきた。
ワークフローはビジネスプロセスではないことに留意されたい。ワークフローとは、ビジネスプロセス全体を通じて作業がどのように流れるかを抽象化したものである。たとえば、ドキュメントを承認するためのあるビジネスプロセスを仮定すると、ワークフローは、承認プロセスの各参加者が特定のドキュメントを受け取り、承認するのに伴い、承認プロセス全体を通じてそのドキュメントの経過を追跡するように作成することができる。この「ワークフロー」という抽象的な概念は、コンピュータプログラムにおいてモデル化され、ビジネスプロセス全体を通じたワークフローをサポートするためのコンピュータソフトウェアが、「ワークフロー」として知られるようになった。以降では、「ワークフロー」という用語は、このようなソフトウェアモデル、すなわちビジネスプロセス全体を通じて作業がどのように流れるかをサポートするソフトウェアプログラムを指すものとする。
ワークフローによって、個人および/または部署の間における作業の流れを定義し、経過を追跡することができる。たしかにワークフローはタスク管理に伴う多くの雑務を自動化することができるが、ワークフローの圧倒的な価値は、ワークフローによってタスク管理につきものの多くの雑務の間に提供される連携の中に存在する。より実務的には、ワークフローはビジネスタスクの自動化を補助し、適時適切な情報を適切な当事者へ電子的に回送する。参加者には、作業の保留が自動的に通知される。マネージャは、システムを介して迅速に承認を回送することができる。ワークフローは、決定および行為の依存関係および順序を含むプロジェクト内の作業の流れのグラフィカルな表示を提供することもできる。
ワークフローがタスク管理を著しく改善することに疑いの余地はない。しかしワークフローの開発は、高度なトレーニングを受けたコンピュータプログラマの高価な労働力を必要とし、ワークフローの展開は、相当な労力およびコストを必要とする。ワークフローは相互に類似していることが多いにもかかわらず、従来技術によるワークフローの開発および展開ツールのために、1つのプロジェクト用に開発されたワークフローを別のプロジェクトに適用することが困難または不可能となっている。必要とされているのは、1つのワークフローを複数のプロジェクト用に再利用することによって、1つのワークフローの開発に要した労力およびコストを多くのワークフローで償却する方法である。本発明は、1つのプロジェクト用に開発されたワークフローの構造およびメタデータを他のプロジェクトに関連付けるための方法および装置を提供することによって、ワークフローを再利用することを対象としている。
本発明の態様によれば、ワークフローテンプレートを使用してワークフローを作成するための、コンピュータ可読メディアを含む方法および装置が提供される。ワークフローテンプレートを使用することによって、この方法および装置は、1つのプロジェクト用に開発されたワークフローの構造およびメタデータを他のプロジェクトに関連付けることができる。ワークフローは、値をパラメータに割り当てること、新しいパラメータを挿入すること、既存のパラメータを無効にすること、既存の機能を有効にすること、既存の機能を無効にすること、および/またはコンピュータによって実施されるフォームを挿入することによって、スケジュールに関連付けられる。スケジュールへのワークフローの関連付けは、コンピュータによって実施されるフォームを表示するグラフィカルユーザインターフェースを介して制御される。
本発明の一態様によれば、ワークフローテンプレートを使用してワークフローが開発される。このテンプレートによって、事前にプログラムされたワークフローコンポーネントを挿入および/または削除することができ、ワークフローコンポーネント内のパラメータに値を割り当てることができ、新しいパラメータをワークフローコンポーネントに挿入することができ、ワークフローコンポーネント内に既に存在するパラメータを無効にできることが好ましい。開発されたワークフローは、好ましくはパラメータに値を割り当てること、新しいパラメータを挿入すること、および/または既存のパラメータを無効にすること、ならびにワークフローおよび関連データを永続的なストアに保存することによって、インストール用にパッケージされる。ワークフローは、インストール、展開、および/または有効にできることが好ましい。ワークフローは、インスタンス化および/または終了することができる。
本発明のさらに別の態様によれば、インスタンス化され、黙認(acquiescence)の状態に達したワークフローは無効にすることができ、ワークフローの内部状態について記述するパラメータ値は任意の長さの時間にわたって永続的に保存することができ、この永続的に保存されたパラメータ値を使用してワークフローを復元し、再び有効にすることができる。
本発明の他の態様によれば、ワークフローテンプレートを開発し、ワークフローテンプレートおよび/または事前にプログラムされたワークフローコンポーネントを使用することによって、既存のワークフローの構造およびメタデータが再利用される。ワークフローは、複数の人間対人間および/または人間対コンピュータの対話ポイントとしてモデル化される。対話ポイントは、任意の順序で存在することができる。ワークフローは、複数のタスクから構成することができる。1つのタスクは、入力データの有無を問わず、単一のユーザによって完了することができる。複数のタスクは、入力データの有無を問わず、単一のマネージャによって完了することができる。タスクは、1人または複数のユーザに割り当てること、1人または複数のユーザに委任すること、および/または1人または複数のユーザに転送することができる。ワークフロー内のタスクは、サードパーティによって開発された、コンピュータによって実施されるフォームを使用して定義することができる。ワークフローを開発すること、ワークフローをパッケージすること、ワークフローをインストールすること、ワークフローを展開すること、ワークフローを有効にすること、ワークフローをスケジュールに関連付けること、ワークフローをインスタンス化すること、およびワークフローを終了することは、コンピュータによって実施されるフォームを表示するグラフィカルユーザインターフェースを介して制御される。
前述の説明から容易に理解できるように、本発明は、1つのプロジェクト用に開発されたワークフローの構造およびメタデータを他のプロジェクトに関連付けることによって、既存のワークフローの構造およびメタデータを再利用するための方法および装置を提供する。
本発明の前述の態様および付随する利点の多くは、以降の詳細な説明を添付の図面と併せて参照することによってよりよく理解するほど、より容易にその真価を認識できるであろう。
本発明の実施形態は、1つのプロジェクト用に開発されたワークフローの構造およびメタデータを他のプロジェクトに関連付け、ワークフローおよびワークフローテンプレートを開発して使用するための、コンピュータ可読メディアを含む、コンピュータによって実施される方法および装置(ツール)を提供する。ワークフローは、直接またはワークフローテンプレートを使用して作成することができる。説明の最初の部分は、ワークフローの定義と、ワークフローがどのようにして直接作成されるかの説明を対象としている。ワークフローテンプレートと、ワークフローテンプレートを使用したワークフローの作成については、その後で説明する。
ワークフローは、(a)ビジネスプロセスの手続き的なステップ、(b)ビジネスプロセスの各ステップに関与する人物、(c)ビジネスプロセスの各ステップで要求される入力情報および出力情報、ならびに(d)ビジネスプロセスの各ステップで必要とされるツールなど、ビジネスプロセスに関する情報を含む。当業者なら容易に理解することだが、ワークフローは、こうした典型的なタイプの情報に加えて他のタイプの情報を含むこともできる。
本発明の典型的な一実施形態では、ワークフローが基づくモデルは、人間のワークフロー、すなわち通常はワークフローライフサイクルにおける人間の対話ポイントに関連付けられているイベントおよびアイテムを忠実にモデル化したものである。このようなワークフローのモデル化によって、人間/ワークフローの対話中における予測困難なイベント、たとえば休暇、疾病、プロセス内のステップを失念することなどが提示される。考察を容易にするために、ワークフローと対話する人間をワークフローに関するその役割によって次のように呼ぶ。(a)ワークフローを作成して制御する人を所有者、(b)ワークフローおよび/またはワークフローコンポーネントの全体または一部を設計して実装する人を開発者、(c)ワークフローによって制御される1つまたは複数の行為に参加する人を参加者と呼ぶ。行為は、検討、修正、および承認を含むが、これらには限定されない。「役割」が重複可能なことは明白である。たとえば所有者は、開発者および/または参加者を兼ねる場合もある。ワークフローからの入力に応答するエンティティが「行為者」である。行為者は、参加者である場合もあり、コンピューティングデバイスである場合もある。人間の行為者は、グラフィカルユーザインターフェースフォーム(GUIフォーム)を使用して、本発明の実施形態と対話することが好ましい。GUIフォームは、アプリケーション、ウェブページ、または同様のグラフィカルユーザインターフェースコンポーネント内のウィンドウとすることができ、これによって人間の行為者は、ビューに入り、選択を行い、および/または情報を入力することができる。
たとえば本発明の典型的な実施形態、すなわちワークフローを開発して使用するための方法および装置は、Microsoft(登録商標)SharePoint(商標)Portal Server(SharePoint)などのコラボレーティブなコンピュータアプリケーション内でサポートすることができるが、これには限定されない。SharePointは、さまざまなネットワーク化されたコンピューティングデバイスおよびネットワーク化されたコンピューティングシステムからの情報を1つのソフトウェアエンティティに統合して、便利なポータル展開および管理を提供する拡張可能なポータルサーバである。ポータルはウェブサイトなどのサイトであり、インターネットなどのネットワークへのゲートウェイとして機能することを当業者なら理解するであろう。ウェブサイトポータルは、リンク、コンテンツ、およびサービスの集合体であり、ニュース、天気、娯楽、商用サイト、チャットルームなど、ユーザが興味を抱きそうな情報へユーザを導くように設計されている。Yahoo!、Excite、MSN.com、およびNetscape NetCenterは、ポータルの例である。SharePointによって提供されるサービスを総称して、Windows(登録商標)SharePoint(商標)Services(WSS)と呼ぶ。WSSと対話するために使用されるGUIフォームをWSSフォームと呼ぶ。
本発明の典型的な実施形態は、SharePointサービスとして動作する。SharePointサービスは、コラボレーションおよび情報共有を提供し、また他のソフトウェアアプリケーションとの統合を提供することもできる。図2は、本発明の典型的な実施形態をサポートするSharePointの主要なコンポーネントと、そうした主要なコンポーネントの間の関係を示すブロック図である。示されている主要なコンポーネントは、アプリケーション156、Windows(登録商標)SharePoint Services Workflow Object Model(WSS Workflow OM)158、およびWindows(登録商標)Workflow Services内のワークフローエンジンなどのワークフローエンジン170を含む。「オブジェクトモデル」は、アプリケーションプログラミングインターフェース(API)と、APIによって使用されるデータ構造、すなわちAPIに書き込まれた関数に渡され、その関数から戻されるデータ構造とを含む。WSS Workflow OM158は、Windows(登録商標)SharePoint Services Workflow APIと、Windows(登録商標)SharePoint Services Workflow APIによって使用されるデータ構造を含む。アプリケーション156は、ワークフロー対応型またはワークフロー非対応型とすることができる。ワークフロー対応型アプリケーション150は、ワークフローに特有の機能を含むアプリケーションである。ワークフロー非対応型アプリケーション154は、サービスとしてのワークフローとの対話はできるが、ワークフローに特有の機能は含まないアプリケーションである。
WSS WORKFLOW OM158は、ワークフロー状況情報162をワークフローエンジン170へ渡す際に経由するインターフェースである。ワークフローエンジン170はワークフローを実行し、スケジューリング、意思伝達、データの永続性、役割の定義、およびタスクの経過の追跡に関するサポートをワークフローに提供する。ワークフローは、命令166を作成させることができる。ワークフローエンジン170は、WSS WORKFLOW OM158を介してアプリケーションにワークフロー命令166を渡す。アプリケーション156は、WSS WORKFLOW OM158と対話して、SharePointサービスにアクセスすることに留意されたい。ワークフローは、SharePointサービスであるため、WSS WORKFLOW OM158を介してアクセスされる。したがってアプリケーション156は、WSS WORKFLOW OM158を介してワークフローにアクセスすることができる。またワークフローは、WSS WORKFLOW OM158とは直接対話しないことにも留意されたい。ワークフローエンジン170が、WSS WORKFLOW OM158と対話して、WSS WORKFLOW OM158へのインターフェースをワークフローに提供する。
ワークフローはワークフローエンジンと対話し、ワークフローエンジンはWSS WORKFLOW OM158と対話する。たとえば参加者は、ワークフローの状況を変更することを意図するアクションをアプリケーション156内で実行することができる。アプリケーション156は、WSS WORKFLOW OM158にメッセージを渡す。このメッセージは、ワークフローを識別し、ワークフローの状況の変更を指定する情報を含む。WSS WORKFLOW OM158は、アプリケーションからのメッセージをワークフロー状況情報162に変換し、そのワークフロー状況情報162をワークフローエンジン170に渡す。ワークフローエンジン170は、ワークフローエンジン170が実行されているワークフローの中から意図するワークフローを選択し、アプリケーション156からのメッセージ内で指定されているワークフローにワークフロー状況情報162を渡す。
ワークフローエンジン170は、ワークフロースケジュールに沿ってワークフローを進めることによって、ワークフローを実行する。ワークフロースケジュールは、タスク、ワークフロー論理、およびさまざまなメタデータを含むデータ構造である。本発明の典型的な一実施形態では、Windows(登録商標)Workflow Services内で実行するのに適しており、かつWSSワークフローに関連付けられているWSSワークフロースケジュールは、ワークフローのタスクおよび論理を含むXML構造である。このようなWSSワークフロースケジュールは、ウェブサイトなどの適切なサイトにインストールされたワークフローパッケージ内にXMLファイルとして保存することができる。
ワークフロースケジュールに沿って進行する間、ワークフローはドキュメントおよびリスト上で動作する場合が多い。SharePointのコンテキストでは、ドキュメントとは、アプリケーションによって作成された作業の任意の自己完結した断片であり、永続的に保存する場合は一意のファイル名を与えられ、これによって検索することができる。SharePointのコンテキストでは、リストとは、リレーショナルスキーマ用に明確に定義されたフィールドタイプを抽出したものである。リストは、1つまたは複数のドキュメントを含むことができる。リレーショナルスキーマと同様に、リストはある種の独特な特徴を有し、これによって1つのリストは別のリストから区別される。リストの特定のグループは、「プロファイル」を使用することによって、複数のリストから選択することができる。プロファイルとは、希望のリストの特徴を備えたフィルタである。1つのリストに適用される関数は、プロファイルを複数のリストに適用した結果として生じるリストに適用することもできる。より具体的な種類のリストはドキュメントライブラリと呼ばれ、ドキュメントを含むことができるだけでなく、ドキュメントに関するデータおよびドキュメント内に含まれるデータを検索してフィルタにかけることが容易になるような方法でドキュメントを整理することもできる。たとえばワークフロードキュメントは、そのドキュメントが1人または複数の参加者によって承認されることを必要とする。ドキュメントのバージョンは、ワークフローライフサイクルの過程で作成、キャンセル、修正などを行うことができる。このようなドキュメントに関連付けられたワークフローは、こうした行為を管理し、経過を追跡する。
ワークフローは通常、ワークフロー定義として開始する。ワークフロー定義とは、Windows(登録商標)Workflow Servicesワークフロースケジュールと、ワークフローを完全に指定するのに必要なサポートコードのファイルおよびフォームとを含むソフトウェアのインストール可能なパッケージである。具体的なワークフローは、ワークフロー定義がワークフローの関連付けおよびワークフローのパラメータ化のプロセスを経た場合に作成される。ワークフローの関連付けとは、ワークフローをリストまたはプロファイル上で利用できるようにするプロセスである。ワークフローのパラメータ化とは、参加者、締め切り、回送順序などのパラメータのセットを収集し、ワークフローに提示するプロセスである。いくつかのパラメータ化は、ワークフローがリストまたはプロファイルに関連付けられた場合に生じる。いくつかのパラメータ化は、ワークフローが開始された場合に生じる。ワークフローの設計者、すなわちワークフローの開発者またはワークフローの所有者は、どのパラメータを含むか、そしてそれらの値をいつ要求するかを決定する。
ワークフローは、開始から終了まで行為者からの入力を必要とせずに実行することもできるが、ワークフローを進める上で行為者からの何らかの外部入力が必要となる可能性の方が高い。行為者、すなわち参加者およびコンピューティングデバイスは、ワークフローエンジン、すなわちWindows(登録商標)Workflow Services上で実行されるワークフローに対して、ワークフロー内の特定の間隔を置いた明確に定義されたポイントにおいて、外部入力を提供することができる。このようなポイントは「タスク」と呼ばれる。概念的には、タスクは、始まり、終わり、およびステータス情報などの関連付けられたメタデータを有する作業の単位とみなすことができる。各ワークフローは、タスクリストのセットを含む。各ワークフローは、そのタスクをタスクリストに記憶する。
ワークフローは、リスト(ドキュメントライブラリは一種のリストである)またはコンテンツタイプに関連付けることができる。ワークフローの関連付けの設定は、リストのプロパティとして保存される。これらの設定は、リストがコピーされた場合も維持される。これらの設定は、ライブラリがコピーされた場合も維持される。
本発明のWSSの実施形態では、Microsoft Office InfoPath(商標)やMicrosoft Visual Studio(商標)などのアプリケーションを使用してタスクを定義することができ、あるいは独立系ソフトウェアベンダ(ISV)によって開発されたカスタムデータ収集フォーム、すなわちGUIフォームまたはWSSフォームを使用してタスクを定義することもできる。タスクは参加者によって完了される。たとえば参加者は、タスク用のリンクをクリックして、そのタスク用のフォームを表示することができる。参加者は、そのフォームにデータを入力し、そのフォームの「ステータス」が「完了」であることを示すチェックボックスを選択するなどして、そのフォームが完了していることを何らかの形で示す。そのフォームを提供するアプリケーション156は、ステータス情報をWSS WORKFLOW OM158に渡し、WSS WORKFLOW OM158は、そのステータス情報をワークフロー状況情報162としてワークフローエンジン170に渡す。ワークフローエンジン170はこの情報を受け取り、ワークフロー命令166を返して、タスクが完了していることをワークフローの所有者に通知する。同様のプロセスにおいて、ワークフローの所有者、すなわちプロジェクトのマネージャは、同様の要件を有するタスクのセットを選択し、それらを完了または承認済みとしてマークすることによって、複数のタスクを完了することができる。
本発明の典型的な実施形態は、「ToDo」と呼ばれる特定の種類のWSSタスクを使用する。ToDoとは、行為者によって達成されるタスクである。ToDoは、完了、キャンセル、または委任することができる。1つのToDoは、他のToDoと同調して適切なアクションを実行し、このアクションによって、1つまたは複数の適切なメッセージがワークフローエンジン170に送信される。ワークフローは、ToDoを作成して、これを一連の行為者に宛てることによって、外部入力を要求するプロセスを開始する。ToDoは、WSSタスクの一種であるため、WSSタスクリストへ挿入し、行為者に割り当てることができる。ToDoは拡張可能であり、ワークフローエンジン内で実行されるスケジュール内の特定のポイントにおいてワークフローによって必要とされるデータを表す任意のスキーマを有することができる。ToDoは、他の行為者に委任または転送することができる。必要とする入力データがない場合、ToDoはすぐに完了することができる。ToDoを完了する上で参加者からのデータが必要とされる場合、そのデータは、参加者にフォームを提示することによって収集される。そのデータは、フォームに入力された後、WSS WORKFLOW OM158に提示され、次いでWSS WORKFLOW OM158は、ワークフロー状況情報162をワークフローエンジン170に提示する。
情報は、WSS WORKFLOW OM158からワークフローエンジン170へメッセージとして渡される。典型的な実施形態では、メッセージのタイプは、起動、送信、および受信を含む。メッセージは、WSS内の「保存」イベントによって作成される。たとえばワークフローエンジン内でのワークフローの状況推移の一環として、ワークフロースケジュールは、ワークフロータスクを作成し、「保存」イベントの引き受けを指定すること、すなわち、どのソフトウェアオブジェクトが「保存」イベントを通知されるかを指定することができる。ワークフローエンジン内のワークフロースケジュールによるワークフロータスクの作成は、WSS内でToDoを作成し、適切なToDoイベントを登録するアクションへと変換される。本発明の典型的な一実施形態では、参加者がフォームを提出して、ToDoを完了すると、ToDoは、下記のアクションを実行させる要求を提示することによって、サポートするデータベース内で「保存」イベントを実行する。
1.データベースとのやり取りを行い、分類されていないイベントを使用して、ToDoに関するメタデータをフェッチする。
2.プレイベントハンドラを実行し、アクセス制御リスト(ACL)チェックを実施する。
3.要求のペイロードを保存し、イベントキューのペイロードを構築する。データベースサーバは、「保存」オペレーションによってデータベース内に生じる変更を計算する。中間層で行われたフィルタリングに基づいて、データベースサーバは、分類されていないイベントのセットを、適切な分類されたイベントの特定のセットへと絞り込む。
4.データベースと別のやり取りを行い、「保存」トランザクションを実行する。「保存」トランザクション内で下記のアクションを実行する。
a.データベース内で「保存」を行う。
b.オペレーション用に分類されたイベントを作成し、イベントキューに組み込む。
c.ワークフロースケジュールをロックする。
d.ワークフロースケジュールを順番に並べ、この順番に並べたワークフロースケジュールをトランザクションの結果として返す。
5.ワークフロースケジュールが首尾よく得られると、中間層で「保存後」イベントを非同期的に送達する。
他の何らかのマシン上の他の何らかのプロセスがワークフロースケジュールをロックしていた可能性がある場合、アイテム4.cにおいてワークフロースケジュールのロックに失敗することがあり、この場合、ワークフロースケジュールは順番に並べられて返され、トランザクションは終了するが、「保存後」イベントは送達されない。適応性のあるタイミングスキームに基づいて、この「保存後」イベントは、ワークフロースケジュールをロックできる時点で送達される。ToDoは、完了すると、前述と同様のプロセスを使用して削除することができる。このようなToDoの削除によって、WSS Workflow OMは、ToDoと、そのToDo上の適切な引き受けを削除する。
ワークフローがToDoを作成すると、そのToDoと、ワークフローエンジン170内で実行され、そのワークフローに関連付けられているスケジュールとの間に1つまたは複数のリンクが確立される。ToDoは、そのToDoにデータを提示するために使用されるフォームによって作成されているイベントの1つまたは複数を登録する。参加者がフォームの1つまたは複数のフィールドにデータを入力すると、イベントが作成される。ToDoはイベントを検出し、提示されたデータを処理し、その処理したデータをワークフロー対応型アプリケーション150またはワークフロー非対応型アプリケーション154に渡す。ワークフローは、ワークフロー命令166に応答することができる。典型的な命令は、ToDoを更新することである。ToDoを更新する場合、複数の一貫性検査が実行される。すべての検査に合格すると、非同期的なイベントは、ToDoを開始したスケジュールへ送達するためにキューに組み込まれる。一貫性検査は、同期化、セキュリティ、およびデータの妥当性に関する検査を含むが、これらには限定されない。データベースの一貫性を維持するために、非同期的なイベントのキューへの組み込みは、ToDoに対する更新と同じトランザクション内で生じる。イベントがワークフロースケジュールへの送達用としてキューに組み込まれると、更新を提示した参加者は、更新が首尾よく送達された旨を通知される。
イベントは、複数の理由からワークフローへ非同期的に送達される場合がある。1つの理由は、一実施形態ではスケジュールのインスタンスを1つしか認めることができず、そのスケジュールのそのインスタンスは、単一の、任意の、中間層のマシン上で実行することしか認められないことである。1台の中間層のマシン上に到達する新しいイベントを、別の中間層のマシン上で実行されているスケジュールのインスタンスへ回送することは可能だが、このようなメカニズムによって設計全体に対して不必要な複雑さが加わる。したがってスケジュールがアクティブな実行状態にある場合に、実行中のスケジュールへ新しいイベントを送達する回送メカニズムが存在しないと仮定すると、ワークフローイベントは、後で消費するためにキューに組み込まなければならない。そのそれぞれのワークフロースケジュールによって消費されるのを待っている保留中のイベントがキュー内に存在すると、それらのイベントをキューから外すメカニズムを設計しなければならない。スケジュールがイベントを消費できるかどうかを同期的に問い合わせるのは効率が悪いため、キューから外すプロセスは非同期的に処理される。イベント送達用の非同期的にキューから外すメカニズムに依存することは、名目上のコード実行パスと、例外的なコードパス、すなわちイベントの送達および消費が完了できず、後で再試行しなければならない場合との双方において、単一のコードパスを使用できることも意味している。必要に応じて、イベントキューはデータベース内のテーブルとすることもでき、メモリ内に保持する必要はないことに留意されたい。これによって、設計に堅牢性が加わり、壊滅的なシステム障害が防止される。
イベントは、そのイベントを所有するワークフローが実行状態へとブートしたら、そのワークフローによって直接キューから外されることが好ましい。ワークフローは、稼動すると、そのワークフロー用に設計されたイベントをイベントキューから先入れ先出し順に取り出すことによって、そのイベントを消費する。ワークフロー用に設計されたイベントスタック上のイベントは、スケジュールに沿ってワークフローを最後まで推し進め、最終的にスケジュールを完了させる。
本明細書に記載された典型的な実施形態では、WSSは、ワークフローエンジン、すなわちWindows(登録商標)Workflow Servicesをホストし、ワークフローの状況に対する永続的な記憶を提供する。ワークフローが実行されて完了に至るまでの間には、ワークフローの状況を永続的に記憶できるポイントがある。ワークフローの状況は、ワークフローの開発者によってスケジュール内で明確に定義されたポイント、または黙認のポイントで取り込み、永続的に記憶することができる。黙認のポイントとは、ワークフローが黙認の状態に入るポイント、すなわち有用な作業や対話がまったく発生しない時間である。基本的にワークフローは、何かが起こるのを不確定な長い時間にわたって待っている。そのような状況が検出されると、ワークフローはトランザクションポイントを設定する。トランザクションポイントにおいて、ワークフローは、ワークフローの内部状態について記述するデータを収集し、その内部状態のデータを対応するスケジュールと共にデータベース内に永続的に記憶する。このトランザクションと共に、他のスキーマ管理を行うこともできる。スケジュールのワークフローの状況は、順番に並べられた形でバイナリまたはXMLのいずれかで記憶することができる。トランザクションポイントでは、ワークフローを「休止」状態に置くことができる。ワークフローの休止状態とは、ワークフロースケジュールが、データベース内で持続されているスタティックストレージ以外のコンピューティングリソースをまったく消費しない状態である。たとえば、ToDoタスクを完了させる上ですべてのワークフロースレッドがブロックされ、そのワークフローへ送達される保留中のイベントがまったくない場合、そのワークフローの排他的ロックが解除され、そのワークフローは休止状態へ移行することができる。アクティブなプロセスは、自分の所属するワークフローを呼び覚ます必要があるイベントを探して、イベントキューを継続的にモニタすることが好ましい。このようなワークフローが識別されると、適切な中間層のマシンが、そのワークフロー用のホストとして指定される。そのワークフロー用のバイナリコードおよび状況情報が、永続ストレージからそのホストマシンにロードされる。ワークフローは、実行状態へとブートされる。
プロジェクトのマネージャ、すなわちワークフローの所有者が、SharePointなどのコラボレーティブなアプリケーション内で実行される本発明の実施形態をどのように使用して、プロジェクトを管理するためのワークフローを作成するかに関する前述の説明は、ワークフローに関する上記の説明によって裏付けられる。まずは、ワークフローの開発者がワークフロー定義を開発する。開発者はワークフロー定義をパッケージして、そのワークフロー定義をサーバ上にインストールし、これによってワークフローの所有者は、そのワークフロー定義にアクセスできるようになる。次いで所有者は、そのワークフロー定義を展開する、すなわち特定のプロジェクト用に使用するためにそのワークフロー定義をコピーする。所有者は、その展開したワークフロー定義を有効にし、すなわちアクティブにし、その展開したワークフロー定義をプロジェクト用のドキュメントのセットに関連付け、その展開したワークフロー定義をインスタンス化する、すなわちプロジェクト用のワークフローを作成する。最後に所有者は、そのプロジェクト用のワークフローを開始する。その後ワークフローが終了するまで、参加者は、GUIフォームを使用することによってワークフローと対話して、そのプロジェクト用のタスクを完了し、所有者は、GUIフォームを使用して、進行などをチェックする。このプロセスは「ワークフローライフサイクル」と呼ばれ、図3の流れ図によって示され、これについては以降で詳しく説明する。
図3に示されているように、ワークフローのライフサイクルは、8つのステージから構成される。各ステージの簡単な定義を次に述べ、各ステージの詳細については、その後に説明する。第1のステージは、開発ステージ200である。開発ステージでは、ワークフローが定義され、ワークフローを含む部分や要素が作成される。第2のステージは、パッケージングステージ204である。パッケージングステージでは、開発ステージで作成された部分や要素を使用して、ワークフロー自体がセットアップされる。ワークフローのセットアップは通常、開発ステージ200が完了した後で行われるが、Microsoft FrontPage(c)のようないくつかのコンピュータアプリケーションでは、開発ステージ200の最中にワークフローを編集することができる。第3のステージは、インストールステージ208である。インストールステージでは、ワークフローパッケージがサーバ上にロードされる。第4のステージは、展開ステージ212である。展開ステージでは、ワークフローの定義がサーバ上にインストールされ、ワークフローの参加者が、そのワークフローに関連付けられる。第5のステージは、有効化ステージ216である。有効化ステージでは、ワークフローの所有者はワークフロー内の機能をオンにし、これによって他者(参加者)は、そのワークフローを見ることができる。第6のステージは、関連付けステージ220である。関連付けステージでは、所有者はワークフローをドキュメントライブラリおよび/またはリストに関連付ける。第7のステージは、インスタンス化ステージ224である。インスタンス化ステージでは、ワークフローのパラメータ値が設定され、ワークフローが開始される。第8の最終ステージは、終了ステージ228である。終了ステージは、ワークフロー内のタスクのすべてが完了した場合、またはワークフローがキャンセルされた場合に発生する。
各ステージの詳細な説明を理解する際の補助として、ワークフローの例を使用する。ビデオ編集ツールの開発に関わるプロジェクト上で作業している参加者のグループによって、典型的なワークフローが使用される。
開発ステージ200では、ワークフローまたはワークフローテンプレートを含む部分が、ワークフローの開発者またはワークフローの所有者によって、開発および/または集約される。開発ステージではワークフローの開発者が主要な役割を果たすため、開発ステージ200ではワークフローの開発者しか言及されていない。開発および/または集約される部分は、(a)ワークフロースケジュール、(b)ワークフローによって使用されるデータのビュー、またはワークフローに関連するデータのビュー、(c)ワークフローをサポートする、コンピュータによって実施されるフォーム、および(d)ワークフローに関するメタデータを含むが、これらには限定されない。開発および/または集約される部分は、Microsoft Visual Studio(c)やMicrosoft FrontPage(c)のようなコンピュータアプリケーションを使用して作成することができる。開発ステージ200では、ワークフロー定義内の各部分ごとに、その部分と、SharePoint、および/またはクライアントコンピューティングデバイス上で実行されるMicrosoft Office(c)のようなアプリケーションとの間で対話をセットアップすることができる。
開発および/または集約される部分は、前述のように直接作成することもできるが、ワークフローテンプレートを使用してワークフローを作成する方がより有利である。ワークフローテンプレートをコピーし、そのワークフローテンプレートのコピーを修正して、希望の新しいワークフローへと変更することによって、ワークフローテンプレートからワークフローを作成する。ワークフローテンプレートによって、1つのプロジェクト用に開発されたワークフローの構造およびメタデータを他のプロジェクトに関連付けることができる。ワークフローテンプレートはGUIフォームではなく、むしろGUIフォームを使用して修正されるワークフローコンポーネントのセットであることに留意されたい。
図4Aは、ワークフローの部分や要素が直接またはワークフローテンプレートを使用して開発および集約される典型的な順序を示す流れ図である。ワークフローを直接開発する場合、それぞれの部分や要素は、その部分や要素のタイプによって決定されるデフォルト値を使用して作成される。ワークフローテンプレートを使用してワークフローを開発する場合、部分や要素のほとんどを利用することができ、新しいワークフローの要件を満たすように修正するだけですむ可能性が高い。図4Aを参照すると、240においてワークフローのトップレベルのスケジュールが定義される。次いで244において、ワークフローを定義するデータおよびメタデータのビューが定義される。248では、ワークフローのスケジュール、ビュー、およびメタデータに関する情報を提示および収集するように設計されたフォームテンプレートが、スケジュール、ビュー、およびメタデータをサポートするためのフォームを設計する上で使用するために、開発者に提示される。次いで252では、必要に応じて、カスタムコンピュータコードが作成される。最後に256において、ワークフローのタスクがいつどのようにして経過を追跡されるかが定義される。
開発ステージ200では、ワークフローの開発者が前述のステップを完了できるようにフォームが提供される。図4Bは、ワークフローを設計するための典型的なGUIフォーム239である。このGUIフォーム内のフィールド241は、ワークフロー内のステップの名前を入力するために提供されている。ワークフローの典型的なステップ243が、フォームの右側に表示されている。この典型的なステップは、「送信して承認を求める」および「ベンダを選択する」である。「送信して承認を求める」のステップは、2つの下位基準、すなわち「マネージャ側で承認する」および「制御側で承認する」を有する。図4Bでは、編集用に選択されているステップは「送信して承認を求める」であることがハイライトによって示されている。「送信して承認を求める」のステップをクリックすると、ステップ名(図示せず)がフィールド241内に表示される。「送信して承認を求める」のステップは、ドロップダウンメニューの表示フィールド245内で「レギュラーステップ」と指定されている。他のタイプの指定も、ドロップダウンメニュー内に含まれる。ワークフロー内では、ステップの条件と、その条件が満たされた場合に発生するアクションとを設定することができる。
図4Bに示されている典型的なワークフローの「送信して承認を求める」のステップでは、2つの条件が、それぞれ関連付けられたアクションと共に示されている。第1の条件は「金額が1000ドル以下の場合」であり、この第1の条件が満たされた場合に発生するアクションは、「現時点でのドキュメントをマネージャへ割り当てて、承認を求め、次いでサブステップ「マネージャ側で承認する」を実行する」である。第2の条件は「金額が1000ドルを上回る場合」であり、この第2の条件が満たされた場合に発生するアクションは、「現時点でのドキュメントを制御側へ割り当てて、承認を求め、次いでサブステップ「制御側で承認する」を実行する」である。この2つの「アクション」は、図4Bの右側に示されている前述の2つの下位基準、「マネージャ側で承認する」および「制御側で承認する」に対応していることに留意されたい。
図4Bに示されている条件およびアクション内の特定の語に下線が引かれていることに留意されたい。本明細書で説明されている本発明の典型的な実施形態では、下線の語を変更することができる。下線の条件およびアクションは、たとえばワークフローを作成するために使用されるワークフローテンプレートの一部であるGUIフォームにおいて提供することができる。GUIフォーム239の最下部には、開発者が(a)ワークフローをチェックできる「ワークフローをチェックする」、(b)ワークフローの編集をキャンセルできる「キャンセル」、(c)前のステップへ戻ることができる「戻る」、(d)次のステップへ進むことができる「次へ」、および(e)ワークフローの編集を終了できる「終了」の各ボタンが提供されている。
「条件付き分岐を追加する」249を選択することによって、追加の条件付き分岐を作成することができる。「条件付き分岐を追加する」249を選択すると、条件およびアクション247の新しいブロックが、既存の条件付き分岐の後に挿入される。条件およびアクションのブロック内の各コンポーネントのタイプは、ドロップダウンメニューを使用して選択することができる。たとえば条件およびアクション247のブロックの左側では、ドロップダウンメニューから「条件を設定する」および「アクション」が選択されている。条件およびアクション247のブロックの右側では、条件「金額が1000ドル以下の場合」がドロップダウンメニューから選択されており、条件「金額が1000ドルを上回る場合」も同様に選択されている。
開発ステージ200においてサポートされる別の行為は、ワークフローをドキュメントライブラリに関連付けることである。図4Cは、ワークフローをドキュメントライブラリに関連付けるための典型的なGUIフォーム251を示している。GUIフォーム251は、「ワークフローの定義」、「名前とステータスのメニュー」、および「開始条件」という3つのセクションを含んでおり、そのタイトルは、ワークフローをドキュメントライブラリに関連付けることに関わる3つの行為を反映している。「ワークフローの定義」のセクションは、ワークフローの開発者にワークフローテンプレートのリストを提示する。「ドキュメントの承認」、「ドキュメントの検討」、「ドキュメントの回覧」、「マネージャによる承認」、「チームによる検討」、「個人的なドキュメントの検討」、および「リソースの調達」という典型的なワークフローライブラリ関連付けテンプレートが表示されている。ワークフローの開発者は、ワークフローライブラリ関連付けテンプレートのリストから1つのワークフローライブラリ関連付けテンプレートを選択することができる。あるいはリストが適切なテンプレートを含んでいない場合、ワークフローの開発者は「ワークフローを作成・・・」を選択することができ、これによってワークフローの開発者は、新しいワークフローライブラリ関連付けテンプレートを作成することができる。「名前とステータスのメニュー」のセクションによって、ワークフローの開発者は、ワークフローとライブラリの関連付け用に一意の名前を作成することができる。その名前は通常、以前に選択されたワークフローライブラリ関連付けテンプレートに基づく。「名前とステータスのメニュー」のセクションはまた、ラジオボタンを含み、これによって開発者は、ドキュメントライブラリに関連付けられているワークフロー用のメニューアイテムをステータスメニューに追加することができる。「開始条件」のセクションによって、開発者は、新たに作成されたワークフローとライブラリの関連付け用に1つまたは複数の開始条件を選択することができる。考えられる開始条件は、「このワークフローをアイテムまたはフォルダから手動で開始できるようにする」、「新しいアイテムまたはフォルダが作成されたときに、このワークフローを自動的に開始する」、および「アイテムまたはフォルダが変更されたときは、常にこのワークフローを自動的に開始する」である。
本明細書に記載されている本発明の典型的な実施形態では、開発ステージ200においてワークフローが作成された後、そのワークフローをカスタマイズすることができる。ワークフローをカスタマイズするためのGUIフォーム253の一例が、図4Dに示されている。図示されたカスタマイズされているGUIフォーム253は、図4Dの左側にステップのシーケンスとして示されている4つの質問、すなわち(1)承認用に回送しますか、あるいはフィードバックを集約しますか、(2)ワークフローに参加するのは誰ですか、(3)ワークフローをどのように進めますか、(4)ワークフローをどのように終了しますか、をワークフローの開発者に提示している。これらの「質問」の1つを選択すると、関連するパネルが図4DのGUIフォームの右側に現れる。図4Dに示されている例では、ワークフローの開発者は、第1のステップ「承認用に回送しますか、あるいはフィードバックを集約しますか」を選択している。このステップは、「ドキュメントを回送して、承認を求める」および「ドキュメントを回送して、フィードバックとコメントを求める」という2つの選択肢を有するパネルを開き、そのそれぞれは2つの下位選択肢を有する。選択肢「ドキュメントを回送して、承認を求める」の下位選択肢は、「再提出を認める」および「編集を制限する」である。「編集を制限する」は、変更を禁止する「変更禁止(読み取り専用)」という名のコントロールチェックボックスを有する。選択肢「ドキュメントを回送して、フィードバックとコメントを求める」の下位選択肢は、「参加者ごとにこのドキュメントの新しいコピーを作成する」および「参加者が互いのコピーを見られるようにする」である。
図4Dに示されている例では、ワークフローの開発者は「ドキュメントを回送して、承認を求める」を選択している。ワークフローの開発者はまた、修正したドキュメントの再提出を参加者に認めること(再提出を認める)、および元のドキュメントの編集を制限すること(編集を制限する)を選択している。
図3で前述したように、開発ステージの後、ワークフローはパッケージングステージ204においてパッケージされる。典型的なパッケージングステージのステップが、図5Aに示されている。パッケージングステージ204のステップは、ワークフローの開発者またはワークフローの所有者によって実行することができるが、説明を簡単にするために、以降の考察では、このステップはワークフローの所有者によって実行されるものと仮定する。ワークフローの所有者は、はじめに270において、ワークフローのコンポーネントを識別することによって、パッケージを定義する。
図5Bは、典型的なワークフローパッケージ320のトップレベルのコンポーネントのブロック図である。示されている典型的なワークフローパッケージ320は、製造チームによる検討324、マーケティンググループによる検討328、および法務グループによる検討332という3つのトップレベルのコンポーネントを含んでおり、ワークフローパッケージは、これと同じ指定か異なる指定かを問わず、より多くのトップレベルのコンポーネントまたはより少ないトップレベルのコンポーネントを含むことができるものと理解されたい。典型的なトップレベルのコンポーネントのそれぞれは、ワークフローの参加者のさまざまなグループに関連付けられている。たとえばマーケティンググループによる検討のコンポーネントは、ワークフローが経過を追跡しているプロジェクトに関与しているマーケティンググループの参加者に関連付けられている。トップレベルのコンポーネントのそれぞれは、役割、タスク、およびマイルストーンのリストを含むものとして示されているが、これらのリストの数および内容は代表的なものであり、限定と解釈すべきではないことを理解されたい。すなわちトップレベルのコンポーネントは、より多くのリストまたはより少ないリストを含むことができ、リストは、役割、タスク、およびマイルストーンとすることもできるし、あるいはそれ以外のものとすることもできる。
図5Aに戻ると、270においてパッケージを定義した後、ワークフローの所有者は、272でワークフロースケジュールをパッケージに挿入する。次いで274では、ワークフローの所有者は、ワークフローに含まれることになるタスクのタイプをパッケージに挿入する。その後276において、ワークフローの所有者は、参加者がワークフローと対話する上で必要となるフォームをパッケージに挿入する。次いで278において、ワークフローの所有者は、ワークフローが操作する必要のあるリソースをパッケージに挿入する。そして280において、ワークフローの所有者は、ワークフローに関するメタデータをパッケージのマニフェストに追加する。パッケージのマニフェストとは、パッケージのコンテンツに関する詳細な説明である。パッケージのマニフェストは、パッケージ内の名前、バージョン、タイプ、およびリソース、ならびに他のパッケージとの依存関係について記述するメタデータを含む。マニフェストによって、パッケージは自己記述的になり、容易に展開することができる。最後に282において、ワークフローの所有者はパッケージを利用可能にする。図5Aに示されているステップ、特に挿入ステップは、図5Aにおいて前述したシーケンス以外のさまざまなシーケンスで達成できることは明らかである。本発明の一実施形態では、パッケージは、1つまたは複数のMicrosoft(登録商標) .NET(商標)アセンブリとすることができる。Microsoft(登録商標) .NET(商標)アセンブリは、安全な方法で共有できるコードライブラリである。
ワークフローは、パッケージされた後、インストールステージ208(図3)に入る。図6は、ワークフローパッケージをどのようにしてインストールできるかを示す典型的な流れ図である。350において、ワークフローの所有者は、ワークフローパッケージをグローバルアセンブリキュッシュ(GAC)のバイナリコードフォルダに配置する。たとえばパッケージを「GAC/バイナリフォルダ」内に配置することができ、ワークフローパッケージを機能リストに追加することができる。次いで354では、ワークフローの所有者は、SharePointなどの適切なプログラムを介してワークフローを利用可能にする。図6に示されている例では、ワークフローは「製品の検討」と名付けられている。
ワークフローは、インストールされた後、展開ステージ212(図3)に入る。図7Aは、展開ステージ212内で発生する行為を示す典型的な流れ図である。ブロック400において、所有者は、インストールされた複数のワークフローフォームから1つの適切なワークフローフォームを選択する。1つの適切なワークフローフォームは、スケジュールと、ワークフローによって管理されているプロジェクトの1つの側面に関与するタスクの経過を追跡するのに必要なコンポーネントのすべてまたは大半とを含む。ブロック404では、この適切なワークフローテンプレートを使用して、このワークフローによって管理されるプロジェクト専用のワークフローを作成する。たとえば「製品の検討」という名のワークフローをテンプレートとして使用して、「ビデオ編集製品の検討」という名の新しいワークフローを定義することができる。図7Bは、このようなワークフローを作成するのに適した典型的なGUIフォーム410を示している。この典型的なGUIフォーム410は、「ワークフローの定義」、「名前とステータスのメニュー」、および「開始条件」という3つのセクションを含む。「ワークフローの定義」のセクションによって、所有者は、インストールされた複数のワークフローから1つのワークフローの定義、すなわちそこから1つのワークフローの定義を借用できる既存のワークフローを選択することができる。その既存のワークフローは、テンプレートとして使用される。たとえば図7Bでは、所有者は、「回送して承認を求める」または「ドキュメントの回覧」のワークフローテンプレートを選択することができる。上記の2つのワークフローテンプレートの1つを選択することによって、所有者は、ワークフローを、「ビデオ編集プロジェクト」などのプロジェクトに関連付けられたドキュメントを含むドキュメントライブラリに関連付ける。これで、このワークフローは、そのプロジェクトのドキュメントライブラリ内の全ドキュメントの経過を追跡できるようになった。「名前とステータスのメニュー」のセクションでは、所有者は、そのワークフロー用の一意の名前を入力し、この名前は、ドキュメントライブラリ内のリストアイテムおよびフォルダ上に表示されることになる。またラジオボタンもあり、これによってユーザは、このワークフロー用のメニューアイテムをステータスメニューに追加することができる。「開始条件」のセクションでは、所有者は、必要なワークフローのパラメータ値がすべて設定された場合にワークフローを開始させる条件を設定する。「このワークフローをアイテムまたはフォルダから手動で開始できるようにする」、「新しいアイテムまたはフォルダが作成されたときに、このワークフローを自動的に開始する」、および「アイテムまたはフォルダが変更されたときは、常にこのワークフローを自動的に開始する」という開始条件から、少なくとも1つの、また場合によっては複数の条件を選択することができる。図7Aのブロック408は、展開ステージ212の最終ステップを示しており、ここでは、参加者はワークフローに、この例では「ビデオ編集製品の検討」のワークフローに関連付けられる。
ドキュメントライブラリは、複数のプロジェクトに関与することができ、したがって複数のワークフローに関連付けることができる。図7Cは、ドキュメントライブラリに関連付けられたワークフローを追加または削除するための典型的なGUIフォーム412である。また図7Cに示されている典型的なGUIフォームによって、ワークフローの設定を表示し、ワークフローの実行順序を変更することもできる。より具体的には、図7CのGUIフォーム412は、1つのドキュメントライブラリに関連付けられたワークフローの数を表示し、他のGUIフォームを選択するための制御を提供して、ワークフローをドキュメントライブラリに関連付け、ドキュメントライブラリから1つまたは複数のワークフローの関連付けを解除し、関連付けられたワークフローの実行順序を変更する。
図7Dは、ワークフロー内のタスクを設定するための典型的なGUIフォーム414である。このGUIフォームは、ワークフロー内のすべてのタスク、ワークフロー内のログオンしているユーザに割り当てられたタスク、ワークフロー内のその日が締め切りであるタスク、ワークフロー内のアクティブタスク(active task)、およびワークフロー内の割り当て先別のタスク、というワークフロー内のタスクに関する5つのビュー416を提供する。ビューペイン418では、選択されたビュー416に基づいて、各タスクのタイトル、割り当てられた参加者、ステータス、優先度、締め切り、および進捗率が提示される。お気に入りのリンクの一覧にワークフローを追加し、参加者がワークフロー内で何かを行わなければならない場合にアラートを提示し、ワークフローの情報をスプレッドシートにエクスポートし、ワークフロー上のレポートの設定および配列を変更するために、制御420が提供される。
図7Eは、ドキュメントライブラリに関連付けられたワークフローのパラメータ値を変更するための典型的なGUIフォーム422である。GUIフォーム422は、「参加者と回送順序」、「締め切り」、「通知オプション」、および「承認条件」という4つのセクションに分割されている。「参加者と回送順序」のセクションでは、参加者をアドレス帳から選択し、参加者のリストへ追加して、ワークフローに関連付けられたドキュメントライブラリへ関連付けることができる。ドキュメントライブラリをすべての参加者へ同時に回送するか、またはドキュメントライブラリを各参加者へリストに記載されている順に回送するかを選択することができる。「締め切り」のセクションでは、承認を完了しなければならない日時を入力することができる。「通知オプション」のセクションでは、タスクが参加者に割り当てられたときに各参加者にその旨を通知するよう選択することができ、またワークフローが完了したときにワークフローの所有者にその旨を通知するよう選択することもできる。「承認条件」のセクションでは、「すべての参加者がドキュメントを承認した場合」、「1人の参加者がドキュメントを承認した場合」、「過半数の参加者がドキュメントを承認した場合」、および「締め切りを過ぎた場合」、という承認を表す条件から1つまたは複数を選択することができる。
ワークフローは、展開された後、有効化ステージ216(図3)に入る。図8は、有効化ステージ216内で発生する行為を示す典型的な流れ図である。ブロック500において、所有者は、どのワークフロー対応型ツールが参加者によって使用されるかを識別する。参加者によって使用されるワークフロー対応型ツールは、ワークフローに直接アクセスするために挿入されたメニューアイテムや他の制御を有することができる。ブロック504では、所有者は、それぞれのワークフロー対応型ツール内のワークフロー選択制御をオンにする。たとえば所有者は、それぞれのワークフロー対応型ツール内の「ビデオ編集ツール製品の検討」のワークフロー選択機能をオンにする。
ワークフローは、有効化された後、関連付けステージ220(図3)に入る。関連付けステージ220において発生する関連付けの行為は、ワークフローをコンテンツタイプまたはリストに関連付けることである。関連付けられたワークフローとは、ドキュメントライブラリまたはリストをそのドキュメントライブラリまたはリストのユーザにとって利用可能にするために、そのドキュメントライブラリまたはリストに関連付けられているワークフローである。
コンテンツタイプとは、他のコンテンツタイプまたはリスト(ドキュメントライブラリは一種のリストである)に適用できる設定の集合である。たとえば仕様向けのコンテンツタイプは、仕様の作成者、仕様の実装者、および仕様ドキュメントの仕様エリアを入力するためのドキュメントライブラリリスト上のメタデータの列を定義する場合がある。仕様のコンテンツタイプは、このコンテンツタイプの新しいドキュメントを作成する際に使用するデフォルトのドキュメントテンプレートを含む場合がある。仕様のコンテンツタイプがドキュメントライブラリに追加されると、その設定がドキュメントライブラリにコピーされ、ドキュメントライブラリのユーザは、そのコンテンツタイプのアイテムまたはドキュメントをドキュメントライブラリに保存することができる。複数のコンテンツタイプを同一のリストまたはドキュメントライブラリに追加できること、およびコンテンツタイプは他のコンテンツタイプにも追加できることに留意されたい。ワークフローの関連付けは、コンテンツタイプに追加できる設定の一種である。たとえば仕様の承認のワークフローの関連付けを仕様のコンテンツタイプに追加すると、そのワークフローの関連付けは、その仕様のコンテンツタイプの追加先のリストにコピーされる。その後、仕様のコンテンツタイプ上のワークフローの関連付けに変更を加えた場合、その変更は、そのコンテンツタイプから受け継ぐドキュメントライブラリに押し下げることができ、これによってサイトの管理者は、1つの場所でワークフローの設定を行い、その設定を他の複数の場所に広めることができる。
図9Aは、ワークフローをどのようにしてコンテンツタイプに関連付けるかを示す典型的な流れ図である。このような関連付けの利点は、コンテンツタイプまたはコンテンツタイプの特徴に基づくことができるタスクが存在できることである。はじめに520において、コンテンツタイプを選択する。次いで524において、コンテンツタイプをワークフローに関連付ける。この時点で関連付けは行われたが、この関連付けの中にはドキュメントが全くないため、あまり有用ではない。この関連付けにドキュメントを追加する準備として、528においてドキュメントライブラリを作成する。次いで532において、コンテンツタイプをドキュメントライブラリに追加する。ブロック536では、適切なコンテンツタイプのドキュメントのリストなどのアイテムが利用可能な場合、そのアイテムをドキュメントライブラリに追加することができる。ブロック536で利用可能な別のオプションは、適切なコンテンツタイプのリストを作成し、そのリストに適切なコンテンツタイプのドキュメントを追加し、そのリストをドキュメントライブラリに追加することである。ブロック536における第3のオプションは、適切なコンテンツタイプの空のリストをドキュメントライブラリに追加し、そのリストに適切なコンテンツタイプのドキュメントを追加することである。最後に540において、アイテムまたはドキュメント上でワークフローを開始する。
図9Bは、異質なドキュメントライブラリ、すなわち複数のコンテンツタイプを認めるドキュメントライブラリにワークフローをどのようにして関連付けるかを示す典型的な流れ図である。このような関連付けの利点は、コンテンツタイプに帰属しない共通の特徴に基づくタスクが存在できることである。はじめに544において、ドキュメントライブラリを選択する。次いで548において、ドキュメントライブラリ全体またはライブラリ内の1つまたは複数のリストにワークフローを関連付ける。図9Aのブロック536において利用可能な3つのオプションは、図9Bのブロック552においても利用可能である。最後にブロック540と同様、ブロック556に示されているように、アイテムまたはドキュメント上でワークフローを開始する。
ワークフローの関連付けは、ワークフローの関連付けフォームという特定の種類のGUIフォームを使用することによって達成することもできる。このようなフォームを使用して、リストまたはプロファイルマネージャからワークフローのパラメータおよび制約を収集する。ワークフローの関連付けフォームは、サーバ上にインストールされてサイトまたはサイトの集合上で有効にされるワークフローパッケージ内で定義される。
ワークフローは、関連付けられた後、インスタンス化ステージ224(図3)に入り、ここではワークフローは、そのワークフローが経過を追跡するプロジェクトの特定の要件にさらに適合される。ワークフローは、そのワークフローによって経過を追跡されるプロジェクトに適合された後、ワークフローの参加者にとって利用可能にされる。図10Aは、「ビデオ編集ツールのプロジェクト」という名の典型的なプロジェクト用のインスタンス化ステージ224内で発生する行為を示す典型的な流れ図である。ブロック600において、ワークフローテンプレート内の一般的なパラメータに、「ビデオ編集ツールのプロジェクト」に特有の値を割り当てる。ブロック604では、「ビデオ編集ツールのプロジェクト」に特有のカスタムパラメータと、そのカスタムパラメータ用のデフォルト値をワークフローに追加する。ブロック608では、「ビデオ編集ツールのプロジェクト」用のワークフローを開始する、すなわち起動する。起動は明示的に行うことができる。たとえば、参加者はドキュメントを提出して承認を求めることができ、これによって、そのドキュメントを承認するためのワークフローを明示的に起動することができる。起動は自動的に行うこともできる。たとえば経費報告用に必要なドキュメントが、その経費報告に関連付けられたドキュメントライブラリに追加されると、その経費報告ドキュメントを承認するためのワークフローを自動的に起動することができる。両方の例では、必要とされるタイプのワークフロースケジュールをインスタンス化するようワークフローエンジンに指示する特別なイベントハンドラを呼び出すイベントが、WSSサブシステム内で作成される。ワークフローの作成をトリガする所有者または参加者は、スケジュール内に記載された変数になる特定のパラメータを入力するよう促される。所有者または参加者を促すために使用されるフォームの作成は、展開の時点でワークフローの定義から利用可能にされたメタデータに基づく。
ワークフローを開始すると、そのワークフローに関連付けられているスケジュールが起動し、ワークフローエンジン170(図2)内で実行される。ここまでもある程度は説明したが、スケジュールがワークフローエンジン内で実行されると、参加者に割り当てられたそのスケジュール内のタスクによって、ワークフロー命令166がWSS WORKFLOW OM158に送信される。WSS WORKFLOW OM158は、そのようなワークフロー命令166をメッセージへと変換し、そのメッセージはアプリケーション156に送信される。アプリケーション156は、そうしたメッセージを受信すると、タスクに関する情報をGUIフォーム内に提示する。たとえば図10Bに示されている典型的なGUIフォーム614は、締め切りを過ぎたワークフロータスクに関する情報のビューを提供する。図10Bに示されている典型的なGUIフォーム616は、ワークフロー内の全タスクに関する情報の総括を含む。この総括は、アクティブタスクの総数、締め切りを過ぎたタスクの総数、およびタスクが締め切りを過ぎた平均日数を含む。各参加者に割り当てられたタスクに関する情報の列が提供される。列内の一番上の項目は、参加者の名前、締め切りを過ぎた平均日数、およびタスクの進捗率を示している。列内の残りの各項目は、割り当てられた各タスクが締め切りを過ぎた日数、タスクの進捗率、タスクの名前、およびタスクの締め切りを示している。
図10Cは、ワークフローの所有者が、ワークフロー内の複数の週にわたるアクティブ案件すなわちタスクの総括を表示するために呼び出すことができる典型的なGUIフォーム618である。この典型的なGUIフォームは、ワークフロー内のすべてのアクティブタスクの総括620を示しており、これは、アクティブタスクの総数、1週間あたりのアクティブタスクの平均数、1人あたりのアクティブタスクの平均数、および1人あたりのアクティブタスクの最大数を含む。図10Cに示されている典型的なGUIフォーム618はまた、報告対象期間内の各週ごとの情報の行を提供する。各行の最初の項目は、対象期間内の1週間の開始日と、その週内のアクティブタスクの平均数を示している。行内の残りの各項目は、参加者の名前、その参加者に割り当てられているアクティブタスクの数、その参加者が責任を負う第1締め切りおよび最終締め切り、ならびにタスクの進捗率を示している。
ワークフローの所有者は、図10Dに示されている典型的なGUIフォーム622を使用して、ワークフローに関するさまざまなレポートを作成することができる。図10Dに示されている典型的なGUIフォーム622は、「仕様の検討に関するレポート」および「経費の承認に関するレポート」という2種類のレポートを提供している。仕様の検討に関するレポートは、「締め切りを過ぎたタスクを担当者別に表示」、「優先度の高いアクティブタスクを担当者別に表示」、「アクティブタスクを担当者別に表示」、「アクティブタスクをアイテム別に表示」、「締め切りを過ぎたワークフローを締め切り別に表示」、「締め切りを過ぎたワークフローを作成者別に表示」、および「完了ワークフローを作成者別に表示」を含む。経費の承認に関するレポートは、「締め切りを過ぎたタスクを担当者別に表示」、「優先度の高いアクティブタスクを担当者別に表示」、「アクティブタスクを担当者別に表示」、「アクティブタスクをアイテム別に表示」、「締め切りを過ぎたワークフローを締め切り別に表示」、「締め切りを過ぎたワークフローを作成者別に表示」、「締め切りを過ぎたワークフローを経費金額別に表示」、「完了ワークフローを作成者別に表示」、および「完了ワークフローを経費金額別に表示」を含む。
図3に示されている典型的なワークフローのライフサイクルでは、最後のステージは終了ステージ228である。図11Aは、ワークフローをどのようにして終了できるかを示す典型的な流れ図である。ワークフロー内のタスクが完了した場合と、定期的な時間間隔を置いて、ワークフローが完了しているかどうかを700でチェックする。ワークフローが完了している場合、そのワークフロー状況は、708においてSharePointから削除される。ワークフローは完了していないが、704において、そのワークフローに関連付けられているドキュメントまたはリストが削除されている場合、そのワークフローは、708においてSharePointから削除される。ドキュメントまたはリストが削除されていない場合、プロセスはワークフロー完了テスト700へ戻る。
ワークフローが削除されたかどうかにかかわらず、712においてSharePointは、ユーザによって設定可能な日数、たとえば90日間待機し、これによってワークフローの所有者は、ワークフローを削除するか、または再開することができる。90日たってもワークフローが再開されない場合、そのワークフロータスクは、716においてSharePointから削除され、もはや経過は追跡されない。図11Bは、ワークフローの終了を可能にする典型的なGUIフォームである。このGUIフォームは、ワークフローのタイトルと、そのワークフローのインスタンスの数を表示する。所有者は、ワークフローの新しいインスタンスを作成できるようにすることを選択するか、ワークフローの実行中のインスタンスを削除せずに新しいワークフローインスタンスの作成を制限することを選択するか、またはワークフローの実行中のインスタンスをすべて削除することができる。ワークフロータスクリストは、自分にいくつのワークフローが関連付けられているかを把握する使用カウンタを有する。カウントがゼロではないワークフロータスクリストを削除しようとすると、そのワークフロータスクリストはまだ使用中である旨の警告が出される。
本発明の実施形態は、特定のワークフロー用のリアルタイムのステータスや、ワークフローのセットに関する集約された情報など、ワークフローに関するステータス情報を提供することができる。たとえば本発明の一実施形態は、ワークフロー内のアイテムに対する承認コメントを集約したデータ、特定のアイテムを承認した承認者名を集約したデータ、その時点でアクティブであり使用中であるワークフローのセット、あるいはビジネスプロセスのさまざまな態様向けの指標を提供することができる。
本発明の現時点で好ましい実施形態について記載および説明したが、本発明の趣旨および範囲から逸脱することなくさまざまな変更を実施できることが理解できるであろう。たとえばSharePointのコンテキスト内では、ワークフローは、限定はしないが標準的なMicrosoft Outlookのメッセージフォームを含む多くの種類のフォームに関連付けることができ、あるいはそうした多くの種類のフォームと共に動作することができる。またSharePointのコンテキスト内では、本発明の一実施形態は、カスタムフィールドおよび他の制御を含むカスタムユーザインターフェースと共に動作することができる。前述の本発明の実施形態は、SharePointのコンテキストにおいてウェブサイトの開発および保守に関連するビジネスプロセス用に使用されるが、本発明は、他のコンテキストにおける他のタイプのビジネスプロセスにも適用できることが理解できるであろう。この点から、本発明は、SharePointとの関連以外でも実施できることが理解できるはずである。したがって添付の特許請求の範囲の範囲内であれば、本明細書に具体的に記載した以外の方法でも本発明を実施できることを理解されたい。
典型的な直線的なタスク管理プロセスを示す流れ図である。 本発明の典型的な実施形態をサポートするSharePointの主要なコンポーネントを示すブロック図である。 ワークフローライフサイクルにおけるステージを示す流れ図である。 典型的なワークフローの開発を示す流れ図である。 ワークフローを設計するための典型的なグラフィカルユーザインターフェースを示す図である。 ワークフローテンプレートをドキュメントライブラリに関連付けるための典型的なグラフィカルユーザインターフェースを示す図である。 ワークフローをカスタマイズするための典型的なグラフィカルユーザインターフェースを示す図である。 典型的なワークフローがどのようにしてパッケージされるかを示す流れ図である。 典型的なワークフローパッケージのトップレベルのコンポーネントを示すブロック図である。 典型的なワークフローパッケージがどのようにしてインストールされるかを示す流れ図である。 典型的なワークフローがどのようにして展開されるかを示す流れ図である。 新しいワークフローを作成し、そのワークフローをドキュメントライブラリに関連付けるための典型的なグラフィカルユーザインターフェースを示す図である。 ドキュメントライブラリに関連付けられたワークフローを表示して選択するための典型的なグラフィカルユーザインターフェースを示す図である。 ワークフロー内のタスクを設定するための典型的なグラフィカルユーザインターフェースを示す図である。 ワークフローに関連付けられたドキュメントライブラリのパラメータ値を設定するための典型的なグラフィカルユーザインターフェースを示す図である。 典型的なワークフローをどのようにして有効にするかを示す流れ図である。 典型的なワークフローをどのようにしてコンテンツタイプに関連付けるかを示す流れ図である。 典型的なワークフローをどのようにしてドキュメントリストまたはライブラリに関連付けるかを示す流れ図である。 典型的なワークフローがどのようにしてインスタンス化されるかを示す流れ図である。 ワークフロー内の締め切りを過ぎたタスクを表示する典型的なグラフィカルユーザインターフェースを示す図である。 ワークフロー内のアクティブ案件を表示する典型的なグラフィカルユーザインターフェースを示す図である。 ワークフロー用の複数のレポートへのアクセスを提供する典型的なグラフィカルユーザインターフェースを示す図である。 典型的なワークフローをどのようにして終了するかを示す流れ図である。 ワークフローの終了を可能にする典型的なグラフィカルユーザインターフェースを示す図である。
符号の説明
150 ワークフロー対応型アプリケーション
154 ワークフロー非対応型アプリケーション
156 アプリケーション
158 WINDOWS(登録商標)SHAREPOINT SERVICES WORKFLOW OBJECT MODEL(WSS WORKFLOW OM)
162 ワークフロー状況情報
166 ワークフロー命令
170 ワークフローエンジン

Claims (20)

  1. ビジネスプロセス全体を通じて作業がどのように流れるか(すなわちワークフロー)をサポートするためのソフトウェアプログラムを作成する方法であって、
    (a)ユーザの入力に応答して、ワークフローを定義し、以前に開発されたテンプレートを使用して前記ワークフローをサポートするためのフォームを設計することと、
    (b)前記ワークフローをサーバ上にインストールすることと、
    (c)参加者を前記ワークフローに関連付けることと、
    (d)前記ワークフローを有効化することと、
    (e)前記ワークフローをドキュメントライブラリに関連付けることと
    を含むことを特徴とする方法。
  2. ワークフローを定義し、以前に開発されたテンプレートを使用して前記ワークフローをサポートするためのフォームを設計することは、前記ワークフローのスケジュールおよびメタデータをサポートするフォームを設計することを含むことを特徴とする請求項1に記載の方法。
  3. ワークフローを定義し、以前に開発されたテンプレートを使用して前記ワークフローをサポートするためのフォームを設計することは、どのようにして前記ワークフローの経過を追跡するかを定義することを含むことを特徴とする請求項2に記載の方法。
  4. ワークフローを定義し、以前に開発されたテンプレートを使用して前記ワークフローをサポートするためのフォームを設計することは、前記ワークフローをパッケージすることを含むことを特徴とする請求項1に記載の方法。
  5. 前記ワークフローをパッケージすることは、
    (a)ワークフロースケジュールをパッケージに挿入することと、
    (b)タスクのタイプを前記パッケージに挿入することと、
    (c)フォームを前記パッケージに挿入することと、
    (d)リソースを前記パッケージに挿入することと、
    (e)メタデータを前記パッケージのマニフェストに追加することと
    を含むことを特徴とする請求項4に記載の方法。
  6. ユーザの入力に応答して前記ワークフローを開始することも含むことを特徴とする請求項1に記載の方法。
  7. 前記ワークフローを終了することを含むことを特徴とする請求項1に記載の方法。
  8. 前記ワークフローをドキュメントライブラリに関連付けることは、ドキュメントライブラリを作成することと、コンテンツタイプを作成して、ワークフローを前記コンテンツタイプに関連付けることと、そのコンテンツタイプを前記リストまたはドキュメントライブラリに追加することと、前記適切なコンテンツタイプのドキュメントを前記リストまたはドキュメントライブラリに追加することとを含むことを特徴とする請求項1に記載の方法。
  9. ワークフローを管理するための、コンピュータによって実施される方法であって、
    (a)ワークフローを開発することと、
    (b)前記ワークフローをパッケージすることと、
    (c)前記ワークフローをサーバ上にインストールすることと、
    (d)前記ワークフローを展開することと、
    (e)前記ワークフローを有効化することと、
    (f)前記ワークフローをスケジュールに関連付けることと、
    (g)前記ワークフローをインスタンス化することと、
    (h)前記ワークフローを終了することと
    を含むことを特徴とする方法。
  10. 前記ワークフローを開発することは、
    (a)ワークフローテンプレートを使用して、パラメータを含むワークフローフォームを設計することと、
    (b)前記ワークフローフォームの前記パラメータに値を割り当てることと
    を含むことを特徴とする請求項9に記載のコンピュータによって実施される方法。
  11. 前記ワークフローは、参加者によって実行される複数のタスクを含むことを特徴とする請求項9に記載のコンピュータによって実施される方法。
  12. 前記ワークフローは構造を有し、前記構造は宣言型言語によって記述されることを特徴とする請求項9に記載のコンピュータによって実施される方法。
  13. 前記ワークフローの構造は、他のワークフローを作成する際に使用するために記憶されることを特徴とする請求項11に記載のコンピュータによって実施される方法。
  14. ワークフローを管理するための、コンピュータによって実施される方法において、
    (a)フォームを作成するのに適したテンプレートを含む事前にプログラムされたコンポーネントからワークフローを作成することであって、前記テンプレートはパラメータを含むことと、
    (b)前記ワークフローフォームの前記パラメータに値を割り当てることと、
    (c)前記ワークフローフォームをサーバ上にインストールすることと、
    (d)参加者を前記ワークフローに関連付けることと
    を含むことを特徴とする方法。
  15. 参加者による使用のために前記ワークフローフォームを有効化することを含むことを特徴とする請求項14に記載のコンピュータによって実施される方法。
  16. 前記ワークフローフォームをドキュメントライブラリに関連付けることを含むことを特徴とする請求項14に記載のコンピュータによって実施される方法。
  17. 前記ワークフローは、前記参加者に関連付けられている複数のタスクを含むことを特徴とする請求項14に記載のコンピュータによって実施される方法。
  18. 前記ワークフローはスケジュールを含み、前記タスクは前記スケジュールに従って前記参加者に関連付けられることを特徴とする請求項14に記載のコンピュータによって実施される方法。
  19. 前記ワークフローは、前記タスクの達成状況のレポートを作成することを特徴とする請求項18に記載のコンピュータによって実施される方法。
  20. 前記ワークフローは構造を有し、前記構造は宣言型言語によって記述されることを特徴とする請求項14に記載のコンピュータによって実施される方法。
JP2005188274A 2004-09-29 2005-06-28 共同アプリケーションにおけるワークフローの関連付け Pending JP2006099728A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US61409604P 2004-09-29 2004-09-29
US11/087,123 US20060069605A1 (en) 2004-09-29 2005-03-22 Workflow association in a collaborative application

Publications (1)

Publication Number Publication Date
JP2006099728A true JP2006099728A (ja) 2006-04-13

Family

ID=35429626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005188274A Pending JP2006099728A (ja) 2004-09-29 2005-06-28 共同アプリケーションにおけるワークフローの関連付け

Country Status (5)

Country Link
US (1) US20060069605A1 (ja)
EP (1) EP1650700A3 (ja)
JP (1) JP2006099728A (ja)
KR (1) KR20060092816A (ja)
CN (1) CN1838068B (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009271821A (ja) * 2008-05-09 2009-11-19 Konica Minolta Business Technologies Inc ワークフロー制御装置、ワークフロー制御方法およびワークフロー制御プログラム
JP2010524129A (ja) * 2007-04-12 2010-07-15 トムソン ライセンシング メディア製作及び配信のためのワークフローエンジン
JP2010524128A (ja) * 2007-04-12 2010-07-15 トムソン ライセンシング ワークフローインターフェースのためのメッセージメカニズム
WO2013022002A1 (ja) * 2011-08-10 2013-02-14 みずほ情報総研 株式会社 情報管理システム及び情報管理方法
JP2014048699A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd 管理装置、管理方法およびプログラム
JP2015505627A (ja) * 2012-01-19 2015-02-23 マイクロソフト コーポレーション クラウドコンテンツの認識
JP2016029558A (ja) * 2014-06-20 2016-03-03 アセット・ソチエタ・ア・レスポンサビリタ・リミタータASSET S.r.l. ワークフロー管理システムにおいて実行するためのアプリケーションを開発する方法、及びワークフロー管理システムにおいて実行するためのアプリケーションの生成を支援する装置

Families Citing this family (214)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6948135B1 (en) 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
WO2001098928A2 (en) * 2000-06-21 2001-12-27 Microsoft Corporation System and method for integrating spreadsheets and word processing tables
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7155667B1 (en) * 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US7624356B1 (en) 2000-06-21 2009-11-24 Microsoft Corporation Task-sensitive methods and systems for displaying command sets
US7249195B2 (en) 2001-03-30 2007-07-24 Minor Ventures, Llc Apparatus and methods for correlating messages sent between services
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7275216B2 (en) * 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US7516145B2 (en) * 2003-03-31 2009-04-07 Microsoft Corporation System and method for incrementally transforming and rendering hierarchical data files
JP4240293B2 (ja) * 2003-05-27 2009-03-18 株式会社ソニー・コンピュータエンタテインメント マルチメディア再生装置およびマルチメディア再生方法
US7451392B1 (en) 2003-06-30 2008-11-11 Microsoft Corporation Rendering an HTML electronic form by applying XSLT to XML using a solution
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US8782020B2 (en) * 2003-11-18 2014-07-15 Oracle International Corporation Method of and system for committing a transaction to database
US7694143B2 (en) * 2003-11-18 2010-04-06 Oracle International Corporation Method of and system for collecting an electronic signature for an electronic record stored in a database
US20050108211A1 (en) * 2003-11-18 2005-05-19 Oracle International Corporation, A California Corporation Method of and system for creating queries that operate on unstructured data stored in a database
US7966493B2 (en) * 2003-11-18 2011-06-21 Oracle International Corporation Method of and system for determining if an electronic signature is necessary in order to commit a transaction to a database
US7600124B2 (en) * 2003-11-18 2009-10-06 Oracle International Corporation Method of and system for associating an electronic signature with an electronic record
US7650512B2 (en) 2003-11-18 2010-01-19 Oracle International Corporation Method of and system for searching unstructured data stored in a database
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
US7430711B2 (en) * 2004-02-17 2008-09-30 Microsoft Corporation Systems and methods for editing XML documents
US7318063B2 (en) * 2004-02-19 2008-01-08 Microsoft Corporation Managing XML documents containing hierarchical database information
JP4676784B2 (ja) * 2004-03-02 2011-04-27 株式会社リコー プロセス管理装置、プロセス管理方法及びプロセス管理プログラム
US7496837B1 (en) 2004-04-29 2009-02-24 Microsoft Corporation Structural editing with schema awareness
US7802007B2 (en) 2004-05-19 2010-09-21 Salesforce.Com, Inc. Techniques for providing connections to services in a network environment
US7281018B1 (en) 2004-05-26 2007-10-09 Microsoft Corporation Form template data source change
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US20060069596A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow hosting computing system using a collaborative application
US20060069599A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow tasks in a collaborative application
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US20060074933A1 (en) * 2004-09-30 2006-04-06 Microsoft Corporation Workflow interaction
US9645712B2 (en) 2004-10-01 2017-05-09 Grand Central Communications, Inc. Multiple stakeholders for a single business process
US8286092B2 (en) * 2004-10-14 2012-10-09 International Business Machines Corporation Goal based user interface for managing business solutions in an on demand environment
US20060101467A1 (en) * 2004-10-18 2006-05-11 International Business Machines Corporation Process execution management based on resource requirements and business impacts
US20060089866A1 (en) * 2004-10-27 2006-04-27 International Business Machines Corporation Computer system for exchanging workflows and methods thereof
US7657554B2 (en) * 2004-11-05 2010-02-02 Microsoft Corporation Method and system for managing user interface messages
US7712022B2 (en) 2004-11-15 2010-05-04 Microsoft Corporation Mutually exclusive options in electronic forms
US7721190B2 (en) 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US7904801B2 (en) 2004-12-15 2011-03-08 Microsoft Corporation Recursive sections in electronic forms
US7437376B2 (en) * 2004-12-20 2008-10-14 Microsoft Corporation Scalable object model
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
EP1843285A4 (en) * 2005-01-28 2014-06-11 Mitsubishi Electric Corp RUNNING MANAGEMENT APPROACH, RUNNING MANAGEMENT SYSTEM AND METHOD FOR PRODUCING A TEST SCENARIO
US20060184865A1 (en) * 2005-02-11 2006-08-17 Chakraborty Pallab B Method and system for managing an electronic document
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US8515790B2 (en) * 2005-03-05 2013-08-20 Jeb C Griebat Computer program and method for jury selection
JP2008538028A (ja) 2005-03-30 2008-10-02 ウェルチ アレン, インコーポレイテッド 複数のネットワーク構成要素間における情報の通信
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US20060242606A1 (en) * 2005-04-26 2006-10-26 International Business Machines Corporation Graphical roadmap view and framework for activity tracking and execution
US7543228B2 (en) * 2005-06-27 2009-06-02 Microsoft Corporation Template for rendering an electronic form
US7693861B2 (en) * 2005-06-28 2010-04-06 Microsoft Corporation Schematization of establishing relationships between applications
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
EP1764732A1 (en) * 2005-08-30 2007-03-21 Sap Ag Method and system for supporting object allocation processes
US20070061182A1 (en) * 2005-09-13 2007-03-15 Brooks Patrick J Workflow operational console
US7484173B2 (en) * 2005-10-18 2009-01-27 International Business Machines Corporation Alternative key pad layout for enhanced security
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US20070143163A1 (en) * 2005-12-16 2007-06-21 Sap Ag Systems and methods for organizing and monitoring data collection
US7822706B1 (en) 2005-12-29 2010-10-26 United Services Automobile Association (Usaa) Workflow administration tools and user interfaces
US7792872B1 (en) * 2005-12-29 2010-09-07 United Services Automobile Association Workflow administration tools and user interfaces
US7840526B1 (en) 2005-12-29 2010-11-23 United Services Automobile Association (Usaa) Workflow administration tools and user interfaces
US7792871B1 (en) * 2005-12-29 2010-09-07 United Services Automobile Association Workflow administration tools and user interfaces
US7752614B2 (en) * 2006-03-23 2010-07-06 International Business Machines Corporation Dynamic workflow documentation system
US20070239505A1 (en) * 2006-03-30 2007-10-11 Microsoft Corporation Abstract execution model for a continuation-based meta-runtime
US20070239498A1 (en) * 2006-03-30 2007-10-11 Microsoft Corporation Framework for modeling cancellation for process-centric programs
US20070244910A1 (en) * 2006-04-12 2007-10-18 Microsoft Corporation Business process meta-model
US7945891B2 (en) * 2006-04-12 2011-05-17 Microsoft Corporation Time business process validations within data context
US8886553B2 (en) * 2006-05-02 2014-11-11 Microsoft Corporation Visual workflow process notation and layout
US8365200B1 (en) 2006-06-30 2013-01-29 Sap Ag Using cancellation status models in a computer system
US8706776B1 (en) 2006-06-30 2014-04-22 Sap Ag Extending status models in a computer system
US8522261B2 (en) * 2006-06-30 2013-08-27 Sap Ag Using status models with state guards in a computer system
US8332253B1 (en) * 2006-07-27 2012-12-11 Adobe Systems Incorporated Just in time workflow construction
US8191059B1 (en) * 2006-08-10 2012-05-29 Amdocs Software Systems Limited System, method and computer program product for installing at least a portion of a program utilizing a workflow that models an installation process
US8484612B2 (en) * 2006-10-04 2013-07-09 Welch Allyn, Inc. Application generator for a dynamic medical object information base
US9508218B2 (en) 2006-11-10 2016-11-29 Bally Gaming, Inc. Gaming system download network architecture
US8930461B2 (en) * 2006-11-13 2015-01-06 Bally Gaming, Inc. Download and configuration management engine for gaming system
US8010397B1 (en) * 2007-01-23 2011-08-30 Sprint Communications Company L.P. Enterprise infrastructure development systems and methods
US9183524B2 (en) * 2007-02-21 2015-11-10 Novell, Inc. Imaged-based method for transport and authentication of virtualized workflows
US20080201191A1 (en) * 2007-02-21 2008-08-21 Novell, Inc. Dynamic workflow resource authentication and discovery
US20080249816A1 (en) * 2007-04-05 2008-10-09 Luke Khalilian System and Method for Monitoring Workflow in a Project Management System
US8296719B2 (en) * 2007-04-13 2012-10-23 International Business Machines Corporation Software factory readiness review
US8566777B2 (en) * 2007-04-13 2013-10-22 International Business Machines Corporation Work packet forecasting in a software factory
US8464205B2 (en) * 2007-04-13 2013-06-11 International Business Machines Corporation Life cycle of a work packet in a software factory
US8327318B2 (en) * 2007-04-13 2012-12-04 International Business Machines Corporation Software factory health monitoring
US8359566B2 (en) * 2007-04-13 2013-01-22 International Business Machines Corporation Software factory
US20080256390A1 (en) * 2007-04-13 2008-10-16 Chaar Jarir K Project Induction in a Software Factory
US8141040B2 (en) * 2007-04-13 2012-03-20 International Business Machines Corporation Assembling work packets within a software factory
US20080301699A1 (en) * 2007-06-01 2008-12-04 Macer Darren B Apparatus and methods for workflow management and workflow visibility
US20090012834A1 (en) * 2007-07-03 2009-01-08 Brian Fahey Compliance Management System
US8141030B2 (en) * 2007-08-07 2012-03-20 International Business Machines Corporation Dynamic routing and load balancing packet distribution with a software factory
US8065621B2 (en) 2007-08-07 2011-11-22 Appel Zvi System and method for graphical creation, editing and presentation of scenarios
US8332807B2 (en) * 2007-08-10 2012-12-11 International Business Machines Corporation Waste determinants identification and elimination process model within a software factory operating environment
US9442620B2 (en) * 2007-08-21 2016-09-13 Oracle International Corporation Navigation systems with event notification
US9189757B2 (en) * 2007-08-23 2015-11-17 International Business Machines Corporation Monitoring and maintaining balance of factory quality attributes within a software factory environment
US8539437B2 (en) * 2007-08-30 2013-09-17 International Business Machines Corporation Security process model for tasks within a software factory
US20090222277A1 (en) * 2008-03-03 2009-09-03 Microsoft Corporation Defining and implementing custom task processes
JP5233505B2 (ja) * 2008-03-17 2013-07-10 株式会社リコー 共同作業支援装置、共同作業支援システム、共同作業支援方法、プログラムおよび記録媒体
US20090241116A1 (en) * 2008-03-21 2009-09-24 Dell Products L.P. Systems and Methods for Automating Tasks Associated with an Application Packaging Job
US8504980B1 (en) 2008-04-14 2013-08-06 Sap Ag Constraining data changes during transaction processing by a computer system
US8230348B2 (en) * 2008-04-28 2012-07-24 Roger Peters Collaboration software with real-time synchronization
US8667469B2 (en) * 2008-05-29 2014-03-04 International Business Machines Corporation Staged automated validation of work packets inputs and deliverables in a software factory
US8595044B2 (en) * 2008-05-29 2013-11-26 International Business Machines Corporation Determining competence levels of teams working within a software
US8321784B1 (en) 2008-05-30 2012-11-27 Adobe Systems Incorporated Reviewing objects
US8452629B2 (en) * 2008-07-15 2013-05-28 International Business Machines Corporation Work packet enabled active project schedule maintenance
US8527329B2 (en) * 2008-07-15 2013-09-03 International Business Machines Corporation Configuring design centers, assembly lines and job shops of a global delivery network into “on demand” factories
US8286171B2 (en) 2008-07-21 2012-10-09 Workshare Technology, Inc. Methods and systems to fingerprint textual information using word runs
US8140367B2 (en) 2008-07-22 2012-03-20 International Business Machines Corporation Open marketplace for distributed service arbitrage with integrated risk management
US20100023920A1 (en) * 2008-07-22 2010-01-28 International Business Machines Corporation Intelligent job artifact set analyzer, optimizer and re-constructor
US8418126B2 (en) * 2008-07-23 2013-04-09 International Business Machines Corporation Software factory semantic reconciliation of data models for work packets
US8375370B2 (en) * 2008-07-23 2013-02-12 International Business Machines Corporation Application/service event root cause traceability causal and impact analyzer
US8271949B2 (en) * 2008-07-31 2012-09-18 International Business Machines Corporation Self-healing factory processes in a software factory
US8448129B2 (en) * 2008-07-31 2013-05-21 International Business Machines Corporation Work packet delegation in a software factory
US8336026B2 (en) * 2008-07-31 2012-12-18 International Business Machines Corporation Supporting a work packet request with a specifically tailored IDE
US9002721B2 (en) * 2008-10-08 2015-04-07 Appirio, Inc. System and method for project management and completion
US20100106547A1 (en) * 2008-10-29 2010-04-29 Asaf Adi Automated workflow generation
US20100131322A1 (en) * 2008-11-21 2010-05-27 Computer Associates Think, Inc. System and Method for Managing Resources that Affect a Service
US9354847B2 (en) * 2008-12-29 2016-05-31 Microsoft Technology Licensing, Llc Interface infrastructure for a continuation based runtime
US20130124242A1 (en) 2009-01-28 2013-05-16 Adobe Systems Incorporated Video review workflow process
US9268532B2 (en) 2009-02-25 2016-02-23 International Business Machines Corporation Constructing a service oriented architecture shared service
US9292481B2 (en) 2009-02-27 2016-03-22 Adobe Systems Incorporated Creating and modifying a snapshot of an electronic document with a user comment
US8930843B2 (en) 2009-02-27 2015-01-06 Adobe Systems Incorporated Electronic content workflow review process
US20100241990A1 (en) * 2009-03-23 2010-09-23 Microsoft Corporation Re-usable declarative workflow templates
US8442937B2 (en) * 2009-03-31 2013-05-14 Microsoft Corporation Access to line-of-business databases in declarative workflow
US20100257010A1 (en) * 2009-04-07 2010-10-07 International Business Machines Corporation Managing a service oriented architecture lifecycle
JP5294975B2 (ja) * 2009-05-14 2013-09-18 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
US20100299170A1 (en) * 2009-05-19 2010-11-25 Microsoft Corporation Stages, Phases in a Project Workflow
US8943408B2 (en) 2009-05-27 2015-01-27 Adobe Systems Incorporated Text image review process
US8943431B2 (en) 2009-05-27 2015-01-27 Adobe Systems Incorporated Text operations in a bitmap-based document
US20100332278A1 (en) * 2009-06-25 2010-12-30 Stern Edith H Project management via collaborative calendaring
AU2010275473C1 (en) 2009-07-24 2014-02-27 Welch Allyn, Inc. Configurable health-care equipment apparatus
US20110106713A1 (en) * 2009-10-30 2011-05-05 Realization Technologies, Inc. Post facto identification and prioritization of causes of buffer consumption
US8380552B2 (en) * 2009-12-11 2013-02-19 Verizon Patent And Licensing Inc. Method and system for estimating project delay
US8910054B2 (en) * 2010-04-14 2014-12-09 Bank Of America Corporation Audit action analyzer
US20110313934A1 (en) * 2010-06-21 2011-12-22 Craig Ronald Van Roy System and Method for Configuring Workflow Templates
USD671222S1 (en) 2010-07-22 2012-11-20 Welch Allyn, Inc. Module for a patient-monitor or the like
USD632397S1 (en) 2010-07-22 2011-02-08 Welch Allyn, Inc. Portions of a patient-monitor housing
USD635681S1 (en) 2010-07-22 2011-04-05 Welch Allyn, Inc. Patient-monitor housing
US8407073B2 (en) 2010-08-25 2013-03-26 International Business Machines Corporation Scheduling resources from a multi-skill multi-level human resource pool
US9595014B1 (en) * 2010-09-24 2017-03-14 American Airlines, Inc. System and method for executing workflow instance and modifying same during execution
CN102467504B (zh) * 2010-11-03 2014-01-01 南京莱斯信息技术股份有限公司 一种基于关系数据库的工作流引擎系统的设计方法
US10783326B2 (en) 2013-03-14 2020-09-22 Workshare, Ltd. System for tracking changes in a collaborative document editing environment
US20120136862A1 (en) 2010-11-29 2012-05-31 Workshare Technology, Inc. System and method for presenting comparisons of electronic documents
US9324049B2 (en) * 2010-12-30 2016-04-26 Schlumberger Technology Corporation System and method for tracking wellsite equipment maintenance data
US8548941B2 (en) * 2011-02-15 2013-10-01 Robert E. Napierala Document management system and method
ES2402977B1 (es) * 2011-04-15 2014-02-11 Telefónica, S.A. Método y sistema para generar y gestionar aplicaciones nativas
US9613340B2 (en) * 2011-06-14 2017-04-04 Workshare Ltd. Method and system for shared document approval
US10032121B2 (en) * 2011-06-13 2018-07-24 Marketing Evolution System and method for managing and implementing procedures and practices
US8660878B2 (en) 2011-06-15 2014-02-25 International Business Machines Corporation Model-driven assignment of work to a software factory
US8620704B1 (en) * 2011-07-19 2013-12-31 Realization Technologies, Inc. Full-kit management in projects: determining the full-kit date
US8626542B1 (en) * 2011-07-19 2014-01-07 Realization Technologies, Inc. Full-kit management in projects: computing the full-kit delay
US8620703B1 (en) * 2011-07-19 2013-12-31 Realization Technologies, Inc. Full-kit management in projects: checking full-kit compliance
EP2551811A1 (en) * 2011-07-26 2013-01-30 Tata Consultancy Services Limited Method and system for integrating event processes in investment banking and custody lines of business
JP5891664B2 (ja) * 2011-09-08 2016-03-23 富士ゼロックス株式会社 情報管理装置、プログラム、および情報管理システム
US9911089B2 (en) * 2011-09-16 2018-03-06 Oracle International Corporation Email client with ERP task integration
US9395959B2 (en) 2011-12-09 2016-07-19 Microsoft Technology Licensing, Llc Integrated workflow visualization and editing
US20130152038A1 (en) * 2011-12-09 2013-06-13 Microsoft Corporation Project management workflows
US20130158964A1 (en) * 2011-12-14 2013-06-20 Microsoft Corporation Reusable workflows
US20130166309A1 (en) * 2011-12-22 2013-06-27 Johann Kemmer Business process adaptation techiques
US9208122B2 (en) 2012-01-17 2015-12-08 Microsoft Technology Licensing, Llc Client application integration for workflows
US8996472B2 (en) 2012-04-16 2015-03-31 Sap Se Verification of status schemas based on business goal definitions
US8996473B2 (en) 2012-08-06 2015-03-31 Sap Se Checking compatibility of extended and core SAM schemas based on complex goals
US11144854B1 (en) 2012-09-18 2021-10-12 Taskworld Holdings Pte. Ltd. Digital pinboard system
JP6079171B2 (ja) 2012-11-29 2017-02-15 株式会社リコー 画像形成装置、画像形成方法及びプロセスカートリッジ
ES2631806T3 (es) * 2013-01-11 2017-09-05 Nuglif Inc. Sistema y método para generar una edición digital
US10055202B2 (en) * 2013-02-13 2018-08-21 Sandhills Publishing Co. Business process workflow system
US9818078B1 (en) * 2013-03-12 2017-11-14 Amazon Technologies, Inc. Converting a non-workflow program to a workflow program using workflow inferencing
JP6064734B2 (ja) * 2013-03-27 2017-01-25 富士通株式会社 ワークフロー制御プログラム、装置および方法
US20140317590A1 (en) * 2013-04-17 2014-10-23 International Business Machines Corporation Automating the analysis of application lifecycle management data for software developement
CN104969185B (zh) * 2013-04-29 2018-10-12 安提特软件有限责任公司 存储介质、将非结构化事件记录在上下文中的系统和方法
US10417594B2 (en) 2013-05-02 2019-09-17 Sap Se Validation of functional correctness of SAM schemas including action chains
US9262239B2 (en) * 2013-05-10 2016-02-16 Adobe Systems Incorporated User-creatable custom workflows
US20160094414A1 (en) * 2013-05-15 2016-03-31 Client Lifecycle Solutions LLC System, method and computer-implemented algorithm for client lifecycle exchange management
CN105247548B (zh) * 2013-05-21 2019-09-10 思杰系统有限公司 基于应用的协作工作空间系统中的用户定义工作流
CN104216912B (zh) * 2013-06-04 2017-10-27 广州中国科学院软件应用技术研究所 一种无侵入式的业务表单工作流化的实现方法与装置
US9767138B2 (en) 2013-06-12 2017-09-19 Oracle International Corporation In-database sharded queue for a shared-disk database
US9792349B2 (en) * 2013-06-12 2017-10-17 Oracle International Corporation In-database sharded queue
FR3011661A1 (fr) * 2013-10-04 2015-04-10 Bull Sas Procede de dematerialisation d'une demarche
US20150121386A1 (en) * 2013-10-25 2015-04-30 Sap Ag Indicating status, due date, and urgency for a listed task by a task tracking control
US20150248203A1 (en) * 2014-03-03 2015-09-03 Microsoft Technology Licensing, Llc Portable business logic with branching and gating
US20150262113A1 (en) * 2014-03-11 2015-09-17 Bank Of America Corporation Work status monitoring and reporting
US9646081B1 (en) 2014-06-30 2017-05-09 Open Text Corporation System and method to present a summarized task view in a case management system
WO2016099539A1 (en) * 2014-12-19 2016-06-23 Hewlett Packard Enterprise Development Lp Model-driven architecture for user-centered design
US11023117B2 (en) * 2015-01-07 2021-06-01 Byron Burpulis System and method for monitoring variations in a target web page
US20160232491A1 (en) * 2015-02-09 2016-08-11 Max Nalsky Flexible workflow automation system
US10467050B1 (en) * 2015-04-06 2019-11-05 State Farm Mutual Automobile Insurance Company Automated workflow creation and management
KR101769423B1 (ko) * 2016-11-08 2017-08-22 최재호 대화방 기반의 리마인더 방법 및 장치
US10528327B2 (en) 2015-11-23 2020-01-07 Microsoft Technology Licensing Llc Workflow development system with ease-of-use features
KR102075384B1 (ko) * 2015-11-27 2020-02-11 한국전자통신연구원 워크플로우 조합 시스템 및 그 방법
US10091123B2 (en) * 2015-12-14 2018-10-02 Bank Of America Corporation System and user interface for coordinating distributed workflow between multiple computing systems
US10331416B2 (en) * 2016-04-28 2019-06-25 Microsoft Technology Licensing, Llc Application with embedded workflow designer
US9996404B2 (en) 2016-09-01 2018-06-12 Oracle International Corporation Message cache management for message queues
US10540217B2 (en) 2016-09-16 2020-01-21 Oracle International Corporation Message cache sizing
US10452456B2 (en) 2016-12-27 2019-10-22 Dropbox, Inc. Kernel event triggers
US20180314548A1 (en) * 2017-04-27 2018-11-01 Microsoft Technology Licensing, Llc Work item management in content management systems
US20180374015A1 (en) * 2017-05-30 2018-12-27 Open Text Sa Ulc Systems and methods of activity flows in lifecycle models
US11550565B1 (en) 2017-07-21 2023-01-10 State Farm Mutual Automobile Insurance Company Method and system for optimizing dynamic user experience applications
US10318285B1 (en) * 2017-08-16 2019-06-11 Amazon Technologies, Inc. Deployment of infrastructure in pipelines
US10678614B2 (en) 2017-11-30 2020-06-09 Oracle International Corporation Messages with delayed delivery in an in-database sharded queue
CN109978482A (zh) * 2017-12-27 2019-07-05 华为技术有限公司 工作流处理方法、装置、设备及存储介质
WO2020097522A1 (en) * 2018-11-08 2020-05-14 airSlate Inc. Automated electronic document workflows
US11593802B1 (en) * 2019-06-27 2023-02-28 Domunus Inc. Systems and methods for designing, designating, performing, and completing automated workflows between multiple independent entities
CN110991983B (zh) * 2019-11-05 2023-10-13 泰康保险集团股份有限公司 一种任务处理方法、装置、介质和设备
CN112764652A (zh) * 2021-02-02 2021-05-07 新奥数能科技有限公司 基于工作流引擎的数据存储方法、装置、设备和介质
US11444903B1 (en) * 2021-02-26 2022-09-13 Slack Technologies, Llc Contextual discovery and design of application workflow
CN115713297A (zh) * 2021-08-18 2023-02-24 北京字跳网络技术有限公司 信息处理方法、装置、终端和存储介质
CN113687859B (zh) * 2021-08-18 2024-04-19 上海浦东发展银行股份有限公司 一种软件开发的分支管理方法、装置、电子设备及介质
US20230169616A1 (en) * 2021-11-30 2023-06-01 Properoots Incorporated Cryptographic authentication of actions associated with real property
US11947949B2 (en) * 2022-01-25 2024-04-02 Salesforce, Inc. Techniques for data package generation
KR20230116420A (ko) * 2022-01-28 2023-08-04 최현규 스마트태그 기반의 업무처리장치 및 업무처리방법
CN117289951B (zh) * 2023-11-22 2024-04-02 华信咨询设计研究院有限公司 一种基于递归原则的软件系统多应用自动部署方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09171529A (ja) * 1995-12-20 1997-06-30 Fujitsu Ltd 動的計画管理装置及び動的計画管理方法
WO2003034285A1 (en) * 2001-10-18 2003-04-24 Bea Systems, Inc. Application view component for system integration

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6947959B1 (en) * 1992-10-01 2005-09-20 Quark, Inc. Digital media asset management system and process
US5999911A (en) * 1995-06-02 1999-12-07 Mentor Graphics Corporation Method and system for managing workflow
US5960420A (en) * 1996-09-11 1999-09-28 International Business Machines Corporation Systems, methods and computer program products for implementing a workflow engine in database management system
US6430538B1 (en) * 1998-04-30 2002-08-06 Enterworks Workflow management system, method and medium with personal subflows
US20010044738A1 (en) * 2000-03-22 2001-11-22 Alex Elkin Method and system for top-down business process definition and execution
WO2001097073A1 (en) * 2000-06-14 2001-12-20 Verticore Technologies Device and method for organizing and presenting worker tasks in a network-based portal environment
US20020055849A1 (en) * 2000-06-30 2002-05-09 Dimitrios Georgakopoulos Workflow primitives modeling
US20020075293A1 (en) * 2000-09-01 2002-06-20 Dietrich Charisius Methods and systems for animating a workflow and a project plan
US7802174B2 (en) * 2000-12-22 2010-09-21 Oracle International Corporation Domain based workflows
US7069536B2 (en) * 2001-06-28 2006-06-27 International Business Machines Corporation Method, system, and program for executing a workflow
KR100500329B1 (ko) * 2001-10-18 2005-07-11 주식회사 핸디소프트 워크플로우 마이닝 시스템 및 방법
US7389335B2 (en) * 2001-11-26 2008-06-17 Microsoft Corporation Workflow management based on an integrated view of resource identity
US20030195785A1 (en) * 2002-04-15 2003-10-16 Honeywell Inc. Token based control flow for workflow
US8613102B2 (en) * 2004-03-30 2013-12-17 Intellectual Ventures I Llc Method and system for providing document retention using cryptography
US7653562B2 (en) * 2002-07-31 2010-01-26 Sap Aktiengesellschaft Workflow management architecture
US20040078776A1 (en) * 2002-09-03 2004-04-22 Charles Moon System and method for browser-based arbitration in classification workflows
US7689443B2 (en) * 2002-12-31 2010-03-30 Employers Reinsurance Corporation Methods and structure for insurance industry workflow processing
US7454742B2 (en) * 2003-03-01 2008-11-18 International Business Machines Corporation System and method for automatically starting a document on a workflow process
US7589851B2 (en) * 2003-04-02 2009-09-15 Agfa Graphics Nv System for job control of a document processing system and method for job control of document processing process
WO2004102454A2 (en) * 2003-05-07 2004-11-25 Sap Aktiengesellschaft An end user oriented workflow approach including structured processing of ad hoc workflows with a collaborative process engine
US20040260593A1 (en) * 2003-05-20 2004-12-23 Klaus Abraham-Fuchs System and user interface supporting workflow operation improvement
JP2005050318A (ja) * 2003-07-16 2005-02-24 Ricoh Co Ltd ワークフロー管理装置、ワークフロー管理方法、ワークフロー管理プログラム及び記録媒体
CN1545024A (zh) * 2003-11-20 2004-11-10 威盛电子股份有限公司 工作流程管理方法及记录媒体
US20060069599A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow tasks in a collaborative application
US20060069596A1 (en) * 2004-09-29 2006-03-30 Microsoft Corporation Workflow hosting computing system using a collaborative application

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09171529A (ja) * 1995-12-20 1997-06-30 Fujitsu Ltd 動的計画管理装置及び動的計画管理方法
WO2003034285A1 (en) * 2001-10-18 2003-04-24 Bea Systems, Inc. Application view component for system integration

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010524129A (ja) * 2007-04-12 2010-07-15 トムソン ライセンシング メディア製作及び配信のためのワークフローエンジン
JP2010524128A (ja) * 2007-04-12 2010-07-15 トムソン ライセンシング ワークフローインターフェースのためのメッセージメカニズム
US9400961B2 (en) 2007-04-12 2016-07-26 Gvbb Holdings S.A.R.L. Message mechanism for workflow interfacing
JP2009271821A (ja) * 2008-05-09 2009-11-19 Konica Minolta Business Technologies Inc ワークフロー制御装置、ワークフロー制御方法およびワークフロー制御プログラム
WO2013022002A1 (ja) * 2011-08-10 2013-02-14 みずほ情報総研 株式会社 情報管理システム及び情報管理方法
JP5615440B2 (ja) * 2011-08-10 2014-10-29 みずほ情報総研株式会社 情報管理システム及び情報管理方法
US9628496B2 (en) 2011-08-10 2017-04-18 Mizuho Information & Research Institute, Inc. Information management system and information management method
US10013571B2 (en) 2011-08-10 2018-07-03 Mizuho Information & Research Institute, Inc. Information management system and information management method
JP2015505627A (ja) * 2012-01-19 2015-02-23 マイクロソフト コーポレーション クラウドコンテンツの認識
JP2014048699A (ja) * 2012-08-29 2014-03-17 Fujitsu Ltd 管理装置、管理方法およびプログラム
JP2016029558A (ja) * 2014-06-20 2016-03-03 アセット・ソチエタ・ア・レスポンサビリタ・リミタータASSET S.r.l. ワークフロー管理システムにおいて実行するためのアプリケーションを開発する方法、及びワークフロー管理システムにおいて実行するためのアプリケーションの生成を支援する装置

Also Published As

Publication number Publication date
CN1838068B (zh) 2011-06-22
KR20060092816A (ko) 2006-08-23
EP1650700A3 (en) 2006-05-17
CN1838068A (zh) 2006-09-27
US20060069605A1 (en) 2006-03-30
EP1650700A2 (en) 2006-04-26

Similar Documents

Publication Publication Date Title
JP2006099728A (ja) 共同アプリケーションにおけるワークフローの関連付け
KR100984435B1 (ko) 크로스 프로젝트 커미트먼트를 제공하기 위한 방법 및시스템
AU2001249273B2 (en) Method and system for top-down business process definition and execution
US7975239B2 (en) System and method for providing metadata interaction and visualization with task-related objects
US8095411B2 (en) Guided procedure framework
US7930268B2 (en) Workflow method, system, and data structure
US7756820B2 (en) Activity browser
US20060069596A1 (en) Workflow hosting computing system using a collaborative application
US6832201B1 (en) Method and system for optimizing request shipping in workflow management systems
US20030074090A1 (en) System and method for improving operational efficiency through process automation
US20200234213A1 (en) Method and system for implementing an adaptive data governance system
US20070038963A1 (en) Methods and apparatus for process thumbnail view
US20040187140A1 (en) Application framework
AU2001249273A1 (en) Method and system for top-down business process definition and execution
WO2013055554A1 (en) Method and system for allocation of resources in an agile environment
KR20060048381A (ko) 컴퓨터-사용가능 프로젝트 관리 방법 및 시스템에서의계층적인 프로젝트들
US20100146427A1 (en) Task decomposition with data availability
US20090222277A1 (en) Defining and implementing custom task processes
US20070027909A1 (en) Methods and apparatus for comparison of projects
GB2457552A (en) Management of artifacts in collaborative software development
Majekodunmi et al. The ProcessMaker Workflow Designer
Stoitsev et al. An Architecture for End-User Driven Business Process Management
Chen et al. A process-oriented configurable workflow system model for cooperative project management
Wasserfuhr et al. Distributed Management of Co-operative Design Processes
Maschke Execution and Re-evaluation of BPMN Processes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111109

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20111125