商品スタッフⅠ
市内に三店舗を展開する食料品販売店様より御依頼を受けました。本システムは弊社オリジナルの製品です。本部用商品管理システム、三つの店舗用POSレジスターシステムを2004年に稼働させました。
商品スタッフⅡ開発の基盤となる製品です。
本部・店舗間はインターネットを介したオンラインで接続され、本部で作成された商品データ、店舗での売上データ等が双方向に自動的に転送されるほか、本部倉庫の在庫数を店舗側で一覧するなどの機能があります。
機器構成
- DELL製サーバマシン(RAID5構成)
- 各種パソコン(Sharp,NEC,DELL)
- イーサネットスイッチ及びLANケーブル
- Bフレッツファミリー100・ISP契約、DCUレンタル、ルータ
- ノートパソコン
- パソコンPOS機材(レシートプリンタ、POSキーボード、バーコードスキャナ、カスタマディスプレイ、ドロワ)
- インクジェットプリンタ
- ADSL・ISP契約、ルータレンタル
※耐障害性を高めるためRAID5を導入した本部サーバマシンと各店舗のパソコンPOS機材以外は特別なものは使用していません。一般の家電製品販売店で取り扱い可能なものです。
全体構成図
本部・店舗間の接続は専用線ではなく、安価な民生用の通常のインターネット接続を使用しています。
この接続によって商品データ(本部から店舗へ)及び売上データ(店舗から本部へ)を自動的に転送します。
接続はzebedee暗号化トンネルを介しており、侵入や盗聴等の危険を回避します。
回線トラブルによって仮に数日間の切断があったとしても、本部・店舗の双方が正常な運用ができるよう、
本部だけではなく各店舗にデータベースシステムを搭載しています。それらの間は弊社独自のレプリケーション機構によって、各データの同期を行います。
ソフトウェアシステム構成
本システムでは以下の技術を使用しています。
- プログラムはすべてJava言語によるものです。
- 比較的低速なパソコンでも動作するように、アプリケーションにはSwingではなくeclipse-SWTウィジェットを使用しています。
- アプリケーションの更新を自動化するためJava Web Startを利用しています。
- フリーで高機能・安定性の高いFirebirdリレーショナルデータベースシステムです。
事務所システム・店舗システムのそれぞれで使用しています。 - Jetty、Struts、freemarker、Jakarta POI、jCharts
Webアプリケーションは定番のStrutsを利用していますが、テンプレートシステムとしてはJSPではなくFreemarkerを利用しています。
また、Jakarta-POIによりExcelファイルを、JChartsによってグラフをそれぞれ自動生成します。
レプリケーション
本システムでは弊社独自のレプリケーション機構を開発し、本部システム・店舗システム間の双方向のデータ転送を実現しています。本部システム側で登録した商品情報などを店舗システム側に自動転送し、店舗システム側で発生した売上情報などを本部システム側に自動転送します。実際には、この操作は常に店舗システム側から行われます。
すなわち、店舗システム側のデーモンによって、本部システムデータベースに接続し、自データの送信と相手データの取得が行われます。