bit Time

bit Timeは、イタリアのローマに本拠を置くソフトウェア開発ファームだ。同社は、Android向けのゲームbit Time Connect 4を開発しました。Connect 4は、5万回あまりもダウンロードされており、世界中にプレイヤーがいる。

dx logo 140

組織

bit Time

アプリケーション

Android版ゲーム「Connect 4」サーバーアプリケーション、通信管理および接続

使用したツール

Delphi, RAD Cloud DataSnap, InterBase database

課題

モバイルデバイスのユーザーを取り込むことで市場機会を拡大する

迅速なAndroid開発/配置により競合に打ち勝つ

モバイルデバイスのバッテリーの有効使用

結果

DelphiのRAD Cloud多層アーキテクチャ

Androidゲーム接続用Delphi DataSnapモバイルコネクタ

モバイルデバイス電源を有効使用するためのDataSnapコールバックテクノロジー

connect4

bit Timeは、イタリアのローマにあるソフトウェア開発コンサルティング会社で、エンバカデロのマーケティング/販売パートナーでもある。この会社には2つの部門があり、一方は販売およびマーケティングを、他方は開発を担当している。開発しているアプリケーションはさまざまな分野にまたがっている。開発チームはエンバカデロと密接な協力関係にあり、モバイルデバイス用のRAD Cloud DataSnapコネクタの作成にも貢献した。

「Delphiを使用すると、開発もビルドも実行も高速化できます。ランタイムのない実行可能ファイルだけを配置すればよいので、配置は本当に簡単です。」

bit Time R&D ディレクタ
Daniel Teti 氏

bit Time は、DataSnapテクノロジーの経験を活かしてAndroid版ゲーム「Connect 4」を作成した。JavaやMicrosoft .NETなど、他の技術を採用することも検討したが、Javaは速度が遅く、.NETを使用するとマシンへの依存が発生したりインストールするバージョンが制約されることがわかった。.NETでは、Android開発を行ったりWindows以外のプラットフォームのアプリケーションを作成することもできない。Javaも.NETも、今回使用したDataSnapテクノロジーに相当する技術を提供していなかったのだ。

bit TimeはDataSnapが非常に効率的であることに気付き、コールバックメカニズムが決め手となってDelphiの採用を決定した。Android版ゲーム「Connect 4」では、コールバックによって参加者間の通信交換を行っている。そのため、モバイルデバイスのバッテリーの消耗を早めることとなる、サーバーから情報を取得する時間のかかるプルメカニズムを使用する必要がないのだ。



Connect 4("Captain's Mistress"、"Four Up"、"Plot Four"、"Find Four"、"Four in a Row"、"Four in a Line" とも呼ばれる)は、2人で行うゲームで、それぞれが色を選択し、順にコマを落として同じ色のコマを縦または横に4個並べるというものだ。最初はWindows版として開発されたアプリケーションだったが、その後、同社はAndroid版の作成を決めた。

「これは、実際のところ、この種のゲームを市場に出せるかどうかを評価するためのパイロットテストなのです。アーキテクチャにはDelphiのDataSnapを使用しました。また、社内でAndroid開発の教育をするためにも使っています」

bit Time CEO
Fabrizio Bitti 氏

Android版ゲームのConnect 4では、DataSnapのコールバック機能を頻繁に使用している。bit Timeでは、Android開発にDelphi 言語とIDEの両方を使ってサーバー側を構築した。Androidゲーム接続にはDataSnapコネクタを、HTML5クライアントにはJavaScriptプロキシを使用した。そして、バックエンドデータベースにはInterBaseを使用した。

bit TimeがInterBaseデータベースの採用を決めたのは、バックエンドデータベースの心配をしたくなかったことと、トランザクション数が多いため極めて高速のデータベースが必要だったことが理由だ。「InterBaseが優れているのは、メンテナンス不要のデータベースであること、メモリ使用量が小さいこと、非常に高速であることです」とTeti氏は述べている。

Connect 4はマルチプレーヤーゲームなので、マルチプレーヤーモードでしかゲームができない。1回のゲームでコマの移動が20回ほどあり、40ほどのコールバックが行われる。そのため、1回のゲームは少なくとも60のDataSnapリクエストから構成されることになるのだ。移動はそれぞれが1つのデータベーストランザクションでもある。

map

「非常に評判が良かったことには本当に驚き、興奮しています。このAndroid版ゲームは10,000回から50,000回もダウンロードされています。参加者は世界中にいます。おかげで、私たちはなかなかいい収入を得ています。Android版ゲーム自体は無料ですが、広告が収入源になっています。ゲームで遊んでいる間、使用しているモバイデバイスに広告が流れます。Android版ゲームから収益を得るには、これが一番優れた方法です。」(Teti氏)

「Android市場への参入には、私たちだけでなくすべての人が関心を持っています。パイロットプロジェクトを構築し、開発者にAndroid開発を奨励したかったのです。」(Bitti氏)

2人が余暇に何をしているかを聞くと、Teti氏は次のように言って笑った。「プログラミングが好きなので、空いた時間にはオープンソースプロジェクトをやっていますよ。」