ワークフローの概要 (SharePoint Foundation 2010)

 

適用先: SharePoint Foundation 2010

Microsoft SharePoint Foundation 2010 のワークフロー 機能を使用することで、ソリューション アーキテクト、設計者、および管理者は、ビジネス プロセスを改善できます。基本的に、ワークフローは、ユーザーとのやり取りに使用されるフォームと、ワークフローの動作を定義するロジックという 2 つの要素で構成されます。ワークフローの作成方法を理解するには、これら双方に関する知識が必要です。

この記事の内容

  • ワークフローの概要

  • ワークフローを使用する利点

  • 定義済みのワークフロー

  • ワークフローのサンプル シナリオ

  • ワークフローの種類: 宣言型とコード ベース

  • ワークフロー テンプレート

  • ワークフローの関連付け

ワークフローの概要

SharePoint Foundation 2010 のワークフローを使用すると、ビジネス プロセスを実行するときの社員間の不要な対話の量を削減できます。たとえば、通常、何かを決定するまでには、グループで行う一連の手順があります。このような手順には、公式の標準運用手順と、暗黙で了承されている非公式の運用手順があります。どちらの手順もビジネス プロセスを表します。ビジネス プロセスで発生する人的対話の数が多いと、意思決定の速度と品質を阻害する要因になります。このような "ヒューマン ワークフロー" を簡素化して管理するソフトウェアを導入すると、プロセスに参加するグループ間の対話を自動化できます。この自動化によって、対話の速度と全体的効率性が向上し、多くの場合はエラーも削減されます。

Microsoft Visio 2010 で作成するようなフロー チャートを使用してビジネス プロセスをモデル化でき、ワークフローの用語を使用してビジネス プロセスを表現できます。文書の承認のようなビジネス プロセスは、ワークフローを SharePoint Foundation 2010 のデータと関連付けることで自動化できます。たとえば、レビューのために文書を回覧したり、解決に至るまでのさまざまな段階で問題を追跡したり、契約を承認プロセスに通したりするワークフローを作成できます。

インフォメーション ワーカーの参加が必要なビジネス プロセスを実装する際に多くの IT 部門が直面する問題の 1 つとして、それらのプロセスが実際の作業方法と融和しないことがあります。ビジネス プロセスを効果的に機能させるには、そのプロセスがインフォメーション ワーカーの日常業務の一部となるように、職場で日々使用している使い慣れたツールやアプリケーションと統合する必要があります。電子化された職場では、電子メール、予定表、タスク リスト、およびグループ作業 Web サイトとの統合もこれに含まれます。

ワークフローを使用する利点

ワークフローを使用する主な利点は、ビジネス プロセスの促進とグループ作業の向上です。

企業で使用するビジネス プロセスは情報またはドキュメントのフローに依存します。このようなビジネス プロセスでは、インフォメーション ワーカーが積極的に参加してワークグループの意思決定や成果物につながる作業を行う必要があります。SharePoint Foundation 2010 では、この種のビジネス プロセスの実装と管理にワークフローを使用します。

ワークフローが役立つビジネス プロセスの例を以下に示します。

  • 契約の承認   契約を承認または却下する必要がある組織内メンバーに、提案された契約を示します。

  • 経費報告書   経費報告書および関連する領収書の提出管理、確認、承認、および提出者への払い戻しを行います。

  • テクニカル サポート   テクニカル サポート インシデントの進捗を管理します。顧客がインシデントを報告すると、サポート技術者がその内容を調べ、技術者が解決を図り、最終的にナレッジ ベースに追加されます。

  • 面接   就職希望者の面接の進捗状況を管理します。これには、面接日のスケジュールを管理し、面接のフィードバックを収集し、そのフィードバックを次の面接担当者が利用できるようにし、採用/不採用の決定を容易にすることが含まれます。

ビジネス プロセスの自動化

ビジネスの成否はビジネス プロセスにかかっています。ビジネス プロセスではソフトウェアを使用する機会も多いものの、多くの組織においては、最も重要なプロセスは人間に任されています。ワークフローを使用すると、プロセスに関与する人と人との間の情報交換を自動化して、そのプロセスの機能を強化し、効率を高めると共にエラー発生率を下げることができます。

