以下、図面を参照して本発明の実施形態について説明する。以下に説明する実施の形態は、配達注文された配達物の配達を支援する配達支援システムに対して本発明を適用した場合の実施形態である。なお、本実施形態では、配達物として、店舗により販売される商品(いわゆるデリバリー商品)を例にとって説明するが、商品以外の物であってもよい。商品の例として、日用品、ベビー用品(おむつ、ミルクなど)、食品(ピザ、弁当、カレーなど)等が挙げられる。
[1.配達支援システムの構成及び機能概要]
先ず、図1等を参照して、本実施形態に係る配達支援システムSの構成及び概要機能について説明する。図1は、本実施形態に係る配達支援システムSの概要構成例を示す図である。図1に示すように、配達支援システムSは、ユーザ端末UTn(n=1,2,3・・・k)、店舗端末STm(m=1,2,3・・・l)、及び情報提供サーバSA等を含んで構成される。情報提供サーバSAは、ネットワークNWに接続されている。ユーザ端末UTn、及び店舗端末STmは、それぞれ、ネットワークNWを介して情報提供サーバSAにアクセスして、情報提供サーバSAと通信可能になっている。ネットワークNWは、例えば、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網(基地局等を含む)、及びゲートウェイ等により構築される。
ユーザ端末UTnは、商品の配達注文を行うユーザ(利用者)により使用される端末装置である。店舗端末STmは、配達先への商品の配達注文を受け付ける(受ける)店舗(配達者の一例)の管理者により使用される端末装置である。ユーザ端末UTn及び店舗端末STmは、それぞれ、操作部、表示部、通信部、記憶部、及び制御部等を備える。操作部は、キーボード及びマウス等を備える。表示部は、各種情報を表示するためのディスプレイを備える。なお、操作部と表示部とを兼ねるタッチパネルが適用されてもよい。通信部は、ネットワークNWに接続して通信状態の制御を行う。記憶部は、例えば、ハードディスクドライブ等からなり、オペレーティングシステム(O/S),アプリケーション,及びブラウザ等の各種プログラムを記憶する。制御部は、プロセッサとしてのCPU(Central Processing Unit)(プロセッサ),ROM(Read Only Memory),及びRAM(Random Access Memory)等を備える。ユーザ端末UTn、及び店舗端末STmには、それぞれ、例えば、パーソナルコンピュータ(PC)、携帯電話機、携帯情報端末 (PDA:Personal Digital Assistant)、携帯電話機と携帯情報端末を融合させた携帯端末(Smartphone)、タブレット端末、または携帯ゲーム機等の端末装置が適用可能である。なお、ユーザ端末UTnには、GPS(Global Positioning System)受信部が備えられてもよい。GPS受信部は、GPS衛星から出力される航法電波を、アンテナを介して受信し、ユーザ端末UTnの現在位置の経度及び緯度を取得する。
次に、情報提供サーバSAは、例えばシステム提供者により運営されるサーバであり、本発明の情報処理装置の一例である。図2(A)は、本実施形態に係る情報提供サーバSAの概要構成例を示すブロック図である。図2(A)に示すように、情報提供サーバSAは、通信部1、記憶部2、入出力インターフェース部3、及びシステム制御部4等を備える。システム制御部4と入出力インターフェース部3とは、システムバス5を介して接続される。情報提供サーバSAは、機能分割された複数のサーバから構成されてもよい。通信部1は、ネットワークNWに接続して通信を行う機能を担う。記憶部2は、例えば、ハードディスクドライブ等からなり、オペレーティングシステム,サーバプログラム(本発明の情報処理プログラムを含む)等を記憶する。サーバプログラムは、所定のサーバから情報提供サーバSAにダウンロードされる。或いは、サーバプログラムは、CD、DVD、BDなどの記録媒体に記録(コンピュータにより読み取り可能に記録)されており、当該記録媒体から読み込まれて記憶部2に記憶されるようにしてもよい。また、記憶部2には、ユーザ端末UTn、または店舗端末STmに提供する各種画面の表示データが記憶されている。このような表示データは、例えば、Webページのデータ(例えば、HTML(HyperText Markup Language)等の構造化文書データ等)から構成することができる。さらに、記憶部2には、ユーザ情報データベース(DB)21、店舗情報データベース(DB)22、商品情報データベース(DB)23、注文情報データベース(DB)24等が構築される。なお、これらのデータベースは、情報提供サーバSA以外のサーバに備えられてもよい。
図3(A)は、ユーザ情報データベース21に格納される内容の一例を示す図であり、図3(B)は、店舗情報データベース22に格納される内容の一例を示す図であり、図3(C)は、商品情報データベース23に格納される内容の一例を示す図である。図4は、注文情報データベース24に格納される内容の一例を示す図である。ユーザ情報データベース21には、図3(A)に示すように、ユーザID、ユーザ名、住所、電話番号、電子メールアドレス、購入履歴、検索履歴、閲覧履歴等の情報がユーザ毎に対応付けられて格納されている。ここで、ユーザID、ユーザ名、住所、電話番号、及び電子メールアドレスは、ユーザ端末UTnからの登録要求または更新要求に応じてユーザ情報データベース21に格納される。ユーザIDは、登録されたユーザを識別する識別情報であり、パスワード(図示せず)と共にユーザのログインに用いられる。購入履歴には、ユーザの配達注文により商品が購入された購入日時、当該商品の配達先、当該商品の商品ID、当該商品の数量、当該商品の支払金額、及び当該商品を配達した店舗の店舗ID等の情報が含まれる。商品IDは、商品を識別する識別情報である。店舗IDは、登録された店舗を識別する識別情報である。配達先(配達先の位置情報)は、例えば、ユーザの現在位置の経度及び緯度、またはユーザの住所を示す。検索履歴は、ユーザのログイン後、ユーザ端末UTnからの検索要求に応じてユーザ情報データベース21に格納される。検索履歴には、ユーザにより店舗が検索された日時、当該店舗の店舗ID等の情報が含まれる。閲覧履歴は、ユーザのログイン後、ユーザ端末UTnからの閲覧要求に応じてユーザ情報データベース21に格納される。閲覧履歴には、ユーザにより店舗の情報が閲覧された日時、当該店舗の店舗ID等の情報が含まれる。
店舗情報データベース22には、図3(B)に示すように、店舗ID、店舗名、電子メールアドレス、配達元、配達リソース数、基準配達エリア、拡張配達エリア(拡張エリア)、配達条件、最低注文金額、利用可能な決済方法(現金決済、カード決済(クレジットカード決済)、ポイント決済等)、及び店舗により販売される商品の広告情報(商品のPRや画像(店舗画像または商品画像)を含む)等が店舗毎に対応付けられて格納されている。店舗ID、店舗名、配達元、配達リソース数、基準配達エリア、拡張配達エリア、最低注文金額、利用可能な決済方法、及び商品の広告情報は、店舗端末STmからの登録要求または更新要求に応じて店舗情報データベース22に格納される。店舗IDは、パスワード(図示せず)と共に店舗のログインに用いられる。図3(B)に示す配達元(配達元の位置情報)は、配達注文対象となる商品の在庫が存在する地点(配達出発地点)の経度及び緯度に対応する座標(x,y)を示しているが、当該地点の住所を示してもよい。配達リソース数は、商品を配達する配達手段(配達員+配達車)の数である。図3(B)の例では、店舗s1及び店舗s2の配達リソース数は、それぞれ、2となっている。配達リソース数は、同じ店舗であっても、時間帯によっては変更される場合もある。
基準配達エリアは、配達注文を受け付ける基準となる配達エリア(最初の配達エリアとなる)であり、例えば行政区画などに基づき各店舗により任意に決定され、店舗情報データベース22に格納される。図3(B)の例では、店舗s1の基準配達エリアは、複数に分割されたAr001〜Ar070までの70の分割エリアの集合となっており、店舗s2の基準配達エリアは、複数に分割されたAr151〜Ar250までの100の分割エリアの集合となっている。1つの分割エリア(例えば、Ar001)は、例えば経度及び緯度(つまり、分割エリア内の各地点の経度及び緯度に対応する座標(x,y)の集合)により示される。本実施形態では、予め複数に分割された基準配達エリアを用いることで、後述するように、新たな配達エリアを決定するための処理負荷(CPU負荷)を低減することができる。ただし、複数に分割された基準配達エリアを用いずに、システム制御部4により新たな配達エリアを決定するように構成してもよい。なお、基準配達エリアが例えば行政区画及び道路(一方通行の道路も含む)などが考慮されて分割されることで分割エリアが決定される。このため、それぞれの分割エリアの平面形状及び面積は異なる場合もある。
本実施形態では、店舗の配達員により繰り返し行われる配達において1回(配達員が配達元を出発してから当該配達を終えて当該配達元に戻ってくるまでを1回とする)の配達エリアは、配達注文に応じて、所定の配達条件の下、基本的に、基準配達エリア内で変化する。ただし、基準配達エリア外であっても上記配達条件を満たすエリアであれば、配達エリアとして決定される。つまり、1回の配達エリアは、配達注文に応じて、基準配達エリアを超えて、配達条件を満たすエリアにまで拡張可能になっている。このように、基準配達エリアを超えて配達エリアになりうるエリアを拡張配達エリア(換言すると、基準配達エリア外における配達エリアの候補)という。拡張配達エリアは、基準配達エリアと同様、例えば行政区画などに基づき各店舗により任意に決定され、店舗情報データベース22に格納される。図3(B)の例では、店舗s1の拡張配達エリアは、複数に分割されたAr071〜Ar140までの70の分割エリアの集合となっており、店舗s2の拡張配達エリアは、複数に分割されたAr251〜Ar350までの100の分割エリアの集合となっている。本実施形態では、予め複数に分割された拡張配達エリアを用いることで、後述するように、新たな配達エリアを決定するための処理負荷(CPU負荷)を低減することができる。ただし、複数に分割された拡張配達エリアを用いずに、システム制御部4により新たな配達エリアを決定するように構成してもよい。なお、1つの分割エリアは、基準配達エリアの場合と同様、例えば経度及び緯度により示され、行政区画及び道路などが考慮されて決定される。店舗情報データベース22に格納された拡張配達エリアのうち、配達条件を満たす拡張配達エリアが、実際の配達エリアとなる。
このような配達条件は、例えば、店舗端末STmからの設定要求に応じて設定される。例えば配達条件として、例えば配達許容時間が設定され、店舗情報データベース22に格納される。これにより、例えば、店舗情報データベース22に格納された拡張配達エリア(例えば、Ar071〜Ar140)のうち、配達条件として設定された配達許容時間内に配達可能な拡張配達エリア(例えば、Ar091-Ar097)が、配達条件を満たす拡張配達エリアとなる。ここで、配達許容時間は、特に商品が食品である場合、当該食品の品質(賞味期限、鮮度等)を維持するための時間(ある程度の余裕時間を含むとよい)として設定される。例えば、食品がピザであれば、ピザが冷めない時間が考慮され、配達許容時間は例えば40分程度に設定される。この場合、商品を配達するために配達員が配達元を出発してから(換言すると、例えばピザが出来上がってから)当該配達許容時間内に配達可能な拡張配達エリアが、配達条件を満たす拡張配達エリアとなる。或いは、配達許容時間は、商品を配達するために配達員が配達元を出発してから当該配達を終えて当該配達元に戻ってくるまでの時間(ある程度の余裕時間を含むとよい)として設定されてもよい。この場合、商品を配達するために配達員が配達元を出発してから配達許容時間(例えば、60分程度)内に戻ってくることが可能な拡張配達エリアが、配達条件を満たす拡張配達エリアとなる。なお、配達条件として、基準配達エリアの外縁部分からの距離が設定され、店舗情報データベース22に格納されてもよい。この場合、基準配達エリアの外縁部分から配達条件として設定された距離内の拡張配達エリアが、配達条件を満たす拡張配達エリアとなる。
商品情報データベース23には、図3(C)に示すように、店舗ID、店舗により販売される商品の商品ID、当該商品の商品名、当該商品のジャンル(例えば、商品カテゴリ)、当該商品の販売価格、当該商品の在庫数、当該商品の受注数、当該商品の被検索数、及び当該商品の被閲覧数等が店舗毎に対応付けられて格納されている。ここで、店舗ID、商品ID、商品名、ジャンル、及び販売価格は、店舗端末STmからの登録要求または更新要求に応じて店舗情報データベース22に格納される。また、在庫数、及び受注数は、ユーザ端末UTnからの配達注文に応じて更新される。被検索数は、ユーザ端末UTnからの検索要求に応じて更新され、被閲覧数は、ユーザ端末UTnからの閲覧要求に応じて更新される。
注文情報データベース24には、図4に示すように、店舗ID、配達リソースID、配達回、配達エリア、配達注文の注文番号、当該配達注文の注文日時、出発予定時刻、配達先、配達予定時刻、当該配達注文された商品の商品ID、当該商品の数量、及び当該商品の支払金額等が店舗毎に対応付けられて格納されている。ここで、配達リソースIDは、店舗端末STmからの登録要求または更新要求に応じて、当該店舗端末STmに対応する店舗の店舗IDに対応付けられて注文情報データベース24に格納される。配達リソースIDは、配達リソース(配達手段)を識別する識別情報である。配達リソースには、配達注文が割り当てられるようになっている。配達注文の配達リソースへの割り当て処理において、当該配達注文についての注文番号、注文日時、出発予定時刻、配達先、配達予定時刻、商品ID、数量、及び支払金額等が、当該配達リソースの配達リソースID及びその配達エリアに対応付けられて注文情報データベース24に格納されることになる。このとき、注文者の氏名、及び注文者の電話番号が当該配達リソースIDに対応付けられて注文情報データベース24に格納されてもよい。なお、図4に示す配達先は、商品の到着地点(つまり、商品の配達注文を行ったユーザが当該商品を受け取る地点)の経度及び緯度に対応する座標(x,y)を示しているが、当該地点の住所を示してもよい。
配達回は、何回目の配達であるかを示し、例えば日毎に1からカウントされる。配達エリアは、配達注文が配達リソースに割り当てられる前において基準配達エリアに初期設定されており、配達注文が配達リソースに割り当てられる度に、上記配達条件に基づき、当該配達リソースについて変化する。例えば、図4において、配達リソースID“R002”に対応付けられた1回目の配達エリアは、基準配達エリアAr001〜Ar070中のAr025〜Ar033と、拡張配達エリアAr071〜Ar140中のAr091〜Ar097とからなっている。この配達エリアは、注文番号“1111”の配達注文が配達リソースID“R002”の配達リソースに割り当てられたことにより、上記配達条件に基づいて決定された配達エリア(つまり、基準配達エリアAr001〜Ar070から変化した配達エリア)である。このため、配達リソースID“R002”の配達リソースには、配達エリアAr025〜Ar033&Ar091〜Ar097内で、且つ、出発予定時刻まで、別の配達注文をさらに割り当て可能になる。言い換えれば、配達リソースID“R002”の配達リソースについて、縮小された配達エリアAr025〜Ar033&Ar091〜Ar097に配達注文を割り当てることができる。なお、出発予定時刻は、配達員が配達注文された商品を配達するために配達元から出発する予定時刻である。配達予定時刻は、配達員が配達先に到着する予定時刻(到着予定時刻)である。一方、図4において、配達リソースID“R011”に対応付けられた1回目の配達エリアは、割当完了となっている。これは、配達リソースID“R011”の配達リソースに対して、3つの配達注文(注文番号“2111”、“2113”、及び“2114”のそれぞれに対応する配達注文)が割り当てられたことで、上記配達条件を満たす配達エリア(基準配達エリア及び拡張配達エリア)がなくなったためである。これにより、配達リソースID“R011”の配達リソースには、2回目の配達エリアAr151〜Ar250内で、配達注文が割り当て可能になる。
図5〜図7は、店舗s2の配達エリアが配達注文に応じて変化する様子を示す概念図であり、図4の例に対応している。図5(A)は、配達注文がまだ受け付けられていない6/1 9:19時点の配達エリア(斜線部)を示している。図5(A)の時点の配達エリアは基準配達エリアに等しい。図5(B)は、6/1 9:20(注文日時)に配達注文が受け付けられた後の9:24時点の配達エリアを示している。図5(B)の場合、6/1 9:20に受け付けられた配達注文(配達先D11への配達注文)が、配達リソースID“R011”の配達リソースに割り当てられたことにより、当該配達リソースID“R011”に対応付けられた1回目の配達エリアは、図5(A)に示す基準配達エリアから、配達許容時間内(例えば、配達元O2から配達先D11までの配達経路上の地点から配達許容時間内)に配達可能な新たな配達エリアAr161〜Ar186&Ar261〜Ar269に変化している。つまり、配達リソースID“R011”に対応付けられた1回目の配達エリアは、基準配達エリアAr151〜Ar250内でAr025〜Ar033に縮小され、且つ基準配達エリアAr151〜Ar250外でAr261〜Ar269に拡張されている。なお、この場合、配達リソースID“R012”の配達リソースには、配達注文が割り当てられていないので、当該配達リソースID“R012” に対応付けられた1回目の配達エリアは、基準配達エリアのままである。このため、6/1 9:24時点で店舗s2が配達注文を受け付け可能な配達エリアは、配達リソースID“R011”に対応付けられた1回目の配達エリアと、配達リソースID“R012”に対応付けられた1回目の配達エリアとを合わせたエリアとなる。
図6(A)は、6/1 9:25(注文日時)に配達注文が受け付けられた後の9:26時点の配達エリアを示している。図6(A)の場合、6/1 9:25に受け付けられた配達注文(配達先D21への配達注文)が、配達リソースID“R012”の配達リソースに割り当てられたことにより、当該配達リソースID“R012”に対応付けられた1回目の配達エリアは、図5(A)に示す基準配達エリアから、配達許容時間内(例えば、配達元O2から配達先D21までの配達経路上の地点から配達許容時間内)に配達可能な新たな配達エリアAr201〜Ar226&Ar301〜Ar326に変化している。図6(B)は、6/1 9:30(注文日時)に配達注文が受け付けられた後の9:31時点の配達エリアを示している。図6(B)の場合、6/1 9:30に受け付けられた配達注文(配達先D12への配達注文)が、配達リソースID“R011”の配達リソースに割り当てられたことにより、当該配達リソースID“R011”に対応付けられた1回目の配達エリアは、図6(A)に示す配達エリアAr161〜Ar186&Ar261〜Ar269から、配達許容時間内(例えば、配達元O2から配達先D12までの配達経路上の地点から配達許容時間内)に配達可能な新たな配達エリアAr166〜Ar180&Ar257〜Ar266に変化している。図7(A),(B)は、6/1 9:40(注文日時)に配達注文が受け付けられた後の9:41時点の配達エリアを示している。図7(A)の場合、6/1 9:40に受け付けられた配達注文(配達先D13への配達注文)が、配達リソースID“R011”の配達リソースに割り当てられたことにより、以降の配達注文に対して配達許容時間内に配達不能になるため、当該配達リソースID“R011”に対応付けられた1回目の配達エリアは、割当完了となる。これにより、図7(B)に示すように、配達リソースID“R011” に対応付けられた2回目の配達エリアが、基準配達エリアAr151〜Ar250で設定されることになる。なお、1回目の配達エリアへの配達注文の割当完了が完了していない場合であっても、2回目の配達エリアに配達注文を割り当てできるように構成してもよい。
システム制御部4は、プロセッサであるCPU41(コンピュータの一例),ROM42,及びRAM43等を備え、OS上でサーバプログラム等を実行する。図2(B)は、システム制御部4における機能ブロックの一例を示す図である。システム制御部4(システム制御部4内のプロセッサ)は、サーバプログラム等の実行により、図2(B)に示すように、検索要求受信部41a、検索処理部41b、検索結果送信部41c、配達注文取得部41d、配達注文処理部41e、配達エリア決定部41f、配達エリア更新部41g等として機能する。なお、検索要求受信部41aは、本発明における受信手段の一例である。検索処理部41bは、本発明における特定手段、及び第2特定手段の一例である。検索結果送信部41cは、本発明における送信手段の一例である。配達注文取得部41dは、本発明における取得手段の一例である。配達注文処理部41eは、本発明における特定手段、及び第1特定手段の一例である。配達エリア決定部41fは、本発明における決定手段の一例である。配達エリア更新部41gは、本発明における更新手段の一例である。
検索要求受信部41aは、ユーザ端末UTnから配達先の位置情報を含む検索要求を通信部1を介して受信する。検索処理部41bは、検索要求受信部41aにより受信された検索要求に応じて、当該検索要求に係る配達先へ商品を配達可能な店舗を検索する。配達先へ商品を配達可能な店舗とは、配達先への商品の配達注文を受け付ける店舗である。具体的には、検索処理部41bは、配達物の配達先の位置情報が示す位置を含む配達エリアを注文情報データベース24から特定し、特定した配達エリアに対応付けられた店舗(店舗ID)を特定する。こうして特定された店舗は、検索によりヒットした店舗である。なお、検索者により配達希望時刻が指定された場合、当該検索要求には配達希望時刻に含まれる。
ここで、配達エリアは、上述したように配達注文に応じて変化するので、同じ配達先であっても、店舗が特定されるタイミングと、店舗が特定されないタイミングとがある。このことについて、図4に示す店舗ID“s002”に対応付けられた配達エリアを例にとって説明する。検索要求に係る配達先の位置情報が示す位置が拡張配達エリアAr262内に含まれる場合、図5(A)に示すタイミング(つまり、6/1 9:19の時点)では、当該位置情報が示す位置は、店舗ID“s002”に対応付けられた1回目の配達エリアに含まれないので、店舗ID“s002”の店舗s2は特定されない。一方、図5(B)に示すタイミング(つまり、6/1 9:24の時点)では、当該位置情報が示す位置は、店舗ID“s002”に対応付けられた1回目の配達エリア(つまり、配達リソースID“R011”に対応付けられた配達エリア)に含まれるので、店舗ID“s002”の店舗s2は特定される。つまり、この場合、検索処理部41bは、当該検索要求に含まれる位置情報が示す位置を拡張配達エリアAr262に含む配達エリアを特定し、当該特定した配達エリアに対応付けられた店舗s2を特定することになる。
一方、検索要求に係る配達先の位置情報が示す位置が基準配達エリアAr190内に含まれる場合、図5(B)に示すタイミングでは、当該位置情報が示す位置は、店舗ID“s002”に対応付けられた1回目の配達エリア(つまり、配達リソースID“R012”に対応付けられた配達エリア)に含まれるので、店舗ID“s002”の店舗s2は特定される。しかし、図6(A)に示すタイミング(つまり、6/1 9:26の時点)では、当該位置情報が示す位置は、店舗ID“s002”に対応付けられた1回目の配達エリアに含まれない(配達リソースID“R011”に対応付けられた配達エリアと、配達リソースID“R012”に対応付けられた配達エリアとの何れにも含まれない)ので、店舗ID“s002”の店舗s2は特定されなくてよい。ただし、この場合、当該位置情報が示す位置は、店舗ID“s002”に対応付けられた2回目の配達エリアに含まれるとして、当該店舗ID“s002”の店舗s2は特定されてもよい。
検索結果送信部41cは、検索処理部41bにより特定された店舗(つまり、当該検索によりヒットした店舗)の情報を当該配達先へ配達可能な店舗の情報として表示させる表示データをユーザ端末UTnへ送信する。この表示データには、当該配達先へ配達可能な店舗の情報が含まれる。
配達注文取得部41dは、検索結果送信部41cにより配達先へ配達可能な店舗の情報が表示されたユーザ端末UTnから通信部1を介して受信された、商品の配達注文(配達注文情報)を示す配達要求を取得する。当該配達要求の受信により、当該配達要求が示す配達注文が受け付けられる。当該配達注文には、例えば、配達注文に係る商品の配達先の位置情報、当該商品の商品ID、数量、支払総額、当該商品の配達注文先となる店舗の店舗ID、注文者の氏名、及び注文者の電話番号が含まれる。注文者により配達希望時刻が指定された場合(例えば、店舗の検索時に指定された場合)、当該配達注文には配達希望時刻に含まれる。なお、配達注文取得部41dは、1つずつ配達注文を取得するのではなく、配達先の位置が異なる複数の配達注文を纏めて取得してもよい。
配達注文処理部41eは、配達注文取得部41dにより取得された配達注文に含まれる店舗IDに対応付けられた配達エリアのうち、当該配達注文に含まれる配達先の位置情報が示す位置を含む配達エリア、及び当該配達エリアに対応付けられた配達リソースIDを注文情報データベース24から特定する。
配達注文処理部41eは、特定した配達リソースIDに対応付けられた配達エリアに対して、当該配達注文を割り当てる。この割り当て処理において、配達注文処理部41eは、当該配達注文の注文番号、注文日時、出発予定時刻、配達先、配達予定時刻、商品ID、数量、支払総額、注文者の氏名、及び注文者の電話番号等の情報(以下、「注文確定情報」という)を、上記特定した配達リソースIDに対応付けて注文情報データベース24に格納する。
ここで、配達注文の注文番号は、上記割り当て処理において発行される。注文日時は、例えば配達要求の受信日時である。出発予定時刻は、例えば、注文日時から商品の配達準備が完了する時刻として自動的に算出されてもよいし、当該配達注文に含まれる店舗IDに対応する店舗の管理者により指定され当該店舗の店舗端末STmから受信されてもよい。配達予定時刻は、例えば、配達元から配達先までの距離(配達経路の距離)、及び配達車の法定速度等から算出される。注文者により配達希望時刻が指定された場合(例えば、店舗の検索時に指定された場合)、当該配達希望時刻が配達予定時刻となり、出発予定時刻は、当該配達予定時刻から逆算される。なお、注文者により配達希望時刻が指定された場合、配達注文がまだ割り当てられていない配達リソースに対して配達注文が割り当てられることになる。
また、配達注文処理部41eは、注文情報データベース24に配達リソースIDに対応付けられて格納された注文確定情報を、上記配達注文に含まれる店舗IDに対応する店舗の店舗端末STm(セッション継続中の店舗端末STm)へ送信する。これにより、店舗は当該配達注文された商品の配達を実行することになる。なお、配達注文処理部41eは、特定された配達エリアに対応付けられた店舗の電子メールアドレス宛に注文確定情報を送信してもよい。
配達エリア決定部41fは、上述した配達条件を満たす新たな配達エリアを決定する。特に、図5(B)に示すように、配達エリア決定部41fは、配達注文取得部41dにより取得された配達注文に含まれる配達先D11の位置情報が示す位置を基準として、配達注文処理部41eにより特定された配達エリア(例えば、基準配達エリアAr151〜Ar250)外の拡張配達エリアであって当該配達条件を満たす拡張配達エリアAr261〜Ar269を少なくとも含む新たな配達エリアを決定する。ここで、配達条件を満たす拡張配達エリアAr261〜Ar269は、例えば、配達先D11から当該配達条件として設定された配達許容時間内に配達可能なエリアとして特定される。これにより、店舗側とって効率的で、且つ、ユーザにとって利便性の高い配達エリアを決定することができる。このようなエリアは、例えば配達先D11から配達経路上を法定速度で移動したときに、当該配達先D11から配達許容時間内に到達可能な範囲として特定することができる。
また、配達エリア決定部41fは、配達注文処理部41eにより特定された配達エリア外の拡張配達エリアのうち、当該拡張配達エリアの外縁部分から配達条件として設定された距離(例えば、20m〜50m)内の拡張配達エリアを、当該配達条件を満たす拡張配達エリアとして新たな配達エリアを決定してもよい。これにより、配達許容時間内に配達可能なエリアを新たな配達エリアとして決定する場合に比べて、新たな配達エリアを決定するための処理負荷(CPU負荷)を低減することができる。この場合において、配達エリア決定部41fは、配達注文処理部41eにより特定された配達エリアのうち、当該配達エリアの外縁から所定距離(例えば、100m)までのエリア内に、配達先の位置情報が示す位置が含まれる場合に限り、拡張配達エリアを少なくとも含む新たな配達エリアを決定するとよい。これにより、より一層、システム制御部4の処理負荷を低減することができ、且つ、より迅速な処理を実現することができる。図8(A)は、配達エリアの外縁Edから所定距離Dまでの配達エリア内に、配達先D15の位置情報が示す位置が含まれる場合の概念図である。この場合に決定される配達エリア(斜線部)には、拡張配達エリアAr260〜Ar270が含まれている。一方、図8(B)は、配達エリアの外縁Edから所定距離Dまでの配達エリア内に、配達先D16の位置情報が示す位置が含まれない場合の概念図である。この場合に決定される配達エリア(斜線部)には、拡張配達エリアは含まれていない。
なお、配達注文取得部41dにより配達先の位置が異なる複数の配達注文が取得された場合、配達注文処理部41eは、それぞれの配達先の位置情報が示す位置を含む配達エリアを特定する。そして、配達エリア決定部41fは、配達注文処理部41eにより特定された配達エリア外の拡張配達エリアのうち、何れかの位置情報(例えば、配達元から最も距離が長い配達先の位置情報)が示す位置を基準として、上記配達条件を満たす拡張配達エリアを少なくとも含む新たな配達エリアを決定することになる。これにより、新たな配達エリアを決定するための処理負荷(CPU負荷)を低減することができる。
配達エリア更新部41gは、配達エリア決定部41fにより決定された新たな配達エリアにより、注文情報データベース24により格納された配達エリアを更新(つまり、新たな配達エリアで上書き)する。これにより、図5〜図7に示すように、配達エリアが配達注文に応じて変化していくことになる。このように、商品の配達注文を受け付ける配達エリアが新たな配達エリアに更新されることで、その後の配達注文に含まれる位置情報が示す位置が拡張配達エリアに含まれる場合であっても当該配達注文を受け付けることが可能となる。また、その後の検索要求に含まれる位置情報が示す位置が拡張配達エリアに含まれる場合であっても、当該検索要求に応じた検索結果として、当該拡張配達エリアに含まれる配達先へ配達可能な店舗の情報をユーザ端末UTnに表示させ、ユーザ端末UTnのユーザに提示することができる。
また、配達エリア更新部41gは、配達物を配達するために配達元から出発する時刻(出発予定時刻)の所定時間(例えば、1分程度)前に、注文情報データベース24に格納されている更新後の配達エリアを基準配達エリア(最初の配達エリア)に更新する。これにより、上記拡張配達エリアに含まれる配達先への配達注文を一定時間に限り受け付けるように制御することができる。例えば、図4に示すように、配達リソースID“R011”に対応付けられた1回目の配達エリアが、当該配達リソースID“R011”に対応付けられた2回目の配達エリア(基準配達エリア)に更新される。
[2.配達支援システムSの動作]
次に、図9等を参照して、本実施形態に係る配達支援システムSの動作について説明する。図9は、配達支援システムSの動作の一例を示すシーケンス図である。
図9において、ユーザ端末UTn(例えば、ユーザ端末UT1)の制御部は、ユーザの操作に応じて、アプリケーションまたはブラウザにより、店舗検索画面の表示データの送信要求をネットワークNWを介して情報提供サーバSAへ送信する(ステップS1)。店舗検索画面は、ユーザにより指定された配達先へ商品を配達可能な店舗を検索するための画面である。情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの送信要求を通信部1を介して受信する。そして、システム制御部4は、受信された送信要求に応じて、店舗検索画面の表示データ(例えば、店舗検索画面のWebページのデータ)を記憶部2から取得し、取得した表示データをネットワークNWを介してユーザ端末UTnへ送信する(ステップS2)。
ユーザ端末UTnの制御部は、情報提供サーバSAから送信された、店舗検索画面の表示データを通信部を介して受信すると、当該店舗検索画面を表示する(ステップS3)。図10(A)は、店舗検索画面の一例を示す図である。図10(A)に示す店舗検索画面には、配達先指定欄51、検索ボタン52、及びGPS取得ボタン53等が設けられている。ユーザは操作部を操作して、配達先指定欄51に配達先の住所(例えば、ユーザの居住地の住所)を入力することができる。配達先指定欄51には、ユーザにより過去に指定された配達先の住所が選択可能に一覧表示(プルダウン表示)されてもよく、この場合、一覧表示から選択された配達先の住所が配達先指定欄51に入力、表示される。配達先指定欄51に配達先の住所が表示されている状態で、ユーザが操作部を操作して検索ボタン52を指定(例えば、マウスでクリック、或いは指でタップ)すると、ユーザ端末UTnの制御部は、配達先の位置情報(この場合、住所)を含む検索要求をネットワークNWを介して情報提供サーバSAへ送信する(ステップS4)。なお、ユーザ端末UTnがGPS受信部を備える場合、ユーザが操作部を操作してGPS取得ボタン53を指定することで、ユーザ端末UTnの制御部は、GPS受信部により取得された経度及び緯度を、配達先の位置情報として含む検索要求を情報提供サーバSAへ送信する。その他、配達先の位置情報は、郵便番号等から指定することもできる。検索要求に含まれる配達先の位置情報は、例えば、ユーザ端末UTnと情報提供サーバSAとのセッション継続中、ユーザ端末UTnの制御部により保持される。或いは、検索要求に含まれる配達先の位置情報は、ユーザ端末UTnと情報提供サーバSAとのセッション継続中、情報提供サーバSAのシステム制御部4により保持される。また、店舗検索画面には、ユーザが配達希望時刻を検索条件として指定できる配達希望時刻指定欄が設けられてもよい。この場合、ユーザにより配達希望時刻指定欄で指定された配達希望時刻は、上記配達先の位置情報と共に検索要求に含まれて情報提供サーバSAへ送信される。
情報提供サーバSAのシステム制御部4(検索要求受信部41a)は、ユーザ端末UTnからの検索要求を通信部1を介して受信する。そして、システム制御部4(検索処理部41b)は、受信された検索要求に応じて、当該検索要求に係る配達先の位置情報が示す配達先へ商品を配達可能な店舗を検索する。すなわち、システム制御部4(検索処理部41b)は、当該検索要求に係る配達先の位置情報が示す位置を含む配達エリアを注文情報データベース24から特定する(ステップS5)。ここで、システム制御部4(検索処理部41b)は、当該配達先の位置情報が住所を示す場合、当該住所を経度及び緯度に対応する座標(x,y)に変換した上で、当該座標が含まれる配達エリアを特定する。ただし、配達エリアは住所(例えば、X丁目Y番地)で示されてもよく、この場合、システム制御部4は、当該配達先の住所のままで、当該住所が含まれる配達エリアを特定してもよい。なお、当該配達先の位置情報が示す位置を含む配達エリアは複数特定される場合もある。また、システム制御部4は、ユーザ端末UTnと情報提供サーバSAとのセッション継続中、特定された配達エリアを保持してもよい。そして、システム制御部4(検索処理部41b)は、ステップS5で特定された配達エリアに対応付けられた店舗IDを特定する(ステップS6)。
なお、上記検索要求に配達希望時刻が含まれる場合、システム制御部4(検索処理部41b)は、上記配達先へ当該配達希望時刻に商品を配達可能な店舗を検索する。すなわち、システム制御部4(検索処理部41b)は、当該検索要求に係る配達先の位置情報が示す位置を含む配達エリアに対応付けられた店舗IDであって、当該配達先へ当該配達希望時刻に商品を配達可能な店舗の店舗IDを注文情報データベース24から特定する。例えば、当該配達先の位置情報が示す位置を含む配達エリアが、配達注文がまだ割り当てられていない配達リソースに対応する配達エリア(つまり、基準配達エリア)である場合、システム制御部4(検索処理部41b)は、当該検索要求に含まれる配達希望時刻が、現在時刻から所定時間(例えばデフォルト設定されたお届け時間)後の時刻であるか否かを判定する。そして、システム制御部4(検索処理部41b)は、上記配達希望時刻が、現在時刻から所定時間後の時刻であると判定した場合、当該配達エリアに対応付けられた店舗IDを、当該配達先へ当該配達希望時刻に商品を配達可能な店舗の店舗IDとして特定する。一方、当該配達先の位置情報が示す位置を含む配達エリアが、配達注文が既に割り当てられた配達リソースに対応する配達エリアである場合、システム制御部4(検索処理部41b)は、当該検索要求に含まれる配達希望時刻が、既に割り当てられた配達注文の配達予定時刻(例えば最も遅い配達予定時刻)から上記配達許容時間までの間に含まれるか否かを判定する。そして、システム制御部4(検索処理部41b)は、上記配達希望時刻が、上記配達予定時刻から上記配達許容時間までの間に含まれると判定した場合、当該配達エリアに対応付けられた店舗IDを、当該配達先へ当該配達希望時刻に商品を配達可能な店舗の店舗IDとして特定する。
次いで、システム制御部4(検索処理部41b)は、ステップS6で特定された店舗IDに対応する店舗(つまり、検索によりヒットした店舗)の情報(店舗情報データベース22または注文情報データベース24に格納されている情報)に基づいて、ステップS5で特定された配達エリアにおいて上記検索要求に係る配達先(つまり、当該検索要求に含まれる位置情報が示す位置)に配達可能な配達可能時間を決定する(ステップS7)。例えば、ステップS5で特定された配達エリアが、配達注文がまだ割り当てられていない配達リソースに対応する配達エリア(つまり、基準配達エリア)である場合、システム制御部4(検索処理部41b)は、例えば、デフォルト設定されたお届け時間(例えば、40分)を上記配達可能時間として決定する。なお、上記検索要求に配達希望時刻が含まれる場合のステップS6において当該配達先へ当該配達希望時刻に商品を配達可能な店舗の店舗IDが特定された場合、システム制御部4(検索処理部41b)は、当該検索要求に含まれる配達希望時刻を上記配達可能時間として決定する。
一方、ステップS5で特定された配達エリアが、配達注文が既に割り当てられた配達リソースに対応する配達エリアである場合、システム制御部4(検索処理部41b)は、先ず、当該配達エリアに対応付けられ、且つ、現在時刻に最も近い注文日時に対応付けられた配達先(以下、「確定配達先」という)及び配達予定時刻(以下、「確定配達先への配達予定時刻」という)を注文情報データベース24から特定する。そして、システム制御部4(検索処理部41b)は、上記確定配達先から上記検索要求に係る配達先までに要する時間を上記確定配達先への配達予定時刻に加算することで上記配達可能時間(配達可能時刻)として決定する。ここで、上記確定配達先から上記検索要求に係る配達先までに要する時間は、例えば、上記確定配達先から上記検索要求に係る配達先までの距離(配達経路の距離)、及び配達車の法定速度等から算出される。なお、システム制御部4(検索処理部41b)は、配達元から上記確定配達先までの配達経路上の地点から上記検索要求に係る配達先までに要する時間を、上記確定配達先への配達予定時刻に加算することで上記配達可能時間として決定してもよい。また、上記検索要求に配達希望時刻が含まれる場合のステップS6において当該配達先へ当該配達希望時刻に商品を配達可能な店舗の店舗IDが特定された場合、システム制御部4(検索処理部41b)は、当該検索要求に含まれる配達希望時刻を上記配達可能時間として決定する。
次いで、システム制御部4(検索結果送信部41c)は、ステップS6で特定された店舗IDに対応する店舗の情報を当該配達先へ配達可能な店舗の情報として表示させる表示データ(例えば、店舗選択画面の表示データ)を記憶部2から取得し、取得した表示データをネットワークNWを介してユーザ端末UTnへ送信する(ステップS8)。この店舗の情報には、例えば、店舗ID、店舗名、商品の広告情報、最低注文金額、利用可能な決済方法、特典、及びステップS7で決定された配達可能時間(または配達可能時間を含む所定範囲)が含まれる。例えば、システム制御部4(検索結果送信部41c)は、ステップS5で特定された配達エリアに対応付けられた店舗の情報を上記検索要求に係る配達先へ配達可能な店舗の情報として表示させ、且つ、当該配達先への配達可能時刻を含む所定範囲内に限り配達可能であることを表示させる表示データをユーザ端末UTnへ送信する。これにより、配達可能時刻を含む所定範囲内に限り、上記拡張配達エリアに含まれる配達先へ配達可能であることをユーザ端末のユーザに把握させることができる。ここで、配達可能時間を含む所定範囲とは、配達可能時刻±α時間であり、このα(例えば、5分)は配達時間誤差として設定される。
ところで、ステップS5において同一の店舗について異なる複数の配達エリアが特定された場合(つまり、検索要求に係る配達先が複数の配達エリアのそれぞれに含まれる場合)、システム制御部4(検索結果送信部41c)は、例えば、ステップS5で特定された複数の配達エリアのうち、最も面積が小さい配達エリアにおいてステップS7で決定された配達可能時間を含む所定範囲内に限り配達可能であることを表示させる表示データをユーザ端末UTnへ送信する。なお、システム制御部4(検索処理部41b)の検索により店舗がヒットしなかった場合、システム制御部4(検索結果送信部41c)は、上記配達先へ配達可能な店舗がないことを表示させる表示データをユーザ端末UTnへ送信することになる。
ユーザ端末UTnの制御部は、情報提供サーバSAから送信された、上記検索によりヒットした店舗の情報を表示させる表示データを通信部を介して受信すると、店舗選択画面を表示する(ステップS9)。図10(B)、及び図11(A),(B)は店舗選択画面の一例を示す図である。店舗選択画面には、図10(B)、及び図11(A),(B)に示すように、絞り込み条件指定部61、及び店舗情報表示部62が設けられている。絞り込み条件指定部61には、絞り込み条件である複数のジャンルのそれぞれに対応するチェックボックス611が設けられている。ユーザは操作部を操作して、配達注文対象となる商品のジャンルに対応するチェックボックス611にチェックマークを入れることで、絞り込み条件としてジャンル(チェックマークされたジャンル)を指定することができる。そして、チェックボックス611にチェックマークが表示されている状態で、ユーザが操作部を操作して絞り込みボタン612を指定すると、ユーザ端末UTnの制御部は、上記指定されたジャンルを絞り込み条件として含む絞り込み要求を、情報提供サーバSAへ送信する。なお、絞り込み条件指定部61において、ユーザが、最低注文金額、及び利用可能な決済方法などを絞り込み条件として指定できるように構成してもよい。また、絞り込み条件指定部61は、図10(A)に示す店舗検索画面に設けられてもよい。この場合、ユーザは店舗検索画面において絞り込み条件としてジャンルを指定して絞り込みボタンを指定すると、上記指定されたジャンルを絞り込み条件として含む絞り込み要求が情報提供サーバSAへ送信されることになる。
情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの絞り込み要求に応じて、上記検索要求に応じて実行された検索によりヒットした店舗を、当該絞り込み要求に含まれる絞り込み条件により絞り込み(例えば、ピザを販売する店舗に絞り込む)、絞り込んだ店舗の情報を当該配達先へ配達可能な店舗の情報として表示させる表示データをユーザ端末UTnへ送信する。そして、ユーザ端末UTnの制御部は、情報提供サーバSAから送信された、絞り込まれた店舗の情報が含まれる表示データを受信して店舗選択画面の店舗情報表示部62の表示内容を更新する。
店舗選択画面の店舗情報表示部62には、上記検索要求または上記絞り込み要求に応じて情報提供サーバSAから送信された表示データに含まれる、配達先へ配達可能な店舗の情報が表示される。なお、情報提供サーバSAから上記配達先へ配達可能な店舗がないことを表示させる表示データが送信された場合、店舗情報表示部62には、上記配達先へ配達可能な店舗がない旨(例えば、該当店舗無し)が表示される。図10(B)、及び図11(A),(B)の例では、配達先へ配達可能な店舗毎に区切られた表示領域に、それぞれの店舗の情報が表示されている。それぞれの表示領域に表示される店舗の情報には、店舗名、商品の広告情報(画像及びPR)、配達可能時間、最低注文金額、利用可能な決済方法(例えば、現金決済の他、カード決済など)、及び特典が含まれている。
ところで、図10(B)に示す店舗選択画面は、店舗s2の基準配達エリア内に含まれる配達先(例えば、図5(B)に示す配達先D11)がユーザにより指定されたときの店舗選択画面(6/1 9:19の時点の画面)である。そのため、図10(B)に示す店舗情報表示部62には、上記検索によりヒットした店舗s2の情報が表示されている。6/1 9:19の時点における店舗s2の配達エリアは基準配達エリアになっているので(配達注文がまだ受け付けられていない)、店舗s2の配達可能時間として、図10(B)に示すように、デフォルト設定されたお届け時間(約40分)が表示されている。一方、図11(A),(B)は、それぞれ、店舗s2の拡張配達エリア内に含まれる配達先(例えば、図6(B)に示す配達先D12)がユーザにより指定されたときの店舗選択画面である。6/1 9:19の時点における店舗s2の配達エリアは基準配達エリアになっているので、上記検索により店舗s2はヒットせず、したがって、図11(A)に示す店舗情報表示部62には、店舗s2の情報が表示されていない。一方、6/1 9:24の時点における店舗s2の配達エリアは、上述したように基準配達エリア外の拡張配達エリアに拡張されているので、上記検索により店舗s2はヒットし、したがって、図11(B)に示す店舗情報表示部62には、店舗s2の情報が表示されている。また、このときの店舗s2の配達可能時間として、図11(B)に示すように、配達可能時刻±α時間(10時00分〜10時10分)が表示されている。
また、店舗情報表示部62に表示された画像及び店舗名には、配達注文画面(図示せず)の表示データへのハイパーリンク(URL(Uniform Resource Locator))が設定されている。ユーザが操作部を操作して、注文したい商品を販売する店舗の画像または店舗名を指定すると、ユーザ端末UTnの制御部は、上記画像または店舗名の指定により選択された店舗の店舗IDを含む閲覧要求を情報提供サーバSAへ送信する(ステップS10)。情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの閲覧要求を通信部1を介して受信する。そして、システム制御部4は、受信された閲覧要求に応じて、当該閲覧要求に含まれる店舗IDにより特定される店舗が販売する商品(配達注文対象となる商品の情報)を表示させる表示データ(例えば、配達注文画面の表示データ)を記憶部2から取得し、取得した表示データをネットワークNWを介してユーザ端末UTnへ送信する(ステップS11)。
ユーザ端末UTnの制御部は、情報提供サーバSAから送信された、当該店舗が販売する商品の情報を表示させる表示データを通信部を介して受信すると、配達注文画面(図示せず)を表示する(ステップS12)。そして、ユーザが配達注文画面または配達注文画面から遷移する画面を通じて注文する商品を選択し注文ボタンを指定すると、ユーザ端末UTnの制御部は、当該選択された商品の配達注文を示す配達要求を情報提供サーバSAへ送信する(ステップS13)。この配達注文には、上述したように、選択された商品の配達先の位置情報、当該商品の商品ID、数量、支払総額、当該商品の配達注文先となる店舗の店舗ID、注文者の氏名、及び注文者の電話番号が含まれる。ここで、配達注文に含まれる配達先の位置情報は、上述した店舗検索画面の配達先指定欄で指定され、且つ、ユーザ端末UTnの制御部により保持された位置情報である。なお、上述したように、検索要求に含まれる配達先の位置情報が、情報提供サーバSAのシステム制御部4により保持されている場合、ユーザ端末UTnから送信される配達注文には、当該配達先の位置情報が含まれなくともよい。この場合、情報提供サーバSAのシステム制御部4により保持されている配達先の位置情報は、後述するステップS14において配達注文が記憶部2に記憶される際に当該配達注文に含められることになる。
情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの配達要求を通信部1を介して受信する。そして、システム制御部4は、受信された配達要求が示す配達注文(配達注文情報)を記憶部2に記憶(蓄積)する(ステップS14)。次いで、システム制御部4は、配達リソースへの割り当て処理の実行契機となったか否かを判定する(ステップS15)。この実行契機は、例えばタイマーにより所定時間(例えば、数分)間隔で到来するように設定される。システム制御部4は、配達リソースへの割り当て処理の実行契機となったと判定した場合(ステップS15:YES)、処理をステップS17へ進める。一方、システム制御部4は、配達リソースへの割り当て処理の実行契機となっていないと判定した場合(ステップS15:NO)、記憶部2に記憶された配達注文のうち同一の店舗IDを含む配達注文が所定数(例えば、3つ)以上あるか否かを判定する(ステップS16)。これは、配達先の位置が異なる複数の配達注文を纏めて取得するためである。システム制御部4は、同一の店舗IDを含む配達注文が所定数以上あると判定した場合(ステップS16:YES)、処理をステップS17へ進める。一方、システム制御部4は、同一の店舗IDを含む配達注文が所定数以上ないと判定した場合(ステップS16:NO)、処理を終了し、要求受信待ちとなる。
ステップS17では、システム制御部4(配達注文取得部41d)は、ステップS14で記憶された全ての配達注文を取得(RAMの作業領域に読み込む)する。なお、ステップS17で取得された配達注文は削除される。次いで、システム制御部4(配達注文処理部41e)は、ステップS17で取得された配達注文に含まれる店舗IDに対応付けられた配達エリアのうち、当該配達注文に含まれる配達先の位置情報が示す位置を含む配達エリア、及び当該配達エリアに対応付けられた配達リソースIDを注文情報データベース24から特定する(ステップS18)。ここで、当該配達先の位置情報が示す位置を含む配達エリアには、上記ステップS5で特定され、保持された配達エリアが利用されてもよい。また、配達先の位置情報が示す位置を含む配達エリアが複数ある場合、例えば、最も面積が小さい配達エリア、及び当該配達エリアに対応付けられた配達リソースIDが特定されるとよい。これにより、配達リソースを有効に活用することができる。なお、ステップS17で複数の配達注文が取得された場合、システム制御部4(配達注文処理部41e)は、それぞれの配達注文に含まれる位置情報が示す位置を含む配達エリア、及び当該配達エリアに対応付けられた配達リソースIDを、配達注文毎に特定することになる。
次いで、システム制御部4(配達注文処理部41e)は、ステップS17で取得された配達注文を、ステップS18で特定された配達エリア及び配達リソースIDに対して割り当てる(ステップS19)。これにより、上述したように、当該配達注文の注文番号、注文日時、出発予定時刻、配達先、配達予定時刻、商品ID、数量、支払総額、注文者の氏名、及び注文者の電話番号等の注文確定情報が、ステップS18で特定された配達エリア及び配達リソースIDに対応付けられて注文情報データベース24に格納される。なお、ステップS17で複数の配達注文が取得された場合、システム制御部4(配達注文処理部41e)は、それぞれの配達注文を、それぞれの配達エリア及び配達リソースIDに対して割り当てることになる。また、注文者により配達希望時刻が指定された場合(例えば、店舗の検索時に指定された場合)、上記注文確定情報に含まれる配達予定時刻は、当該配達希望時刻となる。
次いで、システム制御部4(配達注文処理部41e)は、注文情報データベース24に配達リソースIDに対応付けられて格納された注文確定情報を、ステップS17で取得された配達注文に含まれる店舗IDに対応する店舗の店舗端末STmへ送信する(ステップS20)。なお、注文確定情報は、上記特定された配達エリアに対応付けられた店舗の電子メールアドレス宛に送信されてもよい。
次いで、システム制御部4(配達エリア決定部41f)は、ステップS17で取得された配達注文に含まれる配達先の位置情報が示す位置を基準として、ステップS18で特定された配達リソースIDに対応付けられた配達条件を満たす新たな配達エリアを決定する(ステップS21)。例えば、ステップS17で取得された配達注文に含まれる配達先(または、配達元から配達先までの配達経路上の地点)から配達許容時間内に配達可能なエリアが新たな配達エリアとして決定される。
なお、ステップS17で複数の配達注文が取得された場合、システム制御部4は、当該複数の配達注文のうち、同一の店舗IDが含まれる配達注文(つまり、同一の店舗への配達注文)が複数あるか否かを判定する。システム制御部4は、同一の店舗IDが含まれる配達注文が複数ない(つまり、それぞれが異なる店舗への配達注文である)と判定した場合、ステップS21において、それぞれの配達注文毎に上記配達条件を満たす新たな配達エリアを決定する。一方、システム制御部4は、同一の店舗IDが含まれる配達注文が複数あると判定した場合、当該複数の配達注文それぞれに対してステップS19で割り当てられた配達リソースIDが同一であるか否かを判定する。システム制御部4は、複数の配達注文それぞれに対して割り当てられた配達リソースIDが同一でないと判定した場合、ステップS21において、それぞれの配達注文毎に上記配達条件を満たす新たな配達エリアを決定する。一方、システム制御部4は、複数の配達注文それぞれに対して割り当てられた配達リソースIDが同一であると判定した場合、ステップS21において、当該複数の配達注文それぞれに含まれる位置情報のうち、何れかの位置情報(例えば、配達元から最も距離が長い配達先の位置情報)が示す位置(或いは、配達元から、当該複数の配達注文それぞれに対応する配達先を経由して最も距離が長い配達先までの配達経路上の地点)を基準として、当該配達リソースIDに対応付けられた配達条件を満たす新たな配達エリアを決定する。
次いで、システム制御部4(配達エリア更新部41g)は、ステップS21で決定された新たな配達エリアにより、注文情報データベース24により格納された配達エリアを更新し(ステップS22)、処理を終了し、要求受信待ちとなる。なお、システム制御部4(配達エリア更新部41g)は、配達物を配達するために配達元から出発する時刻(出発予定時刻)の所定時間前に、注文情報データベース24に格納されている更新後の配達エリアを基準配達エリアに更新することになる。
以上説明したように、上記実施形態によれば、情報提供サーバSAは、商品の配達先の位置情報を含む配達注文を取得し、当該位置情報が示す位置を含む配達エリアを特定し、当該位置情報が示す位置を基準として、当該特定された配達エリア外の拡張配達エリアであって所定の配達条件を満たす拡張配達エリアを少なくとも含む新たな配達エリアを決定し、当該決定された新たな配達エリアにより、上記特定された以前の配達エリアを更新するように構成したので、その後の配達注文に含まれる位置情報が示す位置が拡張配達エリアに含まれる場合であっても当該配達注文を受け付けることが可能となり、配達エリアの設定に関わる店舗側の負担を抑制しつつ、ユーザの配達先の位置に応じて配達エリアを柔軟に拡張することができる。例えば、ユーザ端末UT1のユーザの居住地が、ある店舗の基準配達エリアに近い(例えば、数十m以内)にも関わらず、当該基準配達エリア内に入らないために、当該ユーザが当該店舗への配達注文をできない場合がある。このような場合であっても、上記実施形態によれば、ユーザ端末UT1のユーザの例えば数分前に行われた他のユーザ端末UT2のユーザによる配達注文に応じて当該店舗の配達エリアが拡張されるので、ユーザ端末UT1のユーザは当該店舗に対して配達注文を行うことが可能となる。
[3.配達支援システムSの動作の変形例]
上記実施形態では、情報提供サーバSAは、ユーザ端末UTnからの検索要求に応じて、当該検索要求に係る配達先へ商品を配達可能な店舗を検索するように構成したが、ユーザが所望の店舗を把握しており、商品を配達可能な店舗の検索を必要としない場合がある。このような場合の配達支援システムSの動作の変形例について説明する。図12は、配達支援システムSの動作の変形例を示すシーケンス図である。
図12において、ユーザ端末UTnの制御部は、ユーザにより指定(例えば、店舗に対応するURLを指定)された店舗の店舗IDを含む閲覧要求を通信部を介して情報提供サーバSAへ送信する(ステップS31)。情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの閲覧要求を通信部1を介して受信する。そして、システム制御部4は、受信された閲覧要求に応じて、当該閲覧要求に含まれる店舗IDにより特定される店舗が販売する商品を表示させる表示データ(例えば、配達注文画面の表示データ)を記憶部2から取得し、取得した表示データをネットワークNWを介してユーザ端末UTnへ送信する(ステップS32)。
ユーザ端末UTnの制御部は、情報提供サーバSAから送信された、当該店舗が販売する商品の情報を表示させる表示データを通信部を介して受信すると、配達注文画面(図示せず)を表示する(ステップS33)。このような配達注文画面または配達注文画面から遷移する画面には、店舗検索画面と同様、配達先指定欄等が設けられており、ユーザが操作部を操作して配達先の位置情報を指定することができる。そして、ユーザが配達注文画面または配達注文画面から遷移する画面を通じて注文する商品を選択し、且つ、配達先の位置情報を指定した後、注文ボタンを指定すると、ユーザ端末UTnの制御部は、当該選択された商品の配達注文を示す配達要求を情報提供サーバSAへ送信する(ステップS34)。この配達注文には、指定された配達先の位置情報、選択された商品の商品ID、数量、支払総額、当該商品の配達注文先となる店舗の店舗ID、注文者の氏名、及び注文者の電話番号が含まれる。
情報提供サーバSAのシステム制御部4は、ユーザ端末UTnからの配達要求を通信部1を介して受信する。そして、システム制御部4は、受信された配達要求が示す配達注文を記憶部2に記憶する(ステップS35)。次いで、システム制御部4(配達注文取得部41d)は、ステップS35で記憶された配達注文を取得する(ステップS36)。この場合も、上記ステップS14〜ステップS16の処理を経て配達注文が取得されるように構成してもよい。次いで、システム制御部4(配達注文処理部41e)は、ステップS36で取得された配達注文に含まれる店舗IDに対応付けられた配達エリアのうち、当該配達注文に含まれる配達先の位置情報が示す位置を含む配達エリア、及び当該配達エリアに対応付けられた配達リソースIDを注文情報データベース24から特定する(ステップS37)。ここで、当該配達注文に含まれる配達先の位置情報が示す位置を含む配達エリアがない場合、システム制御部4は、上記配達先へ配達可能な店舗がないことを表示させる表示データをユーザ端末UTnへ送信することになる。なお、ステップS38〜S41の処理は、上述したステップS19〜S22の処理と同様である。
以上説明したように、図12に示す動作の変形例によっても、配達エリアの設定に関わる店舗の負担を抑制しつつ、利用者の配達先の位置に応じて配達エリアを柔軟に拡張することができる。