JP7305641B2 - リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム - Google Patents

リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム Download PDF

Info

Publication number
JP7305641B2
JP7305641B2 JP2020531012A JP2020531012A JP7305641B2 JP 7305641 B2 JP7305641 B2 JP 7305641B2 JP 2020531012 A JP2020531012 A JP 2020531012A JP 2020531012 A JP2020531012 A JP 2020531012A JP 7305641 B2 JP7305641 B2 JP 7305641B2
Authority
JP
Japan
Prior art keywords
remote devices
remote
processor
remote device
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020531012A
Other languages
English (en)
Other versions
JP2021506010A (ja
JP2021506010A5 (ja
Inventor
ロダ,スーリヤバー・シング
ブラビー,ウィリアム
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2021506010A publication Critical patent/JP2021506010A/ja
Publication of JP2021506010A5 publication Critical patent/JP2021506010A5/ja
Application granted granted Critical
Publication of JP7305641B2 publication Critical patent/JP7305641B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)
  • Debugging And Monitoring (AREA)

Description

背景
さまざまなサービスおよび製品を実現するために、コンピューティングデバイスが用いられている。例えば、さまざまなコンピューティングデバイスは、スケジューリングサービス(例えば、車両を用いて行なわれるタスクのスケジューリング)や、通信サービス(例えば、他のコンピューティングデバイスとの間のメッセージの送受信)を提供し得る。スケジュール設定されたタスク、および送受信されたメッセージは、分散型ネットワーク環境(例えば、クラウドサービス)のデータベースもしくは他の格納構造、または、ローカルコンピュータのデータベースもしくは他の格納構造に格納される場合もある。ユーザは、コンピューティングデバイスの各々と対話することにより、対応するスケジュール設定されたタスク、および対応する送受信されたメッセージに対する操作を行なうことができる。例えば、各コンピューティングデバイスを用いて、新たなタスクの追加、既存のタスクの消去、もしくは既存のタスクの変更、または新たなメッセージの作成、既存のメッセージの消去、もしくは既存のメッセージの変更を行なうことができる。
スケジューリングサービスおよび通信サービスには、一部のコンピューティングデバイスのユーザによるサービスの利用を妨げるバグまたは欠陥がある場合がある。そのようなバグまたは欠陥は、特定されない場合もあるし、サービスプロバイダが知らない場合もある。
コンピューティングデバイスの性能、サービスの有効性、タスクおよびメッセージ送信の正常終了率、ならびにサービスの顧客の満足度を改善するためには、サービスプロバイダがサービスのバグまたは欠陥を効率的に特定し、修正することが可能であることが望ましい。
都合の悪いことに、一般的な既存の手法は、観察および事例に基づく情報を用いてバグまたは欠陥を特定することしかできない。ゆえに、サービスの改善には、情報ソースが制限される(多くの場合、情報ソースの受信が遅くなる)という制約があった。
概要
一実施形態では、非一時的なコンピュータ可読媒体は、コンピュータ実行可能命令を格納しており、このコンピュータ実行可能命令は、コンピュータの少なくともプロセッサによって実行されると、コンピュータに、少なくともプロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、少なくともプロセッサが、アプリケーションアクティビティデータを解析して、複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、少なくともプロセッサが、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、少なくともプロセッサが、1つ以上の問題の各々に対して修正動作を決定することと、少なくともプロセッサが、修正動作に基づいて、リモートデバイスのセットのための修正動作データ構造を生成することとを実行させる。
別の一実施形態によれば、修正動作データ構造はコードを含み、このコードは、リモートデバイスによって受信されて実行されると、1つ以上の問題のうちの少なくとも1つを軽減するようにアプリケーションを変更させる。
別の一実施形態によれば、修正動作データ構造はレポートを含み、このレポートは、(i)リモートデバイスのセットに関連する1つ以上の問題と、(ii)1つ以上の問題に対して決定された修正動作とを特定する。
別の一実施形態によれば、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定させるコンピュータ実行可能命令はさらに、プロセッサによって実行されると、コンピュータに、複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが第1の問題に関連しているか否かを決定することと、第1のリモートデバイスおよび第2のリモートデバイスが共に第1の問題に関連していると決定したことに応じて、第1の問題に関連させて、第1のリモートデバイスおよび第2のリモートデバイスを含むリモートデバイスのセットを生成することとを実行させるコンピュータ実行可能命令を含む。
別の一実施形態によれば、コンピュータ実行可能命令はさらに、少なくともプロセッサによって実行されると、コンピュータに、修正動作データ構造を、リモートデバイスのセットの各リモートデバイスへ送信することを実行させる命令を含む。
別の一実施形態によれば、コンピュータ実行可能命令はさらに、少なくともプロセッサによって実行されると、コンピュータに、修正動作データ構造に基づいて、グラフィカルユーザインターフェイスを生成することと、グラフィカルユーザインターフェイスを表示用に提供することとを実行させる命令を含む。
別の一実施形態によれば、コンピュータ実行可能命令はさらに、少なくともプロセッサによって実行されると、コンピュータに、リモートデバイスのセットのための修正動作データ構造を、リモートデバイスのセットの管理エンティティへ送信することを実行させる命令を含む。
別の一実施形態によれば、コンピューティングシステムは、メモリに接続されたプロセッサと、非一時的なコンピュータ可読媒体に格納され、命令を含んで構成された修正モジュールとを備え、命令は、プロセッサによって実行されると、プロセッサに、複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、アプリケーションアクティビティデータを解析して、複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、1つ以上の問題の各々に対して修正動作を決定することと、修正動作に基づいて、リモートデバイスのセットのための修正動作データ構造を生成することとを実行させる。
別の一実施形態によれば、修正動作データ構造はコードを含み、このコードは、リモートデバイスによって受信されて実行されると、1つ以上の問題のうちの少なくとも1つを軽減するようにアプリケーションを変更させる。
別の一実施形態によれば、修正動作データ構造はレポートを含み、このレポートは、(i)リモートデバイスのセットに関連する1つ以上の問題と、(ii)1つ以上の問題に対して決定された修正動作とを特定する。
別の一実施形態によれば、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定させる命令はさらに、プロセッサによって実行されると、プロセッサに、複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが第1の問題に関連しているか否かを決定することと、第1のリモートデバイスおよび第2のリモートデバイスが共に第1の問題に関連していると決定したことに応じて、第1の問題に関連させて、第1のリモートデバイスおよび第2のリモートデバイスを含むリモートデバイスのセットを生成することとを実行させる命令を含む。
別の一実施形態によれば、修正モジュールは、プロセッサによって実行されると、プロセッサに、修正動作データ構造を、リモートデバイスのセットの各リモートデバイスへ送信することを実行させる命令をさらに含んで構成される。
別の一実施形態によれば、修正モジュールは、プロセッサによって実行されると、プロセッサに、修正動作データ構造に基づいて、グラフィカルユーザインターフェイスを生成することと、グラフィカルユーザインターフェイスを表示用に提供することとを実行させる命令をさらに含んで構成される。
別の一実施形態によれば、修正モジュールは、プロセッサによって実行されると、プロセッサに、リモートデバイスのセットのための修正動作データ構造を、リモートデバイスのセットの管理エンティティへ送信することを実行させる命令をさらに含んで構成される。
別の一実施形態によれば、プロセッサを備えるコンピューティングデバイスによって実行されるコンピュータ実施方法は、少なくともプロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信するステップと、少なくともプロセッサが、アプリケーションアクティビティデータを解析して、複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定するステップと、少なくともプロセッサが、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップと、少なくともプロセッサが、1つ以上の問題の各々に対して修正動作を決定するステップと、少なくともプロセッサが、修正動作に基づいて、リモートデバイスのセットのための修正動作データ構造を生成するステップとを含む。
別の一実施形態によれば、修正動作データ構造はコードを含み、このコードは、リモートデバイスによって受信されて実行されると、1つ以上の問題のうちの少なくとも1つを軽減するようにアプリケーションを変更させる。
別の一実施形態によれば、修正動作データ構造はレポートを含み、このレポートは、(i)リモートデバイスのセットに関連する1つ以上の問題と、(ii)1つ以上の問題に対して決定された修正動作とを特定する。
別の一実施形態によれば、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップは、複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定するステップと、複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが第1の問題に関連しているか否かを決定するステップと、第1のリモートデバイスおよび第2のリモートデバイスが共に第1の問題に関連していると決定したことに応じて、第1の問題に関連させて、第1のリモートデバイスおよび第2のリモートデバイスを含むリモートデバイスのセットを生成するステップとを含む。
別の一実施形態によれば、コンピュータ実施方法はさらに、修正動作データ構造をリモートデバイスのセットの各リモートデバイスへ送信するステップを含む。
別の一実施形態によれば、コンピュータ実施方法はさらに、リモートデバイスのセットのための修正動作データ構造をリモートデバイスのセットの管理エンティティへ送信するステップを含む。
上述の概要は、本明細書で述べるシステムおよび/または方法のいくつかの態様の基本的な理解を提供するために、簡略化した概要を提示するものである。上述の概要は、本明細書で述べるシステムおよび/または方法の詳細な概観ではない。上述の概要は、重要な/必須の要素を指定すること、または本明細書で述べるシステムおよび/または方法の範囲を定義することを意図するものではない。その唯一の目的は、後述のより詳細な説明の前段階として、簡略化した形でいくつかの概念を提示することである。
本明細書に組み込まれ、本明細書の一部を成す添付図面は、本開示のさまざまなシステム、方法、および他の実施形態を示す。図示した要素の境界(例えば、ボックス、ボックス群、または他の形状)は、境界の一実施形態を表わすものであるということが理解されるであろう。ある実施形態では、1つの要素を複数の要素として実現してもよいし、複数の要素を1つの要素として実現してもよい。ある実施形態では、別の要素の内部構成要素として示す要素を外部構成要素として実現してもよいし、その逆であってもよい。また、要素は一定の縮尺ではない場合もある。
リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連するシステムの実施形態を示す図である。 リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連する方法の実施形態を示す図である。 アプリケーションアクティビティデータ構造の実施形態を示す図である。 エンティティコンピュータおよびグラフィカルユーザインターフェイスの実施形態を示す図である。 制御命令を含む修正動作インプリメンタ(implementer)の実施形態を示す図である。 表示画面およびグラフィカルユーザインターフェイスの実施形態を示す図である。 非一時的なコンピュータ可読媒体の実施形態を示す図である。 本開示の例示的なシステムおよび/または方法で構成されたコンピューティングシステムの実施形態を示す図である。 リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連するシステムの実施形態を示す図である。
詳細な説明
本明細書では、リモートデバイスのセットに関連する問題に対する修正動作を決定することを提供するコンピュータ制御のシステムおよび方法を説明する。一実施形態では、複数のリモートデバイスの各々が1つ以上のアプリケーションを実行し得る。例えば、第1のリモートデバイスは第1のアプリケーションおよび第2のアプリケーションを実行し、第2のリモートデバイスは(異なるインスタンスの)第1のアプリケーションおよび第2のアプリケーションを実行し得る。
各リモートデバイスの動作は、さまざまな目的/結果を達成しようと試みながらさまざまな動作を実行することを含み得る。多くの場合、最初の動作は目的を達成するには不十分であり、目的が達成されるまで追加の動作を実行する。例えば、第1の目的/結果を達成するために第1のリモートデバイス上で第1のアプリケーションを動作させながら、第1のユーザは第1の一連動作を実行し、または第1の動作を実行した後に第2のアプリケーションに切り替えて第2の動作を実行するかもしれない。同様に、第1の目的/結果を達成するために第2のリモートデバイス上で第1のアプリケーションを動作させながら、第2のユーザは第1の一連動作を実行し、または第1の動作を実行した後に第2のアプリケーションに切り替えて第2の動作を実行するかもしれない。
都合の悪いことに、このようなアプリケーションのユーザは、その目的/結果を達成するにあたって著しい遅延および障害に直面する場合があり、目的を達成することに完全に失敗する場合もある。そのような遅延および失敗によって、アプリケーションへの満足度が低下し、最終的にはアプリケーションの使用が減ってしまうことになり得る。アプリケーションが所望の目的を技術的に遂行することが可能な場合であっても、そのような遅延および失敗が起こり得ることが理解されるであろう。
したがって、アプリケーションの性能を最適化するためには、アプリケーションを動作させているさまざまなリモートデバイス上で実行されている動作を解析して問題を特定するとともに、特定された問題に対処可能な修正動作を特定することが必要な場合がある。そうすることにより、より少ないアクティビティおよびリソースで目的を達成することができ、それによって効率およびリソース(例えば、メモリ、帯域幅、プロセッサ)の可用性を高め、電力使用量を減らすことができる。
図1を参照すると、リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連するコンピュータ制御のシステム100の一実施形態を示している。システム100は、コンピュータ上で実行されるように構成され得るコントローラ105を備える。コントローラ105は、トラッキング要求110がエンティティコンピュータ115から受信されたことに基づいて起動されてもよい。エンティティコンピュータ115は、リモートデバイス上のアプリケーションプラットフォームの1つ以上のアプリケーションのアクティビティをトラッキング/監視することを要求するアプリケーションプラットフォームの管理者のコンピュータなどである。例えば、アプリケーションプラットフォームは、さまざまな顧客/企業によって商業目的で使用されるさまざまな実用性/生産性アプリケーションを提供し得る。このようなアプリケーションとしては、顧客セルフサービスアプリケーション、顧客ケアおよび課金アプリケーション、サービスオーダー管理アプリケーション、スマートグリッドゲートウェイアプリケーション、メータデータ管理アプリケーション、労働および資産管理アプリケーション、稼働装置管理アプリケーション、モバイルワーカー管理アプリケーション、流通管理システムアプリケーション、または停電管理システムアプリケーションなどがある。コントローラ105は、ネットワーク接続を介してトラッキング要求110を受信してもよい。
コントローラ105は、アプリケーションアクティビティデータ取得部120を利用して、リモートデバイス上の1つ以上のアプリケーションを有する一以上のユーザの体験/ストーリーを表わすデータを特定する(トラッキング要求110の)アクティビティ基準125を生成する。アクティビティ基準125は、トラッキング要求110に従ってトラッキングすべき1つ以上のアプリケーション(例えば、顧客ケアおよび課金アプリケーションならびに労働および資産管理アプリケーション)、またはトラッキングすべき1つ以上のアプリケーションを有するユーザのアクティビティ/対話の種類を指定し得る。アクティビティ/対話の種類としては、例えば、クリック、キー操作、動作の実行、グラフィカル表示の変更、またはユーザ要素の選択などがある。
トラッキング要求110の対象となるデータレコードを特定するために、アクティビティ基準125を用いてアプリケーションアクティビティデータ構造130を解析する。アプリケーションアクティビティデータ構造130は、アプリケーションを有するユーザのアクティビティ/対話のデータレコードを含む。例えば、第1のリモートデバイス上の第1のアプリケーションのクリック、動作、および変更、第2のリモートデバイス上の第2のアプリケーションの選択、ならびに第3のリモートデバイス上の第3のアプリケーションの動作を示すデータレコードがアプリケーションアクティビティデータ構造130に集約され、格納されてもよい。
コントローラ105は、アプリケーションアクティビティデータ構造130を用いて、アクティビティ基準125に合致するアプリケーションを有するユーザのアクティビティ/対話を表わすアプリケーションアクティビティデータ135を生成する。例えば、第1のアクティビティ基準(例えば、トラッキング要求110がトラッキングの対象とするアプリケーションの種類)および第2のアクティビティ基準(例えば、トラッキングすべきアクティビティの種類)を用いてアプリケーションアクティビティデータ構造130をサーチしてもよい。ある例では、アプリケーションアクティビティデータ135は、アクティビティ基準125のうちの少なくとも1つを満たすアクティビティ(例えば、第1のアクティビティ基準または第2のアクティビティ基準のうちの少なくとも1つに合致するいずれかのアクティビティ)を表わすものを含み得る。他の例では、アプリケーションアクティビティデータ135は、アクティビティ基準125のうちの2つ以上または全部を満たすアクティビティ(例えば、第1のアクティビティ基準および第2のアクティビティ基準の両方に合致するアクティビティ(第1のアクティビティ基準または第2のアクティビティ基準のうちの1つのみに合致するアクティビティではない))を表わすものを含み得る。
コントローラ105は、アプリケーションアクティビティデータ解析部140を利用してアプリケーションアクティビティデータ135を解析し、複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定する。例えば、第1のリモートデバイスに関連するアプリケーションアクティビティの第1のセットをアプリケーションアクティビティデータ135の中から特定するとともに、第2のリモートデバイスに関連するアプリケーションアクティビティの第2のセットをアプリケーションアクティビティデータ135の中から特定し得る。
アプリケーションアクティビティデータのセットを解析して、リモートデバイスのセットに関連する1つ以上の問題を決定してもよい。ある例では、アプリケーションアクティビティデータの各セットを個別に解析して問題を決定してもよい。例えば、アプリケーションアクティビティの第1のセットの解析を行なって第1のリモートデバイスに関連する第1の問題を決定し、一方でアプリケーションアクティビティの第2のセットの解析を行なって第2のリモートデバイスに関連する第2の問題を決定してもよい。ある例では、アプリケーションアクティビティデータの複数のセットをまとめて解析して問題を決定してもよい。例えば、アプリケーションアクティビティの第1のセットおよびアプリケーションアクティビティの第2のセットの解析を(まとめて)行なって、第1のリモートデバイスおよび第2のリモートデバイスに関連する第3の問題を決定してもよい。
ある例では、リモートデバイスが共通の問題に関連していることに基づいて、それらのリモートデバイスをセットに分類してもよい。例えば、アプリケーションアクティビティの第1のセットを有する第1のリモートデバイスおよびアプリケーションアクティビティの第2のセットを有する第2のリモートデバイスは、これらのリモートデバイス(およびそのアプリケーションアクティビティ)が共に(共通の)第3の問題に直面していると決定したことに応じて、これらのリモートデバイスを、ある例示的なリモートデバイスのセットにまとめてもよい。第3の問題に直面していない他のリモートデバイスは、当該リモートデバイスの例示的なセットには含まれないが、(共通の)第4の問題に関連して生成された他のリモートデバイスのセットに含まれるかもしれない。リモートデバイスの各セットのアプリケーションアクティビティをまとめて解析して、対応するリモートデバイスのセットの1つ以上の問題を決定してもよい。
コントローラ105は、アプリケーションアクティビティデータ解析部140を利用して、1つ以上の問題の各々に対して修正動作を決定する。例えば、第1の問題に対する適切な修正動作としてアプリケーションへの新たな特徴の導入を決定し、第2の問題に対する適切な修正動作としてグラフィカルユーザインターフェイス要素の外観の変更を決定し、第3の問題に対する適切な修正動作としてアプリケーションにおける古い特徴の削除を決定してもよい。
ある例では、修正動作の決定は、特定された各問題がデータベース内の対応の修正動作に合致することに基づいてなされる。ある例では、修正動作の決定は、各問題に対して1つ以上の修正動作を行なった結果得られることが予測される値の比較に基づいてなされる。例えば、第1の修正動作を行なった結果得られることが予測される第1の値を、第2の修正動作を行なった結果得られることが予測される第2の値と比較して、高い方の値に関連する修正動作を選択してもよい。
コントローラ105は、修正動作インプリメンタ150に提供し、それによって修正動作インプリメンタ150を制御する修正命令145を生成する。修正命令145によって、問題に対応する修正動作を修正動作インプリメンタ150に実行させてもよい。修正命令145は、コードを含む修正動作データ構造を含む。このコードは、アプリケーションを実行中の1つ以上のリモートデバイスに送信されると、少なくとも1つの問題を克服または軽減するように当該アプリケーションを変更するものである。例えば、修正命令145は、第1のアプリケーションに新たな特徴を追加するアップグレードの送信、第2のアプリケーションにおいてグラフィカルユーザインターフェイス要素を変更するパッチの送信、または第1のアプリケーションおよび第2のアプリケーションにおいて古い特徴を削除する(もしくは、第1のアプリケーションと第2のアプリケーションとをつなぐ中間アプリケーションを生成する)パッチの送信を行なわせてもよい。
修正動作のためのコードを、当該修正動作に対応する問題に関連する対応のリモートデバイスのセットに送信してもよい。例えば、新たな特徴を追加するアップグレードをリモートデバイスの第1のセットに送信してもよいし、グラフィカルユーザインターフェイス要素を変更したパッチをリモートデバイスの第2のセットに送信してもよいし、古い特徴を削除するパスをリモートデバイスの第3のセットに送信してもよい。この例では、第1のアプリケーションおよび第2のアプリケーションを実行するリモートデバイスを含むリモートデバイスの第3のセットは、第1のアプリケーションを実行するリモートデバイスの第1のセットのうちの少なくとも一部のリモートデバイスと、第2のアプリケーションを実行するリモートデバイスの第2のセットのうちの少なくとも一部のリモートデバイスとを含み得る。
ある例では、対応する問題に直面していると決定されたリモートデバイスの管理エンティティに、修正命令145を送信する。管理エンティティは、アプリケーションの制作者またはサービスプロバイダなど、複数のリモートデバイス上のアプリケーションを提供または運用するサービスを含み得る。管理エンティティは、修正命令145を解析し、その解析に基づいて、問題に対処するためのコードを生成することができる。例えば、生成されるコードは、管理エンティティがリモートデバイスに送信し得るアプリケーション用のパッチまたはアップグレードに対応するものであってもよいし、1つ以上のアプリケーションに使用されるフレームワークのためのパス、アップグレードまたは処置に対応するものであってもよい。
ある例では、修正命令145は、レポートを含む修正動作データ構造を含む。レポートは、リモートデバイスのセットに関連して特定された問題を特定するとともに、当該問題に対処するものとして決定された修正動作を特定する。例えば、修正命令145によって、修正動作インプリメンタ150は、問題に関連するアプリケーションアクティビティのセットのグラフィカル表示を変更し、それによって、当該問題に関連するアプリケーションアクティビティのセットのグラフィカル表示を(問題に関連していない)他のアプリケーションアクティビティのグラフィカル表示と視覚的に区別するようにしてもよい。修正動作インプリメンタ150の制御によって、さまざまなメニューやディスプレイのサーチおよび検索にかかる時間が削減または排除され、トラッキング要求110をより早く特定することができる。それにより、コンピュータ表示の速度および使い勝手が向上する。
図9は、リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連するシステム900の一実施形態を示す図である。システム100はこの中で動作する。クライアント905は、トラッキング要求110に従ってトラッキングされるリモートデバイスである。クライアント905のアプリケーションアクティビティデータは、ネットワーク接続を介してウェブサービス910に送信される。ウェブサービス910は、クラウドネイティブ解析サービスを実行するように構成され得る。クラウドネイティブ解析サービスは、ウェブアクティビティ、モバイルアクティビティ、およびイベントアクティビティに関連するデータを収集および処理するものであり得る。
ウェブサービス910は、受信ボックス920、処理データ構造925、送信ボックス925、またはアーカイブ930などのさまざまなデータ構造を通じてアクティビティデータを処理する。ウェブサービス910のプログラム935は、受信ボックス920内または処理データ構造925内のアクティビティデータを用いて、MapReduceなどのプログラミングモデルのデータセットを生成してもよい。Extract/Transform/Load(ETL)処理は、データセットを引き出し、そのデータのうちの少なくとも一部を送信ボックス925に格納する。ある実施形態では、ETL処理はアセットデータ構造940からもデータを引き出し、そのデータのうちの少なくとも一部を送信ボックス925に格納する。プログラム935は、定められたルールに基づいて、アクティビティデータの一部を処理データ構造925からアーカイブ930に移す。アクティビティデータの各部分は、その部分が対応するアプリケーションに基づいてソートされ、ソートの後、送信ボックス925に格納される。
データセンター915は、ソートされたアクティビティデータを、ネットワーク接続を介してウェブサービス910の送信ボックス925から取得する。データセンター915のプログラム945は、ソートされたアクティビティデータをデータセンター915のデータウェアハウス950に格納する。ある実施形態では、プログラム945は、ソートされたアクティビティデータをデータウェアハウス950に格納する前に変更またはフォーマットする。
ある実施形態では、エンティティコンピュータ115およびコントローラ105は、両方ともデータセンター915の構成要素である。他の実施形態では、エンティティコンピュータ115はデータセンター915の構成要素であるが、コントローラ105はウェブサービス910の構成要素である。ある実施形態では、データセンター915のデータウェアハウス950は、アプリケーションアクティビティデータ構造130を含む。
図2は、リモートデバイスのセットに関連する問題に対する修正動作を決定することに関連する、コンピュータ実施方法200の一実施形態を示す図である。一実施形態では、方法200は、コントローラ105がコンピュータ805(図8に示す)のさまざまなコンピューティングリソースを利用することによって実行される。コンピューティングリソースの例としては、命令を実行するためのプロセッサ810、その内部で制御命令が生成されるデータ構造を格納するためのメモリ815および/またはディスク830、および/または、データ構造をネットワークを介してリモートコンピュータに送信するためのネットワークハードウェアなどがある。方法200は、エンティティコンピュータ115からのトラッキング要求110の受信など、さまざまなトリガーに基づいて開始され得る。ある例では、サーバ(コントローラ105のホストとして働く)がエンティティコンピュータ115からトラッキング要求110を受信する。
図4は、トラッキング要求110の生成に使用され得るエンティティコンピュータ115上のグラフィカルユーザインターフェイス405の一実施形態を示す図である。グラフィカルユーザインターフェイス405は、トラッキング要求110の一般的な情報(例えば、名前または時間範囲)を選択するユーザ入力を受け付けるように構成された第1のグラフィカルオブジェクト410、トラッキング要求110が関係するアプリケーション基準(コールセンター管理アプリケーション)を選択するユーザ入力を受け付けるように構成された第2のグラフィカルオブジェクト415、および、トラッキング要求110のリモートデバイス基準(米国のすべてのリモートデバイス)を選択するユーザ入力を受け付けるように構成された第3のグラフィカルオブジェクト420を表示するように制御される。リモートデバイス基準は地理的位置、物理的距離、共通のネットワーク、または共通の企業に対応し得ることが理解されるであろう。
グラフィカルユーザインターフェイス405は、第1のグラフィカルオブジェクト410、第2のグラフィカルオブジェクト415、および第3のグラフィカルオブジェクト420について受け付けたユーザ入力に基づいて、さらに第4のグラフィカルオブジェクト425を表示するように制御される。第4のグラフィカルオブジェクト425は、第5のグラフィカルオブジェクト430および第6のグラフィカルオブジェクト435を表示するように構成されている。第5のグラフィカルオブジェクト430は、トラッキング要求110に適用可能な1つ以上のアプリケーション(またはアプリケーションの組合せ)を表示するように構成されている。ある例では、第5のグラフィカルオブジェクト430は、複数のアプリケーション(またはアプリケーションの組合せ)の中から少なくとも1つのアプリケーション(またはアプリケーションの組合せ)を選択するユーザ入力を受け付けるように構成されている。
第6のグラフィカルオブジェクト435は、トラッキング要求110に適用可能な1つ以上のリモートデバイス(またはそのカテゴリー)を表示するように構成されている。ある例では、第6のグラフィカルオブジェクト435は、複数のリモートデバイス(またはそのカテゴリー)の中から少なくとも1つのリモートデバイス(またはそのカテゴリー)を選択するユーザ入力を受け付けるように構成されている。
図2に戻って、205では、複数のリモートデバイスからアプリケーションアクティビティデータ135を受信する。ある例では、サーバがアプリケーションアクティビティデータ135を受信する。命令(例えば、JavaScript(登録商標)命令)をリモートデバイス上のアプリケーション(例えば、クライアントブラウザ)に投入し、その命令を用いて、各リモートデバイスからアプリケーションアクティビティデータ135を収集してもよい。ある例では、データ処理パイプライン(例えば、Extract/Transform/Load(ETL)パイプライン)を用いてアクティビティデータをキュレートしてもよい。ある例では、アプリケーションアクティビティデータ135をアプリケーションアクティビティデータ構造130内に集約して、それらのアプリケーションアクティビティデータ135をアプリケーションアクティビティデータ構造130からコントローラ105へ送信する。さまざまなリモートデバイスおよびアプリケーションから受信されたアプリケーションアクティビティデータ135は、共通のフォーマットを有する場合もあるし、あるいは異なるフォーマットを有し、アプリケーションアクティビティデータ構造130に格納される前に共通のフォーマットに変換される場合もある。
アプリケーションアクティビティデータ構造130の一実施形態を図3に示す。この実施形態は、複数のアプリケーション305のデータレコードと、複数のアクティビティ310と、それぞれのアクティビティが実行されたデバイス315と、複数のアクティビティ310のうちの1つ以上が実行された時間を示すタイムスタンプ320とを含む。
ある例では、トラッキングされてアプリケーションアクティビティデータ構造130に格納され得るアクティビティは、次のものを含み得る。すなわち、各ユーティリティに関連するユーザの数、(例えば、アプリケーションの使用における)ユーザの熟練レベル、サービスへのログインの頻度、リモートデバイス上で各セッションにウェブサイトまたはアプリケーションに費やす時間の長さ、リモートデバイス上で使用する1つ以上のモジュールの役割、リモートデバイス上で選択した特徴(例えば、ダッシュボード、エクスポート特徴、または探索(explore)特徴)にアクセスする頻度、リモートデバイス上でどのタブにアクセスする時間が最も長いか、リモートデバイスで選択した特徴(フィルタ、データセット、計算、またはシナリオ)に費やす時間の長さ、リモートデバイス上で関係するポイントの情報(兄弟情報または親情報)をチェックする頻度、どのフィルタをリモートデバイス上で最もよく使用するか、各フィルタの種類(単純、詳細、またはアルゴリズム)の使用割合はどのくらいか、どのパネルをリモートデバイス上で使用するか、どのドロップダウンをリモートデバイス上で使用するか、どのくらいの頻度でリモートデバイス上でリストビューにアクセスするか、どのくらいの頻度でパネルをリモートデバイスからエクスポートするか、エクスポートされるパネルはリストビューとグラフビューのいずれであるか、リモートデバイスがデフォルト設定(個々のポイント、ポップアップ、または近隣のポイントの識別子)に加えてマップ上に表示する情報、最もよくエクスポートする情報の種類、どのくらいの頻度でデータをエクスポートせずにリモートデバイス上で閲覧するか、データをエクスポートするために使用するフォーマット、どのドリルダウンパネルをリモートデバイス上で最もよく使用するか、異なる情報を閲覧するためにサマリビューのどのパネルをリモートデバイス上で変更するか、どの情報をリモートデバイス上で選択するか、または、どのくらいの頻度でリモートデバイス上でリンクを使用するか、などである。
図2に戻って、210では、アプリケーションアクティビティデータ135を解析して、複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定する。共通のウェブブラウザ、IPアドレス、クラウドプロバイダ、または顧客アカウントに関連するアプリケーションアクティビティを集約することによって、アプリケーションアクティビティの各セットを決定してもよい。アプリケーションアクティビティデータ135をスキャンしてボットまたはスクレイパーに関連するパターンを特定し、特定されたパターンに関連するアクティビティデータを削除してもよい。これにより、データにおけるノイズが除去され、解析の精度が高まる。ある例では、複数のリモートデバイスが共通の特性を有している(例えば、同じアプリケーションまたは同じアプリケーションの組合せを実行している)と決定されたことに基づいて、複数のリモートデバイスのアプリケーションアクティビティを集約してアプリケーションアクティビティの単一セットとすることもできる。ある例では、アプリケーションアクティビティのセットは、リモートデバイス上の1つ以上のアプリケーションを有する一以上のユーザの体験/ストーリーを表わすものであり、ネットワーク通信を介して取得される。
215では、アプリケーションアクティビティのセットを解析して、複数のリモートデバイスのうちのあるリモートデバイスのセットに関連する1つ以上の問題を決定する。ある例では、第1の問題(または問題のセット)は、第1のアプリケーションによって第1のユーザデバイス上で実行された1つ以上のアクティビティの第1の組合せに基づいて決定してもよい。例えば、デバイス(3)がコールセンター管理アプリケーションにおけるアカウントツリーを表示させ、このコールセンター管理アプリケーションにおけるアカウントツリーの枝を開いたことを示す図3のデータレコードに基づいて、デバイス(3)のユーザが第1の問題に直面すること、および/または第1の目的/結果の遂行を試みることが起こりそうであると決定してもよい。
ある例では、第2の問題(または問題のセット)は、 第1のユーザデバイス上の第1のアプリケーション上および第2のアプリケーション上で実行された1つ以上のアクティビティの第2の組合せに基づいて決定してもよい。例えば、デバイス(3)がコールセンター管理アプリケーションにおけるアカウントツリーを表示させ、このコールセンター管理アプリケーションにおけるアカウントツリーの枝を開き、顧客課金アプリケーションにおける顧客プロフィールを閲覧したことを示す図3のデータレコードに基づいて、デバイス(3)のユーザが第2の問題に直面すること、および/または第2の目的/結果の遂行を試みることが起こりそうであると決定してもよい。
ある例では、アプリケーションアクティビティのセットを解析して、1つ以上の問題がリモートデバイスのセットに関連している確率を決定する。閾値を超えた確率に関連する1つ以上の問題を選択してもよいし、それぞれの確率に基づいて問題をランク付けし、最も上位にランク付けされた問題のうちの1つ以上を選択してもよい。
ある例では、ある問題を示すアプリケーションアクティビティが閾値の数のリモートデバイスで特定されたと決定したことに応じて、その問題がリモートデバイス(またはリモートデバイスのセット)に関連していると決定する。例えば、第1の問題に対応するアクティビティ(または類似のアクティビティ)が少なくとも5つのリモートデバイスで実行されたと決定したことに応じて、第1の問題が第1のリモートデバイス(またはリモートデバイスの第1のセット)に関連していると決定してもよい。
リモートデバイスの数の閾値は、あらゆる問題に適用してもよいし、問題の種類に基づいて変化させてもよい(動的に決定してもよい)。例えば、グラフィカルユーザインターフェイス欠陥の疑いに対応する問題の閾値は、特徴欠落の疑いに対応する問題よりも低くしてもよい。
ある例では、各問題についてのリモートデバイスの数の閾値は、その問題に関連する修正動作の種類に基づいて変化させてもよい(動的に決定してもよい)。例えば、パッチをインストールすればよいだけの修正動作に関連する問題の閾値は、完全なアップグレードまたは再インストールを要する問題よりも低くしてもよい。別の例では、リモートデバイスの数の閾値は、問題の修正動作の結果として変更、追加、または削除されることが見込まれるコードの量に基づいて、問題ごとに動的に決定してもよい。
図2に戻って、220では、1つ以上の問題の各々に対して修正動作を決定する。修正動作は、例えばパッチまたはアップグレードなど、コードの変更を含んでもよい。ある例では、修正動作は、問題および対応するアクティビティを示すレポートを生成することを含んでもよい。レポートは、定義/要求された対象層に適合するリモートデバイスのセットに固有のものであってもよいし、共通の/類似の動作を実行した複数のユーザ、または同じアクティビティに基づく特性を共有する複数のユーザに固有のものであってもよい。ある例では、修正動作は、問題、およびその問題を回避するためにリモートデバイスに対して(例えばユーザが)取り得る措置を説明する修正ガイダンス/フィードバックの生成を含んでもよい。
225では、修正動作に基づいて、リモートデバイスのセットのための修正動作データ構造を生成する。ある例では、修正動作を解析して、修正動作の各々が対応の問題に対処できる確率を決定する。閾値を超えた確率に関連する1つ以上の修正動作を修正動作データ構造に含めるものとして選択してもよいし、それぞれの確率に基づいて修正動作をランク付けし、最も上位にランク付けされた修正動作のうちの1つ以上を選択してもよい。例えば、第1の問題について3つの修正動作を決定した場合、3つのうちで第1の問題に最も対処できそうである、および/または所望の目的/結果を最も達成しそうであると決定された修正動作を選択し、その他の修正動作を破棄してもよい。
このように、修正動作データ構造が含み得るコードは、1つ以上のリモートデバイスに送信され、実行されると、当該リモートデバイスに、問題を克服するように既存のアプリケーションコードを変更させる。ある例では、コードは、サーバまたはリモートデバイスのアプリケーションのマネージャに送信され得る。サーバまたはリモートデバイスのアプリケーションのマネージャは、コードを各リモートデバイスに再び送信してもよく(または、リモートデバイスごとにコードをカスタマイズし、カスタマイズしたコードを各リモートデバイスに送信してもよく)、または、サーバにおいてフレームワークコードを変更してもよい。
ある例では、修正動作データ構造は、サーバまたはアプリケーションのマネージャに送信されるレポートを含んでもよいし、または、対応する問題を克服するために各リモートデバイス上で実行すべき動作を(段階的な命令で)説明し得る修正ガイダンスを含んでもよい。レポートは、1つ以上の製品にまたがるアクティビティの行程をリモートデバイスによって個々のレベルで示してもよいし、複数の行程を総合レベルで示してもよい。
修正動作データ構造を用いて修正命令145を生成することが可能である。修正命令145の一実施形態を図5に示す。この実施形態は、第1のコードをデバイス(3)に送信させる第1の命令510と、第2のレポートをデバイス(2)に関連する管理デバイスに送信させる第2の命令515と、修正ガイダンス/フィードバックをデバイス(1)に送信させる第3の命令520とを含む。修正ガイダンス/フィードバックは、生成されてデバイス(1)の表示画面600に表示されてもよい。
表示画面600の制御の一実施形態を図6に示す。表示画面600は、ガイダンスグラフィカルユーザインターフェイス605を表示する。ガイダンスグラフィカルユーザインターフェイス605は、検出されて修正ガイダンス/フィードバックの生成に用いられたデバイス(1)上でのアクティビティをグラフィカルに表わすグラフィカルオブジェクト610を含む。ガイダンスグラフィカルユーザインターフェイス605はさらに、デバイス(1)のアクティビティに基づいて追求/試行が決定された目的/結果をグラフィカルに表わすグラフィカルオブジェクト615を含む。ガイダンスグラフィカルユーザインターフェイス605はさらに、デバイス(1)が目的/結果に到達することを阻害していると考えられる問題をグラフィカルに表わすグラフィカルオブジェクト620を含む。ガイダンスグラフィカルユーザインターフェイス605はさらに、問題を克服して目的/結果に到達するためにデバイス(1)上で取り得る対策などのガイダンス/フィードバックをグラフィカルに表わすグラフィカルオブジェクト625を含む。表示画面600の制御によって、目的615に関連するグラフィカルオブジェクトをより早く特定することができる。それにより、コンピュータ表示の速度および使い勝手が向上する。
ある例では、問題を決定するにあたって、アプリケーションアクティビティを解析しない場合もある。アプリケーションアクティビティを解析して、さまざまなリモートデバイスにまたがる共通のアクティビティを決定し、各アクティビティを実行したリモートデバイスの数または割合、および、リモートデバイスの対象層の、または技術上の識別子を特定するレポートを生成してもよい。
ある例では、修正動作データ構造の生成は、リモートデバイスがアプリケーションをどのように使用しているかをエンティティ(例えば、ユーティリティエンティティ)が理解するための助けとなり得る。このような生成はさらに、データ駆動型の製品開発を支援し得る。例えば、エンティティは、修正動作データ構造に基づいて、実際の使用パターンに基づいてバグ処置および特徴に優先順位を付けてもよいし、何れのアプリケーション(およびアプリケーションの何れのバージョン)に継続的なサポートを保証するかを決定してもよいし、新たな特徴をクライアントが実際に使用しているか否かを決定してもよい。アプリケーションのセットが顧客基盤との関わりにどのように影響しているかを示す解析をエンティティに提供することによって、アプリケーションのセットに基づく顧客満足および契約数の向上に関する測定基準および実行可能な洞察を提供することができる。
図7は、例示的な非一時的なコンピュータ可読媒体705を含むシナリオ700を示す。一実施形態では、本明細書に記載の構成要素のうちの1つ以上が、非一時的なコンピュータ可読媒体705に格納されたプログラムモジュール(例えば、コントローラ105)として構成されている。プログラムモジュールは、格納された命令(例えば、プロセッサ実行可能命令710)を含んで構成されている。この格納された命令は、少なくともプロセッサ(例えば、プロセッサ715)によって実行されると、コンピューティングデバイスに本明細書に記載の対応する機能を実行させる。例えば、非一時的なコンピュータ可読媒体705に格納されたコントローラ105の機能は、図2の方法200の実施形態740を実施するためのプロセッサ実行可能命令710として、プロセッサ715によって実行されてもよい。
非一時的な機械可読媒体705は、プロセッサ実行可能命令710を含む。プロセッサ実行可能命令710は、プロセッサ715によって実行されると、本明細書の提示内容のうちの少なくとも一部を実行させる。非一時的な機械可読媒体705は、メモリ半導体(例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、および/または同期型ダイナミックランダムアクセスメモリ(SDRAM)の技術を利用する半導体)、ハードディスクドライブのプラッタ、フラッシュメモリデバイス、または磁気もしくは光学ディスク(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、またはフロッピー(登録商標)ディスク)を含む。例示的な非一時的な機械可読媒体705は、コンピュータ可読データ720を格納する。コンピュータ可読データ720は、デバイス735の読取機730(例えば、ハードディスクドライブの読取ヘッド、またはソリッドステートストレージデバイス上で呼び出された読取動作)による読取725が行なわれると、プロセッサ実行可能命令710を発する。ある実施形態では、プロセッサ実行可能命令710は、実行されると、例えば、図2の例示的な方法200のうちの少なくとも一部などの動作を実行させる。ある実施形態では、プロセッサ実行可能命令710は、例えば、図1の例示的なシステム100のうちの少なくとも一部などのシステムを実現するように構成されている。
図8は、本明細書に記載の例示的なシステムおよび方法の1つ以上、ならびに/または均等物を用いて構成されているおよび/またはプログラムされている例示的なコンピューティングデバイスのシナリオ800を示す。例示的なコンピューティングデバイスは、バス825によって動作可能に接続されたプロセッサ810、メモリ815、および入出力ポート820を含むコンピュータ805であり得る。一例では、コンピュータ805は、図1および図2に示すシステム100および/または方法200を容易にするように構成されたコントローラ105のロジックを含み得る。他の例では、コントローラ105のロジックは、ハードウェア、命令が格納された非一時的なコンピュータ可読媒体705、ファームウェア、および/またはそれらの組合せで実現され得る。コントローラ105のロジックはバス825に取付けられたハードウェア構成要素として示されているが、他の実施形態では、コントローラ105のロジックは、プロセッサ810に実装されてもよいし、メモリ815に格納されてもよいし、またはディスク830に格納されてもよいことが理解されるべきである。
一実施形態では、コントローラ105のロジックまたはコンピュータ805は、説明した動作を実行するための手段(例えば、構造:ハードウェア、非一時的なコンピュータ可読媒体、ファームウェア)である。ある実施形態では、コンピューティングデバイスは、クラウドコンピューティングシステムにおいて動作するサーバ、SaaS(Software as a Service)アーキテクチャで構成されたサーバ、スマートフォン、ラップトップ、タブレットコンピューティングデバイスなどであり得る。
当該手段は、例えば、ルールに基づくソースの割当て順位付けを行なうようにプログラムされた特定用途向け集積回路(ASIC)として実現され得る。また、当該手段は、メモリ815に一時的に記憶された後にプロセッサ810によって実行されるデータ845としてコンピュータ805に与えられる、格納されたコンピュータ実行可能命令として実現され得る。
また、コントローラ105のロジックは、ルールに基づくソースの割当て順位付けを行なうための手段(例えば、ハードウェア、実行可能命令を格納している非一時的なコンピュータ可読媒体705、ファームウェア)を提供し得る。
コンピュータ805の例示的な構成を大まかに説明すると、プロセッサ810は、デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャを含むさまざまなプロセッサであり得る。メモリ815は揮発性メモリおよび/または不揮発性メモリを含み得る。不揮発性メモリは、例えば、読出専用メモリ(ROM)、プログラマブル読出専用メモリ(PROM)などを含み得る。揮発性メモリは、例えば、ランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)などを含み得る。
ディスク830は、例えば、入出力(I/O)インターフェイス(例えばカード、デバイス)835および入出力ポート820を介してコンピュータ805に動作可能に接続され得る。ディスク830は、例えば、磁気ディスクドライブ、ソリッドステートディスクドライブ、フロッピー(登録商標)ディスクドライブ、テープドライブ、Zipドライブ、フラッシュメモリカード、メモリスティックなどであり得る。さらに、ディスク830は、CD-ROMドライブ、CD-Rドライブ、CD-RWドライブ、DVD ROMなどであり得る。メモリ815は、例えばプロセス840および/またはデータ845を格納可能である。ディスク830および/またはメモリ815は、コンピュータ805のリソースを制御して割当てるオペレーティングシステムを格納可能である。
コンピュータ805は、I/Oインターフェイス835および入出力ポート820を介して入出力(I/O)デバイスと対話し得る。入出力デバイスは、例えば、キーボード、マイク、ポインティングおよび選択デバイス、カメラ、ビデオカード、ディスプレイ、ディスク830、ネットワークデバイス850などであり得る。入出力ポート820は、例えば、シリアルポート、パラレルポート、およびUSBポートを含み得る。I/Oコントローラ855がI/Oインターフェイス835をバス825に接続してもよい。
コンピュータ805はネットワーク環境で動作可能であり、したがってI/Oインターフェイス835および/またはI/Oポート820を介してネットワークデバイス850に接続され得る。ネットワークデバイス850を介して、コンピュータ805はネットワークと対話し得る。ネットワークを介して、コンピュータ805はリモートコンピュータに論理的に接続され得る。コンピュータ805が対話し得るネットワークは、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)および他のネットワークを含むが、これらに限定されない。
別の実施形態では、上記方法および/またはこれらの方法の均等物は、コンピュータ実行可能命令で実現してもよい。ゆえに、一実施形態では、非一時的なコンピュータ可読媒体/記憶媒体は、アルゴリズム/実行可能アプリケーションのコンピュータ実行可能命令が格納されて構成されている。このアルゴリズム/実行可能アプリケーションは、マシンによって実行されると、上記方法をこのマシン(および/または関連する構成要素)に実行させる。例示的なマシンは、プロセッサ、コンピュータ、クラウドコンピューティングシステムにおいて動作するサーバ、SaaS(Software as a Service)アーキテクチャで構成されたサーバ、スマートフォンなどを含むが、これらに限定されない。一実施形態では、コンピューティングデバイスは、開示の方法のうちのいずれかを実行するように構成された1つ以上の実行可能アルゴリズムで実現される。
1つ以上の実施形態では、開示の方法またはそれらの方法の均等物は、その方法を実行するように構成されたコンピュータハードウェアによって、または非一時的なコンピュータ可読媒体に格納されたモジュールに具現化されたコンピュータ命令によって、実行される。この命令は、コンピューティングデバイスの少なくともプロセッサによって実行されると方法を行なうように構成された実行可能アルゴリズムとして構成される。
説明を簡潔にするために、図面に示されている方法論はアルゴリズムの一連のブロックとして図示され説明されているが、方法論はブロックの順序に限定されないことが理解されるべきである。いくつかのブロックは、図示され説明されたものと異なる順序で、および/または他のブロックと同時に起こり得る。また、例示的な方法論を実現するために、図示されたすべてのブロックよりも少ないブロックを使用する場合もある。ブロックは組合せてもよく、または複数の動作/構成要素に分離してもよい。さらに、追加のおよび/または代替の方法論では、ブロックに示されていない追加の動作を用いてもよい。
以下に、本明細書で使用される選択された用語の定義を記載する。定義は、用語の範囲に含まれ実現のために使用し得る構成要素のさまざまな例および/または形態を含む。例は、限定を意図したものではない。定義は用語の単数形も複数形も含み得る。
「一実施形態」、「実施形態」、「一例」、「例」等と述べる場合、そのように説明された実施形態または例が、特定の特徴、構造、特性、性質、要素、または限定を含み得るものの、すべての実施形態または例が必ずしもその特定の特徴、構造、特性、性質、要素、または限定を含むとは限らないことを示す。さらに、「一実施形態では」という表現を繰返して使用する場合、これは必ずしも同じ実施形態を指すとは限らないが、同じ実施形態を指す場合もある。
本明細書で使用される「データ構造」は、メモリ、ストレージデバイス、またはその他のコンピュータ制御のシステムに格納された、コンピューティングシステム内のデータの組織である。データ構造は、例えば、データフィールド、データファイル、データアレイ、データレコード、データベース、データテーブル、グラフ、ツリー、リンクされたリスト等のうちのいずれか1つであればよい。データ構造は、他の多数のデータ構造から形成されこれらデータ構造を含み得る(例えば、データベースは多数のデータレコードを含む)。他の実施形態に従うと、データ構造の他の例も同じく可能である。
本明細書で使用される「コンピュータ可読媒体」または「コンピュータ記憶媒体」は、実行されたときに、開示の機能のうちの1つ以上を実行するように構成された命令および/またはデータを格納する非一時的な媒体を指す。ある実施形態では、データが命令として機能する場合もある。コンピュータ可読媒体は、不揮発性媒体および揮発性媒体などの形態を取り得るが、これらに限定されない。不揮発性媒体は、例えば、光ディスク、磁気ディスク等を含み得る。揮発性媒体は、例えば、半導体メモリ、ダイナミックメモリ等を含み得る。コンピュータ可読媒体の一般的な形態は、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス、コンパクトディスク(CD)、他の光学媒体、ランダムアクセスメモリ(RAM)、読出専用メモリ(ROM)、メモリチップまたはカード、メモリスティック、ソリッドステートストレージデバイス(SSD)、フラッシュドライブ、および、その他の、コンピュータ、プロセッサまたは他の電子デバイスが機能することが可能な媒体を含み得るが、これらに限定されない。各種媒体は、一実施形態で選択されて実装された場合、開示および/または請求項に係る機能のうちの1つ以上を実行するように構成された、格納されたアルゴリズムの命令を含み得る。
本明細書で使用される「ロジック」は、コンピュータ、または電気的ハードウェア、実行可能アプリケーションもしくはプログラムモジュールの命令が格納された非一時的な媒体、および/またはこれらの組合せによって実現されて、本明細書に開示の機能または動作のうちのいずれかを実行する、および/または、本明細書に開示の別のロジック、方法、および/またはシステムの機能または動作を実行させる、構成要素を表わす。同等のロジックは、ファームウェア、アルゴリズムでプログラムされたマイクロプロセッサ、個別ロジック(例えば、ASIC)、少なくとも1つの回路、アナログ回路、デジタル回路、プログラムドロジックデバイス、アルゴリズムの命令を含むメモリデバイス等を含み得る。これらはいずれも開示の機能のうちの1つ以上を実行するように構成されていてもよい。一実施形態では、ロジックは、1つ以上のゲート、ゲートの組合せ、または開示の機能のうちの1つ以上を実行するように構成された他の回路部品を含み得る。複数のロジックが記載されている場合、これらの複数のロジックを1つのロジックに統合することも可能である。同様に、単一のロジックが記載されている場合、この単一のロジックを複数のロジックに分散させることも可能である。一実施形態では、これらロジックのうちの1つ以上は、開示および/または請求項に係る機能の実行に関係する、対応する構造である。どのタイプのロジックを実装するかという選択は、所望のシステム条件または仕様に基づいてもよい。例えば、速度の向上を重要視する場合には、ハードウェアを選択することによって機能を実現することが考えられる。コスト削減を重要視する場合には、格納された命令/実行可能アプリケーションを選択することによって機能を実現することが考えられる。
「動作可能な接続」、またはエンティティが「動作可能に接続される」接続とは、信号、物理的情報、および/または論理的情報が送信および/または受信され得る接続である。動作可能な接続は、物理インターフェイス、電気インターフェイス、および/またはデータインターフェイスを含み得る。動作可能な接続は、動作可能な制御を十分に行なうことのできるインターフェイスおよび/または接続のさまざまな組合せを含んでいてもよい。例えば、2つのエンティティが、互いに直接信号を通信するように、または1つ以上の中間エンティティ(例えば、プロセッサ、オペレーティングシステム、ロジック、非一時的なコンピュータ可読媒体)を介して信号を通信するように、動作可能に接続され得る。動作可能な接続を作り出すために、論理的および/または物理的通信チャネルを使用してもよい。
本明細書で使用される「ユーザ」は、1人以上の人間、1台以上のコンピュータもしくはその他のデバイス、またはこれらの組合せを含むが、これらに限定されない。
開示の実施形態をかなり詳細に図示および説明したが、以下の請求項の範囲をこのような詳細事項に限定すること、または何らかの方法で制限することは意図していない。主題のさまざまな局面を説明するために、考えられるすべての構成要素または方法論の組合せを説明することは、当然不可能である。したがって、本開示は、具体的な詳細事項にも、図示および説明した例示のための実例にも限定されない。ゆえに、本開示は、以下の請求項の範囲内にある変更、修正、および変形を包含することが意図されている。
「含む(includeまたはincluding)」という用語は、詳細な説明または請求項において使用されている限り、請求項の移行句として用いられるときの「含む(comprising)」の解釈と同様に包括的な用語であることが意図されている。
「または」という用語は、詳細な説明または請求項において使用されている限り(例えば、AまたはB)、「AまたはB、またはAとBの両方」を意味することが意図されている。出願人が「AとBの両方ではなく、AのみまたはBのみ」を示すことを意図する場合は、「AとBの両方ではなく、AのみまたはBのみ」という表現を使用する。このように、本明細書における「または」という用語の用法は、包括的用法であって排他的用法ではない。