人的対話の自動化サポートは多くのプロセスに役立ちます。以下に例を示します。

  • 承認   一般に、人間主導のビジネス プロセスでは複数の参加者による承認が必要となります。承認の対象は、来年度のマーケティング計画が盛り込まれた Microsoft Word 文書から、会議への出張に伴う経費報告書まで多岐にわたります。いずれの場合も、複数の担当者が情報を確認し、必要に応じてコメントを追加し、承認または却下を表明する必要があります。

  • グループ作業の調整   提案依頼書 (RFP) に対する返答を作成するプロセス、ドキュメントの他言語への翻訳を管理するプロセス、その他多くのプロセスでは、組織化されたグループ作業が必要です。自動化されたワークフローでプロセスの各手順を定義すると、グループ作業の効率を高め、プロセス自体の予測を容易にできます。

  • 案件管理   多くのビジネス プロセスでは、未解決の問題のリストが作成されます。自動化されたワークフローを使用すると、そのリストを管理し、問題の解決に適切な人材を割り当て、解決の状況を追跡できます。

このようなビジネス プロセスの自動化をサポートするために、SharePoint Foundation 2010 でワークフロー アプリケーションを実行できます。これらのアプリケーションは、Windows Workflow Foundation 3.5 に基づいており、ユーザーは Web ブラウザーを介してこれを使用します。Windows Workflow Foundation 3.5 の詳細については、「Windows Workflow Foundation」(https://go.microsoft.com/fwlink/?linkid=127778&clcid=0x411) を参照してください。

ワークフローによるグループ作業の向上

ワークフローを使用して SharePoint サイトまたはサイト コレクションのドキュメントやアイテムにビジネス プロセスを実装すると、ドキュメントのグループ作業やプロジェクト タスクの管理が容易になります。ワークフローは、組織が一貫したビジネス プロセスを実践するのに役立ちます。ワークフローでビジネス プロセスに関係するタスクと手順を管理することで、組織の効率性と生産性が向上します。ワークフローを導入すると、適切な担当者が必要なときに適切な情報を利用できるようになり、意思決定までの時間が短縮されます。また、ワークフローによって、ワークフローの個別のタスクが適切な担当者によって適切な順序で確実に完了されるようになります。これにより、タスクを実行する担当者は、作業のプロセスではなく作業の実行に集中できるようになります。

たとえば、SharePoint Foundation 2010 サイトでは、ドキュメント ライブラリと併用するワークフローを作成して、承認のためにドキュメントをユーザーのグループに回覧できます。作成者がこのワークフローを開始すると、ワークフローによってドキュメント承認タスクが作成され、そのタスクがワークフローの参加者に割り当てられた後、電子メール通知が参加者に送信されます。

ワークフローが行われている間、ワークフローの所有者またはワークフローの参加者は、[ワークフローの状態] ページで進捗を確認できます。ワークフローの参加者がワークフロー タスクを完了すると、ワークフローは終了し、ワークフローの所有者にワークフロー終了通知が自動的に送信されます。

定義済みのワークフロー

Microsoft SharePoint Foundation 2010 で作成されたサイトとサイト コレクションの場合は、定義済みの 3 段階の状態管理ワークフローが既定で含まれており、これが SharePoint Foundation 2010 で利用できる唯一の定義済みワークフローです。3 段階の状態管理ワークフローは、組織で大量の案件やアイテム (顧客サポート案件、潜在顧客、プロジェクト タスクなど) を追跡することが必要とされるビジネス プロセスを管理する場合に使用できます。

3 段階の状態管理ワークフローという名前の由来は、案件やアイテムの状態を 3 つの段階および各段階の間の 2 つの移行期で追跡することにあります。たとえば、案件リストの案件について 3 段階の状態管理ワークフローが開始されると、SharePoint Foundation 2010 では担当ユーザーにタスクが作成されます。そのユーザーがタスクを完了すると、ワークフローの状態が初期状態 (未解決) から中間状態 (解決済み) に変わり、担当ユーザーにタスクが作成されます。そのユーザーがタスクを完了すると、ワークフローの状態が中間状態 (解決済み) から最終状態 (終了) に変わり、その時点でワークフローを割り当てられるユーザーに別のタスクが作成されます。3 段階の状態管理ワークフローをリストに関連付けると、未解決、解決済み、終了のいずれでもない別の状態名を指定できます。また、3 段階の状態管理ワークフローは、ライブラリでの使用がサポートされていません。

定義済みのワークフローのコピーを作成して、そのコピーを元にカスタム ワークフローを作成することもできます。

ワークフローのサンプル シナリオ

世界的に自転車を販売する Adventure Works というフランチャイズのスポーツ店について考えてみます。この会社には、新しくスポーツ店を開く新規フランチャイズ加盟者を支援するためにさまざまな国を訪れる営業担当者がいます。

ここでは、経費報告書を提出して承認を受けるシナリオについて説明します。5,000 ドル未満の経費報告書は、マネージャーが承認、却下、または転送する必要があります。5,000 ドル以上の経費報告書は、マネージャーが確認してコメントを付け、マネージャーが承認を推奨する場合は副社長に転送し、副社長が承認または却下する必要があります。

このシナリオで使用される経費報告書のフォームは、SharePoint Web ページでユーザーに対して表示される ASPX フォームです。ワークフローは Microsoft SharePoint Designer 2010 で作成される順次承認タイプのワークフロー プロジェクトであり、自動タスクとユーザーのアクションが必要なタスクの両方で構成されます。ワークフローは SharePoint Foundation 2010 上で実行されます。

  1. 最初のワークフロー参加者である営業担当者は、イントラネットのセルフサービス ポータルを参照して、経費報告書フォームを選択します。データ入力ページが開きます。営業担当者は、最初に、氏名、経費目的、経費合計、担当者の直属マネージャーの氏名と電子メール アドレスの入力項目がある簡単な経費報告書フォームに入力します。その後、担当者は [送信] をクリックしてフォームを送信します。

    フォームが送信されると、データは 1 か所に保存されて、ワークフローが開始され、確認タスクが承認者 (この場合は、営業担当者のマネージャー) に割り当てられます。

  2. ワークフローによって、営業担当者のマネージャーに通知が送られます。電子メール メッセージで送られる通知には、タスクを完了するための指示と、経費報告書フォームを表示する Web サイトへのリンクが含まれています。

  3. 2 番目のワークフロー参加者であるマネージャーは、Web サイトにアクセスして経費報告書を確認します。ワークフローのタスク アイテムでは、マネージャーが実行できる承認、却下、転送の 3 つのアクションが提供されています。

    • 経費報告書が 5,000 ドル未満の場合は、経費報告書を "承認" または "却下" するオプションが表示されます。

    • 経費報告書が 5,000 ドル以上の場合は、経費報告書を会社の副社長に "転送" するオプションと、マネージャーのレベルで経費報告書を "却下" するオプションが表示されます。

  4. マネージャーが経費報告書を承認、却下、または転送するアクションを実行すると、ワークフローが続行します。

    • マネージャーが経費を承認すると、タスクの完了によって、タスクが完了したことを示すメッセージがワークフローに送信されます。ワークフローによって、電子メール メッセージで営業担当者に通知が送られた後、経費データが基幹業務 (LOB) の経理システムに追加されます。

    • 経費を却下する場合、マネージャーはその決定についての説明を入力します。タスクの完了によって、タスクが完了したことを示すメッセージがワークフローに送信され、ワークフローによって電子メール メッセージで営業担当者に通知が送られます。

    • 経費報告書を会社の副社長に転送する場合、マネージャーは関連するコメントをフォームに入力した後、[転送] をクリックします。ワークフローによって、タスクを完了するための指示と、経費報告書フォームを表示する Web サイトへのリンクが含まれる通知が、電子メール メッセージで副社長に送信されます。

  5. 3 番目のワークフロー参加者である副社長に対しては、経費報告書を "承認" または "却下" するオプションが提示されます。副社長が経費報告書を承認または却下すると、ワークフローが続行します。

    • 副社長が経費を承認すると、経費データが経理システムに追加され、ワークフローによって営業担当者とマネージャーに電子メールで通知が送られた後、SharePoint にタスクの完了が通知されます。

    • 経費を却下する場合、副社長は決定の説明を入力します。ワークフローによって営業担当者とマネージャーに電子メールで通知が送られた後、SharePoint にタスクの完了が通知されます。

このワークフローの機能は、このシナリオの範囲内でもさまざまな方法で拡張できます。たとえば、副社長が経費報告書を却下した場合に、報告書が営業担当者のマネージャーに返されるようにワークフローを構成することもできます。これによって、報告書を返されたマネージャーは、経費の妥当性を説明して副社長の承認を受けるために再送信するか、営業担当者に却下を通知するか、その他のアクションを実行できます。

この経費報告書のサンプル シナリオにおいては常に同じビジネス ルールが使用されています。このワークフロー ソリューションでは、マネージャーと副社長が承認者として定義され、ワークフローのルーティングのビジネス ロジックが定義され、通知の内容が事前に定義されています。しかし、現実のアプリケーションの多くには、複雑なビジネス ルールがあります。承認のためのルーティングは、ビジネスのさまざまな可変要素によって異なります。通知も別の可変要素に応じて変わります。

たとえば、同じ経費報告ソリューションでも、経費の目的、経費の合計額、および提出の日付によっては、10 人のマネージャーに経費報告書を送ることが必要になる場合もあります。また、ワークフローから送信される通知の内容も、経費の目的に応じて少しずつ異なることがあります。このような場合、ルーティング レベルと通知の内容が異なる複数のワークフロー ソリューションが必要となります。

Microsoft SharePoint Foundation 2010 を使用すれば、組織のビジネス ニーズを満たすワークフロー ソリューションを作成して実装できます。そのために、SharePoint Designer 2010 および Microsoft Visual Studio のワークフローの設計機能とカスタマイズ機能が利用されます。

ワークフローの種類: 宣言型とコンパイル済み

ワークフローを理解するには、Microsoft SharePoint Designer 2010 を使用して作成するような宣言型ワークフローと、Visual Studio 2010 を使用して作成するようなコンパイル済みワークフローの違いを知ることが重要です。宣言型ワークフローは、ルールと手順に組み合わせる条件とアクションから作成され、コードを記述せずにワークフローのパラメーターを設定するワークフローです。

コンパイル済みワークフローも、宣言型ワークフローと同様に、ワークフロー作成者がコードを記述することなく条件とアクションから作成できますが、このワークフローにはカスタム コードを追加することもできます。ワークフロー作成者がコード ベースのワークフローにカスタム コードを追加するかどうかに関係なく、宣言型ワークフローとコンパイル済みワークフローの最も重要な相違点は、サーバー上の実行方法の違いです。コンパイル済みワークフローは、SharePoint Foundation 2010 を実行するサーバーに、コンパイル済み dll ファイルとして格納されるのに対し、宣言型ワークフローは、SharePoint Foundation 2010 を実行するサーバーに、XOML (Extensible Object Markup Language) ファイルとして格納され、そのワークフローのインスタンスが開始されるたびにコンテンツ データベース内にコンパイルされます。

マイクロソフトがサポートするワークフロー作成ツールの詳細については、「ワークフロー作成ツールを選択する (SharePoint Foundation)」を参照してください。

ワークフロー テンプレート

SharePoint Designer 2010 を使用してカスタム ワークフローを作成する場合、特定のリスト、ライブラリ、コンテンツ タイプ、またはサイトのみに使用するワークフローを作成できます。一方、再利用可能なワークフローを作成して複数のリスト、ライブラリ、コンテンツ タイプ、またはサイトに関連付ける方法もあります。

注意

SharePoint Designer 2010 では、サイト用の再利用可能なワークフローの作成はサポートされません。代わりに、そのようなワークフローの作成には Visual Studio 2010 を使用できます。

ワークフローの作成時に、ワークフローをグローバルにすることもできます。グローバルなワークフローとは、あるサイトで有効にすると、そのサイトの全サブサイトでも有効になるワークフローです。ただし、SharePoint Designer 2010 を使用して作成したグローバル ワークフローは WSP ファイルとして保存できません。

ワークフローの関連付け

SharePoint Foundation 2010 では Workflow Foundation ランタイムが使用されます。1 つのサーバーに 1 つ以上のワークフロー テンプレート (それぞれ特定のワークフローを定義するコードを含む) をインストールできます。インストール後、特定のテンプレートとドキュメント ライブラリ、リスト、コンテンツ タイプ、またはサイトとの間に関連付けを作成できます。これによって、SharePoint Foundation 2010 でホストされている Workflow Foundation ランタイムでこのテンプレートを読み込んで実行できるようなり、ワークフローのインスタンスを作成できます。

すべての Workflow Foundation ワークフローと同様に、SharePoint Foundation 2010 に基づくワークフローも、Workflow Foundation Runtime Service を使用します。Workflow Foundation Standard Persistence Service によって、永続化されたワークフローの状態をドキュメントやアイテムとリンクでき、日、月、または年の期間に及ぶ長期のビジネス プロセスに対応できます。

SharePoint ワークフローは、リスト、ライブラリ、およびコンテンツ タイプに関連付けることができます。Visual Studio 2010 を使用して作成した再利用可能なワークフローは、サイトにも関連付けることができます。以下の表は、ワークフローの関連付けに最小限必要な権限を示します。

ワークフローの関連付け対象 必要な最小限の権限

リストまたはライブラリ

そのリストまたはライブラリに対するフル コントロールのアクセス許可レベル

リストまたはライブラリのコンテンツ タイプ

SharePoint サイトの Site Owners グループのメンバー

サイト コンテンツ タイプ

SharePoint サイトの Site Owners グループのメンバー

サイト

SharePoint サイトの Site Owners グループのメンバー

ワークフローの関連付けの詳細については、「ワークフロー関連付けを追加する (SharePoint Foundation 2010)」を参照してください。