(57)【要約】ワークフローエンジンは、ワークフローマネージメント（Workflow  Management）システムの一部を有しており、定義されたワークフロー（Workflow）に基づいて特定のワークプレース（Workplace）に特定のタスク（Task）としてワークオーダ（Work  Orders）を自動的に送出する。ワークオーダとワークフローは、ワークフローの分析の結果として要件に基づいてグラフィカルなワークパッケージエディタ（Work  Package  Editor）を使用して形成されるワークパッケージのテンプレート（Work  Package  Template）に統合される。多数のワークパッケージのテンプレートは、パラレルに管理することができ、異なるエリアの放送設備における異なるニーズに対処することができる。
2010524129.tif 000002
【特許請求の範囲】
【請求項１】
ワークフローのパターンを調べて、タスクの順序と、どのワークプレースが所与の順序におけるどのタスクに関与するかとを識別するステップと、
前記ワークフローパターンにより定義される前記所与のタスクの順序でタスクを実行するためにワークプレースに通知するステップと、
を含むことを特徴とする方法。
【請求項２】
ワークフローエンジンにおいて特定のタスクとしてワークオーダを定義するステップを更に含み、
前記通知するステップは、前記調べられたワークフローのパターンに基づいて前記定義されたワークオーダを前記ワークプレースに送出するステップを含む、
請求項１記載の方法。
【請求項３】
少なくとも１つのワークオーダと前記調べられたワークフローのパターンとからワークパッケージのテンプレートを形成するステップを更に含む、
請求項１記載の方法。
【請求項４】
後の使用のために形成されたワークパッケージのテンプレートを記憶するステップを更に含む、
請求項３記載の方法。
【請求項５】
前記ワークパッケージのテンプレートを形成するステップは、
少なくとも１つのワークプレースについて少なくとも１つのワークパッケージのパスを識別するステップと、
実行されるべき少なくとも１つのタスクに対応する自動化されたルール及びデフォルトパラメータの少なくとも１つを提供するステップと、
を含む請求項３記載の方法。
【請求項６】
前記通知するステップは、
タスクの記述を前記ワークプレースに提供するステップと、
前記ワークプレースでのオペレータを識別して前記タスクを実行するステップと、
前記ワークプレースでの前記オペレータに少なくとも１つのツールを提供して、記述されたタスクを実行するステップと、
を含む請求項１記載の方法。
【請求項７】
前記ワークパッケージのテンプレートによりワークパッケージを定義するステップを更に含む、
請求項３記載の方法。
【請求項８】
前記ワークパッケージを定義するステップは、
前記ワークフローのパターンにおいて少なくとも１つのサブワークフローを識別するステップと、
実行されるべきタスクに対応する少なくとも１つのアセットターゲットを識別するステップと、
前記タスクを実行するために前記オペレータにより必要とされるソースマテリアルに対する特定のパラメータ及びリファレンスのうちの少なくとも１つを提供するステップと、
を含む請求項７記載の方法。
【請求項９】
メディア製作及び配信の環境における使用のためにコンピュータプログラムプロダクトとして実現されるコンピュータにより読み取り可能なプログラムコードを有するコンピュータにより使用可能な媒体を有するコンピュータプログラムプロダクトであって、
ワークフローのパターンを調べて、タスクの順序と、どのワークプレースが所与の順序におけるどのタスクに関与するかとを識別するプログラムコードと、
前記ワークフローパターンにより定義される前記所与のタスクの順序でタスクを実行するためにワークプレースに通知するプログラムコードと、
を含むことを特徴とするコンピュータプログラムプロダクト。
【請求項１０】
ワークフローエンジンにおいて特定のタスクとしてワークオーダを定義するプログラムコードと、
調べられたワークフローのパターンに基づいて前記定義されたワークオーダを前記ワークプレースに送出するプログラムコードとを含む、
請求項９記載のコンピュータプログラムプロダクト。
【請求項１１】
少なくとも１つのワークオーダと前記調べられたワークフローのパターンとからワークパッケージのテンプレートを形成するプログラムコードを更に含む、
請求項９記載のコンピュータプログラムプロダクト。
【請求項１２】
類似又は同一のタスクについて、後の使用のために形成されたワークパッケージのテンプレートを記憶するプログラムコードを更に含む、
請求項１１記載のコンピュータプログラムプロダクト。
【請求項１３】
前記ワークパッケージのテンプレートを形成するプログラムコードは、
１以上のワークプレースについてワークパッケージのパスを識別するプログラムコードと、
実行されるべき１以上のタスクに対応する自動化されたルール及びデフォルトパラメータを提供するプログラムコードと、
を含む請求項１１記載のコンピュータプログラムプロダクト。
【請求項１４】
前記通知するプログラムコードは、
タスクの記述を前記ワークプレースに提供するプログラムコードと、
前記ワークプレースでのオペレータを識別して前記タスクを実行するプログラムコードと、
前記ワークプレースでの前記オペレータにツールを提供して、記述されたタスクを実行するプログラムコードと、
を含む請求項９記載のコンピュータプログラムプロダクト。
【請求項１５】
前記ワークパッケージのテンプレートによりワークパッケージを定義するプログラムコードを更に含む、
請求項１１記載のコンピュータプログラムプロダクト。
【請求項１６】
前記ワークパッケージを定義するプログラムコードは、
前記ワークフローのパターンにおいてサブワークフローを識別するプログラムコードと、
実行されるべきタスクに対応するアセットターゲットを識別するプログラムコードと、
前記タスクを実行するために前記オペレータにより必要とされるソースマテリアルに対する特定のパラメータ及びリファレンスを提供するステップと、
を含む請求項１５記載のコンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツの管理システムに関する。より詳細には、本発明は、メディア製作の環境におけるワークフローの管理システムに関する。
【０００２】
本出願は、2007年4月12日に提出された米国特許仮出願第60/923,011号に対する35U.S.C119(e)の下での優先権を主張するものである。
【背景技術】
【０００３】
今日、ビジネスシステムとブロードキャストの世界との間のリンクは、ビデオ／オーディオのエッセンス（クリップ）のフレーム精度のプレイアウトを管理するブロードキャストオートメーションシステムを主に経由する。これらのシステムが主に対処する領域は、INGEST、PLAYOUT及びARCHIVEである。これらは、再生／記録リストを受け、管理されるサブシステム（通常はHSMを介するファイルベースのビデオサーバ及びデータアーカイブ）においてチェックを実行し、正しい順序でクリップを再生する。
【０００４】
さらに、これらのシステムは、クリップがシステムにおいて利用可能な場合、欠けているクリップを発見し、適切なサブシステムへのクリップの転送をクリップが利用可能となる必要がある前に予め決定された時間で発生する。さもなければ、これらは、欠けているクリップのリストを形成し、次いで、オペレータは、取り込みサーバを管理する必要がある。
【０００５】
今日使用されている別のメカニズムは、定義されたディレクトリ（ファイルシステムにおけるフォルダ）における自動的なエッセンスの発見である。この機能は、ウォッチフォルダ機能と呼ばれ、トランスコーディング、定義された位置への転送等のような定義されたタスクのエッセンスの発見に応じて実行される。
【０００６】
上述されたアプローチ及びシステムは、あるタスク、実行すべき対応するタスクに加えて正しいフォーマットでのコンテンツに関して所定のワークプレースで所定のオペレータに通知する手段を提供しない。個々のタスクが実行される必要がある予め定義された順序のワークステーションに沿って予め定義された数の作業の順序を含むビジネスシステムから提供される、予め定義されたセットのワークオーダ、ワークプレース、及び／又は異なるワークパッケージのテンプレートを開始するタスクは存在しない。さらに、たとえばタスクが実行されるように見える前に所定のワークプレースへのエッセンスの転送及びトランスコードを提供するような、所定の条件が含まれない。
【０００７】
メディア業界では、多数のソリューションが特定の必要に対処するために開発又は適合されており、異なるレベルのワークフローのマネージメントサポートをもつメディアアセットの管理に関するグローバルなソリューションに収束している。
【０００８】
１）プレイアウトオートメーション：制御は、スケジュールに従ってビデオとオーディオコンテンツをプレイアウトする装置のリアルタイムの制御を提供する。幾つかのプレイアウト装置は、取込み（コンテンツ受信）及び記憶フェーズでコンテンツの動きを編成する機能を有する。プレイアウト装置の製造業者は、デバイスインタフェースの問題に対処ているが、ワークフローエンジンの概念をサポートするために更に進化している。それらのソリューションは、コンフィギュレーションステージでのかなりの作業のやり直しを一般に必要とするスタティックなワークフローを提案する。
【０００９】
２）Document  Media  Asset管理システムの製造業者は、文書を管理する機能を示している。多くの係る企業は、メディア産業と取り組むマルチメディア環境に進化している。係る企業からのソリューションは、リアルタイムのデバイスリソース管理における非常に厳しい制限を有しており、ワークフローを管理するために、もしあれば非常に制限された方法を提供する。
【００１０】
３）多数の企業は、ビデオ編集システムを提供する。ビデオ編集システムの少なくとも１つの製造業者は、スタティックなやり方でワークフローを使用することを必要とするメディア産業について非線形のワークフローのソリューションを提供する。
【００１１】
４）ＩＴミドルウェアプロバイダは、ビジネスレイヤのアプリケーションで慣習的に専門化している。この点に関して、係るプロバイダは、インフラストラクチャを提案して、ワークフローを扱うトランザクションレイヤを管理する。係るプロバイダは、ビジネスレイヤにフォーカスするため、係るプロバイダからのソリューションは、ユーザインタフェースを提供せず、負荷のバランス又はサービス品質（ＱｏＳ）の制約によるリソースを制御することができない。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
要するに、メディア業界におけるコンテンツ制作環境及び対応するビジネスレイヤは、自動化されたリアルタイムに基づいて顧客との関係において広告の追加を可能にするため、作業の順序を通して十分な制御を提供しない。コンテンツの管理に関連する技術的なワークフローは、極端に大きな労働力を要し、非常に制限されたツールを使用して動作を管理する部署あたりの数人の管理者のみを有するサイロにより機能し、該サイロにより編成される。テレビ放送施設又はポストポロダクション環境におけるメディアの製作は、コンテンツの管理を効果的に扱う管理のソリューションに現在のところ欠けている。
【課題を解決するための手段】
【００１３】
本発明の１つの例示的な実施の形態によれば、メディア製作及び配信の方法は、ワークフローのパターンを調べて、タスクの順序と、所与の順序におけるどのタスクにどの少なくとも１つのワークプレースが関与するかを識別し、ワークプレースに通知して、ワークフローのパターンにより定義される所与のタスクの順序でそれらのタスクを実行することを含む。
【００１４】
例示的な実施の形態の詳細は、以下の添付図面及び説明において述べられる。１つの特定のやり方で記載されたとしても、それぞれの例示的な実施の形態は様々なやり方で構成又は実施されることが明らかである。たとえば、実施の形態は方法として実行することができるか、又は動作のセットを実行する装置として実施されるか、動作のセットを実行する命令を記憶する装置として実施される。他の態様及び特徴は、添付図面及び請求項と共に考慮される以下の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【００１５】
【図１】本発明の例示的な実施の形態に係るワークパッケージの一部として標準的なワークフローのパターンの例示的な表現を示す図である。
【図２】本発明の例示的な実施の形態に係るワークパッケージの一部として分割されたワークフローのパターンの例示的な表現を示す図である。
【図３】本発明の例示的な実施の形態に係るワークパッケージの一部として別の分割されたワークフローパターンの例示的な表現を示す図である。
【図４】本発明の例示的な実施の形態に係るダイナミックユーザインタフェース・タスクベースの例を示す図である。
【図５】本発明の例示的な実施の形態に係るワークフローエンジンの概念的な表現を示す図である。
【図６】本発明の例示的な実施の形態に係るワークフローエンジンのユーザインタフェースの例示的な表現を示す図である。
【図７】本発明の例示的な実施の形態に係るワークフローエンジンのブロック概念図である。
【図７Ａ】本発明の例示的な実施の形態に係るワークフローエンジンの一部のブロック概念図である。
【図７Ｂ】本発明の例示的な実施の形態に係るワークフローエンジンの一部のブロック概念図である。
【図７Ｃ】本発明の例示的な実施の形態に係るワークフローエンジンの一部のブロック概念図である。
【図７Ｄ】本発明の例示的な実施の形態に係るワークフローエンジンの一部のブロック概念図である。
【図８】本発明の例示的な実施の形態に係るメディア製作の方法の高水準の図である。
【図９】本発明の例示的な実施の形態に係るメディア製作の方法の別の高水準の図である。
【発明を実施するための最良の形態】
【００１６】
要するに、本発明の１態様によれば、ワークフローマネージメントシステムの一部としてワークフローエンジンが提供される。ワークフローエンジンは、定義されたワークフロー（Workflow）に基づいて、特定のワークプレース（Workplace）にワークオーダ（Work  Orders）を自動的に送出する手段を提供する。ワークオーダ及びワークフローの両者は、分析放送設備（analysis  broadcast  facility）の「リアルライフ“real  life”」のワークフローから決定される要件に従って、グラフィカルなワークパッケージのエディタを使用して形成される、１つのワークパッケージのテンプレート（Work  Package  Template）に集められる。多数のワークパッケージのテンプレートは、パラレルに管理することができ、異なるエリアの放送設備における異なるニーズに対処するのを可能にする。
【００１７】
本発明のワークフローエンジンは、ワークオーダとワークフローの実際の処理データを「ブループリント」又はテンプレートと結合する一方で、「ブループリント」として見ることができる、予め設計されたワークパッケージのテンプレートからワークパッケージのインスタンスを作成する手段を更に提供する。これは、特定のワークプレースでのオペレータによるインタラクションによるか、又は適切なインタフェースを使用して外部インタフェースにより自動的に行われる。アクティブなワークパッケージからワークパッケージのインスタンスを作成することも可能である。
【００１８】
ワークフローエンジンは、処理環境からのレスポンストリガをワークフローが待つ時間について、ワークフローのステータスの全体的な一貫性を可能にするプロセス及びスレッドアジリティ（thread  agility）を提供する一方で、ワークフローマネージメントに特化した「長時間」のタスクに対処するために設計される。ワークフローは、ワークパッケージの一部を含むものであり、標準的なワークフローのパターン又は分割/結合パターンの何れかを表すアクティビティを使用してモデル化される。さらに、アクティビティは、ワークフローパターンのアクティビティを使用してワークフローに連結される、ワークパッケージの一部としてのタスクと同様に、ワークパッケージ自身をモデル化するために使用される。
【００１９】
タスクアクティビティは、ワークプレースをモデル化するために使用され、この場合、ワークオーダは、ワークフローに従ってタスクとして示される。“Within”タスクアクションのアクティビティは、実際のインタフェースをプロセス環境に提供するアクションをモデル化するために使用される。“Inside”タスクアクションのアクティビティは、このレベルでワークフローをモデル化するため、（ワークパッケージ内の）ワークフローパターンのアクティビティと連結される。
【００２０】
本発明の詳細の説明に始める前に、幾つかの略記の定義が役立つ。  
エッセンス（Essence）：ビデオ／オーディオ
コンテンツ（Content）：ビデオ／オーディオ＋メタデータ
オートメーションシステム（Automation  System）：予め定義された時間及び定義された順序でコンテンツ（ビデオ、オーディオ、グラフィックス、ロゴ等）をフレーム精度のプレイアウトを実行し、ビジョンミキサのトランジションテンプレートを含むシステム。
【００２１】
VTR：ビデオテープレコーダ
HSM：階層的ストレージ管理システム。
【００２２】
図１は、標準的なワークフローのパターンを示す例示的なワークパッケージを示し、この場合、タスクアクションアクティビティ１２及び１４がシーケンスアクティビティに係るシーケンスにある。図２は、分割されたワークフローパターンを示すワークパッケージ２０の例を示し、この場合、タスクアクションアクティビティ２２及び２４は、“ifElseActivity”として識別される代替的なワークフローのパスに基づいて分割される。ここで、それぞれのタスクアクティビティ２２及び２４は、ワークフローのそれぞれのifElseActivity1及びifElseActivity2のブランチの一部を含み、ifElseActivityにより設定される条件に基づいて実行される。図３は、分割されたワークフローパターンを示すワークパッケージ３０の例を示し、この場合、タスクアクションのアクティビティ３２及び３４は、パラレルなアクティビティのワークフローで分割される。ここで、それぞれのタスク３２及び３４は、それぞれのsequenceActivity1及びsequenceActivity2に基づいて互いにパラレルに実行される。ワークフローのエンジンは、基礎となるコンテンツマネージメントシステムを使用するか又はサブシステムの装置を直接に制御することでサブシステムのプロセスデバイスの制御を可能にする、ブロードキャストのドメインに特化したアクションアクティビティの束を備える。
【００２３】
タスクで使用されるアクションアクティビティに依存して、アクションアクティビティは自動的に実行されるか、又は手動で実行される。たとえば、プロセスコントロールアクションアクティビティのみが使用された場合、タスクは完全に自動的に実行される。ユーザインタフェースアクションアクティビティが使用される場合、タスクは手動による実行を必要とする。
【００２４】
手動によるタスクは、定義されたユーザワークプレースで現れ、この場合、オペレータは、特定のワークプレースについてワークオーダで定義される作業を行う。
【００２５】
自動的なタスクは、「オートマチックワークプレース」で現れ、この場合、自動的に実行されるプロセス制御アクションのステータス及び進展が表示される。
【００２６】
ワークフローエンジンは、アクティブなワークパッケージの一部としてワークオーダの変化（run-down）を制御し、ワークフローエンジン及びワークフローエンジン内の制御されるワークパッケージに関するステータス情報を取得する。本発明のコンテンツ管理技術は、ダイナミックユーザインタフェースのタスクベースを提供し、このタスクベースは、それぞれのユーザが必要とされるものを知ることを可能にし、それぞれのユーザにタスクの記述を提供することを可能にし、タスクを実行するために必要とされるリソースを識別する。
【００２７】
図４は、本発明の例示的な実施の形態に係るダイナミックユーザインタフェース４０の例を示す。クローズボタン５０は、このタイプのウィンドウにとって一般的であるが、このインタフェースの「ウィンドウ」の態様を示すために示される。ユーザインタフェース４０は、ワークプレースカテゴリ４２、ワークプレース４４及びタスクBin４６への直接的且つ簡単なアクセスを様々なビューによりユーザに提供する。また、ユーザは、管理のビュー５２、動作のビュー５４、及びワークフローのコマンドの示唆と共に他のアセット４８をサーチする機能を有する。これらの様々なビュー及び動作は、メディア製作／配信の環境で現在利用可能ではないユーザの動作及び制御を可能にする動的な環境で全て提供される。
【００２８】
インフラストラクチャの管理と同様に、動作を定義、管理及び監視するのに役立つフレームワーク。  
複雑なメディア製作の環境において（すなわち異なる外部データベースにわたり）集中型のサーチを管理するため、十分な抽象のレベルを提供する進展されたメディアアセット管理構造。  
（たとえば標準的な電子メールの通信を使用して）第三者又は旧式のシステムと大まかに結合され、インタフェースするのを可能にするメカニズム。  
技術的及び動作上のインフラストラクチャのアラーム及びログの連結を管理する集約化された監視のソリューション。
【００２９】
デスクトップでのＩＰインターコムを通した音声によるブロードキャスト環境で専用とされるインターコムのような旧式のソリューションと同様に、チャットエンジンのような新たな方法を活用するコラボレイティブツール。例を通して、本発明のシステムは、トラッキングプロセスの機能を有するので、システムにおける異なるタスクを扱っているユーザに関する情報が存在する。これにより、他のユーザが行っていること及び誰がシステムに接続されているかを知る機能が可能となる。結果として、チャットソリューションは、ユーザ間の通信を可能にするため、実現することが容易となる。
【００３０】
図５は、定義されたワークフローに基づいて特定のワークプレースに特定のタスクとしてワークオーダを自動的に送出する手段を提供するワークフロー管理システム１００のコアの部分としてワークフローエンジンを示す。ワークフローエンジン１００のエレメントは、ワークパッケージのテンプレート１０２、ワークパッケージ１０４、図６で示されるワークパッケージのテンプレート（WPT）エディタ１１０、及びシステムデータベース（図示せず）を含む。
【００３１】
ワークプレース１０１は、タスクの記述、特定のタスク又はタスクのグループのオペレータのＩＤ、タスク又はタスクのグループをオペレータが実行するための必須のツールから構成される。ワークパッケージのテンプレート１０２は、同じ自動化されたルール及びデフォルトパラメータについてワークプレースにわたるワークパッケージのパスから一般に構成される。ワークパッケージ１０４は、異なるサブワークフロー、アセットターゲット、並びに、特定のパラメータ及びそれぞれのタスクを実行するために必要とされるソースマテリアルへのリファレンスを含む。
【００３２】
ワークオーダ及びワークフローはワークパッケージのテンプレート１０２に統合され、このテンプレートは、先の放送設備の「リアルライフ」ワークフローの分析の結果としての要件に基づくグラフィカルなワークパッケージのテンプレートのエディタを使用することで形成される。WPTエディタは、オフラインで実行することができ、必要とされるとき、ファイルとしてシステムにインポートすることができる。多数のワークパッケージのテンプレート１０２は、パラレルに管理することができ、異なるエリアの放送設備における異なるニーズに対処する機能を可能にする。
【００３３】
図６を参照して、WPTエディタ１１０は、ファイルシステムのファイル及びCS2システムデータベースにおけるレコードとしてワークパッケージのテンプレート１０２をサポートし、オフラインモードでワークパッケージのテンプレートを形成し、オンラインモードでCSシステムDBとの間でWPTを記憶及び検索する機能を可能にする。インポート／エクスポートフィルタは、WPTエディタ１１０の一部を含む。エディタ１１０は、ワークオーダと同様にアクティビティリポジトリ（アクティビティギャラリー）１１４を通して提供されるアクティビティを表現するグラフィカルシンボルを使用する一方で、また、ドメインに特化したアクティビティ「ワークパッケージ」及び「タスク」についてWFL-変数を定義する一方で、デザインエリア１１２を通してワークフローを編集する手段を提供する。WFL-変数は、プロパティエディタ１１６を通して管理される。このコンセプトにより、ソフトウェア開発のエンジニアの更なる下位レベルのプログラミングタスクなしに、システムエンジニアにより顧客のワークフローの宣言的記述が可能となる。このツールは、さらに、ワークフローの妥当性のチェックのレベルを提供し、幾つかは、編集プロセスの間に既にオンラインであり、他は実行可能なコードへのワークフローのコンパイルプロセスの間にオンラインである。
【００３４】
WFL-変数を通して表現されるワークパッケージ１０４及びワークオーダの両方の部分、及びコンパイルされた実行可能なコードとして表現されるワークフローは、ワークフローのエンジン１００を通した更なる使用のため、システムデータベース１１２にエクスポートされる。WFL-変数の幾つかは、ワークフローエンジンにおける変化についてアクチベートすることができる前に実際の値を必要とするやり方で定義されるので、WFL-変数は、変数がどのように使用されるべきかを記述する添付される属性を含む。
【００３５】
［宣言型プログラミング及びアクティビティ］
（アクティビティリポジトリに含まれる）アクティビティは、グラフィカルWPT-エディタ１１０により使用されるものであり、ワークフローエンジン１００と使用することができる前に定義され、プログラムされる必要がある。この意味で、これらのアクティビティは、単語を表すだけでなく、XOMLで規定される「宣言型プログラミング言語」の文法をも表す。このプログラミング言語は、（たとえば標準的なワークフローのパターンを実現する）標準的なアクティビティを提供するか、又は、（たとえばブロードキャストに特化したアクティビティと同様にNTFSといった）標準的なファイルシステムへの制御アクセスを提供し、これらは、基本となるコンテンツ管理システム１１６又は、たとえばトランスコーダといった処理装置を直接に制御するために使用される。
【００３６】
全てのアクティビティは、ワークオーダが関連するワークフローに適用されるパターンに従って指定されたワークプレースとしてタスクとなって表れる一方で、WPT-エディタ１１０におけるアクティビティをレンダリングするために使用される第一の部分と、ランタイムの間に実行される第二の部分を提供する。WPT-エディタ１１０では、全てのアクティビティは、アクティビティリポジトリ（ギャラリー）１１４において提供され、このアクティビティリポジトリは、ソートされたやり方でアクティビティを提供する。アクティビティのコンセプトは、タスクのサブセットであり、フレームワークを使用して、デバイスでのロウレベルのアクション又はワークフローレベルを記述することで新たな及び／又はエンハンスされた機能をもつ「ブロードキャストのドメインに特化した言語」の「ボキャブラリ」の増加を可能にする。たとえば、「ウォータマーク」を扱うことができるサブシステムに接続される場合に、「ウォータマーク」と呼ばれる新たなアクティビティを形成することができる。
【００３７】
新たなアクティビティは、新たなプロダクトバージョンの一部としてワークフローデザイナー及びワークフローエンジンに提供され、新たなワークパッケージのテンプレートとその後に使用される。
【００３８】
ワークパッケージ１０４のワークフローの一部は、標準的なワークフローのパターン等又は分割／結合の何れかを表すアクティビティを使用してモデル化される。さらに、アクティビティは、ワークパッケージの一部としてのタスクと同様に、ワークパッケージ１０４自身をモデル化するために使用され、これらは、ワークフローパターンのアクティビティを使用してワークフローに連結される。タスクアクティビティは、ワークプレースをモデル化するために使用され、この場合、ワークオーダは、ワークフローに従ってタスクとなって表れる。
【００３９】
上述されたように、“within”タスクのアクションのアクティビティは、実際のインタフェースを処理環境に提供するアクションをモデル化するために使用され、“inside”タスクのアクションのアクティビティは、このレベルでワークフローをモデル化するためにワークフローパターンのアクティビティと連結することができる。例を通して、MS  WFEにおけるそれぞれのエンティティは、MSワークフロー又はMSワークフローのアクティビティの何れかである。CS2について、MSエンティティが構築される。
【００４０】
【表１】
2010524129.tif 000003
言い換えれば、以下の通りである。
【００４１】
【表２】
2010524129.tif 000004
それぞれのレベルで、標準的なMSフロー制御のアクティビティは、ドメインに特化したアクティビティをWFLに結合するために使用される。
【００４２】
ワークフローエンジン１００は、基本のコンテンツ管理システムを使用するか又はサブシステムのデバイスを直接に制御することでサブシステムのプロセスデバイスの制御を可能にする放送ドメインに特化したアクションのアクティビティの束を備える。当業者であれば、係るアクションのアクティビティの例は、たとえばクリップをレコード、クリップをアーカイブ、クリップをトランスコード、MXFファイルをラップ、サブタイトルをエンベッド、ビデオをデコード、オーディオトラックをマルチプレックス、ファイルをアナライズ、ビデオプロキシをクリエイト等を含む。
【００４３】
条件付のワークフローの実行を提供するワークフローのパターンについて、表現及びルールの評価が必要とされる。表現及びルールの定式化は、C#のようなスタイルで行われる。WFL-変数及び定数は、評価のために使用され、プロセス環境のステータスに依存してワークフローの実行を制御する機能を提供する。シンプルな例は、ワークプレースであり、この場合、全ての選択可能なワークプレースのグループ内の次のワークプレースを選択することができる。入力に依存して、ワークフローエンジンは、所望のパスを選択し、ワークオーダを次に選択されたワークプレースに送出する。
【００４４】
更に複雑な例として、特定のブランチにおけるタスクの繰り返しが定義された数の繰り返しで実行されるやり方で、ｎのパラレルなパスの１つおける不具合が扱われる。期待される結果が所望の繰り返しの後に達成可能でない場合、ワークフロー（エンジン）は、機器構成が可能なオペレータに電子メールを送出するパスを選択する。このアクションの後、ワークフローエンジン１００は、そのブランチに既に実行されたパラレルのパスと結合させ、ワークフローは継続する。
【００４５】
［手動的及び自動的ワークパッケージの作成、ワークパッケージの連結］
ワークフローエンジン１００は、ワークオーダの実際のプロセスデータと「ブループリント」又はテンプレートとを結合する一方で、「ブループリント」として見ることができる、（データベースに記憶される）前にデザインされたワークパッケージのテンプレートからワークパッケージのインスタンスを作成する。これは、適切なインタフェースを使用して、特定のワークプレースでオペレータによるインタラクションにより手動的に、又は外部システムから自動的に行われる。
【００４６】
アクティブなワークパッケージからのワークパッケージのインスタンスを作成することも可能であり、ワークパッケージの連結が可能である。ワークパッケージのアクチベーションの前に幾つかの変数について値を既に提供することが必要であるので、WFL-変数の属性は、変数の使用を決定するために使用される。これは、アクティブなワークパッケージの終了でのアクションとして新たなワークパッケージを形成することをシンプルに要求することで実行される。
【００４７】
ワークフローエンジン１００での自動化されたクライアントとしてのシステムについて、WPT-マニフェストは、どのようなWFL-変数に値が供給される必要があるかを記述するワークパッケージのテンプレートのエディタ１１０により形成される。選択されたワークパッケージのテンプレートのテンプレートマニフェストと同様に、自動的に使用可能なワークパッケージのテンプレートのリストは、たとえばウェブサービスといった適切なインタフェースを使用して、ワークフローエンジン１００から検索される。クライアントは、WPTマニフェストをトリガとして使用して、ワークフローエンジンにおけるワークパッケージを作成及びアクチベートする。
【００４８】
［ワークフロー制御、長時間のタスク、スレッドプロセスアジリティ］
ワークフローエンジンは、ワークフローが処理環境からのレスポンストリガを待つ時間についてワークフローのステータスの全体的な一貫性を可能にするプロセス及びスレッドアジリティを提供する一方で、ワークフローの管理に特化した「長時間の」タスクに対処するために設計される。この環境では、プロセス環境がタスクのレディ状態を合図したとき、同じスレッド又は同じプロセス、それとも同じマシンが実行していることを保証することができない。ワークフローエンジン１００は、プロセス環境がタスクのレディ状態を合図するまで、定義されたストレージにおけるワークフローの一貫性を管理するインフラストラクチャを提供する。
【００４９】
所与の瞬間で、ワークフローエンジン１００は、特定のワークパッケージのインスタンスについて信号を受け、エンジンは、永続的なストレージ１１２からワークパッケージのインスタンスを取り出す。ワークパッケージのインスタンスのワークフローにおける現在のステータスによれば、タスクで使用されるアクションアクティビティに依存して、プロセス制御のアクションアクティビティのみが使用される場合にタスクは全体的に自動的に実行され、ユーザインタフェースのアクションのアクティビティが使用される場合にタスクは手動的である。
【００５０】
手動的なタスクは、定義されたユーザワークプレースで表れ、この場合、オペレータは、特定のワークプレースについてワークオーダに定義されるそれらの作業を行うことができる。自動的なタスクは、「オートマチックワークプレース」で現れ、この場合、自動的に実行されるプロセス制御のアクションのステータス及び進展が表示される。ワークフローのエンジンは、アクティブなワークパッケージの一部としてワークオーダの変化を監視し、ワークフローエンジン及びワークフローエンジン内で制御されるワークパッケージに関するステータス情報を取得する手段を提供する。ワークパッケージの状態はシステムデータベース１１２で持続されるため、クライアントは、この情報を使用して、現在アクティブであって、ワークフローエンジンの制御下にある全てのワークパッケージの現在の状態を表示する。
【００５１】
ワークオーダの変化の間、現在の実行時間は、ワークパッケージにおけるそれぞれのタスクについて保持される。この情報は、システムデータベース１１２において記憶され、設備のプロセスの実行の監視のために適切なクライアントにより取得される。それぞれが異なるワークフローのホストとなることができる多数のワークパッケージ１０４は、同時に実行される。プライオリティの管理の概念により、ワークパッケージに優先度を割り当てることが可能である。ワークフローエンジン１００は、特定のワークパッケージの優先度に依存してワークパッケージ１０４の作動及び実行を計画する。
【００５２】
［ドメイン間の動作］
ワークフローエンジン１００は、ワークフローの制御ドメインと呼ばれる定義された論理エリアを制御するために設計される。ネットワークインフラストラクチャに依存して、ワークフローの制御ドメインに属するワークプレースは、リモートサイトに配信することができるが、同じワークフローの制御ドメインに論理的に属する。ドメイン間の動作、すなわち２つの独立のワークフローの制御ドメイン間のワークフローを結合することは、「ワークフローのドメイン間の制御ワークプレース」により表される、大まかに結合されるインタフェースで行われる。１つの制御ドメインでは、このワークプレースは、「ノーマル」なワークプレースとなって表れ、別の制御ドメインにおける対応するワークプレースを通知するために特定のタスクのツールを提供する。２つのワークプレース間のメッセージチャネルは、規定されない。たとえば、これは、電子メールシステム、ファックスマシン、「スニーカーネット」をもつプリンタ等とすることができる。重要なことは、単なるワークプレースであり、「ワークフローのドメイン間のワークプレース」の概念であり、ワークプレイスがワークフローから遠隔的に位置される場合に上述されたツールを提供する。
【００５３】
ワークフローでは、このワークプレースは、ローカルドメインを離れるように制御フローが定義される場合にモデル化される。ワークフローエンジンは、ワークフローで定義された自動的なタスク及びアクションを実行しつつ、定義されたツールを使用する。これらのアクションは、利用可能なメッセージチャネルについて定義されたメッセージを用意し、このメッセージを送出し、遠隔的に位置されるワークプレースからの応答を単に待つ。
【００５４】
ローカルの「ワークフローのドメイン間制御のワークプレース」は、どの種類のワークフローマネージメントシステムがトリガメッセージを取得するか、及びこのシステムが自身のワークフローをどのように実行するかを知ることは必要ではない、点を述べることは重要である。ひとたびトリガメッセージが他のシステムに送出されると、このワークプレースは、ワークフローに従って対応するワークプレースからの応答を単に待つ。このトリガメッセージは、たとえば、シンプルな電子メールとすることができ、リターンメールは、ワークプレースにより受信される。
【００５５】
リモートシステムの幾つかの影響が起こり得る環境において、ワークプレースのアプリケーションが提供され、このアプリケーションは、「ワークフローのドメイン間制御のワークプレース」と更に密接に統合され、リモートタスクが、あるタスクの書類入れに自動的に表れるのを可能にする。遠隔の設備のスタッフメンバは、次いで、タスクに注意し、ひとたびタスクが行われると「タスク終了信号」をリターンする。ワークフロー制御ドメインが設定される環境では、更に密接なインタラクションが予測される。リモートドメインでは、ローカルドメインからトリガメッセージを取得し、リモートドメインにおいてローカルのワークパッケージを作成するワークプレースが定義される。
【００５６】
リモートドメインにおけるこのワークパッケージは、それ自身の「ワークフローのドメイン間制御のワークプレース」を使用する一方で、主催されるワークフローに従って要求及び定義されるタスクを実行し、定義される「ワークフロー終了信号」をリターンする。このメッセージは、ローカルドメインにおいて待機しているワークオーダをトリガし、ローカルのワークフローエンジンは、ワークフローの実行を続ける。このコンセプトにより、リモートシステムの機能に依存して、自動化されたローカルのワークフローとリモートのワークフローとの結合が可能となる。
【００５７】
図８及び図９は、上述された本発明の例示的な実施の形態に係るメディア製作の方法に関する上位のフローダイアグラム８００及び９００を示す。図８を参照して、始めに、ワークフローのパターンが調べられ（８０２）、特定の順序においてどのタスクにどのワークプレースが関与するかに沿って、タスクの順序が識別される。ひとたび調べられ、識別されると、定義されたワークフローの順序に従ってそれぞれのタスクを実行するため、ワークプレースが通知される（８０４）。図９を参照して、最初のステップ９０２は、ワークフローのパターンの検査と、タスクの順序及び関与するワークプレースの識別とにおいてステップ８０２と同じである。この点で、ワークオーダを特定のタスク（９０４）として定義する更なるステップが実行され、それぞれのワークプレースにワークフローのパターンにより述べられるワークオーダが提供される通知ステップ（９０６）を支援する。
【００５８】
本明細書で記載された本発明の例示的な実施の形態は、たとえば方法又はプロセス、或いはソフトウェアプログラムで実現される。本発明の例示的な実施の形態の単一の形式の文脈でのみ記載されたとしても（たとえば方法としてのみ記載された）、記載された特徴の本発明の例示的な実施の形態は、他の形式で実現することができる（たとえば装置又はプログラム）。装置は、たとえば適切なハードウェア、ソフトウェア及びファームウェアで実現することができる。方法は、たとえばプロセッサのような装置で実現することができ、一般に、たとえばコンピュータ、マイクロプロセッサ、集積回路又はプログラマブルロジックデバイスを含む処理装置を示す。
【００５９】
さらに、本方法は、プロセッサにより実行される命令により実現され、係る命令は、たとえば集積回路、ソフトウェアキャリア、又は、たとえばハードディスク、コンパクトディスク、ランダムアクセスメモリ（RAM）又はリードオンリメモリ（ROM）のような他のストレージデバイスのようなプロセッサ読み取り可能な媒体に記憶することができる。命令は、プロセッサ読み取り可能な媒体で実施されるアプリケーションプログラムを形成する。明らかであるように、プロセッサは、たとえばプロセスを実行する命令を有するプロセッサ読み取り可能な媒体を含む。当業者にとって明らかであるように、本発明の例示的な実施の形態は、たとえば記憶又は送信される情報を搬送するためにフォーマットされる信号を生成することもできる。この情報は、たとえば、方法を実行する命令、又は記載される実施の形態の１つにより生成されるデータを含むことができる。係る信号は、（たとえばスペクトルの無線周波部分）電磁波として、又はベースバンド信号としてフォーマットすることができる。フォーマット化は、たとえば、データストリームをエンコードすること、エンコードされたストリームをパケット化すること、搬送波をパケット化されたストリームで変調することを含む。信号が搬送する情報は、たとえばアナログ又はデジタル情報とすることができる。信号は、知られているように様々な異なる有線又は無線リンクを通して伝送される。
【００６０】
多数の例示的な実施の形態が記載された。しかし、様々な変更がなすことができる。たとえば、異なる例示的な実施の形態のエレメントは、結合、補充、変更又は除去されて、他の実施の形態が生成される。さらに、当業者であれば、他の構造及びプロセスが開示内容について置き換えられ、結果として得られる実施の形態は、少なくとも実質的に同じやり方で、少なくとも実質的に同じ機能を実行し、開示された実施の形態と少なくとも実質的に同じ結果を達成する。したがって、本発明のこれらの例示的な実施の形態及び他の例示的な実施の形態は、特許請求の範囲にある。
【図１】
2010524129.tif 000005
【図２】
2010524129.tif 000006
【図３】
2010524129.tif 000007
【図４】
2010524129.tif 000008
【図５】
2010524129.tif 000009
【図６】
2010524129.tif 000010
【図７】
2010524129.tif 000011
【図７Ａ】
2010524129.tif 000012
【図７Ｂ】
2010524129.tif 000013
【図７Ｃ】
2010524129.tif 000014
【図７Ｄ】
2010524129.tif 000015
【図８】
2010524129.tif 000016
【図９】
2010524129.tif 000017
【国際調査報告】
2010524129.tif 000018