次に、本発明の実施形態について図面を参照して詳細に説明する。
まず本発明の実施形態の構成について図1を参照して説明する。ここで、図1は本実施形態であるオフラインのオーダエントリシステム1000全体の構成を表す図である。
図1を参照すると本実施形態は、POS端末装置100、厨房端末装置200、コントロール端末装置300、ワイヤレスアクセスポイント400及び注文入力端末装置500を含む。
ここで各装置及び端末間はそれぞれ他の端末又は装置と通信接続されている。具体的には、POS端末装置100とコントロール端末装置300間、厨房端末装置200とコントロール端末装置300間、ワイヤレスアクセスポイント400とコントロール端末装置300間は、それぞれ有線LANにて接続されている。また、注文入力端末装置500とワイヤレスアクセスポイント400間は無線LANで接続される。そして、注文入力端末装置500が送信したデータは、ワイヤレスアクセスポイント400へ無線通信にて送信され、ワイヤレスアクセスポイント400からコントロール端末装置300へ有線通信にて送信される。また、コントロール端末装置300が送信したデータは、ワイヤレスアクセスポイント400へ有線通信にて送信され、ワイヤレスアクセスポイント400から無線通信にて注文入力端末装置500へ送信される。
なお、有線LANによる接続の一部又は全部を無線LANによる接続とするのも良い。
なお、以下の説明において、「POS端末装置100、厨房端末装置200、コントロール端末装置300、ワイヤレスアクセスポイント400及び注文入力端末装置500」を総称して「オーダエントリシステム1000内の各機器」と呼ぶ。
POS端末装置100は、顧客が飲食した料理等の代金の会計処理を行う装置である。
厨房端末装置200は、厨房に設置され、注文入力端末装置500に入力された顧客の注文を出力することにより調理担当者に対して調理を指示する装置である。厨房端末装置200は、顧客の注文を印字出力するキッチンプリンタであっても良いし、顧客の注文を表示するキッチンディスプレイであっても良いし、これらの組み合わせであっても良い。厨房端末装置200は、複数台であってもよい。
コントロール端末装置300は、オーダエントリシステム1000全体の制御を行う装置である。
ワイヤレスアクセスポイント400(WAP:Wireless Access Point)は、注文入力端末装置500による無線通信を中継する装置である。
注文入力端末装置500は、店舗の従業員が携帯し、顧客からの注文を入力する装置である。注文入力端末は、複数台がオーダエントリシステム1000内に含まれる。
続いて、本実施形態特有の機能ブロックを含む装置である、コントロール端末装置300及び注文入力端末装置500について図2乃至図4を参照して説明する。なお、POS端末装置100、厨房端末装置200及びワイヤレスアクセスポイント400は一般的な機能ブロックを含む一般的な装置により実現できるため、ブロック図を参照した詳細な説明については省略する。
図2を参照すると注文入力端末装置500は、バージョン情報管理部501、バージョン情報格納部502、無線通信部503及び注文入力機能実現部504を含む。
バージョン情報管理部501は、オーダエントリシステム1000内の各機器それぞれに組み込まれているソフトウェアのバージョン情報(以下、単に「バージョン情報」と呼ぶ。)を管理する。具体的には、コントロール端末装置300がオーダエントリシステム1000の各機器から収集したバージョン情報を、コントロール端末装置300から受信する。そして、受信したバージョン情報を、バージョン情報格納部502に格納する。
バージョン情報格納部502は、バージョン情報を記憶する記憶装置である。ここで、図3を参照してバージョン情報の具体例について説明する。
図3を参照するとバージョン情報にはオーダエントリシステム1000内の各機器を特定するための各端末装置名と、各端末装置に組み込まれているソフトウェアのバージョンとがそれぞれ組となって格納されている。例えば、「コントロール端末装置300」という名称と、このコントロール端末装置300に組み込まれているソフトウェアのバージョンが「1.0」であるという情報が組となって格納されている。
無線通信部503は、無線通信を行う機能を実現する。本実施形態では、バージョン情報管理部501及び注文入力機能実現部504が、無線通信部503及びワイヤレスアクセスポイント400を利用して、オーダエントリシステム1000内の各機器と無線通信を行う。
注文入力機能実現部504は、一般的な注文入力端末装置としての機能を実現する。具体的には、従業員に操作メニューを表示したり、従業員から顧客の注文を入力され、入力された注文の内容をオーダエントリシステム1000内の各機器に対して送信したりする機能を実現する。
続いて、図4を参照するとコントロール端末装置300は、システムコントロール部301、記憶部302、アクセスポイント接続部303及び有線通信部304を含む。
システムコントロール部301は、オーダエントリシステム1000内の各機器を制御する。更に、コントロール端末装置300は、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアのアップデートを行う機能を有している。具体的なアップデート方法については後述する。
記憶部302は、システムコントロール部301が使用する情報を記憶する記憶部である。例えば、システムコントロール部301がオーダエントリシステム1000内の各機器から収集したバージョン情報を記憶する用途で記憶部302を使用する。
アクセスポイント接続部303は、無線通信を行う機能を実現する。本実施形態では、システムコントロール部301が、アクセスポイント接続部303及びワイヤレスアクセスポイント400を利用して、オーダエントリシステム1000内の各機器と無線通信を行う。
有線通信部304は、有線通信を行う機能を実現する。本実施形態では、システムコントロール部301が、有線通信部304を利用して、オーダエントリシステム1000内の各機器と有線通信を行う。
続いて、本実施形態におけるオーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアのアップデートについて説明する。
オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアのアップデートに際しては、まずオーダエントリシステム1000の構成要素である注文入力端末装置500の何れか1つをソフトウェアのアップデートに使用する注文入力端末装置500として選択する。そして、選択した注文入力端末装置500を、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアを管理している端末装置が設置してある場所に送付してソフトウェアのアップデートを行う。
また前提として、送付されるこの注文入力端末装置500のバージョン情報格納部502には、上述したようにコントロール端末装置300によって、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアについてのバージョン情報が格納されているものとする。また、バージョンアップが行われたならば、バージョンアップ後のバージョン情報が、バージョン情報格納部502に格納される。
図5は、注文入力端末装置500の送付先に設けられている送付先システム2000について表す図である。この送付先システム2000は、例えばオーダエントリシステム1000が設置されている店舗の運営本部等に用意されている。
図5を参照すると、送付先システム2000は、オーダエントリシステム用ソフトウェア管理端末装置700及びワイヤレスアクセスポイント600を含む。
ここで、オーダエントリシステム用ソフトウェア管理端末装置700は、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアを管理している端末装置である。以下では、オーダエントリシステム用ソフトウェア管理端末装置700が管理しているオーダエントリシステムが、1システムであるとして説明する。
そして、アップデートの必要が生じて送付された注文入力端末装置500は、ワイヤレスアクセスポイント600を介してオーダエントリシステム用ソフトウェア管理端末装置700と無線接続される。但し、注文入力端末装置500が有線のインターフェースも有しているのであれば、それに対応した有線のインターフェースをオーダエントリシステム用ソフトウェア管理端末装置700に設けて、有線接続しても良い。
ここで、図6を参照してオーダエントリシステム用ソフトウェア管理端末装置700に含まれる各機能ブロックについて説明する。
図6を参照するとオーダエントリシステム用ソフトウェア管理端末装置700は、ソフトウェア情報管理部701、ソフトウェア情報格納部702、アクセスポイント接続部703を含む。
ソフトウェア情報管理部701は、オーダエントリシステム1000内の各機器それぞれに組み込まれているソフトウェアのソフトウェア情報を管理する。具体的には、ソフトウェアのアップデートに際しての各バージョンの関係と、ソフトウェアそのものを管理する。管理対象となる情報はソフトウェア情報格納部702に格納する。
ソフトウェア情報格納部702は、ソフトウェア情報を記憶する記憶装置である。ここで、図7を参照してソフトウェア情報の具体例について説明する。
図7を参照するとソフトウェア情報格納部702にはオーダエントリシステム1000内の各機器を特定するための「端末装置名」と、各端末装置に組み込まれているソフトウェアの「現行バージョンと次期バージョンとの対応付け」とがそれぞれ組となって格納されている。また、ソフトウェア情報格納部702には、アップデートに使用するソフトウェアの次期バージョンそのものも格納されている。
例えば、「コントロール端末装置」という名称とコントロール端末装置300に組み込まれているソフトウェアの現行バージョンが「1.0」である場合にはソフトウェアの次期バージョンである「2.0」にソフトウェアのアップデートを行うという対応付けがそれぞれ組となって格納されている。図7では、すべての端末装置がアップデートされることになっているが、これはあくまでひとつの具体例に過ぎない。例えばアップデートしない端末装置が存在する場合もある。このような場合には、アップデートしない端末装置については、次期バージョンに現行バージョンと同じものが格納される。
ここで、「端末装置名」を、端末装置の種類、又は端末装置の型番として、同一種類の端末装置又は同一型番の端末装置を共通に扱うようにしても良い。そして、ソフトウェア現行バージョンとソフトウェア次期バージョンは、端末装置の種類又は端末装置の型番毎に異なったソフトウェアのバージョンとする。
アクセスポイント接続部703は、オーダエントリシステム用ソフトウェア管理端末装置700とワイヤレスアクセスポイント600とを接続するためのインターフェースである。本実施形態では、ソフトウェア情報管理部701が、アクセスポイント接続部703及びワイヤレスアクセスポイント600を利用して注文入力端末装置500と通信を行う。なお、上述したように注文入力端末500が有線のインターフェースも有しているのであれば、それに対応した有線のインターフェースをアクセスポイント接続部703と置き換えても良く、有線のインターフェースとアクセスポイント接続部703の双方を設けるようにしても良い。
続いて、オーダエントリシステム用ソフトウェア管理端末装置700と注文入力端末装置500が接続された際の動作について図8のシーケンス図を参照して説明する。
オーダエントリシステム用ソフトウェア管理端末装置700と注文入力端末装置500が接続されると注文入力端末装置500がオーダエントリシステム用ソフトウェア管理端末装置700に対してバージョン情報格納部502に格納されているバージョン情報を送信する(ステップS1)。
オーダエントリシステム用ソフトウェア管理端末装置700のソフトウェア情報管理部701は、接続された注文入力端末装置500が送信した、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアそれぞれについてのバージョン情報を読み取る(ステップS2)。そして、ソフトウェア情報管理部701は、注文入力端末装置500から読み取った端末装置名(又は、端末種類もしくは端末型番)毎に、読み取ったバージョン情報のソフトウェアバージョンがソフトウェア情報格納部702に格納されているソフトウェア現行バージョンと一致するか否かを確認する(ステップS3)。
そして、すべての端末装置について一致する場合には(ステップS3においてYes)、図7のような現行バージョンと次期バージョンとの対応付けを表す情報(つまり、対象としている端末装置名(又は、端末種類もしくは端末型番)についての、現行バージョンそれ自体を表す情報と次期バージョンそれ自体を表す情報と双方が対応付けられていることを示す情報の組)と、アップデートに使用するソフトウェアの次期バージョンそのものとを注文入力端末装置500に対して送信する(ステップS4)。なお、当然のことながら、現行バージョンと次期バージョンが同一である場合は、アップデートの必要がないことを意味していることとなるので、アップデートのために必要となるソフトウェアの次期バージョンそのものを送信することはしない。そして、注文入力端末装置500はこれらの情報を受信し、バージョン情報格納部502に格納する(ステップS6)。注文入力端末装置500は、その後、オーダエントリシステム用ソフトウェア管理端末装置700に、送信された情報を格納したことを通知する(ステップS7)。オーダエントリシステム用ソフトウェア管理端末装置700は、送信した情報が注文入力端末装置500に格納されたことを記録する(ステップS8)。
一方、注文入力端末装置500から読み取ったバージョン情報の現行バージョンがソフトウェア情報格納部702に格納されている現行バージョンとは一致しない端末装置がひとつでも有る場合(ステップS3においてNo)、注文入力端末装置500から読み取ったバージョン情報の現行バージョンとソフトウェア情報格納部702に格納されている現行バージョンとが一致しない旨を端末装置名やバージョン情報とともに出力(例えば、表示や印刷)し、注文入力端末装置500から読み取ったバージョン情報のバージョンと現行バージョンと一致しなかったことを記録する(ステップS5)。
このようにして、現行バージョンと次期バージョンとの対応付けを表す情報、及びアップデートに使用するソフトウェアの次期バージョンそのものが格納された注文入力端末装置500は、その後オーダエントリシステム1000が設置されている店舗に返送される。
次に、注文入力端末装置500が、オーダエントリシステム1000が設置されている店舗に返送された後の処理について説明する。
注文入力端末装置500が返送された後、コントロール端末装置300は、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアのアップデートを行う。まず、返送されてきた注文入力端末装置500が、ワイヤレスアクセスポイント400を介してコントロール端末装置300に接続される。
すると、コントロール端末装置300はこの接続を認識し、通常モードから、ソフトウェアアップデートモードに移行する。ここで、通常モードとは、注文入力端末装置500が、従業員からの顧客の注文の入力を受け付け、厨房端末装置200が顧客の注文を出力し、POS端末装置100が顧客が飲食した料理等の代金の会計処理を行う、というオーダエントリシステム1000としての通常の処理を実行するモードである。一方で、ソフトウェアアップデートモードとは、オーダエントリシステム1000に含まれる各機器に組み込まれているソフトウェアのアップデートを実行するモードである。
続いて、上述したソフトウェアアップデートモードにおけるコントロール端末装置300と注文入力端末装置500間の動作について図9のシーケンス図を参照して説明する。
前提として、送付先システム2000より返送されてきた注文入力端末装置500は、注文入力端末装置500−1であるとする。また、図示を省略する注文入力端末装置500−2乃至注文入力端末装置500−n−1及び注文入力端末装置500−nを「注文入力端末装置500−1以外の注文入力端末装置500」と呼ぶ。
まず、返送されてきた注文入力端末装置500−1がオーダエントリシステム1000に接続されるとコントロール端末装置300は、この接続を検知し、オーダエントリシステム1000内の各機器についてソフトウェアアップデートモードへの切り替える旨を通知する(ステップS21)。
この通知に応じて注文入力端末装置500−1はアップデートに使用する情報(現行バージョンと次期バージョンとの対応付けを表す情報、及びアップデートに使用するソフトウェアの次期バージョンそのもの)をコントロール端末装置300に対して送信する(ステップS22)。一方で、注文入力端末装置500−1以外の注文入力端末装置500は、この時点では特に処理を行わない。
アップデートに使用する情報を受信したコントロール端末装置300は、受信したアップデートに使用する情報を用いて各機器のアップデートを実行する(ステップS23)。
ここで、ステップS23におけるコントロール端末装置300のアップデートの実行処理について図10を参照して説明する。ここで図10は、ソフトウェアアップデートモードで実行される処理について表すフローチャートである。
コントロール端末装置300のシステムコントロール部301は、まず注文入力端末装置500のソフトウェアのアップデートが必要か否か判断する(ステップS23−1)。具体的には、返送されてきた注文入力端末装置500のバージョン情報格納部502に、注文入力端末装置500のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報とアップデートに使用するソフトウェアの次期バージョンそのものが格納されていれば注文入力端末装置500のソフトウェアのアップデートが必要であると判断する。一方で、注文入力端末装置500のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報は格納されているが、アップデートに使用するソフトウェアの次期バージョンそのものは格納されていない場合も考えられる。これは、アップデートを行う必要がないことから現行バージョンと次期バージョンとが同じバージョンとされている場合である。この場合には注文入力端末装置500のソフトウェアのアップデートは必要ないと判断する。
アップデートが必要であれば(ステップS23−1においてYes)、返送されてきた注文入力端末装置500のバージョン情報格納部502に格納されている次期バージョンのソフトウェアを用いて、接続されている全ての注文入力端末装置500についてアップデートを行う(ステップS23−2)。一方、アップデートが不要であれば(ステップS23−1においてNO)、ステップS23−3に移行する。
ステップS23−3では、厨房端末装置200のソフトウェアのアップデートが必要か否か判断する。具体的には、返送されてきた注文入力端末装置500のバージョン情報格納部502に、厨房端末装置200のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報とアップデートに使用するソフトウェアの次期バージョンそのものが格納されていれば厨房端末装置200のソフトウェアのアップデートが必要であると判断する。一方で、厨房端末装置200のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報は格納されているが、アップデートに使用するソフトウェアの次期バージョンそのものは格納されていない場合も考えられる。これは、アップデートを行う必要がないことから現行バージョンと次期バージョンとが同じバージョンとされている場合である。この場合には厨房端末装置200のソフトウェアのアップデートは必要ないと判断する。
アップデートが必要であれば(ステップS23−3においてYes)、ソフトウェアのアップデートに使用する注文入力端末装置500に格納されている次期バージョンのソフトウェアを用いてアップデートを行う(ステップS23−4)。一方、アップデートが不要であれば(ステップS23−3においてNO)、ステップS23−5に移行する。
ステップS23−5では、POS端末装置100のソフトウェアのアップデートが必要か否か判断する。具体的には、返送されてきた注文入力端末装置500のバージョン情報格納部502に、POS端末装置100のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報とアップデートに使用するソフトウェアの次期バージョンそのものが格納されていればPOS端末装置100のソフトウェアのアップデートが必要であると判断する。一方で、POS端末装置100のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報は格納されているが、アップデートに使用するソフトウェアの次期バージョンそのものは格納されていない場合も考えられる。これは、アップデートを行う必要がないことから現行バージョンと次期バージョンとが同じバージョンとされている場合である。この場合にはPOS端末装置100のソフトウェアのアップデートは必要ないと判断する。
アップデートが必要であれば(ステップS23−5においてYes)、ソフトウェアのアップデートに使用する注文入力端末装置500に格納されている次期バージョンのソフトウェアを用いてアップデートを行う(ステップS23−6)。一方、アップデートが不要であれば(ステップS23−5においてNO)、ステップS23−7に移行する。
ステップS23−7では、コントロール端末装置300のソフトウェアのアップデートが必要か否か判断する。具体的には、返送されてきた注文入力端末装置500のバージョン情報格納部502に、コントロール端末装置300のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報とアップデートに使用するソフトウェアの次期バージョンそのものが格納されていればコントロール端末装置300のソフトウェアのアップデートが必要であると判断する。一方で、コントロール端末装置300のソフトウェアに関して、現行バージョンと次期バージョンとの対応付けを表す情報は格納されているが、アップデートに使用するソフトウェアの次期バージョンそのものは格納されていない場合も考えられる。これは、アップデートを行う必要がないことから現行バージョンと次期バージョンとが同じバージョンとされている場合である。この場合にはコントロール端末装置300のソフトウェアのアップデートは必要ないと判断する。
アップデートが必要であれば(ステップS23−7においてYes)、ソフトウェアのアップデートに使用する注文入力端末装置500に格納されている次期バージョンのソフトウェアを用いてアップデートを行う(ステップS23−8)。一方、アップデートが不要であれば(ステップS23−7においてNO)、ステップS23に相当するアップデート処理を終了する。
再度図9を参照してステップS24以降の処理について説明する。
アップデートを終了したコントロール端末装置300は、オーダエントリシステム1000内の各機器に組み込まれるソフトウェアについて、コントロール端末装置300に含まれる記憶部302に格納されているバージョン情報を今回のアップデート処理後の最新の情報に更新する(ステップS24)。次に、コントロール端末装置300は更新後の最新のバージョン情報を、注文入力端末装置500−1を含めた全ての注文入力端末装置500に対して送信する(ステップS25)。そして、最新のバージョン情報を受信した各注文入力端末装置500は、それぞれのバージョン情報格納部502に格納されているバージョン情報を最新のバージョンに更新する(ステップS26−1乃至ステップS26−n)。なお、コントロール端末装置300が、アップデートのために用いられる可能性のある全ての注文入力端末装置500に対してアップデート後のバージョン情報を送信して、それらの注文入力端末500のバージョン情報格納部502にそのバージョン情報を格納することにより、それらの注文入力端末装置500のうちのどの注文入力端末装置500を用いても、次回に、アップデートのための作業をすることが可能になる。
次に、コントロール端末装置300は注文入力端末装置500−1に対して、アップデートに使用した情報(現行バージョンと次期バージョンとの対応付けを表す情報、アップデートに使用するソフトウェアの次期バージョンそのもの、既にアップデート済みである旨を表す情報及び適切な次期バージョンが発見されなかった旨を表す情報)の消去を指示する(ステップS27)。ステップS27における指示を受けた注文入力端末装置500−1は、指示に従ってアップデートに使用した情報を消去する(ステップS28)。
その後、コントロール端末装置300は、上述したようにオーダエントリシステム1000全体をリセットし、アップデート処理は終了する(ステップS29)。リセット後、オーダエントリシステム1000は、通常モードで動作する。
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
以上説明した本発明の実施形態は、以下に示すような多くの効果を奏する。
第1の効果は、オーダエントリシステム1000が外部ネットワークに接続されていないオフラインの状況であったとしても、保守員がソフトウェアのアップデートのための作業を現場で実施することなく、システムに含まれる各機器のソフトウェアのアップデートを行うことができることである。
その理由は、オーダエントリシステム1000内の各機器に組み込まれているソフトウェアのバージョン情報を注文入力端末に記憶させて本部(オーダエントリシステム用ソフトウェア管理端末装置700が設置してある場所)へ送付し、アップデートに必要な情報が格納されて返送されてきた注文入力端末をシステムに接続するだけで、オーダエントリシステム1000内の各機器が自動的にソフトウェアのアップデートを実行できるからである。
第2の効果は、注文入力端末の内の1台を本部に送付し、返送されるまでの間も通常通りにオーダエントリシステム1000を使用継続できることである。
その理由は、注文入力端末はオーダエントリシステム1000内に複数存在するので、その内の1台を本部に送付し、返送されるまでの間も他の注文入力端末を使用できるからである。
第3の効果は、送付先システムへの注文入力端末の送付及び本部からの返送を容易に実現することが出来ることである。
その理由は、注文入力端末は従業員が携帯して使用する機器であることから、POS端末装置100等の据え置きの装置に比べて小型且つ軽量であるからである。
第4の効果は、オーダエントリシステム1000にアップデート専用の機器を導入する必要がないことである。
その理由は、本実施形態ではオーダエントリシステム1000内で通常使用している注文入力端末をアップデートに利用するからである。
次に、上述した実施形態の変形例について図11を参照して説明する。
図11を参照すると本変形例のオーダエントリシステム1000Bは、POS端末装置100B、厨房端末装置200、ワイヤレスアクセスポイント400及び注文入力端末装置500を含む。
図1に表されるオーダエントリシステム1000と、本変形例のオーダエントリシステム1000Bを比較すると、オーダエントリシステム1000Bにはコントロール端末装置300が含まれておらず、POS端末装置100が、POS端末装置100Bに置き換わっている点で相違する。
ここで、POS端末装置100Bは、POS端末装置100としての機能のみならず、コントロール端末装置300としての機能を併せ持っている点が、実施形態1のシステムと異なる。そのため、POS端末装置100Bは、図4に表されるコントロール端末装置300に含まれている機能ブロックを全て含んでいる。
そして、本変形例では、POS端末装置100Bが、オーダエントリシステム1000B内の各機器に組み込まれているソフトウェアのアップデートを行う。なお、具体的な相違点としては、本変形例では図3及び図7に表されるようなバージョン情報について「コントロール端末装置」の項目が無くなる。また、図10のフローチャートに記載のステップS23―7及びステップS23―8の処理も無くなる。その他は、上述した実施形態と同様で、詳述は省略する。
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
例えば、上述したオーダエントリシステム1000の構成の点で以下のように変形することが考えられる。
まず、上述のオーダエントリシステム1000に、システムに他の装置が含まれていても良い。例えば含まれうる装置としては顧客自身が注文を入力するセルフオーダ端末装置が一例として挙げられる。
また他にも、上述の説明では送付先システムに送付する注文入力端末装置500の選択方法に特に言及していなかったが、例えば送付する注文入力端末装置500を予め定めても良い。この場合、この予め定めた注文入力端末装置500以外の他の注文入力端末装置500では、バージョン情報管理部501及びバージョン情報格納部502を省略することが可能となる。
一方で、送付する注文入力端末装置500は、予め1つを選択するのではなく、予め定めた複数台の中から任意に選択するようにしても良い。そしてこの場合、この予め定めた複数台の注文入力端末装置500以外の他の注文入力端末装置500では、バージョン情報管理部501及びバージョン情報格納部502を省略することが可能となる。
例えば、上述したオーダエントリシステム1000の動作の点で以下のように変形することが考えられる。
上述の説明では返送されてきた注文入力端末装置500の接続をコントロール端末装置300が検知したことを契機として通常モードからソフトウェアアップデートモードに移行することとしていた。しかし、この他の条件を契機として移行するようにしても良い。
例えば返送されてきた注文入力端末装置500の接続をコントロール端末装置300が検知した際に、注文入力端末装置500に格納されているアップデートに使用する情報(現行バージョンと次期バージョンとの対応付けを表す情報、及びアップデートに使用するソフトウェアの次期バージョンそのもの)をコントロール端末装置300の記憶部302に記憶させる。
そして、所定の時刻(例えば営業終了後の深夜)になったことを契機としてソフトウェアアップデートモードへ移行して、アップデートを行うようにしても良い。また、他にもユーザからの何らかの操作を受け付けたことを契機としてソフトウェアアップデートモードへ移行して、アップデートを行うようにしても良い。例えばPOS端末により営業日一日の精算処理についての操作が終了した際にソフトウェアアップデートモードへ移行して、アップデートを行うようにしても良い。
また、図10における各動作の順番を入れ替えるようにしても良い。具体的には、ステップS23−1及び23−2の組と、ステップS23−3及び23−4の組と、ステップS23−5及び23−6の組と、ステップS23−7及び23−8の組のそれぞれの組の順番はどの順番であっても良い。また可能であれば各組の動作を並行して行うようにすると良い。
例えば、上述したオーダエントリシステム1000のバージョン情報の管理の点で以下のように変形することが考えられる。
一例として、オーダエントリシステム1000が設置されている店舗が複数あり、店舗毎にオーダエントリシステムの機器の構成やソフトウェアのバージョンが異なるために、この複数の店舗を識別する必要があれば、店舗識別情報を、図3のバージョン情報や図7のアップデートの際に使用するバージョン情報に加えるようにすればよい。このようにして店舗を識別し、店舗毎に次期バージョンや現行バージョンを異ならせるようにして、図7のアップデートの際に使用するバージョン情報を、オーダエントリシステム用ソフトウェア管理端末装置700に複数格納しておくようにしても良い。
同様に、1つの店舗に複数のオーダエントリシステム1000が設置されており、この複数の店舗オーダエントリシステム1000を識別する必要があれば、システム識別情報を、図3のバージョン情報や図7のアップデートの際に使用するバージョン情報に加えるようにすればよい。このようにしてオーダエントリシステム1000を識別し、オーダエントリシステム1000毎に次期バージョンや現行バージョンを異ならせるようにしても良い。また、例えばオーダエントリシステム1000毎に項目を変えるようにしても良い。例えば、コントロール端末装置300が含まれるオーダエントリシステム1000にはコントロール端末装置300の項目を入れるようにし、コントロール端末装置300が含まれないオーダエントリシステム1000にはコントロール端末装置300の項目を入れないようにしても良い。
また他にも、図3及び図7の例ではオーダエントリシステム1000内の各機器1種類につき1台ずつしか図示されていないが、同じ種類の機器が複数台あり、異なるバージョンが混在しているような場合には、この複数台それぞれ毎にバージョン情報が格納されるようにすると良い。この場合には、同じ種類の各機器を識別するために番号等のIDを割り当てればよい。
更に、1つの機器に複数のソフトウェアを別々に管理するようにしても良い。例えばバージョン情報管理部501を実現するためのソフトウェアと注文入力機能実現部504を実現するためのソフトウェアを別々に管理するようにしても良い。
また他にも、図7の例では或る機器に関して1つの次期バージョンに、1つの現行バージョンが紐付けられているが、これを変形して、或る機器に関して1つの次期バージョンに、複数の現行バージョンを紐付けるようにしても良い。
例えば現行バージョンが「1.0」又は「1.1」の何れかであった場合に、次期バージョンを「1.2」とするように紐付けをしても良い。また例えば現行バージョンが「1.8以下」というような形にしても良い。
なお、上記のオーダエントリシステム及び送付先システムのそれぞれに含まれる各機器は、それぞれがハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記のオーダエントリシステム及び送付先システムのそれぞれに含まれる各機器が協働することにより行なわれる通信方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)ネットワークに接続されてシステムを構成する装置のひとつである端末装置が、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を前記ネットワークから取得し、
前記端末装置が、前記ネットワークに非接続となってから、前記第1の情報に対応する第2の情報であって、前記ソフトウェアの現行バージョンに対応する次期バージョンに関連する情報を、前記ネットワークには接続されていない管理装置から取得し、
前記端末装置が前記ネットワークに再接続されてから、前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートすることを特徴とするソフトウェアアップデートシステム。
(付記2)前記第1の情報とは前記ネットワーク内の各装置に組み込まれているソフトウェアそれぞれの現行のバージョンを特定するための情報であり、前記第2の情報とは、前記現行のバージョンに対応する次期バージョンを特定するための情報及び次期バージョンのソフトウェアを含むことを特徴とする付記1に記載のソフトウェアアップデートシステム。
(付記3)前記第2の情報により前記装置のソフトウェアを前記次期バージョンにアップデートする際の前記第2の情報に含まれる次期バージョンを表す情報を、次回のアップデートのために、前記装置が、前記ネットワークから前記第1の情報として取得することを特徴とする付記1又は2に記載のソフトウェアアップデートシステム。
(付記4)前記管理装置は前記ネットワークに接続されている装置それぞれについて、前記ソフトウェアの現行バージョンと該現行バージョンに対応する次期バージョンとの対応付けを管理しており、前記管理装置は前記装置が取得する第1の情報に基づいて、前記ネットワーク内の各装置に組み込まれているソフトウェアそれぞれの現行のバージョンに対応する次期バージョンのソフトウェアを前記端末装置に送信することを特徴とする付記1乃至3の何れか1に記載のソフトウェアアップデートシステム。
(付記5)前記ネットワークに接続されている装置はオーダエントリシステムを構成する装置として機能し、前記端末装置は前記オーダエントリシステムにおいて注文の入力を受け付ける携帯端末装置として機能することを特徴とする付記1乃至4の何れか1に記載のソフトウェアアップデートシステム。
(付記6)ネットワークに接続されてシステムを構成する装置のひとつである端末装置が、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を前記ネットワークから取得し、
前記端末装置が、前記ネットワークに非接続となってから、前記第1の情報に対応する第2の情報であって、前記ソフトウェアの現行バージョンに対応する次期バージョンに関連する情報を、前記ネットワークには接続されていない管理装置から取得し、
前記端末装置が前記ネットワークに再接続されてから、前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートすることを特徴とするソフトウェアアップデート方法。
(付記7)ネットワークに接続されてシステムを構成する装置のひとつである端末装置であって、
前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を前記ネットワークから取得し、
当該端末装置が前記ネットワークに非接続となってから、前記第1の情報に対応する第2の情報であって、前記ソフトウェアの現行バージョンに対応する次期バージョンに関連する情報を、前記ネットワークには接続されていない管理装置から取得し、
当該端末装置が前記ネットワークに再接続されてから、前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートするために、前記第2の情報を前記ネットワークに送出することを特徴とする端末装置。
(付記8)ネットワークに接続されてシステムを構成する装置のひとつであり、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す情報を前記ネットワークにて取得した後に前記ネットワークに非接続となった端末装置から前記情報を取得し、
前記ネットワークに接続されている装置それぞれについて、前記ソフトウェアの現行バージョンと該現行バージョンに対応した次期バージョンとの対応付けを管理し、
前記情報及び前記対応付けに基づいて、前記ネットワーク内の各装置に組み込まれているソフトウェアそれぞれの現行のバージョンに対応する次期バージョンに関連した情報を前記端末装置に送信することを特徴とする、前記ネットワークには接続されていない管理装置。
(付記9)ネットワークに接続されてシステムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を、前記ネットワークに接続されて前記システムを構成する装置のひとつである端末装置に送信し、
前記端末装置が前記ネットワークに非接続となってから取得した、前記第1の情報に対応した第2の情報であって、前記ソフトウェアの現行バージョンに対応した次期バージョンに関連した情報を前記端末装置が前記ネットワークに再接続されてから前記端末装置より取得し、
前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートすることを特徴とする前記システムのコントロール装置。
(付記10)端末装置としてコンピュータを機能させるソフトウェアアップデートプログラムであって、
前記端末装置とは、
ネットワークに接続されてシステムを構成する装置のひとつであって、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を前記ネットワークから取得し、
当該端末装置が前記ネットワークに非接続となってから、前記第1の情報に対応した第2の情報であって、前記ソフトウェアの現行バージョンに対応した次期バージョンに関連した情報を前記ネットワークには接続されていない管理装置から取得し、
当該端末装置が前記ネットワークに再接続されてから、前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートするために、前記第2の情報を前記ネットワークに送出する端末装置であることを特徴とするソフトウェアアップデートプログラム。
(付記11) ネットワークに接続されてシステムを構成する装置のひとつである端末装置が行うソフトウェアアップデート方法であって、
前記端末装置が、ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を前記ネットワークから取得し、
前記端末装置が、前記ネットワークに非接続となってから、前記第1の情報に対応する第2の情報であって、前記ソフトウェアの現行バージョンに対応する次期バージョンに関連する情報を、前記ネットワークには接続されていない管理装置から取得し、
前記端末装置が前記ネットワークに再接続されてから、前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートすることを特徴とするソフトウェアアップデート方法。
(付記12) 管理装置としてコンピュータを機能させるソフトウェアアップデートプログラムであって、
前記管理装置とは、
ネットワークに接続されてシステムを構成する装置のひとつであり、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す情報を前記ネットワークにて取得した後に前記ネットワークに非接続となった端末装置から前記情報を取得し、
前記ネットワークに接続されている装置それぞれについて、前記ソフトウェアの現行バージョンと該現行バージョンに対応した次期バージョンとの対応付けを管理し、
前記情報及び前記対応付けに基づいて、前記ネットワーク内の各装置に組み込まれているソフトウェアそれぞれの現行のバージョンに対応する次期バージョンに関連した情報を前記端末装置に送信する、前記ネットワークには接続されていない管理装置であることを特徴とするソフトウェアアップデートプログラム。
(付記13) ネットワークには接続されていない管理装置が行うソフトウェアアップデート方法であって、
前記ネットワークに接続されてシステムを構成する装置のひとつであり、前記ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す情報を前記ネットワークにて取得した後に前記ネットワークに非接続となった端末装置から前記情報を取得し、
前記ネットワークに接続されている装置それぞれについて、前記ソフトウェアの現行バージョンと該現行バージョンに対応した次期バージョンとの対応付けを管理し、
前記情報及び前記対応付けに基づいて、前記ネットワーク内の各装置に組み込まれているソフトウェアそれぞれの現行のバージョンに対応する次期バージョンに関連した情報を前記端末装置に送信することを特徴とするソフトウェアアップデート方法。
(付記14) コントロール装置としてコンピュータを機能させるソフトウェアアップデートプログラムであって、
前記コントロール装置とは、
ネットワークに接続されてシステムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を、前記ネットワークに接続されて前記システムを構成する装置のひとつである端末装置に送信し、
前記端末装置が前記ネットワークに非接続となってから取得した、前記第1の情報に対応した第2の情報であって、前記ソフトウェアの現行バージョンに対応した次期バージョンに関連した情報を前記端末装置が前記ネットワークに再接続されてから前記端末装置より取得し、
前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートする前記システムのコントロール装置であることを特徴とするソフトウェアアップデートプログラム。
(付記15) システムのコントロール装置が行うソフトウェアアップデート方法であって、
ネットワークに接続されて前記システムを構成しているすべての装置のソフトウェアの現行バージョンを表す第1の情報を、前記ネットワークに接続されて前記システムを構成する装置のひとつである端末装置に送信し、
前記端末装置が前記ネットワークに非接続となってから取得した、前記第1の情報に対応した第2の情報であって、前記ソフトウェアの現行バージョンに対応した次期バージョンに関連した情報を前記端末装置が前記ネットワークに再接続されてから前記端末装置より取得し、
前記第2の情報により前記すべての装置のソフトウェアを前記次期バージョンにアップデートすることを特徴とするソフトウェアアップデート方法。
(付記16) 注文入力端末から顧客の注文を入力し、厨房端末装置から顧客の注文を出力し、POS端末装置で顧客が飲食した料理等の代金の会計処理を行うオーダエントリシステムにおいて、前記注文入力端末に、システムを構成する装置のソフトウェアのバージョン情報を記憶し、前記オーダエントリシステムとは通信接続されていない前記オーダエントリシステムのソフトウェアの管理端末装置で、前記注文入力端末から前記バージョン情報を読み取り、前記注文入力端末に、前記バージョン情報に対応するアップデートのバージョン情報とアップデート用ソフトウェアを格納し、その後、前記注文入力端末がシステムに接続されると、格納されている前記アップデートのバージョン情報と前記アップデート用ソフトウェアとを用いて、システムを構成する装置のソフトウェアのアップデートを行うオーダエントリシステム。
(付記17) 付記16に記載のオーダエントリシステムにおいて、システムを構成する装置とは、前記注文入力端末、前記厨房端末装置、前記POS端末装置、及びシステム全体の制御を行うコントロール端末装置であり、前記コントロール端末装置が、システムを構成する装置のソフトウェアのアップデートを行うオーダエントリシステム。
(付記18) 付記16に記載のオーダエントリシステムにおいて、システムを構成する装置とは、前記注文入力端末、前記厨房端末装置、前記POS端末装置であり、前記POS端末装置は、システム全体の制御も行う装置であり、前記POS端末装置が、システムを構成する装置のソフトウェアのアップデートを行うオーダエントリシステム。