Claims (11)

  1. コンピュータ実行可能命令を格納したコンピュータ可読プログラムであって、前記コンピュータ実行可能命令は、コンピュータの少なくともプロセッサによって実行されると、前記コンピュータに、
    少なくとも前記プロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、
    少なくとも前記プロセッサが、前記1つ以上の問題の各々に対して修正動作を決定することと、
    少なくとも前記プロセッサが、前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成することとを実行させ、
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記第1の問題に関連させて、前記第1のリモートデバイスおよび前記第2のリモートデバイスを含む前記リモートデバイスのセットを生成することとを含む、コンピュータ可読プログラム。
  2. コンピュータ実行可能命令を格納したコンピュータ可読プログラムであって、前記コンピュータ実行可能命令は、コンピュータの少なくともプロセッサによって実行されると、前記コンピュータに、
    少なくとも前記プロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、
    少なくとも前記プロセッサが、前記1つ以上の問題の各々に対して修正動作を決定することと、
    少なくとも前記プロセッサが、前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成することとを実行させ、
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記修正動作データ構造を前記第1のリモートデバイスおよび前記第2のリモートデバイスに送信して、前記第1の問題を軽減するために前記修正動作を前記第1のリモートデバイスおよび前記第2のリモートデバイス内で実施させることとを含む、コンピュータ可読プログラム。
  3. 少なくとも前記プロセッサによって実行されると、前記コンピュータに、
    前記修正動作データ構造を、前記リモートデバイスのセットの各リモートデバイスへ送信することを実行させる命令をさらに含む、請求項1に記載のコンピュータ可読プログラム。
  4. 少なくとも前記プロセッサによって実行されると、前記コンピュータに、
    前記修正動作データ構造に基づいて、グラフィカルユーザインターフェイスを生成することと、
    前記グラフィカルユーザインターフェイスを表示用に提供することとを実行させる命令をさらに含む、請求項1~3のいずれか1項に記載のコンピュータ可読プログラム。
  5. 少なくとも前記プロセッサによって実行されると、前記コンピュータに、
    前記リモートデバイスのセットのための前記修正動作データ構造を、前記リモートデバイスのセットの管理エンティティへ送信することを実行させる命令をさらに含む、請求項1~4のいずれか1項に記載のコンピュータ可読プログラム。
  6. コンピューティングシステムであって、
    メモリに接続されたプロセッサと、
    コンピュータ可読媒体に格納され、命令を含んで構成された修正モジュールとを備え、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
    複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、
    前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、
    前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、
    前記1つ以上の問題の各々に対して修正動作を決定することと、
    前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成することとを実行させ、
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記第1の問題に関連させて、前記第1のリモートデバイスおよび前記第2のリモートデバイスを含む前記リモートデバイスのセットを生成することとを含む、コンピューティングシステム。
  7. コンピューティングシステムであって、
    メモリに接続されたプロセッサと、
    コンピュータ可読媒体に格納され、命令を含んで構成された修正モジュールとを備え、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
    複数のリモートデバイスからアプリケーションアクティビティデータを受信することと、
    前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定することと、
    前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することと、
    前記1つ以上の問題の各々に対して修正動作を決定することと、
    前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成することとを実行させ、
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定することは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記修正動作データ構造を前記第1のリモートデバイスおよび前記第2のリモートデバイスに送信して、前記第1の問題を軽減するために前記修正動作を前記第1のリモートデバイスおよび前記第2のリモートデバイス内で実施させることとを含む、コンピューティングシステム。
  8. プロセッサを備えるコンピューティングデバイスによって実行されるコンピュータ実施方法であって、
    少なくとも前記プロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信するステップと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定するステップと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップと、
    少なくとも前記プロセッサが、前記1つ以上の問題の各々に対して修正動作を決定するステップと、
    少なくとも前記プロセッサが、前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成するステップとを含
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記第1の問題に関連させて、前記第1のリモートデバイスおよび前記第2のリモートデバイスを含む前記リモートデバイスのセットを生成することとを含む、コンピュータ実施方法。
  9. プロセッサを備えるコンピューティングデバイスによって実行されるコンピュータ実施方法であって、
    少なくとも前記プロセッサが、複数のリモートデバイスからアプリケーションアクティビティデータを受信するステップと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティデータを解析して、前記複数のリモートデバイスの各々に関連するアプリケーションアクティビティのセットを決定するステップと、
    少なくとも前記プロセッサが、前記アプリケーションアクティビティのセットを解析して、前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップと、
    少なくとも前記プロセッサが、前記1つ以上の問題の各々に対して修正動作を決定するステップと、
    少なくとも前記プロセッサが、前記修正動作に基づいて、前記リモートデバイスのセットのための修正動作データ構造を生成するステップとを含み、
    前記複数のリモートデバイスのうちのリモートデバイスのセットに関連する1つ以上の問題を決定するステップは、
    前記複数のリモートデバイスのうちの第1のリモートデバイスのアプリケーションアクティビティの第1のセットが第1の問題に関連しているか否かを決定することと、
    前記複数のリモートデバイスのうちの第2のリモートデバイスのアプリケーションアクティビティの第2のセットが前記第1の問題に関連しているか否かを決定することと、
    前記第1のリモートデバイスおよび前記第2のリモートデバイスが共に前記第1の問題に関連していると決定したことに応じて、前記修正動作データ構造を前記第1のリモートデバイスおよび前記第2のリモートデバイスに送信して、前記第1の問題を軽減するために前記修正動作を前記第1のリモートデバイスおよび前記第2のリモートデバイス内で実施させることとを含む、コンピュータ実施方法。
  10. 前記修正動作データ構造はコードを含み、
    前記コードは、リモートデバイスによって受信されて実行されると、前記1つ以上の問題のうちの少なくとも1つを軽減するようにアプリケーションを変更させる、請求項8または9に記載のコンピュータ実施方法。
  11. 前記修正動作データ構造はレポートを含み、前記レポートは、
    (i)前記リモートデバイスのセットに関連する前記1つ以上の問題と、
    (ii)前記1つ以上の問題に対して決定された前記修正動作とを特定する、請求項8または9に記載のコンピュータ実施方法。
