【LANSA導入事例】DUMAC社のLANSAの評価は満点
システムに必要な3要素:「高品質」「スピード」「手頃な価格」すべてをクリア
オペレーティング・システムやデータベース、開発言語の大規模なアップグレードがリリースされる度に、DUMACでは、問題なく稼働しているビジネス・ロジックの見直しを強いられ、これが長年の悩みの種でした。そこで、DUMACは将来コードの見直しや複数のバージョン管理をしなくても済むように、別の開発環境を使って古いVisual Basicベースの小売システムを一から開発することを決定したのです。
検討の結果、最終的にDUMAC社は開発環境としてVisual LANSAを選択。「RORC」と呼ばれる新しいシングルソースのPOS (Point-of-Sale) およびバックオフィス業務のソリューションを開発し、Windowsオペレーティング・システムも混在する、米国およびカナダの1,000件以上の小売店舗に展開し、成功を収めています。
課題
アメリカ・ニューヨーク州シラキュースに本社を置くDUMAC Business Systems社は、1952年に創業されました。北米(アメリカ・カナダ)に数千件の顧客を持ち、クイックサービス(短時間で料理の注文から提供までを行うサービス)、スーパーマーケット、テーブルサービス(着席している利用客に提供するサービス)の市場に対し、POSやバックオフィス業務のソリューションを提供しています。
1980年代初頭、小売業界では機械のキャッシュ レジスターから、会計時に商品をスキャンする電子システムへの移行が進み始めていました。「スキャンをしない小売店は、顧客から古臭い店という目で見られました。ただ、当時は小売業界で電子化のPOSスキャン・システムを提供するのは、1レーンにつき1万米ドル(約150万円)以上を請求する大手企業数社しか存在しませんでした。大手小売チェーンはこのような大規模投資ができましたが、多くの独立系小売業者にとっては、このコストは法外な値段でした」(DUMAC社CTO ジョー・ジューリッチ氏)
1985年、3つの卸協同組合が集まり、小売業者の店舗内システムに対する導入支援を行うことにしました。「私たちは、RORCと呼ばれている製品の開発を開始しました。RORCでは、まずバックオフィス業務の価格管理システムの開発に着手し、続いて、ローエンドのPCで動作するシンプルなPOSスキャン・システムの開発を進めました。小売業者のお客様の意見をもとに、バックオフィスとPOSシステムの両方が年々進化していきました。」(同上)
「レーン単位のコストを大幅に削減することで、小売業者はスキャン・システムの導入を実現できました。コストの大部分を占めたのはハードウェアでした。それまで私たちはMS AccessのデータベースをVB(ビジュアルベーシック)で開発しており、このソリューションは15年間、問題なく稼働していたものの、ユーザー・インターフェースの更新が必要でした。また、設定や構成オプションは柔軟性に欠けていたため、当初は予定していなかったことも、MS Accessを使って無理やり行わなければなりませんでした。」(同上)
DUMACは活用できる適切な小売業向けのオートメーション・ソリューションのパッケージがないか調査していましたが、15年経った時点でも、お客様にとってはかなり高価であることが判明しました。さらに、これらパッケージ・ソリューションの多くの機能はチェーン店運用者向けであり、独立系の小売業者は必要のない機能でした。そこで、RORCソリューションをイチから開発することに決め、開発環境のリサーチを開始したのです。
非常に多くの時間やリソースを費やした割には、それに見合う新機能はまったくありませんでした。
新しい開発環境を求めて
「.NETへの移行も検討しましたが、VBの大きな問題だったコードの安定性が解消されないことが分かりました。過去何年もの間、マイクロソフトがVBやAccessを刷新するたび(平均3年ごと)に、ソースコードが新しいIDE、データベースやOSとの互換性がないという理由から、それまで問題なく稼働していたビジネス・コードを多くの時間を費やして再構築せざるをえませんでした。非常に多くの時間やリソースを費やしていた割には、それに見合うような新機能はまったくなかったのです。」
ジューリッチ氏は他の開発オプションを調べる中で、LANSAに出会いました。「LANSAで気に入ったのは、基礎となる低レベルのコーディングを処理してくれること、そしてオペレーティング・システムやデータベースの互換性に依存することなく、ビジネス・ロジックが守られることでした。ですから一度ビジネス・ロジックを書けば、将来、別のデータベースや別のオペレーティング・システムに移植することも可能です。また、その際に必要となるのはソースコード1セットを管理するだけなので、ソリューション・プロバイダーにとっては最高の製品です。また、限られた期間内に新しいソリューションを開発しなければならないため、LANSAが提供するフレームワークや生産性の高いローコードのも気に入りました。
今回のソリューションに関しては、多くの機器(スキャナー、キャッシレジスター、レシートのプリンターなど)との連動が必要だったため、集約的な概念実証(POC)が求められました。これらの機器との通信速度を高めるための若干の調整を行った後、LANSAは無事に承認されたのです。
別のプラットフォームにも移植できることは、ソリューション・プロバイダーにとっては最高の機能です。
プロジェクトとソリューション
(写真左から)DUMACのCTOジョー・ジューリッチ氏、RORCの顧客Foodlandのオーナー、ロン・モナハン氏、AWIの情報システム担当副社長グレン・クリクズキー氏
プロジェクト・チームは、ビジネス・アナリスト3名(各卸協同組合から1名ずつ)、社内開発者4名(既存のVBプログラマーとインターンの大学生)、LANSAプロフェッショナル・サービスのコンサルタント(メンター)で構成されました。
このRORCを利用する小売店はレジが1~2レーンの小規模な家族経営店舗から、30レーンを超える店舗まで規模は様々でした。小規模な小売店の要件は、大規模店舗とは大きく異なります。さらに、3つの卸協同組合にはそれぞれ独自の基準や手順がありました。そのため、ソリューションはかなり柔軟である必要がありました。
3人のビジネス・アナリストは、既存システム全体を細かく分析し、その結果、現在のシステムについて小売業者が「気に入っている機能」、「嫌な機能」、「修正や追加が必要な機能」に分類しました。この意見をもとに、新システムの設計が初めからやり直されました。
「LANSAを利用することで、通常のソフトウェア開発ライフサイクル(要件の分析、開発、テスト、複数のパイロット・プログラムなど)が以前よりも短い期間で実施できました。最初のパイロット・プログラムには少々問題が発生したものの、プロジェクトの規模から考えると、大きなダメージを与えるものではありませんでした。そして、2番目の現場で稼動した際は、サポート用の倉庫が受けた問い合わせはわずか数件で、しかも、その中には技術的な問題に関するものはなかったのです。」
バックエンド業務とPOSのシステムはいずれもLANSAで開発され、データベースはSQL Anywhereが使用されました。POSのクライアントは、バックオフィスのサーバーに切断されていない状態でも、独自に実行することができ、再度接続した時にデータが同期される仕組みです。
食料品の小売オートメーションに馴染みのない人にとっては、かなり複雑な処理が含まれていました。バックオフィス・システムでは、価格管理、在庫の管理と補填、売上の統計が提供されます。また、手元にある(レジの)現金、実際の金庫内の現金、そしてバックオフィス業務用の現金(シフト別の現金管理など)の調整も行われます。また、生産性のレポートには、各レジが1分間に処理する商品の数や、お釣りを手渡すまでの時間など、非常に細かな点にわたる詳細な統計が含まれています。
POSシステムは様々な電子機器に対応しており、常連顧客向けのプログラムも統合されています。また、サードパーティのアプリケーションを組み込むことで、セキュリティの確保やクーポンを提供することが可能です。価格設定のエンジンは、どの価格(通常価格、セール価格、ロイヤルティ価格)を提示するか、どの割引が顧客に有効なのか(シニア割引、特別オファー、2点購入で1点は無料など)を素早く決定してくれます。ロイヤルティやeクーポンのアプリケーションと連動する際、POSシステムは情報をサードパーティに送信し、レシートに表示するメッセージや特別価格、割引などに関する指示を受け取ります。これらの処理すべてが短時間で実行されなければなりません。「商品をスキャンして、正しい価格を表示するまでに1秒もかかりません。LANSAの開発プラットフォームを使ったことで、RORCのPOSシステム処理が驚異的な速さになりました。」
サードパーティ・システムと双方向で通信できる機能に加え、RORCのPOSソリューションでは、店舗のセキュリティシステムとの一方向インターフェイスも提供されており、レジ係が押したキーや、操作なども監視できます。また、私服の警備員がPOSデータとビデオ・カメラが撮影するデータを照合させ、状況確認を行うこともできます。
POSシステムは様々な電子機器を扱うことができ、サードパーティのアプリケーションと統合できます。
利点
「1,000件以上の店舗でこのRORC POSソリューションが導入されており、いつも非常に良いフィードバックを頂いています。この新システムの小売業者にとっての主な利点としては、システムの安定性、新しい機能、そして生産性の高いモダンなユーザー・インターフェースが挙げられるでしょう。
小売業者は、バックオフィスのサーバーやPOSクライアントの電源をうっかり途中で切ってしまったとしても、電源を入れ直せばすべてが回復します。コミットメント制御は、今回の新設計における大きなメリットです」
「大変複雑なアプリケーションで、多くの機能や実装オプションが存在しますが、非常に直感的に使用できます。ですからトレーニングも複雑ではなく、レジ係では20分、そして店長がプラス20分程度です。
ITの観点からすると、LANSAで開発されたソリューションは、VBソリューションよりも管理がはるかに簡単です。現在はオブジェクト指向のコードになったので、メンテナンスも簡単になりました。オペレーティング・システムやデータベースのバージョンの互換性を心配する必要もなく、時間の節約になり、過去のコード見直しの頭痛の種がなくなりました。
大きな利点は、このシステムがハードコーディングではなく、データ駆動型であることです。そのおかげで、DUMACはユーザーに不要のオプションを非表示にすることで、同じアプリケーションでも「カスタマイズされた」ルック・アンド・フィールを提供できます。またロールベース・セキュリティによってルック・アンド・フィールが管理されているため、各ユーザーは許可された機能のみが表示されます。このように、要件に合わせてすっきり整理整頓されたUXデザインにより、小売業者にとっては、使いやすく、生産性の高いシステムになっているのです。」
下支え部分のバージョン互換性を心配する必要がないため、時間が節約でき、頭痛の種が取り除かれました。
まとめ
「ユーザー・インターフェースの大幅な刷新、プロセスの簡素化、さらにユーザーが構成可能な設定がシステム全般に追加されたため、非常に柔軟性の高いシステムとなりました。私たちはこのシステムを、『独立小売業者による独立小売業者のためのデザイン』と呼んでいます。大手チェーン店が使用するシステムと同等か、場合によってはそれ以上の機能を持つシステムを、はるかに少ないコストで導入することができるのです。
何年か前に、ある人から『プロジェクトに任命するメンバーによってあなたの将来が決まることを忘れないように』とアドバイスされました。多くのマネージャーが『いなくても困らない』人にプロジェクト・チームを任せてしまうケースがよくあります。『いなくても困らない』人になぜ自分の将来を託すでしょう?そうではなく、一番手放したくないと思う人材にプロジェクトを任せることが大切です。最終的には、その人たちが担当のエキスパートとなってくれることでしょう。プロジェクトが開始した際、私は3つの卸協同組合それぞれに、一番いてほしい人をプロジェクト担当者に任命するようリクエストし、各組合が人選を行いました。数年前に私がもらったアドバイスは、今でも正しいことが証明されました。能力の高いビジネス・アナリストがプロジェクトに参加したことで、優れたシステムを予定通りに提供することができました。
システム構築時には、常に3つの要素が望まれるという昔からの言葉があります。つまり「高品質」「スピード」「手頃な価格」の3つです。実際には、3つ目は妥協することを承知の上で、このうち2つを選択するのが通常です。例えば、品質は高く速くても、値段は安くないシステム、もしくは、速くて手頃な値段でも、品質が劣る場合もあります。LANSAは、この3つの要素すべてを実現してくれました。仕上がったシステムは非常に優れたものですし、他の言語で作るよりもはるかに速く作ることができました。さらに、結果的には別の方法を使った場合よりもかなり安く収めることができたのです。」
システムに常に求められる3要素は「高品質」「スピード」「手頃な価格」―現実はこのうちどれか2つで妥協が必要ですが、LANSAでこの3つすべてを叶えてくれました。
会社概要およびシステム情報
ニューヨーク州シラキュースが本社のDUMAC社は、1952年から食料品業を展開しています。アメリカとカナダの1,000店以上の個人経営のスーパーマーケットがDUMACのPOSソリューションを使用しています。またDUMACは、接客業やレストラン向けにPOSハードウェアも販売しています。
RORCのPOSおよびバックオフィス/システムは、DUMACの旗艦となる小売/食料品向けのソフトウェア・ソリューションです。いずれもVisual LANSAで開発されたもので、WindowsクライアントおよびWindowsサーバー、またSQL Anywhereデータベースに配布されています。
詳細は、https://www.dumac.com/(英語)をご覧ください。