(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0066】
本開示は、連続グルコースセンサからグルコースデータを受信し、そのデータが意図された様式で使用されるようにそのデータの使用及び再分散を制御するための技法に関する。
【0067】
本明細書及び添付の特許請求の範囲で使用されるとき、単数形「a」、「an」、及び「the」は、別途文脈が明確に指示しない限り、複数指示対象を含む。範囲は、本明細書では、「約」ある特定の値から及び/または「約」別の特定の値までとして表され得る。かかる範囲が表されるとき、別の実施形態は、そのある特定の値から及び/またはその別の特定の値までを含む。同様に、値が先行詞「約」の使用によって近似として表されるとき、その特定の値が別の実施形態を形成することが理解される。それらの範囲の各々の終点が、別の終点と関連して及び別の終点から独立しての両方で有意であることがさらに理解される。
【0068】
「任意の」または「任意に」とは、その後に記載される事象または状況が起こる場合も起こらない場合もあり、その記載が、前記事象または状況が起こる事例及び前記事象または状況が起こらない事例を含むことを意味する。
【0069】
本明細書の記述及び特許請求の範囲を通して、「含む(備える)(comprise)」という単語、ならびに「含む(備える)こと(comprising)」及び「含む(備える)(comprises)」等のその単語の変形は、「を含むが、これらに限定されない」を意味し、例えば、他の追加物、構成要素、整数、またはステップを除外するようには意図されていない。「例示の」とは、「の一例」を意味し、好ましい実施形態または望ましい実施形態の指示を伝えるようには意図されていない。「等」は、限定的意味では使用されておらず、説明目的のために使用されている。
【0070】
開示される方法及びシステムを行うために使用され得る構成要素及び特徴が開示される。これら及び他の構成要素が本明細書に開示されており、これらの構成要素の組み合わせ、サブセット、相互作用、群等が開示される一方で、様々な個別の組み合わせ及び集合的な組み合わせの各々の特定の参照、ならびにこれらの置換が明確に開示されていない場合があるが、各々、全ての方法及びシステムについて本明細書に具体的に企図及び記載されることが理解される。これは、開示される方法におけるステップを含むが、これらに限定されない本出願の全ての態様に当てはまる。したがって、行われ得る様々な追加のステップが存在する場合、これらの追加のステップが各々、開示される方法の任意の特定の実施形態または実施形態の組み合わせを用いて行われ得ることが理解される。
【0071】
グルコース情報、関連健康情報、及び連続グルコースモニタデバイス情報をシステム全体にわたって他のシステム及びアプリケーションに分散することにより、患者の秘密保持の保護に関連する課題が生じる。グルコース情報、診断情報、及び他の部外秘または専有情報は、全ての追加のシステム及びアプリケーションへの複製には適切ではない。追加のシステム及びアプリケーションがデータの全てにアクセスすべきではないため、データを分類及びカテゴリ化し、患者の秘密保持を確実にする様式でデータの一部または全ての再分散を保護することが有益であろう。
【0072】
一例証的例では、連続グルコースモニタは、グルコースレベル、モニタがいつグルコースレベル測定結果を取得したかを示すタイムスタンプ、及び患者識別情報をディスプレイに送信することができる。ディスプレイは、この情報をサーバレポジトリに転送し、これは、数人の他の患者からの情報も記憶する。いくつかのアプリケーションは、この情報へのアクセスを要求し、グルコースレベル、タイムスタンプ、及び患者識別情報を受信することができる。一例として、患者は、自身の診療所がこの情報にアクセスすることを望む場合がある。しかしながら、連続グルコースモニタに関する問題を経験しているユーザに技術サポートを提供するのに患者識別情報は必要ではない。したがって、患者識別情報は、その例では除外されるべきであり、技術サポートは患者の身元の判明を制限される。
【0073】
連続グルコースモニタと関連付けられたデータをサーバに記憶することに関して生じる別の問題は、データをどのように体系化及び記憶するかを含む。かかるデータは、例えば、患者のグルコースレベルに関するデータ、連続グルコースモニタからの生データまたは較正データ、アラートレベルを含むアラートデータ、欠陥検出データ等を含み得る。何万人もの患者が、大量のデータをサーバに定期的に転送する連続グルコースモニタを使用し得る。第三者、権限付与されたユーザ、及び追加のシステム構成要素への選択的アクセスを受信、記憶、及び提供するプロセスが、サーバに高処理負荷をかける。一例証的例では、連続グルコースモニタは、グルコースレベル読み取り値及び関連タイムスタンプを5分毎に取得する。ディスプレイは、グルコースレベル及びタイムスタンプを以下に記載の追加データとともに記憶のためにサーバに転送する。結果として、この例では、サーバは、単一ユーザから1日当たり288個のグルコースレベル、タイムスタンプ、及び追加データを受信する。1ヶ月にわたって動作する2万個の連続グルコースモニタの場合、サーバは、グルコースレベル、タイムスタンプ、及び追加データを含む1.75億個を超えるデータ送信を受信する。そのサーバは、この情報をアーカイブし、情報の一部へのアクセスを制御し、を探索する情報の選択された一部を検索し、情報の選択された一部を権限付与されたエンティティに転送すべきである。これにより、サーバにかなりの処理負荷がかかる。
【0074】
さらに困難な課題は、連続グルコースモニタがグルコースレベル、タイムスタンプ、及び他の関連情報等のデータを複数のディスプレイに無線送信することができ、各ディスプレイがそのデータをサーバに転送することができることである。一例証的例では、連続グルコースモニタは、データを、ディスプレイを有する受信機、ならびにスマートフォン、スマートウォッチ、パーソナルコンピュータ、タブレット、または他の種類のディスプレイに送信する。この例では、各ユーザの2つのデータストリームがサーバに送られ、結果として重複データになる。加えて、例えば、スマートフォンがオフにされるか、または連続グルコースモニタから無線範囲外であるといった、1つのディスプレイがオフラインである場合があるため、同じ連続グルコースモニタと関連付けられた2つのディスプレイからの2つのデータストリームが異なる。2つのデータストリームは、他の理由でも異なり得る。一例では、2つのディスプレイは、異なる較正値を使用する場合があり、連続グルコースモニタから受信された同じデータセットに基づいて異なるグルコースレベルをもたらす。したがって、複数のディスプレイから受信されたデータの体系化、記憶、及びその正確な複製の提供が有益であろう。
【0075】
システム全体にわたるデータの送信のセキュリティに関する別の課題が生じる。分散アーキテクチャ内のいくつかの構成要素が一部のデータへのアクセスを許可されているが、他の構成要素はそうであるべきではない。したがって、権限付与されていない者のデータへのアクセスを制限し、権限付与された者をデータのサブセットのみへのアクセスに限定することが有益であろう。加えて、サーバに記憶されたデータにアクセスする多数の他のデバイスまたはソフトウェアアプリケーションが存在し得る。かかる多数の他のデバイスまたはソフトウェアアプリケーションの潜在力を考慮して、データへのアクセスを可能にするために標準化インターフェースを提供することが有益であろう。しかしながら、これは、本システムが医療デバイスとして規制承認を得るよう要求され得る医療デバイスの分野では特に困難であり得る。承認されると、本システムへの変更がさらなる規制承認を要求する場合があり、これは時間及び費用のかかるプロセスであり得る。したがって、多くの異なる第三者構成要素を収容し、かつシステム設計に変更を必要とすることなく第三者構成要素からの異なる要求に適応することができるモジュラー標準化インターフェースが有益であろう。
【0076】
本開示は、分散アーキテクチャ全体にわたる複数の機密性カテゴリ(例えば、制限的、制限度のより低い等)を有するデータの分散及び使用を制御するためのシステム及び方法を対象とする。いくつかの例となる実施形態では、本技術によるアーキテクチャは、データが医療デバイス(例えば、連続グルコースモニタ)から1つ以上の接続された表示デバイス(例えば、スマートフォン、タブレット、またはスマートウォッチもしくはスマートグラス等のウェアラブルスマートデバイス)に送られ、データ、例えば、医療データの場合、専有、部外秘、または患者識別情報の様々な機密度に従ってデータを分散して、決定された機密度に基づいて第三者及び/またはある特定のシステム構成要素によるデータへのアクセスを制御するように設計されたクラウドコンピューティングシステムに提供されることを可能にする。本技術によるいくつかの実施態様では、かかる第三者及び/またはある特定のシステム構成要素は、パーミッションなしで制限的データへのアクセスを阻止される一方で、例えば、権限付与されていないエンティティが制限的データにアクセスできないことを確実にする、大量のデータを受信し、それを記憶し、かつそれへのアクセスを選択的に許可するように規模調整することができるシステムを提供するといった、他の機密度のより低いデータへのアクセスが選択的に許可される。分散アーキテクチャのいくつかの例が連続グルコース監視について記載されているが、他の例となる実施態様が本明細書を通して以下で論じられており、特許請求の範囲は、連続グルコース監視に関連する実施形態のみの対処に限定されるべきではない。
【0077】
本方法及び本システムは、好ましい実施形態の以下の詳細な説明及びそれに包含される実施例、ならびに図及びそれらの前後の記述を参照することにより、より容易に理解され得る。
【0078】
図1は、グルコースレベルを監視し、かかる監視と関連付けられたデータへのアクセス及びその使用を制御するための例示のシステムを図解する。かかるデータは、複数のカテゴリを有すると定義され得、各カテゴリが1つ以上の機密性レベルを有する。
図1の開示されるシステムは、データの記憶及び分散のために使用され得、異なるカテゴリ内のデータまたは異なる機密性レベルを有するデータが本システム内で異なって扱われ得る。例えば、患者を識別するか、または識別するために使用され得るデータは、全ての第三者に複製されるべきではない。適切なパーミッションまたは権限を有する第三者のみがこのデータにアクセスすることができるべきである。さらに、グルコースレベル等の他のデータが第三者によって誤用される場合がある。一例として、監視されたグルコースレベルを受信する第三者は、インスリンポンプをどのように制御するかの誤った推奨をユーザに行い得る。
図1のシステムは、以下に記載されるように、公開データ、私有データ、リアルタイムデータ(例えば、生または較正)、及び他のバルクデータ等のデータのカテゴリに分けることによって、一部のデータが他のデータとは異なって扱われることを可能にする。
図1のシステムは、データへのパーミッションベースのアクセスを提供することによって、一部のデータが他のデータとは異なって扱われることを可能にする。さらに、
図1のシステムは、大量のデータを記憶し、それへのアクセスを提供することができる。例えば、
図1のシステムは、直近の規定可能な期間(例えば、15日、30日、60日等)以内のデータ等の一部のデータをクラウドコンピューティングアーキテクチャに一時的に記憶し、30日を過ぎたデータ等の他のデータをより長期の記憶装置に周期的に転送することができる。
【0079】
図1を参照して、連続グルコースセンサユニット100a〜cは、患者におけるグルコースレベルに関する一連の測定結果を取得する。連続グルコースセンサユニット100a〜cは、例えば、患者の腹部領域に装着され得る。小型センサが患者の体内に延びて、例えば、皮下グルコースまたは血中グルコース読み取り値を使用して、グルコース値の読み取り値を取得することができる。連続グルコースセンサユニット100a〜cは、経皮デバイス、血管内デバイス、または非侵襲性デバイスでもあり得る。
【0080】
連続グルコースセンサユニット100a〜cは、グルコース測定結果を取得して、データを記憶し、グルコースレベルを計算し、ディスプレイ104a〜eと通信するためのいくつかの構成要素を含む。ディスプレイ104a〜eは、例えば、スマートフォン、スマートウォッチ及びスマートグラス等のウェアラブルスマートデバイス、パーソナルコンピュータ、タブレット、ならびに様々な他のコンピューティングデバイスを含むが、これらに限定されない、連続グルコースセンサユニット100a〜cと関連付けられた専用受信機であり得る。図解されていないが、連続グルコースセンサユニット100a〜cは、グルコース値に関する履歴データを記憶するための不揮発性メモリ、プロセッサ、バッテリ、及び無線送信機を含む。連続グルコースセンサユニット100a〜cは、ディスプレイ104a〜e及び他のコンピューティングデバイスと通信するために任意の種類の無線通信、例えば、Bluetooth(登録商標)接続、Wi−Fi接続、RF接続等を提供することができる送信機102a〜cを含む。無線通信は、いくつかの実施形態では、対になった認証されたデバイス間で起こり、暗号化及び他の暗号技法を使用して、例えば、通信が部外秘のままであることを確実にする。
【0081】
単一ユニットとして図解されているが、連続グルコースセンサユニット100a〜cの一部は、連続グルコースセンサユニットの残りの部分から取り外し可能であってもよい。例えば、送信機102等の「送信機」と称され得るセンサユニット100a〜cの再使用可能な電子機器部分(例えば、データ送信機及び/もしくは受信機、バッテリ、メモリ、あるいは/またはプロセッサ)は、センサユニットの使い捨て部分(例えば、センサ針)から取り外し可能であってもよく、新しい使い捨て部分とともに再使用されてもよい。さらに、連続グルコースセンサユニット100a〜cは、データ通信を促進するための他の構成要素を含み得る。例えば、連続グルコースセンサユニット100は、他のデバイスと通信し、グルコースレベルに関するデータを提供するために、USBポート、Ethernetポート等の有線ポートを含む。
【0082】
図1の連続グルコースセンサユニット100a〜cは、数秒毎、30秒毎、1分毎、5分毎等の所定の間隔で、またはイベントの発生(例えば、ユーザからのコマンド、ユーザの動作の検出、例えば、ユーザの動き等)に応じてオンデマンドで試料を得ることができる。無線送信機102a〜cは、1つ以上の測定結果がある期間にわたって取得される間にバッテリ寿命を節約するためにオフにされるか、または低電力状態にされてもよく、その後、送信機をウェイクアップ状態に戻して、1つ以上の測定結果をバッチ転送でディスプレイ104a〜eに無線送信することができる。例えば、連続グルコースセンサユニット100a〜cは、無線送信機を5分毎にウェイクアップし、過去5分間にわたって生成されたグルコース測定結果に関するデータ(及び任意の他のデータ)を転送し、そのデータをディスプレイ104a〜eに転送する。その後、無線送信機102a〜cは、バッテリ寿命を節約するために、再度オフにされてもよい。5分毎のデータ転送の例が提供されているが、より長いまたはより短い期間が使用されてもよく、その期間がディスプレイ104a〜cを介してユーザによって設定され得ることが理解される。
【0083】
さらに、
図1の例について、連続グルコースセンサユニット100a及びディスプレイ104a〜104bが第1の患者によって使用されてもよく、連続グルコースセンサユニット100b及びディスプレイ104c〜dが第2の患者によって使用されてもよく、連続グルコースセンサユニット100c及びディスプレイ104が第3の患者によって使用されてもよく、多くの他の患者が連続グルコースセンサユニット及び関連ディスプレイを使用してもよいことが理解される。ディスプレイ104a〜eまたは連続グルコースセンサユニット100a〜cは、データを、以下により詳細に記載されるクラウドコンピューティングインフラストラクチャとも称されるように、分散クラウドコンピューティングアーキテクチャ106に送信する。
【0084】
連続グルコースセンサユニット100a〜cとディスプレイ104a〜eとの間で送信されるデータは、グルコース値の監視及び連続グルコースセンサユニット100a〜cの動作に関する任意のデータ型であり得る。例えば、連続グルコースセンサユニット100a〜cは、較正データをそれぞれのディスプレイ104a〜eと初起動時に周期的に交換して、グルコース測定結果の正確度を維持する。ユーザは、一点グルコース計器を使用して自身のグルコースレベルをサンプリングし、試験キットにより表示される値をディスプレイ104a〜eのうちの1つに入力し、その値が関連連続グルコースセンサユニットを較正するために使用される。同様に、データは、他の生理学的監視デバイス(例えば、温度検出デバイス、血圧モニタ、血中酸素含有量モニタ等)とディスプレイ104a〜eとの間でも交換されてもよく、またはデータは、他の生理学的監視デバイスと連続グルコースセンサユニット100a〜cとの間で交換されてもよい。
【0085】
交換されるデータの他の例としては、連続グルコースセンサユニットによって測定された電流または電圧量(例えば、生値)、変換されたグルコース値(例えば、較正値または推定グルコース値)(例えば、mg/dL単位)、及び各測定結果または値がサンプリングされた時間と関連付けられたタイムスタンプ、所定の閾値を超えるグルコースレベルに関するアラート、本システムで検出された欠陥、ファームウェアバージョン、連続グルコースセンサ及び送信機のハードウェアバージョン、較正状態、センサが起動及び/または停止された時間、バッテリ電圧、暗号化情報、送信機識別子番号等が挙げられる。このデータは、サービスサーバ、例えば、連続グルコースセンサユニットの製造業者と関連付けられたサーバ等からも転送され得る。連続グルコースセンサユニット100a〜cとして記載されているが、他の医療デバイスが開示される実施形態とともに使用されてもよい。例えば、連続グルコースセンサユニット100a〜cとして
図1に示されるセンサユニットは、任意の分析物センサであってもよく、送信されたデータは、分析物センサユニットによって生成された分析物値を反映し得る。連続グルコースセンサユニット100a〜cとディスプレイ104a〜e、またはディスプレイ104a〜eと分散クラウドコンピューティングアーキテクチャ106、またはいずれか1つの連続グルコースセンサユニット100a〜c及びディスプレイ104a〜eと任意の他の生理学的監視デバイスまたは任意の他のシステム、デバイス、もしくは人物間で送信されるいずれの型のいずれのデータも、データ点と見なされ得る。
【0086】
ディスプレイ104a〜eは、ディスプレイ、例えば、視覚ディスプレイ画面、スピーカを含む聴覚ディスプレイ、触覚ディスプレイ、及び任意の他の種類のディスプレイを備えるコンピューティングデバイスであり得る。いくつかの実施態様では、例えば、ディスプレイ104a〜eは、専用ディスプレイとして使用されて、それぞれの連続グルコースセンサユニット100a〜cとともに使用することができ、専用とは、連続グルコースセンサユニットからのデータの表示を必ずしも除外しない。例えば、連続グルコースセンサユニット100とディスプレイ104との組み合わせは、一実施形態では、クラスIIIの医療デバイス等の承認された医療デバイスであり得る。
【0087】
ディスプレイ104は、受信された測定結果に基づいてグルコースレベルを計算するためのプロセッサ、グルコースレベルを記憶するためのメモリ、有線通信用ポート、及び無線通信回路、例えば、Bluetooth(登録商標)、Wi−Fi、またはRF回路等を含む。実施態様では、例えば、ディスプレイ104a〜cは、連続グルコースセンサユニット100a〜cから所定の時間間隔でグルコースレベルに関するデータを受信する。加えて、ディスプレイ104は、ユーザのグルコースレベルが下降傾向であるか、安定したままであるか、または増加しているかの履歴傾向を決定することができる。ディスプレイ104a〜eは、ユーザがグルコースレベルを容易に監視することができるようにグルコース読み取り値を長期にわたって提示し、現在のグルコースレベルの実際値を表示する。
【0088】
ディスプレイ104a〜eは、グルコースレベルに関するデータを表示するためのアプリケーションを実行するパーソナルコンピュータ、タブレット、またはスマートフォンと関連付けられた任意の種類のディスプレイであり得る。結果として、ディスプレイ104a〜eは、プロセッサ(複数可)、メモリ、無線接続、USBポート等を含む、パーソナルコンピューティングデバイスと典型的に関連付けられたハードウェア構成要素を含む。
【0089】
ディスプレイ104a〜eは、グルコース監視、健康情報、エクササイズ活動、インスリン注射の制御及び監視、食習慣等に関する、プロセッサにより実行可能な命令を含む複数のアプリケーション、例えば、ソフトウェアアプリケーション(「アプリ」)を実行することができる。一実施形態では、連続グルコースセンサユニット100aは、複数のデータストリームを送信し、ディスプレイ104aは、連続グルコースセンサユニット100aがディスプレイ104bに送信するデータと同じデータを受信する。ディスプレイ104aは、連続グルコースセンサユニット100aと関連付けられた専用ディスプレイであり得、ディスプレイ104bは、汎用コンピューティングデバイス、例えば、スマートフォン等であり得る。例となるスマートフォンは、連続グルコースセンサユニット100aとの使用専用の1つ以上のアプリケーション、ならびに他のアプリケーションを実行することができる。専用アプリケーションは、連続グルコースセンサユニット100aから受信された医療データの使用、例えば、スマートフォン上で実行する他のアプリケーションへのデータの分散等を制御して、以下により詳細に記載されるように、秘密保持及びユーザ選好を保護する。例えば、専用アプリケーションは、他の第三者アプリケーションにも接続されてもよく、それに情報を提供することができる。
【0090】
いくつかの実施形態では、ディスプレイ104a〜eは、それぞれの連続グルコースセンサユニット100a〜cから受信された全データセットを受信及び表示する。例えば、ディスプレイ104は、センサによって取得された測定結果と関連付けられた実際のグルコースレベルを表示する。連続グルコースセンサユニット100、ディスプレイ104上で実行するオペレーティングシステム、または(上述の)ディスプレイ104上で実行する専用アプリケーションは、第三者アプリケーションの実際のグルコースレベルの受信及び表示を制限することができる。いくつかの実施態様では、代わりに、例えば、第三者アプリケーションが、グルコースレベルが低いか、正常であるか、または高いか等のグルコースレベルのより包括的な指標を受信することができる。ディスプレイ104に送られ、それによって表示され得るデータ型に関するさらなる詳細が以下に提供される。
【0091】
ディスプレイ104a〜eまたは連続グルコースセンサユニット100a〜cは、データを分散クラウドコンピューティングアーキテクチャ106に送信する。分散クラウドコンピューティングアーキテクチャ106は、データを体系化し、記憶し、他のコンピュータ、アプリケーション、及び第三者によるそのデータへのアクセスを提供する。分散クラウドコンピューティングアーキテクチャ106は、ローカルで及び分散ネットワーク上での両方で実行する複数の異なるサーバ、記憶装置システム、及びソフトウェアアプリケーションを含む。
図3は、分散クラウドコンピューティングアーキテクチャ106の例となる実施形態の略図を提供し、本特許文献の以下で論じられる。
【0092】
本システム内での通信は、いくつかのセキュリティプロトコルの支配下にあり得る。例えば、HTTPS及びSSL通信等の通信が暗号化及び安全保証され得る。クラウドコンピューティングアーキテクチャ106は、規定のポートに特定の安全な通信のみを許可するファイアウォールを含み得る。加えて、分散クラウドコンピューティングアーキテクチャ106を含むシステムは、アクセスを得てそれらの情報を読み取るか、または変更するためにユーザまたは遠隔モニタ(本明細書に記載される)が使用するであろうウェブサービス方法のために、ログイン名及びパスワードでのログインを伴う認証されたセッションを使用することができる。ログイン名及びパスワードは、ハッシング及び暗号化を使用して安全な様式で記憶され、ディスプレイからの全てのデータポストを含む患者データも同様に、クラウドコンピューティングアーキテクチャ106によって安全な様式で暗号化及び記憶され得る。
【0093】
別のセキュリティ対策は、短い不活動期間後にタイムアウトし、最大長も有し得る認証されたセッションを使用することを含む。サーバは、本システムへの全てのアクセス及び本システムに加えられた全ての変更のオーディットトレールまたは履歴ログを保持することができる。加えて、クラウドコンピューティングアーキテクチャ106によって記憶されたデータにアクセスする第三者は、自身の認証を要求される場合があり、第三者と既に知り合いである患者へのアクセスのみにさらに制限される場合もある。すなわち、いくつかの例では、消費者の特権は、その消費者と任意の識別情報交換を開始した患者によって既に提供されているであろう本システムとの患者の内部識別子を既に知っていることを消費者に要求し得る。
【0094】
図2は、データストリームを別々に送信及び記憶するための例示の方法を図解する。開示される技術によるシステムが、各々が複数のディスプレイ104を通じてデータを送ることができる何万もの連続グルコースセンサユニット100がデータをクラウドコンピューティングアーキテクチャ106に送信することを支援することができることを考慮して、処理要求がクラウドコンピューティングアーキテクチャ106にとって大きすぎて単一データストリームを受信し、異なるカテゴリ(例えば、公開対私有)に割り当てられるべきである部分に分けることができない場合がある。1つの解決策は、クラウドコンピューティングアーキテクチャ106への送信前にデータストリームを分けることであり、これによりクラウドコンピューティングアーキテクチャ106がデータストリームを別々に記憶して迅速に読み出すことが可能になる。これにより冗長データが生じ得るが、これは、クラウドコンピューティングアーキテクチャ106が、例えば、第1の表示デバイス及び第2の表示デバイスの両方から受信された公開ストリームを比較して、2つが一致するかを決定することを可能にするため、好ましくあり得る。任意の相違が存在する場合、技術サポートは、システム動作に問題があるかを決定し、解決策を提供することができる。例えば、ディスプレイ104a〜eでの較正エラーは、ディスプレイ104a〜e間の別個のディスプレイから受信されたデータストリームを比較することによって検出され得る。
【0095】
生じ得る別の課題は、分散クラウドコンピューティングアーキテクチャ106のサーバがデータを迅速に読み出すことができることである。多数のデータストリームがクラウドコンピューティングアーキテクチャ106に流れ込み、高速読み出しを問題化する。したがって、データストリームを追跡し、データが所与の時点で読み出されることを可能にすることが有利であろう。
【0096】
図2では、連続グルコースセンサユニット(例えば、連続グルコースセンサユニット100a)は、プロセス200で、データを第1のディスプレイ(例えば、ディスプレイ104a)及び第2のディスプレイ(例えば、ディスプレイ104b)に、自動的に、またはこれらの2つのディスプレイのいずれかからの要求に応じて提供する。連続グルコースセンサユニット100aは、データを2つのストリーム:公開データストリーム及び私有データストリームに分ける。例えば、一般に、公開データが、患者にチャートまたはレポートで提示される情報、例えば、グルコース値、モニタ/較正値、時間調整、患者によるイベントエントリ(食事、炭水化物、エクササイズ等)、センサが起動/停止した時間、どの送信機がいつ使用されたか等を含む一方で、私有データは、一般に、バッテリレベル、画面持続期間、エラーログ、生センサ信号、専有アルゴリズム入力/出力、メモリのスタックダンプ等を含む、本システム及び本システムを備えるデバイスについての情報を含む。
【0097】
公開データ及び私有データは、リアルタイムデータ及びバルクデータの一方または両方を含み得る。バルクデータが、例えば、データ点、例えば、システムソフトウェアバージョン情報、診断情報、他の専有データ、及び記憶された読み取り値、例えば、1時間、2時間等のある期間にわたって記録されたグルコースレベルを含み得る一方で、リアルタイムデータは、例えば、データ点、例えば、監視されたグルコースレベル、監視された値と関連付けられたタイムスタンプ、グルコースモニタ状態等を含み得る。一般に、リアルタイムデータが、それが作成されたとき、またはそれが作成された直後に(例えば、1分毎、5分毎、10分毎等の周期的に)連続グルコースセンサユニット100またはディスプレイ104によって送信されたデータである一方で、バルクデータは、リアルタイムデータよりも長い期間(例えば、1時間)連続グルコースセンサユニット100またはディスプレイ104に記憶され、リアルタイムデータよりも低い頻度で送信され得るデータである。以下により詳細に記載されるように、一部のデータ(バルクまたはリアルタイム、私有または公開)が暗号化され得る一方で、他のデータは暗号化されない。
【0098】
さらに、ディスプレイ104は、データを異なる時間に送信することができる。例えば、ディスプレイ104a〜eは、リアルタイムデータ及びバルクデータをクラウドコンピューティングアーキテクチャ106に送ることができる。いくつかの実施態様では、リアルタイムデータもバルクデータもいずれもクラウドコンピューティングアーキテクチャ106に周期ベースで送られてもよく、各データ型は、異なる更新期間または同じ更新期間を有する。例えば、リアルタイムデータは、クラウドコンピューティングアーキテクチャに5分毎に提供されてもよく、バルクデータは、1時間毎に提供される。連続グルコースセンサユニット100からディスプレイ104に送信されるバルクデータ及びリアルタイムデータは、ディスプレイ104からクラウドコンピューティングアーキテクチャ106に送信されるバルクデータ及びリアルタイムデータと同じであり得るか、または異なり得る。例えば、ディスプレイ104からクラウドコンピューティングアーキテクチャ106に送信されるバルクデータ及びリアルタイムデータは、ディスプレイ104またはユーザとディスプレイ104との対話に関する情報を含む。これらは例示の更新期間にすぎず、任意の期間が本明細書に開示される実施形態によって企図される。
【0099】
プロセス202及び204で、第1のディスプレイ104a及び第2のディスプレイ104bは、それらのデータをクラウドコンピューティングアーキテクチャ106内のサーバに別々に送ることができる。データは、私有ヘッダ、私有データセクション、公開ヘッダ、公開コンテンツ、ならびに/またはポスト及びそのポストを作成するディスプレイのタイミングを記載するメタデータを含み得る。第1及び第2のディスプレイ104a〜bは、自動的に、またはクラウドコンピューティングアーキテクチャ106からの要求に応じてデータを送ることができる。ディスプレイ104〜bは、送信前に追加データを連続グルコースモニタ100aから受信されたデータに追加することもできる。
【0100】
ディスプレイ104a〜bは、受信時に、またはデータをある期間にわたって収集した後に、データをクラウドコンピューティングアーキテクチャ106に送ることができる。例えば、連続グルコースモニタ100aは、バルクデータをディスプレイ104aに1時間毎に提供することができ、ディスプレイ104aは、バルクデータを3時間収集した後に、それをクラウドコンピューティングアーキテクチャ106に提供することができる。
【0101】
いくつかの実施態様では、同じ連続グルコースモニタ100aと関連付けられた複数のディスプレイ104a〜bがデータを提供するため、クラウドコンピューティングアーキテクチャ106は、複数のソースから冗長データを受信し得る。しかしながら、このデータがディスプレイ104によって取得された時間によってわずかに異なり得るため、このデータは実際には冗長ではない場合がある。例えば、一方のディスプレイ104aが送信範囲外であったかもしれず、それ故に、以下に記載されるように、バックフィルされたデータを受信したかもしれない。他方のディスプレイ104bは、データを連続グルコースモニタ100aから予定通りに受信したかもしれない。データの全てまたは一部が、ディスプレイ104及びクラウドコンピューティングアーキテクチャ106の両方または一方のデータストリームに別々に記憶されてもよい。これにより、オーディットトレールが、データがいつどのデバイスから送られたかを決定することが可能になる。
【0102】
さらに、異なるアラートが各表示デバイス104a〜bに設定され得る。例えば、ユーザは、自身の電話機がアラートを日中に提供し、自身の受信機ディスプレイがアラートを夜間に提供することを望む場合がある。例えば、ユーザがアラートを取り損なった場合、技術サポートは、ユーザがアラートを受信すべきであった特定のディスプレイと関連付けられたデータストリームにアクセスし、そのディスプレイがデータをリアルタイムで受信したか、または連続グルコースセンサユニットからの1つ以上の送信を取り損なったためバックフィルされたデータとして受信したかを決定することができる。ディスプレイが送信を取り損なったときに取り損なわれたアラームが届いた場合、ディスプレイは、そのときにアラームを発行するためのデータを有さず、技術サポートがこの問題を診断することを可能にする。バックフィルされたデータは、ディスプレイによってリアルタイムデータとは異なってタグ付けされて、クラウドコンピューティングアーキテクチャ106に対してそれを区別することができる。タグがメタデータ形式であり得るため、クラウドコンピューティングアーキテクチャ106は、データがリアルタイムで、またはバックフィルされたデータとして取得されたかを決定するためにデータを別々に調べる必要はない。データのバックフィルのさらなる例及び記述が以下に提供される。
【0103】
プロセス206で、クラウドコンピューティングアーキテクチャ106は、第1のディスプレイ104a及び第2のディスプレイ104bからのデータを別々に記憶する。データは、メタデータを使用して、データがクラウドコンピューティングアーキテクチャ106で受信されたか、またはそれにポストされたタイムスタンプを提供することによって記憶され得る。したがって、クラウドコンピューティングアーキテクチャ106は、過去のポストが特定の表示デバイスから受信された時間を追跡する。ポストは、新しいデータ、または以前に送られ、エラーもしくは他のシステム異常により送信中断され、その後、再送信されたデータを含み得る。メタデータは、ディスプレイ及びクラウドコンピューティングアーキテクチャ106がディスプレイからの過去に試みられたメッセージ送信及びクラウドコンピューティングアーキテクチャ106による受信されたメッセージ送信を追跡することを可能にする。クラウドコンピューティングアーキテクチャ106の1つ以上のサーバは、送信された実際のデータを調べる必要がなく、代わりに、情報を効率的に記憶し、その後、その情報を読み出すためにメタデータに頼る。
【0104】
新しいデータ記録が本システムに作成されると、適切なパーミッションまたは権限を有する複数の他のコンピュータ及びサービスが、クラウドコンピューティングアーキテクチャ106からの通知を要求することによってこのデータについてアラートされ得る。例えば、連続グルコースセンサユニット100のユーザのグルコース状態を遠隔で監視する遠隔モニタのユーザによって動作可能な遠隔モニタデバイスは、遠隔モニタデバイスがクラウドコンピューティングアーキテクチャ106を通じて監視する特定の患者のグルコースレベルの通知を要求することによって、グルコースレベルについての情報を受信することができる。したがって、第三者アプリケーションが、グルコースレベルを含む公開情報、または受信する権限を与えられた他の情報を得ることができる一方で、技術サポートチームも専有私有データにアクセスすることができる。
【0105】
図3は、クラウドコンピューティングアーキテクチャ106によるシステムの例示の実施形態を図解する。大量のデータの受信及び記憶に関連付するいくつかの課題が存在する。かかる課題の1つは、単にデータの量である。ディスプレイ104a、104bからの5分毎等の周期ベースでのデータの受信は、データを記憶するためのサーバにかなりの負荷をかける。これは、全員がデータを同じサーバに送信する他の患者と関連付けられた何千もの追加のディスプレイにより悪化し得る。クラウドコンピューティングアーキテクチャ106は、第三者、技術サポート、及び他のシステムによって使用され得る長期データを記憶するのみならず、多数の患者からの最近のデータへの高速アクセスも提供することができる。加えて、データを受信し、安全な様式でそれを記憶し、権限付与されたデバイスのみがデータへのアクセスを得ることを確実にするためのセキュリティ問題が生じる。さらに、一部のデータは、ディスプレイを通じて送られるが、ディスプレイがそれにアクセスすることができないことが所望される場合がある。一例は、技術サポートによって使用され得るが、専有であり、ユーザに表示されるべきではない、電話機を介して送信機からサーバに送られるシステム診断情報である。例えば、
図3に示される、クラウドコンピューティングアーキテクチャ106のシステムは、異なるシステム構成要素による様々なアクセスレベルで異なるデータが異なって扱われることを可能にし得る。
【0106】
図3に示される例となる実施形態では、クラウドコンピューティングアーキテクチャ106は、サービスサーバ300及び/またはバックエンドコンピュータアーキテクチャ306を含む。ディスプレイ104a及び104bは、データをサービスサーバ300に送信する。サービスサーバ300は、本システムにおいて記憶、読み出し、及びグルコースレベルに関する通知を調整するための機能を提供する。一実施形態では、ディスプレイ104a、104bは、例えば、HTTPSウェブサービスを使用して、データをサービスサーバ300に送信する。データは、例えば、グルコース値、生データ、診断データ、及び他の種類の情報、例えば、エクササイズ情報または他の健康関連情報を含む。ディスプレイ104a及び104bは、いくつかの実施態様では、データをサービスサーバ300に自動的に送る。データは、連続グルコースセンサユニット100からのデータ、ならびにディスプレイ104によって追加された追加データを含み得る。
【0107】
ディスプレイ104a〜bは、2つ以上のカテゴリのデータを送ることができる。例えば、ディスプレイ104a〜bは、本明細書に記載されるように、リアルタイムデータ(例えば、グルコース値、イベントエントリ情報、センサ起動/停止、及び関連タイムスタンプ)及びバルクデータ(例えば、較正、技術サポート関連情報、アラートタイミング関連情報)として、公開データ及び私有データの両方を送ることができる。
【0108】
リアルタイムデータは、例えば、5分毎に、連続グルコースセンサユニット100及び/またはディスプレイ104から提供され得る。バルクデータは、例えば、1時間毎に、連続グルコースセンサユニット100及び/またはディスプレイ104から提供され得る。いくつかの実施態様では、バルクデータは、典型的にはいずれの第三者にも提供されないであろうシステム動作データ等の内部システムデータを含む。リアルタイムデータ点及びバルクデータ点は、異なり得るか、または重複し得る。例えば、バルクデータは、リアルタイムデータ値でもあるグルコース値も含み得る。データは、スマートフォン等のあるディスプレイ104から、データをサービスサーバ300にアップロードするパーソナルコンピュータまたは他のコンピューティングデバイス等の別の種類のディスプレイ104に直接送られ得る。例えば、いくつかの実施形態では、ディスプレイ104aは、連続グルコースセンサユニット100aからデータを受信するスマートフォンまたは専用受信機デバイスであり得、ディスプレイ104bは、パーソナルコンピュータであり得、そこでスマートフォンまたは受信機がデータをパーソナルコンピュータに提供し、パーソナルコンピュータは、有線または無線リンクを通じてデータをアップロードする。他の実施形態では、ディスプレイ104aは、データを連続グルコースセンサユニット100aから受信する連続グルコースセンサユニット100aと関連付けられた専用表示デバイスであり得、それがデータをサービスサーバ300に、またはパーソナルコンピュータを介して提供する予定である場合、それは、クレードル通信デバイス(「クレードル」)を介して提供する。例えば、専用表示デバイスは、クレードル内に設置されて、2つのデバイスを接続することができる。クレードルは、データをサービスサーバ300にアップロードするためにネットワーク接続を含み得る。別の実施形態では、ディスプレイ104bは、スマートフォンであり、それは、アプリケーションを使用してデータをアップロードする。リアルタイムデータ及びバルクデータは、異なる様式で、例えば、異なる時間間隔でサービスサーバ300と同期化されて、クラウドコンピューティングアーキテクチャ106によるリアルタイムデータ及びバルクデータの別個の記憶及び読み出しを促進することができる。
【0109】
一実施形態では、連続グルコースモニタ100内の送信機102は、バルクデータ及びリアルタイムデータを分けることができる。送信機102は、バルクデータの全てまたは一部を暗号化し、送信機100に記憶された鍵を使用して、それを、関連ディスプレイ104を通してサービスサーバ300に送ることができる。いくつかの実施形態では、ディスプレイ104は、暗号化バルクデータの復号鍵を有さず、それ故に、単に暗号化バルクデータのパススルーとしての機能を果たすが、共有サービスサーバ300及びバックエンド306は、暗号化バルクデータの復号鍵を含み得る。送信機102は、例えば、Bluetooth(登録商標)暗号化または他の技法を使用して、リアルタイムデータの全てまたは一部も暗号化することができ、ディスプレイ104は、リアルタイムデータを受信し、使用及び表示のためにその一部または全てを復号し、記憶のためにリアルタイムデータを共有サービスサーバ300に転送することができる。
【0110】
サービスサーバ(複数可)300は、30日間等の所定の時間、データを記憶し、バックエンドコンピュータ(複数可)306とともに、データを他のデバイス、アプリケーション、及び社外に同期化する。サービスサーバ300及びバックエンドコンピュータ(複数可)306は、異なるレベルのセキュリティを異なるデータ型に用いることができる。
図3に示される例となる実施形態では、サービスサーバ(複数可)300は、共有サービスサーバ304及びデータ同期化サーバ302を含む。共有サービスサーバ(複数可)304は、リアルタイムデータをバルクデータとは別々に記憶する。例えば、ディスプレイは、データを別々にまたは一緒に送ることができ、データは、連続グルコースセンサユニット100、ディスプレイ104、またはサービスサーバ300によってリアルタイムデータ及びバルクデータに分けられ得る。一実施形態では、共有サービスサーバ304は、所定の時間のみデータを記憶する。例えば、これは、共有データの高速検索及びそれへのアクセスを可能にし、共有サービスサーバ304に記憶されるデータの量も制限する。いくつかの実施態様では、共有サービスサーバ304は、過去30日間のデータのみを記憶し、データが、他のデバイスがデータを読み出さなければならない期間のみ記憶されることを可能にする。他の実施態様では、共有サービスサーバ300は、30日を超える期間または30日未満の期間、データを記憶することができる。
【0111】
サービスサーバ300は、患者毎及びシステム毎のデータポストの収集を支援する。その後、クライアント、例えば、患者のディスプレイ104、他のサービス318と関連付けられたデバイス、遠隔モニタデバイス、または他のシステム構成要素は、各患者のデータの特定の範囲を求めることによってデータを要求する。データの範囲は、データがサーバにポストされた時間に基づき得る。いくつかの実施態様では、ディスプレイによるデータの各送信は、ポスト識別子に割り当てられ得る。クライアントによって同様に追跡され得るポスト識別子後に届く全てのデータポストを取得するよう要求され得る。
【0112】
いくつかの実施態様では、クラウドコンピューティングアーキテクチャ106の実施形態によるシステムは、ポストされた情報の別個の記録「ストリーム」を連続グルコースセンサユニット100との使用専用のスマートフォン及び/または受信機等の患者のソースディスプレイ104毎に維持する。各ポストは、どのディスプレイがデータをポストしたかを示すことによってソース型を識別することができる。これにより、複数のソースからの患者データのポストの重複となる。サービスサーバ300は、いくつかの実施態様では、これらのデータポストストリームを別々に記憶して、表示デバイスがそれら自身の内蔵連続データのみに対して増分ポストを作成することを可能にすることによってポスト表示デバイスの複雑性を低減する。その後、消費者は、ストリーム間の差異を維持するか、またはそれについてレポートすることができ、または所望/必要に応じてストリームのコンテンツを組み合わせることができる。
【0113】
共有サービスサーバ304を通じて最近のデータにアクセスする他のデバイスの例としては、データをリアルタイムで受信する遠隔モニタ322が挙げられる。遠隔モニタ322は、別の患者のグルコースレベルを監視する人物である。遠隔モニタ322は、サービスサーバ(複数可)300と通信し得るスマートフォン、タブレット、パーソナルコンピュータ等のディスプレイ316を使用して、患者のグルコース状態を監視することができる。例えば、遠隔モニタ322は、遠隔モニタ322によって動作可能なディスプレイ316a及び/または316bを使用して、自身の子供のグルコースレベルにアクセスし、かつそれを監視する親または保護者であり得る。いくつかの実施態様では、患者のディスプレイ104aは、グルコースデータを共有サービスサーバ304に送信し、共有サービスサーバ304は、ある期間、例えば、最大30日間、グルコースデータを記憶する。遠隔モニタ322のディスプレイ316aは、特定の患者のグルコースデータにアクセスするパーミッションを要求及び取得して、共有サービスサーバ304からグルコースデータを要求する。
【0114】
遠隔モニタ322に関して生じ得る課題の1つは、遠隔モニタの任意の識別情報の記憶が、例えば、米国の医療保険の携行性及び責任に関する法律(HIPPA)に基づくHIPPA規制等の政府プライバシー法及び規制下、または他の国の他の類似の法律もしくは規制下での相互作用に問われ得ることである。任意のプライバシー法または規制への関与を避けるために非患者(すなわち、遠隔モニタ322)情報のクラウドコンピューティングアーキテクチャ106への記憶を避けることが好ましいであろう。したがって、いくつかの実施形態では、クラウドコンピューティングアーキテクチャ106は、いずれの遠隔モニタの個人情報も受信または記憶しない。代わりに、遠隔モニタ322には、遠隔モニタ322と関連付けられたデジタル署名または他の安全な匿名識別子308が割り当てられ得るが、関係は、クラウドコンピューティングアーキテクチャ106には記憶されない。例えば、遠隔モニタ322の登録プロセスは、遠隔モニタのユーザの匿名識別番号である一意の数字を生成し得る。共有サービスサーバ304と遠隔モニタの表示デバイス316aとの間等のクラウドコンピューティングアーキテクチャ106の実施形態によるシステム内での通信は、遠隔モニタ322を識別するであろう情報の代わりに匿名識別子308を使用する。
【0115】
いくつかの実施形態では、クラウドコンピューティングアーキテクチャ106は、バックエンドコンピュータアーキテクチャ306、例えば、サービスサーバ(複数可)300と通信している1つ以上のサーバ等を含む。バックエンドサーバ(複数可)306は、共有サービスサーバ(複数可)304からリアルタイムデータを受信し、データ同期化サーバ(複数可)302からバルクデータを受信することができる。いくつかの実施態様では、バックエンドサーバ(複数可)306は、過去30日を過ぎた履歴データを記憶し、他のサービスデバイス318を通じて過去30日を過ぎたデータへのアクセスの要求を受信する。
【0116】
バックエンドサーバ(複数可)306は、データをアーカイブ目的のために永久にまたは長期間のいずれかの期間記憶することができるデータウェアハウスとして機能し得る。いくつかの実施形態では、例えば、技術サポートユニット314は、システム動作の任意の問題のための自動技術サポートをユーザ及び患者に提供する。技術サポートユニット314は、グルコースデータ及び他のリアルタイムデータ及びバルクデータを受信し、それらのデータを永久に記憶して、今後の技術サポート問題を支援することができる。例えば、患者は、グルコースレベルが規定のレベルに到達するか、または規定の変化率を経験したときのためのアラートをディスプレイ104a、104b上に確立する。アラートがディスプレイ104上に送られず、それにより患者がアラートを取り損なった場合、患者は、技術サポートサービスセンター324にコールして、アラートが発行されなかった理由を決定することができる。同様に、例えば、患者は、バックエンドサーバ(複数可)306の技術サポートユニット314によって自動的に対処及び/または解決される問題を有し得る。この点において、技術サポートサービスセンター324は、技術サポートユニット314を介して問題に対処し、かつ/またはそれを解決する際に、単に人的対話を患者に提供し得る。技術サポートユニット314は、患者がアラートを受け取らなかった理由を決定することができる。一例では、データは、ディスプレイ104aが連続グルコースセンサユニット100から無線範囲外であったためディスプレイ104aによって取り損なわれたかもしれず、それ故に、ディスプレイ104aは、アラートを発行すべきであったデータを有しなかった。しかしながら、かかる例では、データは、以下により詳細に記載されるように、その後にディスプレイ104aにバックフィルされたかもしれず、それ故に、ディスプレイ104aを見ている患者は、ディスプレイ104aが正しい時間にデータを有したと確信する。
【0117】
例えば、技術サポートユニット314を含むバックエンドサーバ(複数可)306は、データが各ディスプレイ104a、104bによってリアルタイムで、またはバックフィルプロセスの一部として受信されかの指示を記憶する。ディスプレイ104a内のデータがバックフィルされたと決定することによって、技術サポートユニット314は、患者のデバイスが、アラームが発行されるべきであった関連時間にデータを有しなかったことを患者に通知することができる。同様に、例えば、バックエンドサーバ(複数可)306の技術サポートユニット314と通信している技術サポートサービスは、患者のデバイスが、アラームが発行されるべきであった関連時間にデータを有しなかったことを患者に通知することができる。したがって、
図3のクラウドコンピューティングアーキテクチャは、データが、特定のデバイス、例えば、ディスプレイ104a、ディスプレイ104b、サービスサーバ(複数可)300等によってリアルタイムで、またはバックフィルプロセスの一部として受信されたかに基づいて、データを区別する。
【0118】
図3に示される実施形態では、バックエンドサーバ(複数可)306は、製品の使用を監視し、連続グルコースセンサユニットに更新を行い、かつディスプレイ及び他のシステムデバイス上でソフトウェアを更新する製品監視サーバ310も含む。一例として、製品監視サーバ310は、患者の連続グルコースセンサユニット100と関連付けられたセンサがいつ取り換えられるべきかを決定し、新しいセンサを注文するためのリマインダとして電子メールを患者に自動的に送ることができる。
【0119】
図3に示される実施形態では、バックエンドサーバ(複数可)306は、シングルサインオンサーバ312も含む。シングルサインオンサーバ312は、いくつかの異なるアプリケーション及び本システムにアクセスする患者及びユーザにシングルサインオンを提供する。例えば、本システムが別個のシステム、アプリケーション、及び構成要素から成る場合、ユーザが別個のシステムにログインしなければならないため、ユーザ経験はシームレスではない場合があり、一例証的例では、ディスプレイ104は、連続グルコースレベルを監視するために使用されるアプリケーション及びインスリン注射を制御するためのアプリケーションを実行することができる。インスリン注射を制御するためのアプリケーションは、グルコース情報を要求し、それ故に、2つまたはさらには3つの別個のログイン(グルコースレベルを監視するためのアプリケーションのためのログイン、インスリン注射を制御するためのアプリケーションのためのログイン、及びインスリン注射アプリケーションを通じてグルコースレベルにアクセスするためのログイン)を要求する場合がある。これはユーザにとって面倒であり得る。開示される技術による課題に対する例となる解決策の1つは、グルコースレベルを監視するためのアプリケーションに他のアプリケーションをウェブビューに開かせ、シングルサインオンの使用を許可することであり、それにより、ユーザが本システムの他のモジュールに誘導されたときに、ユーザがログイン情報を1回入力し、情報を再入力しなくてもよくなる。例えば、連続グルコース監視アプリケーション内に、他のアプリケーション、例えば、グルコースレベルに関するより詳細な統計情報を有するレポートを見るためのアプリケーションのためのアイコンが提供され得る。ユーザがそのアイコンを選択すると、アプリケーションがウェブビューを起動する。この例では、ウェブビュー要求は、共有サービスサーバ300をバイパスして、第2のアプリケーションをホストするサーバに直接アクセスすることによって他のサービスにアクセスする事実上シームレスな経験をユーザに提供することができる。
【0120】
したがって、スマートフォン及び他のディスプレイは、シングルサインオンサーバ312を使用するクラウドインフラストラクチャを通じて本システムにログインすることができる。例えば、送信機識別子は、連続グルコースセンサユニット100上に印刷され、その特定の送信機を特定の患者と相関させるためのサインオンとして使用され得る。加えて、またはあるいは、例えば、ユーザは、ログイン名及びパスワードを有してもよく、様々な異なる暗号化アルゴリズムが認証プロセスに使用され得る。
【0121】
他のサービス318は、患者データへのアクセスを求めるいくつかの他のサービスを含み得る。いくつかの実施形態では、他のサービス318は、データにアクセスするユーザまたはコンピュータとインターフェースをとるために、コンピュータベースのデータサービス、例えば、データベース、データ管理プログラム、及び/またはポータルを含む。一例として、パーソナルコンピュータ、スマートフォン、タブレット等のコンピューティングデバイスを使用する医師320は、他のサービス318を通じて、サービスサーバ(複数可)300によって記憶された患者データへのアクセスを要求することができる。例えば、医師は、最近及び過去のグルコースレベルを要求して、インスリン注射投薬量を変更するべきかを分析し、診療所訪問間の患者の進展を追跡し得る。他のサービス318は、一実施形態では、ある期間、例えば、過去30日間、サービスサーバ300を通じてリアルタイムデータを受信する。他のサービス318は、データを同期化し、サービスサーバ(複数可)300を通じてデータを周期的に保存することができる。例えば、いくつかの他のアプリケーションは、データを1時間毎に要求し、他のアプリケーションは、データを毎日要求し、他のアプリケーションは、データを毎週要求して、サービスサーバ(複数可)300からのデータを有することができる。例えば、他のサービス318は、データ分析を行うために個別の患者及び患者クラスの両方のデータを要求するアプリケーションを含み得る。他のサービス318がサービスサーバ(複数可)300によって記憶された年齢範囲を超えるデータを要求した場合、その要求は、長期アーカイブされたバルクデータ及びリアルタイムデータを記憶するバックエンドサーバ(複数可)306に送られ、それによって処理される。本システムの様々な構成要素がバルクデータ及びリアルタイムデータへのアクセスを要求することができるタイミングは異なり得る。例えば、クラウドコンピューティングアーキテクチャ106は、他のサービス318のデータへのアクセスを1日1回に制限するか、フルアクセスを常時許可するか、または様々な他の時間枠で許可することができる。
【0122】
図3のクラウドコンピューティングアーキテクチャ106の他の実施形態がより少ない構成要素または追加の構成要素を含んでもよいことが理解される。加えて、クラウドコンピューティングアーキテクチャ106の実施形態によるシステムは、全てのディスプレイ未満のディスプレイがデータを単一クラウドコンピューティングアーキテクチャに送信するように、複数のクラウドコンピューティングアーキテクチャを含んでもよい。例えば、複数の接続されたクラウドコンピューティングアーキテクチャは、異なる地理的地域にわたって使用され得るが、コンピューティング負荷を分散するための他の配置も可能である。
【0123】
ここで、データを別個の群に記憶するための方法を図解する
図4を参照する。いくつかの実施態様では、連続グルコースセンサユニット100及びディスプレイ104は、異なって処理される必要があり得る異なるデータ型(例えば、リアルタイムデータ及びバルクデータ、私有データ及び公開データ)を作成及び送信することができる。具体的には、システム動作についての専有情報を含むデータ及び患者を識別するために使用され得るデータ等のデータが全て第三者または他のシステム構成要素への再送信に適切ではない場合がある。異なる記憶場所、データへのアクセスを制御するための異なる方針、及び異なる記憶期間を含む、データが異なって処理され得るようにデータを分けることは、ある課題を提示し得る。データは、グルコースレベルに関するデータ、本システムの機能についてのデータ、ユーザと本システムとの対話、及び他のデータ型を含み得る。
【0124】
プロセス400で、連続グルコースセンサユニット100は、送信のためにグルコースレベルを含むデータ及び他のデータを準備する。データは、例えば、測定されたグルコース値及び診断データを含む。データは、第1のデータセット(例えば、リアルタイムデータ)及び第2のデータセット(例えば、バルクデータ)を含み得る。リアルタイムデータは、グルコース値、連続グルコースセンサの現在の状態、グルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプ等のうちの1つ以上を含み得る。バルクデータは、連続グルコースセンサユニット100を較正するための情報、連続グルコースセンサユニット100の技術サポートのために使用される情報等のうちの1つ以上を含み得る。例えば、連続グルコースセンサユニット100を較正するための情報は、試験キットを使用して患者によってサンプリングされる前述の値を含み得る。いくつかの実施態様では、連続グルコースセンサユニット100の電子機器ユニット(例えば、送信機102)は、送信されるデータをある形式(複数可)または群に集約及び/またはフォーマットすることによってデータを準備する。例えば、以下により詳細に記載されるように、連続グルコースセンサユニット100は、データの一部または全てを暗号化することができる。いくつかの実施態様では、データは、異なるデータセット毎に異なって準備され得るデータセット、例えば、リアルタイムデータ及びバルクデータに対応する様式で準備される。
【0125】
プロセス402で、連続グルコースセンサユニット100は、グルコースデータ及び他のデータを1つ以上のディスプレイ104に送信し、それらのうちの一部が暗号化され得る。実施形態のうちのいくつかでは、ディスプレイ104は各々、暗号化されたデータのうちの全てではないが一部を復号するための復号鍵を記憶して、患者によるある特定のデータ型へのアクセスを制御することができる。例えば、ディスプレイ104は、グルコースレベルを含むリアルタイムデータを復号することができ、それから、ディスプレイ104は、直近1時間、6時間、または1日等のある期間にわたる現在のグルコースレベル及び過去のグルコースレベルを含むグラフを生成及び表示することができる。実施形態のうちのいくつかでは、ディスプレイ104は、そのデータを部外秘にするために、システム診断情報及び/または生データ値等のバルクデータを復号するための鍵を有しない。
【0126】
プロセス404で、1つ以上のディスプレイ104は、データをクラウドコンピューティングインフラストラクチャまたはクラウドインフラストラクチャとも称されるクラウドコンピューティングアーキテクチャ106に転送する。プロセス404は、いくつかの実施形態では、例えば、データが受信されたとき、または所定の時間のいずれかに、ユーザからの要求なしで自動的に起こり得る。ディスプレイは、異なる時間に、異なるデータ型をクラウドコンピューティングアーキテクチャ106に送ることができる。加えて、ディスプレイ104は、さらなるデータを連続グルコースセンサユニット100から受信されデータに追加し、その追加データをクラウドコンピューティングアーキテクチャ106に自動的に転送することができる。かかる追加データは、例えば、アラームの時間、データがディスプレイ上で見られた時間、ディスプレイ104によってさらに処理されるデータ等を含み得る。
【0127】
プロセス406で、クラウドコンピューティングアーキテクチャ106は、データを別個の群に記憶する。いくつかの実施態様では、例えば、共有サービスサーバ(複数可)304は、リアルタイムデータを記憶することができ、バックエンドサーバ(複数可)306は、バルクデータを記憶することができる。クラウドコンピューティングアーキテクチャ106の様々な構成要素は、両方のデータ群の復号鍵を記憶して、ある特定のデータ型へのアクセスを制限することができる。例えば、バックエンドサーバ(複数可)306は、リアルタイムデータ及びバルクデータの両方の復号鍵を記憶することができ、それ故に、技術サポート(例えば、技術サポートユニット314)が両方のデータ型にアクセスすることができる。しかしながら、他のサービス318は、他のサービス318がバルクデータにアクセスすることができないように、バルクデータの復号鍵を記憶しない場合がある。結果として、クラウドコンピューティングアーキテクチャ106は、データカテゴリ及びデータへのアクセスを試みる1つ以上の要求システムによる様々なデータカテゴリ(例えば、第1のデータセット及び第2のデータセット)へのアクセスを許可するかを選択的に決定する。例えば、いくつかの実施形態では、クラウドコンピューティングアーキテクチャ106は、要求システムを識別する表を含み得る。クラウドコンピューティングアーキテクチャ106によって受信されたデータの要求は、要求システムがある特定のデータカテゴリのみにアクセスすることができるように、要求を行うシステムを識別することができる。
【0128】
ここで、それぞれ、暗号化システム及びデータを暗号化するための方法の例となる実施形態を図解する
図5及び6を参照する。
図5及び6は、機密データを第三者による権限付与されていないアクセスから保護するための技法を提供する。この分野での課題は、データを、データのサブセットのみを受信するように権限付与されたエンティティに分散する能力である。例えば、クラウドコンピューティングアーキテクチャ106は、患者を識別しないデータへのサービスアクセスを許可し得るが、患者識別データまたはシステム診断データへのサービスアクセスを拒否し得る。同時に、クラウドコンピューティングアーキテクチャ106は、技術サポート等の他のエンティティにシステム診断データへのフルアクセスを許可し得るが、患者識別データへのフルアクセスを必ずしも許可するわけではない。様々なレベルのセキュリティ及び権限が、例示の
図4及び5の技法等のシステム構成要素によるデータへのアクセスを制御するための技法を使用することができる。
【0129】
概念的には、
図5のシステムは、送信機102でロックされたボックス内にメッセージを置く。サービスサーバ(複数可)300及び/またはバックエンドサーバ(複数可)306等の意図された受信者のみが鍵を有する。いくつかの実施態様では、送信機102がメッセージをスマートフォンまたは専用受信機等のディスプレイ104に送り、ディスプレイ104が暗号化されたメッセージをサービスサーバ(複数可)300に送る。ディスプレイ104は、データの全てを復号する能力を有することなく、パススルーとして機能する。
【0130】
具体的には、送信機102aは、公開鍵506、秘密鍵504、及び私有データ502を記憶することができる任意の種類の不揮発性メモリであり得るメモリ500を含む。公開鍵506は、公開暗号化鍵、例えば、RSA 1024暗号化のための鍵である。秘密鍵504は、高度暗号化標準等の別の暗号化レベルのために使用される追加の私有鍵である。私有データ502は、例えば、前述のバルクデータを含み得る。秘密鍵504は、製造プロセス中に送信機102aに記憶され得る。
【0131】
送信機102aは、ディスプレイ104a、104bの各々に、508で示されるように公開鍵506でラップされた秘密鍵504を送り、510で示されるように秘密鍵504でラップされた保護データも送る。ディスプレイ104a、104bが公開鍵506を有さず、それ故に、秘密鍵504にアクセスすることも、秘密鍵504を使用して私有データ502にアクセスこともできない。代わりに、私有データ502は、ディスプレイ104a、104bを通過して復号のためにサービスサーバ(複数可)300に送信されるデータを含む。この様式で、ディスプレイ104a、104bがある特定の私有データへのアクセスを制限される一方で、クラウドコンピューティングアーキテクチャ106はこのデータにアクセスすることができる。具体的には、バックエンド306は、514に示されるように、私有鍵を記憶する。
【0132】
図解されていないが、以下に記載されるように、送信機102は、ディスプレイ104a、104bが復号及び表示する他のデータもユーザに送信する。このデータは、例えば、リアルタイムデータを含み、Bluetooth(登録商標)暗号化スキーム及び他の技法に従って暗号化され得る。ディスプレイ104bは、パーソナルコンピュータ、タブレット、または他のコンピューティングデバイス上で実行することができるPCアップローダプログラム512に接続され得る。
【0133】
図6を参照して、例えば、本技術によるデバイス及びクラウドコンピューティングシステムアーキテクチャによって実施可能なデータを暗号化及び送信するための対応する方法が記載される。プロセス600で、送信機102は、第1のデータセットを暗号化する。例えば、送信機102は、Bluetooth(登録商標)暗号化を使用してグルコース値を含むリアルタイムデータを暗号化する。プロセス602で、送信機102は、ディスプレイ104によってアクセス可能であるべきではない専有情報を含むバルクデータ等の第2のデータセットを暗号化する。第2のデータセットは、高度暗号化標準及び様々な他の技法を使用して暗号化され得る。
【0134】
送信機102は、プロセス604で、第1のデータセット及び第2のデータセットをディスプレイ(複数可)104に送信する。送信機102は、第1のデータセット及び第2のデータセットを一緒にまたは異なる時間のいずれかに送る。例えば、第1のリアルタイムデータセットが5分毎に送られ得る一方で、バルクデータは1時間毎に送られ得る。この様式で、送信機102は、各々異なる技法を使用して暗号化されるこれらの2つのデータセットを異なるデータストリームとしてディスプレイ(複数可)104に送る。
【0135】
プロセス606で、ディスプレイ(複数可)104は、第1のデータセットを復号する。ディスプレイ(複数可)104は、データをユーザインターフェース上でユーザに提示し、データをクラウドコンピューティングアーキテクチャ106にアップロードし、データを他のアプリケーションに提供し、データをローカルメモリに記憶する。ディスプレイ(複数可)104は、プロセス608で、第1のデータセット及び第2のデータセットの両方をクラウドコンピューティングアーキテクチャ106に転送することができる。プロセス608は、データの受信時に自動的に、周期的に、またはユーザもしくはクラウドコンピューティングアーキテクチャ106からの要求に応じて起こる。いくつかの実施態様では、ディスプレイは各々、第1のデータセット及び第2のデータセットを異なるストリームで異なる時間に受信し、受信時にそれらのストリームをクラウドコンピューティングアーキテクチャ106に自動的に転送する。この様式で、クラウドコンピューティングアーキテクチャ106は、各々異なって暗号化された第1のデータセット及び第2のデータセットを異なる時間に受信する。
【0136】
プロセス610で、第2のデータセットが復号される。一実施形態では、第2のデータセット、またはその一部は、クラウドコンピューティングアーキテクチャ106によって復号され得る。別の実施形態では、第2のデータセット(またはその一部)は、例えば、鍵を有し、かつ第2のデータセットを復号することができるイヌリンプロバイダ等の別の場所に送られ得る。ディスプレイ(複数可)104が第2のデータセットにアクセスするための復号鍵を欠いているが、クラウドコンピューティングアーキテクチャ106(例えば、共有サービスサーバ(複数可)300及び/またはバックエンドサーバ(複数可)306内)及び/または他の場所(例えば、インスリンプロバイダ)は、復号鍵を含む。いくつかの実施態様では、クラウドコンピューティングアーキテクチャ106は、第1のデータセットを受信及び復号し、それをクラウドサービスサーバ内のローカル短期記憶装置及びバックエンド内の長期記憶装置の両方に提供する。
【0137】
ここで、データがアクセスされ得る共通インターフェースを提供するための例示の方法を図解する
図7を参照する。クラウドコンピューティングアーキテクチャ106は、第三者システムを含む多くの異なる構成要素との統合システムを提供することができる。しかしながら、いくつかの例では、これは、変更がいずれか1つの構成要素に加えられるたびに全システムが規制見直しを受けなければならない場合があるため、規制観点から問題となり得る。この問題に対処するために、例えば、クラウドコンピューティングアーキテクチャ106は、各モジュールが規制観点から独立していると見なされ得るように構成されていてもよく、これにより、各モジュールが別個の規制見直しを受け得る。具体的には、クラウドコンピューティングアーキテクチャ106は、一組の標準アプリケーションプログラムインターフェースを提供して、インターフェースをとるための既知のフォーマットを提供することができ、様々な構成要素が別々に構築及び維持されることを可能にする。
【0138】
クラウドコンピューティングアーキテクチャ106が直面する別の課題は、異なる患者のデータへのアクセスの多数の要求をどのように処理するかである。例えば、要求は、様々な要求フォーマットならびに応答を受信及び処理するための能力を有し得るいくつかの異なるサーバ、コンピューティングデバイス、及びソフトウェアアプリケーションで発生し得る。クラウドコンピューティングアーキテクチャシステム106が各々の新しい要求及び応答の種類に適応するように変更される場合、本システムは、医療デバイスとして再認定されなければならない場合があり、これは、時間及びコストのかかるプロセスであり得る。したがって、
図7の方法は、共通インターフェースを提供し、それを通じて要求を受信し、新しい要求の種類のために変更される必要のないモジュラーシステムを確保する。
【0139】
一例では、クラウドコンピューティングアーキテクチャ106は、ハブ及びスポークフレームワークを用い、スポークフレームワークには、ハブが、どの情報が各特定のスポークによってアクセスされ得るかの規則を含む。この方法で、それらのスポークは、適切な情報及び/またはそのスポークによって必要とされる情報のみにアクセスする。スポークの例としては、遠隔監視アプリケーション、第三者アプリケーション、及び他のサービスが挙げられる。
【0140】
プロセス700で、クラウドコンピューティングアーキテクチャ106は、データへのアクセスを制御するための規則を定義する。規則としては、ユーザパーミッション、遠隔モニタの承認プロセス、第三者及び他のソフトウェアアプリケーションの承認プロセス、ならびにクラウドコンピューティングアーキテクチャ106の構成要素自体のからのアクセスを制御するための規則が挙げられ得る。例えば、遠隔モニタが専有バルクデータにアクセスする必要がない一方で、技術サポートは、バルクデータにアクセスすることができる。規則他の例としては、アクセスされ得るデータの量の制御、データがいつアクセスされ得るかのタイミングの制御等が挙げられる。かかる規則は、本システムがユーザのために整備されたときに実施され得るか、または、例えば、かかる規則をクラウドコンピューティングアーキテクチャ106に設定するパーミッション及び権限を有するアドミニストレータによって実施され得る。かかるパーミッション及び権限は、プライバシー法及び規制に従わなければならない場合がある。
【0141】
プロセス702で、クラウドコンピューティングアーキテクチャ106は、データにアクセスするための一組のアプリケーションプログラムインターフェースを提供する。これらのアプリケーションプログラムインターフェースは、データの要求が受信され得る標準化インターフェースを定義する。標準化インターフェースは、第三者及びアプリケーション開発者に提供されて、アプリケーションプログラムインターフェースに固執する要求を作成する。プロセス704で、コンピューティングデバイスまたはアプリケーションは、要求をアプリケーションプログラムインターフェースのうちの1つを通じてクラウドコンピューティングアーキテクチャ106に提供する。
【0142】
次に、プロセス706で、クラウドコンピューティングアーキテクチャは、プロセス700で定義される規則に基づいて、データへのアクセスの要求を許可するかを決定する。例えば、クラウドコンピューティングアーキテクチャ106は、要求者を識別し、要求者が要求されたデータへのアクセスを得るべきかを決定する。プロセス706で、クラウドコンピューティングアーキテクチャが、要求者が要求されたデータにアクセスしないと決定した場合、プロセス708で、クラウドコンピューティングアーキテクチャ106は、要求を拒否する。プロセス706で、クラウドコンピューティングアーキテクチャ106が、要求者が要求されたデータにアクセスすると決定した場合、プロセス710で、クラウドコンピューティングアーキテクチャ106は、要求を許可する。プロセス704〜710は、クラウドコンピューティングアーキテクチャ内のいくつかの異なる構成要素によって行われ得る。例えば、最近のデータの要求がサービスサーバ(複数可)300内を流れ得る一方で、より過去にアーカイブされたデータの要求は、バックエンドサーバ(複数可)306によって処理され得る。
【0143】
図8及び9A〜9Dは、ディスプレイ104等のコンピューティングデバイスからクラウドコンピューティングアーキテクチャ106への要求を処理するための開示される技術の実施形態による例示の方法及びシステム略図を図解する。上述のように、いくつかの異なるサーバ及びアプリケーションからの要求の処理は、クラウドコンピューティングアーキテクチャ106に課題を提示する場合がある。1つの解決策は、
図7に記載されるように、クラウドコンピューティングアーキテクチャ106に共通アプリケーションプログラムインターフェースを提供することである。別の解決策は、ディスプレイ104上で実行するアプリケーション(アプリ)を使用して要求を共通フォーマットにすることを含む。
図8及び9は、ディスプレイ104上で実行するアプリケーションを使用して要求を共通フォーマットにする一例を提供する。
【0144】
図8を参照して、ディスプレイ104は、連続グルコースモニタアプリケーション800、及び複数の他のアプリケーション802a、802bを含む。連続グルコースモニタ(CGM)アプリケーション800は、連続グルコースセンサユニット100の送信機102及びクラウドコンピューティングアーキテクチャ106の両方とインターフェースをとるように設計されたアプリケーションであり得る。アプリケーション802a、802bは、データ要求804をCGMアプリケーション800に提供し、CGMアプリケーション800は、要求中のアプリケーション802a、802bのデータ要求が許可されるべきかを決定するための
図7との関連で上述される規則ロジックを含み得る。
【0145】
要求が許可されるべきであり、かつデータがローカルで記憶される場合、CGMアプリケーション800は、810で示されるように、データ応答を提供する。いくつかの実施形態では、CGMアプリケーション800は、データ要求806をクラウドコンピューティングアーキテクチャ106に転送し、クラウドコンピューティングアーキテクチャ106は、
図7に記載の技法を使用して、要求を許可するかを決定する。要求が許可されるべきである場合、クラウドコンピューティングアーキテクチャ106は、データ応答808をCGMアプリケーション800に送り、CGMアプリケーション800は、データ応答810を要求中のアプリケーション802aまたは802bに転送する。
【0146】
図9Aは、ディスプレイ104上で実行するCGMアプリケーション800のユーザインターフェースの例示の実施形態を図解する。CGMアプリケーション800は、904で、最近のグルコースレベル、現在のグルコースレベル(例えば、86mg/dL、及び傾向パターン(例えば、上昇、安定、または下降))のチャートを含むグルコースレベルに関する情報を表示する。いくつかの実施態様では、CGMアプリケーション800は、
図8に記載のアプリケーション802a、802b等の他のアプリケーションへのリンクとしてのアイコン900、902を表示する。この例では、アイコン900は、エクササイズアプリケーションにリンクし、アイコン902は、インスリンアプリケーションにリンクする。CGMアプリケーション800内のこれらのリンクは、
図3のシングルサインオン312に関して上述されるように、ユーザがシングルログインを使用して複数のアプリケーションにログインすることを可能にする。加えて、これらのリンクは、同じ製造業者か異なる製造業者かにかかわらず、グルコースレベル及び傾向に関連する異なるアプリケーションによって記憶された他の情報にアクセスするための便利な方法をユーザに提供することができる。
【0147】
図9Bは、記載される技術の態様を行うためのクラウドサーバアーキテクチャ106によるシステムの例示の実施形態を図解する。この図解では、ディスプレイ104aは、
図8との関連で記載されるCGMアプリケーション800等のアプリケーションを実行するスマートフォンを含む。他の例では、ディスプレイ104aは、コンピューティングデバイス、例えば、ラップトップコンピュータ、デスクトップコンピュータ、タブレット、PDA、ウェアラブルコンピューティングデバイス等であり得る。例えば、ディスプレイ104aは、連続グルコースセンサユニット100と通信している。ディスプレイ104aは、連続グルコースセンサユニット100と無線で通信していてもよく、または有線もしくは光ケーブルを通じて連続グルコースセンサユニット100に接続されていてもよい。
【0148】
ディスプレイ104aは、連続グルコースセンサユニット100から複数のデータ型を受信し、複数のデータ型を、クラウドコンピューティングアーキテクチャ106の例となる実施形態であるクラウドサーバアーキテクチャ910に送信することができる。ディスプレイ104aからクラウドサーバアーキテクチャ910に送信されたデータは、データに割り当てられた分類に基づいて異なる時間に送信され得る。データは、リアルタイムデータ及びバルクデータとして分類され得る。リアルタイムデータが、1分毎、5分毎、10分毎等のより高い頻度で、ディスプレイ104aからクラウドサーバアーキテクチャ910に送信される一方で、バルクデータは、30分毎、1時間毎、2時間毎等のリアルタイムデータよりも比較的低い頻度で、ディスプレイ104aからクラウドサーバアーキテクチャ910に送信され得る。
【0149】
リアルタイム情報の場合、連続グルコースセンサユニット100から送信されたデータは、ディスプレイ104aによって受信され、クラウドサーバアーキテクチャ910の一部として含まれるリアルタイムサーバ908に送信される。リアルタイム情報は、推定グルコース値(複数可)(EGV)、グルコース濃度変化率情報、CGMアラート情報、生センサデータ、及び/または本明細書で論じられる他の種類の公開もしくは私有データのうちの1つ以上を含む。リアルタイムデータに基づいて即時または適時に行動を起こさなければならない場合があるため、リアルタイムデータは、バルクデータとは異なる。さらに、リアルタイムサーバ908は、大量のリアルタイムデータを迅速に処理するように構成されている。例えば、グルコース監視システムは、最大150,000以上のユーザを有し得、各ユーザは、1日当たり最大288個の値をそれぞれのユーザのディスプレイ104aからリアルタイムサーバ908に送信し得る。
【0150】
リアルタイムサーバ908によって管理されるべきデータの量及び頻度のため、場合によってはロケータサービスが使用され得る。例示のロケータサービスと関連付けられたデータ及び制御フローが
図9Cに示されている。アプリケーションセッションの開始時に、スマートフォン上で実行するクライアントアプリケーション、例えば、上述のCGMアプリケーション800等は、(例えば、リアルタイムサーバ908上で起動する)ロケータサービスにコールし、その後のコールに使用するURLを受信する。入力パラメータは、典型的には、アプリケーション名、アプリケーションバージョン、及び国コードを含む。ロケータサービスは、これらのパラメータを使用して、全ての他のサービスのためにどこに行くか(それ故に、ロケータという用語である)を決定する。このアプローチにより、アプリケーションが変更されることを要求することなくスケールアウトするリアルタイムサーバ908の能力と、異なるサービス実施態様を異なるアプリリビジョンまたは国に提供するサーバの能力が提供される。ロケータサービスを使用しない既存のアプリケーションは依然として機能し続ける。ロケータサービスは、アプリ要求をどこに動的に送るかを決定するためのロジックを含む。
【0151】
再び
図9Bを参照して、情報は、様々な機構を使用してリアルタイムサーバ908から遠隔モニタ316bに送信され得る。遠隔モニタ316bは、
図8に関連して記載されるCGMアプリケーション800からグルコースデータと関連付けられた少なくとも一部のデータを遠隔モニタのユーザに表示するように設計された、遠隔監視アプリ等のアプリケーション(アプリ)を実行するスマートフォン等のデバイスであり得る。例えば、一例では、リアルタイム情報の全てではないが少なくとも一部がリアルタイムサーバ908から1つ以上の遠隔モニタ316bにプッシュされる。リアルタイム情報は、30秒毎、1分毎、2分毎、5分毎、10分毎等の周期ベースで遠隔モニタ316bに送られ得る。いくつかの実施態様では、リアルタイムサーバ908は、傾向及び性向についてリアルタイム情報を監視し、遠隔モニタ316bにかかる傾向を意識させることができる。データが遠隔モニタ316bにプッシュされると、遠隔モニタ316bは、デバイス316b上の遠隔監視アプリケーションが開いて起動するよう要求し得る。遠隔監視アプリケーションが遠隔モニタ316b上で開いて起動していない場合、データは、リアルタイムサーバ908で待ち行列に入れられる。いくつかの実施態様では、遠隔監視アプリケーションが遠隔モニタ316b上で開かれると、データは、遠隔モニタ316bに自動的にプッシュされる。いくつかの実施態様では、遠隔監視アプリケーションが遠隔モニタ316b上で開かれると、ユーザは、データ待ちを通知される。その後、例えば、遠隔監視アプリケーションを使用して、遠隔モニタのユーザは、データがリアルタイムサーバ908から遠隔モニタ316bに送信されるよう要求し得る。いくつかの実施態様では、遠隔監視アプリケーションが遠隔モニタ316b上で開いて起動していない場合、テキストメッセージ(例えば、SMSまたはMMS)等の通知が、リアルタイムサーバ908から遠隔モニタ316bに送られ、これは、遠隔監視アプリケーションが閉じられている(例えば、iPhone(登録商標)のバックグラウンドにある)ときに遠隔モニタ316bがアラートを自力でトリガするためのリアルタイムデータを手元に有しないためである。
【0152】
いくつかの実施態様では、リアルタイムサーバ908は、遠隔モニタ316b上の遠隔監視アプリケーションとインターフェースをとり、遠隔監視アプリケーションをウェイクアップする。遠隔監視アプリケーションがウェイクアップすると、遠隔監視アプリケーションは、リアルタイムサーバ908からデータを要求する。
【0153】
遠隔モニタ316bは、リアルタイムサーバ908からある特定の情報を受信するためのアクセスを許可される。これは、規定の1つ以上の連続グルコースセンサユニット100及び(例えば、CGMapp800を動作する)それらのそれぞれのディスプレイ104のみに関する情報である。遠隔モニタ316bは、権限付与されていないデータへのアクセスを許可されない。いくつかの実施態様では、遠隔モニタ316bは、要求をリアルタイムサーバ908に送ることができ、遠隔モニタ316bが読み取りを許可される1つ以上の連続グルコースセンサユニット100のうちの少なくとも1つ及びそれぞれのディスプレイ104と関連付けられたデータは、要求の後に遠隔モニタ316bに送られる。いくつかの実施態様では、遠隔モニタ316bは、スマートフォンであり得る。いくつかの実施態様では、リアルタイムサーバ908は、米国食品医薬品局(FDA)によって定義されたクラスIIのデバイスを含み得、データは、その分類に従って処理される。
【0154】
いくつかの実施形態では、クラウドサーバアーキテクチャ910は、バルクデータコレクタ(BDC)912及びバルクデータディストリビュータ(BDD)914をさらに含む。いくつかの実施形態では、BDC912及びBDD914は、互いに通信している1つ以上のコンピュータ、例えば、サーバ上で動作するデータ処理エンジンである。いくつかの実施態様では、ディスプレイ104aは、(本明細書に記載の)バルクデータをBDC912に間欠ベースで送る。例えば、ディスプレイ104aは、バルクデータをディスプレイ104aからBDC912に1時間毎に送ることができる。いくつかの実施態様では、バルクデータは、連続グルコースセンサユニット100からコンピュータ916、例えば、パーソナルコンピュータにアップロードされる。その後、バルクデータの少なくとも一部がコンピュータ916からBDC912に送信される。上述と同様に、データは、コンピュータ916からBDC912に周期ベースで送信され得る。例えば、データは、コンピュータ916からBDC912に1時間毎に送信され得る。BDC912に送信されたデータは、(本明細書に記載の)私有データ及び公開データを含み得る。いくつかの実施態様では、BDC912は、米国食品医薬品局(FDA)によって定義されたクラスIIのデバイスを含み得、データは、その分類に従って処理される。
【0155】
上述のように、クラウドサーバアーキテクチャ910は、BDD914も含む。BDD914は、BDC912から受信されたデータにファンアウト能力を提供する。例えば、BDC912からのデータの少なくとも一部は、技術サポートツール922及び長期データウェアハウス918のうちの1つ以上に提供され得る。ウェアハウスデータは、公開データ及び私有データを含み得る。技術サポートツール922は、例えば、共有支援ツール、レポジトリツール、及び送信機ツールを含み得る。共有サポートツール(ディスプレイ104a及び遠隔モニタ316bに技術サポート関連洞察力を提供するツール)は、ディスプレイ104a(自動的に)及び連続グルコースセンサユニット100(ユーザによりオンデマンドで)から送られたデータ表及びデータチャートを提示する能力を含む。いくつかの実施態様では、データ表は、データ型(例えば、EGVデータ、ログ等)及びデータソース(ディスプレイ104aまたは連続グルコースセンサユニット100)によってカテゴリ化された、ディスプレイ104a及び連続グルコースセンサユニット100からデータサーバ(リアルタイムサーバ908またはバルクデータコレクタ912)に送られた全てのデータを提示することができる。いくつかの実施態様では、データチャートは、表からのデータを視覚形態で年代順に提示する。データソースは、チャート内で識別され得る。レポジトリツールは、データ表及びデータチャートとしてディスプレイ104a及び連続グルコースセンサユニット100のデータのデータ可視化をサポートする。レポジトリツールは、連続グルコースセンサユニット100のデータ可視化のサポートを含む。例えば、ユーザが調査のために受信機を返却した場合、受信機は、このツールを使用してダウンロードされて、社内で苦情をさらに調査することができる。
【0156】
BDD914からのデータの少なくとも一部が、分析及び/またはレポートのためにレポジトリ920に提供され得る。この情報は、一般に、回顧データと呼ばれている。回顧データは、一般に、過去に生成されたバルクデータ及び任意のリアルタイムデータと定義され得る。例えば、過去5分以内に生成されなかったリアルタイムデータは、回顧データと見なされ得る。いくつかの実施態様では、BDD914は、FDAによって定義されたクラスIIのデバイスを含み得、データは、その分類に従って処理される。
【0157】
一般に、
図9Bに示されるデータへのアクセスが制御される。例えば、権限マネージャ(
図9Bには示されず)を使用して、BDD914、回顧データ920、及びデータウェアハウス918への第三者アクセスを制御する。いくつかの実施態様では、権限マネージャは、トークンベースであり得る。ある特定のデータへのアクセスは、アクセス中の第三者によって保持されたトークンに基づいて許可または制限され得る。任意に、またはあるいは、患者は、第三者にその特定の患者の情報へのアクセスを提供することができる。例えば、成人患者は、遠隔モニタ316bを提供し得る。第三者からの応答に基づいて、トークンが第三者の権限にカスタマイズされ得る。いくつかの実施態様では、第三者は、例えば、Google、Facebook、Twitter等のソーシャルメディアウェブサイトへのログインを使用して、ある特定の情報(例えば、ある特定の患者のデータ)にアクセスすることができる。
【0158】
図9Dは、複数の連続グルコースモニタによってグルコース監視レベルに関するデータを安全に収集、分析、及びレポートするための方法を図解するフローチャートである。プロセス9002で、データが、複数の表示デバイス(例えば、ディスプレイ(複数可)104)によって複数の連続グルコースモニタ(CGM)、例えば、連続グルコースセンサユニット100から受信される。プロセス9004で、データが、データ型に基づいて複数の分類に分類される。いくつかの実施態様では、データ型に基づくデータの複数の分類への分類は、データをリアルタイムデータ及びバルクデータとして分類することを含む。いくつかの実施態様では、ディスプレイ104は、受信されたデータをデータ型に基づいて複数の分類に分類し、他の実施態様では、連続グルコースセンサユニット100は、プロセス9002の前にプロセス9004を実施して、データをデータ型に基づいて複数の分類に分類する。かかる実施態様では、連続グルコースセンサユニット100は、データの一部のみを分類することができ、そこで、ディスプレイ104は、受信された分類されていないデータを分類することができ、かつ/または受信された分類されたデータを再分類することができる。
【0159】
プロセス9006で、分類されたデータが、複数の表示デバイスから本技術によるクラウドサーバアーキテクチャ、例えば、クラウドサーバアーキテクチャ106に送信される。クラウドサーバアーキテクチャ106は、クラウドサーバアーキテクチャ910によるシステム等の、複数の表示デバイスからデータを間欠ベースで受信する少なくとも複数のサーバを含む。クラウドサーバアーキテクチャの複数のサーバは、少なくとも1つのリアルタイムサーバ及びバルクデータコレクタ、例えば、それぞれ、リアルタイムサーバ908及びBCC912を含み得る。いくつかの実施態様では、クラウドサーバアーキテクチャは、ロケータサービスをさらに含んでもよく、複数の表示デバイスは、ロケータサービスを通じてクラウドサーバアーキテクチャに接続する。複数のサーバのうちの特定のサーバにルーティングされるデータは、データ型によって決定され、間欠ベースまたは表示デバイスからサーバへの送信は、データ型に応じて異なり得る。例えば、リアルタイムデータは、複数の表示デバイスからリアルタイムサーバにルーティングされ、バルクデータは、複数の表示デバイスからバルクデータコレクタにルーティングされる。リアルタイムデータは、バルクデータが複数の表示デバイスからバルクデータコレクタにルーティングされる間欠ベースよりも頻度の高い間欠ベースで、複数の表示デバイスからリアルタイムサーバにルーティングされてもよい。例えば、リアルタイムデータは、複数の表示デバイスからリアルタイムサーバに5分毎にルーティングされ、バルクデータは、複数の表示デバイスからバルクデータコレクタに1時間毎にルーティングされる。
【0160】
プロセス9008で、データが、複数の遠隔モニタ表示デバイス(例えば、遠隔モニタ316b)によって複数のサーバのうちの1つ、例えば、リアルタイムサーバ908から受信される。複数の遠隔モニタ表示デバイスの各々に送られたデータは、データ型と、データを複数のサーバのうちの1つに送信した表示デバイスとに依存し得る。プロセス9008のいくつかの実施態様では、データは、クラウドサーバアーキテクチャの複数のサーバのうちの1つによる受信直後に複数の遠隔モニタ表示デバイスに送られる。その一方で、プロセス9008のいくつかの実施態様では、クラウドサーバアーキテクチャ(例えば、リアルタイムサーバ908)は、各遠隔モニタ316と関連付けられた規則に従ってデータを処理し、規則に従うデータをそれぞれの遠隔モニタデバイスに送る。プロセス9010で、複数のサーバによって受信されたデータの少なくとも一部が分析及びレポートエンジンにルーティングされる。プロセス9010のいくつかの実施態様では、クラウドサーバアーキテクチャのBDD914は、データのせめて一部を技術サポートツール922、データウェアハウス918、及び/またはレポジトリ920のうちの1つ以上に提供する。データが分析され、レポートが分析及びレポートエンジンによって生成される。
【0161】
バックフィル
図10は、データをバックフィルするための例示の方法を図解する。データを複数のディスプレイ及び分散クラウドコンピューティングアーキテクチャに提供する際に生じ得る課題の1つは、各アプリケーションまたはデバイスが最新のデータを含むことを確実にすることである。例えば、ユーザは、表示デバイス(例えば、ディスプレイ104)上で実行するアプリケーションがデータを受信しないように、CGMアプリケーション800等のアプリケーションをオフにすることができる。または、ディスプレイがオフにされる場合がある。ディスプレイがオンであり、データを受信した場合でさえも、オフにされ得るか、またはディスプレイがデータをクラウドコンピューティングアーキテクチャに正常に転送したときにネットワークから切断され得る。アプリケーションまたはデバイスがデータを受信しない場合、データは最新のものではない。
図10及び11は、データがアプリケーションにバックフィルされてアプリケーションを最新の状態にすることを可能にする例示の方法について記載する。最新とは、アプリケーションまたはサーバが入手可能な全てのデータを有することを意味し得る。
【0162】
本明細書に記載のシステム全体における複数のデータストリームの使用に関するさらなる課題が生じる。例えば、リアルタイムデータストリーム及びバルクデータストリームは、それらのデータストリームをクラウドコンピューティングアーキテクチャ106に転送する連続グルコースセンサユニット100によって複数のディスプレイ104に別々に送られ得る。クラウドコンピューティングアーキテクチャ106は、共通の連続グルコースモニタに接続された異なるディスプレイからデータストリームの複数のコピーを受信し、それらを別々に記憶する。例えば、異なる較正値及び自身の追加データをデータストリームに追加するディスプレイの能力により、どのディスプレイがデータをクラウドコンピューティングアーキテクチャ106に転送するかに応じて、データストリームにいくつかの差異も存在し得る。
【0163】
データが受信予定時に取得された(「予定通りのデータ」)か、またはバックフィルプロセスの一部として取得されたかをユーザが区別することができることに関して別の課題が生じ得る。したがって、ユーザインターフェースは、データが予定通りに取得されたか、またはバックフィルされたかに応じてデータを異なって表示することができる。例えば、バックフィルされたデータは、異なって表示され得る。一非限定的例では、
図12Bに示されるように、バックフィルされたデータは、グルコースレベルを示す線上に破線1204を使用して示され得る。予定通りのデータと区別されるようにバックフィルされたデータを示す他の方法は、バックフィルされたデータ及び予定通りのデータに異なる色の線分を使用することである。
図12A及び12Bを参照して、いくつかの実施形態では、ディスプレイ104は、縦向きビュー1200では、バックフィルされたデータ点がリアルタイムデータ点と同じように表示されるが、ディスプレイが横向きモード1202に配向されると、バックフィルされたデータは異なって表示され得るように、スマートフォンで利用可能なもの等の配向センサを有し得る。例えば、概要または凝縮バージョンのデータが縦向きビュー1200で表示され得るが、横向きモード1202に配向されると、さらなる詳細が表示され得る。
【0164】
図10に戻って、プロセス1000で、連続グルコースモニタ(例えば、連続グルコースセンサユニット100)がデータを送信する。データは、前述のように暗号化され得るリアルタイムデータ及びバルクデータの両方を含み得る。グルコース値がタイムスタンプされて、連続グルコースモニタがグルコースレベルをいつサンプリングしたかを追跡し、様々なシステム構成要素が全てのグルコース試料を有する完全データセットを含むことを確認するためのチェックを促進することができる。
【0165】
いくつかの実施態様では、連続グルコースモニタは、データを周期的に、例えば、5分毎に送信し、モニタ及び関連送信機が低電力状態に置かれてバッテリ寿命を節約することを可能にする。他の実施態様では、連続グルコースモニタは、データを5分間以外の間隔で送信する。リアルタイムデータもバルクデータもいずれも、各期間で送信されてもよく、またはリアルタイムデータが5分毎に送信され得る一方で、バルクデータは、1時間毎等のより低い頻度で送信される。
【0166】
次に、プロセス1002で、ディスプレイ(複数可)104等の連続グルコースモニタと通信している表示デバイス(複数可)は、リアルタイムデータ及びバルクデータの両方を含み得る受信されたデータを分散する。ディスプレイ(複数可)は、データを、サービスサーバ300等内の短期記憶装置(例えば、最大30日間)及びバックエンドサーバ306等内の長期記憶装置の両方を含み得るクラウドコンピューティングアーキテクチャ106に分散する。ディスプレイは、リアルタイムデータ及びバルクデータをクラウドコンピューティングアーキテクチャ106に別個のデータストリームとして分散することができる。
【0167】
次に、プロセス1004で、本技術によるデータ通信エコシステムの構成要素が欠損データを識別し得る。データストリームが本システム全体に分散されるため、分散時にデータを受信すべきであった1つ以上の構成要素がデータを受信しなかったことが可能である。例えば、ディスプレイは、連続グルコースモニタから無線範囲外である場合があるか、またはクラウドコンピューティングアーキテクチャ内のネットワーク接続がダウンしている場合がある。いくつかの実施態様では、クラウドインフラストラクチャ内のサーバ等のコンピューティングデバイスが、ダウンしているか、またはメンテナンスを受けている場合があり、それ故に、データが分散されたときにデータを受信しない。
【0168】
本システムの様々な構成要素は、いずれかのデータが欠損しているかを決定することができる。例えば、ディスプレイ104自体が、グルコース値と関連付けられたタイムスタンプまたはデータの順序を示す他のマーカー(例えば、各グルコース値が連続して番号付けされた値と関連付けられる)を調べることによって、ディスプレイ104がいずれかのリアルタイムデータを欠損しているかを決定することができる。タイムスタンプまたは他のマーカーにギャップが存在する場合、例えば、連続グルコースセンサユニット100からグルコース値を5分毎に受け取るつもりであったにもかかわらず、グルコース値が15分間受信されなかった場合、ディスプレイ104は、データを欠損として識別する。同様に、例えば、サービスサーバ(複数可)300及びバックエンドサーバ(複数可)306を含むクラウドコンピューティングアーキテクチャ106は、タイムスタンプまたは他のマーカーを調べることによって、いずれかのデータが欠損しているかを決定することができる。加えて、例えば、第三者アプリケーションは、いずれかのデータが欠損しているかを決定することができる。いくつかの実施態様では、データ同期化サーバ302は、任意のディスプレイ104、サービスサーバ(複数可)300、またはバックエンドサーバ(複数可)306がデータを欠損しているかを決定することができる。この方法で、クラウドコンピューティングアーキテクチャ106によって、欠損データを有する各構成要素が欠損データをバックフィルすべきかが決定され得る。
【0169】
プロセス1006で、それが欠損データであると識別した構成要素が、その欠損データを取得するかを決定する。データをバックフィル最長時間が存在し得る。例えば、過去6時間を超えて欠損していたデータは、連続グルコースセンサユニット100からの送信を多数取り損なったディスプレイ104にバックフィルされない場合がある。バックエンドサーバ(複数可)306等の本システムの他の構成要素は、いくつかの実施態様では、全ての欠損データを時間制限なしにバックフィルすることができる。同様に、ディスプレイ104等のエコシステムの構成要素は、ある特定の期間が経過した(例えば、6時間)後にいくつかのデータカテゴリのみをバックフィルし得る一方で、他の種類はバックフィルしない。さらに、バックフィル期間は、データが入手可能でなかったかもしれない期間未満であり得る。例えば、バルクデータが、データが取り損なわれた6時間窓後にさえもバックフィルされ得る一方で、リアルタイムデータは、バックフィルされない場合がある。さらに、バックフィル期間は、データが入手可能でなかったかもしれない期間未満であり得る。例えば、データは、過去6時間にわたってディスプレイが入手可能ではなかったかもしれず、データが入手可能になったときに、ディスプレイは、全6時間ではなく過去2時間の欠損データのみをバックフィルし得る。別の例では、ディスプレイ104が長時間(例えば、6時間)にわたって取り損なっている場合があるが、ディスプレイは、本システムの構成要素のリソース(例えば、バッテリ寿命)を節約するために、所与の期間中、その時間のサブセット(例えば、2時間)のみをバックフィルし得る。ある特定の時間後に、データの一部が本システムのある特定の構成要素にとって古くなっている場合があり、バックフィルが本システムの1つ以上の構成要素(例えば、送信機102)のバッテリ電力を消費しすぎる場合があり、かつ/またはバックフィルされたデータを要求する本システムの構成要素(例えば、ディスプレイ104)が過去6時間等のデータのある特定の範囲のみを表示し、恐らく不必要な範囲を超える範囲にバックフィルさせるように構成され得るため、データをバックフィルするかの決定が行われてもよい。データを選択的にのみバックフィルすることによって、コンピュータによる必要性及び記憶の必要性も低下し得る。
【0170】
構成要素が欠損データを取得するべきではないと決定した場合、
図10の方法は、いずれかの追加の欠損データの識別に戻り得る。例えば、ディスプレイ104は、それがデータを10時間連続して取り損なったと決定することができる。この例では、ディスプレイ104は、過去6時間よりも古いデータを取得しないと決定し得るか、または連続グルコースセンサユニット100の送信機102は、過去6時間のデータのみを記憶したかもしれず、プロセス1004で、過去6時間以内のさらなる欠損データの識別に戻る。
【0171】
欠損データが取得されるべきである場合、プロセス1008で、構成要素が欠損データをバックフィルする。いくつかの実施態様では、構成要素は、最も古い入手可能なデータ(または所望の最も古い期間)から直近の期間までをバックフィルする。他の実施態様では、構成要素は、直近のデータから最も古いデータまでをバックフィルする。欠損データをバックフィルするプロセスは、リアルタイムデータもしくバルクデータ等の個々のストリーム、または両方のストリームに関して起こり得る。例として、ディスプレイ104は、連続グルコースセンサユニット100またはサービスサーバ(複数可)300のいずれかから欠損データを要求することができる。サービスサーバ(複数可)300もデータを欠損している場合があり、それは、いくつかの実施態様では、例えば、単一連続グルコースセンサユニット100と関連付けられた4つのデータストリームを受信することができる。連続グルコースセンサユニット100は、リアルタイムデータストリーム及びバルクデータストリームを2つのディスプレイ等の各接続されたディスプレイに送り、4つのストリームをもたらす。サービスサーバ(複数可)300、及びバックエンドサーバ(複数可)306等のクラウドコンピューティングアーキテクチャ106内の他の構成要素は、データを送った連続グルコースセンサユニット100の指示のみならず、どのディスプレイがデータを送ったかの指示を記憶することができる。この様式で、クラウドコンピューティングアーキテクチャ106の構成要素は、ディスプレイ毎に別個のデータストリーム(例えば、リアルタイム及びバルク)を記憶することができる。これは、バックエンドサーバ(複数可)306によるトラブルシューティング技術サポート問題に役立つ。システム構成要素がバックフィルされたデータを取得すると、システム構成要素は、データが初期分散時に受信されたのではなくバックフィルされたという指示も記憶する。これは、前述のアラームが取り損なわれた場合等の診断問題の手助けにもなる。
【0172】
加えて、単一連続グルコースセンサユニット100と関連付けられた複数のディスプレイからの複数のデータストリームの記憶により、クラウドコンピューティングアーキテクチャ106がデータストリームを互いに認証することが可能になる。例えば、第1のディスプレイからのリアルタイムデータストリームは、第2のディスプレイのリアルタイムデータストリームと比較され、いずれの差異が指摘され得る。差異は、2つのディスプレイが同じ較正値を使用していないことまたは他のシステム問題を示し得る。いずれの差異の検出により、プロンプトがいずれかのディスプレイ上でユーザに表示され、例えば、較正値を更新するプロンプトがユーザに表示される。2つのストリームの比較により、データが両方のディスプレイによって効果的に捕捉されるという確認も可能になる。
【0173】
図11は、欠損データをバックフィルするための別の例示の方法を図解する。場合によっては、バックフィルするデータの量が制限されるべきである。例えば、ユーザは、自身のディスプレイ104を長期間にわたってオフにする(例えば、スマートフォンをオフにする)か、または自身のスマートフォンを取り換える場合がある。しかしながら、ユーザ自身の連続グルコースモニタ(例えば、連続グルコースセンサユニット100)を長期間にわたって所有していた場合、全ての以前のデータのバックフィルは、システムを混雑させ、不必要である。結果として、
図11の方法は、例えば、1日、12時間、6時間、1時間、30分、10分、5分、1分等の最長時間までの規定の時間間隔内のいずれの欠損データも検索する。
【0174】
プロセス1100で、システム構成要素は、第1の時間間隔内の欠損データを検索する。上述のように、任意のシステム構成要素、例えば、ディスプレイ104、サービスサーバ(複数可)300、バックエンドサーバ(複数可)306、316等の遠隔モニタディスプレイ、または他の構成要素が、任意の欠損データを検索することができる。第1の時間間隔は、欠損データを検索するデバイスに基づいて異なり得る。例えば、ディスプレイ104等のユーザのコンピューティングデバイスは、サーバと比較して、比較的限定された量のメモリしか有し得ない。ディスプレイ104が6時間から最大24時間の間隔内の欠損データをバックフィルするように検索し得る一方で、サービスサーバ300は、直近の30日間にさかのぼって欠損データを探索し得る。いくつかの実施態様では、ディスプレイ104は、ディスプレイ104がバックフィルデータを受信した時点で、バックフィルデータを自動的に送り得るが、ディスプレイは、連続グルコースセンサユニット100の送信機102からデータを要求しなければならない場合がある。これは、送信機102がディスプレイ104よりも限定された電力源(例えば、バッテリ)しか有し得ないためであり得る。プロセス1102で、システム構成要素は、上述の第1の時間間隔中に発見されたいずれの欠損データもバックフィルする。
【0175】
次に、プロセス1104で、システム構成要素は、追加の時間間隔内の欠損データを探索する。上述の例に続いて、ディスプレイ104は、過去6時間以内の欠損データを探索し、連続グルコースセンサユニット100から欠損データを要求することによっていずれの欠損データもバックフィルすることができる。次に、ディスプレイは、さらに6時間等の追加の時間間隔内の欠損データを探索する。言うまでもなく、他の時間間隔も使用され得る。直近の時間間隔は、直近から始まるデータをバックフィルする最初の時間間隔であり得るか、または探索は、最も古い期間から開始し、取り損なわれたかもしれないより新しいデータを探索し得る。プロセス1106で、構成要素は、追加の時間間隔からのいずれの欠損データもバックフィルする。
【0176】
プロセス1108で、システム構成要素は、最大間隔が到達されたかを決定する。例えば、ディスプレイ104が既に直近の24時間にわたって探索した場合、ディスプレイ104は、プロセス1110で、探索を停止する。しかしながら、特定の構成要素が探索する最大間隔までの追加の時間間隔が存在する場合、プロセス1104は、バックフィルされるべきデータの探索を繰り返し続ける。
【0177】
加えて、本明細書に開示されるバックフィル技法は、様々なシステム構成要素及びアプリケーションに適用可能である。生じ得る課題の1つは、データの遠隔監視アプリケーションまたは遠隔モニタデバイスへの提供及びバックフィルである。リアルタイムデータは遠隔モニタデバイスに到達することができるが、遠隔モニタデバイスがオフラインまたは無線範囲外であり得る。遠隔モニタは、患者のグルコースレベルが200mg/dL超等の規定のレベルを1時間等のある期間超えた場合にアラートされるためのアラートを設定することができる。データ点が遠隔モニタデバイスに連続して届かない場合、アラームを追跡することも発行することもできない。さらに、デバイスがオンラインに戻ったときに30分間のみのデータがバックフィルされた場合、これは、例示のアラームが1時間のデータに依存するため、アラーム基準を満たさない。この問題に対処するために、遠隔モニタデバイスが、6時間等の前述の規定の時間範囲内でバックフィルされ得る。データは、一実施形態では、最も古いものから最も新しいものの順に遠隔監視アプリケーションに送られ得る。いくつかの実施態様では、リアルタイムサーバ908またはサービスサーバ300等のクラウドコンピューティングアーキテクチャ106のサーバ(複数可)は、バックフィルされたデータが提供されていることを示す遠隔モニタ316b等の遠隔モニタデバイスに送るためのアラートを開始する。バックフィルされたデータとして遠隔モニタデバイスに提供されたデータは、その正常サイクルで提供されたデータとは異なって遠隔モニタデバイスのディスプレイ上に表示され得る。これは、遠隔モニタデバイスが、バックフィルされたデータに基づいてある行動が起こされるべきであるか否かを理解するのに役立つ。上述と同様に、遠隔監視設定は、サーバ(例えば、リアルタイムサーバ908またはサービスサーバ300)を通じて設定可能である。一例証的例では、遠隔モニタは、成人または責任者が状況を改善するために自力で行動を起こしたと思われるよりも6時間前に成人または責任者の「レベルが下がった」ことを知ることを望まないかもしれない。したがって、遠隔モニタデバイスは、例えば、古いデータが表示されないように、バックフィルの期間が定義されるように、最も新しいものから最も古いものまたは最も古いものから最も新しいものの順にバックフィルが定義されるように、ある特定のデータ点がバックフィルされないように、バックフィルで送られたデータを設定することができる。
【0178】
一般に、データは、最も古いものから最も新しい(直近の)ものの順にバックフィルされる。これにより、最も古いデータがバックフィルし始めたときにアラームにいくらかの混乱が引き起こされる場合があり、アラーム状態が存在し得る。例えば、グルコースレベルは、一定時間後にアラームレベルまで下降し得るか、またはアラームをトリガするレベルに留まり得る。しかしながら、この状態は、バックフィルデータを受信するようになったディスプレイがリアルタイムデータを受信していなかったときに、例えば、4時間前に起こっていたかもしれない。ディスプレイ104または遠隔モニタ用の遠隔モニタデバイス316上でアラームをトリガするのではなく、サーバは、データをバックフィルし続けて、アラーム状態が自力でクリアするかを決定するように構成されていてもよい。また、クラウドコンピューティングアーキテクチャ106のサーバ(例えば、リアルタイムサーバ908またはサービスサーバ300)は、トリガするよう指示する規則が特定のディスプレイと関連付けられたサーバに存在しない限り古いバックフィルされたアラームがトリガされないように設定されてもよい。例えば、監視される人物は、子供であり得、その場合、遠隔モニタ(例えば、親)は、アラーム状態が過去であり、既に自力で修正した場合でさえも子供がアラーム状態を経験したことを知ることを望み得る。したがって、親の監視デバイス(例えば、ディスプレイ316)は、その状態が数時間前に起こったとしてもアラームに対してトリガされ得る。遠隔モニタディスプレイ316aは、アラームが現在のデータではなくバックフィルデータに基づくことを示すようにも構成されていてもよい。
【0179】
図13は、例示のコンピュータを図解する。連続グルコースセンサユニット100、ディスプレイ104、関連サーバを含むクラウドコンピューティングアーキテクチャ106のコンピューティングデバイス、ならびに他のシステム構成要素は、
図13に示される構成要素の全てまたは一部を含んでもよい。
【0180】
コンピュータは、1つ以上のハードウェア構成要素、例えば、中央処理ユニット(CPU)1321、ランダムアクセスメモリ(RAM)モジュール1322、読み取り専用メモリ(ROM)モジュール1323、記憶装置1324、データベース1325、1つ以上の入出力(I/O)デバイス1326、及びインターフェース1327等を含み得る。あるいは、または加えて、コンピュータは、1つ以上のソフトウェア構成要素、例えば、例示の実施形態に関連する方法を行うためのコンピュータ実行可能命令を含むコンピュータ可読媒体等を含み得る。上に列記されるハードウェア構成要素のうちの1つ以上がソフトウェアを使用して実施され得ることが企図される。例えば、記憶装置1324は、1つ以上の他のハードウェア構成要素と関連付けられたソフトウェアパーティションを含み得る。上に列記される構成要素が例示にすぎず、限定されるようには意図されていないことが理解される。
【0181】
CPU1321は、1つ以上のプロセッサを含み得、各々、命令を実行し、かつデータを処理して、グルコースレベルを監視するためのコンピュータと関連付けられた1つ以上の機能を行うように構成されている。CPU1321は、RAM1322、ROM1323、記憶装置1324、データベース1325、I/Oデバイス1326、及びインターフェース1327に通信可能に連結されていてもよい。CPU1321は、一連のコンピュータプログラム命令を実行して様々なプロセスを行うように構成されていてもよい。コンピュータプログラム命令は、CPU1321による実行のために、RAM1322にロードされてもよい。
【0182】
RAM1322及びROM1323は各々、CPU1321の動作と関連付けられた情報を記憶するための1つ以上のデバイスを含み得る。例えば、ROM1323は、1つ以上の構成要素及びサブシステムの動作を識別、初期化、及び監視するための情報を含む、コントローラと関連付けられた情報にアクセスし、かつそれを記憶するように構成されたメモリデバイスを含み得る。RAM1322は、CPU1321の1つ以上の動作と関連付けられたデータを記憶するためのメモリデバイスを含み得る。例えば、ROM1323は、CPU1321による実行のために、命令をRAM1322にロードしてもよい。
【0183】
記憶装置1324は、開示される実施形態に従うプロセスを行うためにCPU1321が必要とし得る情報を記憶するように構成された任意の種類の大容量記憶デバイスを含み得る。例えば、記憶装置1324は、1つ以上の磁気及び/もしくは光ディスクデバイス、例えば、ハードドライブ、CD−ROM、DVD−ROM、または任意の他の種類のマスメディアデバイスを含み得る。
【0184】
データベース1325は、CPU1321によって使用されるデータを記憶、体系化、選別、フィルタリング、及び/または配置するように協働する1つ以上のソフトウェア及び/またはハードウェア構成要素を含み得る。例えば、データベース1325は、グルコースレベル、関連メタデータ、及び健康情報の監視に関するデータ 得る。データベース1325がさらなる及び/または上に列記されるものとは異なる情報を記憶し得ることが企図される。
【0185】
I/Oデバイス1326は、コントローラと関連付けられたユーザと情報を通信するように構成された1つ以上の構成要素を含み得る。例えば、I/Oデバイスは、ユーザが画像のデータベースを維持し、関連付けを更新し、かつデジタルコンテンツにアクセスすることを可能にするために、統合型キーボード及びマウスを有するコンソールを含み得る。I/Oデバイス1326は、モニタに情報を出力するためのグラフィカルユーザインターフェース(GUI)を含むディスプレイも含み得る。I/Oデバイス1326は、周辺デバイス、例えば、コントローラと関連付けられた情報をプリントするためのプリンタ、ユーザがポータブルメディアデバイスに記憶されるデータを入力することを可能にするためのユーザアクセス可能なディスクドライブ(例えば、USBポート、フロッピー、CD−ROM、またはDVD−ROMドライブ等)、マイクロフォン、スピーカシステム、または任意の他の好適な種類のインターフェースデバイス等も含み得る。
【0186】
インターフェース1327は、インターネット、ローカルエリアネットワーク、ワークステーションピアツーピアネットワーク、ダイレクトリンクネットワーク、無線ネットワーク、または任意の他の好適な通信プラットフォーム等の通信ネットワークを介してデータを送信及び受信するように構成された1つ以上の構成要素を含み得る。例えば、インターフェース1327は、1つ以上のモジュレータ、デモジュレータ、マルチプレクサ、デマルチプレクサ、ネットワーク通信デバイス、無線デバイス、アンテナ、モデム、及び通信ネットワークを介するデータ通信を可能にするように構成された任意の他の種類のデバイスを含み得る。
【0188】
以下の実施例は、本技術のいくつかの実施形態を例証するものである。本技術の他の例示の実施形態が、以下の握り拳の実施例の前に、または以下の列記される実施例の後に提示され得る。
【0189】
本技術(実施例1)によるいくつかの実施形態では、グルコースレベルに関するデータを安全に送信するための方法は、連続グルコースモニタを使用してグルコースレベルを含むデータを準備することと、グルコースレベルに関するデータを連続グルコースモニタと関連付けられた送信機から少なくとも1つの表示デバイスに無線送信することと、グルコースレベルに関するデータを表示デバイスからクラウドコンピューティングアーキテクチャに自動的に転送することと、グルコースレベルに関するデータをクラウドインフラストラクチャ内の別個の群に記憶することと、を含む。
【0190】
実施例2は、グルコースレベルに関する前記データが、測定されたグルコース値及び診断データを含む、実施例1の方法を含む。
【0191】
実施例3は、表示デバイスにより、グルコースレベルに関するデータとともに追加データを含むことをさらに含みデータの自動的転送が、追加データ及びグルコースレベルに関するデータを自動的に転送することを含む、実施例1の方法を含む。
【0192】
実施例4は、グルコースレベルに関するデータが、第1のデータセット及び第2のデータセットを含み、グルコースレベルに関するデータの別個の群への記憶が、第1のデータセットを第1のサーバに、第2のデータセットを第2のサーバに記憶することを含む、実施例1の方法を含む。
【0193】
実施例5は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例4の方法を含む。
【0194】
実施例6は、送信機により第1のデータセットを暗号化することと、送信機により第2のデータセットを暗号化することと、少なくとも1つの表示デバイスにより第1のデータセットを復号及び表示することと、少なくとも1つの表示デバイスが第2のデータセットを復号するのを阻止することと、クラウドインフラストラクチャにより第2のデータセットを復号することと、をさらに含む、実施例5の方法を含む。
【0195】
実施例7は、少なくとも1つの表示デバイスにより第1のデータセットを復号するための第1の鍵を記憶することと、クラウドインフラストラクチャにより第2のデータセットを復号するための第2の鍵を記憶することと、少なくとも1つの表示デバイスによる第2の鍵へのアクセスを阻止することと、をさらに含む、実施例6の方法を含む。
【0196】
実施例8は、グルコースレベルに関するデータのサブセットをクラウドインフラストラクチャから第2の表示デバイスに転送することをさらに含み、データのサブセットが、現在のグルコースレベル及び過去のグルコースレベルのうちの少なくとも1つを含む、実施例1の方法を含む。
【0197】
実施例9は、クラウドインフラストラクチャにより、1つ以上の要求システムによる第1のデータセット及び第2のデータセットへのアクセスを許可するかを選択的に決定することをさらに含む、実施例1の方法を含む。
【0198】
実施例10は、要求システムが、技術サポートシステム、少なくとも1つの第三者アプリケーション、及びデータウェアハウスを含み、クラウドインフラストラクチャが、技術サポートシステムに第1のデータセット及び第2のデータセットへのアクセスを許可し、少なくとも1つの第三者アプリケーションに第1のデータセットへのアクセスを許可し、データウェアハウスに第1のデータセット及び第2のデータセットへのアクセスを許可する、実施例9の方法を含む。
【0199】
実施例11は、表示デバイスが、スマートフォンまたはディスプレイのうちの少なくとも1つを含む、実施例1の方法を含む。
【0200】
本技術(実施例12)によるいくつかの実施形態では、グルコースレベルに関するデータを監視するためのシステムは、グルコースレベルに関するデータを準備するように構成された連続グルコースセンサと、グルコースレベルに関するデータを送信するように構成された無線送信機と、グルコースレベルに関する送信されたデータを受信し、かつそのデータを自動的に転送するように構成された表示デバイスと、自動的に転送されたデータを受信し、かつグルコースレベルに関するデータを別個の群に記憶するように構成されたクラウドコンピューティングアーキテクチャと、を含む。
【0201】
実施例13は、グルコースレベルに関するデータが、測定されたグルコース値及び診断データを含む、実施例12のシステムを含む。
【0202】
実施例14は、表示デバイスが、グルコースレベルに関するデータとともに追加データを含み、かつ追加データ及びグルコースレベルに関するデータを自動的に転送するようにさらに構成されている、実施例12のシステムを含む。
【0203】
実施例15は、グルコースレベルに関するデータが、第1のデータセット及び第2のデータセットを含み、グルコースレベルに関するデータの別個の群への記憶が、第1のデータセットを第1のサーバに、第2のデータセットを第2のサーバに別々に記憶することを含む、実施例12のシステムを含む。
【0204】
実施例16は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例15のシステムを含む。
【0205】
実施例17は、送信機が、第1のデータセット及び第2のデータセットを暗号化するようにさらに構成されており、少なくとも1つの表示デバイスが、第1のデータセットを復号及び表示するようにさらに構成されており、少なくとも1つの表示デバイスが、第2のデータセットを復号することができず、クラウドインフラストラクチャが、第2のデータセットを復号するようにさらに構成されている、実施例16のシステムを含む。
【0206】
実施例18は、少なくとも1つの表示デバイスが、第1のデータセットを復号するための第1の鍵を記憶するようにさらに構成されており、クラウドインフラストラクチャが、第2のデータセットを復号するための第2の鍵を記憶するようにさらに構成されており、少なくとも1つの表示デバイスが、第2の鍵にアクセスすることができない、実施例17のシステムを含む。
【0207】
実施例19は、クラウドインフラストラクチャが、グルコースレベルに関するデータのサブセットを第2の表示デバイスに転送するようにさらに構成されており、データのサブセットが、現在のグルコースレベル及び過去のグルコースレベルのうちの少なくとも1つを含む、実施例12のシステムを含む。
【0208】
実施例20は、クラウドインフラストラクチャが、1つ以上の要求システムによる第1のデータセット及び第2のデータセットへのアクセスを許可するかを選択的に決定するようにさらに構成されている、実施例12のシステムを含む。
【0209】
実施例21は、要求システムが、技術サポートシステム、少なくとも1つの第三者アプリケーション、及びデータウェアハウスを含み、クラウドインフラストラクチャが、技術サポートシステムに第1のデータセット及び第2のデータセットへのアクセスを許可し、少なくとも1つの第三者アプリケーションに第1のデータセットへのアクセスを許可し、かつデータウェアハウスに第1のデータセット及び第2のデータセットへのアクセスを許可するようにさらに構成されている、実施例20のシステムを含む。
【0210】
実施例22は、表示デバイスが、スマートフォンまたはディスプレイのうちの少なくとも1つを含む、実施例12のシステムを含む。
【0211】
本技術(実施例23)によるいくつかの実施形態では、1つ以上のコンピュータ可読媒体は、1つ以上のプロセッサにより実行されると、連続グルコースモニタを使用してグルコースレベルに関するデータを準備することと、グルコースレベルに関するデータを連続グルコースモニタと関連付けられた送信機から少なくとも1つの表示デバイスに無線送信することと、グルコースレベルに関するデータを表示デバイスからクラウドコンピューティングアーキテクチャに自動的に転送することと、グルコースレベルに関するデータをクラウドインフラストラクチャ内の別個の群に記憶することと、を含む、グルコースレベルに関するデータを安全に送信するための方法を行う命令を含む。
【0212】
実施例24は、グルコースレベルに関するデータが、測定されたグルコース値及び診断データを含む、実施例23のコンピュータ可読媒体を含む。
【0213】
実施例25は、方法が、表示デバイスにより、グルコースレベルに関するデータとともに追加データを含むことをさらに含み、データの自動的転送が、追加データ及びグルコースレベルに関するデータを自動的に転送することを含む、実施例23のコンピュータ可読媒体を含む。
【0214】
実施例26は、グルコースレベルに関するデータが、第1のデータセット及び第2のデータセットを含み、グルコースレベルに関するデータの別個の群への記憶が、クラウドインフラストラクチャにより第1のデータセット及び第2のデータセットを別々に記憶することを含む、実施例23のコンピュータ可読媒体を含む。
【0215】
実施例27は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例26のコンピュータ可読媒体を含む。
【0216】
実施例28は、方法が、送信機により第1のデータセットを暗号化することと、送信機により第2のデータセットを暗号化することと、少なくとも1つの表示デバイスにより第1のデータセットを復号及び表示することと、少なくとも1つの表示デバイスが第2のデータセットを復号するのを阻止することと、クラウドインフラストラクチャにより第2のデータセットを復号することと、をさらに含む、実施例27のコンピュータ可読媒体を含む。
【0217】
実施例29は、方法が、少なくとも1つの表示デバイスにより第1のデータセットを復号するための第1の鍵を記憶することと、クラウドインフラストラクチャにより第2のデータセットを復号するための第2の鍵を記憶することと、少なくとも1つの表示デバイスによる第2の鍵へのアクセスを阻止することと、をさらに含む、実施例28のコンピュータ可読媒体を含む。
【0218】
実施例30は、方法が、グルコースレベルに関するデータのサブセットをクラウドインフラストラクチャから第2の表示デバイスに転送することをさらに含み、データのサブセットが、現在のグルコースレベル及び過去のグルコースレベルのうちの少なくとも1つを含む、実施例23のコンピュータ可読媒体を含む。
【0219】
実施例31は、方法が、クラウドインフラストラクチャにより、1つ以上の要求システムによる第1のデータセット及び第2のデータセットへのアクセスを許可するかを選択的に決定することをさらに含む、実施例23のコンピュータ可読媒体を含む。
【0220】
実施例32は、要求システムが、技術サポートシステム、少なくとも1つの第三者アプリケーション、及びデータウェアハウスを含み、クラウドインフラストラクチャが、技術サポートシステムに第1のデータセット及び第2のデータセットへのアクセスを許可し、少なくとも1つの第三者アプリケーションに第1のデータセットへのアクセスを許可し、データウェアハウスに第1のデータセット及び第2のデータセットへのアクセスを許可する、実施例31のコンピュータ可読媒体を含む。
【0221】
実施例33は、表示デバイスが、スマートフォンまたはディスプレイのうちの少なくとも1つを含む、実施例23のコンピュータ可読媒体を含む。
【0222】
本技術(実施例34)によるいくつかの実施形態では、連続グルコースモニタからのグルコースレベルに関するデータを暗号化及び送信するための方法であって、方法が、連続グルコースモニタと関連付けられた送信機により第1のデータセットを暗号化することと、送信機により第2のデータセットを暗号化することと、第1のデータセット及び第2のデータセットを少なくとも1つの表示デバイスに無線送信することと、表示デバイスにより第1のデータセットを復号することと、表示デバイスが第2のデータセットを復号するのを阻止することと、第1のデータセット及び第2のデータセットをクラウドインフラストラクチャに自動的に転送することと、クラウドインフラストラクチャにより第2のデータセットを復号することと、を含む。
【0223】
実施例35は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例34の方法を含む。
【0224】
実施例36は、送信機が、第1のデータセット及び第2のデータセットを暗号化する際に高度暗号化標準を使用する、実施例34の方法を含む。
【0225】
実施例37は、第1のデータセットをクラウドインフラストラクチャ内の第1のサーバに記憶することと、第2のデータセットをクラウドインフラストラクチャ内の第2の異なるサーバに記憶することと、をさらに含む、実施例34の方法を含む。
【0226】
実施例38は、表示デバイスが、ディスプレイまたはスマートフォンのうちの少なくとも1つを含む、実施例34の方法を含む。
【0227】
実施例39は、自動的転送が、ディスプレイに接続されたパーソナルコンピュータを通じて第1のデータセット及び第2のデータセットを転送することを含み、接続が、有線接続または無線接続のいずれかを含む、実施例34の方法を含む。
【0228】
本技術(実施例40)によるいくつかの実施形態では、連続グルコースモニタからのグルコースレベルに関するデータを暗号化及び送信するためのシステムであって、システムが、第1のデータセット及び第2のデータセットを暗号化し、かつ第1のデータセット及び第2のデータセットを無線送信するように構成された、連続グルコースモニタと関連付けられた送信機と、第1のデータセット及び第2のデータセットを受信し、第1のデータセットを復号し、かつ第1のデータセット及び第2のデータセットを自動的に転送するように構成された少なくとも1つの表示デバイスと、少なくとも1つの表示デバイスから第1のデータセット及び第2のデータセットを受信し、かつ第2のデータセットを復号するように構成されたクラウドインフラストラクチャと、を含み、少なくとも1つの表示デバイスが、第2のデータセットを復号することができない。
【0229】
実施例41は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例40のシステムを含む。
【0230】
実施例42は、送信機が、第1のデータセット及び第2のデータセットを暗号化する際に高度暗号化標準を使用する、実施例40のシステムを含む。
【0231】
実施例43は、第1のデータセットを記憶するように構成されたクラウドインフラストラクチャ内の第1のサーバと、第2のデータセットを記憶するように構成されたクラウドインフラストラクチャ内の第2のサーバと、をさらに含む、実施例40のシステムを含む。
【0232】
実施例44は、表示デバイスが、ディスプレイまたはスマートフォンのうちの少なくとも1つを含む、実施例40のシステムを含む。
【0233】
実施例45は、少なくとも1つの表示デバイスから第1のデータセット及び第2のデータセットを受信し、かつ第1のデータセット及び第2のデータセットをクラウドインフラストラクチャに転送するように構成されたパーソナルコンピュータをさらに含む、実施例40のシステムを含む。
【0234】
本技術(実施例46)によるいくつかの実施形態では、1つ以上のコンピュータ可読媒体は、連続グルコースモニタと関連付けられた送信機により第1のデータセットを暗号化することと、送信機により第2のデータセットを暗号化することと、第1のデータセット及び第2のデータセットを少なくとも1つの表示デバイスに無線送信することと、表示デバイスにより第1のデータセットを復号することと、表示デバイスが第2のデータセットを復号するのを阻止することと、第1のデータセット及び第2のデータセットをクラウドインフラストラクチャに自動的に転送することと、クラウドインフラストラクチャにより第2のデータセットを復号することと、を含む、1つ以上のプロセッサにより実行されると、連続グルコースモニタからのグルコースレベルに関するデータを暗号化及び送信するための方法を行う命令を含む。
【0235】
実施例47は、第1のデータセットが、リアルタイムデータを含み、リアルタイムデータが、グルコース値、連続グルコースセンサの現在の状態、及びグルコース値を取得するために使用される測定結果と関連付けられたタイムスタンプのうちの1つ以上を含み、第2のデータセットが、連続グルコースモニタを較正するための情報及び連続グルコースモニタの技術サポートのために使用される情報のうちの少なくとも1つを含む、実施例46のコンピュータ可読媒体を含む。
【0236】
実施例48は、送信機が、第1のデータセット及び第2のデータセットを暗号化する際に高度暗号化標準を使用する、実施例46のコンピュータ可読媒体を含む。
【0237】
実施例49は、方法が、第1のデータセットをクラウドインフラストラクチャ内の第1のサーバに記憶することと、第2のデータセットをクラウドインフラストラクチャ内の第2のサーバに記憶することと、をさらに含む、実施例46のコンピュータ可読媒体を含む。
【0238】
実施例50は、表示デバイスが、ディスプレイまたはスマートフォンのうちの少なくとも1つを含む、実施例46のコンピュータ可読媒体を含む。
【0239】
実施例51は、自動的転送が、ディスプレイに接続されたパーソナルコンピュータを通じて第1のデータセット及び第2のデータセットを転送することを含み、接続が、有線接続または無線接続のいずれかを含む、実施例46のコンピュータ可読媒体を含む。
【0240】
本技術(実施例52)によるいくつかの実施形態では、グルコースレベルに関するデータへのアクセスを制御するための方法は、クラウドインフラストラクチャで、グルコースレベルに関するデータへのアクセスを制御するための複数の規則を定義することと、グルコースレベルに関するデータにアクセスするための複数のアプリケーションプログラムインターフェースを提供することと、アプリケーションプログラムインターフェースのうちの少なくとも1つを通じてグルコースレベルに関するデータの要求を受信することと、複数の規則及びデータの要求に基づいて、グルコースレベルに関するデータの要求を許可するかを決定することと、アクセスが許可されるべきであると決定したときに、グルコースレベルに関するデータへのアクセスを提供することと、を含む。
【0241】
実施例53は、共通アプリケーションを通じて要求を受信することと、要求をクラウドインフラストラクチャに提供することと、をさらに含み、アクセスの提供が、グルコースレベルに関するデータを、共通アプリケーションを通じてアプリケーションプログラムインターフェースのうちの少なくとも1つに提供することを含む、実施例52の方法を含む。
【0242】
実施例54は、アプリケーションプログラムインターフェースを使用して、ユーザ名及びパスワードを含むシングルログインを共通アプリケーション及び複数のアプリケーションに提供することをさらに含む、実施例53の方法を含む。
【0243】
実施例55は、アプリケーションプログラムインターフェースのうちの少なくとも1つを使用して、アプリケーションに対する要求に応じてウェブインターフェースを共通アプリケーションから起動することをさらに含む、実施例53の方法を含む。
【0244】
実施例56は、共通アプリケーション内に第2のアプリケーションのためのアイコンを提供することと、アイコンの選択を受信することと、第2のアプリケーションをホストするサーバに直接アクセスすることと、共通アプリケーションでサーバへのアクセスの結果を実行することと、をさらに含む、実施例55の方法を含む。
【0245】
実施例57は、クラウドインフラストラクチャを通じて第2の表示デバイスによりグルコースレベルに関するデータにアクセスする要求を受信することと、クラウドインフラストラクチャにより、第2の表示デバイスと関連付けられた匿名識別子を記憶することと、グルコースレベルに関するデータを第2の表示デバイスに提供することと、をさらに含む、実施例52の方法を含む。
【0246】
本技術(実施例58)によるいくつかの実施形態では、グルコースレベルに関するデータへのアクセスを制御するためのシステムは、グルコースレベルに関するデータにアクセスするための複数のアプリケーションプログラムインターフェースを含む1つ以上の表示デバイスを含み、表示デバイスが、アプリケーションプログラムインターフェースのうちの少なくとも1つを通じてグルコースレベルに関するデータの要求を受信するように構成されており、クラウドインフラストラクチャが、グルコースレベルに関するデータへのアクセスを制御するための複数の規則を定義し、複数の規則及びデータの要求に基づいて、グルコースレベルに関するデータの要求を許可するかを決定し、かつアクセスが許可されるべきであると決定したときに、グルコースレベルに関するデータへのアクセスを提供するように構成されている。
【0247】
実施例59は、要求を受信し、かつその要求をクラウドインフラストラクチャに提供するように構成された1つ以上の表示デバイス上で実行する共通アプリケーションをさらに含み、クラウドインフラストラクチャが、グルコースレベルに関するデータを、共通アプリケーションを通じてアプリケーションプログラムインターフェースのうちの少なくとも1つに提供することによって、アクセスを提供する、実施例58のシステムを含む。
【0248】
実施例60は、ユーザ名及びパスワードを含むシングルログインが、アプリケーションプログラムインターフェースを使用して、共通アプリケーション及び複数のアプリケーションにアクセスする、実施例59のシステムを含む。
【0249】
実施例61は、1つ以上の表示デバイスが、アプリケーションプログラムインターフェースのうちの少なくとも1つを使用して、アプリケーションに対する要求に応じてウェブインターフェースを共通アプリケーションから起動するようにさらに構成されている、実施例59のシステムを含む。
【0250】
実施例62は、1つ以上の表示デバイスが、共通アプリケーション内に第2のアプリケーションのためのアイコンを提供し、アイコンの選択を受信し、第2のアプリケーションをホストするサーバに直接アクセスし、かつ共通アプリケーションでサーバへのアクセスの結果を実行するようにさらに構成されている、実施例61のシステムを含む。
【0251】
実施例63は、グルコースレベルに関するデータにアクセスする要求をクラウドインフラストラクチャに提供するように構成された第2の表示デバイスをさらに含み、クラウドインフラストラクチャが、第2の表示デバイスと関連付けられた匿名識別子を記憶し、かつグルコースレベルに関するデータを第2の表示デバイスに提供するようにさらに構成されている、実施例58のシステムを含む。
【0252】
本技術(実施例64)によるいくつかの実施形態では、1つ以上のコンピュータ可読媒体は、クラウドインフラストラクチャで、グルコースレベルに関するデータへのアクセスを制御するための複数の規則を定義することと、グルコースレベルに関するデータにアクセスするための複数のアプリケーションプログラムインターフェースを提供することと、アプリケーションプログラムインターフェースのうちの少なくとも1つを通じてグルコースレベルに関するデータの要求を受信することと、複数の規則及びデータの要求に基づいて、グルコースレベルに関するデータの要求を許可するかを決定することと、アクセスが許可されるべきであると決定したときに、グルコースレベルに関するデータへのアクセスを提供することと、を含む、1つ以上のプロセッサにより実行されると、グルコースレベルに関するデータへのアクセスを制御するための方法を行う命令を含む。
【0253】
実施例65は、方法が、共通アプリケーションを通じて要求を受信することと、その要求をクラウドインフラストラクチャに提供することと、をさらに含み、アクセスの提供が、グルコースレベルに関するデータを、共通アプリケーションを通じてアプリケーションプログラムインターフェースのうちの少なくとも1つに提供することを含む、実施例64のコンピュータ可読媒体を含む。
【0254】
実施例66は、方法が、アプリケーションプログラムインターフェースを使用して、ユーザ名及びパスワードを含むシングルログインを共通アプリケーション及び複数のアプリケーションに提供することをさらに含む、実施例65のコンピュータ可読媒体を含む。
【0255】
実施例67は、方法が、アプリケーションプログラムインターフェースのうちの少なくとも1つを使用して、アプリケーションに対する要求に応じてウェブインターフェースを共通アプリケーションから起動することをさらに含む、実施例65のコンピュータ可読媒体を含む。
【0256】
実施例68は、方法が、共通アプリケーション内に第2のアプリケーションのためのアイコンを提供することと、アイコンの選択を受信することと、第2のアプリケーションをホストするサーバに直接アクセスすることと、共通アプリケーションでサーバへのアクセスの結果を実行することと、をさらに含む、実施例67のコンピュータ可読媒体を含む。
【0257】
実施例69は、方法が、クラウドインフラストラクチャを通じて第2の表示デバイスによりグルコースレベルに関するデータにアクセスする要求を受信することと、クラウドインフラストラクチャにより、第2の表示デバイスと関連付けられた匿名識別子を記憶することと、グルコースレベルに関するデータを第2の表示デバイスに提供することと、をさらに含む、実施例68のコンピュータ可読媒体を含む。
【0258】
本技術(実施例70)によるいくつかの実施形態では、分散アーキテクチャにおいてグルコースレベルに関するデータを更新する方法は、連続グルコースモニタと関連付けられた送信機からグルコースレベルに関する1つ以上のデータ点を取得することと、1つ以上のデータ点を1つ以上の表示デバイス及び1つ以上のサーバ間で分散することと、表示デバイスまたはサーバ間から欠損データ点を識別することであって、欠損データ点が1つ以上のデータ点のうちの1つである、識別することと、欠損データ点が規定の期間内に入った場合に、欠損データ点を少なくとも1つの表示デバイスまたはサーバに提供することと、を含む。
【0259】
実施例71は、欠損データ点が、分散後に表示デバイスまたはサーバに送られるバックフィルされたデータを含む、実施例70の方法を含む。
【0260】
実施例72は、表示デバイスまたはサーバ間からの1つ以上の欠損データ点を識別することと、1つ以上の欠損データ点を表示デバイスまたはサーバに提供することと、をさらに含む、実施例70の方法を含む。
【0261】
実施例73は、表示デバイスまたはサーバ間から1つ以上の欠損データ点を識別することと、1つ以上の欠損データ点のうちのどの欠損データ点が規定の時間間隔のサブセット内に作成されたかを決定することと、規定の時間間隔のサブセット内に作成された欠損データ点を提供することと、をさらに含む、実施例70の方法を含む。
【0262】
実施例74は、1つ以上のデータ点及び欠損データ点を表示することと、欠損データ点がバックフィルされたデータを含むという指示を表示することと、をさらに含む、実施例73の方法を含む。
【0263】
実施例75は、欠損データ点が最初に入手可能になったときに、欠損データ点を受信する少なくとも1つの表示デバイスまたはサーバがオフにされていたか、または切断されていた、実施例70の方法を含む。
【0264】
実施例76は、表示デバイスまたはサーバ間から1つ以上の欠損データ点を識別することと、データを欠損したデバイスに基づいてバックフィルする欠損データ点の数を決定することと、決定された数の欠損データ点を表示デバイスまたはサーバに提供することと、をさらに含む、実施例70の方法を含む。
【0265】
実施例77は、欠損データ点が提供された1つ以上の表示デバイスまたはサーバにより、欠損データ点がバックフィルされたデータを含むという指示を記憶することをさらに含む、実施例70の方法を含む。
【0266】
実施例78は、1つ以上の表示デバイス及び1つ以上のサーバにより、1つ以上のデータ点がリアルタイムで受信されたという指示を記憶することをさらに含む、実施例70の方法を含む。
【0267】
実施例79は、複数の表示デバイスを送信機に接続することと、1つ以上のデータ点を複数の表示デバイスに分散することと、どの表示デバイスがデータを転送したかの指示とともに、1つ以上のデータ点を複数の表示デバイスから1つ以上のサーバに転送することと、をさらに含む、実施例70の方法を含む。
【0268】
実施例80は、複数のデータセットの分散中に1つ以上のデータ点を受信することと、分散中に受信された1つ以上のデータ点を欠損データ点とは異なって表示することと、をさらに含む、実施例79の方法を含む。
【0269】
実施例81は、規定の期間が、過去6時間を含む、実施例70の方法を含む。
【0270】
本技術(実施例82)によるいくつかの実施形態では、分散アーキテクチャにおいてグルコースレベルに関するデータを更新するためのシステムは、グルコースレベルに関する複数のデータセットを取得し、かつ複数のデータセットを1つ以上の表示デバイス及び1つ以上のサーバ間で分散するように構成された連続グルコースモニタと関連付けられた送信機を含み、1つ以上の表示デバイス及び1つ以上のサーバは、複数のデータセット間から欠損データセットを識別し、欠損データセットを要求し、かつ欠損データセットが規定の期間内に入った場合に、欠損データセットを受信するように構成されている。
【0271】
実施例83は、欠損データセットが、分散後に1つ以上の表示デバイスまたはサーバに送られるバックフィルされたデータを含む、実施例82のシステムを含む。
【0272】
実施例84は、1つ以上の表示デバイス及び1つ以上のサーバが、表示デバイスまたはサーバ間から複数の欠損データセットを識別し、複数の欠損データセットを要求し、かつ複数の欠損データセットを受信するように構成されている、実施例82のシステムを含む。
【0273】
実施例85は、1つ以上の表示デバイス及び1つ以上のサーバが、複数の欠損データセットを識別し、複数の欠損データセットのうちのどの欠損データセットが規定の時間間隔のサブセット内に作成されたかを決定し、かつ規定の時間間隔のサブセット内に作成された欠損データセットを要求するように構成されている、実施例82のシステムを含む。
【0274】
実施例86は、1つ以上の表示デバイスが、複数のデータセット及び欠損データセットを表示し、欠損データセットがバックフィルされたデータを含むという指示を表示するように構成されている、実施例85のシステムを含む。
【0275】
実施例87は、欠損データセットが最初に入手可能になったときに、欠損データセットを受信する1つ以上の表示デバイスまたはサーバがオフにされていたか、または切断されていた、実施例82のシステムを含む。
【0276】
実施例88は、表示デバイスまたはサーバ間から複数の欠損データセットが識別され、データを欠損したデバイスに基づいてバックフィルする欠損データセットの数が決定され、決定された数の欠損データセットが表示デバイスまたはサーバに提供される、実施例82のシステムを含む。
【0277】
実施例89は、欠損データセットが提供された少なくとも1つの表示デバイスまたはサーバが、欠損データセットがバックフィルされたデータを含むという指示を記憶する、実施例82のシステムを含む。
【0278】
実施例90は、1つ以上の表示デバイス及び1つ以上のサーバが、複数のデータセットがリアルタイムで受信されたという指示を記憶する、実施例89のシステムを含む。
【0279】
実施例91は、送信機に接続された複数の表示デバイスをさらに含み、複数のデータセットが、複数の表示デバイスに分散され、複数のデータセットが、どの表示デバイスがデータセットを転送したかの指示とともに、複数の表示デバイスから1つ以上のサーバに転送される、実施例82のシステムを含む。
【0280】
実施例92は、複数のデータセットが、複数のデータセットの分散中に受信され、分散中に受信された複数のデータセットが、欠損データセットとは異なって表示される、実施例82のシステムを含む。
【0281】
実施例93は、規定の期間が、過去6時間を含む、実施例82のシステムを含む。
【0282】
本技術(実施例94)によるいくつかの実施形態では、1つ以上のコンピュータ可読媒体は、1つ以上のプロセッサにより実行されると、連続グルコースモニタと関連付けられた送信機からグルコースレベルに関する複数のデータセットを取得することと、複数のデータセットを1つ以上の表示デバイス及び1つ以上のサーバ間で分散することと、表示デバイスまたはサーバ間から欠損データセットを識別することであって、欠損データセットが複数のデータセットのうちの1つである、識別することと、欠損データセットが規定の期間内に入った場合に、欠損データセットを少なくとも1つの表示デバイスまたはサーバに提供することと、を含む、分散アーキテクチャにおいてグルコースレベルに関するデータを更新する方法を行う命令を含む。
【0283】
実施例95は、欠損データセットが、分散後に表示デバイスまたはサーバに送られるバックフィルされたデータを含む、実施例94のコンピュータ可読媒体を含む。
【0284】
実施例96は、方法が、表示デバイスまたはサーバ間から複数の欠損データセットを識別することと、複数の欠損データセットを表示デバイスまたはサーバに提供することと、をさらに含む、実施例94のコンピュータ可読媒体を含む。
【0285】
実施例97は、方法が、表示デバイスまたはサーバ間から複数の欠損データセットを識別することと、複数の欠損データセットのうちのどの欠損データセットが規定の時間間隔のサブセット内に作成されたかを決定することと、規定の時間間隔のサブセット内に作成された欠損データセットを提供することと、をさらに含む、実施例94のコンピュータ可読媒体を含む。
【0286】
実施例98は、方法が、複数のデータセット及び欠損データセットを表示することと、欠損データセットがバックフィルされたデータを含むという指示を表示することと、をさらに含む、実施例95のコンピュータ可読媒体を含む。
【0287】
実施例99は、欠損データセットが最初に入手可能になったときに、欠損データセットを受信する少なくとも1つの表示デバイスまたはサーバがオフにされていたか、または切断されていた、実施例94のコンピュータ可読媒体を含む。
【0288】
実施例100は、方法が、表示デバイスまたはサーバ間から複数の欠損データセットを識別することと、データを欠損したデバイスに基づいてバックフィルする欠損データセットの数を決定することと、決定された数の欠損データセットを表示デバイスまたはサーバに提供することと、をさらに含む、実施例95のコンピュータ可読媒体を含む。
【0289】
実施例101は、方法が、欠損データセットが提供された1つ以上の表示デバイスまたはサーバにより、欠損データセットがバックフィルされたデータを含むという指示を記憶することをさらに含む、実施例100のコンピュータ可読媒体を含む。
【0290】
実施例102は、方法が、1つ以上の表示デバイス及び1つ以上のサーバにより、複数のデータセットがリアルタイムで受信されたという指示を記憶することをさらに含む、実施例101のコンピュータ可読媒体を含む。
【0291】
実施例103は、方法が、複数の表示デバイスを送信機に接続することと、複数のデータセットを複数の表示デバイスに分散することと、どの表示デバイスがデータセットを転送したかの指示とともに、複数のデータセットを複数の表示デバイスから1つ以上のサーバに転送することをさらに含む、実施例94のコンピュータ可読媒体を含む。
【0292】
実施例104は、方法が、複数のデータセットの分散中に複数のデータセットを受信することと、分散中に受信された複数のデータセットを欠損データセットとは異なって表示することと、をさらに含む、実施例94のコンピュータ可読媒体を含む。
【0293】
実施例105は、規定の期間が、過去6時間を含む、実施例94のコンピュータ可読媒体を含む。
【0294】
本技術(実施例106)によるいくつかの実施形態では、分散アーキテクチャシステムにおいてグルコースレベルに関するデータを同期化するための方法は、グルコースレベルに関する複数のデータセットを連続グルコースモニタと関連付けられた送信機から第1の表示デバイス及び第2の表示デバイスに提供することと、複数のデータセットを第1の表示デバイス及び第2の表示デバイスからサーバに提供することと、複数のデータセットが第1の表示デバイスまたは第2の表示デバイスから受信されたかに基づいて、サーバにより複数のデータセットを別々に記憶することと、を含む。
【0295】
実施例107は、第1の表示デバイスにより、複数のデータセットを第1の表示デバイスによって受信されたものとしてタグ付けすることと、第2の表示デバイスにより、複数のデータセットを第2の表示デバイスによって受信されたものとしてタグ付けすることと、をさらに含む、実施例106の方法を含む。
【0296】
実施例108は、グルコースレベルが第1の規定のレベルに到達したとき、または第1の変化率を経験したときのための第1のアラートを第1の表示デバイス上に含むことと、グルコースレベルが第2の規定のレベルに到達したとき、または第2の変化率を経験したときのための第2のアラートを第2の表示デバイス上に作成することと、をさらに含む、実施例106の方法を含む。
【0297】
実施例109は、複数のデータセットを第1の表示デバイスからサーバにいつ提供するかを設定することと、複数のデータセットを第2の表示デバイスからサーバにいつ提供するかを設定することと、をさらに含む、実施例106の方法を含む。
【0298】
実施例110は、サーバが、複数の接続されたコンピューティングデバイスを含む分散クラウドコンピューティングシステムを含む、実施例106の方法を含む。
【0299】
本技術(実施例111)によるいくつかの実施形態では、分散アーキテクチャシステムにおいてグルコースレベルに関するデータを同期化するためのシステムは、グルコースレベルに関する複数のデータセットを提供するように構成された、連続グルコースモニタと関連付けられた送信機と、複数のデータセットを受信し、かつ複数のデータセットを提供するように構成された第1の表示デバイス及び第2の表示デバイスと、複数のデータセットを受信し、かつ複数のデータセットが第1の表示デバイスまたは第2の表示デバイスから受信されたかに基づいて、複数のデータセットを別々に記憶するように構成されたサーバと、を含む。
【0300】
実施例112は、第1の表示デバイスが、複数のデータセットを第1の表示デバイスによって受信されたものとしてタグ付けし、第2の表示デバイスが、複数のデータセットを第2の表示デバイスによって受信されたものとしてタグ付けする、実施例111のシステムを含む。
【0301】
実施例113は、第1の表示デバイスが、グルコースレベルが第1の規定のレベルに到達したとき、または第1の変化率を経験したときのための第1のアラートを提供するように構成されており、第2の表示デバイスが、グルコースレベルが第2の規定のレベルに到達したとき、または第2の変化率を経験したときのための第2のアラートを提供するように構成されている、実施例111のシステムを含む。
【0302】
実施例114は、第1の表示デバイスが、第1の規定の時間に複数のデータセットをサーバに提供するように構成されており、第2の表示デバイスが、第2の規定の時間に複数のデータセットをサーバに提供するように構成されている、実施例111のシステムを含む。
【0303】
実施例115は、サーバが、複数の接続されたコンピューティングデバイスを含む分散クラウドコンピューティングシステムを含む、実施例111のシステムを含む。
【0304】
本技術(実施例116)によるいくつかの実施形態では、1つ以上のコンピュータ可読媒体は、グルコースレベルに関する複数のデータセットを連続グルコースモニタと関連付けられた送信機から第1の表示デバイス及び第2の表示デバイスに提供することと、複数のデータセットを第1の表示デバイス及び第2の表示デバイスからサーバに提供することと、複数のデータセットが第1の表示デバイスまたは第2の表示デバイスから受信されたかに基づいて、サーバにより複数のデータセットを別々に記憶することと、を含む、1つ以上のプロセッサにより実行されると、分散アーキテクチャシステムにおいてグルコースレベルに関するデータを同期化するための方法を行う命令を含む。
【0305】
実施例117は、方法が、第1の表示デバイスにより、複数のデータセットを第1の表示デバイスによって受信されたものとしてタグ付けすることと、第2の表示デバイスにより、複数のデータセットを第2の表示デバイスによって受信されたものとしてタグ付けすることと、をさらに含む、実施例116のコンピュータ可読媒体を含む。
【0306】
実施例118は、方法が、グルコースレベルが第1の規定のレベルに到達したとき、または第1の変化率を経験したときのための第1のアラートを第1の表示デバイス上に作成することと、グルコースレベルが第2の規定のレベルに到達したとき、または第2の変化率を経験したときのための第2のアラートを第2の表示デバイス上に作成することと、をさらに含む、実施例116のコンピュータ可読媒体を含む。
【0307】
実施例119は、方法が、複数のデータセットを第1の表示デバイスからサーバにいつ提供するかを設定することと、複数のデータセットを第2の表示デバイスからサーバにいつ提供するかを設定することと、をさらに含む、実施例116のコンピュータ可読媒体を含む。
【0308】
実施例120は、サーバが、複数の接続されたコンピューティングデバイスを含む分散クラウドコンピューティングシステムを含む、実施例116のコンピュータ可読媒体を含む。
【0309】
本技術(実施例121)によるいくつかの実施形態では、複数の連続グルコースモニタにより、グルコース監視レベルに関するデータを安全に収集、分析、及びレポートするためのシステムは、複数の連続グルコースモニタ(CGM)デバイスと、複数のCGMデバイスからデータを受信する複数の表示デバイスであって、データがデータ型に基づいて複数の分類に分類される、複数の表示デバイスと、間欠ベースで複数の表示デバイスからデータを受信する複数のサーバを含むクラウドサーバアーキテクチャであって、複数のサーバのうちの特定のサーバにルーティングされたデータがデータ型によって決定され、間欠ベースがデータ型に応じて異なる、クラウドサーバアーキテクチャと、複数のサーバのうちの1つからデータを受信する複数の遠隔モニタ表示デバイスであって、複数の遠隔モニタ表示デバイスの各々に送られるデータが、データ型と、データを複数のサーバのうちの1つに送信した表示デバイスとに依存し、前記データが、複数のサーバのうちの1つによる受信直後に複数の遠隔モニタ表示デバイスに送られる、遠隔モニタ表示デバイスと、分析及びレポートエンジンであって、複数のサーバによって受信されたデータの少なくとも一部が分析及びレポートエンジンに送信され、前記送信されたデータが分析され、レポートが分析及びレポートエンジンによって生成される、分析及びレポートエンジンと、を含む。
【0310】
実施例122は、クラウドサーバアーキテクチャを含む複数のサーバが、少なくとも1つのリアルタイムサーバ及びバルクデータコレクタを含む、実施例121のシステムを含む。
【0311】
実施例123は、データ型が、リアルタイムデータ及びバルクデータを含む、実施例121〜122のうちのいずれかのシステムを含む。
【0312】
実施例124は、リアルタイムデータが、複数の表示デバイスからリアルタイムサーバにルーティングされ、バルクデータが、複数の表示デバイスからバルクデータコレクタにルーティングされる、実施例123のシステムを含む。
【0313】
実施例125は、リアルタイムデータが、バルクデータが複数の表示デバイスからバルクデータコレクタにルーティングされる間欠ベースよりも頻度の高い間欠ベースで、複数の表示デバイスからリアルタイムサーバにルーティングされる、実施例124のシステムを含む。
【0314】
実施例126は、リアルタイムデータが、複数の表示デバイスからリアルタイムサーバに5分毎にルーティングされ、バルクデータが、複数の表示デバイスからバルクデータコレクタに1時間毎にルーティングされる、実施例125のシステムを含む。
【0315】
実施例127は、ロケータサービスをさらに含み、複数の表示デバイスが、ロケータサービスを通じてクラウドサーバアーキテクチャに接続する、実施例121〜126のうちのいずれかのシステムを含む。
【0316】
実施例128は、複数の表示デバイスのうちの少なくとも1つが、スマートフォンを含む、実施例121〜127のうちのいずれかのシステムを含む。
【0317】
実施例129は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、スマートフォンを含む、実施例121〜128のうちのいずれかのシステムを含む。
【0318】
実施例130は、複数の表示デバイスが、少なくとも150,000個のデバイスを含む、実施例121〜129のうちのいずれかのシステムを含む。
【0319】
実施例131は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、複数の遠隔表示デバイスのうちの少なくとも1つにより実行され得るアプリケーションをさらに含む、実施例121〜130のうちのいずれかのシステムを含む。
【0320】
実施例132は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つ上のアプリケーションが、複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているデータを受信するために開いており、かつ起動していなければならず、さもなければ複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているデータが、複数のサーバのうちの1つにより保持される、実施例131のシステムを含む。
【0321】
実施例133は、複数のサーバのうちの1つからデータを受信する複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、データが、複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているという通知を受信する、実施例121〜132のうちのいずれかのシステムを含む。
【0322】
実施例134は、通知が、テキストメッセージを含む、実施例133のシステムを含む。
【0323】
実施例135は、複数のサーバのうちの1つがデータを複数の遠隔表示デバイスのうちの少なくとも1つに送ろうと試みたときに、複数の遠隔表示デバイスのうちの少なくとも1つにより実行され得るアプリケーションがウェイクアップする、実施例131のシステムを含む。
【0324】
実施例136は、アプリケーションがウェイクアップした後に、アプリケーションが、データに、複数のサーバのうちの1つから送られるよう要求する、実施例135のシステムを含む。
【0325】
本技術(実施例136)によるいくつかの実施形態では、複数の連続グルコースモニタによりグルコース監視レベルに関するデータを安全に収集、分析、及びレポートするための方法は、複数の表示デバイスにより、複数の連続グルコースモニタ(CGM)デバイスからデータを受信することと、データ型に基づいてデータを複数の分類に分類することと、データを、複数の表示デバイスから、間欠ベースで複数の表示デバイスからデータを受信する複数のサーバを含むクラウドサーバアーキテクチャに送信することであって、複数のサーバのうちの特定のサーバにルーティングされるデータがデータ型によって決定され、間欠ベースがデータ型に応じて異なる、送信することと、複数の遠隔モニタ表示デバイスにより、複数のサーバのうちの1つからデータを受信することであって、複数の遠隔モニタ表示デバイスの各々に送られるデータが、データ型と、データを複数のサーバのうちの1つに送信した表示デバイスとに依存し、前記データが、複数のサーバのうちの1つによる受信直後に複数の遠隔モニタ表示デバイスに送られる、受信することと、分析及びレポートエンジンにより、複数のサーバによって受信されたデータの少なくとも一部を受信することであって、前記受信されたデータが分析され、レポートが分析及びレポートエンジンによって生成される、受信することと、を含む。
【0326】
実施例138は、クラウドサーバアーキテクチャを含む複数のサーバが、少なくとも1つのリアルタイムサーバ及びバルクデータコレクタを含む、実施例137の方法を含む。
【0327】
実施例139は、データ型に基づくデータの複数の分類への分類が、データをリアルタイムデータ及びバルクデータとして分類することを含む、実施例137〜138のうちのいずれかの方法を含む。
【0328】
実施例140は、リアルタイムデータが、複数の表示デバイスからリアルタイムサーバにルーティングされ、バルクデータが、複数の表示デバイスからバルクデータコレクタにルーティングされる、実施例139の方法を含む。
【0329】
実施例141は、リアルタイムデータが、バルクデータが複数の表示デバイスからバルクデータコレクタにルーティングされる間欠ベースよりも頻度の高い間欠ベースで、複数の表示デバイスからリアルタイムサーバにルーティングされる、実施例140の方法を含む。
【0330】
実施例142は、リアルタイムデータが、複数の表示デバイスからリアルタイムサーバに5分毎にルーティングされ、バルクデータが、複数の表示デバイスからバルクデータコレクタに1時間毎にルーティングされる、実施例141の方法を含む。
【0331】
実施例143は、ロケータサービスをさらに含み、複数の表示デバイスが、ロケータサービスを通じてクラウドサーバアーキテクチャに接続する、実施例137〜142のうちのいずれかの方法を含む。
【0332】
実施例144は、複数の表示デバイスのうちの少なくとも1つが、スマートフォンを含む、実施例137〜143のうちのいずれかの方法を含む。
【0333】
実施例145は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、スマートフォンを含む、実施例137〜144のうちのいずれかの方法を含む。
【0334】
実施例146は、複数の表示デバイスが、少なくとも150,000個のデバイスを含む、実施例137〜145のうちのいずれかの方法を含む。
【0335】
実施例147は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、複数の遠隔表示デバイスのうちの少なくとも1つにより実行され得るアプリケーションをさらに含む、実施例137〜146のうちのいずれかの方法を含む。
【0336】
実施例148は、複数の遠隔モニタ表示デバイスのうちの少なくとも1つ上のアプリケーションが、複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているデータを受信するために開いており、かつ起動していなければならず、さもなければ複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているデータが、複数のサーバのうちの1つにより保持される、実施例147の方法を含む。
【0337】
実施例149は、複数のサーバのうちの1つからデータを受信する複数の遠隔モニタ表示デバイスのうちの少なくとも1つが、データが、複数の遠隔モニタ表示デバイスのうちの少なくとも1つに送られる準備が整っているという通知を受信する、実施例137〜148のうちのいずれかの方法を含む。
【0338】
実施例150は、通知が、テキストメッセージを含む、実施例149の方法を含む。
【0339】
実施例151は、複数のサーバのうちの1つがデータを複数の遠隔表示デバイスのうちの少なくとも1つに送ろうと試みたときに、複数の遠隔表示デバイスのうちの少なくとも1つにより実行され得るアプリケーションがウェイクアップする、実施例147の方法を含む。
【0340】
実施例152は、アプリケーションがウェイクアップした後に、アプリケーションが、データに、複数のサーバのうちの1つから送られるよう要求する、実施例151の方法を含む。
【0341】
1つ以上のコンピュータ可読媒体(複数可)の任意の組み合わせが利用され得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、もしくは半導体システム、装置、もしくはデバイス、または前述の任意の好適な組み合わせであり得る。コンピュータ可読記憶媒体のより具体的な実施例(非包括的リスト)としては、以下のもの:1つ以上のワイヤを有する電気接続部、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラム可能読み取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、光学記憶デバイス、磁気記憶デバイス、または前述の任意の好適な組み合わせが挙げられる。コンピュータ可読媒体に具現化されるプログラムコードは、無線、有線、光ファイバケーブル、RF等、または前述の任意の好適な組み合わせを含むが、これらに限定されない任意の適切な媒体を使用して送信され得る。
【0342】
コンピュータプログラムコードは、オブジェクト指向プログラミング言語、例えば、Java(登録商標)、Smalltalk、C++等、及び従来の手続き型プログラミング言語、例えば、「C」プログラミング言語または同様のプログラミング言語を含む1つ以上のプログラミング言語の任意の組み合わせで書かれ得る。プログラムコードは、完全にコンピューティングユニット上で実行され得る。
【0343】
フローチャート図及び/またはブロック図の各ブロック、ならびにフローチャート図及び/またはブロック図のブロックの組み合わせが、コンピュータプログラム命令によって実施され得ることが理解される。これらのコンピュータプログラム命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサにより実行する命令が、フローチャート及び/またはブロック図のブロック(複数可)に特定される機能/行為を実施するための手段を生み出すように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供されて、機械を生産することができる。
【0344】
本明細書に記載の様々な技法が、ハードウェアもしくはソフトウェア、または適切な場合、それらの組み合わせに関連して実施され得ることを理解されたい。したがって、本開示の主題の方法及び装置、またはある特定の態様もしくはその一部は、フロッピーディスケット、CD−ROM、ハードドライブ、または任意の他の機械可読記憶媒体等の有形媒体に具現化されるプログラムコード(すなわち、命令)の形態をとってもよく、プログラムコードがコンピューティングデバイス等の機械にロードされ、それにより実行されると、その機械は、本開示の主題を実施するための装置になる。プログラム可能コンピュータ上でプログラムコードを実行する場合、コンピューティングデバイスは、一般に、プロセッサ、プロセッサ可読記憶媒体(揮発性メモリ及び不揮発性メモリならびに/または記憶素子を含む)、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスを含む。1つ以上のプログラムは、例えば、アプリケーションプログラミングインターフェース(API)、再使用可能制御手段等を使用して、本開示の主題に関連して記載されるプロセスを実施または利用し得る。かかるプログラムは、高レベルの手続き型またはオブジェクト指向プログラミング言語で実施されて、コンピュータシステムと通信することができる。しかしながら、プログラム(複数可)は、所望の場合、アセンブリ言語または機械言語で実施され得る。いずれの場合でも、その言語は、コンパイラ型またはインタープリタ型言語であり得、ハードウェア実施態様と組み合わせられてもよい。
【0345】
本明細書が多くの具体的な実施態様の詳細を含むが、これらは、特許請求の範囲を限定するものと解釈されるべきではない。別個の実施態様との関連で本明細書に記載されるある特定の特徴は、単一の実施態様で組み合わせて実施されてもよい。逆に、単一の実施態様との関連で記載される様々な特徴は、複数の実施態様で別々に、または任意の好適な部分組み合わせで実施されてもよい。さらに、特徴がある特定の組み合わせで機能するものとして上述されて、さらにはそのようなものとして最初に特許請求され得るが、特許請求される組み合わせからの1つ以上の特徴は、ある場合には、組み合わせから削除されてもよく、特許請求される組み合わせは、部分組み合わせまたは部分組み合わせの変形を対象とし得る。
【0346】
同様に、動作が特定の順序で図面に示されているが、これは、望ましい結果を得るために、かかる動作が示される特定の順序もしくは順次的順序で行われること、または全ての図解される動作が行われ得ることを要求するものとして理解されるべきではない。ある特定の状況では、マルチタスク及び並列処理が有利であり得る。さらに、上述の実施態様における様々なシステム構成要素の分離が、かかる分離を全ての実施態様で要求するものとして理解されるべきではなく、記載されるプログラム構成要素及びシステムが、一般に、単一のソフトウェア製品に一緒に統合され得るか、または複数のソフトウェア製品にパッケージングされ得ることを理解されたい。
【0347】
様々な図に関して本明細書に記載される論理的動作が、(1)コンピューティングデバイス上で起動する一連のコンピュータ実施行為もしくはプログラムモジュール(すなわち、ソフトウェア)として、(2)コンピューティングデバイス内の相互接続機械論理回路もしくは回路モジュール(すなわち、ハードウェア)として、かつ/または(3)コンピューティングデバイスのソフトウェアとハードウェアとの組み合わせとして実施され得ることを理解されたい。したがって、本明細書で論じられる論理的動作は、ハードウェアとソフトウェアとのいずれの特定の組み合わせにも限定されない。この実施態様は、コンピューティングデバイスの性能及び他の要件に依存する選択の問題である。したがって、本明細書に記載の論理的動作は、動作、構造的デバイス、行為、またはモジュールと様々に称される。これらの動作、構造的デバイス、行為、及びモジュールは、ソフトウェア、ファームウェア、専用デジタル論理、及びそれらの任意の組み合わせで実施され得る。図に示され、かつ本明細書に記載されるよりも多くの動作または少ない動作が行われてもよいことも理解されたい。これらの動作は、本明細書に記載の順序とは異なる順序で行われてもよい。範囲または趣旨から逸脱することなく様々な修正及び変形が加えられてもよいことが当業者には明らかであろう。他の実施形態が本明細書及び本明細書に開示される本発明の実施を考慮して当業者に明らかになる。本明細書及び実施例が単に例示のものと見なされることが意図されており、真の範囲及び趣旨は、以下の特許請求の範囲によって示される。