JP2020531012A 2017-12-07 2018-12-06 リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム Active JP7305641B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/834,369 2017-12-07
US15/834,369 US11627193B2 (en) 2017-12-07 2017-12-07 Method and system for tracking application activity data from remote devices and generating a corrective action data structure for the remote devices
PCT/US2018/064153 WO2019113263A1 (en) 2017-12-07 2018-12-06 Method and system for tracking application activity data from remote devices and generating a corrective action data structure for the remote devices

Publications (3)

Publication Number Publication Date
JP2021506010A JP2021506010A (ja) 2021-02-18
JP2021506010A5 JP2021506010A5 (ja) 2021-08-12
JP7305641B2 true JP7305641B2 (ja) 2023-07-10

Family

ID=64902434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020531012A Active JP7305641B2 (ja) 2017-12-07 2018-12-06 リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム

Country Status (4)

Country Link
US (1) US11627193B2 (ja)
JP (1) JP7305641B2 (ja)
CN (1) CN111448551B (ja)
WO (1) WO2019113263A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11740999B2 (en) * 2019-11-22 2023-08-29 Jpmorgan Chase Bank, N.A. Capturing transition stacks for evaluating server-side applications
US11853380B2 (en) 2020-06-08 2023-12-26 Dropbox, Inc. Intelligently generating and managing third-party sources within a contextual hub

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013038489A1 (ja) 2011-09-13 2013-03-21 株式会社日立製作所 計算機システム、クライアント計算機の管理方法及び記憶媒体
US20150067147A1 (en) 2013-09-04 2015-03-05 AppDynamics, Inc. Group server performance correction via actions to server subset
US9032412B1 (en) 2009-12-31 2015-05-12 Lenovoemc Limited Resource allocation based on active folder activity
JP2016505969A (ja) 2012-12-19 2016-02-25 アマゾン テクノロジーズ インコーポレイテッド リロードイベントに基づくウェブリソースの対話性分析

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6742141B1 (en) * 1999-05-10 2004-05-25 Handsfree Networks, Inc. System for automated problem detection, diagnosis, and resolution in a software driven system
WO2003073203A2 (en) * 2002-02-21 2003-09-04 Precise Software Solutions, Inc. System and method for analyzing input/output activity on local attached storage
US7917536B2 (en) * 2004-02-23 2011-03-29 International Business Machines Corporation Systems, methods and computer program products for managing a plurality of remotely located data storage systems
US8005647B2 (en) 2005-04-08 2011-08-23 Rosemount, Inc. Method and apparatus for monitoring and performing corrective measures in a process plant using monitoring data with corrective measures data
US20070168696A1 (en) * 2005-11-15 2007-07-19 Aternity Information Systems, Ltd. System for inventing computer systems and alerting users of faults
US8321437B2 (en) * 2005-12-29 2012-11-27 Nextlabs, Inc. Detecting behavioral patterns and anomalies using activity profiles
US20090043646A1 (en) * 2007-08-06 2009-02-12 International Business Machines Corporation System and Method for the Automated Capture and Clustering of User Activities
US8214329B2 (en) * 2008-08-26 2012-07-03 Zeewise, Inc. Remote data collection systems and methods
US9323894B2 (en) * 2011-08-19 2016-04-26 Masimo Corporation Health care sanitation monitoring system
US8935382B2 (en) * 2009-03-16 2015-01-13 Microsoft Corporation Flexible logging, such as for a web server
US10298614B2 (en) * 2010-11-29 2019-05-21 Biocatch Ltd. System, device, and method of generating and managing behavioral biometric cookies
US9189317B1 (en) * 2011-03-17 2015-11-17 Extreme Networks, Inc. Software sustaining system
US9727441B2 (en) * 2011-08-12 2017-08-08 Microsoft Technology Licensing, Llc Generating dependency graphs for analyzing program behavior
US20130298018A1 (en) * 2012-05-04 2013-11-07 Schlumberger Technology Corporation Using software interaction information
US9223950B2 (en) * 2013-03-05 2015-12-29 Intel Corporation Security challenge assisted password proxy
US9692789B2 (en) * 2013-12-13 2017-06-27 Oracle International Corporation Techniques for cloud security monitoring and threat intelligence
US9542259B1 (en) * 2013-12-23 2017-01-10 Jpmorgan Chase Bank, N.A. Automated incident resolution system and method
US9658917B2 (en) * 2014-02-07 2017-05-23 AppDynamics, Inc. Server performance correction using remote server actions
US10176428B2 (en) * 2014-03-13 2019-01-08 Qualcomm Incorporated Behavioral analysis for securing peripheral devices
US10098025B2 (en) * 2015-01-30 2018-10-09 Geotab Inc. Mobile device protocol health monitoring system
US10025654B2 (en) * 2016-04-01 2018-07-17 T-Mobile Usa, Inc. Diagnostic and workflow engine with system integration
US10445220B2 (en) * 2017-01-25 2019-10-15 Verizon Patent And Licensing Inc. System and methods for application activity capture, error identification, and error correction
US10521090B2 (en) * 2017-07-13 2019-12-31 International Business Machines Corporation Dashboard generation based on user interaction

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9032412B1 (en) 2009-12-31 2015-05-12 Lenovoemc Limited Resource allocation based on active folder activity
WO2013038489A1 (ja) 2011-09-13 2013-03-21 株式会社日立製作所 計算機システム、クライアント計算機の管理方法及び記憶媒体
JP2016505969A (ja) 2012-12-19 2016-02-25 アマゾン テクノロジーズ インコーポレイテッド リロードイベントに基づくウェブリソースの対話性分析
US20150067147A1 (en) 2013-09-04 2015-03-05 AppDynamics, Inc. Group server performance correction via actions to server subset

