(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-09
(45)【発行日】2024-09-18
(54)【発明の名称】蓄積された診断レポートに基づく診断テストの優先順位付け
(51)【国際特許分類】
G06F 11/34 20060101AFI20240910BHJP
G06F 11/30 20060101ALI20240910BHJP
【FI】
G06F11/34 152
G06F11/30 140D
(21)【出願番号】P 2021570437
(86)(22)【出願日】2020-04-14
(86)【国際出願番号】 FI2020050240
(87)【国際公開番号】W WO2020240076
(87)【国際公開日】2020-12-03
【審査請求日】2023-04-05
(32)【優先日】2019-05-27
(33)【優先権主張国・地域又は機関】FI
(73)【特許権者】
【識別番号】519100952
【氏名又は名称】ブランコ テクノロジー グループ アイピー オイ
【氏名又は名称原語表記】BLANCCO TECHNOLOGY GROUP IP OY
(74)【代理人】
【識別番号】110002907
【氏名又は名称】弁理士法人イトーシン国際特許事務所
(72)【発明者】
【氏名】ファブリティウス,ミッコ
【審査官】北川 純次
(56)【参考文献】
【文献】特開2001-312375(JP,A)
【文献】特開2009-206850(JP,A)
【文献】国際公開第2008/120552(WO,A1)
【文献】米国特許出願公開第2003/0005107(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/30-11/34
G06F 11/07
(57)【特許請求の範囲】
【請求項1】
診断レポートデータベース(103)に、複数のコンピューティングデバイスのそれぞれに関する1つ以上の診断レポートであって、各診断レポートが前記複数のコンピューティングデバイスのうちの1つのコンピューティングデバイスに対して行われた1つ以上の診断テストの結果及び当該コンピューティングデバイスを特徴付ける1つ以上のデバイスパラメータのセットを含む1つ以上の診断レポートを保持すること(201)と、
リモートコンピューティングシステム(101)によって、第2のコンピューティングデバイス(124)を特徴付ける1つ以上のデバイスパラメータの第1のセットを、通信ネットワーク(110)を介して、第1のコンピューティングデバイス(121)から受信すること(204)と、
前記受信(204)に応答して、リモートコンピューティングシステム(101)によって、1つ以上のデバイスパラメータの前記第1のセットと、前記診断レポートデータベース(103)に保持された複数の診断レポートにおけるデバイスパラメータの複数のセットと、を比較し(204)、前記第2のコンピューティングデバイス(124)に関連する1つ以上の診断レポートを見つけることと、
前記リモートコンピューティングシステム(101)によって、1つ以上の診断テストが前記第2のコンピューティングデバイス(124)に対して行われた時の前記1つ以上の診断テストの結果を、統計的分析を使用することにより、前記第2のコンピューティングデバイス(124)に関連する前記1つ以上の診断レポートにおける1つ以上の診断テストの結果に基づいて、予測すること(205)と、
前記リモートコンピューティングシステム(101)によって、前記第1のコンピューティングデバイス(121)のユーザが前記第2のコンピューティングデバイス(124)を診断するための適切な診断テストを選択するのをガイドするために、前記予測の結果を、前記通信ネットワーク(110)を介して前記第1のコンピューティングデバイス(121)に送信すること(206)と、を含むことを特徴とする方法。
【請求項2】
前記予測の結果は、前記1つ以上の診断テストのそれぞれが前記第2のコンピューティングデバイス(124)に対して行われた時の前記1つ以上の診断テストのそれぞれによって得られたポジティブ診断の予測確率及び/又は前記第2のコンピューティングデバイスの、不具合がある可能性が最も高い1つ以上のコンポーネントに関する情報を少なくとも含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記リモートコンピューティングシステム(101)によって、前記第1のコンピューティングデバイス(121)から前記第2のコンピューティングデバイス(124)についての診断レポートを受信したこと(702)に応答して、前記リモートコンピューティングシステム(101)によって、前記診断レポートを前記診断レポートデータベース(103)に記憶すること(703)を含み、前記診断レポートは、前記第2のコンピューティングデバイス(124)に対して行われた1つ以上の診断テストの結果と、前記第2のコンピューティングデバイス(124)を特徴付ける1つ以上のデバイスパラメータの前記第1のセットと、を含むことを特徴とする請求項1または2に記載の方法。
【請求項4】
1つ以上のデバイスパラメータの前記第1のセットと、1つ以上のデバイスパラメータの前記複数のセットと、の前記比較は、
1つ以上のデバイスパラメータの前記第1のセットについて、ベクトルの各要素が特定のデバイスパラメータ又は多数のデバイスパラメータによって定義された前記第2のコンピューティングデバイス(124)の特定の特徴を表す数値を有するベクトルを、前記第1のセットにおける少なくとも1つのデバイスパラメータに基づいて生成すること(304)と、
前記第2のコンピューティングデバイス(124)と関連付けられた前記ベクトルと、前記複数の診断レポートにおけるデバイスパラメータの前記複数のセットに基づいて前記複数のコンピューティングデバイスのうちの1つ以上のコンピューティングデバイスについて生成された1つ以上の対応するベクトルと、を比較すること(305)と、を含むことを特徴とする請求項1から3のいずれかに記載された方法。
【請求項5】
1つ以上のデバイスパラメータの前記第1のセットと、デバイスパラメータの前記複数のセットと、の前記比較は、さらに、
1つ以上のデバイスパラメータの前記第1のセットに基づいて、前記第2のコンピューティングデバイス(124)のデバイスカテゴリを識別すること(303)を含み、前記ベクトルがどのように生成されるかは、前記識別されたデバイスカテゴリによることを特徴とする請求項4に記載の方法。
【請求項6】
1つ以上のデバイスパラメータの前記第1のセットと、1つ以上のデバイスパラメータの前記複数のセットと、の前記比較は、さらに、
前記第2のコンピューティングデバイス(124)と同じデバイスカテゴリに関連付けられた1つ以上のベクトルのうちの1つ以上が、予め定義された基準に従って前記第2のコンピューティングデバイス(124)の前記ベクトルに一致するかどうかを判定することと、
前記予め定義された基準に従って1つ以上の一致が発見されたことに応答して、当該1つ以上の一致するベクトルと関連付けられた1つ以上の診断レポートを、前記第2のコンピューティングデバイス(124)用の分類クラスターとして選択すること(307)と、を含み、前記方法はさらに、
前記分類クラスターの前記選択(307)に応答して、前記分類クラスターに基づいて、前記1つ以上の診断テストの予測を行うこと(308)を含むことを特徴とする請求項5に記載の方法。
【請求項7】
1つ以上のデバイスパラメータの前記第1のセットと、1つ以上のデバイスパラメータの前記複数のセットと、の前記比較(204)は、
前記第2のコンピューティングデバイス(124)の1つ以上のコンポーネントのそれぞれについて、前記第1のコンピューティングデバイス(121)から受信した、1つ以上のデバイスパラメータの前記第1のセットに基づいて、1つ以上のコンポーネント固有のデバイスパラメータの第2のセットを決定すること(403)と、
前記診断レポートデータベース(103)から1つ以上のコンポーネント固有のデバイスパラメータの1つ以上の第2のセットに対する一致を検索すること(404)と、
1つ以上のコンポーネント固有のデバイスパラメータの第2のセットの少なくとも1つに対する少なくとも1つの一致が発見(405)されたことに応答して、少なくとも1つの一致が発見された1つ以上のコンポーネント固有のデバイスパラメータの各第2のセットについて、前記1つ以上の対応する一致と関連付けられた1つ以上の診断レポートを、当該コンポーネント用のコンポーネント固有の分類クラスターとして選択すること(406)と、を含み、前記方法は、さらに、
1つ以上のコンポーネント用の、1つ以上のコンポーネント固有の分類クラスターの前記選択(406)に応答して、前記1つ以上のコンポーネント固有の分類クラスターに基づいて、前記1つ以上の診断テストの結果の予測を行うこと(407)を含むことを特徴とする請求項1から3のいずれかに記載の方法。
【請求項8】
1つ以上のデバイスパラメータの前記第1のセットと、1つ以上のデバイスパラメータの前記複数のセットと、の前記比較(204)は、
前記第2のコンピューティングデバイス(124)の1つ以上のコンポーネントのそれぞれについて、1つ以上のデバイスパラメータの前記第1のセットに基づいて、コンポーネントカテゴリを識別すること(503)と、
前記第2のコンピューティングデバイス(124)の前記1つ以上のコンポーネントのそれぞれについて、1つ以上のデバイスパラメータの前記第1のセットと、前記1つ以上の識別されたコンポーネントカテゴリとに基づいて、コンポーネント固有のベクトルの各要素が特定のデバイスパラメータ又は多数のデバイスパラメータによって定義された前記第2のコンピューティングデバイス(124)の当該コンポーネントの特定の特徴を表す数値を有する、コンポーネント固有のベクトルを生成すること(504)と、
前記第2のコンピューティングデバイス(124)に関連付けられた各コンポーネント固有のベクトルと、前記複数の診断レポートにおける1つ以上のデバイスパラメータの前記複数のセットに基づいて前記複数のコンピューティングデバイスのうち1つ以上のコンピューティングデバイスについて生成された1つ以上の対応するコンポーネント固有のベクトルと、を比較すること(505)と、を含むことを特徴とする請求項1から3のいずれかに記載の方法。
【請求項9】
1つ以上のデバイスパラメータの前記第1のセットと、1つ以上のデバイスパラメータの前記複数のセットと、の前記比較(204)は、さらに、
前記1つ以上のコンピューティングデバイスについて生成された前記1つ以上のコンポーネント固有のベクトルのうちの1つ以上が、予め定義された基準に従って、前記第2のコンピューティングデバイス(124)の1つ以上のコンポーネント固有のベクトルのうちの前記1つに一致するかどうかを判定すること(506)と、
前記予め定義された基準に従って1つ以上の一致が発見されたことに応答して、前記第2のコンピューティングデバイス(124)の前記1つ以上のコンポーネントのそれぞれについて、当該1つ以上の一致するコンポーネント固有のベクトルに関連付けられた1つ以上の診断レポートを、コンポーネント固有の分類クラスターとして選択すること(507)と、
1つ以上のコンポーネント固有の分類クラスターの前記選択に応答して、前記1つ以上のコンポーネント固有の分類クラスターにおける診断レポートに基づいて、前記1つ以上の診断テストの結果の予測をコンポーネント固有に行うこと(508)と、含むことを特徴とする請求項8に記載の方法。
【請求項10】
前記第2のコンピューティングデバイス(124)に関連付けられた任意のベクトルと、前記複数の診断レポートに基づいて生成された前記1つ以上の対応するベクトルと、の前記比較(204)は、前記第2のコンピューティングデバイス(124)のベクトルと前記1つ以上の対応するベクトルとの差を定量化する距離メトリックの値を算出することを含み、前記予め定義された基準は、前記距離メトリックに対する予め定義された上限閾値を含むことを特徴とする請求項6、8または9に記載の方法。
【請求項11】
前記第1のコンピューティングデバイス(121)によって取得された1つ以上のデバイスパラメータの前記第1のセット及び/又は各診断レポートに含まれる1つ以上のデバイスパラメータの各セットは、対応するコンピューティングデバイスの製造業者、前記対応するコンピューティングデバイスのモデル、前記対応するコンピューティングデバイスのオペレーティングシステム及び前記対応するコンピューティングデバイスのログ履歴の少なくとも一部、のうちの1つ以上に関する情報を含むことを特徴とする
請求項1から10のいずれかに記載の方法。
【請求項12】
前記第1のコンピューティングデバイス(121)によって取得された1つ以上のデバイスパラメータの前記第1のセット及び/又は各診断レポートに含まれる1つ以上のデバイスパラメータの各セットは、対応するコンピューティングデバイスの使用年数又は前記対応するコンピューティングデバイスの有効年数のうちの少なくとも1つを含むことを特徴とする
請求項1から11のいずれかに記載の方法。
【請求項13】
請求項1から12のいずれかに記載の方法を行うための手段を有するリモートコンピューティングシステム(101)。
【請求項14】
前記リモートコンピューティングシステム(101)は、クラウドベースのシステムである及び/又は前記診断レポートデータベース(103)は、クラウドベースのデータベースであることを特徴とする請求項13に記載のリモートコンピューティングシステム(101)。
【請求項15】
コンピューティングデバイスによって実行されると、前記コンピューティングデバイスに請求項1から12のいずれかに記載の方法を行わせる命令を記憶した、非一時的なコンピュータで読み取り可能な媒体。
【請求項16】
請求項13または14に記載のリモートコンピューティングシステム(101)と、
1つ以上の第1のコンピューティングデバイス(121)と、を有し、前記1つ以上の第1のコンピューティングデバイス(121)のそれぞれは、
第1のコンピューティングデバイス(121)に電気的に接続された第2のコンピューティングデバイス(124)を特徴付ける1つ以上のデバイスパラメータの第1のセットを、前記第2のコンピューティングデバイス(124)のメモリ(125)から取得すること(202、601)と、
1つ以上のデバイスパラメータの前記第1のセットを、通信ネットワーク(110)を介して、前記リモートコンピューティングシステム(101)に送信すること(203、602)と、
前記1つ以上の診断テストが第2のコンピューティングデバイス(124)に対して行われた時の前記1つ以上の診断テストの予測結果を、前記通信ネットワーク(110)を介してリモートコンピューティングシステム(101)から受信したこと(603)に応答して、受信した情報をユーザに対して前記第1のコンピューティングデバイス(121)のディスプレイ(123)を介して表示すること(207、610)と、
前記第1のコンピューティングデバイス(121)のユーザ入力デバイス(122)を介した1つ以上の診断テストの選択を確認するユーザ入力を受信したこと(208、606)に応答して、前記1つ以上の選択された診断テストを前記第2のコンピューティングデバイス(124)に対して行わせること(209、607)と、を行うための手段を有することを特徴とするシステム(100)。
【請求項17】
前記1つ以上の第1のコンピューティングデバイス(121)のそれぞれの前記手段は、さらに、
前記1つ以上の選択された診断テストの終了に応答して、前記1つ以上の診断テストに関する診断レポートを生成し(608)、前記診断テストに関する前記診断レポートは、少なくとも、1つ以上のデバイスパラメータの前記第1のセットと、各診断テストの少なくとも診断を含む前記1つ以上の診断テストの結果と、を含み、
前記診断レポートを、前記通信ネットワーク(110)を介して前記リモートコンピューティングシステム(101)に送信する(609)よう構成されていることを特徴とする請求項16に記載のシステム(100)。
【請求項18】
前記1つ以上の第1のコンピューティングデバイス(121)のそれぞれは、ラップトップ及びデスクトップコンピュータのうちの1つであり、及び/又は前記1つ以上の第1のコンピューティングデバイス(121)の少なくとも1つに電気的に接続された各第2のコンピューティングデバイス(124)は、モバイルデバイスであることを特徴とする請求項16または17に記載のシステム(100)。
【請求項19】
さらに、1つ以上の第2のコンピューティングデバイス(124)を有し、各第2のコンピューティングデバイス(124)は、少なくとも1つのメモリ(125)を有し、前記1つ以上の第1のコンピューティングデバイス(121)のうちの1つに電気的に接続されていることを特徴とする請求項16から18のいずれかに記載のシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピューティングデバイスを診断することに関するものであり、特に、コンピューティングデバイスのための診断テストの優先順位付けを行う手段を提供することに関する。
【背景技術】
【0002】
背景技術の以下の説明は、本発明以前に関連技術に知られていなかったが本発明によって提供される洞察、発見、理解若しくは開示、又は開示との関連性を包含し得る。ここに開示された幾つかのそのような貢献は、具体的に以下に指摘し得るが、本発明の開示が包含する他のそのような貢献は、それらの文脈から明らかとなるであろう。
【0003】
モバイルデバイスの異なるコンポーネントの故障を検出するためにモバイルデバイスを診断する際に、例えば、診断するモバイルデバイスのモデルやメーカーに関わらず、各モバイルデバイスに同じ一連の診断テストを行うことがよくある。この総当たり形式の手法は、当該の一連の診断テストが、利用できる関連する診断テストをすべて含んでいる場合は、各モバイルデバイスを診断する確実な方法であるかもしれないが、ほとんどの場合においては、最も目的にかなった又は時間効率の良い解決方法ではない。モバイルデバイスの故障確率は、モバイルデバイスの種類、モデル及び使用年数等の様々なデバイス固有の要因に依存し得る。さらに厄介な問題は、モバイルデバイスの幾つかのコンポーネントは、他のコンポーネントより壊れやすいかもしれないので、ある時点で故障して交換や修理が必要となる可能性がより高くなることである。この各コンポーネントの故障の見込みは、デバイス固有の特性でもあるかもしれない。よって、あるモバイルデバイスについては、行うべき一連の診断テストのうち幾つかの診断テストは、首尾よく診断を行うために非常に重要であると考えられるかもしれないが、他の診断テストは、余分、又は少なくとも過剰であるかもしれない。上記の要因のすべて、又は、少なくとも幾つかが、モバイルデバイスの診断テストを行う際に考慮されれば、各モバイルデバイスのテストに要する時間を大幅に短縮することができるであろう。
【発明の概要】
【課題を解決するための手段】
【0004】
一態様によると、独立クレームの主題が提供される。実施形態は、従属クレームにおいて定義されている。
【0005】
実施の1つ以上の例が、添付図面と下記明細書においてさらに詳細に記載されている。他の特徴は、明細書及び図面から、またクレームから明らかであろう。
【0006】
以下、添付図面を参照して、好適な実施形態によって本発明をさらに詳しく説明する。
【図面の簡単な説明】
【0007】
【
図2-7】
図2ないし
図7は、実施形態によるプロセスを示す。
【発明を実施するための形態】
【0008】
以下の実施形態は例示である。本明細書は、数箇所において「一実施形態」、「1つの実施形態」又は「幾つかの実施形態」に言及している場合があるが、これは、このような各言及が同じ実施形態に対するものであること、又は特徴が1つの実施形態のみに適用されることを必ずしも意味していない。異なる実施形態の1つの特徴を組み合わせて他の実施形態を提供してもよい。さらに、「具備する」及び「含む」という語は、記載された実施形態が言及された特徴のみによって構成されることに限定されないと理解されるべきであり、これらの実施形態は、具体的に言及されていない特徴/構造も包含してもよい。
【0009】
本発明の実施形態を適用し得る通信システムの構成が
図1に示されている。
図1は、幾つかのエレメント及び機能的エンティティのみを示す簡略化したシステム構成を示し、そのエレメント及びエンティティのすべては論理的ユニットであり、その実装は図示されたものと異なっていてもよい。
図1に示した接続は、論理的接続であり、実際の物理的接続は異なっていてもよい。システムが他の機能及び構造を具備してもよいことは、当業者には明らかである。
【0010】
図1は、通信ネットワーク110を介して、1つ以上のローカルシステム120,130に接続されたリモートコンピューティングシステム101を含むシステム100を示している。各ローカルシステム120,130は、少なくとも第1のコンピューティングデバイス121を含んでおり、この第1のコンピューティングデバイス121は、第1のインターフェース126を介して第2のコンピューティングデバイス124に接続されるとともに、第2のインターフェース127を介して通信ネットワーク110に接続されている(
図1においては、簡略化のためローカルシステム120についてのみ示す)。幾つかの実施形態においては、1つ以上のローカルシステム120,130のうち少なくとも幾つかにおける第1のコンピューティングデバイス121は、第1のインターフェース126を介して2つ以上の第2のコンピューティングデバイス124に同時に接続されてもよい。
【0011】
第1のコンピューティングデバイス121は、制御された方法で、第2のコンピューティングデバイス124に対して複数の診断テストを行うこと、又は行わせることが可能なコンピューティングデバイスである。上記診断テストを行う、又は診断テストを第2のコンピューティングデバイス124自身に行わせることできるようにするため、第1のコンピューティングデバイス121は、例えば、第2のコンピューティングデバイス124に記憶された情報(例えば、デバイス情報及び/又は1つ以上の診断テストの結果)にアクセスし、情報(例えば、デバイスパラメータ、又は生成された診断レポート)を、第2のインターフェース127を使用して通信ネットワーク110を介してリモートコンピューティングシステム101に送信し、情報(例えば、第2のコンピューティングデバイスに対して行われた時の1つ以上の診断テストの予測結果、又は、それがないこと及び/又は他の診断情報)を、リモートコンピューティングシステム101から、通信ネットワーク110を介して第2のインターフェース127を使用して受信し、第2のコンピューティングデバイス124に対して1つ以上の診断テストを実行するよう構成されていてもよい。第2のコンピューティングデバイス124に対する1つ以上の診断テストの実行は、具体的には、第2のコンピューティングデバイス124に1つ以上の診断テストを実行し、1つ以上の診断テストの結果を第1のコンピューティングデバイス124に返信するよう命令若しくは指令を行うこと、又は第2のコンピューティングデバイス124を対象とする1つ以上の診断テストを(第2のコンピューティングデバイス124が1つ以上の診断テストの実行の際に主に受動的役割を有している状態で)第1のコンピューティングデバイス121を使用して実行することを含んでいてもよい。幾つかの実施形態においては、これら2つの選択肢の組み合わせも可能である。さらに、第1のコンピューティングデバイス121は、第1のコンピューティングデバイス121のユーザに、例えば、診断テストに関連する情報を入力する手段を提供する、少なくとも1つのユーザ入力デバイス122を具備してもよい。少なくとも1つのユーザ入力デバイス122は、例えば、キーボード、タッチスクリーン、マウス、タッチパッド、及び/又は音声により起動される制御装置を含んでいてもよい。第1のコンピューティングデバイス121は、さらに、ディスプレイ123を具備し、このディスプレイ123により、ユーザが診断テストの実行を監視できるようにしてもよい。第1のインターフェース126は、第1のコンピューティングデバイス121によって、少なくとも(1つ又は複数の)診断テストを行う際に、第2のコンピューティングデバイス124から(又は具体的には、そのメモリ125から)デバイス情報及び/又は1つ以上の診断テストの結果を取得するために使用されてもよい。第1のコンピューティングデバイス121は、第1のインターフェース126を介して、第2のコンピューティングデバイス124に、ワイヤ又は、USB(ユニバーサルシリアルバス)-USBケーブル、USB-ミニUSBケーブル、若しくはUSB-マイクロUSBケーブル等のケーブルを使用するか、ドッキングステーションを使用するか又は無線で(例えば、Wi-Fi(登録商標)、又はBluetooth(登録商標)を介して)接続されてもよい。第1のコンピューティングデバイス121は、第1のコンピューティングデバイス121のユーザ又は操作者に第2のコンピューティングデバイス124の診断をガイドするための専用の診断クライアントソフトウェアを実行するよう構成されていてもよい。
【0012】
第2のコンピューティングデバイス124は、第1のコンピューティングデバイス121を使用して診断されるコンピューティングデバイスである。第2のコンピューティングデバイス124は、1つ以上のメモリを具備していてもよい。第1のコンピューティングデバイス121は、ユーザ又は操作者によって能動的に操作されてもよいが、第2のコンピューティングデバイス124は、以下に述べる幾つかの実施形態によるプロセス中に、第1のコンピューティングデバイス121を介して(つまり、第2のコンピューティングデバイス124の、任意の可能なユーザ入力デバイスを介してではなく)ユーザ入力を受信するためだけに(又は少なくともほとんどの部分が)構成されていてもよい。幾つかの実施形態においては、診断テストの幾つかは、第2のコンピューティングデバイス124のユーザ入力デバイスを介して直接ユーザが入力することを要求してもよい(例えば、プッシュボタン、タッチセンサ、指紋センサ、スピーカ又はスクリーンのテスト動作)。
【0013】
第1及び第2のコンピューティングデバイス121,124のそれぞれは、携帯型の、又は、非携帯型のコンピューティングデバイス(器具、装置)のことを言う。採用され得るコンピューティングデバイスには、ハードウェア又はソフトウェアにおける加入者識別モジュール(SIM)を備えた又は備えていない状態で動作する無線モバイル通信デバイスを含み、これには、それらに限定されるものではないが、以下の種類のデバイス、例えば、デスクトップコンピュータ、ラップトップ、タッチスクリーンコンピュータ、携帯電話、スマートフォン、携帯情報端末(PDA)、ハンドセット、電子読書デバイス、タブレット、ゲーム機、ノートブック、マルチメディアデバイス、センサ、アクチュエータ、ビデオカメラ、車、ウェアラブルコンピュータ、遠隔測定器具、及び遠隔モニタリング器具等を含む。第1及び第2のコンピューティングデバイス121,124は、同じ種類、又は異なる種類のコンピューティングデバイスであってよい。典型的な非限定的実施形態においては、第1のコンピューティングデバイス121は、デスクトップコンピュータ又はラップトップであってもよく、第2のコンピューティングデバイス124は、モバイルデバイス(例えば、スマートフォン、タブレットコンピュータ、又はラップトップ)であってもよい。全体として、第2のコンピューティングデバイス124は、第1のコンピューティングデバイス121に電気的に接続されてもよい任意のコンピューティングデバイスであってよい。
【0014】
第2のコンピューティングデバイス124は、複数の異なるコンポーネント(又は部品)を含んでいてもよく、その動作が診断されてもよい。例えば、上記複数のコンポーネントは、以下の種類又はカテゴリのうちの1つ以上のコンポーネントを1つ以上含んでいてもよい:タッチセンサ、スピーカ、スクリーン、コネクタ、近接センサ、マイク、ライト(例えば、LEDライト)、心拍モニタ、ヘッドフォンジャック、ヘッドセット、フロントカメラ、バックカメラ、プッシュボタン、指紋センサ、近距離通信(NFC)コンポーネント、受信スピーカ、バッテリ、温度センサ、気圧計、振動モータ、コンパス、カメラフラッシュ、オートフォーカス、自動回転センサ、及び赤外線センサ。これら複数のコンポーネントは、同じ種類の1つ以上のコンポーネントを含んでいてもよい。各診断テストは、同じ及び/又は異なるカテゴリの1つのコンポーネント、又は多数のコンポーネントの動作を同時に診断してもよい。
【0015】
幾つかの実施形態において、第1のコンピューティングデバイス121と第2のコンピューティングデバイス124は、1つの装置の部品であってもよく、又は、第2のコンピューティングデバイス124は、第1のコンピューティングデバイス121内に含まれていてもよい。言い換えると、第1及び第2のコンピューティングデバイスは、(先に述べた互いに容易に着脱可能であるものとは異なり)互いに固定されていてもよい。例えば、第2のコンピューティングデバイス124は、第1のコンピューティングデバイス121のメモリ又は記憶装置に対応していてもよい。
【0016】
通信ネットワーク110は、1つ以上の無線ネットワークを具備してもよく、ここで、一つの無線ネットワークは、GSM、GPRS、LTE(登録商標)、4G、5G、及びその次世代等の任意のモバイルシステム、及びWi-Fi(登録商標)等の無線ローカルエリアネットワークに基づいていてもよい。さらに、通信ネットワーク110は、1つ以上の固定ネットワーク及び/又はインターネットを含んでいてもよい。
【0017】
リモートコンピューティングシステム101は、通信ネットワーク110を介して接続された第1のコンピューティングデバイス121から、第2のコンピューティングデバイスに関連する情報(例えば、コンピューティングデバイスを特徴付ける、1つ以上のデバイスパラメータ等のデバイス情報)を受信し、受信した情報を分析し、分析結果(例えば、予測された診断結果及び/又は他の診断ガイダンス情報)を、通信ネットワーク110を介して第1のコンピューティングデバイス121に送信するよう構成されたデバイスである。上記分析は、具体的には、リモートコンピューティングシステム(
図1には図示せず)の診断分析ユニット又は診断分析装置によって実行されてもよく、及び/又はリモートコンピューティングシステムに接続又は含まれる診断レポートデータベース103に記憶された情報に基づいていてもよい。診断レポートデータベース103は、第1のコンピューティングデバイス(すなわち、第1のコンピューティングデバイス121及び/又は他の対応する装置)によって、第2のコンピューティングデバイス(すなわち、第2のコンピューティングデバイス124及び/又は他の対応する装置)に対して行われた診断テストの結果を記載した複数の診断レポートを少なくとも含んでいてもよい。これについては、更なる実施形態に関連して後に詳述する。
【0018】
リモートコンピューティングシステム101によって第1のコンピューティングデバイス121に送信される他の診断ガイダンス情報は、例えば、リモートコンピューティングシステム101の診断レポートデータベースに保持されている第2のコンピューティングデバイス124に関する情報を含んでいてもよい。このような情報は、例えば、その動作中に第2のコンピューティングデバイス124によって(又は具体的には、第2のコンピューティングデバイス124上で実行されている専用ユーザアプリケーションによって)与えられたエラー又は警告に関連していてもよい。これに加えて又は代替として、他の診断情報は、第2のコンピューティングデバイスの製造業者によって示された公称値又は基準値、及び/又は複数のコンピューティングデバイスに対して行われた診断テストに関する更なる統計的情報を含んでいてもよい。
【0019】
リモートコンピューティングシステム101は、第1のコンピューティングデバイス121から見て、リモートサーバー又はサーバーと等しく呼ばれてもよい。言い換えると、第1のコンピューティングデバイス121とリモートコンピューティングシステムは、クライアントとサーバーの関係を形成していると見なされてもよい。同様に、第1のコンピューティングデバイス121は、ローカルクライアント又はクライアントと等しく呼ばれてもよい。
【0020】
一実施形態によると、第1のコンピューティングデバイス121は、USBハブを使用してUSB(ユニバーサルシリアルバス)インターフェース126を介して、多数の第2のコンピューティングデバイス124に接続される。この実施形態によると、第1のコンピューティングデバイスのUSBポートの数は、第1のコンピューティングデバイスによって取り扱われる第2のコンピューティングデバイスの数よりも少なくてもよいという利点がある。一実施形態によると、USBハブは、10ポートのUSBハブである。
【0021】
リモートコンピューティングシステム101は、完全に又は部分的にクラウドベースであってもよい。つまり、リモートコンピューティングシステム101は、少なくとも1つのコンピューティングクラウドであってもよいし、又は少なくとも1つのコンピューティングクラウドを具備してもよい。具体的には、診断分析ユニット及び/又は診断レポートデータベースは、クラウドベースであってもよい。
【0022】
以下に述べる実施形態は、コンピューティングデバイス(例えば、
図1の第2のコンピューティングデバイス124)を診断するプロセスを容易化する及び/又は迅速化しようとするものである。診断対象のコンピューティングデバイスは、具体的には、スマートフォン又はタブレットコンピュータ等のモバイル(コンピューティング)デバイスであってよいが、実施形態はモバイルデバイスに限定されない。スマートフォン又はタブレットコンピュータ等の従来のモバイルデバイスは、多くのコンポーネント(例えば、フロントカメラ及び/又はバックカメラ、スクリーン、及びタッチセンサ)を具備しており、これらはモバイルコンピューティングデバイスの耐用年数中に故障する可能性がある。モバイルコンピューティングデバイスの1つ以上のコンポーネントが正しく動作しているかどうかを判定するためにモバイルデバイスに対して異なる診断テストを行ってもよい。コンピューティングデバイスを完全に診断するためには、多数の異なる診断テストを行わなければならない可能性があり、これはかなりの時間がかかる可能性がある。1つのモバイルデバイスの診断に必要な時間を、診断の質を大幅に妥協することなく(すなわち、コンポーネントの故障を見逃すことなく)削減できれば、有利であろう。特定のコンポーネントが故障する見込みは、少なくともコンポーネントの種類とモバイルデバイスの使用年数によって異なる。例えば、少なくとも使用年数が1年のモバイルデバイスについては、スクリーンが正常に動作しない確率は比較的高いかもしれないが、マイクに問題がある確率はほとんどゼロに近いかもしれない。よって、モバイルデバイスの診断の際に、スクリーンの状態又はコンディションを診断するための診断テストの実施は、マイクの状態又はコンディションを診断するための診断テストの実施よりも優先されるべきである。言い換えると、マイクに対する診断テストは、比較的安全にスキップしてもよいが、スクリーンに対する診断テストは、おそらくスキップすべきではない。しかしながら、この原則はほとんどの場合には当てはまるかもしれないが、特定のモデルのモバイルデバイスのマイクは、たいていのマイクよりもかなり故障する可能性が高いことが知られているかもしれないので、その特定のモデルに対してはマイクに対する診断テストを行うべきである。特定のモバイルデバイスに対してどの診断テストを行うべきかに関して情報に基づいた決定を行うために各デバイスの各コンポーネントの故障確率に影響する種々の要因のすべてをユーザが追跡するには多大な労力を要するであろう。実施形態では、モバイルデバイスとその故障確率に関する適切な統計的情報を提供することによりこの意思決定を容易にする。
【0023】
図2は、第2のコンピューティングデバイスに対して行われる少なくとも1つの診断テストについての予測結果に関する情報をユーザに提供し、第1のコンピューティングデバイスを使用して診断を行うための実施形態による信号伝達を示している。図示されたプロセスは、
図1のシステム101を使用して実行されてもよい。図示されたプロセス(及びそれに続く図示されたプロセスも)は、1つの第2のコンピューティングデバイスに対して作用する第1のコンピューティングデバイスについて述べているが、他の実施形態においては、多数の第2のコンピューティングデバイスが第1のコンピューティングデバイスによって同じように同時に(すなわち、並行して)取り扱われてもよい。
【0024】
図2を参照すると、まず、ブロック201において、リモートコンピューティングシステムは、複数のコンピューティングデバイスに関する複数の診断レポートを診断レポートデータベースに保持すると想定する。各診断レポートは、複数のコンピューティングデバイスのうち1つのコンピューティングデバイスに対して行われた1つ以上の診断テストの結果及び上記コンピューティングデバイスを特徴付ける1つ以上のデバイスパラメータのセットを含む。複数のコンピューティングデバイスのうち1つのコンピューティングデバイスに対して行われた1つ以上の診断テストの上記結果は、特定のコンピューティングデバイスに対して行われた1つ以上の診断テスト(又はプロセス)と、上記1つ以上の診断テストのそれぞれの成果(又は診断)と、に関する情報を少なくとも含んでいてもよい。診断テストの成果に関する情報は、その診断テストがポジティブ診断又はネガティブ診断を示した(すなわち、そのコンピューティングデバイスの、関連する1つ又は複数のコンポーネントの正常な動作又は故障を示した)か否かを少なくとも示してもよい。幾つかの実施形態においては、診断テストの成果に関する情報は、検出された故障(例えば、エラーコードという形で)及び/又はその診断テストの継続時間に関する更なる情報も提供してもよい。1つ以上の診断レポートが複数のコンピューティングデバイスのそれぞれについて保持されてもよい。任意のコンピューティングデバイスについての1つ以上のデバイスパラメータのセットは、例えば、コンピューティングデバイスの製造業者、モデル、製造の年又は日付、国際移動体装置識別番号(IMEI)若しくは他の機器識別子、ハードウェア情報(例えば、コンポーネント情報)、少なくとも1つのメモリの種類及び/又は容量、オペレーティングシステム、ログ履歴の少なくとも一部、及び/又はコンピューティングシステムの使用年数、のうちの1つ以上を含んでいてもよい。考えられるデバイスパラメータの、より包括的なリストを
図2についての記述の後に提供する。
【0025】
第1のコンピューティングデバイスが、メッセージ202において、第1のコンピューティングデバイスに電気的に接続された第2のコンピューティングデバイスを特徴付ける1つ以上のデバイスパラメータの第1のセットを、第2のコンピューティングデバイスのメモリから取得すると、ユーザが第2のコンピューティングデバイスを診断するための診断テストを選択するのをガイドするプロセスが開始する。メッセージ202における取得は、第1及び第2のコンピューティングデバイス間の接続の確立に応答して(例えば、USBケーブル又はその他のケーブルによる2つのデバイスの接続に応答して)開始されてもよい。一実施形態によると、第2のコンピューティングデバイスのメモリから1つ以上のデバイスパラメータを取得することに加え、第1のコンピューティングデバイスは、リモートコンピューティングシステムから1つ以上の更なるデバイスパラメータも取得し、これらのパラメータは、データベースに保持される。一実施形態によると、上記更なるデバイスパラメータは、診断レポートが診断レポートデータベースに保持されているのと同じリモートコンピューティングシステムに保持される。
【0026】
第1のセットにおける1つ以上のデバイスパラメータは、診断レポートの内容に関連して上記に述べたように定義されてもよい。上記取得は、具体的には、第1のコンピューティングデバイスよって、デバイスパラメータのリクエストを第2のコンピューティングデバイスに送信すること、及び第2のコンピューティングデバイスにおけるそのリクエストの受信に応答して、第2のコンピューティングデバイスによって、1つ以上のデバイスパラメータの第1のセットを、第2のコンピューティングデバイスのメモリから取得し、それらを第2のコンピューティングデバイスから第1のコンピューティングデバイスに送信することを具備していてもよい。メッセージ202における取得後、第1のコンピューティングデバイスは、メッセージ203において、第2のコンピューティングデバイスを特徴付ける1つ以上のデバイスパラメータの第1のセット(又は少なくともその中のサブセット)を、通信ネットワークを介してリモートコンピューティングシステムに送信する。1つ以上のデバイスパラメータの第1のセットは、第2のコンピューティングデバイスに対する1つ以上の診断テストの結果を予測するための別のリクエスト内で、又は第1のコンピューティングデバイスの通常の報告動作の一部として送信されてもよい。幾つかの代替の実施形態においては、第2のコンピューティングデバイスが1つ以上の自身のデバイスパラメータを(通信ネットワークを介して)リモートコンピューティングシステムに送信してもよい。幾つかの実施形態においては、ブロック202における取得は、第2のコンピューティングデバイスの第1のコンピューティングデバイスへの電気的な接続に応答して、自動的に開始されてもよい。
【0027】
ブロック204において、通信ネットワークを介して第1のコンピューティングデバイスから、第2のコンピューティングデバイスを特徴付ける(又は定義付ける)1つ以上のデバイスパラメータの第1のセットの受信したことに応答して、リモートコンピューティングシステムは、ブロック204において、1つ以上のデバイスパラメータの第1のセットと、診断レポートデータベースに保持されている複数の診断レポートに含まれるデバイスパラメータの複数のセットと、を比較する。具体的には、リモートコンピューティングシステムは、第1のセットと複数のセットのそれぞれとを比較し、第2のコンピューティングデバイスに関連する1つ以上の診断レポートを見つけてもよい。一致するデバイスパラメータを有する診断レポートは、それらが第2のコンピューティングデバイスと同じ、又は同様のコンピューティングデバイスに対応しているため、第2のコンピューティングデバイスに関連する(適用できる又は該当する)と考えられる。よって、上記比較は、複数の診断レポートから第1のセットにおける1つ以上のデバイスパラメータと一致するものを検索することを含んでいてもよい。一致は、完全一致、及び/又は、近接若しくは部分一致である(例えば、ある診断レポートにおいて与えられた少なくとも幾つかのデバイスパラメータが、第1のセットにおける1つ以上のデバイスパラメータに一致するか、又はある診断レポートにおいて与えられたデバイスパラメータの全てのセットと、1つ以上のデバイスパラメータの第1のセットとが、ある程度相互に関連している)ことを要してもよい。上記比較においては各デバイスパラメータに対し異なる重要度又はウエートが適用されてもよい。例えば、スマートフォンである第2のコンピューティングデバイスに対する容認できる部分的一致は、同じモデルで、1年以内の同じ使用年数であるが、クロックレートが高いプロセッサを有しているスマートフォンであり得る。言い換えると、上記比較において、コンピューティングデバイスのモデル及びコンピューティングデバイスの使用年数というデバイスパラメータに対してより大きなウエートを適用し、一方、プロセッサのクロックレートというデバイスパラメータにはより小さいウエートを適用してもよい。一実施形態による比較工程をさらに詳しく
図3に関連して説明する。
【0028】
ブロック204における比較、又はより具体的には、1つ以上の関連する診断レポートの結果に基づいて、リモートコンピューティングシステムは、ブロック205において、第2のコンピューティングデバイスに対して1つ以上の診断テストが行われた時のその1つ以上の診断テストの結果を、統計的分析を使用することによって、1つ以上の関連する診断レポートにおける1つ以上の診断テストの結果に基づいて予測する。この予測は、第2のコンピューティングデバイスに対して1つ以上の診断テストが行われた時のその1つ以上の診断テストのそれぞれについてのポジティブ(すなわち、好ましい)診断の予測確率(すなわち、各診断テストが第2のコンピューティングデバイスの対応するコンポーネントにおける故障、不具合、又は破損を示すことができない確率)を少なくとも査定することを含んでいてもよい。1つ以上の関連する診断レポートが、完全に一致するコンピューティングデバイスに関する診断レポートだけでなく、第2のコンピューティングデバイスに部分的にしか一致していない1つ以上のコンピューティングデバイスも含んでいる場合は、不一致の程度が予測において考慮されてもよい。例えば、予測において、完全又は高度に一致する診断レポートが、中程度に一致している診断レポートよりも重視されてもよい。
【0029】
全体として、第2のコンピューティングデバイスに対して行われた時の1つ以上の診断テストの予測結果は、その診断テストの結果から導き出した1つ以上の統計的メトリックを、各診断テストについて含んでいてもよい。上記1つ以上の統計的メトリックは、例えば、ポジティブ診断の上記予測確率及び1つ以上の関連する不確実性メトリック(例えば、その予測が基づく診断レポートの数)を含んでいてもよい。
【0030】
幾つかの実施形態においては、リモートコンピューティングシステムは、ブロック205において、最も不具合がある可能性がある第2のコンピューティングデバイスの1つ以上のコンポーネントを、1つ以上の関連する診断レポートに基づいて予測する。この予測は、各診断テストが特定のコンポーネント又は特定のグループのコンポーネントの機能に関する情報を提供してもよいため、1つ以上の診断テストについてのポジティブ診断の上記予測確率に基づいていてもよい。典型的に不具合があると考えられる1つ以上のコンポーネントは、少なくとも1つの診断テストが予め定義された閾値を下回る予測確率を有するポジティブ診断を提供すると予測される予め定義された数のコンポーネント又は全てのコンポーネントを含むよう定義されてもよい。
【0031】
最近のモバイルデバイスは、例えば、多数のマイク及び/又は多数のスピーカ等の、同じ種類のコンポーネントのグループを含んでいることがある。一実施形態によると、スピーカに対する診断テストは、スピーカのグループ全体、またはその中のサブグループの機能に関する情報を提供する。例えば、その診断テストは、すべてのスピーカ、可聴音を生成するスピーカのみ、又はマイクとして(「逆に」)機能するスピーカのみ、に関する情報を提供してもよい。一実施形態によると、診断テストは、特定のスピーカの機能に関する情報を提供する。例えば、診断テストは、通話中に電気信号を可聴音に変換するよう設計されたフロントスピーカの機能に関する情報を提供してもよい。
【0032】
リモートコンピューティングシステムは、ブロック205において一旦予測をすると、メッセージ206において、第1のコンピューティングデバイスのユーザが、第2のコンピューティングデバイスを診断するための適切な診断テスト選択するのをガイドするため、その予測の結果を、通信ネットワークを介して第1のコンピューティングデバイスに送信する。予測の結果は、第2のコンピューティングデバイスに対し1つ以上の診断テストが行われた時のその1つ以上の診断テストのそれぞれについてのポジティブ診断の予測確率に関する情報、及び/又は第2のコンピューティングデバイスの不具合が起こる可能性が高い1つ以上のコンポーネントに関する情報を少なくとも含んでいてもよい。予測の結果は、さらに、確率を予測するために使用された情報及び各確率予測がどれくらい信頼できるかに関する情報(例えば、いくつの診断レポートが関連していると考えられ、したがって予測に使用されたか)のいずれかを含んでいてもよい。幾つかの実施形態においては、第1のコンピューティングデバイスに送信された予測の結果は、特定の診断テストが行われるべきであるかどうかに関する推奨を含んでいてもよい。このような推奨は、例えば、ある診断テストについてポジティブ診断の確率が予め定義された閾値を下回る場合に、第1のコンピューティングデバイスに送信された情報に含まれていてもよい。
【0033】
幾つかの実施形態においては、ポジティブ診断の確率(すなわち、成功率)の代わりに、ネガティブ診断の確率(すなわち、故障率)が(ブロック205において)算出され、(ブロック206において)第1のコンピューティングデバイスに送信されてもよい。
【0034】
第1のコンピューティングデバイスは、ブロック207において、少なくとも予測の結果(及び場合によっては他の診断ガイダンス情報)を受信し、次に(又は結果的に)、ブロック207において、上記情報を、ユーザに対して第1のコンピューティングデバイスのディスプレイを介して表示する。1つ以上の診断テストに関する予測の結果を第1のコンピューティングデバイスに提供し、それらを第1のコンピューティングデバイスのユーザに対して表示することにより、どの診断テストを(もしあるなら)、第1のコンピューティングデバイスを使用して第2のコンピューティングデバイスを診断するために行うべきかに関する決定が容易になる。具体的には、表示された情報に基づき、ユーザは、第2のコンピューティングデバイスの様々な特性(すなわち、デバイスパラメータ)を考慮して、どの診断テストがネガティブ診断を出す可能性が低いかを決定してもよく、したがって、診断を行う時間が限られている場合は、比較的安全にスキップすることができる。
【0035】
第1のコンピューティングデバイスは、第1のコンピューティングデバイスのユーザ入力デバイスを介した1つ以上の診断テストの選択を確認するユーザ入力を受信したことに応答して、メッセージ209において、第2のコンピューティングデバイスを診断するための、1つ以上の選択された診断テストを行わせる。
【0036】
幾つかの実施形態においては、1つ以上の選択された診断テスト(又はそれらのうちの少なくとも1つ)が、メッセージ209において、以下のように行われてもよい。まず、第1のコンピューティングデバイスは、第2のコンピューティングデバイスによって少なくとも1つの診断テストを行うため及び上記少なくとも1つの診断テストの結果を第1のコンピューティングデバイスに折り返し報告するための診断テストプログラム(又は単に命令)を生成する。そして、第1のコンピューティングデバイスは、上記診断テストプログラムを第2のコンピューティングデバイスに送信する。第2のコンピューティングデバイスには、特定の診断ソフトウェアを事前にインストールする必要はない。第2のコンピューティングデバイスは、上記診断テストプログラムを受信したことに応答して、その診断テストプログラムを実行する。その診断テストプログラムの実行は、完全に自動化されてもよいし、又は1つ以上の段階において、第2のコンピューティングデバイスのユーザ入力デバイス(例えば、タッチスクリーン、プッシュボタン、又は加速度センサ)を介したユーザ入力を必要としてもよい。例えば、診断テストプログラムが、スピーカの診断に関係している場合は、第2のコンピューティングデバイスは、基準音が発せられると、ユーザにこの基準音が聞こえるかを確認するよう促してもよい。別の例を挙げると、第2のコンピューティングデバイスのプッシュボタン(例えば、ホームキー)の診断は、ユーザにこのプッシュボタンを押すよう要求してもよい。診断テストプログラムは、第2のコンピューティングデバイスに、診断テストプログラムによって定義された少なくとも1つの診断テストの結果を第1のコンピューティングデバイスに送信するよう命令する。診断テストプログラムに従って、結果は、上記少なくとも1つの診断テストの完了後に自動的に送信されてもよい。代替として、ユーザは、まず、第2のコンピューティングデバイスによって、送信を承認するよう促され、第2のコンピューティングデバイスのユーザ入力デバイスを介してユーザが承認をしたこの場合にのみ応答して、結果が送信されてもよい。幾つかの実施形態においては、診断テスト毎に、別個の診断テストプログラムが生成されてもよく、一方別の実施形態においては、1つ以上の選択された診断テストのすべてが、1つの診断テストプログラムによってカバーされてもよい。
【0037】
幾つかの代替の実施形態においては、1つ以上の診断テストの選択及び上記1つ以上の診断テストの実施は、ブロック207において受信された情報に基づいて(例えば、異なる診断テストの成功率に基づいて)自動的に行われてもよい。よって、このような実施形態においては、少なくともブロック208は省略される。
【0038】
実施形態によるプロセスによれば、1つ以上の診断テストの予測結果に関するデバイス固有の情報(及び場合によっては他の診断ガイダンス情報)が第1のコンピューティングデバイスのユーザに提供されるので、診断テストの選択の決定は、ユーザの専門知識のみに依存しないため、第1のコンピューティングデバイスのユーザは、診断テストの選択に関して、より多くの情報に基づいた、より目的にかなった決定を行うことが可能であるという利点がある。第1のコンピューティングデバイスのユーザが、1つ以上の診断テストの予測結果に関するデバイス固有の情報を入手できない場合は、ユーザは、極めて重要な診断テストの実施をスキップすることによって第2のコンピューティングデバイスのいずれかのコンポーネントにおける故障を見逃す危険を回避するために、第2のコンピューティングデバイスに対して利用できる診断テストをそれぞれ行わなければならないであろう。言い換えると、実施形態によれば、ネガティブ診断の見逃しの可能性を最小限にする方法で、診断テストを行う際の時間節約が可能になる。
【0039】
幾つかの実施形態においては、第1のコンピューティングデバイスによって取得された1つ以上のデバイスパラメータ及び/又は各診断レポートに含まれている1つ以上のデバイスパラメータは、問題のデバイスに関する以下のハードウェア関連情報のうち1つ以上を含んでいてもよい:製造業者名、名称、モデル、製造年、又は月日、デバイスの識別子、IMEI、シリアルナンバー、内部モデル、シャーシの種類、ルート化(すなわち、ルート化されている/ルート化されていない)、コンピューティングデバイスのプロセッサの(クロック)速度、コンピューティングデバイスのプロセッサの製造業者、コンピューティングデバイスのプロセッサのモデル、コンピューティングデバイスの1つ以上のメモリの少なくとも幾つかに関する情報、及びコンピューティングデバイスのログ履歴の少なくとも一部。
【0040】
1つ以上のデバイスパラメータに含まれる、コンピューティングデバイスのシャーシの種類に関する情報は、例えば、シャーシのフォームファクタ、シャーシの材質及び/又はシャーシの製造業者に関する情報を含んでいてもよい。一実施形態によると、シャーシの種類に関する情報は、シャーシが一部又は全部がプラスチック製又は金属製であるかどうかを示す。一実施形態によると、シャーシの種類に関する情報は、シャーシが特別なカバー、保護層、コーティング、表面処理によって補強されているかどうかを示す。
【0041】
コンピューティングデバイスの1つ以上のメモリの少なくとも幾つかに関する情報は、例えば、そのデバイスの1つ以上のメモリのそれぞれ又は幾つかの名称、上記1つ以上のメモリのそれぞれ又は幾つかの容量(例えば、メガバイトで示される)、上記1つ以上のメモリのそれぞれ又は幾つかの種類、上記1つ以上のメモリのそれぞれ又は幾つかのシリアルナンバー、上記1つ以上のメモリのそれぞれ又は幾つかの販売業者、及び/又は上記1つ以上のメモリからの状態監視情報を含んでいてもよい。一実施形態によると、状態監視情報は、コンピューティングデバイスのハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)又は埋め込みマルチメディアコントローラ(eMMC)ドライブの、内蔵 S.M.A.R.T. (セルフモニタリング・アナリシス・アンド・リポーティング・テクノロジー)システムによって検出される指標を含んでいてもよい。一実施形態によると、状態監視情報は、上記1つ以上のメモリにおける不良メモリユニット(ブロック又はセクタ)の数又は割合に関する情報を含んでいてもよい。
【0042】
幾つかの実施形態においては、第1のコンピューティングデバイスによって取得された1つ以上のデバイスパラメータ及び/又は各診断レポートに含まれている1つ以上のデバイスパラメータは、さらに、問題のデバイスに関する以下のソフトウェア関連の情報の1つ以上を含んでいてもよい:オペレーティングシステムの名称、オペレーティングシステムのバージョン、診断テスト(1つ又は複数)を行うために使用されるソフトウェア、診断テスト(1つ又は複数)を行うために使用されるソフトウェアのバージョン、及び診断テスト(1つ又は複数)を行うために使用されるソフトウェアのソース又は販売業者。
【0043】
幾つかの実施形態においては、第1のコンピューティングデバイスによって取得された1つ以上のデバイスパラメータ及び/又は各診断レポートに含まれている1つ以上のデバイスパラメータは、コンピューティングデバイスの使用年数及び/又はコンピューティングデバイスの有効年数(例えば、コンピューティングデバイスのログ履歴の少なくとも一部又はそのコンピューティングデバイスのバッテリの容量劣化に基づいて査定される)を含んでいてもよい。明らかに、ほとんど新品のスマートフォン(又は他のコンピューティングデバイス)は、3年使用した同じスマートフォンよりも故障する確率はかなり低い。よって、コンピューティングデバイスの(有効)年数は、1つ以上の関連する診断レポートを決定する(ブロック204において)際、及び1つ以上の診断テストの結果を予測する(ブロック205において)際に、非常に重要な要因であるかもしれない。全体として、有効年数は、コンピューティングデバイスの性能が(新品のコンピューティングデバイスの最適な性能と比較して)どれくらい劣化したかを定量化するメトリックとして定義されてもよい。有効年数は、コンピューティングデバイスが、その耐用年数の間にどのくらい酷使されたかを示すものであってもよい。使用年数及び/又は有効年数は、年、月、日、及び、場合によっては負ではない整数で表されてもよい。
【0044】
第1のコンピューティングデバイスにより取得された1つ以上のデバイスパラメータ及び/又は各診断レポートに含まれている1つ以上のデバイスパラメータは、そのコンピューティングデバイスの使用履歴を、追加的に、または代替的に含んでいてもよい。一実施形態によると、コンピューティングデバイスの使用履歴に関する情報は、そのコンピューティングデバイスのログ履歴の少なくとも一部に含まれている。例えば、使用履歴は、そのコンピューティングデバイスがどのくらい活発に、及びどのような種類のタスクに対して使用されたかを明らかにしてもよい。この情報は、重要であるかもしれない。なぜなら、時折の通話のみに使用されたスマートフォンは、音楽再生、ビデオチャット、モバイルアクセスポイントの設定、及び拡張現実に基づくゲーム等の様々な負荷の大きいタスクのために広く使用されたスマートフォンと比べて、破損の可能性が低いからである。このような使用履歴の差は、コンピューティングデバイスの有効年数の差としてもおそらく目に見えるであろう。
【0045】
一実施形態によると、上記ログ履歴の少なくとも一部は、メモリログの少なくとも一部、コンピューティングデバイスにインストールされたアプリケーションのログ、バッテリ充電ログ及び/又はバッテリ温度ログである。一実施形態によると、メモリログは、コンピューティングデバイスの1つ以上のメモリにおける不良メモリユニット(ブロック又はセクタ)の数又は割合に関する情報を含んでいてもよい。一実施形態によると、バッテリ充電ログは、モバイルデバイスのバッテリが何回充電及び/又は放電されたかに関する情報を含む。一実施形態によると、バッテリ温度ログは、バッテリがさらされた最高温度及び最低温度、及びさらされた時間の長さに関する情報を含む。
【0046】
図3は、第2のコンピューティングデバイスについての1つ以上の診断テストの予測結果に関する情報をユーザに提供するために、一実施形態によるリモートコンピューティングシステムによって行われるプロセスを示している。図示されたプロセスは、
図2のブロック201,204,205、及びメッセージ206においてリモートコンピューティングシステムによって行われるプロセスの代替である。図示されたプロセスは、
図1のリモートコンピューティングシステム101によって行われてもよい。特に記載のない限り、先の実施形態に関して与えた定義は、ここでも適用されてもよいものとする。
【0047】
図2と同様に、まず、ブロック301において、リモートコンピューティングシステムは、複数の診断レポートを診断レポートデータベースに保持するものと想定する。リモートコンピューティングシステムは、ブロック302において、第2のコンピューティングデバイスを特徴付ける1つ以上のデバイスパラメータの第1のセットに関する情報を、通信ネットワークを介して第1のコンピューティングデバイスから受信する。ブロック301及び302は、
図2のブロック201,204(「受信」のみ)に対応してもよい。
【0048】
図3に示す実施形態においては、
図2のブロック204に関して説明した比較が、ブロック303から307に分割される。前処理段階において、リモートコンピューティングシステムは、ブロック303において、第1のコンピューティングデバイスから受信した1つ以上のデバイスパラメータに基づいて、第2のコンピューティングデバイスのデバイスカテゴリを識別する。デバイスカテゴリは、デバイスパラメータのうちの1つであってもよく、又は1つ以上のデバイスパラメータに基づいて識別されてもよい。使用可能なデバイスカテゴリは、例えば、携帯電話(又はスマートフォン)、タブレットコンピュータ、デスクトップコンピュータ、ラップトップ、大容量記憶媒体、スマートウォッチ、デジタルスチルカメラ、デジタルビデオカメラ、モバイルインターネットデバイス、携帯情報端末(PDA)、携帯型ゲーム機、計算機、及びパーソナルナビゲーションデバイス、又は上記カテゴリの任意のサブセットを含んでいてもよい。1つの実施形態においては、使用できるデバイスカテゴリは、モバイルデバイスと、デスクトップコンピュータと、ラップトップである。
【0049】
幾つかの実施形態においては、デバイスカテゴリは、より限定的に定義されてもよい。例えば、デバイスカテゴリは、ある製造業者に固有のものであってもよい。つまり、サムスン社のスマートフォンとアップル社のスマートフォンは、異なるデバイスカテゴリとして定義されてもよい。その他のデバイスパラメータ(例えば、メモリの種類、オペレーティングシステム)に基づく同様の限定が他の実施形態において適用されてもよい。
【0050】
リモートコンピューティングシステムは、ブロック304において、第1のセットにおける1つ以上のデバイスパラメータのうち少なくとも1つと、識別されたデバイスカテゴリとに基づいてベクトルを生成する。具体的には、識別されたデバイスカテゴリに基づき、第1のセットからの1つ以上のデバイスパラメータの特定のサブセットが、ベクトルの要素として選択される。各ベクトルの各要素は、第2のコンピューティングデバイスの特定の特徴又は複数の特徴に対応する(割り当てられる)数値を有していてもよい。それをもとにベクトルが生成される少なくとも1つ以上のデバイスパラメータのうちの少なくとも1つは、識別されたカテゴリに属する第2のコンピューティングデバイスを診断するために適切又は重要であると考えられるデバイスパラメータのみを含んでいてもよい。ベクトルの各要素は、デバイスパラメータに直接対応してもよいし、又は1つ以上のパラメータに基づいて生成されてもよい(例えば、そのデバイスパラメータが数値を有していない場合及び/又は要素を生成するために多数のデバイスパラメータが使用される場合)。
【0051】
非常に単純な例を挙げると、スマートフォン用のベクトルは、製造業者、モデル、メモリの容量を記述する3つの値を含んでいてもよい。第2のコンピューティングデバイスが、例えば、アップル社の、64ギガバイトのメモリを搭載したiPhone(登録商標)8である場合は、第2のコンピューティングデバイスについて生成されたベクトルは[111]であってよい。言い換えると、「アップル社」がベクトルの最初の要素の1という数値に割り当てられてもよく、「iPhone8」がベクトルの2番目の要素の1という数値に割り当てられてもよく、「64ギガバイト」がベクトルの3番目の要素の1という数値に割り当てられてもよい。この方式においては、ベクトル[112]は、例えば、アップル社、iPhone(登録商標)8、128ギガバイトに対応してもよく、ベクトル[122]は、例えば、アップル社、iPhone(登録商標)9、128ギガバイトに対応してもよい。
【0052】
リモートコンピューティングシステムは、ブロック305において、第2のコンピューティングデバイスに関連付けられたベクトルと、複数の診断レポートにおける1つ以上のデバイスパラメータの1つ以上のセットに基づいて複数のコンピューティングデバイスのうち1つ以上のコンピューティングデバイスに対して生成された1つ以上の対応するベクトルとを、比較する。ここで、この1つ以上のコンピューティングデバイスは、具体的には、第2のコンピューティングデバイスと同じデバイスカテゴリのコンピューティングデバイスであってもよい。1つ以上の対応するベクトルは、第2のコンピューティングデバイス用のベクトルの生成後(又はそれと同時に)生成されてもよい。代替として、1つ以上の対応するベクトルのそれぞれが先に(すなわち、
図3のプロセスを行う前に)、例えば、リモートコンピューティングシステムがその特定のコンピューティングデバイスに関する診断レポートを受信したときに、生成されてもよい。生成されたベクトルは、診断レポートデータベース内に保持されてもよい。
【0053】
幾つかの実施形態においては、ブロック305における比較は、具体的には、第2のコンピューティングデバイスのベクトルについて、第2のコンピューティングデバイスのベクトルと、(同じデバイスカテゴリの)他のコンピューティングデバイスの、対応する1つ以上のベクトルと、の差(又は距離)を定量化する距離メトリックの値を算出することを含んでいてもよい。距離メトリックは、下記の式を用いて算出されてもよいユークリッド距離dであってもよい。
【0054】
【0055】
ここで、iは、指標であり、nは、各ベクトルにおける要素数、q=[q1、q2…qn]は、複数の診断レポートと関連付けられた1つ以上のコンピューティングデバイスのうちの1つのベクトルであり、p=[p1、p2...pn]は、第2のコンピューティングデバイスのベクトルである。ユークリッド距離の代わりに、2つのベクトルの差を他の(距離)メトリックを用いて定量化してもよい。例えば、重み付きユークリッド距離が使用されてもよい。重み付きユークリッド距離dwは、以下の式を用いて定義されてもよい。
【0056】
【0057】
ここで、wiは、各ベクトル要素について(つまり各指標iについて)別々に定義されてもよい重み係数である。3つの要素のベクトルの上記の例を参照すると、製造業者(つまり、最初の要素)は、例えば、最も大きい重み係数を有していてもよく、メモリの容量(つまり、3番目の要素)は、最も小さい重み係数を有していてもよい。その他の実施形態においては、距離メトリックとして、標準化されたユークリッド距離が使用されてもよい。
【0058】
幾つかの実施形態においては、ブロック304におけるベクトル生成は、識別されたデバイスカテゴリに依存しなくてもよいが、ブロック305における比較は、識別されたデバイスカテゴリの1つ以上のコンピューティングデバイスについてのみ行われるようにしてもよい。
【0059】
ブロック305における比較に基づき、リモートコンピューティングシステムは、ブロック306において、予め定義された基準に従って、第2のコンピューティングデバイスと同じデバイスカテゴリに関連付けられた1つ以上のベクトルのうち1つ以上が、第2のコンピューティングデバイスのベクトルに一致するか否かを判定する。具体的には、予め定義された基準は、第2のコンピューティングデバイスのベクトルと、一致するベクトルとの間の距離メトリックの値が予め定義された(上限)閾値未満であるべきであることを定義してもよい。
【0060】
ブロック306において一致が見つけられなければ、リモートコンピューティングシステムは、ブロック310において、任意の診断テストの結果の予測の失敗に関する情報を、通信ネットワークを介して、第1のコンピューティングデバイスに送信してもよい。幾つかの実施形態においては、ブロック310は省略してもよい。
【0061】
ブロック306において、予め定義された基準に従った1つ以上の一致が見つかった場合は、リモートコンピューティングシステムは、ブロック307において、上記1つ以上の一致する(第2のコンピューティングデバイスのベクトルに一致する)ベクトルに関連付けられた1つ以上の診断レポートを、第2のコンピューティングデバイス用の分類クラスターとして選択する。幾つかの実施形態においては、分類クラスターは、各診断テストについて別々に定義されてもよい。分類クラスターは、第2のコンピューティングデバイスの対応するデバイスパラメータに、関連するデバイスパラメータが十分高度に一致する診断レポートのセットを表している。分類クラスター(単数又は複数)は、
図2のブロック204に関連して述べた1つ以上の関連する診断レポートに対応してもよい。
【0062】
リモートコンピューティングシステムは、ブロック308において、統計的分析を用いて、分類クラスターにおける1つ以上の診断レポートに基づき、第2のコンピューティングデバイスに対する1つ以上の診断テストの結果を予測する。予測は、
図2に関連して説明したものと同様に行われてもよいが、この場合において、ブロック308における予測は、分類クラスターに限定され、各関連する診断レポートに含まれる診断情報の代替として、またはそれに加えて、分類クラスターに関連付けられたベクトルに基づいていてもよいことが異なっている。
【0063】
また、
図2の実施形態と同様に、リモートコンピューティングシステムが、ブロック308において、第2のコンピューティングデバイスに対する1つ以上の診断テストの結果の予測を一旦行うと、リモートコンピューティングシステムは、メッセージ309において、その予測の結果に関する情報 (例えば、各診断テストについてのネガティブ診断又はポジティブ診断の確率及び/又は不具合の可能性が最も高い1つ以上のコンポーネントに関する情報)を、通信ネットワークを介して、第1のコンピューティングデバイスに送信する。
【0064】
幾つかの実施形態においては、ブロック303(つまり、デバイスカテゴリの識別)に関連して説明した前処理を省略してもよい。それに続くブロック306から309における分析は、それらの場合、第2のコンピューティングデバイスと複数の診断レポートとに関連付けられたデバイスカテゴリに関係なく行われてもよい。つまり、第2のコンピューティングデバイスと同じデバイスカテゴリ(例えば、スマートフォン)に対応する診断レポートのみを分析する代わりに、複数の診断レポート(及び対応するベクトル)すべてがブロック306から309に関わっていてもよい。
【0065】
図4は、第2のコンピューティングデバイスに対する1つ以上の診断テストの予測結果に関する情報をユーザに提供する別の代替プロセスを示している。図示されたプロセスは、
図2のブロック201,204,205、及びメッセージ206において、リモートコンピューティングシステムによって行われるプロセス、及び
図3のプロセスの代替である。図示されたプロセスは、
図1のリモートコンピューティングシステム101によって行われてもよい。特に記載のない限り、先の実施形態に関して与えた定義は、ここでも適用されてもよい。
【0066】
図4を参照すると、最初のブロック401及び402は、
図3のブロック301及び302に対応していてもよい。よって簡潔にするためここでは解説しない。リモートコンピューティングシステムは、ブロック402において、1つ以上のデバイスパラメータの第1のセットを受信したことに応答して、ブロック403において、第2のコンピューティングデバイスの1つ以上のコンポーネントのそれぞれについて、第1のコンピューティングデバイスから受信した、1つ以上のデバイスパラメータの第1のセットに基づき、コンポーネント固有の1つ以上のデバイスパラメータの第2のセットを決定する。各第2のセットは、第1のセットのサブセットであってもよい。各第2のセットにおける1つ以上の、コンポーネント固有のデバイスパラメータは、例えば、コンポーネントの製造業者及び/又はコンポーネントのモデルを含んでいてもよい。さらに、各第2のセットにおける1つ以上の、コンポーネント固有のデバイスパラメータは、そのコンポーネントの種類による、1つ以上のコンポーネント固有のデバイスパラメータを含んでいてもよい。例えば、問題のコンポーネントが、フロントカメラ又はバックカメラである場合、対応する第2のセットにおける、1つ以上のコンポーネント固有のデバイスパラメータは、カメラの解像度及び/又は光学式手ぶれ補正(OIS)への対応(または非対応)、又は単にカメラの製造業者を含んでいてもよい。別の例として、問題のコンポーネントが、マスメディアドライブ(例えば、HDD又はSSD)である場合は、1つ以上のデバイス固有のデバイスパラメータは、S.M.A.R.T.(セルフモニタリング・アナリシス・アンド・リポーティング・テクノロジー)監視システム対応であることを含んでいてもよい。幾つかのデバイスパラメータ(例えば、満の年で表示された、第1のコンピューティングデバイスの使用年数及び/又は有効年数)は、コンポーネント固有のデバイスパラメータの第2のセットのすべて、又はほとんどに含まれていてもよい。
【0067】
そして、リモートコンピューティングシステムは、ブロック404において、診断レポートデータベースから、1つ以上のコンポーネント固有のデバイスパラメータの第2のセットのうち1つ以上との一致を検索する。1つ以上のコンポーネント固有のパラメータの第2のセットによって定義された特定のコンポーネントのこの検索は、デバイスカテゴリ等の、コンピューティングデバイスのその他の特徴又は特性のすべてを無視してもよい。従って、スマートフォンのバックカメラを定義する、1つ以上のコンポーネント固有のデバイスパラメータの第2のセットとの一致は、例えば、同じ、若しくは類似のバックカメラを有するスマートフォンと関連付けられた1つ以上の診断レポート及び/又は同じ若しくは類似のバックカメラを有するタブレットコンピュータと関連付けられた1つ以上の診断レポートを含んでいてもよい。その一致は、完全一致及び/又は略一致若しくは部分的一致であること要していてもよい。各第2のセットにおける各デバイスパラメータに対して、異なる重要度又はウエートが適用されてもよい。
【0068】
ブロック405において、1つ以上のコンポーネント固有のデバイスパラメータの第2のセットの少なくとも1つとの、少なくとも1つの一致が見つかった場合、リモートコンピューティングシステムは、ブロック406において、少なくとも1つの一致が見つかった1つ以上のコンポーネント固有のデバイスパラメータの各第2のセットのそれぞれについて、1つ以上の対応する一致と関連付けられた1つ以上の診断レポートを、上記コンポーネント用の、コンポーネント固有の分類クラスターとして選択する。続いて、リモートコンピューティングシステムは、ブロック407において、1つ以上のコンポーネント固有の分類クラスターに基づいて、1つ以上の診断テストの結果を予測する。分類クラスターについてのコンポーネント固有の定義とは別に、予測は、
図3のブロック309に関連して説明したように行われてもよい。さらに、ブロック408及び409に関連する動作は、
図3のブロック309及び310に関連して説明した動作に対応していてもよい。
【0069】
図5は、第2のコンピューティングデバイスに対する1つ以上の診断テストの予測結果に関する情報をユーザに提供する別のプロセスを示している。このプロセスにおいては、
図4と同様に、予測は、デバイスレベルだけでなく、コンポーネントレベルで行われる。
図4と対照的に、
図5のプロセスは、
図3と同様に、ベクトルを生成するという概念も採用している。よって、
図5のプロセスは、
図3と
図4に示された実施形態の組み合わせであると考えられてもよい。図示されたプロセスは、
図2のブロック201,204,205、及びメッセージ206において、リモートコンピューティングシステムによって行われるプロセス、及び
図3のプロセスの代替である。図示されたプロセスは、
図1のリモートコンピューティングシステム101によって行われてもよい。特に記載のない限り、先の実施形態に関して与えた定義は、ここでも適用されてもよい。
【0070】
図5を参照すると、最初のブロック501及び502は、
図3のブロック301及び302に対応していてもよい。よって簡潔にするためここでは解説しない。
図5のプロセスの基本的な考え方は、
図3のプロセスをコンポーネントレベルで(デバイスレベルではなく)適用することである。よって、リモートコンピューティングシステムは、ブロック502において1つ以上のデバイスパラメータの第1のセットを受信したことに応答して、ブロック503において1つ以上のデバイスパラメータの第1のセットに基づき、第2のコンピューティングデバイスの1つ以上のコンポーネントのそれぞれのコンポーネントカテゴリ(例えば、スクリーン、バックカメラ、又はタッチセンサ)を識別する。その後、リモートコンピューティングシステムは、ブロック504において、1つ以上のデバイスパラメータの第1のセット及び1つ以上の識別されたコンポーネントカテゴリに基づき、上記1つ以上のコンポーネントのそれぞれについてコンポーネント固有のベクトルを生成する。各コンポーネント固有のベクトルの各要素は、第2のコンピューティングデバイスの特定のコンポーネントの特定の特徴又は複数の特徴に対応する(又は割り当てられる)数値を有していてもよい。コンポーネント固有のベクトルがそれに基づいて生成される、1つ以上のデバイスパラメータのうち上記少なくとも1つは、第2のコンピューティングデバイスのその特定のコンポーネントを診断するために適切である又は重要であると考えられるデバイスパラメータのみを含んでいてもよい。コンポーネント固有のベクトルの各要素は、デバイスパラメータに直接対応していてもよいし、又は、1つ以上のデバイスパラメータに基づいて生成されてもよい(例えば、その1つ以上のデバイスパラメータが数値を有していない場合及び/又はその要素を生成するために複数のデバイスパラメータが使用されている場合)。幾つかのデバイスパラメータ(例えば、第2のコンピューティングデバイスの使用年数及び/又は有効年数)が生成された1つ以上の、コンポーネント固有のベクトルのすべて又はほとんどに含まれていてもよい。
【0071】
リモートコンピューティングシステムは、ブロック505において、第2のコンピューティングデバイスの、1つ以上のコンポーネント固有のベクトルと、複数の診断レポートにおける1つ以上のデバイスパラメータの1つ以上のセットに基づいて、複数のコンピューティングデバイスのうち1つ以上のコンピューティングデバイスの、1つ以上のコンポーネントについて生成された、1つ以上の対応するコンポーネント固有のベクトルと、を比較する。上記1つ以上の対応するコンポーネント固有のベクトルは、予め生成され(
図5のプロセスを行う前に)診断レポートデータベースに記憶されてもよい。代替として、上記1つ以上の対応するコンポーネント固有のベクトルは、複数の診断レポート(又は具体的には、それに記憶されたドライブパラメータ)に基づいて、
図5のブロック504と505の間で生成されてもよい。比較は、
図3のブロック305に関連して説明したのと同様に、距離メトリックを用いて行われてもよい(この場合、距離メトリックは各コンポーネントについて定義されるが)。よって、
図4のステップ404と対照的に、ブロック505におけるコンポーネント固有の比較は、第2のコンピューティングデバイスの、1つ以上の特定のデバイスパラメータに完全に一致するコンピューティングデバイスだけでなく、第2のコンピューティングデバイスに(特定のコンポーネントに関して)十分類似しているコンピューティングデバイスも考慮してもよい。
【0072】
ブロック505における比較に基づき、リモートコンピューティングシステムは、ブロック506において、1つ以上のコンピューティングデバイスについて生成された1つ以上の、コンポーネント固有のベクトルのうちの1つ以上が、予め定義された基準に従って、第2のコンピューティングデバイスの1つ以上のコンポーネント固有のベクトルに一致するかどうかを判定する。
図3と同様に、予め定義された基準は、第2のコンピューティングデバイスの各コンポーネント固有のベクトルと、一致するコンポーネント固有のベクトルとの間の距離メトリックの値が、予め定義された(上限)閾値未満であるべきであることを定義してもよい。具体例を挙げると、これは、例えば、コンピューティングデバイスのカメラを特徴付けるベクトルを比較する際に、完全に同じ仕様を有するバックカメラだけでなく、(大きな重み係数と関連付けられた)同じ製造業者の、(小さい重み係数と関連付けられた)解像度等の十分類似した仕様の任意のバックカメラも(又は任意のフロント又はバックカメラでも)一致すると考えることを意味していてもよい。
【0073】
ブロック506において、第2のコンピューティングデバイスのいずれのコンポーネントに対しても一致が見つけられない場合は、リモートコンピューティングシステムは、ブロック510において、いずれの診断テストの結果の予測も失敗であることに関する情報してもよい。幾つかの実施形態においては、ブロック510は省略してもよい。
【0074】
ブロック506において、第2のコンピューティングデバイスの少なくとも1つのコンポーネントに対して少なくとも1つの一致が見つかった場合は、リモートコンピューティングシステムは、
図4のブロック406から408に対応してもよいブロック507から509のプロセスを行う。
【0075】
図6は、一実施形態による第1のコンピューティングデバイスによって行われるプロセスを示しており、このプロセスは、リモートコンピューティングデバイスによって提供される1つ以上の診断テストの予測結果に関する情報によって導かれて、第1のコンピューティングデバイスに電気的に接続された第2のコンピューティングデバイスを診断するために行われる。図示のプロセスは、
図2のメッセージ202,203,209及びブロック207と208において、第1のコンピューティングデバイスにより行われるプロセスの代替である。図示のプロセスは、
図1の第1のコンピューティングデバイス121によって行われてもよい。特に記載のない限り、先の実施形態に関して与えた定義は、ここでも適用されてもよい。
【0076】
図6を参照すると、図示されたプロセスは、多くの点において、
図1の第1のコンピューティングデバイスによって行われるプロセスに対応している。ブロック601,602に関する動作は、
図2のメッセージ202及び203に関連して説明したように行われてもよい。ブロック603において、第2のコンピューティングデバイスを診断するための1つ以上の診断テストの予測の結果(及び場合によっては他の診断ガイダンス情報)を通信ネットワークを介してリモートコンピューティングシステムから受信したことに応答して、第1のコンピューティングデバイスは、ブロック610において、受信した情報に関する情報を第1のコンピューティングデバイスのディスプレイを介してユーザに対して表示する。受信した情報(又は少なくともその一部)も、第1のコンピューティングデバイスに接続された、又は含まれる、データベースに記憶されてもよい。予測の結果は、
図2に関連して説明したように定義されてもよい。ブロック604において、いかなる診断テストの結果の予測も失敗であることに関する情報を受信したことに応答して、第1のコンピューティングデバイスは、ブロック605において、その失敗に関する情報を、ユーザに対し、第1のコンピューティングデバイスのディスプレイを介して表示する。ブロック603及び604において、いずれの情報も受信しなかった場合(例えば、予め定義されたタイムリミット内に)は、プロセスは、ブロック605/610(すなわち、表示)をスキップして、直接ブロック606に進んでもよい。
【0077】
ブロック606において、第1のコンピューティングデバイスのユーザ入力デバイスを介して1つ以上の診断テストの選択を確認するユーザ入力を受信したことに応答して、第1のコンピューティングデバイスは、ブロック607において、選択された診断テストを第2のコンピューティングデバイスに対して行わせる。ブロック607は、
図2のメッセージ209に関連して説明したように行われてもよい。第1のコンピューティングデバイスは、ブロック607において、各診断テストの結果を記録(又は記憶)もしてよい。理想的な場合においては、ユーザは、少なくとも1つの診断テストについての予測結果(例えば、ネガティブ診断又はポジティブ診断の確率)により導かれた、診断テストに関する選択をしてもよい。しかしながら、ブロック603において、予測結果が受信されなかった場合は、ユーザは、純粋に自身の専門知識のみに基づいて選択を行わなければならないかもしれない。ユーザは、任意の(可能性のある)予測結果の受信を待つことなく、診断テスト(単数又は複数)の選択を行い、診断テスト(単数又は複数)を始めることができるようにしてもよい。
【0078】
1つ以上の選択された診断テストの終了に応答して、第1のコンピューティングデバイスは、ブロック608において、第2のコンピューティングデバイスに対して行われた1つ以上の診断テストに関する診断レポートを生成する。診断レポートは、
図2に関して上記に説明したように定義されてもよい。つまり、診断レポートは、第2のコンピューティングデバイスの1つ以上のデバイスパラメータと1つ以上の診断テストの結果とを少なくとも含んでもよい。各診断テストの結果は、その診断テストの成果又は診断(すなわち、そのコンポーネントが正常に作動しているか、又はコンポーネントが故障しているか若しくは正常に作動してないか)に関する情報を、少なくとも含んでいてもよい。第1のコンピューティングデバイスは、診断テストの成果又は診断に関する情報に加えて、診断テストの継続時間及び/又は診断テストによって生成された生データの少なくとも一部等の、1つ以上の更なる診断テスト特性を、診断レポートに含めてもよい。
【0079】
幾つかの代替の実施形態において、第1のコンピューティングデバイスが診断レポートを生成する代わりに、第2のコンピューティングデバイスが、第2のコンピューティングデバイスに対して行われた1つ以上の診断テストに基づいて診断レポートを生成し、その後生成された診断レポートを第1のコンピューティングデバイスに送信してもよい。
【0080】
最後に、ブロック609において、第1のコンピューティングデバイスは、生成された診断レポートを、通信ネットワークを介して、リモートコンピューティングシステムに送信する。幾つかの実施形態においては、ブロック609における送信は、第1のコンピューティングデバイスのユーザ入力デバイスを介して、その送信を要求する(又はユーザが、第2のコンピューティングデバイスによって送信を確認するように明示的に促された場合に、その送信を確認する)ユーザ入力を受信した場合にのみ行ってもよい。
【0081】
図7は、リモートコンピューティングシステムを用いて診断レポートデータベースを保持するための単純なプロセスを示している。リモートコンピューティングシステムは、
図1のリモートコンピューティングシステム101であってもよく、診断レポートデータベースは、
図1の診断レポートデータベース103であってもよい。図示されたプロセスは、リモートコンピューティングシステムに関する
図2から
図5のプロセスのいずれか、又はこれらのプロセスの一部と並行して行われてもよい。
【0082】
先の実施形態と同様に、ブロック701において、リモートコンピューティングシステムは、複数の診断レポートを診断レポートデータベースに保持するものと想定する。ブロック702において、第2のコンピューティングデバイスに対して行われた1つ以上の診断テストに関する診断レポートを、通信ネットワークを介して第1のコンピューティングデバイスから受信したことに応答して、リモートコンピューティングシステムは、ブロック703において、受信した診断レポートを診断レポートデータベースに記憶する。幾つかの実施形態においては、リモートコンピューティングシステムは、また、診断レポートの受信に成功したことを確認する通知を、通信ネットワークを介して第1のコンピューティングデバイスに送信してもよい。
【0083】
幾つかの実施形態においては、第1のコンピューティングデバイスは、
図2から
図7に関して説明したプロセスのいずれかを、第1のコンピューティングデバイス(つまり、同一の第1のコンピューティングデバイス)に電気的に接続された多数の第2のコンピューティングデバイスに対して同時に行うよう構成されていてもよい。
【0084】
以下においては、第1のコンピューティングデバイスの操作者の観点から実施形態についての使用例について述べる。
1.診断技術者であるRaimoが、リユースの可能性を見積もるために診断を要する1バッチ分の携帯電話を受け取る。彼は、納入品に、様々な製造業者の異なるモデルの携帯電話が何十台も入っていることを確認する。
2.Raimoは、納入品を、専用のモバイルデバイス診断アプリケーションを備え、クラウドベースのリモートコンピューティングシステムにアクセスできる彼の診断ワークステーション(すなわち、第1のコンピューティングデバイス)の隣に運ぶ。
3.Raimoは、(第2のコンピューティング)デバイスを電源につなぎ、そのデバイスが、診断ワークステーションのスクリーン上のユーザインターフェースにおいて、どのように表示されるかを確認する。彼は、接続されたデバイスのそれぞれが、前処理状態になるのを確認する。
4.しばらくして、Raimoは、デバイスが、クラウドベースのリモートコンピューティングシステムから、どのように予測データを受信し始めるかを確認する。彼は、診断テスト毎に(少なくとも)予測された成功率をユーザインターフェースで確認する。
5.クラウドベースのリモートコンピューティングシステムによって提供された推定値は、1台の携帯電話を除いて、有望であると思える。その携帯電話ついてのメトリックが、そのデバイスのディスプレイについての故障の見積もりが非常に高いことを示す。
6.Raimoは、その電話に手動検査を行い、ディスプレイの診断テストを実行する。確かに、そのデバイスのディスプレイは、完全には機能していない。よって、彼は、そのデバイスをさらなる処理のため脇に置いておく。
7.残りのバッチは有望であるように見えるため、Raimoは、幾つかのデバイスをランダムに選び、それらに対してのみ完全な診断(すなわち、診断テストの完全なセット)を実行する。
8.それらのデバイスは、すべてが良好であるため、Raimoは、そのバッチの処理に満足しプロセスを前進させる。
【0085】
図8は、
図1に示すリモートコンピューティングシステム101等のリモートコンピューティングシステムに関して上記に説明した機能を行うよう構成された装置801を示す。装置は、電子回路(circuitries)を備えた電気デバイスであってもよい。装置は、1つの別個のネットワークエンティティ又は複数の別個のエンティティであってよい。装置は、少なくとも1つのプロセッサ等の制御回路(circuitry)820と、コンピュータプログラムコード(ソフトウェア)831を含む少なくとも1つのメモリ830とを含んでいてよく、少なくとも1つのメモリとコンピュータプログラムコード(ソフトウェア)は、少なくとも1つのプロセッサとともに、上記に説明したリモートコンピューティングシステムの実施形態のうちのいずれか1つを装置に実行させるよう構成されている。装置は、上記の実施形態に関連して説明した、少なくとも診断レポートデータベースを含んでいてもよい少なくとも1つのデータベース832を含んでていてもよい。
【0086】
メモリ830は、先の実施形態において述べたように、診断レポートデータベースに対応していてもよいデータベース832を含んでいてもよい。メモリ830は、また、実施形態による上記の診断テスト予測機能に関連していてもよい、又は関連していなくてもよい他のデータベースを含んでいてもよい。
【0087】
図8を参照すると、制御回路820は、少なくとも、診断プロファイラー回路(circuitry)821を含んでいてもよい。診断プロファイラー回路821は、例えば、
図2のブロック201,204,205、及びメッセージ206の少なくとも幾つか、及び/又は
図3から
図5及び
図7のブロックのいずれかを行うよう構成されていてもよい。
【0088】
図9は、
図1の第1のコンピューティングデバイス121等の第1のコンピューティングデバイスに関連して上記に説明した機能を行うよう構成されている装置901を示す。装置は、電子回路(circuitries)を有する電子デバイスであってもよい。その装置は、別個のネットワークエンティティ又は複数の別個のエンティティであってよい。その装置は、少なくとも1つのプロセッサ等の制御回路(circuitry)920と、コンピュータプログラムコード(ソフトウェア)931を含む少なくとも1つのメモリ930とを備え、少なくとも1つのメモリとコンピュータプログラムコード(ソフトウェア)は、少なくとも1つのプロセッサによって、上記に説明した第1のコンピューティングデバイスの実施形態のうちのいずれか1つを装置に実行させるよう構成されている。装置901は、
図1の第1のコンピューティングデバイス121と同様に、ユーザ入力デバイス及び/又はディスプレイ(
図9においては図示せず)を含んでいてもよい。
【0089】
メモリ930は、例えば、装置901に電気的に接続された1つ以上の(第2の)コンピューティングデバイスの1つ以上のデバイスパラメータに関する情報、通信ネットワークを介してリモートコンピューティングシステムから受信した予測結果、及び/又は装置によって生成された1つ以上の診断レポートを含むデータベース932を含んでいてもよい。メモリ930は、提示された実施形態のうちのいずれかによる第1のコンピューティングデバイスの機能に関連していてもよい、又は関連していなくてもよい他のデータベースも含んでいてもよい。
【0090】
図9を参照すると、制御回路920は、診断分析回路(circuitry)921を含んでいてもよく、この診断分析回路は、提示された実施形態のいずれかによって、診断対象の(第2の)コンピューティングデバイスのデバイスパラメータ(単数又は複数)を取得し、リモートコンピューティングシステムとの通信に基づいて、第2のコンピューティングデバイスに関する予測診断結果をユーザに提供し、診断レポートを生成してリモートコンピューティングシステムに送信する、第1のコンピューティングデバイスの機能を提供するよう構成されている。制御回路は、さらに、選択された診断テスト(単数又は複数)を行うよう構成された診断回路(circuitry)922を含んでいてもよい。例えば、診断分析回路921は、
図2のメッセージ202,203及び/又はブロック207,208の少なくとも幾つか及び/又は
図6の、ブロック607以外のブロックのいずれかを行うよう構成されていてもよい。さらに、診断回路922は、
図2の少なくともメッセージ209及び/又は
図6のブロック607を行うよう構成されていてもよい。その他の実施形態において、制御回路920は、3つ以上に分割されていてもよい、又は単に1つの単体の回路(circuitry)であってもよい。
【0091】
図8及び
図9に関して説明した装置801,901は、1つ以上の通信プロトコルによる通信接続を実現するハードウェア及び/又はソフトウェアを有する(通信)インターフェース810,910をさらに含んでいてもよい。通信インターフェースは、通信ネットワークを介して通信する通信性能を装置に与えて、通信、例えば、
図8の装置801の場合は、1つ以上の(第1の)コンピューティングデバイスとの通信、
図9の装置901の場合は、リモートコンピューティングシステムとの通信を可能にしてもよい。
図9の装置901の場合、通信インターフェース910が、例えば、
図1に関連して述べた任意の手段を用いて、1つ以上の第2のコンピューティングデバイスへの接続を提供してもよい。
【0092】
通信インターフェース810,910は、増幅器、フィルタ、周波数変換器、(復)変調器、エンコーダ回路(circuitry)/デコーダ回路(circuitry)、及び1つ以上のアンテナ等の標準の周知のコンポーネントを含んでいてもよい。
【0093】
図8及び
図9に関して説明した装置801,901のメモリ830,930は、半導体ベースのメモリデバイス、フラッシュメモリ、磁気メモリデバイス及びシステム、光学メモリデバイス及びシステム、固定メモリ及び着脱メモリ等の任意の適切なデータ記憶技術を用いて実装されてもよい。
【0094】
本願明細書で使用される場合、「回路(circuitry)」という用語は、以下の1つ以上、又はすべてを指してもよい:(a)ハードウェアのみの回路実装(アナログ及び/又はデジタル回路(circuitry)のみにおける実装等)及び(b)ハードウェア回路及びソフトウェアの組み合わせ、例えば(該当する場合):(i)アナログ及び/又はデジタルハードウェア回路(単数又は複数)とソフトウェア/ファームウェアの組み合わせ、及び(ii)ハードウェアプロセッサ(単数又は複数)の任意の部分と、ソフトウェア(携帯電話またはサーバー等の装置にさまざまな機能を実施させるために協働するデジタル信号プロセッサ(単数又は複数)、ソフトウェア、及びメモリ(単数又は複数)を含む)との組み合わせ、及び(c)マイクロプロセッサ(単数又は複数)又はマイクロプロセッサ(単数又は複数)の一部等の、ハードウェア回路(単数又は複数)及び又はプロセッサ(単数又は複数)であって、動作にソフトウェア(例えばファームウェア)を必要とするが、動作に必要ない場合はソフトウェアが存在しない場合もあるもの。
【0095】
回路(circuitry)のこの定義は、何れの請求項も含め、本願明細書におけるこの用語の全ての使用に適用される。さらなる例として、本願明細書で使用されているように、回路という用語は、ハードウェア回路若しくはプロセッサ(または多数のプロセッサ)、又はハードウェア回路の一部若しくはプロセッサの一部、及びその(またはそれらの)付属のソフトウェア及び/又はファームウェアのみの実装もカバーする。回路という用語は、例えば、特定のクレーム要素に適用可能な場合は、モバイルデバイス用のベースバンド集積回路若しくはプロセッサ集積回路、又はサーバー、セルラーネットワークデバイス、又は他のコンピューティングデバイス若しくはネットワークデバイス内の同様の集積回路もカバーする。
【0096】
一実施形態においては、
図2から
図7に関して説明したプロセスのうち少なくとも幾つかは、説明したプロセスのうち少なくとも幾つかを行うための対応する手段を有する装置によって行われてもよい。プロセスを行うための手段の例として、以下のうち少なくとも1つ、つまり、検出器、プロセッサ(デュアルコアプロセッサ及びマルチコアプロセッサを含む)、デジタル信号プロセッサ、コントローラ、受信機、送信機、エンコーダ、デコーダ、メモリ、RAM、ROM、ソフトウェア、ファームウェア、ディスプレイ、ユーザインターフェース、ディスプレイ回路(circuitry)、ユーザインターフェース回路(circuitry)、ユーザインターフェースソフトウェア、ディスプレイソフトウェア、回路、アンテナ、アンテナ回路(circuitry)、及び回路(circuitry)の少なくとも1つを含んでいてもよい。一実施形態においては、少なくとも1つのプロセッサ、メモリ、及びコンピュータプログラムコードが、
図2から
図7の実施形態のいずれか1つによる1つ以上の動作、又は複数の動作を行うための(処理)手段を形成するか、又はそれらを行うためのコンピュータプログラムコード部分を有していてもよい。
【0097】
プロセスを行うための手段に関してさらに述べると、本明細書に説明した技術及び方法は、ハードウェア(1つ以上のデバイス)、ファームウェア(1つ以上のデバイス)、ソフトウェア(1つ以上のモジュール)、又はそれらの組み合わせにおいて実装されてもよい。ハードウェア実装の場合、実施形態の装置(単数又は複数)は、1つ以上の特定用途向け集積回路(ASICs)、デジタル信号プロセッサ(DPSs)、デジタル信号処理デバイス(DSPDs)、プログラマブル論理デバイス(PLDs)、フィールドプログラマブルゲートアレイ(FPGAs)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、本明細書に説明した機能を行うよう設計された他の電子ユニット、又はこれらの組み合わせにおいて実装されてもよい。ファームウェア又はソフトウェアの場合て、本明細書に説明した機能を行う少なくとも1つのチップセット(手順、機能等)のモジュール介して実装を行うことができる。ソフトウェアコードは、メモリユニットに記憶され、プロセッサによって実行されてもよい。メモリユニットは、プロセッサ内、またはプロセッサ外部に実装されてもよい。後者の場合、メモリユニットは、当技術分野においてよく知られているように、様々な手段を介して、プロセッサに通信可能に連結することができる。さらに、本明細書に説明したシステムのコンポーネントは、それに関して述べた様々な態様の達成を容易にするために、追加のコンポーネントによって再配置及び/又は補完されてもよく、それらは、当業者が理解するように、任意の図で示した厳密な構成に限定されない。
【0098】
また、説明した実施形態は、コンピュータプログラム又はその一部によって定義されるコンピュータプロセスの形態で行われてもよい。
図2から
図7に関連して説明した方法の実施形態は、対応する命令を含むコンピュータプログラムの少なくとも一部を実行することによって行われてもよい。コンピュータプログラムは、ソースコード形式、オブジェクトコード形式、又は何らかの中間形式であってよく、何らかの種類のキャリアに記憶されてもよい。このキャリアは、プログラムを運ぶことができる任意のエンティティ又はデバイスであってよい。例えば、コンピュータプログラムは、コンピュータ又はプロセッサによって読み取り可能なコンピュータプログラム配布媒体に記憶されてもよい。コンピュータプログラム媒体は、例えば、記録媒体、コンピュータメモリ、読み取り専用メモリ、電気キャリア信号、電気通信信号、及び、ソフトウェア配布パッケージ等であってよいが、それらに限定されるものではない。コンピュータプログラム媒体は、非一時的媒体であってよい。図示され、説明された実施形態を行うためのソフトウェアのコーディングは、十分当業者の技術範囲内である。
【0099】
本発明を、添付の図面による例を参照して上記に説明したが、本発明はそれに限定されず、添付の請求項の範囲内で幾つかの形で変形可能であることは明らかである。よって、すべての用語及び表現は、広く解釈されるべきであり、それらは、実施形態を例示することを意図したものであり、限定するものではない。技術が進歩するにつれて、本発明の概念が様々な方法で実現可能であることは当業者には明らかであろう。さらに、説明した実施形態は、他の実施形態と様々な方法で組み合わせられてもよいが必須ではないことは当業者には明らかである。
【0100】
技術が進歩するにつれて、本発明の概念が様々な方法で実現可能であることは当業者には明らかであろう。本発明及びその実施形態は、上記の例に限定されず、請求項の範囲内で変更されてもよい。