RETALIX は数千ものユニット / 統合テストのスピードアップして、CI サイクルを 90% 高速化

「Retalix 10 Store and Sales Channel」スイートは 実店舗、モバイルコマース、オンライン店舗システムのデプロイや管理を統合・合理化します。このソリューションの持つアジャイル アーキテクチャが小売店を業種ごとの「サイロ」を統合する手間から解放します。より柔軟な単一エンジン プラットフォームにより、マーケットへの素早い対応や高度な集中管理、モニタリング、コントロールが可能になります。Retalix の次世代 POS (販売時点情報管理) システムはハードウェアに依存しないため、さまざまなプラットフォームや周辺機器に幅広く導入できます。また、ソリューションは小売の現場だけではなく、店舗や在庫管理アプリとも統合されています。

 

チャレンジ

POS スペースで強固で拡張可能なプラットフォームを開発するには、高いパフォーマンスと豊富な機能を備えたソリューションだけでなく、ソフトウェアのテスト サイクルをアップデートし、個々の開発からシステム全体のプロセスまで、十分に効率的なテストを行い、高品質で素早いリリースを実現しなければなりません。Retalix は複雑なモジュール方式のためにソフトウェアの開発・テストで大量のリソースを消費するという問題に直面していました。15,000 に及ぶユニットテストをサイクルごとに実行する場合、プラットフォームにはよりスケーラブルな拡張性能が求められます。イテレーションごとに最新のバージョンが必要で、バージョンの更新中はテストの修正がコミットされるまで他の作業は待たされます。これには 40 分かかっていましたが、新しいハードウェアの導入や開発者の PC で DDS を使用することで 12 分に短縮しました。もっとビルド サイクルを短縮する方法を探すのが次の課題でした。最初のソリューションのデプロイが終わり、実行中に浮かび上がった次のチャレンジに立ち向かうことを決めました。継続的インテグレーションのプロセス内のシステムテストです。各システムテストのプロセスは、環境のセットアップ、仮想マシンの準備で構成されます。最初の最適化と新しいハードウェアの導入後は 1 日に 3 回実行されており、およそ 2 時間 30 分 (最長 4 時間) を要していました。

 

ソリューション

IncrediBuild Agent をインストールすることで、開発者は自分のデスクからユニットテスト サイクルを開始したり、Agent コンピューター上でネットワーク上のすべてのコアを利用できるようになりました。およそ 15,000 のユニットは、現在同時に処理されています。そして、開発者の日常業務は劇的に変わりました。最適化されたハードウェアやインフラ改善により 12 分になったプロセスはさらに短縮されて 1 分 20 秒になりました。これはおよそ 10 倍のスピードアップです。50 分~ 1 時間 10 分かかっていた全体のデバッグ バージョンは、わずか 10 分ほどになりました。

 

結果

テスト時間が 90% 短縮したことで、ビルドプロセス全体が劇的に高速化しました。また、テスト サイクルの回数を増やすことで、デリバリーが大幅に改善しました。

   IncrediBuild 以前
(すべての処理)
   IncrediBuild 以後
(すべての処理)
   30,000 ユニットテスト    2 時間    12 分
   CI のシステムテスト    50 分 1 分 20 秒

「IncrediBuild がリリース サイクルを 12 分から 1 分 20 秒に短縮したことで、1 日に何回もビルドを行えるようになりました」

Retalix (NCR) – リリース マネージャー、Alon Gliat 氏