IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ タブロー ソフトウェア,エルエルシーの特許一覧

特開2024-177457データ分析及びレポート生成のためのインタラクティブなインターフェース
<>
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図1
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図2
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図3
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図4
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図5A
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図5B
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図6
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図7
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図8
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図9
  • 特開-データ分析及びレポート生成のためのインタラクティブなインターフェース 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024177457
(43)【公開日】2024-12-19
(54)【発明の名称】データ分析及びレポート生成のためのインタラクティブなインターフェース
(51)【国際特許分類】
   G06F 3/0481 20220101AFI20241212BHJP
   G06F 16/904 20190101ALI20241212BHJP
   G06F 9/451 20180101ALI20241212BHJP
【FI】
G06F3/0481
G06F16/904
G06F9/451
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024174870
(22)【出願日】2024-10-04
(62)【分割の表示】P 2023505890の分割
【原出願日】2021-07-26
(31)【優先権主張番号】16/944,064
(32)【優先日】2020-07-30
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】521550194
【氏名又は名称】タブロー ソフトウェア,エルエルシー
(74)【代理人】
【識別番号】110004381
【氏名又は名称】弁理士法人ITOH
(72)【発明者】
【氏名】キム,ジュン ホ
(57)【要約】
【課題】データビジュアライゼーションを管理することを課題とする。
【解決手段】データモデルに関連付けられた一次ビジュアライゼーションは、一次ビジュアライゼーションがディスプレイパネルに表示され得るように提供され得る。インサイト項目は、インサイト項目がデータモデルの1つ又は複数の部分を共有し得る1つ又は複数のビジュアライゼーションに対応し得るように、及び、インサイト項目がインサイトパネルに表示され得るように、一次ビジュアライゼーション及びデータモデルに基づいて生成され得る。インサイト項目がインサイトパネルから選択されたことに応答して、一次ビジュアライゼーションの代わりにディスプレイパネルに表示されるインサイト項目に基づいてビジュアライゼーションを生成するステップと、サムネイルビューがスクラッチパネルに表示され得るように一次ビジュアライゼーションのサムネイルビューを含むスクラッチ項目を生成するステップとを含む追加のアクションが実行され得る。
【選択図】図4
【特許請求の範囲】
【請求項1】
アクションを実行させるように構成された命令を実行する1つ又は複数のプロセッサを使用してデータビジュアライゼーションを管理するための方法であって、
データモデルに関連付けられた一次ビジュアライゼーションを提供するステップであって、前記一次ビジュアライゼーションは、グラフィカルユーザインターフェース(GUI)のディスプレイパネルに表示される、ステップと、
前記GUIの前記ディスプレイパネルとのユーザのインタラクションに応答して、
前記データモデルに基づいてインサイト項目及び関連する自然言語ナラティブを生成するステップであって、前記インサイト項目は、インサイトビジュアライゼーションと、前記インサイト項目の意味及び前記インサイト項目に関連付けられた傾向又はインサイトのうちの1つ又は複数についての関連性を説明する前記関連する自然言語ナラティブとを含む、ステップと、
前記インサイト項目及び前記関連する自然言語ナラティブのインタラクティブな表示を提供するインサイトパネルを表示するために前記GUIを採用するステップと、
前記GUIによって表示された前記インサイトパネルとのユーザのインタラクションに応答して、前記インサイト項目を選択するステップと、
前記一次ビジュアライゼーションの代わりに前記インサイト項目を前記ディスプレイパネルに表示するステップと
を含むアクションを実行するステップと
を含む方法。
【請求項2】
前記一次ビジュアライゼーション及び前記データモデルに基づいて1つ又は複数のインサイト項目を生成するステップであって、前記1つ又は複数のインサイト項目は、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数に対応する、ステップ
を更に含む、請求項1に記載の方法。
【請求項3】
前記インサイトパネルに表示される1つ又は複数のナラティブを生成するステップであって、前記1つ又は複数のナラティブは、前記表示されたインサイト項目のコンテキストを説明する、ステップ
を更に含む、請求項1に記載の方法。
【請求項4】
前記インサイト項目と、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数との間の対応関係を提供するステップ
を更に含む、請求項1に記載の方法。
【請求項5】
前記インサイト項目を選択したことに応答して、前記一次ビジュアライゼーションの代わりに前記ディスプレイパネルに表示するためのビジュアライゼーションを生成するステップと、
スクラッチパネルに表示するための前記一次ビジュアライゼーションのサムネイルビューを含むスクラッチ項目を生成するステップと
を更に含む、請求項1に記載の方法。
【請求項6】
前記インサイトパネルに表示される別のインサイト項目又はスクラッチパネルに表示されるスクラッチ項目のうちの1つの選択に応答して、別のビジュアライゼーションを生成するステップであって、前記別のビジュアライゼーションは、現在表示されているビジュアライゼーションの代わりに前記ディスプレイパネルに表示される、ステップ
を更に含む、請求項1に記載の方法。
【請求項7】
前記インサイト項目を生成するステップは、
1つ又は複数のインサイトスコアに関連付けられた1つ又は複数の候補インサイト項目を生成するために1つ又は複数の評価モデルを採用するステップと、
閾値を超える前記1つ又は複数のインサイトスコアを有するそれらの候補インサイト項目に基づいて、前記インサイト項目を決定するステップと
を更に含む、請求項1に記載の方法。
【請求項8】
データビジュアライゼーションを管理するためのネットワークコンピュータであって、
少なくとも命令を記憶するメモリと、
アクションを実行させるように構成された命令を実行する1つ又は複数のプロセッサと
を備え、前記アクションは、
データモデルに関連付けられた一次ビジュアライゼーションを提供するステップであって、前記一次ビジュアライゼーションは、グラフィカルユーザインターフェース(GUI)のディスプレイパネルに表示される、ステップと、
前記GUIの前記ディスプレイパネルとのユーザのインタラクションに応答して、
前記データモデルに基づいてインサイト項目及び関連する自然言語ナラティブを生成するステップであって、前記インサイト項目は、インサイトビジュアライゼーションと、前記インサイト項目の意味及び前記インサイト項目に関連付けられた傾向又はインサイトのうちの1つ又は複数についての関連性を説明する前記関連する自然言語ナラティブとを含む、ステップと、
前記インサイト項目及び前記関連する自然言語ナラティブのインタラクティブな表示を提供するインサイトパネルを表示するために前記GUIを採用するステップと、
前記GUIによって表示された前記インサイトパネルとのユーザのインタラクションに応答して、前記インサイト項目を選択するステップと、
前記一次ビジュアライゼーションの代わりに前記インサイト項目を前記ディスプレイパネルに表示するステップと
を含むアクションを実行するステップと
を含む、ネットワークコンピュータ。
【請求項9】
前記一次ビジュアライゼーション及び前記データモデルに基づいて1つ又は複数のインサイト項目を生成するステップであって、前記1つ又は複数のインサイト項目は、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数に対応する、ステップ
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項10】
前記インサイトパネルに表示される1つ又は複数のナラティブを生成するステップであって、前記1つ又は複数のナラティブは、前記表示されたインサイト項目のコンテキストを説明する、ステップ
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項11】
前記インサイト項目と、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数との間の対応関係を提供するステップ
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項12】
前記インサイト項目を選択したことに応答して、前記一次ビジュアライゼーションの代わりに前記ディスプレイパネルに表示するためのビジュアライゼーションを生成するステップと、
スクラッチパネルに表示するための前記一次ビジュアライゼーションのサムネイルビューを含むスクラッチ項目を生成するステップと
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項13】
前記インサイトパネルに表示される別のインサイト項目又はスクラッチパネルに表示されるスクラッチ項目のうちの1つの選択に応答して、別のビジュアライゼーションを生成するステップであって、前記別のビジュアライゼーションは、現在表示されているビジュアライゼーションの代わりに前記ディスプレイパネルに表示される、ステップ
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項14】
前記インサイト項目を生成するステップは、
1つ又は複数のインサイトスコアに関連付けられた1つ又は複数の候補インサイト項目を生成するために1つ又は複数の評価モデルを採用するステップと、
閾値を超える前記1つ又は複数のインサイトスコアを有するそれらの候補インサイト項目に基づいて、前記インサイト項目を決定するステップと
を更に含む、請求項8に記載のネットワークコンピュータ。
【請求項15】
データビジュアライゼーションを管理させるように構成された命令を含むプロセッサ可読非一時的記憶媒体であって、1つ又は複数のプロセッサによる前記命令の実行は、アクションの実行を可能にし、前記アクションは、
データモデルに関連付けられた一次ビジュアライゼーションを提供するステップであって、前記一次ビジュアライゼーションは、グラフィカルユーザインターフェース(GUI)のディスプレイパネルに表示される、ステップと、
前記GUIの前記ディスプレイパネルとのユーザのインタラクションに応答して、
前記データモデルに基づいてインサイト項目及び関連する自然言語ナラティブを生成するステップであって、前記インサイト項目は、インサイトビジュアライゼーションと、前記インサイト項目の意味及び前記インサイト項目に関連付けられた傾向又はインサイトのうちの1つ又は複数についての関連性を説明する前記関連する自然言語ナラティブとを含む、ステップと、
前記インサイト項目及び前記関連する自然言語ナラティブのインタラクティブな表示を提供するインサイトパネルを表示するために前記GUIを採用するステップと、
前記GUIによって表示された前記インサイトパネルとのユーザのインタラクションに応答して、前記インサイト項目を選択するステップと、
前記一次ビジュアライゼーションの代わりに前記インサイト項目を前記ディスプレイパネルに表示するステップと
を含むアクションを実行するステップと
を含む、プロセッサ可読非一時的記憶媒体。
【請求項16】
前記一次ビジュアライゼーション及び前記データモデルに基づいて1つ又は複数のインサイト項目を生成するステップであって、前記1つ又は複数のインサイト項目は、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数に対応する、ステップ
を更に含む、請求項15に記載のプロセッサ可読非一時的記憶媒体。
【請求項17】
前記インサイトパネルに表示される1つ又は複数のナラティブを生成するステップであって、前記1つ又は複数のナラティブは、前記表示されたインサイト項目のコンテキストを説明する、ステップ
を更に含む、請求項15に記載のプロセッサ可読非一時的記憶媒体。
【請求項18】
前記インサイト項目と、前記データモデルの1つ又は複数の部分を共有する1つ又は複数のビジュアライゼーションに関連する分析情報、別のデータモデル、又はデータソースのうちの1つ又は複数との間の対応関係を提供するステップ
を更に含む、請求項15に記載のプロセッサ可読非一時的記憶媒体。
【請求項19】
前記インサイト項目を選択したことに応答して、前記一次ビジュアライゼーションの代わりに前記ディスプレイパネルに表示するためのビジュアライゼーションを生成するステップと、
スクラッチパネルに表示するための前記一次ビジュアライゼーションのサムネイルビューを含むスクラッチ項目を生成するステップと
を更に含む、請求項15に記載のプロセッサ可読非一時的記憶媒体。
【請求項20】
前記インサイトパネルに表示される別のインサイト項目又はスクラッチパネルに表示されるスクラッチ項目のうちの1つの選択に応答して、別のビジュアライゼーションを生成するステップであって、前記別のビジュアライゼーションは、現在表示されているビジュアライゼーションの代わりに前記ディスプレイパネルに表示される、ステップ
を更に含む、請求項15に記載のプロセッサ可読非一時的記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は一般に、データ分析に関し、より詳細には、限定はしないが、インタラクティブなデータ分析に関する。
【背景技術】
【0002】
組織は、増え続けるデータを生成し、収集している。このデータは、消費者活動、製造活動、カスタマーサービス、サーバログなど、組織の異なる部分に関連付けられ得る。様々な理由のために、そのような組織がそれらの膨大なデータの集合を効果的に利用するのは不便な場合がある。場合によっては、データの量は、収集されたデータをビジネス慣行の改善に効果的に利用することが困難な場合がある。場合によっては、組織は、それらのデータの一部又は全部のビジュアライゼーション(visualization)を生成するために、様々なツールを採用する。このデータを表すためにビジュアライゼーションを採用することで、組織は、重要なビジネスオペレーションの理解を深め、重要な業績指標の監視に役立てることができる。しかしながら、場合によっては、組織にとって価値があり得るビジュアライゼーション及びデータからのインサイトを発見するためには、熟練した又は専門のデータアナリストが必要な場合がある。更に、場合によっては、膨大な数のビジュアライゼーション又はデータの量は、有用な共通点を共有し得るビジュアライゼーションを発見することが困難な場合がある。更に、場合によっては、異なるソースからの、又は多くのビジュアライゼーションからの情報を統合することに伴う困難さが、データ分析中に発見されたインサイトを捉えるレポートの効率的な生成を妨げる可能性がある。従って、本発明は、これらの考慮事項及び他の考慮事項に関してなされたものである。
【図面の簡単な説明】
【0003】
本発明の非限定的且つ非網羅的な実施形態は、以下の図面を参照して説明される。図面では、別段の指定がない限り、様々な図全体を通して同様の参照番号は同様の部分を指す。説明される革新性のより良い理解のために、添付の図面と関連して読まれるべきである以下の「発明を実施するための形態」を参照されたい。
図1】様々な実施形態が実装され得るシステム環境を示す。
図2】クライアントコンピュータの概略的な実施形態を示す。
図3】ネットワークコンピュータの概略的な実施形態を示す。
図4】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのシステムの論理アーキテクチャを示す。
図5A】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェースの一部の論理表現を示す。
図5B】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェースの一部の論理表現を示す。
図6】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェースの一部の論理表現を示す。
図7】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのプロセスの概要フローチャートを示す。
図8】様々な実施形態のうちの1つ又は複数による、スクラッチパッドパネルに基づいて、レポートを生成するためのプロセスのフローチャートを示す。
図9】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースを提供するためのプロセスのフローチャートを示す。
図10】様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースを提供するインサイト項目を決定するためのプロセスのフローチャートを示す。
【発明を実施するための形態】
【0004】
次に、本明細書の一部を形成し、本発明が実施され得る特定の例示的な実施形態を例として示す添付の図面を参照して、様々な実施形態を以下でより完全に説明する。しかしながら、実施形態は、多くの異なる形態で具現化され得、本明細書に記載される実施形態に限定されると解釈されるべきではなく、むしろ、これらの実施形態は、本開示が徹底的且つ完全であり、実施形態の範囲を当業者に完全に伝えるように提供される。とりわけ、様々な実施形態は、方法、システム、媒体、又はデバイスであり得る。従って、様々な実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態、又はソフトウェアとハードウェアの態様を組み合わせた実施形態の形態をとり得る。従って、以下の詳細な説明は、限定的な意味で解釈されるべきではない。
【0005】
本明細書及び特許請求の範囲の全体を通して、以下の用語は、文脈上明らかに他の意味に解すべき場合を除き、本明細書において明示的に関連付けられた意味を取る。本明細書で使用される「一実施形態では(in one embodiment)」という表現は、必ずしも同じ実施形態を指すとは限らないが、同じ実施形態を指す場合もある。更に、本明細書で使用される「別の実施形態では(in another embodiment)」という表現は、必ずしも異なる実施形態を指すとは限らないが、異なる実施形態を指す場合もある。従って、以下に説明するように、本発明の範囲又は趣旨から逸脱することなく、様々な実施形態が容易に組み合わせられ得る。
【0006】
加えて、本明細書で使用される場合、「又は(or)」という用語は、包括的「又は」演算子であり、文脈上明らかに他の意味に解すべき場合を除き、「及び/又は(and/or)」という用語と同等である。「~に基づく(based on)」という用語は、排他的ではなく、文脈上明らかに他の意味に解すべき場合を除き、説明されていない追加の要因に基づくことを許容する。加えて、本明細書全体を通して、「1つの(a)」、「1つの(an)」、及び「その(the)」の意味は、複数の言及を含む。「in」の意味は、「in」及び「on」を含む。
【0007】
例示的な実施形態に関して、以下の用語もまた、文脈上明らかに他の意味に解すべき場合を除き、対応する意味に従って本明細書で使用される。
【0008】
本明細書で使用される場合、「エンジン(engine)」という用語は、C、C++、Objective-C、COBOL、Java(登録商標)、PHP、Perl、JavaScript(登録商標)、Ruby、VBScript、C#などのMicrosoft .NET(登録商標)言語などのプログラミング言語で書くことができる、ハードウェア又はソフトウェア命令で具現化される論理を指す。エンジンは、実行可能プログラムにコンパイルされ得るか、又は解釈されたプログラミング言語で書かれ得る。ソフトウェアエンジンは、他のエンジンから、又はそれ自体から呼び出され得る。本明細書で説明されるエンジンは、他のエンジン又はアプリケーションとマージすることができ、又はサブエンジンに分割することができる1つ又は複数の論理モジュールを指す。エンジンは、非一時的コンピュータ可読媒体又はコンピュータ記憶デバイスに記憶され、1つ又は複数の汎用コンピュータ上に記憶され、それによって実行され、したがって、エンジンを提供するように構成された専用コンピュータを作成することができる。
【0009】
本明細書で使用される場合、「データソース(data source)」という用語は、モデル化又は別の方法で分析されている、基礎をなす情報のソースを指す。データソースは、データベース(例えば、リレーショナル、グラフベース、no-sqlなど)、ファイルシステム、非構造化データ、ストリームなどからの情報又はそれらによって提供される情報を含み得る。データソースは、典型的に、組織に関連付けられた様々な動作又は活動をモデル化、記録、又は記憶するように配置される。場合によっては、データソースは、効率的な記憶、クエリ、インデックス付け、データ交換、検索、更新などの様々なデータ重視のアクションを提供又は容易にするように配置される。一般に、データソースは、データの理解しやすい提示又はビジュアライゼーションを提供するのではなく、データ操作又はデータ管理に関連する特徴を提供するように配置され得る。
【0010】
本明細書で使用される場合、「データモデル(data model)」という用語は、基礎をなすデータソースの表現を提供する1つ又は複数のデータ構造を指す。場合によっては、データモデルは、特定のアプリケーションのためのデータソースのビューを提供し得る。データモデルは、基礎をなすデータソースに対するビュー又はインターフェースとみなされ得る。場合によっては、データモデルは、データソースに直接マッピングし得る(例えば、実際には論理パススルー)。また、場合によっては、データモデルは、データソースによって提供され得る。いくつかの状況では、データモデルは、データソースへのインターフェースとみなされ得る。データモデルは、組織が、データソースからの情報を、より便利な、より意味のある(例えば、推論するのがより容易な)、より安全な方法などで編成又は提示することを可能にする。
【0011】
本明細書で使用される場合、「データモデルフィールド(data model field)」という用語は、データモデルの命名された又は命名可能なプロパティ又は特徴を指す。データモデルフィールドは、データベーステーブル内の列、グラフ内のノード、Java(登録商標)クラス属性などに類似している。例えば、従業員データベーステーブルに対応するデータモデルは、名前、電子メールアドレス、電話番号、従業員IDなどのデータモデルフィールドを有し得る。
【0012】
本明細書で使用される場合、「データオブジェクト(data object)」という用語は、データモデルを含む1つ又は複数のエンティティ又はデータ構造を指す。場合によっては、データオブジェクトは、データモデルの一部とみなされ得る。データオブジェクトは、項目又はクラス又は項目の種類の個々のインスタンスを表し得る。
【0013】
本明細書で使用される場合、「データフィールド(data field)」という用語は、データオブジェクトの命名された又は命名可能なプロパティ又は属性を指す。場合によっては、データフィールドは、オブジェクト指向プログラミングにおけるオブジェクトのクラスメンバに類似していると考えられ得る。
【0014】
本明細書で使用される場合、「パネル(panel)」という用語は、グラフィカルユーザインターフェース(GUI)内の定義された幾何学形状(例えば、x、y、zオーダー)を有する、GUI内の領域を指す。パネルは、ユーザに情報を表示するように、又は1つ又は複数のインタラクティブな制御をホストするように配置され得る。パネルに関連付けられたジオメトリ又はスタイルは、動的規則を含む構成情報を使用して定義され得る。また、場合によっては、ユーザは、移動、表示、非表示、サイズ変更、順序変更などのアクションを1つ又は複数のパネル上で実行することを可能にされ得る。
【0015】
本明細書で使用される場合、「構成情報(configuration information)」という用語は、構成ファイル、データベース、ユーザ入力、組み込みデフォルトなど、又はそれらの組合せを含む様々なソースから提供され得る、規則ベースのポリシー、パターンマッチング、スクリプト(例えば、コンピュータ可読命令)などを含み得る情報を指す。
【0016】
以下は、本発明のいくつかの態様の基本的な理解を提供するために、本発明の実施形態を簡単に説明する。この簡単な説明は、広範な概要を意図するものではない。主要又は重要な要素を特定すること、又は範囲を線引きするか、若しくは他の方法で狭めることは意図されていない。その目的は、単に、後に提示されるより詳細な説明の前置きとして、いくつかの概念を簡略化された形態で提示することである。
【0017】
簡潔に述べると、様々な実施形態は、本明細書で説明されるアクションを実行するための1つ又は複数の命令を実行する1つ又は複数のプロセッサを使用して、データのビジュアライゼーションを管理することを対象とする。様々な実施形態のうちの1つ又は複数では、データモデルに関連付けられた一次ビジュアライゼーションは、一次ビジュアライゼーションがディスプレイパネルに表示され得るように提供され得る。
【0018】
様々な実施形態のうちの1つ又は複数では、1つ又は複数のインサイト項目は、1つ又は複数のインサイト項目が、データモデルの1つ又は複数の部分を共有し得る1つ又は複数のビジュアライゼーションに対応し得るように、及び、1つ又は複数のインサイト項目が、インサイトパネルに表示され得るように一次ビジュアライゼーション及びデータモデルに基づいて生成され得る。
【0019】
様々な実施形態のうちの1つ又は複数では、1つ又は複数のインサイト項目を生成するステップは、1つ又は複数のビジュアライゼーション項目を識別するように配置され得る1つ又は複数の評価モデルを提供するステップ、1つ又は複数の候補インサイト項目がインサイトスコアに関連付けられ得るように、1つ又は複数のビジュアライゼーションに基づいて1つ又は複数の候補インサイト項目を生成するために1つ又は複数の評価モデルを採用するステップ、閾値を超えるインサイトスコアに関連付けられ得る1つ又は複数の候補インサイト項目の部分に基づいて、1つ又は複数のインサイト項目を決定するステップ、などを含み得る。
【0020】
また、様々な実施形態のうちの1つ又は複数では、1つ又は複数のインサイト項目を生成するステップは、一次ビジュアライゼーションにおいて使用され得る1つ又は複数のデータフィールドを含む1つ又は複数のビジュアライゼーションの第1のセットの各々に基づいて、1つ又は複数のビジュアライゼーションの第1のセットを決定するステップ、一次ビジュアライゼーションにおいて使用される1つ又は複数のデータフィールドについての値傾向を示す1つ又は複数のビジュアライゼーションの第2のセットの各々に基づいて、1つ又は複数のビジュアライゼーションの第2のセットを決定するステップ、一次ビジュアライゼーションにおいて使用される1つ又は複数のデータフィールドに類似するデータ値を含む他のデータモデルからの1つ又は複数の他のデータフィールドを使用する1つ又は複数のビジュアライゼーションの第3のセットの各々に基づいて、1つ又は複数のビジュアライゼーションの第3のセットを決定するステップ、などを含み得る。そして、様々な実施形態のうちの1つ又は複数では、1つ又は複数のビジュアライゼーションの第1のセット、1つ又は複数のビジュアライゼーションの第2のセット、又は1つ又は複数のビジュアライゼーションの第3のセットのうちの1つ又は複数に基づいて、1つ又は複数のインサイト項目を生成するステップ。
【0021】
様々な実施形態のうちの1つ又は複数では、インサイトパネルに1つ又は複数のインサイト項目を表示するステップは、各インサイト項目がインサイト項目グループに関連付けられ得るように、1つ又は複数のインサイト項目を識別する評価モデルのタイプに基づいて1つ又は複数のインサイト項目グループを決定するステップ、各インサイト項目が、その関連するインサイト項目グループと共に表示され得るように、インサイトパネルに各インサイト項目グループを表示するステップ、などを含み得る。
【0022】
様々な実施形態のうちの1つ又は複数では、インサイト項目がインサイトパネルから選択されたことに応答して、一次ビジュアライゼーションの代わりにディスプレイパネルに表示されるインサイト項目に基づいてビジュアライゼーションを生成するステップ、サムネイルビューがスクラッチパネルに表示され得るように一次ビジュアライゼーションのサムネイルビューを含むスクラッチ項目を生成するステップ、などを含む追加のアクションが実行され得る。
【0023】
様々な実施形態のうちの1つ又は複数では、インサイトパネルからの別のインサイト項目又はスクラッチパネルからの別のスクラッチ項目のうちの1つ又は複数を選択したことに応答して、別のビジュアライゼーションが、現在表示されているビジュアライゼーションの代わりにディスプレイパネルに表示されるように、別のインサイト項目又は別のスクラッチ項目のうちの1つ又は複数の選択に基づいて別のビジュアライゼーションが生成され得る。
【0024】
様々な実施形態のうちの1つ又は複数では、ディスプレイパネルの表示に代わるレポートパネルが提供され得る。また、いくつかの実施形態では、1つ又は複数のインサイト項目、1つ又は複数のスクラッチ項目、又は1つ又は複数の注釈のうちの1つ又は複数を選択したことに応答して、1つ又は複数の注釈が、テキスト、画像、他のレポートへのリンク、などのうちの1つ又は複数を含むように、及び、1つ又は複数のレポート項目がレポートパネルに表示され得るように、1つ又は複数のインサイト項目、1つ又は複数のスクラッチ項目、1つ又は複数の注釈などのうちの1つ又は複数に基づいて1つ又は複数のレポート項目を生成するステップ、ディスプレイパネルのサイズを超えるレポートパネルの部分が視界から隠され得るように、レポートパネルを1つ又は複数のレポート項目に基づき得るサイズに自動的にサイズ変更するステップ、などを含む更なるアクションが実行され得る。
【0025】
様々な実施形態のうちの1つ又は複数では、ディスプレイパネル内のビジュアライゼーションを置換ビジュアライゼーションで置換したことに応答して、1つ又は複数の置換インサイト項目がインサイトパネルに表示され得るように、置換ビジュアライゼーション及びデータモデルに基づいて1つ又は複数の置換インサイト項目が生成され得る。
【0026】
図示された動作環境
図1は、本発明の実施形態が実施され得る環境の一実施形態の構成要素を示す。本発明を実施するために構成要素の全てが必要とされるわけではなく、本発明の趣旨又は範囲から逸脱することなく、構成要素の配置及びタイプの変更が行われ得る。示されるように、図1のシステム100は、ローカルエリアネットワーク(LAN)/ワイドエリアネットワーク(WAN)-(ネットワーク)110、ワイヤレスネットワーク108、クライアントコンピュータ102~105、ビジュアライゼーションサーバコンピュータ116などを含む。
【0027】
クライアントコンピュータ102~105の少なくとも1つの実施形態は、図2に関連して以下でより詳細に説明される。一実施形態では、クライアントコンピュータ102~105の少なくともいくつかは、ネットワーク108又は110などの1つ又は複数のワイヤード又はワイヤレスネットワークを介して動作し得る。一般に、クライアントコンピュータ102~105は、情報を送受信し、様々なオンライン活動、オフラインアクションなどを実行するためにネットワークを介して通信することができる実質的に任意のコンピュータを含み得る。一実施形態では、クライアントコンピュータ102~105の1つ又は複数は、ビジネス又は他のエンティティのための様々なサービスを実行するために、ビジネス又は他のエンティティ内で動作するように構成され得る。例えば、クライアントコンピュータ102~105は、ウェブサーバ、ファイアウォール、クライアントアプリケーション、メディアプレーヤ、携帯電話、ゲームコンソール、デスクトップコンピュータなどとして動作するように構成され得る。しかしながら、クライアントコンピュータ102~105は、これらのサービスに制約されず、例えば、他の実施形態では、エンドユーザコンピューティングに関しても採用され得る。より多くの又はより少ないクライアントコンピュータ(図1に示されるような)が、本明細書に説明されるようなシステム内に含まれ得、従って、実施形態は、採用されるクライアントコンピュータの数又はタイプによって制約されないことを認識されたい。
【0028】
クライアントコンピュータ102として動作し得るコンピュータは、パーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサベース又はプログラム可能な電子デバイス、ネットワークPCなどの、ワイヤード又はワイヤレス通信媒体を使用して典型的に接続するコンピュータを含み得る。いくつかの実施形態では、クライアントコンピュータ102~105は、ラップトップコンピュータ103、モバイルコンピュータ104、タブレットコンピュータ105など、別のコンピュータに接続して情報を受信し得る実質的に任意のポータブルコンピュータを含み得る。しかしながら、ポータブルコンピュータは、そのように限定されず、セルラー電話、ディスプレイページャー、無線周波数(RF)デバイス、赤外線(IR)デバイス、パーソナルデジタルアシスタント(PDA)、ハンドヘルドコンピュータ、ウェアラブルコンピュータ、前述のコンピュータの1つ又は複数を組み合わせた集積デバイスなどの他のポータブルコンピュータも含み得る。そのため、クライアントコンピュータ102~105は、典型的には、機能及び特徴に関して広範囲に及ぶ。更に、クライアントコンピュータ102~105は、ブラウザ又は他のウェブベースのアプリケーションを含む様々なコンピューティングアプリケーションにアクセスし得る。
【0029】
ウェブ対応クライアントコンピュータは、ウェブを介して要求を送信し、応答を受信するように構成されたブラウザアプリケーションを含み得る。ブラウザアプリケーションは、実質的に任意のウェブベースの言語を採用して、グラフィックス、テキスト、マルチメディアなどを受信及び表示するように構成され得る。一実施形態では、ブラウザアプリケーションは、メッセージを表示及び送信するために、JavaScript(登録商標)、ハイパーテキストマークアップ言語(HTML)、拡張マークアップ言語(XML)、JavaScript Object Notation(JSON)、Cascading Style Sheets(CSS)など、又はそれらの組合せを採用することが可能である。一実施形態では、クライアントコンピュータのユーザは、ネットワークを介して(オンラインで)様々なアクティビティを実行するために、ブラウザアプリケーションを採用し得る。しかしながら、様々なオンライン活動を実行するために、別のアプリケーションも使用され得る。
【0030】
クライアントコンピュータ102~105は、別のコンピュータとの間でコンテンツを受信又は送信するように構成された少なくとも1つの他のクライアントアプリケーションを含み得る。クライアントアプリケーションは、コンテンツを送信又は受信する能力などを含み得る。クライアントアプリケーションは、タイプ、能力、名前などを含む、それ自体を識別する情報を更に提供し得る。一実施形態では、クライアントコンピュータ102~105は、インターネットプロトコル(IP)アドレス、電話番号、モバイル識別番号(MIN)、電子シリアル番号(ESN)、クライアント証明書、又は他のデバイス識別子を含む様々な機構のいずれかを介して、それら自体を一意に識別し得る。そのような情報は、他のクライアントコンピュータ、ビジュアライゼーションサーバコンピュータ116、又は他のコンピュータの間で送信される1つ又は複数のネットワークパケットなどで提供され得る。
【0031】
クライアントコンピュータ102~105は、ビジュアライゼーションサーバコンピュータ116などの別のコンピュータによって管理され得るエンドユーザアカウントにエンドユーザがログインすることを可能にするクライアントアプリケーションを含むように更に構成され得る。そのようなエンドユーザアカウントは、1つの非限定的な例では、エンドユーザが、1つの非限定的な例では、プロジェクト管理、ソフトウェア開発、システム管理、構成管理、検索活動、ソーシャルネットワーキング活動を含む1つ又は複数のオンライン活動を管理すること、様々なウェブサイトをブラウズすること、他のユーザと通信することなどを可能にするように構成され得る。また、クライアントコンピュータは、ユーザが、レポート、インタラクティブなユーザインターフェース、又はビジュアライゼーションサーバコンピュータ116によって提供される結果などを表示することを可能にするように配置され得る。
【0032】
ワイヤレスネットワーク108は、クライアントコンピュータ103~105及びその構成要素をネットワーク110と結合するように構成される。ワイヤレスネットワーク108は、クライアントコンピュータ103~105のためのインフラストラクチャ指向接続を提供するために、スタンドアロン型アドホックネットワークなどを更にオーバーレイし得る様々なワイヤレスサブネットワークのうちのいずれかを含み得る。そのようなサブネットワークは、メッシュネットワーク、ワイヤレスLAN(WLAN)ネットワーク、セルラーネットワークなどを含み得る。一実施形態では、システムは、2つ以上のワイヤレスネットワークを含み得る。
【0033】
ワイヤレスネットワーク108は、ワイヤレス無線リンクなどによって接続された端末、ゲートウェイ、ルータなどの自律システムを更に含み得る。これらのコネクタは、ワイヤレスネットワーク108のトポロジが迅速に変化し得るように、自由に且つランダムに移動し、それら自体を任意に編成するように構成され得る。
【0034】
ワイヤレスネットワーク108は、セルラーシステム、WLAN、ワイヤレスルータ(WR)メッシュなどのための第2世代(2G)、第3世代(3G)、第4世代(4G)、第5世代(5G)無線アクセスを含む複数のアクセス技術を更に採用し得る。2G、3G、4G、5G、及び将来のアクセスネットワークなどのアクセス技術は、様々な程度のモビリティを有するクライアントコンピュータ103~105などのモバイルコンピュータのための広域カバレッジを可能にし得る。非限定的な一例では、ワイヤレスネットワーク108は、GSM(登録商標)(Global System for Mobile communication)、汎用パケット無線システム(GPRS)、Enhanced Data GSM Environment(EDGE)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、広帯域符号分割多元接続(WCDMA(登録商標))、高速ダウンリンクパケットアクセス(HSDPA)、ロングタームエボリューション(LTE)などの無線ネットワークアクセスを介した無線接続を可能にし得る。本質的に、ワイヤレスネットワーク108は、クライアントコンピュータ103~105と別のコンピュータ、ネットワーク、クラウドベースのネットワーク、クラウドインスタンスなどとの間で情報が移動し得る実質的に任意のワイヤレス通信機構を含み得る。
【0035】
ネットワーク110は、ネットワークコンピュータを、ビジュアライゼーションサーバコンピュータ116、クライアントコンピュータ102、及びワイヤレスネットワーク108を介するクライアントコンピュータ103~105などを含む他のコンピュータと結合するように構成される。ネットワーク110は、ある電子デバイスから別の電子デバイスに情報を通信するために任意の形態のコンピュータ可読媒体を採用することが可能である。また、ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、例えば、ユニバーサルシリアルバス(USB)ポート、イーサネット(登録商標)ポート、他の形態のコンピュータ可読媒体を介した直接接続、又はそれらの任意の組合せに加えて、インターネットを含むことができる。異なるアーキテクチャ及びプロトコルに基づくものを含むLANの相互接続されたセット上で、ルータは、LAN間のリンクとして機能し、メッセージが一方から他方に送信されることを可能にする。加えて、LAN内の通信リンクは、典型的には、ツイストペア線又は同軸ケーブルを含むが、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3、及びT4を含む完全若しくは部分専用デジタル回線、又は、例えば、Eキャリア、統合サービスデジタルネットワーク(ISDN)、デジタル加入者線(DSL)、衛星リンクを含むワイヤレスリンク、若しくは当業者に知られている他の通信リンクを含む他のキャリア機構を利用し得る。更に、通信リンクは、限定はしないが、例えば、DS-0、DS-1、DS-2、DS-3、DS-4、OC-3、OC-12、OC-48などを含む、様々なデジタルシグナリング技術のいずれかを更に採用し得る。更に、遠隔のコンピュータ及び他の関連する電子デバイスは、モデム及び一時的な電話回線を介してLAN又はWANのいずれかに遠隔に接続され得る。一実施形態では、ネットワーク110は、インターネットプロトコル(IP)の情報をトランスポートするように構成され得る。
【0036】
追加的に、通信媒体は、典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のトランスポート機構を具現化し、任意の情報非一時的配信媒体又は一時的配信媒体を含む。例として、通信媒体は、ツイストペア、同軸ケーブル、光ファイバ、導波管、及び他のワイヤード媒体などのワイヤード媒体と、音響、RF、赤外線、及び他のワイヤレス媒体などのワイヤレス媒体とを含む。
【0037】
また、ビジュアライゼーションサーバコンピュータ116の一実施形態は、図3に関連して以下でより詳細に説明される。図1は、ビジュアライゼーションサーバコンピュータ116などを単一のコンピュータとして示しているが、本発明又は実施形態はそのように限定されない。例えば、ビジュアライゼーションサーバコンピュータ116などの1つ又は複数の機能は、1つ又は複数の別個のネットワークコンピュータにわたって分散され得る。更に、1つ又は複数の実施形態では、ビジュアライゼーションサーバコンピュータ116は、複数のネットワークコンピュータを使用して実装され得る。更に、様々な実施形態のうちの1つ又は複数では、ビジュアライゼーションサーバコンピュータ116などは、1つ又は複数のクラウドネットワーク内の1つ又は複数のクラウドインスタンスを使用して実装され得る。従って、これらの革新性及び実施形態は、単一の環境に限定されるものとして解釈されるべきではなく、他の構成及び他のアーキテクチャも想定される。
【0038】
例示的なクライアントコンピュータ
図2は、図示されたものよりも多くの又は少ない構成要素を含み得るクライアントコンピュータ200の一実施形態を示す。クライアントコンピュータ200は、例えば、図1に示すモバイルコンピュータ又はクライアントコンピュータの1つ又は複数の実施形態を表し得る。
【0039】
クライアントコンピュータ200は、バス228を介してメモリ204と通信するプロセッサ202を含み得る。クライアントコンピュータ200はまた、電源230、ネットワークインターフェース232、オーディオインターフェース256、ディスプレイ250、キーパッド252、イルミネータ254、ビデオインターフェース242、入力/出力インターフェース238、触覚インターフェース264、全地球測位システム(GPS)受信機258、オープンエアジェスチャインターフェース260、温度インターフェース262、カメラ(複数可)240、プロジェクタ246、ポインティングデバイスインターフェース266、プロセッサ可読固定記憶デバイス234、及びプロセッサ可読リムーバブル記憶デバイス236を含み得る。クライアントコンピュータ200は、オプションで、基地局(図示せず)と通信するか、又は別のコンピュータと直接通信し得る。そして、一実施形態では、図示されていないが、クライアントコンピュータ200の向きを測定又は維持するために、クライアントコンピュータ200内でジャイロスコープが採用され得る。
【0040】
電源230は、クライアントコンピュータ200に電力を供給し得る。充電式又は非充電式バッテリが、電力を提供するために使用され得る。電力はまた、バッテリを補完又は再充電するACアダプタ又は電力供給されたドッキングクレードルなどの外部電源によって提供され得る。
【0041】
ネットワークインターフェース232は、クライアントコンピュータ200を1つ又は複数のネットワークに結合するための回路を含み、限定はしないが、モバイル通信(GSM(登録商標))、CDMA、時分割多元接続(TDMA)、UDP、TCP/IP、SMS、MMS、GPRS、WAP、UWB、WiMax、SIP/RTP、GPRS、EDGE、WCDMA(登録商標)、LTE、UMTS、OFDM、CDMA2000、EV-DO、HSDPAのためのOSIモデルの任意の部分を実装するプロトコル及び技術、又は様々な他のワイヤレス通信プロトコルのいずれかを含む、1つ又は複数の通信プロトコル及び技術と共に使用するために構築される。ネットワークインターフェース232は、トランシーバ、送受信デバイス、又はネットワークインターフェースカード(NIC)として知られることもある。
【0042】
オーディオインターフェース256は、人間の声の音などのオーディオ信号を生成し、受信するように配置され得る。例えば、オーディオインターフェース256は、他者との電気通信を可能にするか、又は何らかのアクションに対するオーディオ確認応答を生成するために、スピーカ及びマイクロフォン(図示せず)に結合され得る。オーディオインターフェース256内のマイクロフォンは、例えば、音声認識を使用する、音に基づいてタッチを検出するなど、クライアントコンピュータ200への入力又はその制御にも使用することができる。
【0043】
ディスプレイ250は、液晶ディスプレイ(LCD)、ガスプラズマ、電子インク、発光ダイオード(LED)、有機LED(OLED)、又はコンピュータと共に使用することができる任意の他のタイプの光反射若しくは光透過ディスプレイであり得る。ディスプレイ250はまた、スタイラス又は人間の手の指などのオブジェクトからの入力を受信するように配置されたタッチインターフェース244を含み得、タッチ又はジェスチャを感知するために、抵抗性、容量性、表面弾性波(SAW)、赤外線、レーダー、又は他の技術を使用し得る。
【0044】
プロジェクタ246は、遠隔のハンドヘルドプロジェクタ、又は遠隔の壁若しくは遠隔のスクリーンなどの任意の他の反射性のオブジェクト上に画像を投影することができる一体型プロジェクタであり得る。
【0045】
ビデオインターフェース242は、静止写真、ビデオセグメント、赤外線ビデオなどのビデオ画像を取り込むように配置され得る。例えば、ビデオインターフェース242は、デジタルビデオカメラ、ウェブカメラなどに結合され得る。ビデオインターフェース242は、レンズ、画像センサ、及び他の電子機器を備え得る。画像センサは、相補型金属酸化膜半導体(CMOS)集積回路、電荷結合素子(CCD)、又は光を感知するための任意の他の集積回路を含み得る。
【0046】
キーパッド252は、ユーザからの入力を受信するように配置された任意の入力デバイスを備え得る。例えば、キーパッド252は、プッシュボタン式数字ダイヤル又はキーボードを含み得る。キーパッド252はまた、画像の選択及び送信に関連付けられたコマンドボタンを含み得る。
【0047】
イルミネータ254は、状態表示を提供し得るか、又は光を提供し得る。イルミネータ254は、特定の期間にわたって、又はイベントメッセージに応答して、アクティブのままであり得る。例えば、イルミネータ254は、アクティブであるとき、キーパッド252上のボタンを背面照明し、クライアントコンピュータに電力が供給されている間、オンのままであり得る。また、イルミネータ254は、別のクライアントコンピュータにダイヤルするなどの特定のアクションが実行されたときに、これらのボタンを様々なパターンで背面照明し得る。イルミネータ254はまた、アクションに応答して、クライアントコンピュータの透明又は半透明のケース内に配置された光源を照明させ得る。
【0048】
更に、クライアントコンピュータ200はまた、鍵、デジタル証明書、パスワード、パスフレーズ、2要素認証情報などのセキュリティ/暗号情報を生成、記憶、又は使用するための追加の耐タンパ性予防手段を提供するためのハードウェアセキュリティモジュール(HSM)268を備え得る。いくつかの実施形態では、ハードウェアセキュリティモジュールは、1つ又は複数の標準の公開鍵基盤(PKI)をサポートするために採用され得、鍵ペアなどを生成、管理、又は記憶するために採用され得る。いくつかの実施形態では、HSM268は、スタンドアロン型コンピュータであり得、他の場合では、HSM268は、クライアントコンピュータに追加され得るハードウェアカードとして配置され得る。
【0049】
クライアントコンピュータ200はまた、外部周辺デバイス又は他のクライアントコンピュータ及びネットワークコンピュータなどの他のコンピュータと通信するための入力/出力インターフェース238を備え得る。周辺デバイスは、オーディオヘッドセット、バーチャルリアリティヘッドセット、ディスプレイスクリーン眼鏡、遠隔スピーカシステム、遠隔スピーカ及びマイクロフォンシステムなどを含み得る。入力/出力インターフェース238は、ユニバーサルシリアルバス(USB(登録商標))、赤外線、WiFi、WiMax、Bluetooth(登録商標)などの1つ又は複数の技術を利用することができる。
【0050】
入力/出力インターフェース238はまた、ジオロケーション情報を決定するための1つ又は複数のセンサ(例えば、GPS)、電力状態を監視するための1つ又は複数のセンサ(例えば、電圧センサ、電流センサ、周波数センサなど)、天候を監視するための1つ又は複数のセンサ(例えば、サーモスタット、気圧計、風速計、湿度検出器、降水量計など)などを含み得る。センサは、クライアントコンピュータ200の外部にあるデータを収集又は測定する1つ又は複数のハードウェアセンサであり得る。
【0051】
触覚インターフェース264は、クライアントコンピュータのユーザに触覚フィードバックを提供するように配置され得る。例えば、触覚インターフェース264は、コンピュータの別のユーザが電話しているときに、特定の方法でクライアントコンピュータ200を振動させるために採用され得る。温度インターフェース262は、温度測定入力又は温度変化出力をクライアントコンピュータ200のユーザに提供するために使用され得る。オープンエアジェスチャインターフェース260は、例えば、シングル又はステレオビデオカメラ、レーダー、ユーザによって保持又は装着されるコンピュータ内のジャイロセンサなどを使用することによって、クライアントコンピュータ200のユーザの物理的ジェスチャを感知し得る。カメラ240は、クライアントコンピュータ200のユーザの物理的な目の動きを追跡するために使用され得る。
【0052】
GPSトランシーバ258は、地球の表面上のクライアントコンピュータ200の物理座標を決定することができ、典型的に、緯度及び経度の値として位置を出力する。GPSトランシーバ258はまた、地球の表面上のクライアントコンピュータ200の物理的ロケーションを更に決定するために、限定はしないが、三角測量、アシストGPS(AGPS)、拡張観測時間差(E-OTD)、セル識別子(CI)、サービスエリア識別子(SAI)、拡張タイミングアドバンス(ETA)、基地局サブシステム(BSS)などを含む他のジオポジショニング機構を採用することができる。異なる条件下で、GPSトランシーバ258は、クライアントコンピュータ200の物理的ロケーションを決定することができることを理解されたい。しかしながら、1つ又は複数の実施形態では、クライアントコンピュータ200は、他の構成要素を介して、例えば、媒体アクセス制御(MAC)アドレス、IPアドレスなどを含む、クライアントコンピュータの物理的ロケーションを決定するために採用され得る他の情報を提供し得る。
【0053】
様々な実施形態のうちの少なくとも1つでは、オペレーティングシステム206、ビジュアライゼーションクライアント222、他のクライアントアプリケーション224、ウェブブラウザ226などのアプリケーションは、タイムゾーン、言語、通貨、カレンダーフォーマットなどの1つ又は複数のローカライゼーション特徴を選択するために、ジオロケーション情報を採用するように配置される。ローカライゼーション特徴は、表示オブジェクト、データモデル、データオブジェクト、ユーザインターフェース、レポート、及び内部プロセス又はデータベースで使用され得る。様々な実施形態のうちの少なくとも1つでは、ローカライゼーション情報を選択するために使用されるジオロケーション情報は、GPS258によって提供され得る。また、いくつかの実施形態では、ジオロケーション情報は、ワイヤレスネットワーク108又はネットワーク111などのネットワークを介して1つ又は複数のジオロケーションプロトコルを使用して提供される情報を含み得る。
【0054】
ヒューマンインターフェース構成要素は、クライアントコンピュータ200から物理的に分離された周辺デバイスであり得、クライアントコンピュータ200への遠隔の入力又は出力を可能にする。例えば、ディスプレイ250又はキーボード252などのヒューマンインターフェース構成要素を通して、本明細書に説明されるようにルーティングされる情報は、代わりに、ネットワークインターフェース232を通して、遠隔に位置する適切なヒューマンインターフェース構成要素にルーティングされることができる。遠隔であり得るヒューマンインターフェース周辺構成要素の例としては、限定はしないが、オーディオデバイス、ポインティングデバイス、キーパッド、ディスプレイ、カメラ、プロジェクタなどが挙げられる。これらの周辺構成要素は、Bluetooth(登録商標)、Zigbee(登録商標)などのピコネットワークを介して通信し得る。そのような周辺ヒューマンインターフェース構成要素を伴うクライアントコンピュータの1つの非限定的な例は、遠隔ピコプロジェクタと共に、壁又はユーザの手などの反射表面上にピコプロジェクタによって投影される画像の一部に対するユーザのジェスチャを感知するために別個に位置するクライアントコンピュータと遠隔通信する、1つ又は複数のカメラを含み得る、ウェアラブルコンピュータである。
【0055】
クライアントコンピュータは、ウェブページ、ウェブベースのメッセージ、グラフィックス、テキスト、マルチメディアなどを送信及び受信するように構成されたウェブブラウザアプリケーション226を含み得る。クライアントコンピュータのブラウザアプリケーションは、ワイヤレスアプリケーションプロトコルメッセージ(WAP)などを含む、実質的に任意のプログラミング言語を採用し得る。1つ又は複数の実施形態では、ブラウザアプリケーションは、ハンドヘルドデバイスマークアップ言語(HDML)、ワイヤレスマークアップ言語(WML)、WMLScript、JavaScript(登録商標)、標準一般化マークアップ言語(SGML)、ハイパーテキストマークアップ言語(HTML)、拡張マークアップ言語(XML)、HTML5などを採用することが可能である。
【0056】
メモリ204は、RAM、ROM、又は他のタイプのメモリを含み得る。メモリ204は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータなどの情報を記憶するためのコンピュータ可読記憶媒体(デバイス)の一例を示す。メモリ204は、クライアントコンピュータ200の低レベル動作を制御するためのBIOS 208を記憶し得る。メモリはまた、クライアントコンピュータ200の動作を制御するためのオペレーティングシステム206を記憶し得る。この構成要素は、UNIX(登録商標)若しくはLinux(登録商標)のバージョンなどの汎用オペレーティングシステム、又はAndroid(登録商標)若しくはiOSオペレーティングシステムなどの専用クライアントコンピュータ通信オペレーティングシステムを含み得ることが理解されよう。オペレーティングシステムは、Java(登録商標)アプリケーションプログラムを介してハードウェア構成要素又はオペレーティングシステム動作の制御を可能にするJava(登録商標)仮想マシンモジュールを含み得るか、又はそれとインターフェースし得る。
【0057】
メモリ204は、とりわけ、アプリケーション220又は他のデータを記憶するためにクライアントコンピュータ200によって利用可能な1つ又は複数のデータストレージ210を更に含み得る。例えば、データストレージ210はまた、クライアントコンピュータ200の様々な機能を記述する情報を記憶するために採用され得る。次いで、情報は、通信中にヘッダの一部として送信されること、要求に応じて送信されることなどを含む、様々な方法のいずれかに基づいて、別のデバイス又はコンピュータに提供され得る。データストレージ210はまた、アドレス帳、バディリスト、エイリアス、ユーザプロファイル情報などを含むソーシャルネットワーキング情報を記憶するために採用され得る。データストレージ210は、アクションを実行及び実施するために、プロセッサ202などのプロセッサが使用するためのプログラムコード、データ、アルゴリズムなどを更に含み得る。一実施形態では、データストレージ210の少なくとも一部は、限定はしないが、非一時的プロセッサ可読リムーバブル記憶デバイス236、プロセッサ可読固定記憶デバイス234、更にはクライアントコンピュータの外部を含む、クライアントコンピュータ200の別の構成要素上に記憶され得る。
【0058】
アプリケーション220は、クライアントコンピュータ200によって実行されると、命令及びデータを送信、受信、又は他の方法で処理するコンピュータ実行可能命令を含み得る。アプリケーション220は、例えば、ビジュアライゼーションクライアント222、他のクライアントアプリケーション224、ウェブブラウザ226などを含み得る。クライアントコンピュータは、1つ又は複数のサーバと通信を交換するように配置され得る。
【0059】
アプリケーションプログラムの他の例には、カレンダー、検索プログラム、電子メールクライアントアプリケーション、IMアプリケーション、SMSアプリケーション、ボイスオーバーインターネットプロトコル(VOIP)アプリケーション、コンタクトマネージャ、タスクマネージャ、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、スプレッドシートプログラム、ゲーム、検索プログラム、ビジュアライゼーションアプリケーションなどが含まれる。
【0060】
追加的に、1つ又は複数の実施形態(図示せず)では、クライアントコンピュータ200は、CPUの代わりに、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)など、又はそれらの組合せなどの埋め込み論理ハードウェアデバイスを含み得る。埋め込み論理ハードウェアデバイスは、アクションを実行するためにその埋め込み論理を直接実行し得る。また、1つ又は複数の実施形態(図示せず)では、クライアントコンピュータ200は、CPUの代わりに1つ又は複数のハードウェアマイクロコントローラを含み得る。1つ又は複数の実施形態では、1つ又は複数のマイクロコントローラは、アクションを実行するためにそれら自体の埋め込み論理を直接実行し、システムオンチップ(SOC)などのアクションを実行するためにそれ自体の内部メモリ及びそれ自体の外部の入力及び出力インターフェース(例えば、ハードウェアピン又はワイヤレストランシーバ)にアクセスし得る。
【0061】
例示的なネットワークコンピュータ
図3は、様々な実施形態のうちの1つ又は複数を実装するシステムに含まれ得る、ネットワークコンピュータ300の一実施形態を示す。ネットワークコンピュータ300は、図3に示されるものよりも多くの又は少ない構成要素を含み得る。しかしながら、示される構成要素は、これらの革新性を実施するための例示的な実施形態を開示するのに十分である。ネットワークコンピュータ300は、例えば、図1のイベント分析サーバコンピュータ116などのうちの少なくとも1つの一実施形態を表し得る。
【0062】
ネットワークコンピュータ300などのネットワークコンピュータは、バス328を介してメモリ304と通信し得るプロセッサ302を含み得る。いくつかの実施形態では、プロセッサ302は、1つ若しくは複数のハードウェアプロセッサ、又は1つ若しくは複数のプロセッサコアから構成され得る。場合によっては、1つ又は複数のプロセッサのうちの1つ又は複数は、本明細書で説明するアクションなど、1つ又は複数の専用アクションを実行するように設計された専用プロセッサであり得る。ネットワークコンピュータ300はまた、電源330、ネットワークインターフェース332、オーディオインターフェース356、ディスプレイ350、キーボード352、入力/出力インターフェース338、プロセッサ可読固定記憶デバイス334、及びプロセッサ可読リムーバブル記憶デバイス336を含む。電源330は、ネットワークコンピュータ300に電力を供給する。
【0063】
ネットワークインターフェース332は、ネットワークコンピュータ300を1つ又は複数のネットワークに結合するための回路を含み、限定はしないが、開放型システム間相互接続モデル(OSIモデル)、GSM(登録商標)(Global System for Mobile communication)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ショートメッセージサービス(SMS)、マルチメディアメッセージングサービス(MMS)、汎用パケット無線サービス(GPRS)、WAP、超広帯域(UWB)、IEEE 802.16 WiMax(Worldwide Interoperability for Microwave Access)、セッション開始プロトコル/リアルタイムトランスポートプロトコル(SIP/RTP)、又は様々な他のワイヤード及びワイヤレス通信プロトコルのいずれかの任意の部分を実装するプロトコル及び技術を含む、1つ又は複数の通信プロトコル及び技術と共に使用するために構築される。ネットワークインターフェース332は、トランシーバ、送受信デバイス、又はネットワークインターフェースカード(NIC)として知られることもある。ネットワークコンピュータ300は、オプションで、基地局(図示せず)と通信するか、又は別のコンピュータと直接通信し得る。
【0064】
オーディオインターフェース356は、人間の声の音などのオーディオ信号を生成し、受信するように配置される。例えば、オーディオインターフェース356は、他者との電気通信を可能にするか、又は何らかのアクションに対するオーディオ確認応答を生成するために、スピーカ及びマイクロフォン(図示せず)に結合され得る。オーディオインターフェース356内のマイクロフォンは、例えば、音声認識を使用して、ネットワークコンピュータ300への入力又はその制御にも使用することができる。
【0065】
ディスプレイ350は、液晶ディスプレイ(LCD)、ガスプラズマ、電子インク、発光ダイオード(LED)、有機LED(OLED)、又はコンピュータと共に使用することができる任意の他のタイプの光反射若しくは光透過ディスプレイであり得る。いくつかの実施形態では、ディスプレイ350は、壁又は他のオブジェクト上に画像を投影することが可能なハンドヘルドプロジェクタ又はピコプロジェクタであり得る。
【0066】
ネットワークコンピュータ300はまた、図3に示されていない外部デバイス又はコンピュータと通信するための入力/出力インターフェース338を備え得る。入力/出力インターフェース338は、USB(登録商標)、Firewire(登録商標)、WiFi、WiMax、Thunderbolt(登録商標)、赤外線、Bluetooth(登録商標)、Zigbee(登録商標)、シリアルポート、パラレルポートなどの1つ又は複数のワイヤード又はワイヤレス通信技術を利用することができる。
【0067】
また、入力/出力インターフェース338はまた、ジオロケーション情報を決定するための1つ又は複数のセンサ(例えば、GPS)、電力状態を監視するための1つ又は複数のセンサ(例えば、電圧センサ、電流センサ、周波数センサなど)、天候を監視するための1つ又は複数のセンサ(例えば、サーモスタット、気圧計、風速計、湿度検出器、降水量計など)などを含み得る。センサは、ネットワークコンピュータ300の外部にあるデータを収集又は測定する1つ又は複数のハードウェアセンサであり得る。ヒューマンインターフェース構成要素は、ネットワークコンピュータ300から物理的に分離することができ、ネットワークコンピュータ300への遠隔入力又は出力を可能にする。例えば、ディスプレイ350又はキーボード352などのヒューマンインターフェース構成要素を通して本明細書に説明されるようにルーティングされる情報は、代わりに、ネットワークインターフェース332を通して、ネットワーク上の他の場所に位置する適切なヒューマンインターフェース構成要素にルーティングされることができる。ヒューマンインターフェース構成要素は、コンピュータがコンピュータの人間ユーザから入力を受け取り、又は人間ユーザに出力を送ることを可能にする任意の構成要素を含む。従って、マウス、スタイラス、トラックボールなどのポインティングデバイスは、ユーザ入力を受信するために、ポインティングデバイスインターフェース358を介して通信し得る。
【0068】
GPSトランシーバ340は、地球の表面上のネットワークコンピュータ300の物理座標を決定することができ、典型的に、緯度及び経度の値として位置を出力する。GPSトランシーバ340はまた、地球の表面上のネットワークコンピュータ300の物理的ロケーションを更に決定するために、限定はしないが、三角測量、アシストGPS(AGPS)、拡張観測時間差(E-OTD)、セル識別子(CI)、サービスエリア識別子(SAI)、拡張タイミングアドバンス(ETA)、基地局サブシステム(BSS)などを含む他のジオポジショニング機構を採用することができる。異なる条件下で、GPSトランシーバ340は、ネットワークコンピュータ300の物理的ロケーションを決定することができることを理解されたい。しかしながら、1つ又は複数の実施形態では、ネットワークコンピュータ300は、他の構成要素を介して、例えば、媒体アクセス制御(MAC)アドレス、IPアドレスなどを含む、クライアントコンピュータの物理的ロケーションを決定するために採用され得る他の情報を提供し得る。
【0069】
様々な実施形態のうちの少なくとも1つでは、オペレーティングシステム306、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329などのアプリケーションは、タイムゾーン、言語、カレンダーフォーマットなどの1つ又は複数のローカライゼーション特徴を選択するために、ジオロケーション情報を採用するように配置される。ローカライゼーション特徴は、ユーザインターフェース、ダッシュボード、ビジュアライゼーション、レポート、及び内部プロセス又はデータベースで使用され得る。様々な実施形態のうちの少なくとも1つでは、ローカライゼーション情報を選択するために使用されるジオロケーション情報は、GPS340によって提供され得る。また、いくつかの実施形態では、ジオロケーション情報は、ワイヤレスネットワーク108又はネットワーク111などのネットワークを介して1つ又は複数のジオロケーションプロトコルを使用して提供される情報を含み得る。
【0070】
メモリ304は、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、又は他のタイプのメモリを含み得る。メモリ304は、コンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータなどの情報を記憶するためのコンピュータ可読記憶媒体(デバイス)の一例を示す。メモリ304は、ネットワークコンピュータ300の低レベル動作を制御するための基本入出力システム(BIOS)308を記憶する。メモリはまた、ネットワークコンピュータ300の動作を制御するためのオペレーティングシステム306を記憶する。この構成要素は、UNIX(登録商標)若しくはLinux(登録商標)のバージョンなどの汎用オペレーティングシステム、又はMicrosoft CorporationのWindows(登録商標)オペレーティングシステム若しくはApple CorporationのmacOS(登録商標)オペレーティングシステムなどの専用オペレーティングシステムを含み得ることが理解されよう。オペレーティングシステムは、Java(登録商標)アプリケーションプログラムを介してハードウェア構成要素又はオペレーティングシステム動作の制御を可能にするJava(登録商標)仮想マシンモジュールなどの1つ又は複数の仮想マシンモジュールを含むか、又はそれとインターフェースし得る。同様に、他のランタイム環境が含まれ得る。
【0071】
メモリ304は、とりわけ、アプリケーション320又は他のデータを記憶するためにネットワークコンピュータ300によって利用可能な1つ又は複数のデータストレージ310を更に含み得る。例えば、データストレージ310はまた、ネットワークコンピュータ300の様々な機能を記述する情報を記憶するために採用され得る。次いで、情報は、通信中にヘッダの一部として送信されること、要求に応じて送信されることなどを含む、様々な方法のいずれかに基づいて、別のデバイス又はコンピュータに提供され得る。データストレージ310はまた、アドレス帳、バディリスト、エイリアス、ユーザプロファイル情報などを含むソーシャルネットワーキング情報を記憶するために採用され得る。データストレージ310は、以下で説明されるアクションなどのアクションを実行及び実施するために、プロセッサ302などのプロセッサが使用するためのプログラムコード、データ、アルゴリズムなどを更に含み得る。一実施形態では、データストレージ310の少なくとも一部は、限定はしないが、プロセッサ可読リムーバブル記憶デバイス336、プロセッサ可読固定記憶デバイス334、又はネットワークコンピュータ300内の、更にはネットワークコンピュータ300の外部の任意の他のコンピュータ可読記憶デバイス内の非一時的媒体を含むネットワークコンピュータ300の別の構成要素上にも記憶され得る。データストレージ310は、例えば、データソース314、データモデル316、ビジュアライゼーション318などを含み得る。
【0072】
アプリケーション320は、ネットワークコンピュータ300によって実行されると、メッセージ(例えば、SMS、マルチメディアメッセージングサービス(MMS)、インスタントメッセージ(IM)、電子メール、又は他のメッセージ)、オーディオ、ビデオを送信、受信、又は別の方法で処理し、別のモバイルコンピュータの別のユーザとの電気通信を可能にする、コンピュータ実行可能命令を含み得る。アプリケーションプログラムの他の例には、カレンダー、検索プログラム、電子メールクライアントアプリケーション、IMアプリケーション、SMSアプリケーション、ボイスオーバーインターネットプロトコル(VOIP)アプリケーション、コンタクトマネージャ、タスクマネージャ、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、スプレッドシートプログラム、ゲーム、検索プログラムなどが含まれる。アプリケーション320は、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329などを含み得、これらは、以下で説明する実施形態のためのアクションを実行するように配置され得る。様々な実施形態のうちの1つ又は複数では、アプリケーションのうちの1つ又は複数は、別のアプリケーションのモジュール又は構成要素として実装され得る。更に、様々な実施形態のうちの1つ又は複数では、アプリケーションは、オペレーティングシステム拡張機能、モジュール、プラグインなどとして実装され得る。
【0073】
更に、様々な実施形態のうちの1つ又は複数では、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329などは、クラウドベースのコンピューティング環境において動作し得る。様々な実施形態のうちの1つ又は複数では、管理プラットフォームを含むこれらのアプリケーション及び他のアプリケーションは、クラウドベースのコンピューティング環境において管理され得る仮想マシン又は仮想サーバ内で実行している可能性がある。様々な実施形態のうちの1つ又は複数では、この文脈において、アプリケーションは、クラウドコンピューティング環境によって自動的に管理される性能及びスケーリングの考慮事項に応じて、クラウドベースの環境内で1つの物理ネットワークコンピュータから別の物理ネットワークコンピュータに流れ得る。同様に、様々な実施形態のうちの1つ又は複数では、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329などに専用の仮想マシン又は仮想サーバが、自動的にプロビジョニング及びデコミッション(de-commission)され得る。
【0074】
また、様々な実施形態のうちの1つ又は複数では、モデリングエンジン322、ビジュアライゼーションエンジン324、他のアプリケーション329などは、1つ又は複数の特定の物理的なネットワークコンピュータに結び付けられるのではなく、クラウドベースのコンピューティング環境内で起動する仮想サーバ内に位置し得る。
【0075】
更に、ネットワークコンピュータ300はまた、鍵、デジタル証明書、パスワード、パスフレーズ、2要素認証情報などのセキュリティ/暗号情報を生成、記憶、又は使用するための追加の耐タンパ性予防手段を提供するためのハードウェアセキュリティモジュール(HSM)360を備え得る。いくつかの実施形態では、ハードウェアセキュリティモジュールは、1つ又は複数の標準の公開鍵基盤(PKI)をサポートするために採用され得、鍵ペアなどを生成、管理、又は記憶するために採用され得る。いくつかの実施形態では、HSM360は、スタンドアロン型ネットワークコンピュータであり得、他の場合では、HSM360は、ネットワークコンピュータ内にインストールされ得るハードウェアカードとして配置され得る。
【0076】
追加的に、1つ又は複数の実施形態(図示せず)では、ネットワークコンピュータ300は、CPUの代わりに、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)など、又はそれらの組合せなどの埋め込み論理ハードウェアデバイスを含み得る。埋め込み論理ハードウェアデバイスは、アクションを実行するためにその埋め込み論理を直接実行し得る。また、1つ又は複数の実施形態(図示せず)では、ネットワークコンピュータは、CPUの代わりに1つ又は複数のハードウェアマイクロコントローラを含み得る。1つ又は複数の実施形態では、1つ又は複数のマイクロコントローラは、アクションを実行するためにそれら自体の埋め込み論理を直接実行し、システムオンチップ(SOC)などのアクションを実行するためにそれら自体の内部メモリ及びそれら自体の外部の入力及び出力インターフェース(例えば、ハードウェアピン又はワイヤレストランシーバ)にアクセスし得る。
【0077】
例示的な論理システムアーキテクチャ
図4は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのシステム400の論理アーキテクチャを示す。様々な実施形態のうちの1つ又は複数では、システム400は、モデリングエンジン402、ビジュアライゼーションエンジン404、ビジュアライゼーション406、ビジュアライゼーションモデル408、データモデル410、データソース412、評価モデル414などを含む様々な構成要素を含むように配置されたデータモデリングプラットフォームであり得る。
【0078】
様々な実施形態のうちの1つ又は複数では、データソース412は、モデリングエンジン402が、ユーザによるデータモデル410などのデータモデルの生成又は修正を可能にするために採用し得る、生データ、記録、データ項目などのソースを表す。
【0079】
様々な実施形態のうちの1つ又は複数では、データモデル410などのデータモデルは、データソース412などの1つ又は複数のデータソースに記憶された情報の1つ又は複数の論理表現を提供するデータ構造などであり得る。いくつかの実施形態では、データモデルは、データソース内のテーブル、ビュー、又はファイルの1つ又は複数の部分に対応するデータオブジェクトを含み得る。例えば、いくつかの実施形態では、データソース412がCSVファイル又はデータベースである場合、データモデル412などのデータモデルは、データソース412内の記録フィールドに対応し得る1つ又は複数のデータオブジェクトから構成され得る。
【0080】
様々な実施形態のうちの1つ又は複数では、データモデルは、基礎をなすデータソースとは異なり得るデータソースの論理表現を提供するように配置され得る。いくつかの実施形態では、これは、データモデルからデータソースの1つ又は複数のフィールドを除外することを含み得る。
【0081】
いくつかの実施形態では、モデリングエンジン402などのモデリングエンジンは、データソース412の一部又は全部をデータモデル410に変換するために採用され得る。いくつかの実施形態では、モデリングエンジンは、データソース内の値をデータモデルに変換するためのステップの一部又は全部を決定するために、構成情報によって提供されるコンピュータ可読命令を採用又は実行するように配置され得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、以下に詳細に説明されるように、データ分析及びレポート生成のためのインタラクティブなインターフェースを可能にするように配置され得る。
【0082】
様々な実施形態のうちの1つ又は複数では、ビジュアライゼーションエンジン404などのビジュアライゼーションエンジンは、ユーザに表示され得るビジュアライゼーション406などのビジュアライゼーションのためのレイアウト、スタイリング、対話性(interactivity)などを決定するために、ビジュアライゼーションモデル408などのビジュアライゼーションモデルを採用するように配置され得る。また、いくつかの実施形態では、ビジュアライゼーションエンジンは、データモデルに基づく値をビジュアライゼーションに投入するために、データソースを介して提供されるデータ項目値を採用するように配置され得る。
【0083】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、分析セッションの開始点を提供し得る一次ビジュアライゼーションをユーザが選択することを可能にするように配置され得る。従って、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ビジュアライゼーション又はその関連するデータモデル又はデータソースに関連する分析情報を提供し得る1つ又は複数のインサイト項目を決定するように配置され得る。
【0084】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、一次ビジュアライゼーションに関連付けられ得る1つ又は複数のインサイト項目を決定するために、データフィールド、データモデル、データソース、ビジュアライゼーションなどを評価するための評価モデル414などの1つ又は複数の評価モデルを採用するように配置され得る。
【0085】
様々な実施形態のうちの1つ又は複数では、異なる評価モデルは、ランクインサイト項目を比較するために使用され得るインサイトスコアを提供するように配置され得る。いくつかの実施形態では、異なる評価モデルは、インサイト項目を決定又はスコア化するための異なるスコア化基準を採用するように構成され得る。従って、いくつかの実施形態では、評価エンジンは、異なる評価モデルによって提供されるインサイトスコアを加重又は正規化するように配置され得る。いくつかの実施形態では、評価モデル信頼性スコアを正規化又は加重するための特定の正規化規則又は加重規則は、構成情報を介して提供され得る。
【0086】
また、様々な実施形態のうちの1つ又は複数では、評価モデルは、ユーザインターフェース又はレポートで採用され、インサイト項目の意味又はコンテキストを説明し得る自然言語ナラティブを提供するように配置され得る。いくつかの実施形態では、ナラティブは、インサイト項目又はビジュアライゼーションに関連付けられたラベル、ユニット、値、フィールド名などが、インサイトパネルにリストされたインサイト項目と共に含まれることを可能にするテンプレートに基づき得る。
【0087】
様々な実施形態のうちの1つ又は複数では、評価モデルは、ビジュアライゼーションに関連付けられたデータの1つ又は複数の統計的特徴を評価するように設計又は調整され得る。従って、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ビジュアライゼーションに関連付けられたデータが、評価モデルによってターゲットにされる統計的特徴のうちの1つ又は複数を有するかどうかを評価するために1つ又は複数の評価モデルを適用するように配置され得る。いくつかの実施形態では、評価モデルは、インサイト項目に関連付けられたデータが、評価モデルが一致するか又は他の方法で評価するように設計され得る統計的特徴にどの程度一致するかを表す自己グレードの形態としてインサイトスコアを提供するように配置され得る。
【0088】
様々な実施形態のうちの1つ又は複数では、1つ又は複数の評価モデルは、ビジュアライゼーション、マーク、データモデル、データソースなどに関連付けられると予想され得る一般的な、周知の、又はありふれた統計的特徴に焦点を合わせ得る。
【0089】
また、様々な実施形態のうちの1つ又は複数では、1つ又は複数の評価モデルは、特定の問題ドメイン又はビジネスドメインに対してカスタマイズされるか又対象とされ得る。例えば、財務情報を対象とする評価モデルは、従業員情報を対象とする評価モデルとは異なるように配置され得る。同様に、例えば、自動車産業を対象とする評価モデルは、クルーズ(船舶)産業を対象とする評価モデルとは異なるように配置され得る。更に、様々な実施形態のうちの1つ又は複数では、1つ又は複数の評価モデルは、特定の組織又はユーザのための特定のデータソース、データモデル、又はビジュアライゼーションのためにカスタマイズされ得る。従って、様々な実施形態のうちの1つ又は複数では、評価モデルは、それらが互いに独立して構成されることを可能にするデータストアに記憶され得る。
【0090】
様々な実施形態のうちの1つ又は複数では、ユーザが一次ビジュアライゼーションを提供する場合、モデリングエンジンは、1つ又は複数の評価モデルを決定し、それらを適用して、一次ビジュアライゼーションに関連付けられ得るインサイト項目を決定し得る。いくつかの実施形態では、インサイト項目は、それらを識別するために使用される評価モデルに基づいてグループ化され得る。また、いくつかの実施形態では、1つ又は複数のインサイト項目は、それらが同じ種類のインサイトを表すので、グループ化され得る。いくつかの実施形態では、モデリングエンジンは、構成情報に基づいてインサイト項目グループ化規則を決定するように配置され得る。
【0091】
様々な実施形態のうちの1つ又は複数では、評価モデルは、一次ビジュアライゼーション、そのデータソース、そのデータモデルなどの特徴に基づいて、外れ値、傾向、集計、関連ビジュアライゼーション、関連データモデルなどを決定することに関連するインサイトを決定するように配置され得る。更に、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイト項目の一部又は全部に対応するビジュアライゼーションを自動的に提供するように配置され得る。例えば、利益データフィールドの傾向がインサイト項目であると決定された場合、モデリングエンジンは、プロファイルデータフィールドの傾向線を示すビジュアライゼーションを提供し得る。いくつかの実施形態では、モデリングエンジンは、関連するインサイトビジュアライゼーションと同様に見えるインサイト項目のサムネイルビューを生成するように配置され得る。
【0092】
様々な実施形態のうちの1つ又は複数では、モデリングエンジン又はビジュアライゼーションエンジンは、ビジュアライゼーション又はデータモデルとのシステム全体のユーザインタラクションに関連付けられたメトリックを追跡又はログ記録するように配置され得る。従って、様々な実施形態のうちの1つ又は複数では、1つ又は複数の評価モデルは、一次ビジュアライゼーションに対して時間的に接近して共通に閲覧され得る他のビジュアライゼーションを識別するように配置され得る。いくつかの実施形態では、これらのビジュアライゼーションのうちのいくつかは、インサイト項目とみなされることに値する関連ビジュアライゼーションであると決定され得る。いくつかの実施形態では、ビジュアライゼーションが関連しているかどうか、又は関連するビジュアライゼーションがインサイト項目であり得るかどうかを決定するための特定の基準は、そのようなインサイト項目を決定するために採用される特定の評価モデルに基づいて決定され得ることに留意されたい。同様に、いくつかの実施形態では、モデリングエンジンは、一次ビジュアライゼーション及び他のビジュアライゼーションによって共有される1つ又は複数のデータモデル又は1つ又は複数のデータソースを備え得る、1つ又は複数の関連データフィールドを決定するために、1つ又は複数の評価モデルを採用するように配置され得る。例えば、評価モデルは、一次ビジュアライゼーションと同じデータフィールドのうちのいくつかを使用する1つ又は複数のビジュアライゼーションがインサイト項目とみなされ得ると決定するように配置され得る。いくつかの実施形態では、評価モデルは、データフィールド、データモデルなどを共有するビジュアライゼーションがインサイト項目とみなされ得るかどうかを決定するための特定の基準を提供するように構成され得る。
【0093】
更に、いくつかの実施形態では、モデリングエンジンは、ユーザが分析セッション中にビジュアライゼーション又はインサイト項目を選択的に取り込む又は記録することを可能にするスクラッチパッド(例えば、スクラッチパネル)を提供するように配置され得る。いくつかの実施形態では、スクラッチパネルは、分析セッションの進行に関する視覚的キューを提供するために、取り込んだ情報(例えば、スクラッチ項目)を時系列で表示するように構成され得る。また、いくつかの実施形態では、スクラッチパネル内のスクラッチ項目は、ユーザがスクラッチ項目に関連付けられたビジュアライゼーションなどを動的に閲覧することを可能にするために、順不同でアクセスされ得る。
【0094】
図5Aは、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェース500の一部の論理表現を示す。いくつかの実施形態では、ユーザインターフェース500は、ディスプレイパネル502、インサイトパネル504、スクラッチパネル506などの1つ又は複数のパネルを含むように配置され得る。
【0095】
様々な実施形態のうちの1つ又は複数では、ユーザインターフェース500は、クライアントコンピュータディスプレイ、モバイルデバイスディスプレイなどの1つ又は複数のハードウェアディスプレイに表示され得る。いくつかの実施形態では、ユーザインターフェース500は、ネイティブアプリケーションを介して、又はウェブブラウザ若しくは他の類似のアプリケーション内でホストされるウェブアプリケーションとして提供され得る。当業者は、少なくとも明確さ又は簡潔さのために、商業/生産ユーザインターフェースに共通する多くの詳細が、ユーザインターフェース500から省略されていることを理解するであろう。同様に、いくつかの実施形態では、ユーザインターフェースは、ディスプレイタイプ、ディスプレイ解像度、ユーザ選好などのローカル状況又はローカル要件に応じて、示されるものと異なって配置され得る。しかしながら、当業者は、ユーザインターフェース500の開示/説明が、本明細書に含まれる革新性を開示するために少なくとも十分であることを理解するであろう。
【0096】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インタラクティブなデータ分析又はレポート生成のためのユーザインターフェース500などのユーザインターフェースを生成するように配置され得る。
【0097】
この例では、ディスプレイパネル502は、ユーザに選択又は推奨されたビジュアライゼーションを表示するためのパネルを表す。いくつかの実施形態では、ユーザは、表示されたビジュアライゼーションの作成者であってもよいし、ユーザは、他のユーザによってオーサリングされたビジュアライゼーションを使用してデータ分析を実行していてもよい。いくつかの実施形態では、ディスプレイパネル502などのディスプレイパネルは、異なるビジュアライゼーションを表示するために採用され得る。例えば、ユーザがレビューするためにビジュアライゼーションを選択した場合、ディスプレイパネルに表示され得る。いくつかの実施形態では、ディスプレイパネルに表示されるビジュアライゼーションは、1つ又は複数のサブビジュアライゼーション、ユーザインターフェース制御、テキスト注釈などから構成され得る。しかしながら、少なくとも簡潔且つ明確にするために、ビジュアライゼーション508などのビジュアライゼーションは、より複雑なビジュアライゼーション及び単純なビジュアライゼーションを表すとみなされ得る。
【0098】
様々な実施形態のうちの1つ又は複数では、ビジュアライゼーションは、ビジュアライゼーションによって表され得るデータを提供する1つ又は複数のデータソースに関連付けられ得る。この例では、ビジュアライゼーション508はラインプロット(line plot)を表す。当業者は、本明細書に開示される革新性から逸脱することなく、他のグラフィカルプロット又はビジュアライゼーションが採用され得ることを理解するであろう。更に、いくつかの実施形態では、本明細書で説明されるビジュアライゼーションのデータドメイン又は意味論的意味は、ビジュアライゼーションを作成している可能性のあるユーザ又は組織のニーズに応じて変化し得る。従って、本明細書では、基礎をなすデータ、特定のビジュアライゼーション又はプロットの意味などについてはほとんど論じない。
【0099】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネル504などのインサイトパネルを生成するように配置され得る。いくつかの実施形態では、インサイトパネルは、1つ又は複数のインサイト項目のインタラクティブな表現を表示するように配置され得る。様々な実施形態のうちの1つ又は複数では、インサイト項目は、1つ又は複数のビジュアライゼーションを閲覧している可能性のあるユーザに何らかの分析的インサイトを提供し得る様々なビジュアライゼーションなどを表し得る。従って、いくつかの実施形態では、ユーザが分析すべき一次ビジュアライゼーションを選択した場合、モデリングエンジンは、一次ビジュアライゼーションの特性、一次ビジュアライゼーションに関連付けられたデータモデル、一次ビジュアライゼーションに関連付けられたデータソースなどのうちの1つ又は複数に基づいて、1つ又は複数のインサイト項目を決定するように配置され得る。この例では、いくつかの実施形態に関して、ビジュアライゼーション508は、一次ビジュアライゼーションとみなされ得る。
【0100】
様々な実施形態のうちの1つ又は複数では、ユーザは、1つ又は複数のインサイト項目を選択することを可能にされ得、これは、選択されたインサイト項目に関連付けられたビジュアライゼーションをディスプレイパネルに表示させ、最後の一次ビジュアライゼーションに置き換え得る。従って、いくつかの実施形態では、ユーザは、インサイトパネルにリストされ得るビジュアライゼーションを閲覧するために迅速に切り替え得る。また、いくつかの実施形態では、異なるビジュアライゼーションが選択されると、それらは、現在の一次ビジュアライゼーションになり得る。従って、いくつかの実施形態では、モデリングエンジンは、現在の一次ビジュアライゼーションに基づいてインサイト項目の集合を修正するように配置され得る。
【0101】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、スクラッチパネル506などのスクラッチパッドパネル(例えば、スクラッチパネル)に配置され得る。いくつかの実施形態では、モデリングエンジンは、スクラッチパネル内の1つ又は複数のビジュアライゼーション又はインサイト項目への参照を関連付けるように配置され得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、スクラッチパネルなどのスクラッチパネル内にスクラッチパネル項目516などのスクラッチパネル項目を表示するように構成され得る。いくつかの実施形態では、モデリングエンジンは、ユーザが異なる一次ビジュアライゼーションに切り替えると、スクラッチパネル項目を自動的に生成するように配置され得る。同様に、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザがスクラッチパネル項目を追加又はスクラッチパネルから除去することを選択することを可能にする様々なユーザインターフェース制御又はメニュー項目を提供するように配置され得る。
【0102】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ビジュアライゼーションのうちの1つ若しくは複数又はユーザによってレビューされたインサイト項目のうちの1つ若しくは複数の視覚的記録を提供するスクラッチパネル項目を生成するように配置され得る。従って、いくつかの実施形態では、データ分析セッションの記録が生成され、ディスプレイパネルに表示され得る。
【0103】
いくつかの実施形態では、ユーザがスクラッチパネル項目を選択すると、選択されたスクラッチパネル項目に関連付けられたビジュアライゼーションがディスプレイパネルに表示され、現在の一次ビジュアライゼーションになり得る。
【0104】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザがスクラッチパネルからスクラッチパネル項目を除去することを可能にするように配置され得る。例えば、いくつかの実施形態では、スクラッチパネルからスクラッチパネル項目を除去するために、コンテキストメニュー、ボタンなどのユーザインターフェース制御が提供され得る。同様に、いくつかの実施形態では、ユーザは、一次ビジュアライゼーション又はインサイト項目がスクラッチパネルに追加されるべきかどうかを選択することを可能にされ得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、スクラッチパネルの外観又はインタラクティブな挙動を決定するために、構成情報を介して提供されるテンプレート、レイアウト情報、スタイリング情報などを採用するように配置され得る。
【0105】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネルに異なるタイプのインサイト項目を表示するように配置され得る。いくつかの実施形態では、異なるタイプのインサイト項目は、それらが同じグループ内にあることを示すために、グループ化されるか、又は別様にスタイル設定され得る。いくつかの実施形態では、モデリングエンジンは、インサイト項目のグループに関するコンテキスト情報を提供するために、アイコン、ラベル、テキスト記述、ツールチップなどを表示するように配置され得る。
【0106】
この例では、インサイトパネル504は、3つの異なるタイプのインサイト項目を示しているインサイトパネルを表す。この例では、インサイト項目グループ510、インサイト項目グループ512、及びインサイト項目グループ514は、異なるインサイト項目グループを表す。いくつかの実施形態では、インサイト項目グループ内のインサイト項目の数及びインサイト項目グループの数は、現在の一次ビジュアライゼーション、一次ビジュアライゼーションに関連付けられたデータソース、一次ビジュアライゼーションに関連付けられたデータモデルなどを含む1つ又は複数の要因に応じて変化し得る。いくつかの実施形態では、モデリングエンジンは、ローカル要件又はローカル状況を考慮するために、インサイトパネルに表示され得るインサイト項目グループの特定の配置又は選択を決定するために、構成情報を介して提供される規則、カタログ、命令などを採用するように配置され得る。
【0107】
同様に、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネルの外観又はインタラクティブな挙動を決定するために、構成情報を介して提供されるテンプレート、レイアウト情報、スタイリング情報などを採用するように配置され得る。
【0108】
様々な実施形態のうちの1つ又は複数では、インサイト項目は、インサイト項目のタイプに応じて様々な基準に基づいて決定され得る。いくつかの実施形態では、インサイト項目は、一次ビジュアライゼーションに類似し得る1つ又は複数の特性を有する他のビジュアライゼーションに関連付けられ得る。例えば、いくつかの実施形態では、インサイト項目は、一次ビジュアライゼーションと同じデータモデル又はデータソースに基づく他のビジュアライゼーションであり得る。他の場合では、インサイト項目は、一次ビジュアライゼーションにおいて表示されているかに関わらずデータフィールドに焦点を合わせたビジュアライゼーションであってもよい。例えば、一次ビジュアライゼーションがデータフィールドの現在の値を示す場合、インサイト項目は、同じフィールドについての変化率を示す別のビジュアライゼーションであってもよい。他の例は、一次ビジュアライゼーションに含まれるデータフィールドに関連し得る傾向、分布などを示すビジュアライゼーションを含み得る。場合によっては、インサイト項目は、異なる作成者によって作成され得る一次ビジュアライゼーションと同じデータの異なるビジュアライゼーションであり得る。また、いくつかの実施形態では、インサイト項目は、一次ビジュアライゼーションの外観に影響を及ぼしているか、又はそれを駆動している可能性があるデータフィールドに焦点を合わせるビジュアライゼーション又は説明(テキスト)を表し得る。例えば、これは、異常値、欠測値などを強調表示することを含み得る。
【0109】
従って、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイト項目を決定するために様々な評価モデル(図示せず)を採用するように配置され得る。様々な実施形態のうちの1つ又は複数では、評価モデルは、ビジュアライゼーション、データフィールド、データモデル、説明などがインサイトパネル内にリストされるべきかどうかを決定するためのデータ又は命令を含むデータ構造とみなされ得る。様々な実施形態のうちの1つ又は複数では、評価モデルは、様々なソースから提供され得、検討中の項目がインサイトパネルにリストされ得るかどうかを決定するために使用され得るインサイトスコアを提供するために採用され得る、ヒューリスティクス、文法、パーサ、条件文、機械学習分類器、他の機械学習モデル、曲線当てはめなどを含み得る。いくつかの実施形態では、モデリングエンジンは、インサイト項目がリストされるべきかどうかを決定するために、評価モデルによって提供されるインサイトスコアを採用するように配置され得る。いくつかの実施形態では、モデリングエンジンは、インサイト項目の年齢、インサイト項目を閲覧又は使用した他のユーザの数などの追加の基準を適用するように配置され得る。
【0110】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数の評価モデルが追加されるか又はシステムから除去されることを可能にするように配置され得る。従って、いくつかの実施形態では、新しい種類のインサイト項目が決定され得るので、それらを発見し得る評価モデルが含まれ得る。同様に、評価モデルがローカル選好又はローカル要件に基づいて支持されない場合、それらの評価モデルは、除去されるか、又は別様に無効にされ得る。従って、いくつかの実施形態では、モデリングエンジンは、ローカル要件のローカル状況を考慮するために、構成情報に基づいて利用可能な評価モデルを決定するように配置され得る。
【0111】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイト項目をそれらのグループ内で又は全てのインサイト項目に対してランク付けするために、1つ又は複数のソート機能を適用するように配置され得る。いくつかの実施形態では、ソート機能は、インサイト項目グループ、ユーザ、組織などに応じて変化し得る。また、いくつかの実施形態では、ユーザ又は組織は、構成情報内に選好として記憶され得る、1つ又は複数のソート規則などを定義することを可能にされ得る。
【0112】
様々な実施形態のうちの1つ又は複数では、検索式、フィルタなどを提供するためのパネル又は制御を含む追加のパネルがユーザインターフェース500に含まれ得る。
【0113】
図5Bは、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェース500の一部の論理表現を示す。簡潔且つ明確にするために、図5Aに関して上述したユーザインターフェース500の要素又は挙動は、ここでは繰り返さない。
【0114】
この例では、一次ビジュアライゼーションは、インサイトパネル504から選択されたインサイト項目に基づいて生成されたビジュアライゼーションを表す一次ビジュアライゼーション518に変化している。また、この例では、スクラッチパネル項目520は、一次ビジュアライゼーション518を参照すると考えられ得る。
【0115】
この例では、ユーザは、スクラッチパネル506に2つのスクラッチパネル項目(スクラッチパネル項目516及びスクラッチパネル項目52)を追加している。従って、いくつかの実施形態では、ユーザがスクラッチパネル項目516に関連付けられたビジュアライゼーションを再訪問することを望む場合、ユーザは、スクラッチパネル項目516を選択し得、モデリングエンジンは、対応するビジュアライゼーションを現在の一次ビジュアライゼーションとして表示し得る。いくつかの実施形態では、スクラッチパネル項目516に対応するビジュアライゼーションが一次ビジュアライゼーションであると選択された場合、スクラッチパネル506内の2つのスクラッチパネル項目は表示されたままあり得ることに留意されたい。
【0116】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザがスクラッチパネル内のスクラッチパネル項目の順序を変更することを可能にするように配置され得る。例えば、モデリングエンジンは、スクラッチパネル項目の位置がスクラッチパネル内の別の位置にドラッグすることによって変更され得るように、スクラッチパネルを生成するように配置され得る。
【0117】
図6は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのユーザインターフェース600の一部の論理表現を示す。簡潔性及び明瞭性の理由から、図5Aなどに関して上述したユーザインターフェース600の要素又は挙動は、ここでは繰り返さない。
【0118】
いくつかの実施形態では、ユーザインターフェース600などのユーザインターフェースは、ストーリーパネル602などのストーリーパネル、インサイトパネル604、スクラッチパネル606などを含むように配置され得る。
【0119】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザが保存又は他のユーザと共有し得るレポートを生成することを可能にするように配置され得る。いくつかの実施形態では、レポートは、1つ又は複数のビジュアライゼーション、追加の注釈などを含む複合ビジュアライゼーションとみなされ得る。
【0120】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ストーリー項目がストーリーパネルに追加されるのを可能にするように配置される。様々な実施形態のうちの1つ又は複数では、ストーリー項目は、スクラッチパネル又はインサイトパネルから選択され得る。或いは、いくつかの実施形態では、ストーリー項目は、オンザフライで追加又は作成され得る追加の注釈を含み得る。いくつかの実施形態では、モデリングエンジンは、ストーリーパネルに追加され得るストーリー項目に基づいてインタラクションレポートを生成するように配置され得る。
【0121】
この例では、ビジュアライゼーション612及びビジュアライゼーション614は、ストーリーパネルに追加されたビジュアライゼーションを表す。この例では、いくつかの実施形態に関して、ユーザがスクラッチパネル項目608と対話することに基づいて、ビジュアライゼーション612がストーリーパネル602に追加され得る。同様に、この例では、ユーザがスクラッチパネル項目610と対話することに基づいて、ビジュアライゼーション614がストーリーパネル602に追加され得る。
【0122】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイト項目又はスクラッチパネル項目を使用することに限定されるのではなく、ユーザが他のソースから他のテキスト、画像、ビジュアライゼーションなどを作成又はインポートすることを可能にするように配置され得る。例えば、いくつかの実施形態に関して、注釈616は、ストーリーパネル602に追加されたテキスト注釈を表す。
【0123】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ストーリー項目が追加され得る際にストーリーパネルを自動的にサイズ変更するように配置される。この例では、ストーリーパネル602は、モデリングエンジンが、追加されたストーリー項目を収容するために、そのサイズを自動的に増加させるか、又は他の方法でそのジオメトリを調整することを示すために、ユーザインターフェース600の境界の外側に延びる破線を使用して示される。
【0124】
一般化された動作
図7~10は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのための一般化された動作を表す。様々な実施形態のうちの1つ又は複数では、図7図10に関連して説明するプロセス700、800、900、及び1000は、図3のネットワークコンピュータ300などの単一のネットワークコンピュータ上の1つ又は複数のプロセッサによって実装又は実行され得る。他の実施形態では、これらのプロセス又はその一部は、図3のネットワークコンピュータ300などの複数のネットワークコンピュータによって実装されるか、又はその上で実行され得る。更に他の実施形態では、これらのプロセス又はその一部は、クラウドベースの環境内のものなど、1つ又は複数の仮想化されたコンピュータによって実装されるか、又はその上で実行され得る。しかしながら、実施形態は、そのように限定されず、ネットワークコンピュータ、クライアントコンピュータなどの様々な組合せが利用され得る。更に、様々な実施形態のうちの1つ又は複数では、図7~10に関連して説明するプロセスは、図4~6に関連して説明されたものなどの様々な実施形態、アーキテクチャ、又はユーザインターフェースのうちの少なくとも1つに従って、データ分析及びレポート生成のためのインタラクティブなインターフェースに使用され得る。更に、様々な実施形態のうちの1つ又は複数では、プロセス700、800、900、及び1000によって実行されるアクションの一部又は全部は、部分的に、1つ又は複数のネットワークコンピュータの1つ又は複数のプロセッサ上で実行される、モデリングエンジン322、ビジュアライゼーションエンジン324などによって実行され得る。
【0125】
図7は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースのためのプロセス700の概略フローチャートを示す。STARTブロックの後、開始ブロック702において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ディスプレイパネルに表示され得る一次ビジュアライゼーションが提供され得る。上述したように、一次ビジュアライゼーションは、ユーザによって選択され得るか、又はデフォルトの規則に基づいて自動的に選択され得る。例えば、いくつかの実施形態では、ビジュアライゼーションを閲覧するユーザは、ユーザが閲覧しているビジュアライゼーションに寄与した基礎をなすデータについてより理解することに関心を持つようになる。この例では、モデリングエンジンは、ユーザが閲覧しているビジュアライゼーションに基づいてユーザが分析セッションを開始することを可能にするユーザインターフェース制御(例えば、ボタン、メニュー項目など)を提供するように配置され得る。従って、この例では、ユーザによって閲覧されているビジュアライゼーションが、分析セッションのための一次ビジュアライゼーションとしてモデリングエンジンに提供され得る。
【0126】
ブロック704において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネルに表示され得る1つ又は複数のインサイト項目を生成するように配置され得る。いくつかの実施形態では、モデリングエンジンは、インサイトパネルにリストすべき1つ又は複数のインサイト項目を決定するために1つ又は複数の評価モデルを採用するように配置され得る。
【0127】
決定ブロック706において、様々な実施形態のうちの1つ又は複数では、インサイト項目が選択され得る場合、制御は、ブロック708に進み得、そうでない場合には、制御は、決定ブロック706にループバックし得る。上述したように、インサイトパネルは、ユーザがリストされたインサイト項目と対話することを可能にするように配置され得る。例えば、いくつかの実施形態では、ユーザは、ポインティングデバイスを用いてインサイト項目をクリックすることによってインサイト項目を選択するために、マウスなどのポインティングデバイスを採用することを可能にされ得る。
【0128】
ブロック708において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、選択されたインサイト項目に基づいて別のビジュアライゼーションを生成するように配置され得る。いくつかの実施形態では、他のビジュアライゼーションは、ディスプレイパネルに表示され得る。いくつかの実施形態では、他のビジュアライゼーションは、新しい一次ビジュアライゼーションとみなされ得る。また、いくつかの実施形態では、分析セッションの開始時に使用された一次ビジュアライゼーションは、他のビジュアライゼーションがディスプレイパネルに表示されても、一次ビジュアライゼーションのままであり得る。
【0129】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、他のビジュアライゼーションに基づいてインサイト項目を更新又は修正するように配置され得る。いくつかの実施形態では、これは、他のビジュアライゼーションが新しい一次ビジュアライゼーションとみなされる場合に起こり得る。また、いくつかの実施形態では、インサイト項目は、他のビジュアライゼーションが一次ビジュアライゼーションでない場合であっても、それに基づいて更新され得る。
【0130】
決定ブロック710において、様々な実施形態のうちの1つ又は複数では、選択されたインサイト項目又はビジュアライゼーションがスクラッチパネルに追加され得る場合、制御はブロック712に進み得、そうでない場合、制御は、決定ブロック714に進み得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、選択されたビジュアライゼーション又はインサイト項目をスクラッチパネルに自動的に追加するように配置され得る。いくつかの実施形態では、モデリングエンジンは、ユーザ入力又は他の規則に基づいてスクラッチパネルにビジュアライゼーション又はインサイト項目を選択的に追加するように配置され得る。
【0131】
ブロック712において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、以前の一次ビジュアライゼーションに関連付けられ得るサムネイル画像をスクラッチパネルに追加するように配置され得る。様々な実施形態のうちの1つ又は複数では、スクラッチパネルに含まれるビジュアライゼーション又はインサイト項目は、追加されたビジュアライゼーション又はインサイト項目のサムネイル又は他の方法で最小化された視覚的表現を用いて示され得る。いくつかの実施形態では、必要なサムネイルは、それらが表すビジュアライゼーション又はインサイト項目の外観を模倣する最小化されたビューであり得る。
【0132】
決定ブロック714において、様々な実施形態のうちの1つ又は複数では、分析セッションが終了され得る場合、制御は、呼び出しプロセスに戻され得、そうでない場合、制御は、決定ブロック706にループバックし得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネル内にリストされたインサイト項目に基づいて一次ビジュアライゼーション又はその基礎をなすデータをユーザがインタラクティブに分析することを可能にするように配置され得る。従って、いくつかの実施形態では、ユーザが分析セッションを終了する場合、セッションは終了され得る。そうでない場合、ユーザは、分析セッションを終了するまで、インサイトパネル、スクラッチパネル、ディスプレイパネルなどのうちの1つ又は複数と対話し続け得る。
【0133】
次に、様々な実施形態のうちの1つ又は複数では、制御が呼び出しプロセスに戻され得る。
【0134】
図8は、様々な実施形態のうちの1つ又は複数による、スクラッチパッドパネルに基づいてレポートを生成するためのプロセス800のフローチャートを示す。STARTブロックの後、開始ブロック802において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数のスクラッチパネル項目をリストし得るスクラッチパネルを生成するように配置され得る。上述したように、いくつかの実施形態では、ユーザの分析セッション中にレビューされた可能性のあるビジュアライゼーション又はインサイト項目の一部又は全部を自動的に追跡又は記録するために、モデリングエンジンは、スクラッチパネルを提供するように配置され得る。いくつかの実施形態では、スクラッチパネルは、ユーザが、最近閲覧したビジュアライゼーション又はインサイト項目を再訪問することを可能にする視覚的参照を提供する。
【0135】
決定ブロック804において、様々な実施形態のうちの1つ又は複数では、スクラッチパネル項目又はインサイト項目がレポートパネルに追加され得る場合、制御は、ブロック806に進み得、そうでない場合には、制御は、決定ブロック808に進み得る。様々な実施形態のうちの1つ又は複数では、上述したように、レポートパネルは、記憶又は共有され得るインタラクティブなレポートに組み合わせられ得るビジュアライゼーション、インサイト項目、又は注釈を受け入れるように配置されたパネルであり得る。
【0136】
従って、いくつかの実施形態では、モデリングエンジンは、ユーザが、レポートパネルに追加すべき1つ又は複数のスクラッチパネル項目又は1つ又は複数のインサイト項目を選択することを可能にするように配置され得る。
【0137】
ブロック806において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、スクラッチパネル項目に関連付けられたビジュアライゼーションを用いてレポートパネルを更新するように配置され得る。いくつかの実施形態では、モデリングエンジンは、レポートパネル内の他のレポート項目の前又は後にスクラッチパネル項目を付加又はプリペンドするように配置され得る。いくつかの実施形態では、スクラッチパネル項目は、レポートパネル内の2つのレポート項目の間に挿入され得る。
【0138】
いくつかの実施形態では、モデリングエンジンは、それが含み得るレポート項目に基づいて、レポートパネルのサイズを自動的に拡大又は縮小するように配置され得る。いくつかの実施形態では、レポートパネルの一部(ビューウィンドウ)が表示され得、残りは画面外に維持されることに留意されたい。
【0139】
決定ブロック808において、様々な実施形態のうちの1つ又は複数では、注釈がレポートパネルに追加され得、制御がブロック810に進み得るか、制御は、決定ブロック812に進み。様々な実施形態のうちの1つ又は複数では、注釈は、レポートに追加され得るテキスト、画像、コメントブロック、凡例、要約、リンク、ブックマークなどのあらゆる項目とみなされ得る。いくつかの実施形態では、注釈は、スクラッチパネル又はインサイトパネル以外のソースから選択され得る。
【0140】
また、様々な実施形態のうちの1つ又は複数では、注釈は、インタラクティブなレポートに含まれ得る追加のユーザインターフェース制御を含み得る。例えば、1つ又は複数のレポート項目は、ユーザインタラクション又はユーザ入力に基づいて1つ又は複数のレポート項目を隠すか又は示すユーザインターフェース制御に関連付けられ得る。
【0141】
ブロック810において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、注釈を含むようにレポートパネルを更新するように配置され得る。ブロック806についての説明と同様に、モデリングエンジンは、1つ又は複数の注釈を含むようにレポートパネル及びレポートを更新するように配置され得る。
【0142】
決定ブロック812において、様々な実施形態のうちの1つ又は複数では、レポートセッションが終了し得る場合、制御は、呼び出しプロセスに戻され得、そうでない場合、制御は、ブロック802にループバックし得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザが、レポートから項目を反復的に追加、移動、又は除去することによってレポートをインタラクティブに構築することを可能にするように配置され得る。従って、ユーザがレポートを終了すると、ユーザは、将来の使用のためにそれを記憶し得るか、又は他のユーザとそれを共有し得る。
【0143】
次に、様々な実施形態のうちの1つ又は複数では、制御が呼び出しプロセスに戻され得る。
【0144】
図9は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースを提供するためのプロセス900のフローチャートを示す。STARTブロックの後、開始ブロック902において、様々な実施形態のうちの1つ又は複数では、ビジュアライゼーションが、モデリングエンジンに提供され得る。いくつかの実施形態では、モデリングエンジンは、ビジュアライゼーションをディスプレイに表示するように配置され得る。いくつかの実施形態では、ビジュアライゼーションは、一次ビジュアライゼーションであり得る。いくつかの実施形態では、モデリングエンジンは、ユーザが、一次ビジュアライゼーションを用いて分析セッションを開始することを可能にするように配置され得る。いくつかの実施形態では、初期一次ビジュアライゼーションは、ユーザが分析セッションを終了するか、又は異なる一次ビジュアライゼーションを選択するまで、一次ビジュアライゼーションとみなされ得る。代替的に、いくつかの実施形態では、一次ビジュアライゼーションは、ディスプレイに現在表示されているビジュアライゼーションとみなされてもよい。従って、いくつかの実施形態では、インサイト項目に関連付けられたビジュアライゼーションがインサイトパネルから選択され、ディスプレイパネルに表示され得るたびに、それは新しい一次ビジュアライゼーションとみなされ得る。更に、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザがビジュアライゼーションを一次ビジュアライゼーションであると明示的に割り当てることを可能にするユーザインターフェース制御(例えば、ボタン、トグル、メニュー項目など)を提供するように配置され得る。
【0145】
様々な実施形態のうちの1つ又は複数では、一次ビジュアライゼーションは、インサイト項目の決定を駆動するビジュアライゼーションであるとみなされ得る。
【0146】
ブロック904において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、一次ビジュアライゼーションに関連付けられ得るデータソース又は1つ又は複数のデータモデルを決定するように配置され得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、データソース又はデータモデルをビジュアライゼーションに関連付けるルックアップテーブル、マップ、カタログなどに基づいて一次ビジュアライゼーションに関連付けられたデータソース又はデータモデルを決定するように配置され得る。いくつかの実施形態では、一次ビジュアライゼーションに関連付けられたビジュアライゼーションモデルは、一次ビジュアライゼーションに関連付けられたデータソース又はデータモデルを定義し得る。
【0147】
ブロック906において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数のフィールドインサイト項目を生成するように配置され得る。様々な実施形態のうちの1つ又は複数では、フィールドインサイト項目は、一次ビジュアライゼーションの意味についてのインサイトを提供し得る1つ又は複数のデータフィールドを推奨することに関連するインサイト項目であり得る。例えば、一次ビジュアライゼーションが2つ以上のデータフィールドの組合せに基づく値を含む場合、関連するフィールドインサイト項目は、各構成要素データフィールドが一次ビジュアライゼーションにおいて表示される値にどのように寄与するかについてのインサイトを提供するために一次ビジュアライゼーションにおいて組み合わされた個々のデータフィールドのプロットであり得る。同様に、いくつかの実施形態では、フィールドインサイト項目は、一次ビジュアライゼーションにおいて使用されるデータフィールドのうちの1つ又は複数と組み合わせてしばしば使用され得るデータフィールドであり得る。例えば、モデリングエンジンが、一次ビジュアライゼーションにおいて1つ又は複数のデータフィールドと共に一般的に使用される1つ又は複数のデータフィールドを識別する場合、これらのデータフィールドは、インサイト項目とみなされ得る。
【0148】
様々な実施形態のうちの1つ又は複数では、フィールドインサイト項目は、各フィールドインサイト項目の関連性を説明し得るナラティブ情報に関連付けられ得る。同様に、フィールドインサイト項目は、フィールドインサイト項目を互いに対してランク付けするために採用され得るインサイトスコアに関連付けられ得る。上述したように、フィールドインサイト項目を識別又は評価するために実行される特定のアクション又は基準は、1つ又は複数の評価モデルにおいて定義され得る。
【0149】
ブロック908において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数の傾向インサイト項目を生成するように配置され得る。フィールドインサイト項目と同様に、傾向インサイト項目は、一次ビジュアライゼーションに関連付けられた1つ又は複数のデータフィールド又はデータオブジェクトに関連付けられた傾向を示すビジュアライゼーション又はデータフィールドに関連付けられ得る。例えば、一次ビジュアライゼーションがデータフィールドの集計値に基づくプロットを含む場合、経時的な構成要素フィールドの値のプロットを含むビジュアライゼーションは、候補の傾向インサイト項目として考えられ得る。
【0150】
フィールドインサイト項目と同様に、いくつかの実施形態では、傾向インサイト項目は、各傾向インサイト項目の関連性を説明し得るナラティブ情報に関連付けられ得る。同様に、いくつかの実施形態では、傾向インサイト項目は、傾向インサイト項目を互いに対してランク付けするために採用され得るインサイトスコアに関連付けられ得る。本明細書に説明されるように、傾向インサイト項目を識別又は評価するために実行される特定のアクション又は基準は、1つ又は複数の評価モデルにおいて定義され得る。
【0151】
ブロック910において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数の他のインサイト項目を生成するように配置され得る。当業者であれば、フィールドインサイト項目又は傾向インサイト項目が、決定され得るインサイト項目の種類の非限定的な例を表すことを理解するであろう。従って、いくつかの実施形態では、様々な基準に基づいて様々な種類のインサイト項目を決定するための評価モデルが提供され得る。いくつかの実施形態では、基準は、ローカルニーズ又はローカル要件に合わせて調整され得る。従って、いくつかの実施形態では、モデリングエンジンは、異なる種類のインサイト項目を決定するために任意の数の評価モデルを採用するように配置され得る。いくつかの実施形態では、モデリングエンジンは、構成情報を介して提供される規則、命令、分類子などに基づいて、インサイト項目の種類又はどの評価モデルを採用するかを決定するように配置され得る。
【0152】
ブロック912において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、ユーザインターフェースに表示され得るインサイトパネルにインサイト項目をリストするように配置され得る。いくつかの実施形態では、決定されたインサイト項目は、最初は、インサイトパネルにリストされるまで、候補インサイト項目とみなされ得る。従って、いくつかの実施形態では、モデリングエンジンは、候補インサイト項目のうちのどれがインサイトパネルにリストされるべきかを決定するために、インサイトスコアなどの様々な基準を採用するように配置され得る。いくつかの実施形態では、ユーザ又は組織の選好は、どのインサイト項目がインサイトパネルにリストされ得るかに影響を及ぼし得る。例えば、いくつかの実施形態では、モデリングエンジンは、ユーザ又は組織が、インサイトパネルにリストすべきインサイト項目の数に制限を設けることを可能にするように配置され得る。同様に、いくつかの実施形態では、モデリングエンジンは、ユーザ又は組織が、インサイトパネルへのリスト対象に全種類のインサイト項目を含むかまたはインサイトパネルへのリスト対象から除外するための選好値を設定することを可能にするように配置され得る。
【0153】
次に、様々な実施形態のうちの1つ又は複数では、制御が呼び出しプロセスに戻され得る。
【0154】
図10は、様々な実施形態のうちの1つ又は複数による、データ分析及びレポート生成のためのインタラクティブなインターフェースを提供するインサイト項目を決定するためのプロセス1000のフローチャートを示す。STARTブロックの後、開始ブロック1002において、様々な実施形態のうちの1つ又は複数では、ビジュアライゼーション、1つ又は複数のデータモデル、1つ又は複数のデータソースなどが、モデリングエンジンに提供され得る。上述したように、モデリングエンジンは、データモデル又はデータソースに関連付けられ得る一次ビジュアライゼーションが提供され得る。いくつかの実施形態では、モデリングエンジンは、どのデータモデル又はデータソースが所与のビジュアライゼーションに関連付けられ得るかの記録を維持するテーブル、マップ、リストなどに基づいて、ビジュアライゼーションからデータモデル又はデータソースを決定するように配置され得る。いくつかの実施形態では、ビジュアライゼーションが基づくビジュアライゼーションモデルは、モデリングエンジンがビジュアライゼーションに関連付けられたデータモデル又はデータソースを決定することを可能にする参照又は識別子を含むように配置され得る。更に、いくつかの実施形態では、ビジュアライゼーションエンジンなどの別のプロセスは、モデリングエンジンがビジュアライゼーション又はビジュアライゼーションモデルに基づいてデータモデル又はデータソースを決定することを可能にするAPIを提供するように配置され得る。
【0155】
ブロック1004において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、1つ又は複数の評価モデルを決定するように配置され得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、異なるタイプのインサイト項目に対して異なる評価モデルを採用するように配置され得る。いくつかの実施形態では、1つ又は複数の評価モデルは、特定のデータモデル、データソース、又はビジュアライゼーションに関連付けられ得る。同様に、いくつかの実施形態では、1つ又は複数の評価モデルは、インサイト項目を決定するために、いくつか又は全てのデータモデル、データソース、ビジュアライゼーションなどを評価するために採用されるように配置され得る。
【0156】
いくつかの実施形態では、ユーザ又は組織は、ユーザ又は組織の選好を反映するために、いくつか又は全ての評価モデルをデータモデル、データソース、又はビジュアライゼーションに関連付けることを可能にされ得る。例えば、様々な実施形態のうちの1つ又は複数では、組織は、リソース制限、ライセンシング制限などの様々な制約に準拠するために、限られた数の評価モデルを採用することを好む場合がある。また、いくつかの実施形態では、ユーザ又は組織は、他のタイプのインサイト項目よりもあるタイプのインサイト項目を使用することを好む場合がある。従って、いくつかの実施形態では、モデリングエンジンは、ビジュアライゼーションのためのインサイト項目を決定するために評価モデルが採用されるべきかどうかを決定し得る構成情報を介して提供される、1つ又は複数の規則、命令、選好情報などを採用するように配置され得る。
【0157】
また、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、2つ以上の評価モデルを決定し、決定されたインサイト項目に対してそれらを同時に採用するように配置され得る。
【0158】
ブロック1006において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、評価モデルに基づいて1つ又は複数の候補インサイト項目を決定するように配置され得る。上述したように、評価モデルは、個々の評価モデルによって定義された基準を満たす、ビジュアライゼーション、データフィールド、データモデルなどを決定することに基づいて、1つ又は複数のインサイト項目を識別するように構成され得る。いくつかの実施形態では、評価モデルは、同じ又は異なる評価モデルによって提供されるインサイト項目がランク付けられることを可能にし得るインサイトスコアを割り当てるように構成され得る。従って、いくつかの実施形態では、インサイトパネルでの表示が確認されていないインサイト項目は、候補インサイト項目とみなされ得る。
【0159】
ブロック1008において、様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトパネルにインサイト項目のうちの1つ又は複数を表示するように配置され得る。
【0160】
様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、評価モデルによって決定された候補インサイト項目を選択、ソート、又はフィルタリングするための1つ又は複数のアクションを実行するように配置され得る。様々な実施形態のうちの1つ又は複数では、モデリングエンジンは、インサイトスコア、ユーザ/組織の選考、ライセンシング制限、データアクセス制限などを含む様々な基準に基づいて候補インサイト項目を選択、ソート、又はフィルタリングすることを可能にされ得る。例えば、モデリングエンジンは、閾値を下回るインサイトスコアを有するインサイト項目を無視するように配置され得る。同様に、例えば、モデリングエンジンは、ユーザが閲覧又はアクセスすることを制限されるビジュアライゼーション又はデータに基づくインサイト項目を無視するように配置され得る。
【0161】
従って、いくつかの実施形態では、モデリングエンジンは、候補インサイト項目の一部又は全部が、インサイトパネルに表示されるべきインサイト項目であり得ると決定し得る。
【0162】
次に、様々な実施形態のうちの1つ又は複数では、制御が呼び出しプロセスに戻され得る。
【0163】
各フローチャート図における各ブロック、及び各フローチャート図におけるブロックの組合せは、コンピュータプログラム命令によって実装されることができることが理解されよう。これらのプログラム命令は、プロセッサ上で実行される命令が、1つ又は複数の各フローチャートブロックにおいて指定されたアクションを実装するための手段を作成するように、マシンを生成するためにプロセッサに提供され得る。コンピュータプログラム命令は、プロセッサ上で実行される命令が、1つ又は複数の各フローチャートブロックにおいて指定されたアクションを実装するためのステップを提供するように、一連の動作ステップをプロセッサによって実行させてコンピュータ実装プロセスを生成するために、プロセッサによって実行され得る。コンピュータプログラム命令はまた、各フローチャートのブロックに示される動作ステップのうちの少なくともいくつかを同時に実行させ得る。更に、ステップのうちのいくつかはまた、マルチプロセッサコンピュータシステムにおいて生じ得るように、2つ以上のプロセッサにわたって実行され得る。加えて、各フローチャート図における1つ又は複数のブロック又はブロックの組合せは、本発明の範囲又は趣旨から逸脱することなく、他のブロック又はブロックの組合せと同時に、又は図示されたものとは異なる順序で実行され得る。
【0164】
従って、各フローチャート図の各ブロックは、指定されたアクションを実行するための手段の組合せ、指定されたアクションを実行するためのステップの組合せ、及び指定されたアクションを実行するためのプログラム命令手段をサポートする。各フローチャート図の各ブロック、及び各フローチャート図のブロックの組合せは、指定されたアクション若しくはステップを実行する専用ハードウェアベースのシステム、又は専用ハードウェアとコンピュータ命令との組合せによって実装されることができることも理解されよう。前述の例は、限定的又は網羅的であると解釈されるべきではなく、むしろ、本発明の様々な実施形態のうちの少なくとも1つの実装を示すための例証的使用事例であると解釈されるべきである。
【0165】
更に、1つ又は複数の実施形態(図示せず)では、例示的なフローチャート内の論理は、CPUの代わりに、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック(PAL)、又はそれらの組合せなどの埋め込み論理ハードウェアデバイスを使用して実行され得る。埋め込み論理ハードウェアデバイスは、アクションを実行するためにその埋め込み論理を直接実行し得る。1つ又は複数の実施形態では、マイクロコントローラは、システムオンチップ(SOC)などのように、アクションを実行するためにそれ自体の埋め込み論理を直接実行し、アクションを実行するためにそれ自体の内部メモリ及びそれ自体の外部入力及び出力インターフェース(例えば、ハードウェアピン又はワイヤレストランシーバ)にアクセスするように配置され得る。
図1
図2
図3
図4
図5A
図5B
図6
図7
図8
図9
図10
【外国語明細書】