(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-29
(45)【発行日】2024-04-08
(54)【発明の名称】在庫補充通知を提供するためのシステムおよび方法
(51)【国際特許分類】
G06Q 10/087 20230101AFI20240401BHJP
B65G 1/137 20060101ALI20240401BHJP
【FI】
G06Q10/087
B65G1/137 A
(21)【出願番号】P 2022016814
(22)【出願日】2022-02-07
(62)【分割の表示】P 2020537709の分割
【原出願日】2020-03-31
【審査請求日】2022-02-07
(32)【優先日】2019-04-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520244544
【氏名又は名称】クーパン コーポレイション
(74)【代理人】
【識別番号】230104019
【氏名又は名称】大野 聖二
(74)【代理人】
【識別番号】100167933
【氏名又は名称】松野 知紘
(74)【代理人】
【識別番号】100174137
【氏名又は名称】酒谷 誠一
(74)【代理人】
【識別番号】100184181
【氏名又は名称】野本 裕史
(72)【発明者】
【氏名】ミン,ジィエ
(72)【発明者】
【氏名】ワン,ジョンシン
【審査官】池田 聡史
(56)【参考文献】
【文献】特開2014-109788(JP,A)
【文献】特開2014-109789(JP,A)
【文献】特開2003-157380(JP,A)
【文献】米国特許第08166062(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
B65G 1/137
(57)【特許請求の範囲】
【請求項1】
在庫補充通知を提供するためのコンピュータ実装方法であって、
第1の製品に関連付けられた在庫補充通知のための第1の要求を第1のユーザインタフェースから受信するステップと、
前記第1の製品に第1のステータスを割り当てるようにデータベースを修正するステップと、
第2の製品に関連付けられた在庫補充通知のための第2の要求を前記第1のユーザインタフェースとは別の第2のユーザインタフェースから受信するステップと、
前記第2の製品に前記第1のステータスを割り当てるように前記データベースを変更するステップと、
前記第1の製品および前記第2の製品が購入可能であることを示すメッセージを受信するステップと、
前記第1の製品および前記第2の製品に第2のステータスを割り当てるように前記データベースを修正するステップと、
前記第1の要求が前記第2の要求に関連するかどうかを判定するステップであって、前記第1の要求が前記第2の要求に関連する場合に、前記第1の要求および前記第2の要求が、ユーザに関連付けられた同一の識別子に関連付けられている、ステップと、
通知スケジュールを決定するステップと、
前記第1の要求が前記第2の要求に関連する場合に、前記第1の要求および前記第2の要求に応答して、決定された通知スケジュールに基づいて1つの在庫補充通知を前記ユーザに送信するステップと、
を含む方法。
【請求項2】
前記第1のユーザインタフェースおよび前記第2のユーザインタフェースは、前記ユーザに関連付けられている、請求項1に記載の方法。
【請求項3】
前記第1のユーザインタフェースおよび前記第2のユーザインタフェースのうちの少なくとも一方は、モバイルアプリケーションプログラミングインタフェース、ウェブブラウザ、モバイルウェブブラウザ、またはカートウェブブラウザのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項4】
前記第1のステータスは、在庫切れの製品の在庫補充通知のための保留中の要求を示し、
前記第2のステータスは、前記在庫切れの製品が在庫ありであり、前記在庫補充通知が前記ユーザに送信される準備ができていることを示す、
請求項1に記載の方法。
【請求項5】
前記在庫補充通知は、モバイルアプリケーションのためのプッシュ通知または電子メール通知のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項6】
前記第1の製品および前記第2の製品のうちの少なくとも一方に第3のステータスを割り当てるように前記データベースを修正するステップであって、前記第3のステータスは、前記ユーザに前記在庫補充通知を送信できなかったことを示す、ステップと、
決定された通知スケジュールに基づいて前記在庫補充通知をユーザに再送信するためのフェイルオーバーロジックを適用するようにバッチフレームワークを構成するステップと、
をさらに含む、請求項1に記載の方法。
【請求項7】
在庫補充後の前記第1の製品および前記第2の製品のうちの少なくとも一方の数量を決定するステップと、
前記数量が予め定められた閾値を超えた場合に、前記在庫補充通知を前記ユーザに送信するステップと、
をさらに含む、請求項1に記載の方法。
【請求項8】
前記ユーザが前記第1のユーザインタフェースおよび前記第2のユーザインタフェースのうちの少なくとも一方と対話する時間に基づいて前記通知スケジュールを決定するようにバッチフレームワークを構成するステップをさらに含む、請求項2に記載の方法。
【請求項9】
前記通知スケジュールは、アラートタイプを含み、
前記在庫補充通知を送信するためのスケジュールされた時間に基づいて、前記アラートタイプを調整する
ステップをさらに含む、請求項1に記載の方法。
【請求項10】
在庫補充通知を提供するためのコンピュータ実装システムであって、
命令を記憶するメモリと、
請求項1~9のいずれかに記載の方法の動作を行うための前記命令を実行するように構成された少なくとも1つのプロセッサと、
を備えるシステム。
【発明の詳細な説明】
【技術分野】
【0001】
[001] 本開示は、概して、電子的な在庫補充通知を提供するためのコンピュータ化された
システムおよび方法に関する。具体的には、本開示の実施形態は、通知スケジュールに基
づいて在庫補充通知を送信し、重複通知の送信を回避するためにバッチフレームワークを
使用することに関連する、発明的かつ非従来型のシステムに関する。
【背景技術】
【0002】
[002] ウェブサイト上にリストされた在庫切れのアイテムが補充され、購入可能になった
ときにユーザに電子的に通知するための様々なタイプのコンピュータ実装システムおよび
方法が存在する。例えば、多くの小売販売ウェブサイトおよびアプリケーションは、在庫
切れのアイテムが利用可能になったときに、ユーザが電子メール、テキストメッセージ、
および/またはプッシュ通知によって通知されるようにサブスクライブすることができる
通知サービスを提供する。これらの通知は有用であるが、ユーザがアクティブである期間
中に通知を送信し、重複通知を送信することを回避する、在庫補充通知を提供するための
効率的な方法がまだ存在していない。
【0003】
[003] 今日、多くの小売業者は、モバイルアプリケーション、ウェブブラウザ、およびモ
バイルウェブブラウザを含むがこれらに限定されない、ユーザがアイテムを購入するため
の様々なプラットフォームを提供する。ユーザは、例えば、特定の小売業者に関連付けら
れたモバイルアプリケーション上のアイテムをブラウズし、在庫切れのアイテムが利用可
能になったときに電子メールによって通知されるようにサブスクライブすることができる
。また、ユーザは、特定の小売業者に関連付けられたウェブブラウザ上のアイテムをブラ
ウズし、在庫切れのアイテムが利用可能になったときに電子メールによって通知されるよ
うに再びサブスクライブすることができる。次いで、在庫切れのアイテムが利用可能にな
ると、ユーザは、モバイルアプリケーションおよびウェブブラウザ上で電子メール通知に
サブスクライブしたので、重複した在庫補充通知を受信する。
【0004】
[004] さらに、ユーザに在庫補充通知を提供するための多くのコンピュータ実装システム
および方法が存在するが、従来のシステムおよび方法は、典型的には、在庫切れのアイテ
ムが購入可能であることが決定されるとすぐに在庫補充通知を送信する。したがって、在
庫切れのアイテムが朝の3時に利用可能になった場合、従来のシステムおよび方法は、ユ
ーザが最も睡眠している可能性が高い朝の3時にユーザに在庫補充通知を送信する。した
がって、ユーザは在庫補充通知を見逃し、アイテムを放棄する可能性が高くなり、これに
より、小売業者がアイテムに対して行うことができる収益の額が減少する可能性がある。
【0005】
[005] したがって、在庫補充通知を提供するための改善されたシステムおよび方法が必要
とされている。特に、各ユーザに対してカスタマイズされた通知スケジュールに基づいて
在庫補充通知を提供するための改善されたシステムおよび方法が必要とされている。さら
に、たとえユーザが特定の製品の在庫補充通知に複数回サブスクライブしたとしても、重
複通知をユーザに送信することを回避する、在庫補充通知を提供するための改善されたシ
ステムおよび方法が必要とされている。
【発明の概要】
【0006】
[006] 本開示の一態様は、在庫補充通知を提供するためのコンピュータ実装システムを対
象とする。システムは、命令を記憶するメモリと、命令を実行するように構成された少な
くとも1つのプロセッサとを備え得る。少なくとも1つのプロセッサは、ユーザに関連付
けられたユーザインタフェースから、製品に関連付けられた在庫補充通知のための第1の
要求を受信し、製品に第1のステータスを割り当てるようにデータベースを修正し、製品
が購入可能であることを示すメッセージを受信し、製品に第2のステータスを割り当てる
ようにデータベースを修正するための命令を実行するように構成され得る。また、少なく
とも1つのプロセッサは、第2のステータスが割り当てられた製品を識別するためにデー
タベースを定期的に分析し、在庫補充通知をユーザに送信するための通知スケジュールを
決定するように、バッチフレームワークを構成し得る。少なくとも1つのプロセッサは、
決定された通知スケジュールに基づいて在庫補充通知をユーザに送信するように構成され
得る。
【0007】
[007] いくつかの実施形態において、ユーザインタフェースは、モバイルアプリケーショ
ンプログラミングインタフェース、ウェブブラウザ、モバイルウェブブラウザ、またはカ
ートウェブブラウザのうちの少なくとも1つを含み得る。いくつかの実施形態では、第1
のステータスは、在庫切れの製品の在庫補充通知のための保留中の要求を示すことができ
、第2のステータスは、製品が在庫ありであり、在庫補充通知がユーザに送信される準備
ができていることを示し得る。他の実施形態では、製品が購入可能であることを示すメッ
セージは、製品ID、アイテムID、ベンダアイテムID、またはベンダアイテムパッケ
ージIDのうちの少なくとも1つを含み得る。いくつかの実施形態では、在庫補充通知は
、モバイルアプリケーションのためのプッシュ通知または電子メール通知のうちの少なく
とも1つを含み得る。
【0008】
[008] いくつかの実施形態では、少なくとも1つのプロセッサは、製品に第3のステータ
スを割り当てるようにデータベースを修正するための命令を実行するように構成され得る
。第3のステータスは、在庫補充通知をユーザに送信できなかったことを示し得る。少な
くとも1つのプロセッサはさらに、決定された通知スケジュールに基づいて、ユーザに在
庫補充通知を再送信するフェイルオーバーロジックを適用するようにバッチフレームワー
クを構成し得る。いくつかの実施形態では、少なくとも1つのプロセッサは、在庫補充後
の製品の数量を決定し、製品の数量が予め定められた閾値を超えた場合に、在庫補充通知
をユーザに送信するように構成され得る。
【0009】
[009] いくつかの実施形態では、少なくとも1つのプロセッサは、ユーザがユーザインタ
フェースと対話する時間に基づいて通知スケジュールを決定するように、バッチフレーム
ワークを構成し得る。他の実施形態では、通知スケジュールは、アラートタイプを含み得
て、少なくとも1つのプロセッサは、在庫補充通知を送信するためのスケジュールされた
時間に基づいてアラートタイプを調整するように構成され得る。
【0010】
[0010] さらに別の実施形態では、少なくとも1つのプロセッサは、ユーザに関連付けら
れた第2のユーザインタフェースから、第2の製品に関連付けられた在庫補充通知のため
の第2の要求を受信するように構成され得る。少なくとも1つのプロセッサは、第2の製
品に第1のステータスを割り当てるようにデータベースを修正するように構成され得る。
少なくとも1つのプロセッサは、第2の製品が購入可能であることを示す第2のメッセー
ジを受信し、第2の製品に第2のステータスを割り当てるようにデータベースを修正する
ように構成され得る。少なくとも1つのプロセッサは、第1の要求が2番目の要求に関連
するかどうかを判定するように、バッチフレームワークを構成し得る。第1の要求が第2
の要求に関連する場合、製品と第2の製品は同一であり得る。少なくとも1つのプロセッ
サは、第1の要求が第2の要求に関連する場合、第1の要求および第2の要求に応答して
、決定された通知スケジュールに基づいて1つの在庫補充通知をユーザに送信するように
構成され得る。
【0011】
[0011] 本開示の別の態様は、在庫補充通知を提供するためのコンピュータ実装方法を対
象とする。この方法は、ユーザに関連付けられたユーザインタフェースから、製品に関連
付けられた在庫補充通知のための第1の要求を受信するステップと、製品に第1のステー
タスを割り当てるようにデータベースを修正するステップとを含み得る。本方法は、製品
が購入可能であることを示すメッセージを受信するステップと、製品に第2のステータス
を割り当てるようにデータベースを修正するステップとをさらに含み得る。本方法はさら
に、第2のステータスが割り当てられた製品を識別するためにデータベースを定期的に分
析し、在庫補充通知をユーザに送信するための通知スケジュールを決定するようにバッチ
フレームワークを構成するステップを含み得る。この方法は、決定された通知スケジュー
ルに基づいて、在庫補充通知をユーザに送信するステップをさらに含み得る。
【0012】
[0012] いくつかの実施形態において、ユーザインタフェースは、モバイルアプリケーシ
ョンプログラミングインタフェース、ウェブブラウザ、モバイルウェブブラウザ、または
カートウェブブラウザのうちの少なくとも1つを含み得る。いくつかの実施形態では、第
1のステータスは、在庫切れの製品の在庫補充通知のための保留中の要求を示し得て、第
2のステータスは、製品が在庫ありであり、在庫補充通知がユーザに送信される準備がで
きていることを示し得る。いくつかの実施形態では、在庫補充通知は、モバイルアプリケ
ーションのためのプッシュ通知または電子メール通知のうちの少なくとも1つを含み得る
。
【0013】
[0013] いくつかの実施形態では、本方法は、製品に第3のステータスを割り当てるよう
にデータベースを修正するステップを含み得る。第3のステータスは、在庫補充通知をユ
ーザに送信できなかったことを示し得る。この方法はさらに、決定された通知スケジュー
ルに基づいてユーザに在庫補充通知を再送信するフェイルオーバーロジックを適用するよ
うにバッチフレームワークを設定するステップを含み得る。いくつかの実施形態では、本
方法は、在庫補充後の製品の数量を決定するステップと、製品の数量が予め定められた閾
値を超えた場合に、在庫補充通知をユーザに送信するステップとを含み得る。
【0014】
[0014] いくつかの実施形態では、本方法は、ユーザがユーザインタフェースと対話する
時間に基づいて通知スケジュールを決定するようにバッチフレームワークを構成するステ
ップをさらに含み得る。他の実施形態では、通知スケジュールはアラートタイプを含み得
て、本方法は、在庫補充通知を送信するためのスケジュールされた時間に基づいてアラー
トタイプを調整するステップをさらに含み得る。
【0015】
[0015] さらに別の実施形態では、この方法は、ユーザに関連付けられた第2のユーザイ
ンタフェースから、第2の製品に関連付けられた在庫補充通知のための第2の要求を受信
するステップと、第2の製品に第1のステータスを割り当てるようにデータベースを修正
するステップとを含み得る。本方法は、第2の製品が購入可能であることを示す第2のメ
ッセージを受信するステップと、第2の製品に第2のステータスを割り当てるようにデー
タベースを修正するステップとをさらに含み得る。本方法は、第1の要求が第2の要求に
関連するかどうかを判定するようにバッチフレームワークを構成するステップをさらに含
み得る。第1の要求が第2の要求に関連する場合、製品と第2の製品は同一であり得る。
本方法は、第1の要求が第2の要求に関連する場合に、第1の要求および第2の要求に応
答して、決定された通知スケジュールに基づいて1つの在庫補充通知をユーザに送信する
ステップをさらに含み得る。
【0016】
[0016] 本開示のさらに別の態様は、在庫補充通知を提供するためのコンピュータ実装シ
ステムを対象とする。システムは、命令を記憶するメモリと、命令を実行するように構成
された少なくとも1つのプロセッサとを備え得る。少なくとも1つのプロセッサは、ユー
ザに関連付けられた第1のユーザインタフェースから、第1の製品に関連付けられた在庫
補充通知のための第1の要求を受信し、ユーザに関連付けられた第2のユーザインタフェ
ースから、第2の製品に関連付けられた在庫補充通知のための第2の要求を受信するため
の命令を実行するように構成され得る。少なくとも1つのプロセッサは、第1の製品およ
び第2の製品に第1のステータスを割り当てるようにデータベースを修正するように構成
され得る。第1のステータスは、在庫切れの製品の在庫補充通知のための保留中の要求を
示し得る。少なくとも1つのプロセッサは、第1の製品が購入可能であることを示す第1
のメッセージと、第2の製品が購入可能であることを示す第2のメッセージとを受信する
ように構成され得る。少なくとも1つのプロセッサは、第1の製品および第2の製品に第
2のステータスを割り当てるようにデータベースを修正するように構成され得る。第2の
ステータスは、製品が在庫ありであり、在庫補充通知がユーザに送信される準備ができて
いることを示し得る。
【0017】
[0017] また、少なくとも1つのプロセッサは、第2のステータスが割り当てられた製品
を識別するためにデータベースを定期的に分析し、在庫補充通知をユーザに送信するため
の通知スケジュールを決定するようにバッチフレームワークを構成し得る。少なくとも1
つのプロセッサはさらに、第1の要求が第2の要求に関連するかどうかを決定するように
バッチフレームワークを構成し得る。第1の要求が第2の要求に関連する場合、第1の製
品と第2の製品は同一であってもよい。
【0018】
[0018] 少なくとも1つのプロセッサは、在庫補充後の第1の製品および第2の製品の数
量を決定するように構成され得る。少なくとも1つのプロセッサは、第1の要求が第2の
要求に関連し、かつ、第1の製品および第2の製品の数量が予め定められた閾値を超える
場合に、決定された通知スケジュールに基づいて、第1の製品および第2の製品に関する
1つの在庫補充通知をユーザに送信するように構成され得る。少なくとも1つのプロセッ
サは、第1の要求が第2の要求に関連しておらず、かつ、第1の製品および第2の製品の
数量が予め定められた閾値を超える場合に、決定された通知スケジュールに基づいて、第
1の製品のための第1の在庫補充通知および第2の製品のための第2の通知を送信するよ
うに構成され得る。
【0019】
[0019] 他のシステム、方法、およびコンピュータ読取可能媒体も、本明細書で説明され
る。
【図面の簡単な説明】
【0020】
【
図1A】[0020]
図1Aは、開示された実施形態と整合する、出荷、輸送、および物流オペレーションを可能にする通信のためのコンピュータ化されたシステムを備えるネットワークの例示的な実施形態を示す概略ブロック図である。
【
図1B】[0021]
図1Bは、開示された実施形態と整合する、対話型ユーザインタフェース要素とともに検索要求を満たす1つまたは複数の検索結果を含む例示的な検索結果ページ(SRP)を示す。
【
図1C】[0022]
図1Cは、開示された実施形態と整合する、対話型ユーザインタフェース要素とともに製品および製品に関する情報を含む例示的な単一ディスプレイページ(SDP)を示す。
【
図1D】[0023]
図1Dは、開示された実施形態と整合する、対話型ユーザインタフェース要素とともに仮想ショッピングカート内のアイテムを含む例示的なカートページを示す。
【
図1E】[0024]
図1Eは、開示された実施形態に整合する、対話型ユーザインタフェース要素とともに、購入および出荷に関する情報とともに仮想ショッピングカートからのアイテムを含む例示的な注文ページを示す。
【
図2】[0025]
図2は、開示された実施形態と整合する、開示されたコンピュータ化されたシステムを利用するように構成された例示的なフルフィルメントセンタの概略図である。
【
図3】[0026]
図3は、在庫補充通知を提供するための在庫補充通知システムを備えるシステムの例示的な実施形態を示す概略ブロック図である。
【
図4】[0027]
図4は、在庫補充通知を提供するための例示的な補充通知システムの概略ブロック図である。
【
図5】[0028]
図5は、在庫補充通知を提供するための例示的な補充通知システムの別の概略ブロック図である。
【
図6】[0029]
図6は、在庫補充通知を提供するための方法の例示的な実施形態を示すフローチャートである。
【
図7】[0030]
図7は、在庫補充通知を提供するための方法の別の例示的な実施形態を示すフローチャートである。
【発明を実施するための形態】
【0021】
[0031] 以下の詳細な説明は、添付の図面を参照する。可能な限り、図面および以下の説
明では、同一または類似の部分を参照するために、同一の参照番号が使用される。いくつ
かの例示的な実施形態が本明細書で説明されるが、修正、適応、および他の実装が可能で
ある。例えば、置換、追加、または修正が図面に示された構成要素およびステップに行わ
れてもよく、本明細書に記載された例示的な方法は、開示された方法にステップを置換、
並べ替え、除去、または追加することによって修正されてもよい。したがって、以下の詳
細な説明は、開示された実施形態および実施例に限定されない。むしろ、本発明の適切な
範囲は、添付の特許請求の範囲によって定義される。
【0022】
[0032] 本開示の実施形態は、バッチフレームワークを使用して電子的な在庫補充通知を
提供するように構成されたシステムおよび方法を対象とする。
【0023】
[0033]
図1Aを参照すると、出荷、輸送、および物流動作を可能にする通信のためのコ
ンピュータ化されたシステムを含むシステムの例示的な実施形態を示す概略ブロック
図1
00が示されている。
図1Aに示すように、システム100は、様々なシステムを含むこ
とができ、その各々は、1つまたは複数のネットワークを介して互いに接続することがで
きる。また、システムは、例えばケーブルを使用して、直接接続を介して互いに接続され
てもよい。図示のシステムは、出荷認可技術(SAT)システム101、外部フロントエ
ンドシステム103、内部フロントエンドシステム105、輸送システム107、モバイ
ルデバイス107A、107B、および107C、販売者ポータル109、出荷および注
文追跡(SOT)システム111、フルフィルメント最適化(FO)システム113、フ
ルフィルメントメッセージングゲートウェイ(FMG)115、サプライチェーン管理(
SCM)システム117、倉庫管理システム119、モバイルデバイス119A、119
B、および119C(フルフィルメントセンタ(FC)200の内部にあるものとして図
示)、第三者フルフィルメントシステム121A、121B、および121C、フルフィ
ルメントセンタ認証システム(FC Auth)123、ならびに労務管理システム(L
MS)125を含む。
【0024】
[0034] いくつかの実施形態では、SATシステム101は、注文ステータスおよび配達
ステータスを監視するコンピュータシステムとして実装されてもよい。例えば、SATシ
ステム101は、注文がその約束配達日(PDD)を過ぎているかどうかを判定すること
ができ、新しい注文を開始すること、未配達注文のアイテムを再出荷すること、未配達注
文をキャンセルすること、注文顧客とのコンタクトを開始することなどを含む適切なアク
ションをとることができる。また、SATシステム101は、出力(特定の期間中に出荷
されたパッケージの数など)および入力(出荷に使用するために受け取った空のボール紙
箱の数など)を含む他のデータを監視することもできる。また、SATシステム101は
、システム100内の異なるデバイス間のゲートウェイとして機能し、外部フロントエン
ドシステム103およびFOシステム113などのデバイス間の通信(例えば、ストアア
ンドフォワードまたは他の技術を使用する)を可能にしてもよい。
【0025】
[0035] 外部フロントエンドシステム103は、いくつかの実施形態では、外部ユーザが
システム100内の1つまたは複数のシステムと対話することを可能にするコンピュータ
システムとして実装することができる。例えば、システム100がシステムのプレゼンテ
ーションを可能にして、ユーザがアイテムの注文を行うことを可能にする実施形態では、
外部フロントエンドシステム103は、検索要求を受信し、アイテムページを提示し、支
払い情報を要請するウェブサーバとして実装されてもよい。例えば、外部フロントエンド
システム103は、Apache HTTPサーバ、Microsoftインターネット
・インフォメーション・サービス、NGINXなどのソフトウェアを実行するコンピュー
タまたはコンピュータとして実現することができる。他の実施形態では、外部フロントエ
ンドシステム103は、外部デバイス(例えば、モバイルデバイス102Aまたはコンピ
ュータ102B)からの要求を受信および処理し、それらの要求に基づいてデータベース
および他のデータストアから情報を取得し、取得された情報に基づいて受信された要求へ
の応答を提供するように設計されたカスタムウェブサーバソフトウェアを実行することが
できる。
【0026】
[0036] いくつかの実施形態では、外部フロントエンドシステム103は、ウェブキャッ
シングシステム、データベース、検索システム、または支払いシステムのうちの1つまた
は複数を含むことができる。一態様では、外部フロントエンドシステム103は、これら
のシステムのうちの1つまたは複数を備えることができ、別の態様では、外部フロントエ
ンドシステム103がこれらのシステムのうちの1つまたは複数に接続されたインタフェ
ース(たとえば、サーバ間、データベース間、または他のネットワーク接続)を備えるこ
とができる。
【0027】
[0037]
図1B、
図1C、
図1D、および
図1Eによって示される例示的な一組のステッ
プは、外部フロントエンドシステム103のいくつかの動作を説明するのに役立つ。外部
フロントエンドシステム103は、提示および/または表示のために、システム100内
のシステムまたはデバイスから情報を受信することができる。例えば、外部フロントエン
ドシステム103は、検索結果ページ(SRP)(例えば、
図1B)、単一詳細ページ(
SDP)(例えば、
図1C)、カートページ(例えば、
図1D)、または注文ページ(例
えば、
図1E)を含む1つ以上のウェブページをホストまたは提供することができる。ユ
ーザデバイス(例えば、モバイルデバイス102Aまたはコンピュータ102Bを使用す
る)は、外部フロントエンドシステム103にナビゲートし、検索ボックスに情報を入力
することによって検索を要求することができる。外部フロントエンドシステム103は、
システム100内の1つまたは複数のシステムから情報を要求することができる。例えば
、外部フロントエンドシステム103は、検索要求を満たす情報をFOシステム113に
要求することができる。また、外部フロントエンドシステム103は、検索結果に含まれ
る各製品について、約束配達日または「PDD」を要求し、(FOシステム113から)
受信することができる。PDDは、いくつかの実施形態では、製品を含むパッケージがい
つユーザの所望の場所に到着するか、または製品が特定の期間内に、例えば、一日の終わ
り(午後11:59)までに注文された場合、ユーザの所望の場所に配達されることを約
束される日付の推定値を表すことができる(PDDは、FOシステム113に関して以下
でさらに説明される)。
【0028】
[0038] 外部フロントエンドシステム103は、情報に基づいてSRP(例えば、
図1B
)を準備することができる。SRPは、検索要求を満たす情報を含むことができる。例え
ば、これは、検索要求を満たす製品の写真を含むことができる。また、SRPは、各製品
のそれぞれの価格、または各製品の強化された配送オプション、PDD、重量、サイズ、
オファー、割引などに関する情報を含むことができる。外部フロントエンドシステム10
3は、(例えば、ネットワークを介して)要求側ユーザデバイスにSRPを送信すること
ができる。
【0029】
[0039] 次いで、ユーザデバイスは、例えば、ユーザインタフェースをクリックまたはタ
ップすることによって、または別の入力デバイスを使用して、SRP上で表される製品を
選択することによって、SRPから製品を選択することができる。ユーザデバイスは、選
択された製品に関する情報の要求を定式化し、それを外部フロントエンドシステム103
に送ることができる。これに応答して、外部フロントエンドシステム103は、選択され
た製品に関する情報を要求することができる。例えば、情報は、それぞれのSRP上の製
品について提示される情報を超える追加の情報を含むことができる。これは、例えば、貯
蔵寿命、原産国、重量、サイズ、パッケージ内の品目の数、取扱説明書、または製品に関
する他の情報を含むことができる。また、情報は(例えば、この製品および少なくとも1
つの他の製品を購入した顧客のビッグデータおよび/または機械学習分析に基づく)類似
の製品に対する推奨、頻繁に質問される質問に対する回答、顧客からのレビュー、製造業
者情報、写真などを含むことができる。
【0030】
[0040] 外部フロントエンドシステム103は、受信した製品情報に基づいてSDP(単一
詳細ページ)(例えば、
図1C)を準備することができる。SDPは、「今すぐ買う」ボ
タン、「カードに追加する」ボタン、数量フィールド、アイテムの写真などの他の対話型
要素も含むことができる。SDPは、製品を提供する売り手のリストをさらに含むことが
できる。リストは各売り手が提供する価格に基づいて注文されてもよく、その結果、最低
価格で製品を販売することを提案する売り手は最上位にリストされてもよい。リストは、
最高ランクの売り手が最上位にリストされるように、売り手ランキングに基づいて注文さ
れてもよい。売り手ランキングは、例えば、約束されたPDDを満たす売り手の過去の実
績を含む、複数の要因に基づいて定式化されてもよい。外部フロントエンドシステム10
3は、(例えば、ネットワークを介して)要求側ユーザデバイスにSDPを配信すること
ができる。
【0031】
[0041] 要求ユーザデバイスは、製品情報をリストするSDPを受信してもよい。その後
、SDPを受信すると、ユーザデバイスは、SDPと対話することができる。例えば、要
求ユーザデバイスのユーザは、SDP上の「カートに入れる」ボタンをクリックするか、
または他の方法で対話することができる。これは、ユーザに関連付けられたショッピング
カートに製品を追加する。ユーザデバイスは、ショッピングカートに製品を追加するため
のこの要求を外部フロントエンドシステム103に送信することができる。
【0032】
[0042] 外部フロントエンドシステム103は、カートページ(例えば、
図1D)を生成
することができる。カートページは、いくつかの実施形態では、ユーザが仮想「ショッピ
ングカート」に追加した製品をリストし、ユーザデバイスは、SRP、SDP、または他
のページ上のアイコンをクリックするか、または他の方法で対話することによって、カー
トページを要求してもよい。いくつかの実施形態では、カートページがユーザがショッピ
ングカートに追加したすべての製品、ならびに各製品の数量、各製品毎の価格、関連する
数量に基づく各製品の価格、PDDに関する情報、配送方法、配送コスト、ショッピング
カート内の製品を修正するためのユーザインタフェース要素(例えば、数量の削除または
修正)、他の製品を注文するためのオプション、または製品の定期的な配送を設定するた
めのオプション、利息支払いを設定するためのオプション、購入に進むためのユーザイン
タフェース要素などのカート内の製品に関する情報をリストすることができる。ユーザデ
バイスのユーザはショッピングカート内の製品の購入を開始するために、ユーザインタフ
ェース要素(例えば、「今すぐ買う」と読むボタン)をクリックするか、さもなければユ
ーザインタフェース要素と対話することができる。そうすると、ユーザデバイスは、購入
を開始するためにこの要求を外部フロントエンドシステム103に送信することができる
。
【0033】
[0043] 外部フロントエンドシステム103は、購入を開始する要求の受信に応答して、
注文ページ(例えば、
図1E)を生成することができる。注文ページは、いくつかの実施
形態では、ショッピングカートからアイテムを再リストし、支払いおよび出荷情報の入力
を要求する。例えば、注文ページは、ショッピングカート内のアイテムの購入者に関する
情報(例えば、名前、住所、電子メールアドレス、電話番号)、受取人に関する情報(例
えば、名前、住所、電話番号、配達情報)、出荷情報(例えば、配達および/または集荷
の速度/方法)、支払い情報(例えば、クレジットカード、銀行振込、小切手、格納クレ
ジット)、(例えば、税務目的のための)現金領収書を要求するためのユーザインタフェ
ース要素などを要求するセクションを含むことができる。外部フロントエンドシステム1
03は、注文ページをユーザデバイスに送信することができる。
【0034】
[0044] ユーザデバイスは、注文ページに情報を入力し、その情報を外部フロントエンド
システム103に送信するユーザインタフェース要素をクリックするか、または他の方法
で対話することができる。そこから、外部フロントエンドシステム103は、システム1
00内の異なるシステムに情報を送信して、ショッピングカート内の製品を用いた新しい
注文の作成および処理を可能にすることができる。
【0035】
[0045] いくつかの実施形態では、外部フロントエンドシステム103は、売り手が注文
に関する情報を送受信することを可能にするようにさらに構成されてもよい。
【0036】
[0046] 内部フロントエンドシステム105は、いくつかの実施形態では、内部ユーザ(
例えば、システム100を所有し、操作し、またはリースする組織の従業員)がシステム
100内の1つまたは複数のシステムと対話することを可能にするコンピュータシステム
として実装され得る。例えば、ネットワーク101がシステムのプレゼンテーションを可
能にして、ユーザがアイテムの注文を行うことを可能にする実施形態では、内部フロント
エンドシステム105は、内部ユーザが注文に関する診断および統計情報を見ること、ア
イテム情報を修正すること、または注文に関する統計をレビューすることを可能にするウ
ェブサーバとして実装されてもよい。例えば、内部フロントエンドシステム105は、A
pache HTTPサーバ、Microsoftインターネット・インフォメーション
・サービス、NGINXなどのソフトウェアを実行するコンピュータまたはコンピュータ
として実現することができる。他の実施形態では、内部フロントエンドシステム105は
、システム100に示されているシステムまたは装置(および図示されていない他の装置
)からの要求を受信および処理し、それらの要求に基づいてデータベースおよび他のデー
タストアから情報を取得し、取得された情報に基づいて受信された要求に応答を提供する
ように設計されたカスタムウェブサーバソフトウェアを実行してもよい。
【0037】
[0047] いくつかの実施形態では、内部フロントエンドシステム105は、ウェブキャッ
シングシステム、データベース、検索システム、支払いシステム、分析システム、注文監
視システムなどのうちの1つまたは複数を含むことができる。一態様では、内部フロント
エンドシステム105は、これらのシステムのうちの1つまたは複数を備えることができ
、別の態様では、内部フロントエンドシステム105は、これらのシステムのうちの1つ
または複数に接続されたインタフェース(たとえば、サーバ間、データベース間、または
他のネットワーク接続)を備えることができる。
【0038】
[0048] 輸送システム107は、いくつかの実施形態では、システム100内のシステム
またはデバイスとモバイルデバイス107A~107Cとの間の通信を可能にするコンピ
ュータシステムとして実装され得る。輸送システム107は、いくつかの実施形態では、
1つまたは複数のモバイルデバイス107A~107C(例えば、携帯電話、スマートフ
ォン、PDAなど)から情報を受信することができる。例えば、いくつかの実施形態では
、モバイルデバイス107A~107Cは、配達員によって操作されるデバイスを備えて
もよい。配達作業員は、正社員、一時社員、またはシフト社員であってもよく、モバイル
デバイス107A~107Cを利用して、ユーザによって注文された製品を含むパッケー
ジの配達を行うことができる。例えば、荷物を配達するために、配達作業者は、どの荷物
を配達すべきか、およびどこに配達すべきかを示す通知をモバイルデバイス上で受信する
ことができる。配達作業者は、配達場所に到着すると、パッケージを(例えば、トラック
の後ろに、またはパッケージのクレートに)配置し、モバイルデバイスを使用してパッケ
ージ上の識別子(例えば、バーコード、画像、テキストストリング、RFIDタグなど)
に関連するデータをスキャンまたは他の方法で取り込み、パッケージを(例えば、前面ド
アに置いたままにし、セキュリティガードを付けたままにし、受取人に渡すなどによって
)配達することができる。いくつかの実施形態では、配達作業者は、パッケージの写真(
複数可)をキャプチャすることができ、および/またはモバイルデバイスを使用して署名
を取得することができる。モバイルデバイスは、例えば、時間、日付、GPS位置、写真
、配達作業者に関連付けられた識別子、モバイルデバイスに関連付けられた識別子などを
含む、配達に関する情報を含む情報を輸送システム107に送信することができる。輸送
システム107は、システム100内の他のシステムによるアクセスのために、この情報
をデータベース(図示せず)に記憶することができる。輸送システム107は、いくつか
の実施形態では、この情報を使用して、特定の荷物の位置を示す追跡データを準備し、他
のシステムに送信することができる。
【0039】
[0049] いくつかの実施形態では、あるユーザが、1つの種類のモバイルデバイスを使用
することができる(例えば、永久労働者はバーコードスキャナ、スタイラス、および他の
デバイスなどのカスタムハードウェアを有する専用のPDAを使用することができる)が
、他のユーザは、他の種類のモバイルデバイスを使用することができる(例えば、一時的
またはシフト労働者は既製のモバイル電話および/またはスマートフォンを利用すること
ができる)。
【0040】
[0050] いくつかの実施形態では、輸送システム107は、ユーザを各デバイスに関連付
けることができる。例えば、輸送システム107は、ユーザ(例えば、ユーザ識別子、従
業員識別子、または電話番号によって表される)とモバイルデバイス(例えば、国際モバ
イルデバイス識別子(IMEI)、国際モバイル加入識別子(IMSI)、電話番号、汎
用ユニーク識別子(UUID)、またはグローバルユニーク識別子(GUID)によって
表される)との間のアソシエーションを記憶することができる。輸送システム107はと
りわけ、作業者の位置、作業者の効率、または作業者の速度を決定するために、この関連
付けを、配達時に受信されたデータと共に使用して、データベースに格納されたデータを
分析することができる。
【0041】
[0051] 売り手ポータル109は、いくつかの実施形態では、売り手または他の外部エン
ティティがシステム100内の1つまたは複数のシステムと電子的に通信することを可能
にするコンピュータシステムとして実装され得る。例えば、売り手は、コンピュータシス
テム(図示せず)を利用して、売り手が売り手ポータル109を使用してシステム100
を通して売りたい製品について、製品情報、注文情報、連絡先情報などをアップロードま
たは提供することができる。
【0042】
[0052] いくつかの実施形態では、出荷および注文追跡システム111は、(例えば、デ
バイス102A~102Bを使用するユーザによって)顧客によって注文された製品を含
むパッケージの位置に関する情報を受信し、格納し、転送するコンピュータシステムとし
て実装され得る。いくつかの実施形態では、出荷および注文追跡システム111は、顧客
によって注文された製品を含むパッケージを配送する出荷会社によって運営されるウェブ
サーバ(図示せず)からの情報を要求または格納することができる。
【0043】
[0053] いくつかの実施形態では、出荷および注文追跡システム111は、システム10
0に示されるシステムからの情報を要求し、記憶することができる。例えば、出荷及び注
文追跡システム111は、輸送システム107から情報を要求することができる。上述の
ように、輸送システム107は、ユーザ(例えば、配達作業員)または車両(例えば、配
達トラック)のうちの1つ以上に関連付けられた1つ以上のモバイルデバイス107A~
107C(例えば、携帯電話、スマートフォン、PDAなど)から情報を受信してもよい
。いくつかの実施形態では、出荷および注文追跡システム111はまた、フルフィルメン
トセンタ(例えば、フルフィルメントセンタ200)内の個々の製品の位置を決定するた
めに、倉庫管理システム(WMS)119からの情報を要求してもよい。出荷および注文
追跡システム111は、輸送システム107またはWMS119のうちの1つまたは複数
からデータを要求し、それを処理し、要求に応じてそれをデバイス(たとえば、ユーザデ
バイス102Aおよび102B)に提示することができる。
【0044】
[0054] いくつかの実施形態では、フルフィルメント最適化(FO)システム113は、
他のシステム(例えば、外部フロントエンドシステム103および/または出荷および注
文追跡システム111)からの顧客注文に関する情報を記憶するコンピュータシステムと
して実装されてもよい。また、FOシステム113は、特定のアイテムがどこに保持また
は格納されるかを記述する情報を格納してもよい。たとえば、特定のアイテムは1つのフ
ルフィルメントセンタにのみ保存され、他の特定のアイテムは複数のフルフィルメントセ
ンタに保存される場合がある。さらに他の実施形態では、特定のフルフィルメントセンタ
が特定のセットのアイテム(例えば、生鮮食品または冷凍製品)のみを格納するように設
計されてもよい。FOシステム113は、この情報ならびに関連する情報(例えば、数量
、サイズ、受領日、有効期限など)を格納する。
【0045】
[0055] また、FOシステム113は、各製品について対応するPDD(約束配達日)を計
算することができる。PDDは、いくつかの実施形態では、1つまたは複数の要因に基づ
くことができる。例えば、FOシステム113は、製品の過去の需要(例えば、その製品
がある期間中に何回注文されたか)、製品の予想需要(例えば、来るべき期間中にその製
品を注文するために何人の顧客が予想されるか)、ある期間中にいくつの製品が注文され
たかを示すネットワーク全体の過去の需要、来るべき期間中にいくつの製品が注文される
ことが予想されるかを示すネットワーク全体の予想需要、各フルフィルメントセンタ20
0に格納された製品の1つまたは複数のカウント、その製品の予想または現在の注文など
に基づいて、製品のPDDを計算することができる。
【0046】
[0056] いくつかの実施形態では、FOシステム113は、定期的に(例えば、1時間ご
とに)各製品のPDDを決定し、それをデータベースに格納して、検索または他のシステ
ム(例えば、外部フロントエンドシステム103、SATシステム101、出荷および注
文追跡システム111)に送信することができる。他の実施形態では、FOシステム11
3は、1つまたは複数のシステム(例えば、外部フロントエンドシステム103、SAT
システム101、出荷および注文追跡システム111)から電子要求を受信し、オンデマ
ンドでPDDを計算することができる。
【0047】
[0057] フルフィルメントメッセージングゲートウェイ115は、いくつかの実施形態で
は、FOシステム113などのシステム100内の1つ以上のシステムから1つのフォー
マットまたはプロトコルで要求または応答を受信し、それを別のフォーマットまたはプロ
トコルに変換し、変換されたフォーマットまたはプロトコルで、WMS119またはサー
ドパーティのフルフィルメントシステム121A、121B、または121Cなどの他の
システムに転送するコンピュータシステムとして実装されてもよく、その逆も同様である
。
【0048】
[0058] サプライチェーン管理(SCM)システム117は、いくつかの実施形態では、
予測機能を実行するコンピュータシステムとして実装することができる。例えば、SCM
システム117は、例えば、製品に対する過去の需要、製品に対する予想される需要、ネ
ットワーク全体の過去の需要、ネットワーク全体の予想される需要、各フルフィルメント
センタ200に格納されたカウント製品、各製品に対する予想または現在の注文などに基
づいて、特定の製品に対する需要のレベルを予測することができる。この予測されたレベ
ルおよびすべてのフルフィルメントセンタにわたる各製品の量に応答して、SCMシステ
ム117は、特定の製品に対する予測された需要を満たすのに十分な量を購入し、在庫す
るための1つまたは複数の購入注文を生成することができる。
【0049】
[0059] 倉庫管理システム(WMS)119は、ある実施形態では、ワークフローを監視
するコンピュータシステムとして実現されてもよい。例えば、WMS119は、個別のイ
ベントを示すイベントデータを個々のデバイス(例えば、デバイス107A~107Cま
たは119A~119C)から受信することができる。例えば、WMS119は、パッケ
ージをスキャンするためにこれらのデバイスの1つの使用を示すイベントデータを受信し
てもよい。フルフィルメントセンタ200および
図2に関して以下で説明するように、フ
ルフィルメントプロセス中に、パッケージ識別子(例えば、バーコードまたはRFIDタ
グデータ)を、特定の段階で機械によってスキャンまたは読み取ることができる(例えば
、自動またはハンドヘルドバーコードスキャナ、RFIDリーダ、高速カメラ、タブレッ
ト119A、モバイルデバイス/PDA119B、コンピュータ119Cなどのデバイス
)。WMS119は、パッケージ識別子、時間、日付、位置、ユーザ識別子、またはその
他の情報と共に、パッケージ識別子のスキャンまたは読取りを示す各イベントを対応する
データベース(図示せず)に格納し、この情報を他のシステム(例えば、出荷および注文
追跡システム111)に提供することができる。
【0050】
[0060] WMS119は、いくつかの実施形態では、1つまたは複数のデバイス(たとえ
ば、デバイス107A~107Cまたは119A~119C)をシステム100に関連す
る1つまたは複数のユーザに関連付ける情報を記憶することができる。例えば、いくつか
の状況では、ユーザ(パートまたはフルタイムの従業員など)は、ユーザがモバイルデバ
イスを所有する当該モバイルデバイス(例えば、モバイルデバイスはスマートフォンであ
る)に関連付けられ得る。他の状況では、ユーザは、ユーザがモバイルデバイスを一時的
に保管しているという点で、当該モバイルデバイスに関連付けられてもよい(例えば、ユ
ーザはその日の開始時にモバイルデバイスをチェックアウトし、その日中にそのモバイル
デバイスを使用し、その日の終わりにそのモバイルデバイスを返す)。
【0051】
[0061] WMS119は、いくつかの実施形態では、システム100に関連する各ユーザ
の作業ログを維持することができる。例えば、WMS119は、任意の割り当てられたプ
ロセス(例えば、トラックのアンロード、ピックゾーンからのアイテムのピッキング、レ
ビンウォールワーク、パッキングアイテム)、ユーザ識別子、位置(例えば、フルフィル
メントセンタ200内のフロアまたはゾーン)、従業員によってシステムを通って移動さ
れたユニットの数(例えば、ピッキングされたアイテムの数、パッキングされたアイテム
の数)、デバイスに関連する識別子(例えば、デバイス119A~119C)などを含む
、各従業員に関連する情報を記憶することができる。いくつかの実施形態では、WMS1
19は、デバイス119A~119C上で動作するタイムキーピングシステムなどのタイ
ムキーピングシステムからチェックインおよびチェックアウト情報を受信することができ
る。
【0052】
[0062] いくつかの実施形態では、第三者フルフィルメント(3PL)システム121A
~121Cは、物流および製品の第三者プロバイダに関連するコンピュータシステムを表
す。例えば、(
図2に関して以下に説明するように)いくつかの製品がフルフィルメント
センタ200に保管されている間、他の製品はオフサイトで保管されてもよく、オンデマ
ンドで生産されてもよく、またはそうでなければフルフィルメントセンタ200に保管す
るために利用できなくてもよい。3PLシステム121A~121Cは、FOシステム1
13から(例えば、FMG115を介して)注文を受信するように構成されてもよく、製
品および/またはサービス(例えば、配送または設置)を顧客に直接提供してもよい。い
くつかの実施形態では、3PLシステム121A~121Cのうちの1つまたは複数がシ
ステム100の一部とすることができ、他の実施形態では、3PLシステム121A~1
21Cのうちの1つまたは複数がシステム100の外部(例えば、第三者プロバイダによ
って所有または運営される)とすることができる。
【0053】
[0063] いくつかの実施形態では、フルフィルメントセンタ認証システム(FC Aut
h)123は、様々な機能を有するコンピュータシステムとして実装されてもよい。例え
ば、いくつかの実施形態では、FC Auth123は、システム100内の1つまたは
複数の他のシステムのためのシングルサインオン(SSO)サービスとして働くことがで
きる。例えば、FC Auth123は、ユーザが内部フロントエンドシステム105を
介してログインすることを可能にし、ユーザが出荷および注文追跡システム111でリソ
ースにアクセスする同様の特権を有することを決定し、ユーザが2回目のログインプロセ
スを必要とせずにそれらの特権にアクセスすることを可能にする。FC Auth123
は、他の実施形態では、ユーザ(例えば、従業員)が特定のタスクに自分自身を関連付け
ることを可能にすることができる。例えば、従業員の中には、電子デバイス(デバイス1
19A~119Cなど)を持たないことがあり、代わりに、1日のコース中に、フルフィ
ルメントセンタ200内でタスクからタスクへ、およびゾーンからゾーンへ移動すること
がある。FC Auth123は、それらの従業員が、彼らがどのタスクを実行している
か、および彼らが異なる時間にどのゾーンにいるかを示すことを可能にするように構成さ
れ得る。
【0054】
[0064] 労務管理システム(LMS)125は、いくつかの実施形態では、従業員(フル
タイムおよびパートタイムの従業員を含む)のための出勤および残業情報を記憶するコン
ピュータシステムとして実装されてもよい。例えば、LMS125は、FC Auth1
23、WMA119、デバイス119A~119C、輸送システム107、および/また
はデバイス107A~107Cから情報を受信することができる。
【0055】
[0065]
図1Aに示される特定の構成は単なる例である。例えば、
図1AはFOシステム
113に接続されたFC Authシステム123を示すが、全ての実施形態がこの特定
の構成を必要とするわけではない。実際、いくつかの実施形態では、システム100内の
システムがインターネット、イントラネット、WAN(ワイドエリアネットワーク)、M
AN(メトロポリタンエリアネットワーク)、IEEE802.11a/b/g/n規格
に準拠する無線ネットワーク、専用線などを含む1つまたは複数の公衆またはプライベー
トネットワークを介して互いに接続され得る。いくつかの実施形態では、システム100
内のシステムの1つ以上がデータセンタ、サーバファームなどに実装された1つ以上の仮
想サーバとして実装されてもよい。
【0056】
[0066]
図2は、フルフィルメントセンタ200を示す。フルフィルメントセンタ200
は、注文時に顧客に出荷するためのアイテムを格納する物理的位置の一例である。フルフ
ィルメントセンタ(FC)200は、複数のゾーンに分割することができ、各ゾーンは図
2に示されている。いくつかの実施形態では、これらの「ゾーン」がいくつかの実施形態
ではアイテムを受け取り、アイテムを格納し、アイテムを取り出し、アイテムを出荷する
プロセスの異なる段階間の仮想分割と考えることができ、したがって、「ゾーン」は
図2
に示されているが、ゾーンの他の分割も可能であり、
図2のゾーンはいくつかの実施形態
では省略、複製、または修正することができる。
【0057】
[0067] インバウンドゾーン203は、
図1Aのシステム100を使用して製品を販売し
たい売り手からアイテムが受け取られるFC200の領域を表す。例えば、売り手は、ト
ラック201を使用してアイテム202A及び202Bを配送することができる。アイテ
ム202Aは、それ自体の出荷パレットを占有するのに十分な大きさの単一のアイテムを
表すことができ、アイテム202Bは、スペースを節約するために同じパレット上に一緒
に積み重ねられたアイテムのセットを表すことができる。
【0058】
[0068] 作業者は、インバウンドゾーン203内のアイテムを受け取り、任意選択で、コ
ンピュータシステム(図示せず)を使用してアイテムの損傷および正しさをチェックする
ことができる。例えば、作業者は、コンピュータシステムを使用して、アイテム202A
および202Bの数量をアイテムの注文数量と比較することができる。数量が一致しない
場合、その作業者は、アイテム202Aまたは202Bのうちの1つまたは複数を拒否す
ることができる。量が一致した場合、作業者はそれらのアイテム(例えば、人形、手すり
、フォークリフト、または手動で使用)を、バッファゾーン205へと動かすことができ
る。バッファゾーン205は、例えば、予測される需要を満たすのに十分な量のアイテム
がピッキングゾーン内にあるため、ピッキングゾーン内で現在必要とされていないアイテ
ムのための一時記憶領域であってもよい。いくつかの実施形態では、フォークリフト20
6が物品をバッファゾーン205の周り、およびインバウンドゾーン203とドロップゾ
ーン207との間で移動させるように動作する。ピッキングゾーンにアイテム202Aま
たは202Bが必要な場合(例えば、予想される需要のため)、フォークリフトは、アイ
テム202Aまたは202Bをドロップゾーン207に移動させることができる。
【0059】
[0069] ドロップゾーン207は、アイテムがピッキングゾーン209に移動される前に
アイテムを格納するFC200の領域であってもよい。ピッキングタスクに割り当てられ
た作業者(「ピッカー」)は、ピッキングゾーン内のアイテム202Aおよび202Bに
接近し、ピッキングゾーンのバーコードをスキャンし、モバイルデバイス(例えば、デバ
イス119B)を使用してアイテム202Aおよび202Bに関連付けられたバーコード
をスキャンすることができる。次いで、ピッカーは、アイテムをピッキングゾーン209
に(例えば、カートの上に置くか、またはそれを運ぶことによって)取り込むことができ
る。
【0060】
[0070] ピッキングゾーン209は、アイテム208が記憶ユニット210に記憶される
FC200の領域であってもよい。いくつかの実施形態では、保管ユニット210は、物
理的な棚、本棚、箱、運搬箱、冷蔵庫、冷凍庫、冷蔵庫などのうちの1つまたは複数を含
むことができる。いくつかの実施形態では、ピッキングゾーン209は、複数のフロアに
編成されてもよい。いくつかの実施形態では、作業者または機械が例えば、フォークリフ
ト、エレベータ、コンベヤベルト、カート、ハンドトラック、ドリー、自動ロボットまた
は装置、あるいは手動を含む複数の方法で、物品をピッキングゾーン209に移動させる
ことができる。例えば、ピッカーは、アイテム202Aおよび202Bをドロップゾーン
207内のハンドトラックまたはカート上に置き、アイテム202Aおよび202Bをピ
ッキングゾーン209まで歩くことができる。
【0061】
[0071] ピッカーは、保管ユニット210上の特定のスペースのような、ピッキングゾー
ン209内の特定のスポットにアイテムを配置する(または「収納する」)命令を受け取
ることができる。例えば、ピッカーはモバイルデバイス(例えば、デバイス119B)を
使用してアイテム202Aをスキャンすることができる。デバイスは、例えば、通路、棚
、および位置を示すシステムを使用して、ピッカーがアイテム202Aを収納すべき場所
を示すことができる。次に、デバイスは、その位置にアイテム202Aを格納する前に、
その位置でバーコードをスキャンするようにピッカーに促すことができる。デバイスは、
図1AのWMS119のようなコンピュータシステムに(例えば、無線ネットワークを介
して)データを送信し、デバイス119Bを使用するユーザによってアイテム202Aが
その場所に格納されたことを示すことができる。
【0062】
[0072] ユーザが注文を出すと、ピッカーは、記憶ユニット210から1つまたは複数の
アイテム208を取り出すために、デバイス119B上で命令を受け取ることができる。
ピッカーはアイテム208を取り出し、アイテム208上のバーコードをスキャンし、そ
れを搬送機構214上に置くことができる。搬送機構214はスライドとして表されてい
るが、いくつかの実施形態では搬送機構がコンベヤベルト、エレベータ、カート、フォー
クリフト、ハンドトラック、台車、カートなどのうちの1つまたは複数として実施するこ
とができる。次に、品目208は、パッキングゾーン211に到着することができる。
【0063】
[0073] パッキングゾーン211は、アイテムがピッキングゾーン209から受け取られ
、最終的に顧客に出荷するためにボックスまたはバッグにパッキングされるFC200の
領域であってもよい。パッキングゾーン211ではアイテムを受け取ることに割り当てら
れた作業者(「リビン作業者」)がピッキングゾーン209からアイテム208を受け取
り、それが対応する注文を決定する。例えば、リビン作業者は、アイテム208上のバー
コードをスキャンするために、コンピュータ119Cなどのデバイスを使用することがで
きる。コンピュータ119Cは、どの注文アイテム208が関連付けられているかを視覚
的に示すことができる。これは例えば、注文に対応する壁216上のスペースまたは「セ
ル」を含むことができる。注文が完了すると(例えば、セルが注文のためのすべてのアイ
テムを含むため)、リビン作業者は、注文が完了したことをパッキング作業者(または「
パッカー」)に示すことができる。パッキング業者は、セルから品目を取り出し、それら
を出荷のために箱または袋に入れることができる。その後、パッカーは例えば、フォーク
リフト、カート、ドリー、ハンドトラック、コンベヤベルトを介して、又は他の方法で、
箱又はバッグをハブゾーン213に送ることができる。
【0064】
[0074] ハブゾーン213は、パッキングゾーン211から全てのボックスまたはバッグ
(「パッケージ」)を受け取るFC200の領域であってもよい。ハブゾーン213内の
作業者および/または機械は、パッケージ218を取り出し、各パッケージが配達エリア
のどの部分に行こうとするかを決定し、パッケージを適切なキャンプゾーン215にルー
ティングすることができる。例えば、配達エリアが2つのより小さなサブエリアを有する
場合、パッケージは2つのキャンプゾーン215のうちの1つに行く。いくつかの実施形
態では、作業者または機械が(例えば、デバイス119A~119Cのうちの1つを使用
して)パッケージをスキャンして、その最終的な宛先を決定することができる。パッケー
ジをキャンプゾーン215にルーティングすることは、例えば、(例えば、郵便番号に基
づいて)パッケージが向けられている地理的エリアの一部を決定することと、地理的エリ
アの一部に関連付けられたキャンプゾーン215を決定することとを含むことができる。
【0065】
[0075] キャンプゾーン215は、いくつかの実施形態では、1つまたは複数の建物、1
つまたは複数の物理的空間、または1つまたは複数のエリアを備えることができ、ハブゾ
ーン213から受け取られたパッケージは、ルートおよび/またはサブルートに分類され
る。いくつかの実施形態では、キャンプゾーン215は、FC200から物理的に分離さ
れているが、他の実施形態では、キャンプゾーン215は、FC200の一部を形成する
ことができる。
【0066】
[0076] キャンプゾーン215内の作業者および/または機械は、例えば、既存のルート
および/またはサブルートに対する目的地の比較、各ルートおよび/またはサブルートに
対する作業負荷の計算、時刻、出荷方法、パッケージ220を出荷するためのコスト、パ
ッケージ220内の品目に関連付けられたPDDなどに基づいて、パッケージ220がど
のルートおよび/またはサブルートに関連付けられるべきかを決定することができる。い
くつかの実施形態では、作業者または機械が(例えば、デバイス119A~119Cのう
ちの1つを使用して)パッケージをスキャンして、その最終的な宛先を決定することがで
きる。パッケージ220が特定のルートおよび/またはサブルートに割り当てられると、
作業者および/または機械は、出荷されるパッケージ220を移動させることができる。
例示的な
図2において、キャンプゾーン215は、トラック222、自動車226、およ
び配達作業員224Aおよび224Bを含む。いくつかの実施形態では、トラック222
が配達作業員224Aによって駆動されてもよく、配達作業員224AはFC200のパ
ッケージを配達する常勤の従業員であり、トラック222はFC200を所有、リース、
または運営する同じ会社によって所有、リース、または運営される。いくつかの実施形態
では、自動車226が配達作業者224Bによって駆動されてもよく、配達作業者224
Bは必要に応じて(例えば、季節的に)配達している「フレックス」または時折の作業者
である。自動車226は、配達員224Bによって所有され、リースされ、または操作さ
れてもよい。
【0067】
[0077]
図3を参照すると、在庫補充通知を提供するための在庫補充通知システム301
を備えるシステムの例示的な実施形態を示す概略ブロック
図300が示されている。在庫
補充通知システム301は、
図1Aのシステム100内の1つまたは複数のシステムに関
連付けることができる。例えば、在庫補充通知システム301は、SCMシステム117
の一部として実施することができる。在庫補充通知システム301は、いくつかの実施形
態では、在庫情報を受信して記憶し、在庫補充通知を制御し、1人または複数のユーザ(
例えば、外部フロントエンドシステム103、出荷および注文追跡システム111、およ
び/またはFOシステム113)に在庫補充通知を送信するコンピュータシステムとして
実装されてもよい。例えば、在庫補充通知システム301は、在庫切れの製品に関連する
在庫補充通知の要求を受信することができる1つまたは複数のプロセッサ305を含むこ
とができる。いくつかの実施形態において、1つ以上のプロセッサ305は、ネットワー
ク302を介して、ユーザインタフェース306からの在庫補充通知の要求を受信しても
よい。1つ以上のプロセッサ305は、データベース304などのデータベースを修正し
て、製品に関連する在庫補充通知の保留中の要求があることを示すステータスを製品に割
り当てるように構成することができる。一例として、データベース304は、
図1Aのシ
ステム100による購入に利用可能なあらゆる製品の在庫を記憶することができる。デー
タベース304は、各製品に関連付けられた製品識別子および各製品の利用可能性を含む
が、これらに限定されない、各製品に関連付けられた情報をさらに格納することができる
。例えば、特定の製品が在庫切れである場合、データベース304は、在庫切れのステー
タスを特定の製品に割り当て、ステータス情報を記憶することができる。
【0068】
[0078] いくつかの実施形態では、1つまたは複数のプロセッサ305は、
図1Aのシス
テム100内の1つまたは複数のシステムから、またはネットワーク302を介してサー
バ303から、在庫切れの製品が現在在庫ありであり、購入可能であることを示すメッセ
ージを受信することができる。1つ以上のプロセッサ305は、データベース304のよ
うなデータベースを修正して、製品に異なるステータスを割り当て、製品が現在購入可能
であることを示すことができる。データベース304は、新しいステータスを製品に割り
当て、この情報を記憶することができる。
【0069】
[0079] いくつかの実施形態では、1つまたは複数のプロセッサ305は、バッチフレー
ムワークを実装することができる。バッチフレームワークは、データベース304を分析
して、製品が在庫ありに戻っていることを示すステータスが割り当てられた製品を識別す
るように構成することができる。バッチフレームワークは、定期的に、または所定のスケ
ジュールで、データベース304を分析するように構成してもよい。有利には、バッチフ
レームワークは、製品が在庫ありに戻るとすぐに、またユーザがアクティブであるときに
、ユーザが在庫補充通知を受信するように、ユーザに在庫補充通知を送信するための通知
スケジュールを決定するように構成されてもよい。1つ以上のプロセッサ305は、バッ
チフレームワークによって決定された通知スケジュールに基づいて、ユーザに在庫補充通
知を送信するように構成されてもよい。
【0070】
[0080] システム300はまた、ネットワーク302およびサーバ303を含んでもよい
。在庫補充通知システム301、サーバ303、およびデータベース304は、ネットワ
ーク302を介して接続されて互いに通信可能であってもよい。ネットワーク302は、
無線ネットワーク、有線ネットワーク、または無線ネットワークと有線ネットワークの任
意の組み合わせのうちの1つ以上とすることができる。例えば、ネットワーク302は、
ファイバ光ネットワーク、受動光ネットワーク、ケーブルネットワーク、インターネット
ネットワーク、衛星ネットワーク、無線LAN、モバイル通信のためのグローバルシステ
ム、パーソナルコミュニケーションサービス(「PCS」)、パーソナルエリアネットワ
ーク(「PAN」)、D-AMPS、Wi-Fi、固定無線データ、IEEE802.1
1b、802.15.1、802.11n及び802.11g、又はデータを送受信する
ための有線又は無線ネットワークの1つ又は複数を含むことができる。
【0071】
[0081] さらに、ネットワーク302は、電話回線、光ファイバ、IEEEイーサネット
902.3、ワイドエリアネットワーク(「WAN」)、ローカルエリアネットワーク(
「LAN」)、またはインターネットなどのグローバルネットワークを含むことができる
が、これらに限定されない。また、ネットワーク302は、インターネットネットワーク
、無線通信ネットワーク、セルラーネットワークなど、またはこれらの任意の組み合わせ
をサポートしてもよい。ネットワーク302は、スタンドアロンネットワークとして、ま
たは互いに協働して動作する、1つのネットワーク、または任意の数の上述の例示的なタ
イプのネットワークをさらに含むことができる。ネットワーク302は、それらが通信可
能に結合されている1つ以上のネットワーク要素の1つ以上のプロトコルを利用すること
ができる。ネットワーク302は、他のプロトコルとの間で、またはネットワーク装置の
1つ以上のプロトコルとの間で変換することができる。ネットワーク302は単一のネッ
トワークとして示されているが、1つ以上の実施形態によれば、ネットワーク302は、
例えば、インターネット、サービスプロバイダのネットワーク、ケーブルテレビネットワ
ーク、企業ネットワーク、およびホームネットワークなどの複数の相互接続されたネット
ワークを備えてもよいことを理解されたい。
【0072】
[0082] サーバ303は、ウェブサーバであってもよい。サーバ303は、例えば、イン
ターネットのようなネットワーク(例えば、ネットワーク302)を介してユーザがアク
セスできるウェブコンテンツを配信するハードウェア(例えば、プロセッサ、記憶装置、
入出力装置を含む1つ以上のコンピュータ)および/またはソフトウェア(例えば、1つ
以上のアプリケーション)を含んでもよい。サーバ303は例えば、ハイパーテキスト転
送プロトコル(HTTPまたはsHTTP)を使用して、ユーザと通信することができる
。ユーザに配信されるウェブページは例えば、HTML文書を含み得、これは、テキスト
コンテンツに加えて、画像、スタイルシート、およびスクリプトを含み得る。
【0073】
[0083] 例えば、ウェブブラウザ、ウェブクローラ、またはネイティブモバイルアプリケ
ーションなどのユーザプログラムは、HTTPおよびサーバ303を使用して特定のリソ
ースに対する要求を行うことによって通信を開始することができ、そのリソースの内容ま
たはそうすることができない場合はエラーメッセージで応答することができる。サーバ3
03は、例えば、ファイルのアップロードを含むウェブフォームをユーザが送信すること
ができるように、ユーザからのコンテンツの受信を可能にするか、または容易にすること
もできる。サーバ303は、例えば、アクティブサーバページ(ASP)、PHP、又は
他のスクリプト言語を用いたサーバサイドスクリプティングをサポートしてもよい。した
がって、サーバ303の挙動は、別々のファイルでスクリプト化することができ、一方で
、実際のサーバソフトウェアは変更されない。
【0074】
[0084] 他の実施形態では、サーバ303は、アプリケーションサーバであってもよく、
これは、その適用されるアプリケーションをサポートするための手順(例えば、プログラ
ム、ルーチン、スクリプト)の効率的な実行専用のハードウェアおよび/またはソフトウ
ェアを含んでもよい。サーバ303は、例えば、Javaアプリケーションサーバ(例え
ば、Javaプラットフォーム、Enterprise Edition(Java E
E)、Microsoft(登録商標)の.NETフレームワーク、PHPアプリケーシ
ョンサーバなどを含む1つ以上のアプリケーションサーバフレームワークを含むことがで
きる。様々なアプリケーションサーバフレームワークは、包括的なサービスレイヤモデル
を含む可能性がある。サーバ303は、プラットフォーム自体によって定義されたAPI
を介して、例えば、システム100を実装するエンティティにアクセス可能なコンポーネ
ントのセットとして働くことができる。ウェブアプリケーションの場合、これらのコンポ
ーネントは、例えば、ウェブサーバと同じ実行環境で実行されてもよく、アプリケーショ
ンサーバは、動的ページの構築をサポートしてもよい。アプリケーションサーバは、例え
ば、クラスタリング、フェイルオーバー、およびロードバランシングなどのサービスを実
装することもできる。アプリケーションサーバがJavaアプリケーションサーバである
様々な実施形態において、ウェブサーバは、アプリケーションを実行し、一方の側でバッ
クエンドに関連するデータベースへの接続、他方の側でウェブ・クライアントへの接続を
透過的に処理するために、拡張された仮想マシンのように振る舞うことができる。
【0075】
[0085]
図4は、ユーザ401に在庫補充通知を提供するための例示的な在庫補充通知シ
ステム402を示す概略ブロック
図400を示す。在庫補充通知システム402は、
図3
の在庫補充通知システム301と同じであってもよい。
図4に見られるように、在庫補充
通知システム402は1つ以上のプロセッサ412を備えることができ、これは、モバイ
ルアプリケーションプログラミングインタフェース(API)403、ウェブブラウザ4
04、モバイルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも
1つを介して、ユーザ401とデータを交換するように構成することができる。一例とし
て、ユーザ401は、モバイルAPI403、ウェブブラウザ404、モバイルウェブブ
ラウザ405、またはカートウェブブラウザ406の少なくとも1つにアクセスして、製
品を検索し、製品を購入することができる。ユーザ401はまた、モバイルAPI403
、ウェブブラウザ404、モバイルウェブブラウザ405、またはカートウェブブラウザ
406のうちの少なくとも1つにアクセスして、在庫切れの製品が在庫ありのステータス
に戻ったときにユーザ401に通知できるように、在庫補充通知を申し込むことができる
。いくつかの実施形態では、ユーザ401は、モバイルAPI403、ウェブブラウザ4
04、モバイルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも
1つで、在庫補充通知をサブスクライブするために、ユーザアカウントを生成してもよい
。したがって、ユーザ401は、在庫補充通知をサブスクライブするために、アカウント
に関連するユーザIDおよびパスワードを提供することによって、ユーザ401のアカウ
ントにサインインするように要求されてもよい。
【0076】
[0086] ユーザ401がモバイルAPI403、ウェブブラウザ404、および/または
モバイルウェブブラウザ405を介して、在庫補充通知をサブスクライブし、要求すると
き、1つ以上のプロセッサ412は、1つ以上のカートAPI407a~cを介して、在
庫補充通知の要求を受信することができる。1つまたは複数のプロセッサ412は、ユー
ザ401の各エントリポイントに対して別個のカートAPI407a~cを維持すること
ができる。例えば、カートAPI407aは、1つ以上のプロセッサ412がカートAP
I407aを介してモバイルAPI403から行われた在庫補充通知の要求を受信するよ
うに構成され得るように、モバイルAPI403に関連付けられ得る。カートAPI40
7bは、ウェブブラウザ404に関連付けられてもよく、その結果、1つ以上のプロセッ
サ412は、カートAPI407bを介してウェブブラウザ404から行われる在庫補充
通知の要求を受信するように構成されてもよい。同様に、カートAPI407cは、1つ
または複数のプロセッサ412がカートAPI407cを介してモバイルウェブブラウザ
405から行われた在庫補充通知の要求を受信するように構成され得るように、モバイル
ウェブブラウザ405に関連付けられ得る。いくつかの実施形態において、1つ以上のプ
ロセッサ412は、カートウェブブラウザ406から行われた在庫補充通知の要求を直接
受信するように構成されてもよい。
【0077】
[0087] 上述したように、1つ以上のプロセッサ412は、各製品に関連する情報をデー
タベース408に記憶するように構成することができる。データベース408は、
図3の
データベース304と同様とすることができる。
図4は、補充通知システム402の内部
のデータベース408を示すが、データベース408は、いくつかの実施形態では、在庫
補充通知システム402の外部に配置されてもよく、ネットワーク302を介して在庫補
充通知システム402と通信するように構成されてもよい。いくつかの実施形態では、1
つ以上のプロセッサ412は、各製品にステータスを割り当てるようにデータベース40
8を修正するように構成されてもよい。例えば、1つまたは複数のプロセッサ412が、
カートウェブブラウザ406、カートAPI407a、カートAPI407b、および/
またはカートAPI407cを介して、製品に関連する在庫補充通知の要求を受信すると
、1つまたは複数のプロセッサ412は、製品が現在在庫切れであると判定することがで
きる。次に、1つまたは複数のプロセッサ412は、データベース408を修正して、製
品が在庫切れであることを示す第1のステータスを製品に割り当てることができる。した
がって、データベース408は、製品のリストと、製品の製品識別子(例えば、在庫管理
ユニット(SKU))、利用可能な製品の数量、製品の利用可能性を示すステータス、お
よび/または製品に関連付けられた在庫補充通知の要求の数を含む、各製品に関連付けら
れた情報とを格納することができる。データベース408はまた、各製品に対する在庫補
充通知に対するユーザの要求に関連するユーザIDのリストのような、在庫補充通知を要
求するユーザに関連する情報を記憶することもできる。例えば、データベース408は、
ユーザ401が特定の製品の在庫補充通知を要求した後に、ユーザ401に関連するユー
ザIDを記憶することができる。在庫補充通知システム402は、承認されたデータ以外
のデータがデータベース408に記憶されないようにすることができる。例えば、在庫補
充通知システム402は、データベース408に記憶されるユーザID、ユーザ識別情報
、および/またはユーザ電子メールアドレスのみをサポートすることができる。他の実施
形態では、ユーザ401が特定の製品についての在庫補充通知の要求を送信するとき、1
つ以上のプロセッサ412は、データベース408を修正して、その特定の製品に関連す
る在庫補充アイテムIDを割り当てることができる。在庫補充アイテムIDは、製品ID
、アイテムID、ベンダアイテムID、または特定の製品に関連付けられたベンダアイテ
ムパッケージIDなど、特定の製品に関連付けられた情報を含むことができる。
【0078】
[0088] いくつかの実施形態において、1つ以上のプロセッサ412は、例えば、サーバ
303から1つ以上の在庫補充メッセージ409を受信するように構成されてもよい。1
つまたは複数の在庫補充メッセージ409は、特定の製品が在庫ありに戻っており、ユー
ザによる購入のために利用可能であることを示すことができる。1つまたは複数の在庫補
充メッセージ409は、在庫ありに戻っている各製品に関連付けられた製品識別子を識別
することができ、また、利用可能な各製品の数量を識別することもできる。いくつかの実
施形態では、1つまたは複数の在庫補充メッセージ409は、在庫ありに戻っている各製
品に関連付けられたアイテムIDおよびベンダアイテムIDを含むことができる。1つ以
上のプロセッサ412は、製品IDまたはベンダアイテムパッケージIDのような、製品
に関連するベンダアイテムIDに基づいて、データベース408から他の識別情報を検索
することができる。追加的または代替的に、1つまたは複数の在庫補充メッセージ409
は、在庫ありに戻っている各製品に関連付けられた製品ID、アイテムID、ベンダアイ
テムID、またはベンダアイテムパッケージIDのうちの少なくとも1つを含むことがで
きる。製品IDは、製品のカテゴリに関連付けられた製品識別子を含むことができる。ア
イテムIDは、製品の1つまたは複数の属性、例えば、色、サイズ、製造業者、材料、ま
たはブランドを示す、製品に関連付けられた製品識別子を含むことができる。ベンダアイ
テムIDは、製品のベンダも識別する製品に関連付けられた製品識別子を含むことができ
る。ベンダアイテムパッケージIDは、(携帯電話および関連する電話ケースのように)
購入可能なベンダによって販売された製品のコレクションに関連する製品識別子を含むこ
とができる。ベンダアイテムパッケージIDは、製品のコレクションのベンダを識別する
こともできる。次に、1つ以上のプロセッサ412は、データベース408内の製品識別
子を検索し、データベース408を修正して、製品識別子に関連する製品に第2のステー
タスを割り当てるように構成することができる。第2のステータスは、製品が在庫ありに
戻っており、購入可能であることを示すことができる。1つ以上のプロセッサ412はま
た、データベース408を修正して、在庫補充後の購入に利用可能な各製品の数量を変更
するように構成されてもよい。
【0079】
[0089] いくつかの実施形態では、在庫補充通知システム402は、バッチフレームワー
ク410を含むことができる。1つまたは複数のプロセッサ412は、バッチフレームワ
ーク410を構成して、データベース408を分析して、製品が在庫ありに戻っているこ
とを示すステータスが割り当てられた製品を識別することができる。いくつかの実施形態
では、1つまたは複数のプロセッサ412は、利用可能な各製品の量を決定するためにデ
ータベース408を分析するようにバッチフレームワーク410を構成することもできる
。バッチフレームワーク410は、データベース408を定期的に、または所定のスケジ
ュールで分析するように構成してもよい。例えば、バッチフレームワーク410は、デー
タベース408を2時間ごと、5時間ごと、10時間ごと、24時間ごと、または週に2
回分析するように構成され得る。他の実施形態では、バッチフレームワーク410は、1
つまたは複数のプロセッサ412によって受信されたすべての在庫補充メッセージ409
の後に、データベース408を分析するように構成され得る。いくつかの実施形態では、
バッチフレームワーク410は、Apache Kafka、Spring Batch
、またはバッチ処理が可能な任意のオープンソースソフトウェアプラットフォームまたは
オープンソースフレームワークを含むことができる。
【0080】
[0090] いくつかの実施形態では、バッチフレームワーク410は、データベース408
を定期的に分析して、在庫補充通知の重複要求をチェックすることができる。例えば、ユ
ーザ401は、モバイルAPI403を介して、特定の製品の在庫補充通知を要求するこ
とができる。ユーザ401はまた、モバイルウェブブラウザ405を介して、同じ特定の
製品に対する在庫補充通知を要求することもできる。上述したように、ユーザ401が同
じ製品についての在庫補充通知を要求したとしても、ユーザ401は2つの異なるエント
リポイント、すなわち、モバイルAPI403およびモバイルwebブラウザ405を使
用して在庫補充通知を要求したため、1つ以上のプロセッサ412は、カートAPI40
7aおよびカートAPI407cを介して、それぞれ2つの要求を別々に受信してもよい
。したがって、1つ以上のプロセッサ412は、ユーザ401に関連する2つの要求を別
々にデータベース408に記憶することができる。1つまたは複数のプロセッサ412は
、製品が在庫ありに戻っていることを示す在庫補充メッセージ409を受信すると、1つ
または複数のプロセッサ412は、製品に対する在庫補充通知のための2つの保留中の要
求があると判定することができる。バッチフレームワーク410は、ユーザ401に2つ
の重複する在庫補充通知を送信する代わりに、データベース408を分析し、製品の在庫
補充通知に対する2つの保留中の要求が同じユーザ、すなわちユーザ401に関連付けら
れていることを決定してもよい。バッチフレームワーク410は、例えば要求に関連する
ユーザIDを識別することによって、在庫補充通知のための2つの保留中の要求が同じユ
ーザに関連することを決定することができる。バッチフレームワーク410が、在庫補充
通知に対する2つの保留中の要求が両方ともユーザ401に関連付けられていることを決
定すると、バッチフレームワーク410は、1つ以上のプロセッサ412が同じ製品に対
する1つの在庫補充通知のみをユーザ401に送信し、それによって重複メッセージがユ
ーザに送信されることを防止するような通知スケジュールを生成することができる。
【0081】
[0091] 有利には、バッチフレームワーク410は、製品が在庫ありに戻るとすぐに、ま
たユーザがアクティブであるときに、ユーザが在庫補充通知を受信するように、ユーザに
在庫補充通知を送信するための通知スケジュールを決定するように構成されてもよい。一
例として、1つ以上のプロセッサ412は、モバイルAPI403、ウェブブラウザ40
4、モバイルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも1
つについて、ユーザの活動傾向を決定することができる。いくつかの実施形態では、1つ
または複数のプロセッサ412は、受信された在庫補充通知に対するいくつかの要求に基
づいて、ユーザの活動傾向を決定することができる。1つ以上のプロセッサ412は、例
えば毎日1分毎に受信された在庫補充通知の要求の数をモニタすることができる。受信さ
れた在庫補充通知の要求の数に基づいて、1つ以上のプロセッサ412は時間枠を決定す
ることができ、その時間枠の間、1つ以上のプロセッサ412は、例えば午前2時から午
前7時までの間に、在庫補充通知の要求を受信する可能性が最も低い。さらに、決定され
たユーザの活動傾向に基づいて、1つ以上のプロセッサ412は、時間枠を決定すること
ができ、その時間枠の間、ユーザは、モバイルAPI403、ウェブブラウザ404、モ
バイルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも1つでア
クティブである可能性が最も高い。
【0082】
[0092] 1つ以上のプロセッサ412は、ユーザの活動傾向情報および時間枠情報をデー
タベース408に記憶することができる。データベース408に記憶されたユーザの情報
に基づいて、バッチフレームワーク410は、ユーザに在庫補充通知を送信するための通
知スケジュールを決定することができる。したがって、バッチフレームワーク410は、
1つ以上のプロセッサ412が時間枠内に、ユーザに在庫補充通知を送信することを可能
にしてもよく、その時間枠の間に、ユーザは在庫補充通知をチェックする可能性が最も高
い。したがって、バッチフレームワーク410は、モバイルAPI403、ウェブブラウ
ザ404、モバイルウェブブラウザ405、またはカートウェブブラウザ406の少なく
とも1つに関する各ユーザの活動傾向に基づいて、各ユーザに対してカスタマイズされる
通知スケジュールを決定することができる。
【0083】
[0093] いくつかの実施形態では、バッチフレームワーク410はまた、1つまたは複数
のプロセッサ412が、ユーザが在庫補充通知をチェックする可能性が最も高い時間枠の
外でユーザに在庫補充通知を送信しないように、通知スケジュールを決定することができ
る。いくつかの実施形態において、バッチフレームワーク410は、1つ以上のプロセッ
サ412が特定の時間、例えば午前0時の後に、ユーザに在庫補充通知を送信しないよう
に、通知スケジュールを生成することができる。他の実施形態では、通知スケジュールを
決定することは、在庫補充通知のためのアラートタイプを決定することを含むことができ
る。バッチフレームワーク410は、1つまたは複数のプロセッサ412が通知スケジュ
ールに基づいて在庫補充通知のアラートタイプを調整するように構成され得るように、通
知スケジュールを決定することができる。例えば、バッチフレームワーク410は、1つ
以上のプロセッサ412が午前0時などの特定の時間の後にユーザに送信される任意の在
庫補充通知をミュートするように構成されてもよいように、通知スケジュールを生成して
もよい。在庫補充通知のアラートタイプを調整することは、通知の音量を調整すること、
通知の頻度を調整すること、通知の表示を調整すること、またはそれらの任意の組合せを
含むことができる。
【0084】
[0094] いくつかの実施形態では、1つまたは複数のプロセッサ412は、各ユーザの活
動状態に基づいて通知スケジュールを決定することができる。例えば、1つ以上のプロセ
ッサ412は、バッチフレームワーク410を実装して、各ユーザのセッションに基づい
て、各ユーザの活動ステータスのリアルタイムステータスを取得することができる。一例
を挙げると、バッチフレームワーク410は、モバイルAPI403、webブラウザ4
04、モバイルwebブラウザ405、またはカートwebブラウザ406の少なくとも
1つ上のユーザのセッションの間に、ユーザが「オンライン」またはアクティブであるか
、またはユーザが「アイドル」、「オフライン」、または、非アクティブであるかを決定
することができる。ユーザの活動ステータスに基づいて、バッチフレームワーク410は
、在庫補充通知を送信するための通知スケジュールを決定することができる。一例を挙げ
ると、バッチフレームワーク410は、ユーザが「オンライン」であるときにのみ、ユー
ザに在庫補充通知が送信されるように、通知スケジュールを決定することができる。
【0085】
[0095] 他の実施形態では、1つまたは複数のプロセッサ412は、在庫補充通知を送信
する前に、在庫補充後の製品の量を決定することができる。例えば、特定の製品の在庫補
充メッセージ409を受信した後、1つまたは複数のプロセッサ412は、在庫補充後の
製品の量を決定することができる。1つまたは複数のプロセッサ412は、在庫補充後の
製品の量を所定の閾値と比較し、比較に基づいて、在庫補充通知をユーザに送信するかど
うかを判定することができる。例えば、在庫補充後の製品の量が所定の閾値未満である場
合、1つ以上のプロセッサ412は、製品の量が所定の閾値を超えるまで、在庫補充通知
を送信しなくてもよい。同様に、在庫補充後の製品の量が所定の閾値を超える場合、1つ
または複数のプロセッサ412は、在庫補充通知をユーザに送信することができる。所定
の閾値は、各製品の消費者需要に応じて、各製品ごとに変化することができる。例えば、
各製品の所定の閾値は、各製品が素早く在庫切れになるのを防止するために、各製品の消
費者需要に正比例することができる。
【0086】
[0096] いくつかの実施形態では、1つまたは複数のプロセッサ412は、バッチフレー
ムワーク410によって決定された通知スケジュールに基づいて、在庫補充通知をユーザ
に送信するように構成され得る。1つ以上のプロセッサ412は、メッセージングプラッ
トフォーム411を使用して、ユーザに在庫補充通知を送信するように構成することがで
きる。メッセージングプラットフォーム411は、ユーザにメッセージを交換することが
可能な任意のインターネットインフラストラクチャを含むことができる。例えば、メッセ
ージプラットフォーム411は、電子メール、ショートメッセージサービス、ソフトウェ
アアプリケーション、API、インスタントメッセージング、またはこれらの任意の組み
合わせを含むことができる。いくつかの実施形態では、ユーザが例えば、自分のプロファ
イルにログインすることによって、自分の好ましいメッセージングプラットフォーム41
1を選択することができる。例えば、ユーザは、電子メールを介して、またはモバイルA
PI403のようなモバイルアプリケーションを介してプッシュ通知を介して、在庫補充
通知を受信することを選択することができる。
【0087】
[0097] ある実施形態では、1つ以上のプロセッサ412がデータベース408を修正し
て、在庫補充通知のステータスを更新するように構成してもよい。一例として、データベ
ース408は、製品のリストと、各製品について何らかの在庫補充通知がユーザに送信さ
れたかどうかを含む、各製品に関連付けられた情報とを含むことができる。例えば、1つ
以上のプロセッサ412が、特定の製品のための在庫補充メッセージ409を受信し、バ
ッチフレームワーク410によって生成された通知スケジュールに基づいてメッセージン
グプラットフォーム411を介してユーザ401に在庫補充通知を送信するとき、1つ以
上のプロセッサ412は、データベース408を修正して、特定の製品に別のステータス
を割り当てることができる。ステータスは、特定の製品の在庫補充通知がユーザに送信さ
れたことを示すことができる。在庫補充通知がユーザへ送信できなかった場合、1つ以上
のプロセッサ412は、データベース408を修正して、さらに別のステータスを特定の
製品に割り当てることができる。ステータスは、在庫補充通知がユーザへ送信できなかっ
たことを示す場合がある。バッチフレームワーク410は、データベース408を定期的
に分析して、割り当てられた在庫補充通知を送信できなかったことを示すステータスがあ
る製品を識別することができる。バッチフレームワーク410が、在庫補充通知を送信で
きなかったことを示すステータスが割り当てられた特定の製品を識別するとき、バッチフ
レームワーク410は、決定された通知スケジュールに基づいて、在庫補充通知を再送信
するフェイルオーバーロジックを適用してもよい。
【0088】
[0098]
図5は、ユーザ501に在庫補充通知を提供するための例示的な補充通知システ
ム502の概略ブロック
図500である。在庫補充通知システム502は、
図4の在庫補
充通知システム402と同様であってもよい。
図5に見られるように、在庫補充通知シス
テム502は、第1のユーザインタフェース503および第2のユーザインタフェース5
04とデータを交換するように構成され得る、1つ以上のプロセッサ512を備え得る。
第1および第2のユーザインタフェース503、504は、モバイルAPI(モバイルA
PI 403など)、ウェブブラウザ(ウェブブラウザ404など)、モバイルウェブブ
ラウザ(ウェブブラウザ405など)、またはカートウェブブラウザ(カートウェブブラ
ウザ406など)の少なくとも1つを含んでもよい。
図5は2つのユーザインタフェース
503、504を示すが、在庫補充通知システム502は、2つ以上のユーザインタフェ
ース、例えば、数千のユーザインタフェースとデータを交換するように構成してもよい。
【0089】
[0099]
図4の1つ以上のプロセッサ412と同様に、1つ以上のプロセッサ512は、
第1のユーザインタフェース503および第2のユーザインタフェース504からの在庫
補充通知の要求を受信するように構成することができる。在庫補充通知の要求を受信した
後、1つまたは複数のプロセッサ512は、要求に関連付けられた製品が在庫切れである
と判定し、データベース508を修正して、各製品にステータスを割り当てることができ
る。ステータスは、製品が在庫切れであることを示すことができる。また、1つ以上のプ
ロセッサ512は、各製品に対するユーザ要求在庫補充通知に関連付けられたユーザID
のリストなど、在庫補充通知を要求するユーザに関連付けられた情報をデータベース50
8に格納してもよい。
【0090】
[00100] いくつかの実施形態において、1つ以上のプロセッサ512は、例えば、サーバ
303から1つ以上の在庫補充メッセージ509を受信するように構成されてもよい。図
4の在庫補充メッセージ409と同様に、1つまたは複数の在庫補充メッセージ509は
特定の製品が在庫ありに戻っており、ユーザによる購入のために利用可能であることを示
すことができる。1つまたは複数の補充メッセージ509は、在庫が戻っている各製品に
関連付けられた製品識別子を識別することができ、また、利用可能な各製品の数量を識別
することもできる。追加的に、または代替的に、1つ以上の在庫補充メッセージ509は
、在庫ありに戻される各製品に関連する製品ID、アイテムID、ベンダアイテムID、
またはベンダアイテムパッケージIDの少なくとも1つを含むことができる。製品IDは
、製品のカテゴリに関連付けられた製品識別子を含むことができる。アイテムIDは、製
品の1つまたは複数の属性、例えば、色、サイズ、製造業者、材料、またはブランドを示
す、製品に関連付けられた製品識別子を含むことができる。ベンダアイテムIDは、製品
のベンダも識別する製品に関連付けられた製品識別子を含むことができる。ベンダアイテ
ムパッケージIDは、購入可能なベンダによって販売された製品の集合に関連付けられた
製品識別子を含むことができる。ベンダアイテムパッケージIDは、製品のコレクション
のベンダを識別することもできる。次に、1つ以上のプロセッサ512は、データベース
508内の製品識別子を検索し、データベース508を修正して、製品識別子に関連する
製品に第2のステータスを割り当てるように構成することができる。第2のステータスは
、製品が在庫ありに戻っており、購入可能であることを示すことができる。1つ以上のプ
ロセッサ512はまた、データベース508を修正して、在庫補充後の購入に利用可能な
各製品の数量を変更するように構成されてもよい。
【0091】
[00101]
図4の補充通知システム402と同様に、補充通知システム502は、バッチフ
レームワーク510を含むことができる。1つまたは複数のプロセッサ512は、バッチ
フレームワーク510を構成して、データベース508を分析し、製品が在庫ありに戻っ
ていることを示すステータスが割り当てられた製品を識別することができる。いくつかの
実施形態では、1つまたは複数のプロセッサ512は、利用可能な各製品の量を決定する
ためにデータベース508を分析するようにバッチフレームワーク510を構成すること
もできる。バッチフレームワーク510は、データベース408を定期的に、または所定
のスケジュールで分析するように構成してもよい。例えば、バッチフレームワーク510
は、データベース508を2時間ごと、5時間ごと、10時間ごと、24時間ごと、また
は週に2回分析するように構成され得る。他の実施形態では、バッチフレームワーク51
0は、1つ以上のプロセッサ512によって受信されるすべての在庫補充メッセージ50
9の後に、データベース508を分析するように構成してもよい。
【0092】
[00102] いくつかの実施形態では、バッチフレームワーク510は、データベース508
を定期的に分析して、在庫補充通知の重複要求をチェックすることができる。例えば、ユ
ーザ501は、第1のユーザインタフェース503を介して、製品の在庫補充通知のため
の第1の要求を送信することができる。ユーザ501はまた、第2のユーザインタフェー
ス504を介して、製品の在庫補充通知のための第2の要求を送信することができる。バ
ッチフレームワーク510は、例えば、各要求に関連するユーザIDを識別することによ
って、第1の要求と第2の要求の両方がユーザ501からのものであることを決定しても
よい。次に、バッチフレームワーク510は、第1の要求が第2の要求に関連するかどう
かを判定することができる。例えば、バッチフレームワーク510は、在庫補充通知のた
めの第1の要求に関連付けられた製品が在庫補充通知のための第2の要求に関連付けられ
た製品と同じであるかどうかを判定することができる。第1および第2の要求に関連付け
られた2つの製品が同じである場合、バッチフレームワーク510は、第1の要求および
第2の要求が関連していると判定することができる。バッチフレームワーク510が、在
庫補充通知に対する2つの要求が関連していることを決定すると、バッチフレームワーク
510は、1つ以上のプロセッサ512が製品の1つの在庫補充通知のみをユーザ501
に送信し、それによって重複メッセージがユーザに送信されることを防止するような通知
スケジュールを生成することができる。
【0093】
[00103] 他の実施形態では、バッチフレームワーク510は、第1のユーザインタフェー
ス503がユーザ501に関連付けられ、第2のユーザインタフェース504が異なるユ
ーザに関連付けられることを決定してもよい。1つまたは複数のプロセッサ502は、第
1のユーザインタフェース503を介して第1の製品の在庫補充通知のための第1の要求
を受信し、第2のユーザインタフェース504を介して第2の製品の在庫補充通知のため
の第2の要求を受信することができる。第1の製品と第2の製品が同一であっても、バッ
チフレームワーク510が第1のユーザインタフェース503が第2のユーザインタフェ
ース504に関連しないと判断した場合、バッチフレームワーク510は、第1のユーザ
インタフェース503に関連するユーザ501に第1の在庫補充通知を送信し、第2のユ
ーザインタフェース504に関連する異なるユーザに第2の在庫補充通知を送信してもよ
い。
【0094】
[00104] 有利には、バッチフレームワーク510は、製品が在庫ありに戻るとすぐに、ま
たユーザがアクティブであるときに、ユーザが在庫補充通知を受信するように、ユーザに
在庫補充通知を送信するための通知スケジュールを決定するように構成されてもよい。一
例として、1つ以上のプロセッサ512は、第1のユーザインタフェース503または第
2のユーザインタフェース504の少なくとも1つで、ユーザの活動傾向を決定してもよ
い。決定されたユーザの活動傾向に基づいて、1つ以上のプロセッサ512は、時間枠を
決定してもよく、その時間枠の間、ユーザは、第1のユーザインタフェース503または
第2のユーザインタフェース504の少なくとも1つでアクティブである可能性が最も高
い。1つ以上のプロセッサ512は、ユーザの活動傾向情報および時間枠情報をデータベ
ース508に記憶することができる。データベース508に記憶されたユーザの情報に基
づいて、バッチフレームワーク510は、ユーザに在庫補充通知を送信するための通知ス
ケジュールを決定することができる。したがって、バッチフレームワーク510は、1つ
以上のプロセッサ512が時間枠内に、ユーザに在庫補充通知を送信することを可能にし
てもよく、その時間枠の間に、ユーザは在庫補充通知をチェックする可能性が最も高い。
したがって、バッチフレームワーク510は、第1のユーザインタフェース503または
第2のユーザインタフェース504の少なくとも1つとの各ユーザの対話に基づいて、各
ユーザに対してカスタマイズされる通知スケジュールを決定することができる。
【0095】
[00105] いくつかの実施形態では、バッチフレームワーク510はまた、1つ以上のプロ
セッサ512が時間枠の外でユーザに在庫補充通知を送信しないように通知スケジュール
を決定してもよく、その時間枠の間、ユーザは在庫補充通知をチェックする可能性が最も
高い。いくつかの実施形態において、バッチフレームワーク510は、1つ以上のプロセ
ッサ512が特定の時間、例えば午前0時の後に、ユーザに在庫補充通知を送信しないよ
うに、通知スケジュールを生成することができる。他の実施形態では、通知スケジュール
を決定することは在庫補充通知のためのアラートタイプを決定することを含むことができ
る。バッチフレームワーク510は、1つまたは複数のプロセッサ512が通知スケジュ
ールに基づいて在庫補充通知のアラートタイプを調整するように構成され得るように、通
知スケジュールを決定することができる。例えば、バッチフレームワーク510は、1つ
以上のプロセッサ512が午前0時などの特定の時間の後にユーザに送信される任意の在
庫補充通知をミュートするように構成されてもよいように、通知スケジュールを生成して
もよい。
【0096】
[00106] ある実施形態では、1つ以上のプロセッサ512は、バッチフレームワーク51
0によって決定された通知スケジュールに基づいて、ユーザに在庫補充通知を送信するよ
うに構成されてもよい。1つ以上のプロセッサ512は、メッセージングプラットフォー
ム511を使用して、ユーザに在庫補充通知を送信するように構成することができる。メ
ッセージングプラットフォーム511は、ユーザにメッセージを交換することが可能な任
意のインターネットインフラストラクチャを含むことができる。例えば、メッセージング
プラットフォーム511は、電子メール、ショートメッセージサービス、ソーシャルネッ
トワークサービス、ソフトウェアアプリケーション、API、インスタントメッセージン
グサービス、またはこれらの任意の組み合わせを含むことができる。いくつかの実施形態
において、ユーザは例えば、それらのプロファイルにログインすることによって、好みの
メッセージングプラットフォーム511を選択することができる。例えば、ユーザは、電
子メールを介して、またはモバイルアプリケーションを介してプッシュ通知を介して、在
庫補充通知を受信することを選択することができる。
【0097】
[00107]
図4を参照して議論したように、在庫補充通知がユーザへ送信できなかった場合
、1つ以上のプロセッサ512は、データベース508を修正して、特定の製品にステー
タスを割り当てることができ、これは、在庫補充通知がユーザへ送信できなかったことを
示してもよい。バッチフレームワーク510は、データベース508を定期的に分析して
、割り当てられた在庫補充通知が送信できなかったことを示すステータスがある製品を識
別することができる。バッチフレームワーク510が在庫補充通知を送信できなかったこ
とを示すステータスが割り当てられた特定の製品を識別するとき、バッチフレームワーク
510は、決定された通知スケジュールに基づいて、在庫補充通知を再送信するフェイル
オーバーロジックを適用してもよい。
【0098】
[00108]
図6は、在庫補充通知を提供するための例示的な方法600を示すフローチャー
トである。この例示的な方法は、例として提供される。
図6に示される方法600は、様
々なシステムの1つまたは複数の組合せによって実行されるか、さもなければ実行される
ことができる。以下に説明する方法600は、例として
図3に示すように、在庫補充通知
システム301によって実行することができ、在庫補充通知システム301の様々な要素
は、
図6の方法を説明する際に参照される。
図6に示される各ブロックは、例示的な方法
600における1つまたは複数のプロセス、方法、またはサブルーチンを表す。
図6を参
照すると、例示的な方法600は、ブロック601で開始することができる。
【0099】
[00109] ブロック601で、1つまたは複数のプロセッサ305は、製品に関連する在庫
補充通知の要求を受信することができる。いくつかの実施形態において、ユーザは、モバ
イルAPI403、ウェブブラウザ404、モバイルウェブブラウザ405、またはカー
トウェブブラウザ406の少なくとも1つを介して、在庫補充通知の要求を送ることがで
きる。次いで、1つまたは複数のプロセッサ305は、カートAPI407a~cのうち
の少なくとも1つを介して、またはカートウェブブラウザ406を介して直接、補充通知
の要求を受信することができる。
【0100】
[00110] 1つまたは複数のプロセッサ305が事故補充通知の要求を受信すると、方法6
00は、ブロック602に進むことができる。ブロック602において、1つ以上のプロ
セッサ305は、データベース408のようなデータベースを修正して、製品に第1のス
テータスを割り当てることができる。
図4を参照して上述したように、データベース40
8は、購入のために提供されるすべての製品の在庫、ならびに製品の製品識別子(例えば
、在庫管理ユニット(SKU))、利用可能な製品の数量、製品の利用可能性を示すステ
ータス、および/または製品に関連する補充通知の要求の数を含む、各製品に関連する情
報を格納することができる。したがって、ブロック602で、1つまたは複数のプロセッ
サ305は、例えば、製品が在庫切れであることを示すことができる第1のステータスを
製品に割り当てるために、データベース408を修正することができる。
【0101】
[00111] ブロック603で、1つまたは複数のプロセッサ305は、
図4の在庫補充メッ
セージ409などの在庫補充メッセージを受信することができる。在庫補充メッセージは
、在庫切れの製品が在庫ありであり、ユーザによる購入のために利用可能であることを示
すことができる。補充メッセージは、製品に関連付けられた製品識別子を識別することが
でき、在庫補充後に利用可能な製品の数量を識別することもできる。追加または代替とし
て、補充メッセージは、製品ID、アイテムID、ベンダアイテムID、または製品に関
連付けられたベンダアイテムパッケージIDのうちの少なくとも1つを備えることができ
る。製品IDは、製品のカテゴリに関連付けられた製品識別子を含むことができる。アイ
テムIDは、製品の1つまたは複数の属性、例えば、色、サイズ、製造業者、材料、また
はブランドを示す、製品に関連付けられた製品識別子を含むことができる。ベンダアイテ
ムIDは、製品のベンダも識別する製品に関連付けられた製品識別子を含むことができる
。ベンダアイテムパッケージIDは、購入可能なベンダによって販売された製品の集合に
関連付けられた製品識別子を含むことができる。ベンダアイテムパッケージIDは、製品
のコレクションのベンダを識別することもできる。
【0102】
[00112] ブロック603で補充メッセージを受信した後、方法600は、ブロック604
に進むことができる。ブロック604において、1つ以上のプロセッサ305は、データ
ベース408内の製品識別子を検索し、データベース408を修正して、製品識別子に関
連する製品に第2のステータスを割り当てるように構成することができる。第2のステー
タスは、製品が在庫ありに戻っており、購入可能であることを示すことができる。1つ以
上のプロセッサ305はまた、データベース408を修正して、在庫補充後の購入に利用
可能な製品の数量を変更するように構成されてもよい。
【0103】
[00113] 方法600は、ブロック605に進んでもよいが、この場合、1つ以上のプロセ
ッサ305は、バッチフレームワーク410のようなバッチフレームワークによって決定
された通知スケジュールに基づいて、在庫補充通知をユーザに送信することができる。い
くつかの実施形態では、特定の製品についてユーザに送信される在庫補充通知は、受信者
名(例えば、ユーザの名前)、製品名(例えば、在庫が戻っている特定の製品の名前)、
特定の製品の画像、または特定の製品に関連付けられたリンクのうちの少なくとも1つを
含むことができる。特定の製品に関連付けられたリンクは、単一詳細ページ(SDP)リ
ンクである場合があり、これを介して、ユーザは、特定の製品に関連付けられた詳細情報
を示すSDPにアクセスすることができる。
図4を参照して上述したように、1つ以上の
プロセッサ305は、バッチフレームワークを構成して、データベース508を分析し、
第2のステータスが割り当てられた製品を識別することができ、これは、製品が元のステ
ータスに戻っていることを示す。いくつかの実施形態では、1つまたは複数のプロセッサ
305は、利用可能な各製品の量を決定するためにデータベース508を分析するように
バッチフレームワークを構成することもできる。バッチフレームワークは、第2のステー
タスが割り当てられた製品と、在庫補充通知の保留中の要求がある製品とを識別すること
ができる。在庫補充通知のための保留中の要求を有する製品について、バッチフレームワ
ークは、在庫補充通知をユーザに送信するための通知スケジュールを決定することができ
る。
【0104】
[00114] 例えば、バッチフレームワークは、在庫補充通知をユーザに送信するための通知
スケジュールを決定するように構成することができ、その結果、ユーザは、製品が在庫あ
りに戻るとすぐに、またユーザがアクティブになるときに、在庫補充通知を受信する。一
例として、1つ以上のプロセッサ305は、モバイルAPI403、ウェブブラウザ40
4、モバイルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも1
つについて、ユーザの活動傾向を決定することができる。決定されたユーザの活動傾向に
基づいて、1つ以上のプロセッサ305は、時間枠を決定することができ、その時間枠の
間、ユーザは、モバイルAPI403、ウェブブラウザ404、モバイルウェブブラウザ
405、またはカートウェブブラウザ406の少なくとも1つでアクティブである可能性
が最も高い。1つ以上のプロセッサ305は、ユーザの活動傾向情報および時間枠情報を
データベース408に記憶することができる。データベース408に記憶されたユーザの
情報に基づいて、バッチフレームワークは、ユーザに在庫補充通知を送信するための通知
スケジュールを決定することができる。したがって、バッチフレームワークは、1つ以上
のプロセッサ305が時間枠内にユーザに在庫補充通知を送信することを可能にしてもよ
く、その時間枠の間に、ユーザは在庫補充通知をチェックする可能性が最も高い。したが
って、バッチフレームワークは、モバイルAPI403、ウェブブラウザ404、モバイ
ルウェブブラウザ405、またはカートウェブブラウザ406の少なくとも1つに関する
各ユーザの活動傾向に基づいて、各ユーザに対してカスタマイズされる通知スケジュール
を決定することができる。
【0105】
[00115] いくつかの実施形態では、バッチフレームワークはまた、1つ以上のプロセッサ
305が時間枠の外でユーザに在庫補充通知を送信しないように通知スケジュールを決定
してもよく、その時間枠の間、ユーザは在庫補充通知をチェックする可能性が最も高い。
他の実施形態では、バッチフレームワークは、1つまたは複数のプロセッサ305が通知
スケジュールに基づいて補充通知のアラートタイプを調整するように構成され得るように
、通知スケジュールを決定することができる。例えば、バッチフレームワークは、1つ以
上のプロセッサ305が午前0時などの特定の時間の後にユーザに送信される任意の在庫
補充通知をミュートするように構成されてもよいように、通知スケジュールを生成しても
よい。
【0106】
[00116] バッチフレームワークによって決定された通知スケジュールに基づいて、1つ以
上のプロセッサ305は、メッセージングプラットフォーム411などの1つ以上のメッ
セージングプラットフォームを介して、在庫補充通知をユーザに送信することができる。
メッセージングプラットフォーム411は、ユーザにメッセージを交換することが可能な
任意のインターネットインフラストラクチャを含むことができる。例えば、メッセージプ
ラットフォーム411は、電子メール、ショートメッセージサービス、ソフトウェアアプ
リケーション、API、インスタントメッセージング、またはこれらの任意の組み合わせ
を含むことができる。いくつかの実施形態では、ユーザは、例えば、自分のプロファイル
にログインすることによって、自分の好ましいメッセージングプラットフォーム411を
選択することができる。例えば、ユーザは、電子メールを介して、またはモバイルAPI
403のようなモバイルアプリケーションを介してプッシュ通知を介して、在庫補充通知
を受信することを選択することができる。
【0107】
[00117]
図7は、在庫補充通知を提供するための方法700を示すフローチャートである
。この例示的な方法は、例として提供される。
図7に示される方法700は、様々なシス
テムの1つまたは複数の組合せによって実行されるか、さもなければ実行されることがで
きる。以下に説明する方法700は、例として
図3に示すように、在庫補充通知システム
301によって実行することができ、在庫補充通知システム301の1つまたは複数の要
素は、
図7の方法を説明する際に参照される。
図7に示される各ブロックは、例示的な方
法700における1つまたは複数のプロセス、方法、またはサブルーチンを表す。
図7を
参照すると、例示的な方法700は、ブロック701で開始することができる。
【0108】
[00118] ブロック701において、1つまたは複数のプロセッサ305は、第1の製品に
関連する在庫補充通知のための第1の要求を受信することができる。ブロック702にお
いて、1つまたは複数のプロセッサ305は、第2の製品に関連する在庫補充通知のため
の第2の要求を受信することができる。いくつかの実施形態では、第1の要求および第2
の要求が同じユーザからのものであってもよい。他の実施形態では、第1の要求は第1の
ユーザからのものであってもよく、第2の要求は第2のユーザからのものであってもよい
。ユーザは、モバイルAPI403、ウェブブラウザ404、モバイルウェブブラウザ4
05、またはカートウェブブラウザ406の少なくとも1つを介して、在庫補充通知の要
求を送ることができる。次いで、1つまたは複数のプロセッサ305は、カートAPI4
07a~cのうちの少なくとも1つを介して、またはカートウェブブラウザ406を介し
て直接、第1の要求および第2の補充通知要求を受信することができる。
【0109】
[00119] 在庫補充通知のための第1および第2の要求を受信した後、方法700は、ブロ
ック703に進むことができる。ブロック703において、1つ以上のプロセッサ305
は、データベース408のようなデータベースを修正して、第1の製品および第2の製品
に第1のステータスを割り当てることができる。第1のステータスは、第1の製品および
第2の製品が在庫切れであることを示すことができる。
図4を参照して上述したように、
データベース408は、第1および第2の製品に関連する情報を格納することができ、こ
れには第1および第2の製品に関連する製品識別子(例えば、在庫管理ユニット(SKU
))、第1および第2の製品の利用可能な数量、第1および第2の製品の利用可能性を示
すステータス、第1および第2の製品について保留中の在庫補充通知の要求の数、および
/または第1および第2の製品についての在庫補充通知が送信されたかどうかを示すステ
ータスが含まれるが、これらに限定されない。
【0110】
[00120] ブロック704において、1つまたは複数のプロセッサ305は、
図4の1つま
たは複数の在庫補充メッセージ409などの在庫補充メッセージを受信することができる
。在庫補充メッセージ(複数可)は、第1の製品および第2の製品が在庫ありに戻ってお
り、購入に利用可能であることを示すことができる。在庫補充メッセージは、第1および
第2の製品に関連付けられた製品識別子を識別することができ、在庫補充後に利用可能な
第1および第2の製品の量を識別することもできる。追加または代替として、在庫補充メ
ッセージは、第1および第2の製品のそれぞれに関連付けられた製品ID、アイテムID
、ベンダアイテムID、またはベンダアイテムパッケージIDのうちの少なくとも1つを
備えることができる。製品IDは、製品のカテゴリに関連付けられた製品識別子を含むこ
とができる。アイテムIDは、製品の1つまたは複数の属性、例えば、色、サイズ、製造
業者、材料、またはブランドを示す、製品に関連付けられた製品識別子を含むことができ
る。ベンダアイテムIDは、製品のベンダも識別する製品に関連付けられた製品識別子を
含むことができる。ベンダアイテムパッケージIDは、購入可能なベンダによって販売さ
れた製品のコレクションに関連付けられた製品識別子を含むことができる。ベンダアイテ
ムパッケージIDは、製品のコレクションのベンダを識別することもできる。
【0111】
[00121] ブロック704において在庫補充メッセージを受信した後、方法700は、ブロ
ック705に進むことができる。ブロック705において、1つ以上のプロセッサ305
は、データベース408内の製品識別子を検索し、データベース408を修正して、製品
識別子に関連する第1および第2の製品に第2のステータスを割り当てるように構成され
てもよい。第2のステータスは、第1および第2の製品が在庫ありに戻されており、購入
可能であることを示すことができる。1つ以上のプロセッサ305はまた、データベース
408を修正して、在庫補充後の購入に利用可能な第1および第2の製品の数量を変更す
るように構成されてもよい。
【0112】
[00122] 第2のステータスを第1および第2の製品に割り当てた後、方法700はブロッ
ク706に進むことができる。ブロック706において、1つまたは複数のプロセッサ3
05は、第1および第2の製品の量が所定のしきい値を超えるかどうかを判定することが
できる。例えば、ブロック704において第1および第2の製品の在庫補充メッセージを
受信した後、1つまたは複数のプロセッサ305は、利用可能な第1および第2の製品の
量を決定することができる。1つまたは複数のプロセッサ305は、在庫補充後の第1お
よび第2の製品の量を所定の閾値と比較し、比較に基づいて、在庫補充通知をユーザに送
信するかどうかを判定することができる。例えば、在庫補充後の第1および第2の製品の
それぞれの量が所定の閾値未満である場合、1つまたは複数のプロセッサ305は、各製
品の量が所定の閾値を超えるまで在庫補充通知を送信しなくてもよい。同様に、在庫補充
後の第1および第2の製品のそれぞれの量が所定の閾値を超える場合、1つまたは複数の
プロセッサ305は、在庫補充通知をユーザに送信することに進むことができる。所定の
閾値は、各製品の消費者需要に応じて、各製品ごとに変化することができる。例えば、各
製品の所定の閾値は、各製品が素早く在庫切れになるのを防止するために、各製品の消費
者需要に正比例することができる。
【0113】
[00123] 1つまたは複数のプロセッサ305が第1の製品および/または第2の製品の量
が所定の閾値未満であると判定した場合、方法700は、ブロック707において終了す
ることができ、在庫補充通知は、ユーザに送信されない。代わりに、1つまたは複数のプ
ロセッサ305が、第1の製品および/または第2の製品の量が所定の閾値を超えると判
定した場合、方法700は、ブロック708に進むことができる。ブロック708におい
て、1つまたは複数のプロセッサ305は、第1の製品に関連する在庫補充通知のための
第1の要求(ブロック701)が第2の製品に関連する在庫補充通知のための第2の要求
(ブロック702)に関連するかどうかを判定することができる。
【0114】
[00124] 上の
図5を参照して議論したように、例えば、バッチフレームワークは、データ
ベース408内の各要求に関連するユーザIDを識別することによって、第1の要求と第
2の要求の両方が同じユーザからのものであることを決定してもよい。第1の要求に関連
付けられたユーザIDが第2の要求に関連付けられたユーザIDと同じ場合、バッチフレ
ームワークは、第1の要求と第2の要求が同じユーザからのものであると判断する場合が
ある。次いで、バッチフレームワークは、例えば、各要求に関連付けられた製品を比較す
ることによって、第1の要求が第2の要求に関連付けられているかどうかを判定すること
ができる。例えば、バッチフレームワークは、在庫補充通知のための第1の要求に関連付
けられた第1の製品が在庫補充通知のための第2の要求に関連付けられた第2の製品と同
じであるかどうかを判定することができる。第1の要求および第2の要求にそれぞれ関連
付けられた第1の製品および第2の製品が同じである場合、バッチフレームワークは、第
1の要求および第2の要求が関連していると判定することができる。
【0115】
[00125] バッチフレームワークが在庫補充通知のための第1および第2の要求が関連して
いると判定した場合、方法700は、ブロック710に進むことができる。ブロック71
0において、1つ以上のプロセッサ305は、バッチフレームワークを構成して、1つ以
上のプロセッサ305が第1の製品と第2の製品の両方について1つの在庫補充通知のみ
をユーザに送信し、それによって重複メッセージがユーザに送信されるのを防ぐように通
知スケジュールを生成することができる。一方、バッチフレームワークは、補充通知のた
めの第1および第2の要求が関連していないと判定することができる。例えば、バッチフ
レームワークは、在庫補充通知のための第1の要求に関連付けられた第1の製品が在庫補
充通知のための第2の要求に関連付けられた第2の製品と同じではないと判定することが
できる。例えば、ユーザは、2つの異なる製品に対する在庫補充通知のための2つの異な
る要求を送信したかもしれない。バッチフレームワークが在庫補充通知のための第1およ
び第2の要求が関連していないと判定した場合、方法700は、ブロック709に進むこ
とができる。ブロック709において、1つまたは複数のプロセッサ305は、第1の製
品に関する第1の在庫補充通知をユーザに送信し、第2の製品に関する別個の第2の在庫
補充通知をユーザに送信することができる。
【0116】
[00126] 本開示はその特定の実施形態を参照して示され、説明されてきたが、本開示は修
正なしに、他の環境において実施され得ることが理解されるのであろう。前述の説明は、
例示の目的で提示されている。これは、網羅的ではなく、開示された正確な形態または実
施形態に限定されない。当業者には、開示された実施形態の明細書および実施を考慮する
ことによって、修正および適合が明らかになるのであろう。加えて、開示された実施形態
の態様はメモリに格納されるものとして説明されているが、当業者はこれらの態様が例え
ばハードディスクまたはCD ROM、あるいは他の形態のRAMまたはROM、USB
媒体、DVD、ブルーレイ、または他の光学ドライブ媒体などの二次記憶デバイスなどの
他のタイプのコンピュータ読取可能媒体に格納され得ることを理解するのであろう。
【0117】
[00127] 記載された説明および開示された方法に基づくコンピュータプログラムは、熟練
した開発者の技術の範囲内である。様々なプログラムまたはプログラムモジュールを、当
業者に知られている技法のいずれかを使用して作成することができ、または既存のソフト
ウェアに関連して設計することができる。例えば、プログラムセクションまたはプログラ
ムモジュールは、.Net Framework、.Net Compact Fram
ework(およびVisual Basic、Cなどの関連言語)、Java、C++
、Objective-C、HTML、HTML/AJAXの組み合わせ、XML、また
はJavaアプレットを含むHTML内で、またはこれらの手段によって設計することが
できる。
【0118】
[00128] さらに、例示的な実施形態が本明細書で説明されてきたが、本開示に基づいて当
業者によって理解されるように、同等の要素、修正、省略、組み合わせ(例えば、様々な
実施形態にわたる態様の)、適応、および/または変更を有する任意のおよびすべての実
施形態の範囲。クレームの限定はクレームに使用されている文言に広く基づいて解釈され
るものとし、本明細書に記載されている例に限定されるものではなく、又は出願手続中に
解釈されるものとする。実施例は、非排他的であると解釈されるべきである。さらに、開
示された方法のステップは、ステップを並べ替えること、および/またはステップを挿入
または削除することを含む、任意の方法で修正されてもよい。したがって、本明細書およ
び実施例は単に例示的なものとみなされ、真の範囲および精神は以下の特許請求の範囲お
よびそれらの均等物の全範囲によって示されることが意図される。