Also Published As

Publication number Publication date
CN111448551A (zh) 2020-07-24
JP2021506010A (ja) 2021-02-18
CN111448551B (zh) 2023-08-04
US20190182343A1 (en) 2019-06-13
WO2019113263A1 (en) 2019-06-13
US11627193B2 (en) 2023-04-11

Similar Documents

Publication Publication Date Title
US11886464B1 (en) Triage model in service monitoring system
US20210352099A1 (en) System for automatically discovering, enriching and remediating entities interacting in a computer network
US20210303381A1 (en) System and method for automating fault detection in multi-tenant environments
US11442764B2 (en) Optimizing the deployment of virtual resources and automating post-deployment actions in a cloud environment
US10853161B2 (en) Automatic anomaly detection and resolution system
US10942960B2 (en) Automatic triage model execution in machine data driven monitoring automation apparatus with visualization
US11782989B1 (en) Correlating data based on user-specified search criteria
US10019496B2 (en) Processing of performance data and log data from an information technology environment by using diverse data stores
US11119982B2 (en) Correlation of performance data and structure data from an information technology environment
US10225136B2 (en) Processing of log data and performance data obtained via an application programming interface (API)
US10997191B2 (en) Query-triggered processing of performance data and log data from an information technology environment
RU2610288C2 (ru) Обеспечение возможностей конфигурируемого технологического процесса
US20170169134A1 (en) Gui-triggered processing of performance data and log data from an information technology environment
US8726240B2 (en) Capturing replayable information at software defect locations in a multi-tenant environment
US9112777B1 (en) Tag-based resource configuration control
US20170255683A1 (en) Processing of Performance Data and Structure Data by Thresholding Log Data
US10924334B1 (en) Monitoring distributed systems with auto-remediation
WO2015020922A1 (en) Dynamic collection analysis and reporting of telemetry data
CA3059738A1 (en) Behaviour data processing method, device, electronic device and computer readable medium
US20220043822A1 (en) Shadow experiments for serverless multi-tenant cloud services
US10372572B1 (en) Prediction model testing framework
US20150019284A1 (en) Dynamically modifying business processes based on real-time events
US10951540B1 (en) Capture and execution of provider network tasks
JP7305641B2 (ja) リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム
US20200327037A1 (en) Software application performance analyzer

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210701

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220726

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221026

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230125

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230530

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230628

R150 Certificate of patent or registration of utility model

Ref document number: 7305641

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150