(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023042492
(43)【公開日】2023-03-27
(54)【発明の名称】複数のデバイスロケーションにおけるインストールの通知及び展開のためのシステム及び方法
(51)【国際特許分類】
H04L 67/10 20220101AFI20230317BHJP
H04L 67/50 20220101ALI20230317BHJP
G06F 8/61 20180101ALI20230317BHJP
【FI】
H04L67/10
H04L67/50
G06F8/61
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2021170262
(22)【出願日】2021-10-18
(31)【優先権主張番号】17/474,468
(32)【優先日】2021-09-14
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】319002809
【氏名又は名称】ウォルマート アポロ,エルエルシー
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100179062
【弁理士】
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100199565
【弁理士】
【氏名又は名称】飯野 茂
(74)【代理人】
【識別番号】100219542
【弁理士】
【氏名又は名称】大宅 郁治
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100162570
【弁理士】
【氏名又は名称】金子 早苗
(72)【発明者】
【氏名】ジェームズ・アーロン・ホプキンス
(72)【発明者】
【氏名】ネイサン・コール・ハイアット
(72)【発明者】
【氏名】ニコラス・ポール・オファット
(72)【発明者】
【氏名】ジェフリー・ダレル・パーカー
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AB02
5B376AD11
5B376AD21
(57)【要約】 (修正有)
【課題】インストールをスケジュールすることによってローカルシステムを圧倒してしまうことを予期及び回避し、ローカルシステムに対する影響を低減するシステム、方法及びコンピュータ可読媒体を提供する。
【解決手段】展開システム100は、展開デバイス102が承認通知を受信することに応答して展開デバイスからブロードキャストメッセージを受信し、分散型通信システムを介して複数の展開パラメータを取得する。展開デバイスは、複数の展開パラメータ中に含まれたインストール時間を識別し、複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードし、インストール時間にローカルデータベースからのアプリケーションデータのインストールを開始し、インストールが開始されたことに応答して展開デバイスにステータス更新情報を送信する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
システムであって、
展開デバイスが承認通知を受信することに応答して前記展開デバイスからブロードキャストメッセージを受信することと、
分散型通信システムを介して複数の展開パラメータを取得することと、
前記複数の展開パラメータ中に含まれたインストール時間を識別することと、
前記複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることと、
前記インストール時間に前記ローカルデータベースからの前記アプリケーションデータのインストールを開始することと、
前記インストールが開始されたことに応答して前記展開デバイスにステータス更新情報を送信することと
を行うように構成されたコンピューティングデバイス
を備える、システム。
【請求項2】
前記コンピューティングデバイスは、
現在の時間を決定することと、
前記インストール時間と前記現在の時間との間の差が閾値期間よりも大きいことに応答して前記ローカルデータベースに前記アプリケーションデータをダウンロードすることと、
キュー中に前記ダウンロードされたアプリケーションデータ及び前記複数の展開パラメータを記憶することと
を行うように構成される、請求項1に記載のシステム。
【請求項3】
前記コンピューティングデバイスは、
展開パラメータの少なくとも1つのセットの前記インストール時間が前記現在の時間であることに応答して、前記ダウンロードされたアプリケーションデータをデキューすることと、
前記ローカルデータベースからの前記ダウンロードされたアプリケーションデータのインストールを開始することと
を行うように構成される、請求項2に記載のシステム。
【請求項4】
前記コンピューティングデバイスは、前記差が前記閾値期間よりも小さいとき、前記インストール時間まで、前記複数の展開パラメータ中に含まれた前記アプリケーション識別子に関連付けられた前記アプリケーションデータを前記ローカルデータベースにダウンロードすることを遅延させるように構成される、請求項2に記載のシステム。
【請求項5】
前記承認通知は、(i)前記ブロードキャストメッセージを送信するための複数のコンピューティングデバイス、(ii)前記アプリケーション識別子、及び(iii)前記複数のコンピューティングデバイスの各々についての対応するインストール時間を示す、請求項1に記載のシステム。
【請求項6】
前記ローカルデータベースからのアプリケーションデータのインストールを開始することは、少なくとも1つのローカルデバイス上に前記アプリケーションデータをインストールすることを含む、請求項1に記載のシステム。
【請求項7】
前記少なくとも1つのローカルデバイスは、前記複数の展開パラメータ中に示される、請求項6に記載のシステム。
【請求項8】
前記コンピューティングデバイスは、前記少なくとも1つのローカルデバイスから成功したインストールを示す通知を受信することに応答して、前記少なくとも1つのローカルデバイス上での成功したインストールを示すステータス更新情報を前記展開デバイスに送信するように構成される、請求項6に記載のシステム。
【請求項9】
前記コンピューティングデバイスは、前記少なくとも1つのローカルデバイス上での閾値数の不成功のインストール試行が受信されることに応答して、不成功のインストールを示す警告を生成し、前記展開デバイスに送信するように構成される、請求項6に記載のシステム。
【請求項10】
方法であって、
展開デバイスが承認通知を受信することに応答して前記展開デバイスからブロードキャストメッセージを受信することと、
分散型通信システムを介して複数の展開パラメータを取得することと、
前記複数の展開パラメータ中に含まれたインストール時間を識別することと、
前記複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることと、
前記インストール時間に前記ローカルデータベースからの前記アプリケーションデータのインストールを開始することと、
前記インストールが開始されたことに応答して前記展開デバイスにステータス更新情報を送信することと
を備える、方法。
【請求項11】
現在の時間を決定することと、
前記インストール時間と前記現在の時間との間の差が閾値期間よりも大きいことに応答して前記ローカルデータベースに前記アプリケーションデータをダウンロードすることと、
キュー中に前記ダウンロードされたアプリケーションデータ及び前記複数の展開パラメータを記憶することと
を更に備える、請求項10に記載の方法。
【請求項12】
展開パラメータの少なくとも1つのセットの前記インストール時間が前記現在の時間であることに応答して、前記ダウンロードされたアプリケーションデータをデキューすることと、
前記ローカルデータベースからの前記ダウンロードされたアプリケーションデータのインストールを開始することと
を更に備える、請求項11に記載の方法。
【請求項13】
前記差が前記閾値期間よりも小さいとき、前記インストール時間まで、前記複数の展開パラメータ中に含まれた前記アプリケーション識別子に関連付けられた前記アプリケーションデータを前記ローカルデータベースにダウンロードすることを遅延させることを更に備える、請求項11に記載の方法。
【請求項14】
前記承認通知は、(i)前記ブロードキャストメッセージを送信するための複数のコンピューティングデバイス、(ii)前記アプリケーション識別子、及び(iii)前記複数のコンピューティングデバイスの各々についての対応するインストール時間を示す、請求項10に記載の方法。
【請求項15】
前記ローカルデータベースからのアプリケーションデータのインストールを開始することは、少なくとも1つのローカルデバイス上に前記アプリケーションデータをインストールすることを含む、請求項10に記載の方法。
【請求項16】
前記少なくとも1つのローカルデバイスは、前記複数の展開パラメータ中に示される、請求項15に記載の方法。
【請求項17】
前記少なくとも1つのローカルデバイスから成功したインストールを示す通知を受信することに応答して、前記少なくとも1つのローカルデバイス上での成功したインストールを示すステータス更新情報を前記展開デバイスに送信することを更に備える、請求項15に記載の方法。
【請求項18】
前記少なくとも1つのローカルデバイス上での閾値数の不成功のインストール試行が受信されることに応答して、不成功のインストールを示す警告を生成し、前記展開デバイスに送信することを更に備える、請求項15に記載の方法。
【請求項19】
命令を記憶した非一時的コンピュータ可読媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、デバイスに、
展開デバイスが承認通知を受信することに応答して前記展開デバイスからブロードキャストメッセージを受信することと、
分散型通信システムを介して複数の展開パラメータを取得することと、
前記複数の展開パラメータ中に含まれたインストール時間を識別することと、
前記複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることと、
前記インストール時間に前記ローカルデータベースからの前記アプリケーションデータのインストールを開始することと、
前記インストールが開始されたことに応答して前記展開デバイスにステータス更新情報を送信することと
を備える動作を実行させる、非一時的コンピュータ可読媒体。
【請求項20】
前記命令は、
現在の時間を決定することと、
前記インストール時間と前記現在の時間との間の差が閾値期間よりも大きいことに応答して前記ローカルデータベースに前記アプリケーションデータをダウンロードすることと、
キュー中に前記ダウンロードされたアプリケーションデータ及び前記複数の展開パラメータを記憶することと
を含む、請求項19に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[0001]本開示は、一般に、様々なデバイスロケーションにおけるインストールを通知及び展開するためのシステム及び方法に関し、より具体的には、将来のローカルインストールのためにローカルデータベースにおいてインストールデータをダウンロードすることに関する。
【背景技術】
【0002】
[0002]各ロケーションにおける複数のデバイスを含む、様々な時間帯にわたる複数のロケーションを有するシステムでは、複数のロケーションにインストール又は更新を展開することは、様々な課題を提示する。例えば、特定のロケーションにおいてシステム及びデバイスを圧倒してしまうことを回避するようにインストール又は更新をスケジュールすることは、重要であるだけでなく、複数のロケーションの変動するタイミングのニーズに起因して困難でもある。更に、成功したインストールを保証することもまた、ローカルネットワーク制約的な環境又はオフラインシナリオに起因して課題を提示し、インストールが発生することを妨げる。
【0003】
[0003]ここで提供される背景技術の説明は、本開示の文脈を一般に提示することを目的としている。本背景技術のセクションに説明される範囲での、現在名が挙げられている発明者の研究、及びそうでない場合には出願の時点で先行技術としての資格に欠けることがある説明の態様は、本開示に対する先行技術として明示的にも暗示的にも認められない。
【発明の概要】
【0004】
[0004]本明細書で説明される実施形態は、展開システム及び関連する方法を対象とする。展開システムは、展開デバイスが承認通知を受信することに応答して展開デバイスからブロードキャストメッセージを受信することと、分散型通信システムを介して複数の展開パラメータを取得することとを行うように構成されたコンピューティングデバイスを含むことができる。コンピューティングデバイスはまた、複数の展開パラメータ中に含まれたインストール時間を識別することと、複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることとを行うように構成されることができる。コンピューティングデバイスはまた、インストール時間にローカルデータベースからのアプリケーションデータのインストールを開始することと、インストールが開始されたことに応答して展開デバイスにステータス更新情報を送信することとを行うように構成されることができる。
【0005】
[0005]別の態様では、コンピューティングデバイスは、現在の時間を決定することと、インストール時間と現在の時間との間の差が閾値期間よりも大きいことに応答してローカルデータベースにアプリケーションデータをダウンロードすることと、キュー中にダウンロードされたアプリケーションデータ及び複数の展開パラメータを記憶することとを行うように構成される。
【0006】
[0006]別の態様では、コンピューティングデバイスは、展開パラメータの少なくとも1つのセットのインストール時間が現在の時間であることに応答して、ダウンロードされたアプリケーションデータをデキューすることと、ローカルデータベースからのダウンロードされたアプリケーションデータのインストールを開始することとを行うように構成される。
【0007】
[0007]別の態様では、コンピューティングデバイスは、差が閾値期間よりも小さいとき、インストール時間まで、複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることを遅延させるように構成される。
【0008】
[0008]別の態様では、承認通知は、(i)ブロードキャストメッセージを送信するための複数のコンピューティングデバイス、(ii)アプリケーション識別子、及び(iii)複数のコンピューティングデバイスの各々についての対応するインストール時間を示す。
【0009】
[0009]別の態様では、ローカルデータベースからのアプリケーションデータのインストールを開始することは、少なくとも1つのローカルデバイス上にアプリケーションデータをインストールすることを含む。
【0010】
[0010]別の態様では、少なくとも1つのローカルデバイスは、複数の展開パラメータ中に示される。
【0011】
[0011]別の態様では、コンピューティングデバイスは、少なくとも1つのローカルデバイスから成功したインストールを示す通知を受信することに応答して、少なくとも1つのローカルデバイス上での成功したインストールを示すステータス更新情報を展開デバイスに送信するように構成される。
【0012】
[0012]別の態様では、コンピューティングデバイスは、少なくとも1つのローカルデバイス上での閾値数の不成功のインストール試行が受信されることに応答して、不成功のインストールを示す警告を生成し、展開デバイスに送信するように構成される。
【0013】
[0013]本開示の様々な実施形態では、展開の方法が提供される。いくつかの実施形態では、方法は、展開デバイスが承認通知を受信することに応答して展開デバイスからブロードキャストメッセージを受信することと、分散型通信システムを介して複数の展開パラメータを取得することとを含むことができる。方法はまた、複数の展開パラメータ中に含まれたインストール時間を識別することと、複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることとを含むことができる。方法はまた、インストール時間にローカルデータベースからのアプリケーションデータのインストールを開始することと、インストールが開始されたことに応答して展開デバイスにステータス更新情報を送信することとを含むことができる。
【0014】
[0014]本開示の様々な実施形態では、非一時的コンピュータ可読媒体が提供される。非一時的コンピュータ可読媒体は、命令を記憶することができ、命令は、少なくとも1つのプロセッサによって実行されると、デバイスに、展開デバイスが承認通知を受信することに応答して展開デバイスからブロードキャストメッセージを受信することと、分散型通信システムを介して複数の展開パラメータを取得することとを含む動作を実行させる。動作はまた、複数の展開パラメータ中に含まれたインストール時間を識別することと、複数の展開パラメータ中に含まれたアプリケーション識別子に関連付けられたアプリケーションデータをローカルデータベースにダウンロードすることとを含むことができる。動作はまた、インストール時間にローカルデータベースからのアプリケーションデータのインストールを開始することと、インストールが開始されたことに応答して展開デバイスにステータス更新情報を送信することとを含むことができる。
【0015】
[0015]本開示の適用可能性の更なるエリアが、発明を実施するための形態、特許請求の範囲、及び図面から明らかとなるであろう。発明を実施するための形態及び特定の例は、例示のみを目的とすることを意図され、本開示の範囲を限定することを意図されない。
【0016】
[0016]本開示の特徴及び利点は、実例的な実施形態の以下の発明を実施するための形態において十分に開示されるか、又はそれによって明らかにされる。実例的な実施形態の発明を実施するための形態は、添付の図面と共に考慮されるべきであり、同様の番号は同様の部分を指す。
【図面の簡単な説明】
【0017】
【
図1】いくつかの実施形態に従った、展開システムのブロック図である。
【
図2】いくつかの実施形態に従った、
図1の展開デバイスを実装するコンピューティングデバイスのブロック図である。
【
図3】いくつかの実施形態に従った、
図1の展開システムのメッセージングモジュールの例を例示するブロック図である。
【
図4】いくつかの実施形態に従った、
図1の展開システムの実装モジュールの例を例示するブロック図である。
【
図5A】いくつかの実施形態に従った、メッセージング展開の実例的な方法のフローチャートである。
【
図5B】いくつかの実施形態に従った、メッセージング展開の実例的な方法のフローチャートである。
【
図6】いくつかの実施形態に従った、ローカルロケーションにおけるアプリケーションインストールの実例的な方法のフローチャートである。 [0023]図面では、参照番号は、同様及び/又は同一の要素を識別するために再使用され得る。
【発明を実施するための形態】
【0018】
[0024]好ましい実施形態の説明は、添付の図面に関連して読まれることを意図され、添付の図面は、これらの開示の記載説明全体の一部と考えられるべきである。本開示は様々な修正及び代替の形態を受け入れる余地があるが、特定の実施形態が図面において例として示され、本明細書に詳細に説明される。特許請求の範囲に記載の主題の目的及び利点は、添付の図面に関連してこれらの例証的な実施形態の以下の詳細な説明からより明らかとなる。
【0019】
[0025]しかしながら、本開示は、開示された特定の形態に限定されることを意図されないことが理解されるべきである。むしろ、本開示は、これらの例証的な実施形態の趣旨及び範囲内にある全ての修正物、等価物、及び代替物を網羅する。「結合する」、「結合される」、「動作可能に結合される」、「接続される」、「動作可能に接続される」という用語及び同様のものは、関連するデバイス又は構成要素がその関係性によって意図されるように互いに動作する(例えば通信する)ことを接続が可能にするように、デバイス又は構成要素を機械的に、電気的に、ワイヤードに、ワイヤレスに、又はその他のうちのいずれかで共に接続することを指すことを広く理解されるべきである。
【0020】
[0026]展開システムは、複数のクラスタ、例えばエンティティに関連する個々のロケーションにおける個々の店舗デバイスにメッセージを送信するように実装され得る。様々な実装形態では、エンティティは、小売法人であり得、個々のロケーションは、小売法人に関連する店舗を含む。各個々のロケーションは、店舗の通常の業務中に使用される販売時点情報管理デバイス、汎用コンピュータ、ハンドヘルドデバイス、等などの複数のデバイスを含む。複数の店舗デバイスに送信されるメッセージは、インストール用のアプリケーション、インストール時間、等を示す、各店舗についての一意の展開パラメータを含む。展開システムは、メッセージを送ることによって、個々のロケーション内の複数のデバイスについてインストールのスケジューリング及び実行を管理する。インストールは、新しいアプリケーションをインストールすること、既存のアプリケーションのバージョンを更新すること、等であり得る。
【0021】
[0027]各展開では、展開中に示される各店舗は、ローカルデータベース又はサーバ上にアプリケーションをダウンロードし、同じ展開中の同じアプリケーションの他の店舗において発生するインストールとは別個に、スケジュールされたインストール時間にアプリケーションのインストールを実際に開始し得る。ローカルインストール速度に基づいて、インストールは、数分又は数日掛かり得るが、各個々の店舗におけるインストールは、その店舗の日々の業務及びローカルネットワーク制約による影響しか受けず、全体的なネットワーク機能停止又は展開デバイスに接続することに関連する他の制約又はローカルにインストールを記憶及び実施することによるアプリケーションデータベース接続性による影響を受けることを回避する。様々な実装形態では、複数の店舗におけるインストール時間は、同じであり得(例えば受信に際して)、このシナリオでは、アプリケーションは、複数の店舗においてローカルに同時にダウンロード及びインストールされ得る。
【0022】
[0028]展開デバイスは、複数の店舗又はクラスタに展開情報をブロードキャストするために、ローカル店舗デバイスにおけるメッセージングモジュールと直接対話する。店舗の各々は、展開デバイスを操作し、新しいソフトウェア又はアプリケーション並びに既存のソフトウェア及びアプリケーションに対する更新を含むインストールを指示するエンティティによって管理される。展開システムは、複数のメッセージングモジュール及び複数の実装モジュールを含み、それらの各々のうちの1つは、各店舗に位置して、分散型通信システムを介して展開デバイスからブロードキャストメッセージを受信し得る。ブロードキャストメッセージは、名称、バージョン、等によるアプリケーション識別情報、各店舗についてのインストール時間、インストールアプリケーションに対するローカルデバイスの識別情報、等などの展開パラメータを含み得る。様々な実装形態では、ブロードキャストメッセージは、どの店舗にメッセージをブロードキャストすべきか、及び展開識別子を含み得る。次いで、展開識別子に基づいて、各ローカル店舗は、分散型通信システムを介して展開特徴データベースから展開特徴を取得することができる。
【0023】
[0029]展開デバイスはまた、各インストールの開始及び完了並びに別個に対処されるべき任意のインストール失敗を示すステータス情報を複数の店舗に位置する各実装デバイスから受信するステータスデータベースを含む。示されたメッセージングモジュールがインストールを通知されると、個々の店舗の実装モジュールは、インストール用のアプリケーションをダウンロードして、ローカルに記憶し、示された日時にインストールすることができる。従って、ローカルシステムがアプリケーションのインストールのスケジュールされた時間にオンラインであるか、又はネットワーク制約環境にあるかとは無関係に、ローカルシステムは、アプリケーション及び任意の対応するデータがインストールメッセージを受信することに応答してローカルに記憶されたため、インストールを継続することができる。
【0024】
[0030]展開システムは、潜在的なオフラインの問題を取り除くだけでなく、展開システムはまた、ローカルシステムに基づいてインストールをスケジュールすることによってローカルシステムを圧倒してしまうことを予期及び回避し、ローカルシステムに対する影響を低減する。例えば、メッセージングモジュールは、ニューヨークにおけるローカルシステムについて6:00am UTC及びハワイにおけるローカルシステムについて12:00pm UTCなど、インストールが各ローカルシステム又はクラスタに対して発生する日時をブロードキャストメッセージ中で受信するか、又は展開特徴データベースから取得して、通常の業務への干渉を防止し得る。インストール時間は、店舗におけるローカルシステムが展開デバイス又は他の遠隔データベースに接続することができるかに関わらず、インストール時間にローカルにインストールを開始するために、ダウンロードされたアプリケーションと共に記憶される。様々な実装形態では、展開デバイスはまた、インストールを実施する1つ以上の店舗デバイスにキャンセル通知を送信し得る。ローカル店舗システムは、インストール用の特定のアプリケーションをダウンロードしていることがあるが、キャンセル通知がインストール時間に添付されている場合、インストールが開始されると、キャンセル通知は、実装モジュールがインストールを終了することを促すであろう。
【0025】
[0031]
図1を参照すると、展開システム100のブロック図が示されている。展開システム100は、展開デバイス102と、分散型通信システム108を介して展開デバイス102と対話する電話、タブレット、ラップトップ、モバイルコンピューティングデバイス、デスクトップ、等などの承認デバイス104を含み得る。様々な実施形態では、展開デバイス102及び承認デバイス104は、単一のデバイスであり得る。承認デバイス104は、指定されたオペレータがインストールの展開又はリリースを承認する際に展開デバイス102に承認通知を送信する。様々な実装形態では、承認デバイス104は、オペレータが承認する展開に関連する展開パラメータを表示する。例えば、別の個人が、どの店舗がインストールメッセージを受信するであろうか、インストールされるであろうアプリケーション又はアプリケーションバージョンインジケータ、各店舗における各インストールについての日時、等を示す展開パラメータを生成する。展開パラメータは、次いで、オペレータが承認する承認デバイス104に送られる。様々な実装形態では、展開パラメータは、承認デバイス104又は別のコンピューティングデバイスを使用して生成され得る。しかしながら、展開パラメータ又は特徴を承認するオペレータは、展開パラメータを生成する個人とは異なる。
【0026】
[0032]承認されると、承認デバイス104は、展開デバイス102に承認を送信する。展開デバイス102は、送信された承認を受信する承認受信モジュール112を含む。承認受信モジュール112は、検証及び承認されたオペレータによる承認の受信を確認する。例えば、オペレータは、承認デバイス104(又は別のデバイス)にログイン(及びエンティティによって運営されている特定のウェブページ又はウェブサイトにログイン)し得、承認受信モジュール112は、ログインクレデンシャルを検証する。承認受信モジュール112は、ブロードキャスト生成モジュール116に検証及び承認メッセージを転送する。ブロードキャスト生成モジュール116は、承認メッセージを構文解析し、インストール用のアプリケーション、アプリケーションがインストールされるであろう店舗、等を識別する。ブロードキャスト生成モジュール116はまた、承認メッセージ中に示された店舗に送信されるべきブロードキャストメッセージを生成する。例えば、ブロードキャストメッセージは、第1の店舗デバイス120-1、第2の店舗デバイス120-2、・・・、及び第Nの店舗デバイス120-N、一括して店舗デバイス120に送信され得る。店舗デバイス120の各々は、モバイルコンピューティングデバイス、ラップトップ、デスクトップ、等などのコンピューティングデバイスであり得る。ブロードキャストメッセージが展開デバイス102のブロードキャスト生成モジュール116によって送信される各店舗は、アプリケーションデータベース124から(ブロードキャストメッセージ中に示された)インストール用のアプリケーションをダウンロードし得る。様々な実装形態では、ブロードキャスト生成モジュール116は、Apache Kafka(登録商標)を使用して実装され得る。代替として、承認デバイス104は、示されたアプリケーションがインストールされているとして展開パラメータ中に示された特定の店舗デバイス120に承認メッセージを直接ブロードキャストし得る。
【0027】
[0033]更に、様々な実装形態では、ブロードキャストメッセージは、ブロードキャストメッセージが送られた店舗について承認メッセージが受信されたこと、及び展開識別子など、最小情報を含み得る。ブロードキャストメッセージが単に展開識別子だけを含むとき、承認受信モジュール112又はブロードキャスト生成モジュール116は、ブロードキャストメッセージを受信する際に対応する店舗が取得する、第1の店舗デバイス120-1などの店舗デバイス120の各々についての対応する店舗特徴を送信し、展開特徴データベース128中に記憶し得る。店舗デバイス120の各々についての展開特徴は、追加のインストールパラメータ(例えば、どの店舗内デバイスがどのアプリケーションインストールを受信するかを制限する、等)と共にインストール時間を含み得る。加えて、展開デバイス102は、成功した又は不成功のインストールのログを維持するためにインストール中に店舗デバイス120の各々からインストールステータス更新情報を受信するためのステータスデータベース132を含む。
【0028】
[0034]展開デバイス102、承認デバイス104、及び店舗デバイス120は各々、情報の処理及び取り扱い用の任意のハードウェア又はハードウェアとソフトウェアとの組み合わせを含む任意の適切なコンピューティングデバイスであり得る。例えば、「デバイス」及び/又は「モジュール」という用語は、1つ以上のプロセッサ、1つ以上のフィールドプログラマブルゲートアレイ(FPGA)、1つ以上の特定用途向け集積回路(ASIC)、1つ以上のステートマシン、デジタル回路、又は任意の他の適切な回路を含むことができる。加えて、各々は、分散型通信システム108にデータを送信し、それからデータを受信することができる。様々な実装形態では、デバイス、モジュール、及びデータベースは、内部ネットワーク上で直接通信し得る。
【0029】
[0035]上記で示すように、展開デバイス102、承認デバイス104、及び/又は店舗デバイス120は、コンピュータ、ワークステーション、ラップトップ、クラウドベースのサーバなどのサーバ、又は任意の他の適切なデバイスであり得る。いくつかの例では、展開デバイス102、承認デバイス104、及び/又は店舗デバイス120は、セルラ電話、スマートフォン、タブレット、個人支援デバイス、音声支援デバイス、デジタルアシスタント、ラップトップ、コンピュータ、又は任意の他の適切なデバイスであり得る。様々な実装形態では、展開デバイス102は、小売業者によって操作及び/又は制御される中央コンピューティングシステム上にある。加えて又は代替として、展開デバイス102のモジュール及びデータベースは、分散型通信システム108上で共に結合された1つ以上のワークステーション又はサーバ間で分散される。
【0030】
[0036]説明されるデータベースは、クラウドベースのサーバ、別のアプリケーションサーバ上のメモリデバイス、ネットワーク接続されたコンピュータ、又は任意の他の適切な遠隔ストレージなどの遠隔ストレージデバイスであり得る。更に、いくつかの例では、データベースは、ハードドライブ、不揮発性メモリ、又はUSBスティックなどのローカルストレージデバイスであり得る。
【0031】
[0037]分散型通信システム108は、WiFi(登録商標)ネットワーク、3GPP(登録商標)ネットワークなどのセルラネットワーク、Bluetooth(登録商標)ネットワーク、衛星ネットワーク、ワイヤレスローカルエリアネットワーク(LAN)、無線周波数(RF)通信プロトコルを利用するネットワーク、近距離通信(NFC)ネットワーク、複数のワイヤレスLANを接続するワイヤレスメトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、又は任意の他の適切なネットワークであり得る。分散型通信システム108は、例えばインターネットへのアクセスを提供することができる。
【0032】
[0038]
図2は、実例的なコンピューティングデバイス200を例示する。展開デバイス102、承認デバイス104、及び/又は店舗デバイス120は、
図2に示された特徴を含み得る。簡潔さのために、
図2は、展開デバイス102に関連して説明される。
【0033】
[0039]示されるように、展開デバイス102は、1つ以上のプロセッサ202、ワーキングメモリ204、1つ以上の入力/出力デバイス206、命令メモリ208、トランシーバ212、1つ以上の通信ポート214、及びディスプレイ216を含み得るコンピューティングデバイス200であり得、全ては、1つ以上のデータバス210に動作可能に結合される。データバス210は、様々なデバイス間での通信を可能にする。データバス210は、ワイヤード、又はワイヤレス通信チャネルを含むことができる。
【0034】
[0040]プロセッサ202は、1つ以上の別個のプロセッサを含むことができ、各々は、1つ以上のコアを有する。別個のプロセッサの各々は、同じ又は異なる構造を有することができる。プロセッサ202は、1つ以上の中央処理ユニット(CPU)、1つ以上のグラフィックス処理ユニット(GPU)、特定用途向け集積回路(ASIC)、デジタルシグナルプロセッサ(DSP)、及び同様のものを含むことができる。
【0035】
[0041]プロセッサ202は、命令メモリ208上に記憶されたコードを実行することによってある特定の機能又は動作を実行するように構成されることができ、その機能又は動作を具現化する。例えば、プロセッサ202は、本明細書に開示された任意の機能、方法、又は動作のうちの1つ以上を実行するように構成されることができる。
【0036】
[0042]命令メモリ208は、プロセッサ202によってアクセス(例えば読み取り)及び実行されることができる命令を記憶することができる。例えば、命令メモリ208は、読み取り専用メモリ(ROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM(登録商標))、フラッシュメモリ、リムーバブルディスク、CD-ROM、任意の不揮発性メモリ、又は任意の他の適切なメモリなどの非一時的コンピュータ可読記憶媒体であり得る。
【0037】
[0043]プロセッサ202は、ワーキングメモリ204にデータを記憶し、それからデータを読み取ることができる。例えば、プロセッサ202は、命令メモリ208からローディングされた命令などの命令のワーキングセットをワーキングメモリ204に記憶することができる。プロセッサ202はまた、展開デバイス102の動作中に作成された動的データを記憶するためにワーキングメモリ204を使用することができる。ワーキングメモリ204は、静的ランダムアクセスメモリ(SRAM)若しくは動的ランダムアクセスメモリ(DRAM)などのランダムアクセスメモリ(RAM)、又は任意の他の適切なメモリであり得る。
【0038】
[0044]入力出力デバイス206は、データ入力又は出力を可能にする任意の適切なデバイスを含むことができる。例えば、入力出力デバイス206は、キーボード、タッチパッド、マウス、スタイラス、タッチスクリーン、物理ボタン、スピーカ、マイクロフォン、又は任意の他の適切な入力若しくは出力デバイスのうちの1つ以上を含むことができる。
【0039】
[0045]通信ポート(複数可)214は、例えば、ユニバーサル非同期受信機/送信機(UART)接続、ユニバーサルシリアルバス(USB)接続、又は任意の他の適切な通信ポート若しくは接続などのシリアルポートを含むことができる。いくつかの例では、通信ポート(複数可)214は、命令メモリ208中の実行可能な命令のプログラミングを可能にする。いくつかの例では、通信ポート(複数可)214は、フィードバック情報を含むデータ項目などのデータの転送(例えばアップロード又はダウンロード)を可能にする。
【0040】
[0046]ディスプレイ216は、ユーザインターフェース218を表示することができる。ユーザインターフェース218は、展開デバイス102とのユーザ対話を可能にすることができる。例えば、ユーザインターフェース218は、オペレータが展開デバイス102の異なる特徴若しくはパラメータを対話、通信、制御、及び/又は修正することを可能にするユーザインターフェースであり得る。ユーザインターフェース218は、例えば、承認を発行するより前にオペレータ又はユーザが見るための展開特徴を表示することができる。いくつかの例では、ユーザは、承認デバイス104上で承認を発行することなど、入力出力デバイス206を作動させることによって、ユーザインターフェース218と対話することができる。いくつかの例では、ディスプレイ216は、タッチスクリーンであり得、ここで、ユーザインターフェース218は、タッチスクリーン上に表示される。
【0041】
[0047]トランシーバ212は、
図1の分散型通信システム108などのネットワークとの通信を可能にする。例えば、
図1の分散型通信システム108がセルラネットワークである場合、トランシーバ212は、セルラネットワークとの通信を可能にするように構成される。いくつかの例では、トランシーバ212は、展開デバイス102が動作しているであろう分散型通信システム108のタイプに基づいて選択される。プロセッサ(複数可)202は、トランシーバ212を介して、
図1の分散型通信システム108などのネットワークからデータを受信するか、又はそれにデータを送るように動作可能である。
【0042】
[0048]
図3を参照すると、
図1の展開システム100のメッセージングモジュール304の例を例示するブロック図が示されている。メッセージングモジュール304は、店舗デバイス120の各々上に位置し得る。様々な実装形態では、メッセージングモジュール304は、店舗デバイス120の各々に位置し、それらに関連付けられた追加のデバイスである。メッセージングモジュール304は、対応する店舗デバイス、例えば第1の店舗デバイス120-1が1つ以上のアプリケーションの展開中に含まれると承認メッセージ中に示されるとき、ブロードキャストメッセージを受信する。
【0043】
[0049]メッセージングモジュール304のデータ取得モジュール308は、ブロードキャストメッセージを受信する。ブロードキャストメッセージを受信することに応答して、データ取得モジュール308は、展開特徴データベース128からパラメータの展開特徴を取得する。例えば、展開特徴は、特定の店舗に対応するインストール時間、インストールされるべきアプリケーション、アプリケーションをインストールする特定の店舗におけるデバイス、等を含む。様々な実装形態では、1つ以上の店舗においてインストールすべき複数のアプリケーションが存在する場合、各アプリケーション又はアプリケーションバーションについて複数の展開及び複数の承認メッセージが存在する。例えば、店舗のセットにおけるデバイスのある特定のセットがアプリケーション1をインストールされることになる場合、単一の展開が、そのインストールに対して完了されるであろう。次いで、デバイスの別のセットが、店舗の同じセットにおいてでさえ、アプリケーション2をインストールされることになる場合、別個の承認メッセージを含む別個又は第2の展開が、そのインストールに対して完了されるであろう。
【0044】
[0050]様々な実装形態では、展開システム100は、アプリケーションのインストールに関する問題が存在しないことを保証するために、店舗の異なるセットに対して同じアプリケーション用の複数の展開を有し得る。例えば、第1の展開は、5つの店舗を示し得、第2の展開は、10個の店舗を示し得、等である。次いで、展開が複数の不成功のインストールをもたらす場合、後続の展開は、アプリケーションのトラブルシューティング又は更新のために遅延又はキャンセルされ得る。データ取得モジュール308は、取得された展開特徴を送信命令モジュール312に転送する。送信命令モジュール312は、対応する店舗(例えば第1の店舗デバイス120-1)における実装モジュール316に、特定の店舗に対応する展開特徴を送信する。様々な実装形態では、展開デバイス102は、示された店舗デバイス120に展開特徴を直接送信し得る。
【0045】
[0051]ここで
図4を参照すると、
図1の展開システム100の実装モジュール316を例示するブロック図が示されている。実装モジュール316は、メッセージングモジュール304から展開特徴を受信するフェッチ決定モジュール404を含む。フェッチ決定モジュール404は、展開特徴中に示されたアプリケーションが展開特徴中に含まれたインストール時間に基づいて取得又は「プリフェッチ」されるべきかを決定する。様々な実装形態では、実装モジュール316は、インストール時間が現在の時間から離れて閾値時間を超える場合、展開特徴中に示されたアプリケーションのみを取得及びダウンロードし得る。例えば、インストール時間が現在の時間から30分未満である場合、実装モジュール316は、代わりに、インストール時間にアプリケーションをダウンロードし、インストールを進め得る。プリフェッチ実装は、アプリケーションがインストールされるように設定された店舗が、その店舗が分散型通信システム108を介してアプリケーションデータベース124にアクセスすることができないのでアプリケーションをインストールすることを妨げられるあらゆる潜在的なオフラインシナリオを取り除くように動作する。加えて又は代替として、プリフェッチ特徴はまた、店舗のネットワーク、分散型通信システム108の接続性に起因する低速度又は他の接続性制限などの、インストール時におけるあらゆるネットワーク制約を取り除き得る。
【0046】
[0052]インストール時間が現在の時間から離れて閾値時間よりも長い場合、フェッチ決定モジュール404は、対応するアプリケーション用のフェッチインジケーションをアプリケーション取得モジュール408に転送する。アプリケーション取得モジュール408は、アプリケーションデータベース124から(例えばアプリケーション識別子によって)展開特徴中に示された対応するアプリケーションを取り出し、それは、様々な実装形態では、アプリケーション識別子によってインデックス付けされ得る。アプリケーションデータベース124及びステータスデータベース132は、
図1に示すように、店舗デバイス120の実装モジュール316と直接対話するように示されているが、アプリケーションデータベース124及びステータスデータベース132は、分散型通信システム108を介して店舗デバイス120/実装モジュール316と通信していることがある。しかしながら、インストール時間が現在の時間から離れて閾値時間よりも短い場合、フェッチ決定モジュール404は、代わりに、特定の展開に対応する展開特徴をキューデータベース412に追加し得る。キューデータベース412は、インストール時間に従って展開特徴の各セットを記憶する。インストール時間が示されない場合、フェッチ決定モジュール404は、現在の時間でキューデータベース412に展開特徴のセットを追加し得る。
【0047】
[0053]デキューモジュール416は、クロックインジケータによって決定されたような現在の時間に基づいて展開特徴のセットを取り除く。デキューモジュール416は、現在の時間に一致するインストール時間で展開特徴のセットを取り除く。展開特徴の複数のセットが同じインストール時間を有する場合、デキューモジュール416は、最初にキューデータベース412に追加された展開特徴のセットを取り除く。デキューモジュール416は、キューデータベース412から展開特徴のセットを引き出し、インストール実行モジュール420に展開特徴のセットを転送する。様々な実装形態では、インストール実行モジュール420は、Helm(登録商標)によって動作され得る。インストール実行モジュール420は、示された店舗内デバイス424上での(展開特徴中に示された)アプリケーションのインストールを開始する。様々な実装形態では、店舗デバイス120の各々は、(分散型通信システム108などの)分散型通信システムを介して、中央コンピューティングデバイス、(販売時点情報管理デバイス、店舗内コンピュータ、等などの)個々のデバイス、ハンドヘルドデバイス、等を含み得る。
【0048】
[0054]インストール実行モジュール420は、デキューモジュール416から、展開特徴並びにプリフェッチ及びダウンロードされたアプリケーションを受信し得る。しかしながら、展開特徴が対応するダウンロードされたアプリケーションを含まない場合、インストール実行モジュール420は、インストール時間が、展開特徴がメッセージングモジュール304から受信された時間から閾値時間よりも短かった場合、例えば、上記で説明されたように、アプリケーションデータベース124から対応するアプリケーションを取得し得る。インストール実行モジュール420はまた、ステータス更新モジュール428にインストールの開始を転送する。ステータス更新モジュール428は、インストールが発生しているときに、及びインストールが成功か不成功かに関わらず、インストール実行モジュール420及び店舗内デバイス(複数可)424から受信されたインストールプロセスの各ステップでステータスデータベース132を更新する。即ち、成功したインストール又は不成功のインストールにおいて、店舗内デバイス(複数可)424は、インストールのステータスを送信する。様々な実装形態では、店舗内デバイス(複数可)424は、デフォルトの間隔で現在のステータス(例えばインストール開始、インストール保留、インストール成功、インストール不成功、等)を送る。
【0049】
[0055]例えば、インストールが不成功である場合、店舗内デバイス(複数可)424は、報告する店舗内デバイス(複数可)424上での対応するアプリケーションのインストールが成功してインストールされなかったとステータスデータベース132を更新するであろう。オプションとして、警告生成モジュール432は、キャンセル、不成功のインストール、等などのある特定のステータス更新情報をステータス更新モジュール428から受信し得る。警告生成モジュール432は、承認されたインストールが成功しなかったことを示す警告を生成し、承認デバイス104(又は別のデバイス)に送信し得る。次いで、オペレータは、適切な店舗デバイス(複数可)上にアプリケーションをインストールするために、将来の展開に介入して調整又はキャンセルすることができ、及び/又は手動の介入を実行することができる。様々な実装形態では、インストール実行モジュール420は、インストールを不成功と見なす前に、閾値数の回数で特定のアプリケーションをインストールしようと試み得る。
【0050】
[0056]示されていないが、様々な実装形態では、展開デバイス102は、オペレータが以前にスケジュールされたインストールをキャンセルするとき、キューデータベース412(又は実装モジュール316の別のモジュール)にキャンセルメッセージを直接ブロードキャストし得る。展開特徴の対応するセットは、インストールがキャンセルされたことを示すように修正される。インストール時間が発生すると、インストール実行モジュール420は、展開特徴のセットがキャンセル要求を含むと決定し、インストールプロセスを終了する。
【0051】
[0057]
図5A及び5Bを参照すると、メッセージ展開の実例的な方法のフローチャートが示されている。
図5Aでは、リリース又は展開に対応する指定されたアカウント又は個人からの承認を受信することに応答して制御が始まる。即ち、制御は、リリース又は展開の承認が受信されると始まる。上記で説明されたように、承認者は、展開の詳細を見直し、展開を承認する個人のセットのうちの1人であり得る。展開の実際の特徴は、少なくとも2人の人が展開を見直していることを保証するために、異なる個人から生成及び受信され得る。展開特徴は、どの店舗がインストールを受信しているか、インストールされるべきアプリケーション、インストールを受信する各店舗についてのインストール時間、等を示す。このようにして、展開特徴を生成する個人は、例えば通常の動作時間、他のインストール、等に基づいて、どの店舗システムも圧倒しないように、どの時間にインストールが発生することになるかを設定することができる。様々な実装形態では、デフォルトのインストール時間、例えば夜中の間、現地時間の間、店舗がインストールを受信する特定の店舗内デバイスを定期的に操作していないとき、は、各店舗に関連し得る。
【0052】
[0058]制御は504に進み、
図3及び4に説明された展開特徴の一部分又は全てなど、承認メッセージ中に示されたリリース又は展開パラメータを含むブロードキャストメッセージを生成する。制御は508に続き、リリースパラメータに関連付けられた又はその中に示されたアドレス(複数可)に通知を送信する。次いで、制御は終了する。例えば、
図5Aの制御は、
図1の展開デバイス102によって実施され得る。
【0053】
[0059]
図5Bでは、例えばメッセージモジュールによって各店舗デバイス120においてブロードキャストメッセージを受信することに応答して制御が始まる。制御は512に続き、上記で説明された展開特徴データベース128などのデータベースからブロードキャストメッセージ中に示された展開に関連する展開特徴を取得する。制御は516に進み、上述された実装のために、実装モジュール316などに(ブロードキャストメッセージ中に示された)インストールの展開特徴を送信する。
【0054】
[0060]ここで
図6を参照すると、ローカルロケーションにおけるアプリケーションインストールの実例的な方法のフローチャートが示される。展開特徴を受信することに応答して制御が始まる。展開特徴中に含まれる特定の店舗において制御が動作されている。制御は604に進み、展開特徴を構文解析する。以前に述べられたように、展開特徴は、インストール用のアプリケーションを示すアプリケーション識別子、店舗の各々についてのインストール時間、アプリケーションがインストールされているデバイス識別子、等を含み得る。制御は608に続き、インストール時間が現在の時間から閾値期間よりも長いかどうかを決定する。例えば、以前に記載されたように、インストール時間が、30分など、現在の時間から離れて閾値期間よりも長い場合、制御は612に進む。
【0055】
[0061]次いで、612において、制御は、展開特徴中に示されたアプリケーション情報をローカルデータベースにダウンロードする。即ち、制御は、インストール時間にインストールするために利用可能なローカル用のアプリケーションをダウンロードする。インストールにおけるこの遅延は、アプリケーションが店舗のローカルネットワークを中断していない時間にインストールされることを可能にし、ローカル店舗が直面し得る任意の将来の接続性の停止も回避し、ダウンロードされて現在はローカルのアプリケーションが設定されたインストール時間にインストールされることができることを保証する。制御は616に続き、キューに展開特徴を追加する。加えて、インストール時間が閾値期間以下である場合、制御は616に続き、キューに展開特徴を追加する。次いで、制御は620に進み、展開特徴のキューされたセットのインストール時間が現在の時間に等しいかどうかを決定する。等しい場合、制御は624に進む。そうでない場合、制御は、現在の時間がインストール時間に対応するのを待つ。以前に記載されたように、インストール時間が展開特徴から除外される場合、制御は、キューに展開特徴を追加する際にインストール時間を現在の時間に設定し得る。
【0056】
[0062]624において、制御は、対応する展開特徴をデキューする。次いで、628において、制御は、アプリケーションがローカルに記憶されたかを決定する。即ち、制御は、ローカルデータベース中の展開特徴中に示されたアプリケーションを探索し、それは、展開特徴が受信された時間から閾値期間よりも長いインストール時間を有したアプリケーションに当てはまるであろう。アプリケーションがローカルに記憶されていない場合、制御は632に続き、アプリケーション情報をダウンロードする。アプリケーションがローカルに記憶されているか又は1つのアプリケーション情報が632においてダウンロードされている場合、制御は636に続き、展開特徴中に示されたアプリケーションのインストールを開始する。
【0057】
[0063]制御は640に続き、インストールが始まったと展開ステータスログを更新する。次いで、制御は644に進み、インストールが成功したかどうかを決定する。成功した場合、制御は、648においてインストール時間が成功したと展開ステータスログを更新し、制御は終了する。そうでない場合、644においてインストールが成功しなかった場合、制御は652に進み、インストール試行の閾値数を上回ったかどうかを決定する。例えば、インストールが試みられ、3回にわたって不成功だった場合、制御は次いで656に続き、試行しきい値を上回ったと展開ステータスログを更新し、エラーを生成し、展開システムによって動作されるデバイス(例えば承認デバイス)に送信する次いで、制御は終了する。そうでない場合、652において試行しきい値を上回らない場合、制御は660に続き、不成功の試行の展開ステータスログを更新し、636に戻る。
【0058】
[0064]上記で説明された方法は、例示されたフローチャートを参照しているが、それら方法に関連する動作を実行する多くの他の方法が使用されることができることが理解されるであろう。例えば、いくつかの動作の順序は変更され得、説明された動作のうちのいくつかはオプションであり得る。
【0059】
[0065]加えて、本明細書に説明された方法及びシステムは、コンピュータ実装されたプロセス及びそれらのプロセスを実施するための装置の形態で少なくとも部分的に具現化されることができる。開示された方法はまた、コンピュータプログラムコードで符号化される有形の非一時的機械可読記憶媒体の形態で少なくとも部分的に具現化され得る。例えば、方法のステップは、ハードウェア、プロセッサによって実行される実行可能な命令(例えばソフトウェア)、又はそれら2つの組み合わせで具現化されることができる。媒体は、例えばRAM、ROM、CD-ROM、DVD-ROM、BD-ROM、ハードディスクドライブ、フラッシュメモリ、又は任意の他の非一時的機械可読記憶媒体を含み得る。コンピュータプログラムコードがコンピュータにロードされ実行されると、コンピュータは、方法を実施するための装置になる。方法はまた、コンピュータプログラムコードがロード又は実行されるコンピュータの形態で少なくとも部分的に具現化され得、そのため、コンピュータは、方法を実施するための特殊用途コンピュータになる。汎用プロセッサ上に実装されると、コンピュータプログラムコードセグメントは、特定の論理回路を作成するようにプロセッサを設定する。方法は、代替として、方法を実行するための特定用途向け集積回路で少なくとも部分的に具現化され得る。
【0060】
[0066]前述は、これらの開示の実施形態を例示、説明、及び記載する目的で提供された。これらの実施形態に対する修正及び翻案は、当業者に容易に明らかとなり、これらの開示の範囲又は趣旨から逸脱することなく成され得る。
【外国語明細書】