(57)【要約】  ニュースフィードユーザーエントリーからタスクオブジェクトを作成し、提示するためのシステムおよび方法が提供される。システムは、ソーシャルネットワーキングプロバイダーと、タスクエンジンと、クライアントデバイスとを含むことができる。方法は、クライアントデバイスに、複数のエントリーを有するニュースフィードを備えたニュースフィードユーザーインターフェースを配信するステップと、クライアントデバイスから、複数のエントリーからのエントリーに基づいてタスクを作成する要求を受信するステップと、タスクエンジンに接続するステップであって、タスクエンジンがタスクオブジェクトを作成するように構成された、ステップと、エントリーに関連付けられたエントリー情報をタスクエンジンに送信するステップと、タスクエンジンから、第１のタスクオブジェクトがエントリー情報に基づいて作成されたことを示す確認を受信するステップとを含むことができる。
2016503202.tif 000002
【特許請求の範囲】
【請求項１】
タスクを提示する(presenting)ためのコンピューター実施(implemented)方法であって、
プロバイダーからユーザーエントリー情報を受信し、
前記ユーザーエントリー情報に基づいてタスクオブジェクトを作成し、
前記タスクオブジェクトをキャッシュに記憶し、
前記キャッシュからの前記タスクオブジェクトにアクセスし、
タスクユーザーインターフェース内に前記タスクオブジェクトをレンダリングし、
前記タスクユーザーインターフェースを提示する
のためのコンピューター実施動作を実行するステップを含む、コンピューター実施方法。
【請求項２】
クライアントデバイスが、前記タスクユーザーインターフェースを介して前記タスクオブジェクトを修正することを可能にするステップと、
前記タスクオブジェクトの修正があったことを決定するステップと、
前記修正されたタスクオブジェクトを前記キャッシュに記憶するステップと、
前記修正を示すデータを前記プロバイダーに送るステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記プロバイダーが前記キャッシュへのアクセスを有する、請求項１に記載の方法。
【請求項４】
前記プロバイダーが、ソーシャルネットワーキングプロバイダーであり、前記ソーシャルネットワーキングプロバイダーが、ニュースフィードユーザーインターフェースをクライアントデバイスに提示するように構成され、前記ニュースフィードユーザーインターフェースが、１つまたは複数のユーザーエントリーを含む、請求項１に記載の方法。
【請求項５】
前記ソーシャルネットワーキングプロバイダーから、前記タスクオブジェクトを削除する要求を示すデータを受信するステップと、
前記キャッシュから前記タスクオブジェクトを削除するステップと、
前記タスクオブジェクトが前記タスクユーザーインターフェースから除去されるように前記タスクユーザーインターフェースをリフレッシュするステップと
をさらに含む、請求項４に記載の方法。
【請求項６】
クライアントデバイスに、複数のエントリーを有するニュースフィードを備えたニュースフィードユーザーインターフェースを配信するステップと、
前記クライアントデバイスから、前記複数のエントリーからのエントリーに基づいてタスクを作成する要求を受信するステップと、
タスクエンジンと接続するステップであって、前記タスクエンジンが、タスクオブジェクトを作成するように構成された、ステップと、
前記エントリーに関連付けられたエントリー情報を前記タスクエンジンに送信するステップと、
前記タスクエンジンから、第１のタスクオブジェクトが前記エントリー情報に基づいて作成されたことを示す確認を受信するステップと
をさらに含む、請求項１に記載の方法。
【請求項７】
前記クライアントデバイスに、前記第１のタスクオブジェクトが作成されたことを示す前記ニュースフィードユーザーインターフェースに関する通知(notification)を配信する(delivering)ステップをさらに含む、請求項６に記載の方法。
【請求項８】
前記タスクエンジンと接続するステップが、
前記タスクエンジンによって公開されたアプリケーションプログラミングインターフェースを呼び出すステップを含む、請求項６に記載の方法。
【請求項９】
認証情報を前記アプリケーションプログラミングインターフェースに送信するステップをさらに含む、請求項８に記載の方法。
【請求項１０】
１つまたは複数のエントリーを含むニュースフィードユーザーインターフェースをクライアントデバイスに配信し、
前記１つまたは複数のエントリーからの第１のエントリーに基づいてタスクを作成する要求を受信し、
前記第１のエントリーに基づいてエントリー情報を送信するように構成された
ソーシャルネットワーキングプロバイダーと、
タスクエンジンとを備えるシステムであって、前記タスクエンジンが、
タスクオブジェクトを作成するように構成されたタスクアグリゲーターと、
タスクオブジェクトを記憶するように構成されたキャッシュと、
タスクユーザーインターフェースを作成し、表示するように構成された提示モジュールと
を備え、
ソーシャルネットワーキングプロバイダーから、前記１つまたは複数のエントリーのうちの前記第１のエントリーに基づく前記エントリー情報を受信し、
前記ユーザーエントリー情報に基づいて第１のタスクオブジェクトを作成し、
前記ソーシャルネットワーキングプロバイダーに、前記第１のタスクオブジェクトが作成されたことを示す確認を送り、
前記第１のタスクオブジェクトを前記キャッシュに記憶し、
前記キャッシュからの前記第１のタスクオブジェクトにアクセスし、
前記タスクユーザーインターフェース内に前記第１のタスクオブジェクトをレンダリングし、
前記タスクユーザーインターフェースを前記クライアントデバイスに配信するように構成され、
前記クライアントデバイスが、ユーザーが前記ニュースフィードユーザーインターフェースおよび前記タスクユーザーインターフェースを閲覧し(view)、それらと対話する(interact with)ことを可能にするように構成される、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明の一実施例は、例えば、ニュースフィードユーザーエントリーに基づくタスクの作成に関する。
【背景技術】
【０００２】
[0001]ソーシャルネットワーキングサービスは、しばしば、ソーシャルネットワーキングサービスに関連付けられた複数の他のユーザーと対話する機能をユーザーに提供する。そのようなサービスを通じて、ユーザーは、アイデア、インスタントメッセージ、リンク、写真、コメント、意見、ブログ記事、および他の情報のようなエントリーを他のユーザーと共有することができる。しばしば、ソーシャルネットワーキングサービスのユーザーは、ユーザーに興味を起こさせるエントリーを見る可能性があり、そのようなシナリオでは、ユーザーは、後にエントリーを検索および閲覧し、エントリーで共有されたアイデアまたは要求をフォローアップし、エントリーに導入された問題を熟考し、ユーザーに関連付けられたプロジェクトにエントリーを結びつけることなどを望む可能性がある。
【０００３】
[0002]これらおよび他の考慮事項に関連して、本明細書でなされる開示は提示される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願発明の一実施例は、例えば、ニュースフィードユーザーエントリーに基づくタスクの作成に関する。
【課題を解決するための手段】
【０００５】
[0003]タスク作成のためのデータをエクスポートし、タスクを提示するための概念および技術が、本明細書に記載される。本明細書で開示される概念および技術によれば、システムは、タスクエンジンと通信するニュースフィードエンジンを含むことができる。
【０００６】
[0004]実施形態が、タスクを作成するためのコンピューター実施方法のために提供される。いくつかの実施形態では、方法は、クライアントデバイスに、複数のエントリーを有するニュースフィードを備えたニュースフィードユーザーインターフェースを配信するステップと、クライアントデバイスから、複数のエントリーからのエントリーに基づいてタスクを作成する要求を受信するステップと、タスクエンジンと接続するステップであって、タスクエンジンがタスクオブジェクトを作成するように構成された、ステップと、エントリーに関連付けられたエントリー情報をタスクエンジンに送信するステップと、タスクエンジンから、第１のタスクオブジェクトがエントリー情報に基づいて作成されたことを示す確認を受信するステップとを含む。
【０００７】
[0005]さらなる実施形態が、タスクを提示するためのコンピューター実施方法のために提供される。いくつかの実施形態では、方法は、ソーシャルネットワーキングプロバイダーからユーザーエントリー情報を受信するステップであって、ソーシャルネットワーキングプロバイダーが、クライアントデバイスでニュースフィードユーザーインターフェースを提示するように構成され、ニュースフィードユーザーインターフェースが、１つまたは複数のユーザーエントリーを含む、ステップと、ユーザーエントリー情報に基づいてタスクオブジェクトを作成するステップと、ソーシャルネットワーキングプロバイダーに確認を送るステップであって、確認が、タスクオブジェクトが作成されたことを示す、ステップと、タスクオブジェクトをキャッシュに記憶するステップと、キャッシュからのタスクオブジェクトにアクセスするステップと、タスクユーザーインターフェースにタスクオブジェクトをレンダリングするステップと、タスクユーザーインターフェースを提示するステップとを含む。
【０００８】
[0006]さらなる実施形態が、システムのために提示される。システムは、ソーシャルネットワーキングプロバイダーを含むことができ、ソーシャルネットワーキングプロバイダーは、１つまたは複数のエントリーを含むニュースフィードユーザーインターフェースをクライアントデバイスに配信し、１つまたは複数のエントリーからの第１のエントリーに基づいてタスクを作成する要求を受信し、第１のエントリーに基づいてエントリー情報を送信するように構成される。システムは、ソーシャルネットワーキングプロバイダーから、１つまたは複数のエントリーのうちの第１のエントリーに基づくエントリー情報を受信し、ユーザーエントリー情報に基づいて第１のタスクオブジェクトを作成し、ソーシャルネットワーキングプロバイダーに、第１のタスクオブジェクトが作成されたことを示す確認を送り、第１のタスクオブジェクトをキャッシュに記憶し、キャッシュからの第１のタスクオブジェクトにアクセスし、タスクユーザーインターフェース内に第１のタスクオブジェクトをレンダリングし、タスクユーザーインターフェースをクライアントデバイスに配信するように構成されるタスクエンジンをさらに含むことができる。クライアントデバイスは、ユーザーがニュースフィードユーザーインターフェースおよびタスクユーザーインターフェースを閲覧し、それらと対話することを可能にするように構成され得る。
【０００９】
[0007]上記で説明した主題は、コンピューターで制御される装置、コンピュータープロセス、コンピューティングシステム、または、コンピューター可読記憶媒体のような製造物品として実現され得ることが理解されるべきである。これらおよび様々な他の特徴は、以下の詳細な説明を読むこと、および、関連する図面の検討から明らかになるであろう。
【００１０】
[0008]この概要は、詳細な説明で以下にさらに説明される概念の選択を簡略化した形態で導入するために提供される。この概要は、特許請求された主題の主要なまたは本質的な特徴を特定することを意図されず、この概要が、特許請求された主題の範囲を限定するために使用されることも意図されない。さらに、特許請求された主題は、本開示の任意の部分に示された任意のまたはすべての欠点を解決する実施態様に限定されない。
【図面の簡単な説明】
【００１１】
【図１】[0009]本明細書で開示される様々な実施形態のための例示的な動作環境を示すシステム図である。
【図２】[0010]本明細書で提示される実施形態の態様を実現することができるコンピューティングシステムのための例示的なコンピューターハードウェアおよびソフトウェアアーキテクチャを示すコンピューターアーキテクチャ図である。
【図３】[0011]本明細書で開示される様々な実施形態のためのシステム様々なモジュール間の例示的な通信を示すシステム図である。
【図４】[0012]例示的実施形態による、ユーザーエントリーに基づいてタスクを作成するための方法の態様を示す流れ図である。
【図５】[0013]例示的実施形態による、ユーザーエントリーに基づいてタスクを作成するための方法の態様を示す流れ図である。
【図６】[0014]例示的実施形態による、ユーザーエントリーに基づいてタスクを作成するための方法の態様を示す流れ図である。
【図７】[0015]例示的実施形態による例示的なニュースフィードユーザーインターフェースを示す線図である。
【図８】[0016]例示的実施形態による例示的なニュースフィードユーザーインターフェースを示す線図である。
【図９】[0017]例示的実施形態による例示的なタスクユーザーインターフェースを示す線図である。
【発明を実施するための形態】
【００１２】
[0018]以下の詳細な説明は、ニュースフィードユーザーエントリーからタスクオブジェクトを作成し、提示するための概念および技術を対象とする。本明細書で開示される概念および技術によれば、システムは、タスクエンジンと通信するニュースフィードエンジンを含むことができる。ニュースフィードエンジンは、ニュースフィードユーザーインターフェース内の１つまたは複数のユーザーエントリーを含むニュースフィードをホストする。いくつかの実施形態では、ニュースフィードエンジンのユーザーは、タスク作成のためのエントリーを選択する。ニュースフィードエンジンは、エントリー情報に基づいてタスクオブジェクトを作成するために、タスクエンジンにエントリー情報を送ることができる。タスクエンジンは、さらに、タスクを、タスクエンジンおよび／またはニュースフィードエンジンに関連付けられたキャッシュまたは他のデータ記憶デバイスに記憶することができる。いくつかの実施形態では、タスクエンジンは、タスクユーザーインターフェース上に提示されたタスクリスト内のタスクを表示する。ニュースフィードエンジンは、タスクが作成されたことをニュースフィードユーザーインターフェース内に示すことができ、さらに、タスクユーザーインターフェースへのリンクを提供することができる。
【００１３】
[0019]いくつかの実施形態では、ニュースフィードエンジンは、選択されたユーザーエントリーからタスクを作成するためにユーザーにオプションを提供するニュースフィードユーザーインターフェースを生成し、提示するように構成される。ニュースフィードエンジンは、タスクが作成されたことをユーザーに示すために、ニュースフィードユーザーインターフェースを更新することができる。加えて、ニュースフィードエンジンは、タスクエンジンと同期するように構成され得る。例えば、ニュースフィードユーザーインターフェースは、作成されたタスクについての１つまたは複数の他の属性をユーザーに提示することができる。タスクエンジンで作成されたタスクに行われた変更は、ニュースフィードエンジンに伝達され得、さらに、ニュースフィードユーザーインターフェースで示され得る。
【００１４】
[0020]本明細書で説明される主題は、コンピューターシステム上のオペレーティングシステムおよびアプリケーションプログラムの実行と共に実行するプログラムモジュールの一般的な文脈で提示されるが、当業者は、他の実施態様が、他のタイプのプログラムモジュールと組み合わされて実行され得ることを認識するであろう。一般的に、プログラムモジュールは、特定のタスクを実行する、または、特定の抽象データ型を実現するルーチン、プログラム、構成要素、データ構造、および他のタイプの構造を含む。さらに、当業者は、本明細書で説明される主題が、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースまたはプログラム可能な民生用電子機器、ミニコンピューター、メインフレームコンピューターなどを含む、他のコンピューターシステム構成で実施され得ることを理解するであろう。
【００１５】
[0021]以下の詳細な説明では、本明細書の一部を形成し、例示として特定の実施形態または例が示された添付図面への参照が行われる。ここで、いくつかの図面を通して同様の番号が同様の要素を表す図面を参照すると、ユーザーエントリーからタスクを作成し、提示するためのコンピューティングシステム、コンピューター可読記憶媒体、およびコンピューターで実施される方法論の態様が提示されることになる。
【００１６】
[0022]ここで図１を参照し、本明細書で提示される様々な実施形態のための１つの動作環境１００の態様が説明される。図１に示す動作環境１００は、タスクエンジン１０２と、ネットワーク１０４と、ニュースフィードエンジン１０６と、ニュースフィードユーザーインターフェース１０８と、タスクユーザーインターフェース１１０と、クライアントデバイス１１２と、ネットワーク１１４と、複数のユーザー１１８とを含む。ニュースフィードエンジン１０６は、１つまたは複数のユーザーエントリーＥ１〜Ｅ４を含む。クライアントデバイスは、ユーザー１１６によって利用される。複数のユーザー１１８は、例えば、ユーザーＵ１〜Ｕ３のようなユーザーを含む。
【００１７】
[0023]タスクエンジン１０２は、ネットワーク１０４の一部として、またはネットワーク１０４と通信して動作する。一般的に、タスクエンジン１０２は、情報を収集および集約し、情報に基づいてタスクユーザーインターフェース１１０でユーザーに提示するためのタスクオブジェクトを作成する。タスクエンジン１０２は、タスクエンジン１０２の動作を制御するための、コンピュータープログラムのようなオペレーティングシステムを含む。いくつかの実施形態では、タスクエンジン１０２は、タスクオブジェクトを作成し、集約し、提示するための機能を提供するために、オペレーティングシステム上で実行するように構成された実行可能なプログラムを含む。タスクエンジン１０２の機能に関する詳細な情報は、Ｍｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎ他によって２０１１年１１月１４日に出願された、「Ａｇｇｒｅｇａｔｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｔｉｎｇ  Ｔａｓｋｓ（タスクを集約および提示する）」という名称の出願番号１３／２９５１１３号の同時係属中の特許出願に説明される。
【００１８】
[0024]ニュースフィードエンジン１０６は、ネットワーク１０４を介してタスクエンジン１０２と通信する。一般的に、ニュースフィードエンジン１０６は、タスクエンジン１０２の外部にあり、例えば、ニュースフィードインターフェース１０８のような１つまたは複数のユーザーインターフェース上に表示される複数のユーザーエントリーＥ１〜Ｅ４をホストする。ユーザーエントリーＥ１〜Ｅ４は、例えば、ユーザーＵ１〜Ｕ３のような複数のユーザー１１８によって、ニュースフィードエンジン１０６を介して投稿される。いくつかの実施形態では、複数のユーザー１１８は、ネットワーク１１４を介してニュースフィードエンジン１０６と通信する。しかしながら、他の実施形態では、複数のユーザー１１８は、ネットワーク１０４を介してニュースフィードエンジン１０６と通信する。
【００１９】
[0025]いくつかの実施形態では、ニュースフィードエンジン１０６は、複数のユーザー１１６のような複数のユーザーにソーシャルネットワーキングサービスを提供するソーシャルネットワーキングプロバイダーである。ソーシャルネットワーキングサービスは、限定はしないが、状態更新、インスタントメッセージ、リンク、写真、ビデオ、および／もしくは他のエントリーを共有または投稿するためのサービス、記事、製品、ブログ、もしくは他のリソースにコメントするもしくはこれらに対する興味を表示するためのサービス、ならびに／または、他のサービスを含む、様々なソーシャルネットワーキングサービスを含むことができる。簡潔さのために、すべてのそのようなユーザー入力は、本明細書では、例えば、ユーザーエントリーＥ１〜Ｅ４のようなユーザーエントリーと呼ばれる。いくつかの実施形態では、ソーシャルネットワーキングサービスは、ＦＡＣＥＢＯＯＫ（登録商標）ソーシャルネットワーキングサービス、ＬＩＮＫＥＤＩＮ（登録商標）プロフェッショナルネットワーキングサービス、ＭＹＳＰＡＣＥ（登録商標）ソーシャルネットワーキングサービス、ＦＯＵＲＳＱＵＡＲＥ（登録商標）地理的ネットワーキングサービス、ＹＡＭＭＥＲ（登録商標）オフィス同僚ネットワーキングサービス、などによって提供され、または、これらを含む。
【００２０】
[0026]他の実施形態では、ニュースフィードエンジン１０６は、主に他のサービスを提供し、ソーシャルネットワーキングプロバイダーとして明確に知られていない可能性がある間接的なソーシャルネットワーキングサービスであり得る。例えば、いくつかのウェブサイトは、公開された記事を読む、商品またはサービスについてコメントする、公開、コラボレーション、ゲーム、などのような、様々な活動および／またはコンテキストの間に、電子メール、チャットサービス、および／または他の手段を介して、ユーザーが互いに対話することを可能にする。そのようなサービスの例は、限定はしないが、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  ＣｏｒｐｏｒａｔｉｏｎからのＷＩＮＤＯＷＳ  ＬＩＶＥ（登録商標）サービスおよびＸＢＯＸ  ＬＩＶＥ（登録商標）サービスを含む。
【００２１】
[0027]いくつかの実施形態では、ニュースフィードエンジン１０６は、コメント、ブログ、および／またはマイクロブログサービスを含む。簡潔さのため、コメント、要求、ブログ投稿、およびマイクロブログ投稿などは、ユーザーエントリーの定義に含まれることになり、ユーザーエントリーＥ１〜Ｅ４であり得る。そのようなサービスの例は、限定はしないが、ＹＥＬＰ（商標）コメントサービス、ＫＵＤＺＵレビューサービス、ＯＦＦＩＣＥＴＡＬＫ企業マイクロブログサービス、ＴＷＩＴＴＥＲ（登録商標）メッセージサービス、ＧＯＯＧＬＥ  ＢＵＺＺ（登録商標）サービス、および／または他のサービスを含む。上記のサービスのリストは、網羅的ではないこと、ならびに、多数の追加および／または代替のソーシャルネットワーキングサービスは、簡潔さのために本明細書で言及されないことが理解されるべきである。したがって、上記の実施形態は、例示的であり、どのようにも限定されるものとして解釈されるべきではない。
【００２２】
[0028]ネットワーク１０４は、タスクエンジン１０２と、ニュースフィードエンジン１０６と、クライアントデバイス１１２との間のような、１つまたは複数のコンピューティングデバイスの間でデータを通信する。同様に、ネットワーク１１４は、ニュースフィードエンジン１０６と、クライアントデバイス１１２と、複数のユーザーデバイス１１６との間のような、１つまたは複数のコンピューティングデバイスの間でデータを通信する。ネットワーク１０４、１１４の例は、ローカルエリアネットワークと、インターネットのようなワイドエリアネットワークとを含む。
【００２３】
[0029]いくつかの実施形態では、ネットワーク１０４、１１４は、ワイヤレス通信システム、ワイヤード通信システム、または、ワイヤレスおよびワイヤード通信システムの組合せを含む。ワイヤード通信システムは、様々な可能な実施形態では、電気的または光学的信号を使用してデータを送信することができる。ワイヤレス通信システムは、典型的には、無線周波数（ＲＦ：ｒａｄｉｏ  ｆｒｅｑｕｅｎｃｙ）信号の形態のような電磁波を介して信号を送信する。ワイヤレス通信システムは、典型的には、無線周波数信号を送信するためのＲＦ送信機と、無線周波数信号を受信するためのＲＦ受信機とを含む。ワイヤレス通信システムの例は、（ワイヤレスルータまたはワイヤレスアクセスポイントを利用するような）Ｗｉ−Ｆｉ（登録商標）通信デバイス、（１つまたは複数のセルラー基地局を利用するような）セルラー通信デバイス、および他のワイヤレス通信デバイスを含む。
【００２４】
[0030]タスクエンジン１０２およびニュースフィードエンジン１０６は、クライアントデバイス１１２上にユーザーインターフェース１０８、１１０を生成し、提示するように構成される。いくつかの実施形態では、クライアントデバイス１１２は、ソフトウェアアプリケーション、他のシステム、および／または他のエンティティを含むことができる。図示の実施形態では、クライアントデバイス１１２は、タスクエンジン１０２、ネットワーク１０４、およびニュースフィードエンジン１０６と通信して動作する。この実施形態は、例示的であり、単に、本明細書で開示される概念および技術の説明として提供される。いくつかの実施形態では、例えば、クライアントデバイス１１２は、例えば、Ｏｕｔｌｏｏｋ（登録商標）  Ｗｅｂ  Ａｃｃｅｓｓのような、ワシントン州レドモンドのＭｉｃｒｏｓｏｆｔ  Ｃｏｒｐｏｒａｔｉｏｎからの製品のＭＩＣＲＯＳＯＦＴ  ＥＸＣＨＡＮＧＥファミリのメンバを実行するコンピューター（「ＥＸＣＨＡＮＧＥサーバ」）であり得る。いくつかの実施形態では、ユーザー１１６のようなユーザーは、ユーザーインターフェース１０８、１１０と対話するために、クライアントデバイス１１２を利用することができる。本明細書で使用される「ユーザー」という用語は、広い範囲のシステム、ユーザー、人、デバイス、構成要素などを指すものとして理解されるべきであり、図示の実施形態は、どのようにも限定するものとして解釈されるべきではない。
【００２５】
[0031]一般的に、ユーザー１１６のようなユーザーは、ユーザーインターフェース１０８、１１０を閲覧し、それらと対話するために、クライアントデバイス１１２を利用する。例えば、ユーザー１１６は、例えば、ニュースフィードエンジン１０６のような１つまたは複数のソーシャルネットワーキングプロバイダーと対話するために、ニュースフィードユーザーインターフェース１０８を閲覧する。ユーザー１１６は、ユーザーエントリーＥ１〜Ｅ４のような１つまたは複数のユーザーエントリーを閲覧するために、ニュースフィードユーザーインターフェース１０８を利用することができる。いくつかの実施形態では、ユーザーエントリーＥ１〜Ｅ４は、ユーザーが後のフォローアップのためのタスクオブジェクトを作成することを選択するタスク作成オプションを含む。例えば、ニュースフィードユーザーインターフェース１０８は、ユーザーＵ１のような複数のユーザー１１８内のユーザーによって投稿されたユーザーエントリーを表示することができる。ユーザーエントリーは、例えば、ユーザーＵ１が２０１２年１２月１日にパーティしていることを示すことができる。ユーザー１１６は、ユーザーエントリーを選択することができ、タスクオブジェクトを作成するユーザーエントリー上のオプションをクリックすることができる。その後、いくつかの実施形態では、ニュースフィードエンジン１０６は、ユーザーエントリーに関連付けられた情報をタスクエンジン１０２に通信し、タスクエンジン１０２は、ユーザーエントリー情報に基づいてタスクオブジェクトを作成する。いくつかの実施形態では、タスクエンジン１０２は、ユーザー１１６が、ユーザーエントリー内の情報を後に閲覧し、フォローアップすることができるように、作成されたタスクオブジェクトをタスクユーザーインターフェース１１０内でユーザーに表示する。この例では、ユーザー１１６は、タスクユーザーインターフェース１１０上の作成されたタスクを後に閲覧することができ、ユーザーＵ１が２０１２年１２月１日にパーティしていることを思い出すことができる。
【００２６】
[0032]図２は、例えば、タスクエンジン１０２、ニュースフィードエンジン１０６、およびクライアントデバイス１１２を含み、簡潔さのために、本明細書ではクライアントデバイス１１２と呼ばれる、本開示の態様を実施するために使用され得るコンピューティングデバイスの例示的なアーキテクチャを示す。図２に示すタイプのような１つまたは複数のコンピューティングデバイスは、本明細書に記載のオペレーティングシステム、アプリケーションプログラム、およびソフトウェアモジュール（ソフトウェアエンジンを含む）を実行するために使用される。
【００２７】
[0033]クライアントデバイス１１２は、いくつかの実施形態では、中央処理装置（ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）のような少なくとも１つの処理デバイス１２０を含む。様々な処理デバイスは、様々な製造業者、例えば、Ｉｎｔｅｌ（登録商標）またはＡｄｖａｎｃｅｄ  Ｍｉｃｒｏ  Ｄｅｖｉｃｅｓから入手可能である。この例では、クライアントデバイス１１２は、また、システムメモリー１２２と、システムメモリー１２２を含む様々なシステム構成要素を処理デバイス１２０に結合するシステムバス１２４とを含む。システムバス１２４は、様々なバスアーキテクチャを使用する、メモリーバス、またはメモリーコントローラ、周辺バス、およびローカルバスを含む、任意の数のタイプのバス構造のうちの１つである。
【００２８】
[0034]クライアントデバイス１１２に適したコンピューティングデバイスの例は、デスクトップコンピューター、ラップトップコンピューター、タブレットコンピューター、スマートフォンのような携帯電話デバイス、または、デジタル命令を処理するように構成された他のデバイスを含む。
【００２９】
[0035]システムメモリー１２２は、読み出し専用メモリー１８６およびランダムアクセスメモリー１８８を含む。起動中などにクライアントデバイス１１２内の情報を転送するように作用する基本ルーチンを含む基本入力／出力システム１９０は、典型的には、読み出し専用メモリー１８６に記憶される。
【００３０】
[0036]クライアントデバイス１１２は、また、いくつかの実施形態では、デジタルデータを記憶するための、ハードディスクドライブのような二次記憶デバイス１３２を含む。二次記憶デバイス１３２は、二次記憶装置インターフェース１３４によってシステムバス１２４に接続され、取外し可能である。二次記憶デバイスおよびそれらに関連するコンピューター可読媒体は、コンピューター可読命令（アプリケーションプログラムおよびプログラムモジュールを含む）、データ構造、および、クライアントデバイス１１２のための他のデータの不揮発性記憶装置を提供する。
【００３１】
[0037]本明細書に記載の例示的な環境は、二次記憶デバイスとしてハードディスクドライブを用いるが、他のタイプのコンピューター可読記憶媒体が、他の実施形態で使用される。これらの他のタイプのコンピューター可読記憶媒体の例は、磁気カセット、フラッシュメモリーカード、デジタルビデオディスク、ベルヌーイカートリッジ、コンパクトディスク読み出し専用メモリー、デジタル多用途ディスク読み出し専用メモリー、ランダムアクセスメモリー、または読み出し専用メモリーを含む。いくつかの実施形態は、非一時的な媒体を含む。
【００３２】
[0038]オペレーティングシステム１３６、１つまたは複数のアプリケーションプログラム１３８、他のプログラムモジュール１４０、およびプログラムデータ１４２を含むいくつかのプログラムモジュールは、二次記憶デバイス１３２またはメモリー１２２に記憶され得る。
【００３３】
[0039]いくつかの実施形態では、クライアントデバイス１１２は、ユーザーがクライアントデバイス１１２に入力を提供することを可能にするために、入力デバイスを含む。入力デバイス１４４の例は、キーボード１４６、ポインター入力デバイス１４８、マイクロホン１５０、および接触感知ディスプレイ１５２を含む。他の実施形態は、他の入力デバイス１４４を含む。入力デバイスは、しばしば、システムバス１２４に結合された入力／出力インターフェース１５４を介して処理デバイス１２０に接続される。これらの入力デバイス１４４は、パラレルポート、シリアルポート、ゲームポート、またはユニバーサルシリアルバスのような、任意の数の入力／出力インターフェースによって接続され得る。入力デバイスとインターフェース１５４との間のワイヤレス通信は、同様に可能であり、いくつかの可能な実施形態では、赤外線、ＢＬＵＥＴＯＯＴＨ（登録商標）、ワイヤレス技術、８０２．１１ａ／ｂ／ｇ／ｎ、セルラー、または、他の無線周波数通信システムを含む。
【００３４】
[0040]この例示的実施形態では、接触感知ディスプレイデバイス１５６も、ビデオアダプター１５８のようなインターフェースを介してシステムバス１２４に接続される。接触感知ディスプレイデバイス１５６は、ユーザーがディスプレイに接触したときにユーザーからの入力を受信するための接触センサーを含む。そのようなセンサーは、容量センサー、圧力センサー、または他の接触センサーであり得る。センサーは、ディスプレイとの接触を検出するだけでなく、接触の場所、および経時的な接触の移動も検出する。例えば、ユーザーは、書き込み入力を提供するために、画面上で指またはスタイラスを動かすことができる。書き込み入力は、評価され、いくつかの実施形態では、テキスト入力に変換される。
【００３５】
[0041]ローカルエリアネットワーキング環境または（インターネットのような）ワイドエリアネットワーキング環境で使用されるとき、クライアントデバイス１１２は、典型的には、ワイヤレスネットワークインターフェース１６０のようなネットワークインターフェースを介してネットワークに接続される。他の可能な実施形態は、他の通信デバイスを使用する。例えば、クライアントデバイス１１２のいくつかの実施形態は、イーサネット（登録商標）ネットワークインターフェース、または、ネットワークを介して通信するためのモデムを含む。
【００３６】
[0042]クライアントデバイス１１２は、典型的には、少なくともいくつかの形態のコンピューター可読媒体を含む。コンピューター可読媒体は、クライアントデバイス１１２によってアクセスされ得る任意の利用可能な媒体を含む。例として、コンピューター可読媒体は、コンピューター可読記憶媒体と、以下でより詳細に論じられるコンピューター可読通信媒体とを含む。
【００３７】
[0043]オペレーティングシステム１００および／またはクライアントデバイス１１２の様々な実施形態は、コンピュータープロセス（方法）、コンピューティングシステムとして、または、コンピュータープログラム製品もしくはコンピューター可読媒体のような製造物品として実施され得る。コンピュータープログラム製品は、コンピューターシステムによって読み取り可能で、コンピュータープロセスを実行するための命令のコンピュータープログラムを符号化するコンピューター記憶媒体であり得る。
【００３８】
[0044]本明細書で使用されるコンピューター可読媒体という用語は、コンピューター記憶媒体を含む。コンピューター記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータのような情報の記憶のための任意の方法または技術で実現される、揮発性および不揮発性の、リムーバブルおよび非リムーバブルの媒体を含むことができる。システムメモリー１２２、リムーバブル記憶装置１３２、および非リムーバブル記憶装置１８６、１８８は、すべてコンピューター記憶媒体の例（すなわち、メモリ記憶装置）である。コンピューター記憶媒体は、限定はしないが、ＲＡＭ、ＲＯＭ、電気的消去可能読み出し専用メモリー（ＥＥＰＲＯＭ：ｅｌｅｃｔｒｉｃａｌｌｙ  ｅｒａｓａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、フラッシュメモリ、もしくは他のメモリー技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ：ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋ）、もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくは他の磁気記憶デバイス、または、情報を記憶するために使用され得、クライアントデバイス１１２によってアクセスされ得る任意の他の媒体を含むことができる。任意のそのようなコンピューター記憶媒体は、クライアントデバイス１１２の一部であり得る。クライアントデバイス１１２は、上述したように、キーボード、マウス、ペン、音声入力デバイス（例えば、マイクロホン）、接触入力デバイス、などのような入力デバイス１４４を有することもできる。ディスプレイ、スピーカー、プリンターのような出力デバイスも、含まれ得る。前述のデバイスは、例であり、他のものが使用され得る。
【００３９】
[0045]本明細書で使用されるコンピューター可読媒体という用語は、通信媒体を含むこともできる。通信媒体は、コンピューター可読命令、データ構造、プログラムモジュール、または、搬送波もしくは他の移送機構のような変調データ信号内の他のデータによって具体化され得、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号内に情報を符号化するような方法で設定された、または変更された１つもしくは複数の特性を有する信号を記述することができる。例として、限定ではなく、通信媒体は、ワイヤードネットワークまたは直接配線された接続のようなワイヤード媒体と、音響、無線周波数（ＲＦ）、赤外線、および他のワイヤレス媒体のようなワイヤレス媒体とを含むことができる。
【００４０】
[0046]ここで、図３を参照すると、システム３００の態様の概略図が示されている。システム３００は、ニュースフィードエンジン１０６と、ユーザーエントリー情報３０２と、タスクエンジン１０２と、タスクユーザーインターフェース１１０とを含む。タスクエンジン１０２は、アプリケーションプログラミングインターフェース（「ＡＰＩ：ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ」）３０４と、タスクアグリゲーター３０６と、提示モジュール３０８とを含む。ユーザーエントリー情報３０２は、１つまたは複数のカテゴリー３１４に分類され得る。タスクユーザーインターフェース１１０は、作成されたタスク３１２を表示する。
【００４１】
[0047]ニュースフィードエンジン１０６は、ＡＰＩ３０４を介してタスクエンジン１０２と通信することができる。いくつかの実施形態では、タスクエンジン１０２は、ニュースフィードエンジン１０６が、ユーザーエントリー情報３０２のようなユーザーエントリー情報をタスクエンジン１０２に提出することができるように、ＡＰＩ３０４を公開する。ユーザーエントリー情報３０２を提出する前に、タスクエンジン１０２は、ニュースフィードエンジン１０６を認証することができる。
【００４２】
[0048]いくつかの実施形態では、ＡＰＩ３０４は、ユーザーエントリー情報３０２のようなユーザーエントリーに関連する情報を受け入れる。代替実施形態では、ＡＰＩ３０４は、ニュースフィードエンジン１０６がユーザーエントリーをユーザーエントリー情報の１つまたは複数のカテゴリー３１４に分類しなければならないように、ユーザーエントリー情報３０２の様々なパラメーターを受け入れることができる。例えば、ＡＰＩ３０４は、限定はしないが、作成時刻および日付、期限、ユーザーエントリーに関連付けられた場所、タイトル、ユーザーエントリーの作者、ならびに、タスクオブジェクトの説明のようなユーザーエントリーに関連付けられた他の情報を含むパラメーター（例えば、カテゴリー）を要求することができる。いくつかの実施形態では、タスクオブジェクトの説明は、エントリーまたはエントリーに関連付けられた任意の他のテキストのメッセージ本体を含む。ユーザーエントリーの場所は、例えば、ユーザーエントリーが得られるニュースフィードエンジン１０６に関するＵＲＬもしくはリソースの場所、または、ユーザーエントリーに関連付けられた他の場所に対応することができる。他の情報は、優先度レベル、ユーザーエントリーに関連付けられたチームまたは他のユーザー、ユーザーエントリーが関連付けられたプロジェクト、ユーザーエントリーに関連付けられた完了状態、および／または他の情報を示す、フラグインジケーターを含むことができる。ＡＰＩ３０４は、タスクオブジェクトを作成し、ユーザーエントリー情報を編成および／もしくは分類するためにタスクアグリゲーター３０６によって、ならびに／または、タスクユーザーインターフェース１１０内に作成されたタスク３１２を提示するために提示モジュール３０８によって使用される任意の所望の情報を要求することができる。さらに他の実施形態では、ＡＰＩ３０４は、いかなるパラメーターも必要としなくてよく、単に、ユーザーエントリーを、それがニュースフィードエンジン内に存在するように受け入れる。
【００４３】
[0049]ニュースフィードエンジン１０６から通信されたユーザーエントリー情報３０２は、タスクアグリゲーター３０６によって集約される。タスクアグリゲーター３０６は、受信されたデータをユーザーエントリー情報として認識し、ユーザーエントリー情報３０２を編成および／もしくは分類し、ユーザーエントリー情報３０２からタスクオブジェクトを作成し、ならびに／または、ユーザーエントリー情報３０２および／もしくは作成されたタスクをキャッシュ３１０のようなデータ記憶場所に記憶するように構成され得る。他の実施形態では、タスクアグリゲーター３０６は、ユーザーエントリー情報３０２を受け入れることができ、データを編成および／または分類することなく、ユーザーエントリー情報３０２をデータ記憶場所に記憶するように進むことができる。
【００４４】
[0050]いくつかの実施形態では、ＡＰＩ３０４は、受信されたユーザーエントリー情報からタスクオブジェクトを直接作成する。例えば、ＡＰＩ３０４は、受信されたデータをユーザーエントリー情報として認識し、ユーザーエントリー情報３０２を編成および／もしくは分類し、ユーザーエントリー情報３０２からタスクオブジェクトを作成し、ならびに／または、ユーザーエントリー情報３０２および／もしくは作成されたタスクをキャッシュ３１０のようなデータ記憶場所に記憶するように構成され得る。
【００４５】
[0051]いくつかの実施形態では、タスクアグリゲーター３０６は、ユーザーエントリー情報３０２をキャッシュ３１０内のタスクデータ内に記憶するように構成される。キャッシュ３１０は、タスクエンジン１０２および／もしくはニュースフィードエンジン１０６によってホストされ得、または、これらと通信することができる。図３に示されていないが、キャッシュ３１０は、ニュースフィードエンジン１０６に直接または間接的にアクセス可能であり得る。いくつかの実施形態では、キャッシュ３１０の機能は、メモリーデバイス、ハードドライブ、または、タスクエンジン１０２の機能を提供するデバイスの他の記憶デバイスによって提供される。他の実施形態では、キャッシュ３１０の機能は、例えば、１つまたは複数のデータベース、サーバーコンピューター、大容量記憶デバイス、メモリーデバイス、それらの組合せ、などのような、タスクエンジン１０２と通信する１つまたは複数のデータ記憶デバイスによって提供される。したがって、いくつかの実施形態では、キャッシュ３１０は、タスクエンジン１０２の外部にあってよく、ネットワーク１０４のようなネットワークを介してアクセスされ得ることが理解される。
【００４６】
[0052]上述したように、いくつかの実施形態では、タスクエンジン１０２およびニュースフィードエンジン１０６は、ユーザーエントリー情報３０２が記憶されたキャッシュ３１０へのアクセスを有する。そのような実施形態では、タスクユーザーインターフェース１１０を介するユーザーによるユーザーエントリー情報３０２への修正は、タスクエンジン１０２とニュースフィードエンジン１０６の両方によってアクセスされ得る。したがって、ユーザーエントリー情報３０２の修正、更新、削除、および任意の他のユーザー変更は、ニュースフィードユーザーインターフェース１０８とタスクユーザーインターフェース１１０の両方で反映され得る。しかしながら、いくつかの実施形態では、ユーザーエントリー情報３０２のそのようなユーザー変更は、ユーザーインターフェース１０８、１１０のうちの一方のみに反映され得、両方に反映され得、またはどちらにも反映されなくてよいことが理解される。
【００４７】
[0053]さらに他の実施形態では、ニュースフィードエンジン１０６は、独立して、ユーザーエントリー情報３０２をニュースフィードエンジンデータストア（図示せず）内に記憶することができる。いくつかの実施形態では、タスクアグリゲーター３０６は、ユーザーエントリー情報３０２に行われた変更をニュースフィードエンジン１０６に通信するように構成される。ニュースフィードエンジン１０６は、ニュースフィードエンジン１０６によって記憶されたユーザーエントリー情報３０２および関連するユーザーエントリーを更新するために、そのような通信を利用することができる。そのような変更は、ニュースフィードユーザーインターフェース１０８で反映され得る。さらに他の実施形態では、タスクエンジン１０２は、ユーザーエントリー情報および作成されたタスクオブジェクトを表すデータ、ならびに／または、作成されたオブジェクトを、キャッシュ３１０に記憶し、ニュースフィードエンジン１０６は、ユーザーエントリー情報および作成されたタスクオブジェクトを表すデータ、ならびに／または、作成されたオブジェクトを、独立したニュースフィードエンジンデータストア（図示せず）に記憶する。タスクエンジン１０２は、独立したニュースフィードエンジンデータストアをキャッシュ３１０と同期させるように構成され得る。したがって、いくつかの実施形態では、キャッシュ３１０内のタスクオブジェクトを作成、修正、および／または削除する際に、タスクエンジン１０２は、独立したニュースフィードエンジンデータストアをキャッシュ３１０と同期させるために、ＡＰＩ３０４を介してニュースフィードエンジン１０６と通信し、同期データをニュースフィードエンジン１０６に送信することができる。
【００４８】
[0054]提示モジュール３０８は、タスクユーザーインターフェース１１０を生成し、１つまたは複数のユーザーに提示するように構成される。上述したように、ユーザーは、ソフトウェアユーザー、他のソフトウェアアプリケーション、他のシステム、および／または他のエンティティを含むことができる。提示モジュール３０８は、作成されたタスク３１２のような作成されたタスクと対話するために、任意の数のユーザーインターフェースをユーザーに提供することができる。ユーザーは、作成されたタスクを修正するために、タスクユーザーインターフェース１１０を利用することができる。提示モジュール３０８は、タスクに行われた変更を示すために、タスクアグリゲーター３０６と通信することができる。いくつかの実施形態では、提示モジュール３０８は、さらに、作成されたタスクへの変更をニュースフィードモジュール１０６に通信するように構成され得、それによって、ニュースフィードモジュール１０６が任意のそのような変更をニュースフィードユーザーインターフェース１０８内で示すことを可能にする。いくつかの実施形態では、提示モジュール３０８は、タスクユーザーインターフェース１１０内で提示されるべき情報を収集するために、キャッシュを利用する。しかしながら、代替実施形態では、タスクエンジン１０２は、作成されたタスクのような情報を、タスクユーザーインターフェース１１０での提示のために、提示モジュール３０８に直接送ることができる。ここで、図４に向かうと、ニュースフィードエントリーからタスクを作成するための方法４００の態様が、詳細に説明される。本明細書で開示される方法の動作は、必ずしも任意の特定の順序で提示されないことと、代替の順序での動作のいくつかまたはすべての実行は、可能であり、予期されることとが理解されるべきである。動作は、説明および例示を容易にするために、実証される順序で提示されている。動作は、添付の特許請求の範囲から逸脱することなく、追加され得、省略され得、および／または、同時に実行され得る。
【００４９】
[0055]図示の方法は、任意の時点で終了され得、その全体で実行される必要はないことも理解されるべきである。方法の動作および／または実質的に同等の動作のいくつかまたはすべては、本明細書で定義される、コンピューター可読媒体に含まれるコンピューター可読命令の実行によって実行され得る。明細書本文および特許請求の範囲で使用される「コンピューター可読命令」という用語およびその変形は、本明細書では、ルーチン、アプリケーション、アプリケーションモジュール、プログラムモジュール、プログラム、構成要素、データ構造、アルゴリズム、などを含むように、拡張的に使用される。コンピューター可読命令は、シングルプロセッサーまたはマルチプロセッサーシステム、ミニコンピューター、メインフレームコンピューター、パーソナルコンピューター、ハンドヘルドコンピューティングデバイス、マイクロプロセッサーベース、プログラム可能な民生用電子機器、それらの組合せ、などを含む、様々なシステム構成で実施され得る。
【００５０】
[0056]したがって、本明細書に記載の論理演算は、（１）コンピューターで実施される動作、もしくは、コンピューティングシステムで実行するプログラムモジュールのシーケンスとして、および／または（２）コンピューティングシステム内の相互接続された機械論理回路もしくは回路モジュールとして実施されることが理解されるべきである。実施態様は、コンピューティングシステムの性能および他の要件に依存する選択の問題である。したがって、本明細書に記載の論理演算は、状態、動作、構造的デバイス、動作、またはモジュールとして、様々に称される。これらの動作、構造的デバイス、動作、およびモジュールは、ソフトウェア、ファームウェア、特別な目的のデジタルロジック、およびそれらの任意の組合せで実施され得る。
【００５１】
[0057]本開示の概念を例示および説明する目的のために、本明細書で開示される方法は、ＡＰＩ３０４、タスクアグリゲーター３０６、および／または提示モジュール３０８の実行を介して、タスクエンジン１０２によって実行されるものとして説明される。これらの実施形態は、例示的であり、どのようにも限定するものとして見なされるべきではないことが理解されるべきである。具体的には、タスクエンジン１０２以外のデバイスは、限定はしないが、ＡＰＩ３０４、タスクアグリゲーター３０６、および／または提示モジュール３０８を含む、任意のアプリケーションまたはモジュールの実行を介して、本明細書に記載の機能を提供することができる。
【００５２】
[0058]方法４００は、動作４０２で開始し、タスクエンジン１０２は、ニュースフィードエンジン１０６に接続する。上述したように、タスクエンジン１０２とニュースフィードエンジン１０６との間の通信は、ＡＰＩ３０４を介して開始され得る。例えば、ニュースフィードエンジン１０６は、ニュースフィードユーザーインターフェース１０８内のタスク作成オプションのユーザー選択に基づいて、タスクエンジン１０２との接続を要求することができる。いくつかの実施形態では、ニュースフィードエンジン１０６は、ＡＰＩ３０４を介してタスクエンジン１０２にアクセスすることができる。例えば、タスクエンジン１０２は、ニュースフィードエンジン１０６がタスクエンジン１０２と直接通信することを可能にするために、ＡＰＩ３０４をニュースフィードエンジン１０６に公開することができる。さらに他の実施形態では、タスクエンジン１０２は、ニュースフィードエンジン１０６による認証、および／または、タスクが作成されるべきユーザーまたはシステムの識別を要求することができる。
【００５３】
[0059]動作４０２から、方法４００は、動作４０４に進み、タスクエンジン１０２は、ニュースフィードエンジン１０６からユーザーエントリー情報を取得する。説明したように、ユーザーエントリー情報は、ユーザーエントリーに関連付けられたオプションを選択することによって、ニュースフィードエンジン１０６のユーザーからの要求に応答して、ニュースフィードエンジン１０６によってタスクエンジン１０２に提出され得る。いくつかの実施形態では、ニュースフィードエンジン１０６は、その後、ユーザーエントリー情報３０２のようなユーザーエントリーに関連付けられた情報を、タスクエンジン１０２に送信する。さらに他の実施形態では、ＡＰＩ３０４は、図３を参照して上記で説明したように、ユーザーエントリー情報３０２が１つまたは複数のパラメーターまたはデータのカテゴリーで提出されることを要求することができる。そのような例では、ニュースフィードエンジン１０６は、ユーザーエントリーからそのようなデータを抽出し、抽出されたデータをＡＰＩ３０４に送信することができる。例えば、いくつかの実施形態では、ＡＰＩ３０４は、タスクのタイトルパラメーターを要求することができる。いくつかの実施形態では、ニュースフィードエンジン３０４は、タスクのタイトルパラメーターとしてユーザーエントリーの本体を利用することができる。しかしながら、他の実施形態では、ＡＰＩ３０４は、２つ以上のパラメーターを要求することができ、または、パラメーターを要求しなくてよいことが理解される。
【００５４】
[0060]動作４０４から、方法４００は、動作４０６に進み、タスクエンジン１０２は、ユーザーエントリー情報からタスクオブジェクトを作成する。いくつかの実施形態では、タスクエンジン１０２は、ニュースフィードエンジン１０６から受信されたユーザーエントリー情報を、タスクアグリゲーター３０６に提出する。タスクアグリゲーター３０６は、タスクエンジン１０２の機能に基づいてタスクオブジェクト３１２を作成するために、ユーザーエントリー情報および情報の任意のパラメーターを利用することができる。
【００５５】
[0061]動作４０６から、方法４００は、動作４０８に進み、タスクエンジン１０２は、作成されたタスク３１２をキャッシュ３１０に書き込む。しかしながら、いくつかの実施形態では、タスクエンジン１０２は、作成されたタスク３１２をキャッシュ３１０に書き込まず、代わりに、作成されたタスク３１２を提示モジュール３０８に送るように進む。
【００５６】
[0062]動作４０８から、方法４００は、動作４１０に進み、タスクエンジン１０２は、タスク作成の確認をニュースフィードエンジン１０６に通信する。いくつかの実施形態では、タスクエンジン１０２から確認を受信した後、ニュースフィードエンジン１０６は、タスクがユーザー選択されたユーザーエントリーに基づいて作成されていることの、ユーザーへの通知を、ニュースフィードユーザーインターフェース１０８上に表示する。さらに他の実施形態では、ニュースフィードエンジン１０６は、代替的または追加的に、ユーザーをタスクユーザーインターフェース１１０にリダイレクトすることができ、および／または、タスクユーザーインターフェース１１０へのリンクを提供することができ、それによって、ユーザーは、タスクリスト内の作成されたタスク３１２を閲覧し、それと対話することができる。
【００５７】
[0063]ここで図５に向かい、タスク作成のためのユーザーエントリー情報を通信するための方法５００の態様が、詳細に説明される。方法５００は、動作５０２で開始し、ニュースフィードエンジン１０６は、タスクエンジン１０２と接続する試みでＡＰＩ３０４を呼び出す。上述したように、タスクエンジン１０２は、ニュースフィードエンジン１０６がタスクエンジン１０２と直接通信することを可能にするために、ニュースフィードエンジン１０６にＡＰＩ３０４を公開することができる。いくつかの実施形態では、ＡＰＩ３０４は、ニュースフィードエンジン１０６とタスクエンジン１０２との間の通信を可能にする前に、ニュースフィードエンジン１０６を認証することができる。
【００５８】
[0064]動作５０２から、方法５００は、動作５０４に進み、ニュースフィードエンジン１０６は、ＡＰＩ３０４を介してタスクエンジン１０２にユーザーエントリー情報を送信する。ニュースフィードエンジン１０６は、例えば、ユーザーエントリーＥ１のようなユーザーエントリーから情報を抽出することができ、抽出されたデータをタスクエンジン１０２に送信することができる。例えば、ＡＰＩ３０４は、ニュースフィードエンジン１０６がタスクのタイトルを送ることを要求することができる。いくつかの実施形態では、ニュースフィードエンジン１０６は、ユーザーエントリーＥ１のテキストをタスクのタイトルとして送ることができる。他の実施形態では、ＡＰＩ３０４は、図３を参照して上記で説明したように、さらなるパラメーターを要求する。ニュースフィードエンジン１０６は、タスク作成動作を正常に完了するために必要であるのと同じくらい多くのパラメーターを送信することができる。
【００５９】
[0065]動作５０４から、方法５００は、動作５０６に進み、ニュースフィードエンジンは、タスクオブジェクトが動作５０４で送信されたユーザーエントリー情報に基づいて作成されていることの確認をタスクエンジン１０２から受信する。確認は、ネットワーク１０４のようなネットワークを介して、タスクエンジン１０２からニュースフィードエンジン１０６に送信され得る。いくつかの実施形態では、タスクエンジン１０２から確認を受信した後、ニュースフィードエンジン１０６は、タスクがユーザー選択されたユーザーエントリーに基づいて作成されていることのユーザーへの通知を、ニュースフィードユーザーインターフェース１０８上に表示し、さらに他の実施形態では、ニュースフィードエンジン１０６は、代替的または追加的に、ユーザーをタスクユーザーインターフェース１１０にリダイレクトすることができ、および／または、タスクユーザーインターフェース１１０へのリンクを提供することができ、それによって、ユーザーは、タスクリスト内の作成されたタスク３１２を閲覧し、それと対話することができる。例えば、ニュースフィードユーザーインターフェース１０８上に表示された通知は、ユーザーによって選択されたとき、ユーザーをタスクユーザーインターフェース１１０にリダイレクトするリンクを含むことができる。
【００６０】
[0066]ここで図６に向かい、タスク作成動作のユーザー選択のための方法６００の態様が、詳細に説明される。方法６００は、動作６０２で開始し、ユーザー１１６のようなユーザーは、ニュースフィードユーザーインターフェース１０８のようなニュースフィードユーザーインターフェース上のニュースフィードエントリーを受信する。ニュースフィードエントリーは、例えば、複数のユーザー１１８のような、ユーザーまたはニュースフィードエンジン１０６によって入力された任意のエントリーであり得る。いくつかの実施形態では、ユーザーエントリーは、ユーザー１１６に向けられ、ユーザー１１６に属するプロファイル上に現れ得る。他の実施形態では、ユーザーエントリーは、ユーザー１１６には向けられなくてよく、代わりに、ユーザー１１６に可視のエントリーの公開ニュースストリーム上に現れない。
【００６１】
[0067]動作６０２から、方法６００は、動作６０４に進み、ユーザー１１６は、ニュースフィードエントリーから特定のユーザーエントリーを選択する。いくつかの実施形態では、ユーザー１１６は、例えば、マウス１４８のような入力デバイスを利用することによって、ニュースフィードユーザーインターフェース１０８上のユーザーエントリーを選択する。他の実施形態では、ユーザー１１６は、ユーザーエントリーを選択するために、例えば、キーボード１４６、マイクロホン１５０、接触センサー１５２などを含む、任意の他の入力デバイスを利用することができる。
【００６２】
[0068]動作６０４から、方法６００は、動作６０６に進み、ユーザー１１６は、選択されたユーザーエントリーのためのタスク作成オプションを選択する。ユーザー１１６は、例えば、ユーザーエントリーに基づいてタスクを作成するオプションを含むメニューを閲覧するために、選択されたユーザーエントリーをクリックするために、入力デバイスを使用することができる。いくつかの実施形態では、メニューは、ユーザーエントリーを「フォローアップ」するオプションを含むことができる。ユーザー１１６は、ユーザーエントリーに基づいてタスクを作成するために、「フォローアップ」オプションを選択することができる。他の実施形態では、タスク作成オプションは、オプションの選択がユーザーエントリーに基づくタスクの作成をもたらすことをユーザー１１６に示す任意の他の言語を利用することができる。
【００６３】
[0069]動作６０６から、方法６００は、動作６０８に進み、ユーザー１１６は、ニュースフィードユーザーインターフェース１０８上のタスク作成通知を閲覧する。選択されたユーザーエントリーに関するタスク作成オプションの選択後、ニュースフィードエンジン１０６は、ユーザーエントリー情報に基づくタスク作成に関して、ユーザーエントリー情報をタスクエンジン１０２に通信することができる。いくつかの実施形態では、その後、タスクエンジン１０２は、ニュースフィードエンジン１０６にタスク作成の確認を返すことができる。ニュースフィードエンジン１０６は、次いで、タスク作成が成功したことの通知をユーザー１１６に提示するために、ニュースフィードユーザーインターフェース１０８を変更することができる。いくつかの実施形態では、通知は、ユーザー１１６が自分のタスクリスト内の作成されたタスクを閲覧することができるタスクユーザーインターフェース１１０へのリスクを含むことができる。
【００６４】
[0070]いくつかの実施形態では、ニュースフィードユーザーインターフェース１０８は、確認を提示しなくてよく、代わりに、ユーザー１１６を、ユーザー１１６が作成されたタスクを閲覧することができるタスクユーザーインターフェース１１０にリダイレクトすることができる。他の実施形態では、タスク作成機能が成功しない場合、ニュースフィードユーザーインターフェース１０８は、失敗を示す通知を表示することができる。しかしながら、さらに他の実施形態では、ニュースフィードユーザーインターフェース１０８は、タスク作成機能で失敗があった場合、どのような通知も表示しなくてよい。
【００６５】
[0071]ここで図７を参照し、例示的なニュースフィードユーザーインターフェース７００が示される。ニュースフィードユーザーインターフェース７００は、ニュースフィード７０２と、第１のユーザーエントリー７０４と、第２のユーザーエントリー７０６と、メニュー７０８と、フォローアップオプション７１０とを含む。ニュースフィードユーザーインターフェース７００は、例えば、ニュースフィードエンジン１０６のようなソーシャルネットワーキングプロバイダーによってクライアントデバイス１１２上でユーザー１１６に対して表示されるユーザーインターフェースの一例である。
【００６６】
[0072]いくつかの実施形態では、ニュースフィード７０２は、ユーザー１１６に関連付けられたユーザープロファイルの一部であり得、ニュースフィードエンジン１０６によって表示され得る。そのような例では、ユーザープロファイルは、いずれもユーザー１１６によって直接投稿された、または別のユーザーによって直接投稿されるが、ユーザー１１６によって閲覧するために意図された、第１のユーザーエントリー７０４および第２のユーザーエントリー７０６のような１つまたは複数のユーザーエントリーを含むことができる。他の実施形態では、ニュースフィード７０２は、ニュースフィードエンジン１０６によって表示された１つまたは複数のユーザーエントリーのニュースストリームの一部であり得る。そのような例では、１つまたは複数のユーザーエントリーは、ユーザー１１６のために直接意図されなくてよいが、それにもかかわらず、ユーザー１１６によって可視である。いくつかの実施形態では、ユーザー１１６に向けられたユーザーエントリーのみが、ユーザー１１６によってタスク作成のために選択され得る。しかしながら、他の実施形態では、ユーザー１１６のために意図されていてもいなくても、任意のユーザーエントリーは、ユーザー１１６によってタスク作成のために選択され得る。
【００６７】
[0073]ユーザー１１６、本例では、Ｊａｎｅ  Ｄｏｅは、第１のユーザーエントリー７０４を投稿した。それに応答して、第２のユーザー、Ｊｏｅ  Ｓｍｉｔｈは、返信投稿、第２のユーザーエントリー７０６を投稿した。Ｊａｎｅ  Ｄｏｅが、第２のユーザーエントリー７０６の主題に興味がある場合、Ｊａｎｅ  Ｄｏｅは、第２のユーザーエントリー７０６に基づいてタスクを作成することを決定することができる。いくつかの実施形態では、これを行うために、Ｊａｎｅ  Ｄｏｅは、メニュー７０８を閲覧するために、第２のユーザーエントリー７０６を選択するために、マウスのような入力デバイスを利用する。選択の方法は、様々であり、限定はしないが、左クリック、右クリック、タッチ、ダブルクリック、または、選択の任意の他の方法を含むことができる。さらなる実施形態では、ユーザー１１６は、第２のユーザーエントリー７０６などの上に浮かぶ入力デバイスを利用することによって、メニュー７０８を閲覧することができる。
【００６８】
[0074]本例のようないくつかの実施形態では、メニュー７０８は、第２のユーザーエントリー７０６に関連付けられたタスク作成オプションを含む。本例では、Ｊａｎｅ  Ｄｏｅは、第２のユーザーエントリーに基づいてタスクを作成するためにフォローアップオプション７１０を選択し、タスクは、タスクユーザーインターフェース１１０のようなタスクユーザーインターフェース上で後に閲覧され得る。他の実施形態では、フォローアップオプション７１０は、異なる言語を含むことができるが、ユーザー１１６によって選択されたとき、本明細書で論じられたのと同じ動作をもたらす。
【００６９】
[0075]ここで、図８を参照し、例示的なニュースフィードユーザーインターフェース８００が示される。一般に、ニュースフィードユーザーインターフェース８００は、例えば、フォローアップオプション７１０のようなタスク作成オプションの選択後にユーザー１１６に対して表示されるニュースフィードユーザーインターフェースの一例である。
【００７０】
[0076]いくつかの実施形態では、フォローアップオプション７１０の選択後、通知８０２のような通知が、ユーザー１１６に提示される。通知８０２は、異なる実施形態では言語が異なってよいが、通知８０２は、タスクが選択されたユーザーエントリーに基づいて作成されていることをユーザー１１６に通知するために表示される。したがって、例えば、Ｊａｎｅ  Ｄｏｅが、第２のユーザーエントリー７０６に基づいてタスクを作成するためにフォローアップオプション７１０を選択し、タスク作成が成功した場合、通知８０２は、タスクが第２のユーザーエントリー７０６に基づいて作成されたことを示すために、図示のように提示され得る。
【００７１】
[0077]通知８０２は、ユーザー１１６によって選択されたとき、ユーザー１１６をタスクユーザーインターフェース１１０にリダイレクトするリンク８０４を含むことができる。いくつかの実施形態では、リンク８０４は、ユーザー１１６に関連付けられたすべてのタスク、および／または、第２のユーザーエントリー７０６に基づく新たに作成されたタスクを有するタスクリストを閲覧するために、ユーザー１１６をタスクユーザーインターフェースにリダイレクトする。他の実施形態では、リンク８０４は、ユーザー１１６がタスクエンジン１０２に関連付けられた資格情報を用いてログインすることができるログインページにユーザー１１６をリダイレクトし、それによって、ログイン後、ユーザー１１６は、ユーザー１１６に関連付けられたタスクリスト、および／または、第２のユーザーエントリー７０６に基づいて新たに作成されたタスクを閲覧することができる。さらに他の実施形態では、ニュースフィードユーザーインターフェース８００は、通知８０２を表示しないが、代わりに、タスクユーザーインターフェース１１０、および／または、タスクエンジン１０２に関連付けられたログインページのいずれかに、ユーザー１１６を自動的にリダイレクトする。
【００７２】
[0078]いくつかの実施形態では、通知８０２を表示することに加えて、またはその代わりに、ニュースフィードユーザーインターフェース８００は、第２のユーザーエントリー７０６上にインジケーターを含むことによって、タスク作成が成功したことを示すことができる。例えば、いくつかの実施形態では、第２のユーザーエントリー７０６上の「Ｌｉｋｅ（好む）」オプションのそばに、ニュースフィードユーザーインターフェース８００は、第２のユーザーエントリー７０６が現在のタスクであることを示すリンクを含むことができる。リンクは、例えば、選択されたとき、ユーザー１１６をリンク８０４と同様にリダイレクトする「作成されたタスク」または「タスクを閲覧する」を述べることができる。代替実施形態では、第２のユーザーエントリー７０６上のリンクは、例えば、「タスクを削除する」、「フォローアップしない」、および／もしくは「タスク完了をマーク」、または、第２のユーザーエントリー７０６が現在タスクであり、さらなる動作が行われ得ることを示す同様のものを述べる。そのような実施形態では、ユーザー１１６によって選択された場合、ニュースフィードエンジン１０６は、本明細書で説明したのと同じ方法でタスクエンジン１０２と接続することができ、関連するタスクの削除を要求する、または、関連するタスクが完了としてマークされることを要求することができる。そのような実施形態では、タスクアグリゲーター３０８は、キャッシュ３１０からの作成されたタスクにアクセスすることができ、タスクを削除する、および／または、タスクを完了したとしてマークすることができる。その後、提示モジュール３０８は、タスクをユーザーのタスクリストから削除するため、または、タスクを完了したとしてユーザーのタスクリスト内でマークするために、タスクユーザーインターフェース１１０を変更することができる。同様に、ユーザー１１６がタスクユーザーインターフェース１１０内の作成されたタスクを削除した場合、いくつかの実施形態では、これはニュースフィードエンジン１０６に通信される。これに応答して、ニュースフィードエンジン１０６は、タスクが削除されているおよび／または完了としてマークされていることを示す通知を表示するために、ニュースフィードユーザーインターフェース８００を変更することができる。他の実施形態では、ニュースフィードエンジン１０６は、第２のユーザーエントリー７０６上のリンクを、「タスクを削除する」または「フォローアップしない」から「タスクを作成する」または「フォローアップ」に変更することができ、したがって、第２のユーザーエントリー７０６に基づくタスクがもはや存在しないので、第２のユーザーエントリー７０６に基づいてタスクを作成するオプションが現在利用可能であることを示す。さらに他の実施形態では、ニュースフィードエンジン１０６は、第２のユーザーエントリー７０６上のリンクを、「タスク完了をマーク」から、関連するタスクを未完了としてマークするオプションを示す「タスク未完了をマーク」に変更することができる。上記に挙げた実施形態は、単なる例であり、したがって、リンクは、代替の表現を利用することができるが、同様の機能を果たすことができる。
【００７３】
[0079]ここで図９を参照し、例示的なタスクユーザーインターフェース９００が示される。タスクユーザーインターフェース９００は、ユーザー１１６がリンク８０４を選択する際にリダイレクトされるものの一例である。タスクユーザーインターフェース９００は、ユーザー１１６に対して特定であり、第２のユーザーエントリー７０６に基づいて作成されたタスク９０４であるタスクリスト９０２を含む。
【００７４】
[0080]図示のように、いくつかの実施形態では、作成されたタスク９０４は、タスクのタイトルのような第２のユーザーエントリー７０６の本体を含むことになる。他の実施形態では、ニュースフィードエンジン１０６は、ユーザー１１６にタイトルオプションを提供することができる。タスクユーザーインターフェース９００を介して、ユーザー１１６は、ニュースフィードエンジン１０６のような様々なタスクシステムからのものであり得るすべての作成されたタスクのリストを閲覧することができる。加えて、ユーザー１１６は、タスクを修正、例えば、タスクを更新、改定、変更、および／または削除することができ、いくつかの実施形態では、ユーザー１１６は、タイトル、期限、作成日付、本体、説明、優先度、完了状態、などを含む、投稿の様々なパラメーターを変更することができる。上述したように、タスクユーザーインターフェース９００上の作成タスク９０４に行われた変更は、いくつかの実施形態では、ニュースフィードユーザーインターフェース８００のようなニュースフィードユーザーインターフェースで反映され得る。このように、いくつかの実施形態では、ニュースフィードエンジン１０６は、タスクエンジン１０２と同期する。しかしながら、代替実施形態では、作成されたタスク９０４への変更は、ニュースフィードユーザーインターフェース８００には影響を与えない。
【００７５】
[0081]様々な実施形態が、方法、システム、およびコンピュータープログラム製品のブロック図および／または動作説明図を参照して上記で説明されている。ブロック内に示される機能／動作は、任意の流れ図に示された順序から外れて発生することができる。例えば、連続して示された２つのブロックは、実際は、実質的に同時に実行され得、または、ブロックは、含まれた機能／動作に応じて、時には逆の順序で実行され得る。
【００７６】
[0082]特定の実施形態を説明してきたが、他の実施形態が存在し得る。さらに、様々な実施形態を、メモリーおよび他の記憶媒体に記憶されたデータに関連付けられているものとして説明してきたが、データは、また、二次記憶デバイス（すなわち、ハードディスク、フロッピー（登録商標）ディスク、もしくはＣＤ−ＲＯＭ）、インターネットからの搬送波、または、他の形態のＲＡＭもしくはＲＯＭのような他のタイプのコンピューター可読媒体に記憶され得、または、これらから読み出され得る。さらに、開示されたルーチンの動作は、本明細書に記載の実施形態から逸脱することなく、動作を並べ替えるおよび／または動作を挿入することを含む、任意の方法で修正され得る。
【００７７】
[0083]上記に基づいて、タスクを集約および提示するための技術は、本明細書で開示されていることが理解されるべきである。本明細書に提示される主題を、コンピューターの構造的特徴、方法論的および変容作用、特定のコンピューティング機械、およびコンピューター可読媒体に特定の言語で説明してきたが、添付の特許請求の範囲で定義される本発明は、本明細書に記載の特定の特徴、作用、または媒体に必ずしも限定されないことが理解されるべきである。むしろ、特定の特徴、作用、および媒体は、特許請求の範囲を実施する例示的な形態として開示されている。
【００７８】
[0084]上記で説明した主題は、例示としてのみ提供され、限定するものとして解釈されるべきではない。様々な修正および変更は、例示および説明した例示的実施形態およびアプリケーションにしたがうことなく、以下の特許請求の範囲に記載の本発明の真の要旨および範囲から逸脱することなく、本明細書に記載の主題に対して行われ得る。
【図２】
2016503202.tif 000003
【図３】
2016503202.tif 000004
【図４】
2016503202.tif 000005
【図５】
2016503202.tif 000006
【図６】
2016503202.tif 000007
【図７】
2016503202.tif 000008
【図８】
2016503202.tif 000009
【図９】
2016503202.tif 000010
【図１】
2016503202.tif 000011
【国際調査報告】
2016503202.tif 000012
2016503202.tif 000013