「つくる人」と「つかう人」のこだわりを追求する

tsumug edge

今だけじゃない、『一歩先』を見据えたシステムを作る:Inside TiNK-ソフトウェアのこだわり

株式会社tsumug(ツムグ)が提供する「TiNKシリーズ」には作り手のこだわりが随所にあります。そのこだわりを読み解いてみましょう。今回はソフトのこだわりです。

f:id:tsumuginc:20180430002326j:plain
tsumugのエンジニアであるKeyさん

株式会社tsumugが発売するコネクティッド・ロック「TiNK(ティンク)」には、どのようなこだわりがあるのでしょうか。 今回は「ソフトのこだわり」について、tsumugのソフトウェアエンジニアであるKeyさんにお話を伺いしました。

tsumugとの出会い

実はkeyさんは、tsumugの社長である牧田さんからのオファーを一度断っています。

以前、牧田さんとKeyさんは、別の会社でしたが同じオフィスだったので、「顔は知っている」程度の関係だったそうです。

TiNKの開発が始まる前に、Keyさんは牧田さんから開発に誘われましたが、その当時は影も形もなく、「そのプロダクトが何を目指しているのかよくわからない」と思い、そのときは断わりました。

基本的な鍵デバイスのアーキテクチャや仕様のベースができたタイミングで、牧田さんから二度目のオファーが来たたそうです。

「二度目に声をかけてもらったときには、初期のプロトタイプができていて、目指す方向性もみえていたので、これだったらいいかなと。いいプロジェクトでも、タイミングが悪いと参加できない場合もあるのですが、たまたまよいタイミングで声がかかったので、是非にと参加しました。」

f:id:sofkun:20180429074121p:plain
TiNKのページにあるこのムービーも、牧田さんの実体験から作られた

スマホを使わない人でも使えるように

TiNKは、数字だけで構成される「PINコード」を入力して開錠する手順があります。

そもそもこのプロダクトは、tsumug代表・牧田さんの「別れた彼氏に勝手に合鍵を作られて入られてしまった」という実話が出発点になっていて、合鍵を作られないためには物理鍵をなくせばよいのではないか、というところからスタートしています。

いろいろな人が住むことが想定される賃貸物件向けには、スマホだけを使う案も出されましたが、場合によってはスマホを持っていない人が一定数いることを考えると「スマホを鍵にする」というのは、賃貸物件向きではないのでは、との話になりました。

そこで、子供でも覚えやすく、安全に鍵の管理や入退室を管理するため、PINコードを採用。PINコードは各ユーザーに紐づけられ、入退室の人物を個別に管理することも可能です。

f:id:sofkun:20180429074329j:plain
TiNKの表面にはPINコードの画面が表示されている

こんな複雑なシステムははじめて

TiNK本体には、「Afero(アフェロ)」というセキュリティチップが入っています。

このチップは、スマホとBluetooth接続して、Aferoのプラットフォームを利用し、ハードウェアとAferoのユーザー認証(操作しているハードウェアが正しいか、このユーザーアカウントがこのデバイスを操作してよいのかなど)を、すべてクラウド上で行っています。 そして、BluetoothとLTEをつかって、スマホとデバイス、サーバーを通信させているとのことでした。

「こんな複雑なシステムは初めて見ました。賃貸物件の管理人、入居者、その家族などアクター(システムを触る人)が多く、システム上の部品もとても多い。鍵はひとつでも、ハードウェアは室内・室外で2つ、通信モジュールも2つついてるし、通信技術の理解、プラットフォーム(Aferoとsakura.io)の知識、それらに紐づいたデータをさばけるサーバー、アーキテクチャだったり、それをうまく抽象化するようなAPIの設計。それらを全部まとめて理解してから、アプリを作ったりと、やることが膨大。」

利用時にトラブルが起きた場合の対処も、アプリでできるようになっています。

たとえば、「TiNK」は専用のバッテリーを充電して使いますが、LTEは消費電力が比較的高く、バッテリが上がってしまったり、そうでなくても基地局で通信障害が起きてしまう可能性があります。

しかし、そのような場合でも「Afero」を通して操作し、開けたり閉めたりが可能になるとのこと。 また、室外機が壊れてしまったり、盗まれてしまったりした場合、スマホを室外機のようにして、操作することが可能になっています。

f:id:tsumuginc:20180430150611j:plain
アプリでキーを発行できる(※画面は開発中のもの)

大きいのはログデータ

もともとサーバーサイドのエンジニアであるkeyさんは、クラウド上にあるデータベースのチューニングをしたり、アプリケーションのキャッシュを工夫してアプリケーション自体の高速化を図ったりと、全体のパフォーマンスのチューニングを随時行っています。

それでも大きくなるのは、入退室のログデータなどで、ログデータは構造化させないで、簡素なテキスト・データで登録していくような仕組みにしたとのこと。

そして、アトミックな操作(他者が割り込めない操作)で更新しなければいけないものだけ、旧来のリレーション・データーベース使ってます。たとえば、賃貸物件の情報(入退去処理)はそれにあたります。

先を見据えながらアプリ・システムを開発

TiNKは発表後、多くの方から問い合わせがきています。その中には、LTEではなく、Wi-Fiでつなぎたいという人もいたそうですが、どんな家にもWi-Fiがあるとは限らないこと、また初期設定などが必要なく簡単に使い始められることを考えて、現状はLTEをメインに開発しています。

しかし、一方で管理物件側の負担を減らすため、賃貸管理機能を付けたりなど、「今後、提携するかもしれないサービス」なども含めて、アプリを開発しています。

すでにいくつか「これから建てる建物につけてほしい」という要望が多くあったそうです。

今後はドアの近くに電源供給用コンセントを付けたり、Wi-Fiが予め全部の部屋に用意したりと、建物の段階で設計できるので、TiNKを物件に合わせて、機構簡略化・最適化していくことも検討しています。

f:id:sofkun:20180429074637p:plain
将来的にはこのような宅配サービスと連携することも想定

開発秘話は後編で

今回は開発する上でのこだわりの部分を中心に聞いてきましたが、次回は実際の開発の「手法」を中心にお聞きしたいと思います。

株式会社 tsumug | 〒810-0041 福岡市中央区大名 2 丁目 6-11 FUKUOKA growth next 301