スマホアプリ「みまもりNP1」開発ウラ話
こんにちは。いつも パイオニア公式noteをご覧いただきありがとうございます。Cross Technology Center 開発本部 モバイル開発部の沖田です。
パイオニアは、コンシューマー向けに“会話するドライビングパートナー”「NP1」を発売しています。今回は、その「NP1」をベースに開発し、今年春にリリースした「NP1車内置き去り防止安全装置」の専用スマホアプリ「みまもりNP1」の開発裏話をご紹介します。
「みまもりNP1」は、送迎用バスにおいて園児を置き去りにしないようにする製品と連携するアプリであり、カーナビやドライブレコーダーの機能を主軸としたコンシューマー向け「NP1」の連携アプリとは、利用シーンもユーザー層も全く異なります。カーナビやドライブレコーダー、ドライプトピックといった多様な活用シーンに対応する「My NP1」に対して、「みまもりNP1」は送迎バスにおいて園児の置き去りを防止する、という明確な目的を持っていることが特徴です。そのため、「NP1」がベースとはいえ実際に「みまもりNP1」として製品化するには全くと言っていいほど視点を変える必要がありました。また開発期間が長く取れず、時間の制約も踏まえた上で製品仕様を決定しなければなりませんでした。
このような状況で「みまもりNP1」を開発してきた際に、気を付けてきた3点をご紹介します。
※本文中に使われている画像は実際の製品と異なる場合があります
スマホアプリ「みまもりNP1」の開発で特に気をつけた3点
1.利用シーンとユーザー層の違いを考慮した設計
スマホアプリの重要な役割として、本体のセットアップをガイドするという機能があります。物理的な設置は車両にて行いますが、使えるようにするためには最初にスマホアプリと本体をBLEなどで接続して初期設定をする必要があります。
「NP1」では製品に興味を持って能動的に購入していただけるユーザーが多いのですが、「NP1車内置き去り防止安全装置」は送迎用バスでの業務利用を想定しているため、これまでとは全く異なる方もユーザー層として考慮する必要がありました。車両についても一般の乗用車とは違い、車両の形状・構造が特殊であることも違いのひとつです。
そのためスマホアプリの初期設定では、最初に使うための設定フローを厳選し、不要な設定項目や画面を極力排除するとともに、送迎用バスならではの必要な情報を入れつつ、わかりやすい表現になるように調整を行いました。
また、「みまもりNP1」ではナビゲーション機能が不要なため、ナビゲーション関連の機能は削除しました。これも表層的に見えなくするだけでなく、内部処理の都合やライセンスの観点から大きく変更が必要だった部分のひとつです。
さらに、「みまもりNP1」固有の機能の設定方法についても検討を行いました。
「NP1」ではサーバー側に設定値を持つ機能と、「NP1」本体に設定値を持つ機能があり、いずれもほとんどスマホアプリから操作をします。
しかし今回は、車両に近いドライバーのみならず、園の関係者が設定を行うことも考慮し、設定できる項目はできるだけサーバー側に持たせてPCでも操作を行えるようにしました。
設定機能をサーバー側に持たせることにより、スマホアプリの開発工数短縮にも繋げることが出来ました。
他にも、NP1車内置き去り防止安全装置本体にはA.I.を活用して音声や画像で児童を検知する機能が搭載されている違いがあります。これは既存の「NP1」にカメラやマイクが搭載されていたからこそできた機能です。開発中はさまざまな学習データを集めるのに苦労しましたが、安全のためには非常に良い機能が開発できたと思います。
2.開発期間について
今回はそもそもの開発期間が限られている上に、スマホアプリではさらに審査の都合で量産開始の約1ヶ月前には開発とテストを完了させ、審査に提出する必要がありました。
最近では新規スマホアプリの審査も数日から1週間程度でほぼ完了しますが、それでもリジェクトされるリスクとその対応期間を考えたら、1ヶ月前というのはギリギリの範囲かと思います。
ましてやハードと連携するアプリに関しては、審査提出の際にハードと連動して動いている動画を準備する必要があります。その点に関してはハードの関連グループに、審査に必要な機能の開発を先に行ってもらう調整や協力のお願いが必要でした。
パイオニアではハードもアプリも同時期に開発しているので、ひとつのプロダクトでもチームごとに開発手法は異なり、アジャイルとウォーターフォールが混在しています。
そのため、お互いに「これはいつまでに何が必要」「あれはいつにならないと調達できない」ということを共有しておかないと、思わぬところで進捗が停滞してしまう可能性があります。
これは、「みまもりNP1」に限った話ではありませんが、開発を予定通りに進めるためには非常に重要な観点です。
スマホアプリに限らず、どのチームの要素も欠けてしまうと製品として成立しないのでプレッシャーは等しくありますが、自分たちではどうしようも出来ない「プラットフォーマーのアプリ審査」という点は、スマホアプリ独特なものではないかと思います。
本アプリでは、結果的に1回で審査を通過することができて胸をなで下ろしましたが、こういった独特な点はスマホアプリチームから発信していかないと、プロダクト全体のスケジュールを考える際に抜け落ちることもあるので注意が必要です。
3.開発のすすめ方
開発期限にも通じる内容ですが、期限がタイトな場合には後から仕様不備が見つかったり、技術的に実現が困難となった場合には、リリース日に直結して影響がでてしまいます。
そのため、見積もりの時点でできる限りスマホアプリの完成形を思い描くようにし、それをメンバーへ明確に伝えるよう気を付けました。工数を算出するときは、自分自身がスマホアプリエンジニアでもあるため「複雑になりそうな処理」や「検証に時間がかかりそうな点」など、開発を進めるにあたりボトルネックになりそうな点の見当をつけやすかったことも幸いしました。
また、開発する際にはJIRAに実装タスクのチケットを作成するのですが、「みまもりNP1」では見積もりの時点でほとんどチケットに該当する粒度で工数を検討していました。スマホアプリチームでは開発をアジャイルで行っているため、見積もりをあまり詳細にし過ぎるのはデメリットもあるのですが、今回は開発の遅延について特に気を付けておく必要があったため、このような方法をとりました。
至らぬ点は多少あったものの、結果的にチケットを見れば「あの機能は削除する」「こういう機能が追加される」「ここはもう少し検討しなければならない」という全体像がわかる状態になったため、チームメンバーの手が止まること無く実装を進めることができました。
詳細な文言や画面デザインについては別途検討する必要がありましたが、それは事前に分かっていたため、その時間を確保するという意味でも実装チケットを詳細に起こせたのは非常に良かったかと思います。
最後に
如何でしたでしょうか。
今回はスマホアプリ開発の観点で記事を書かせていただきましたが、開発全体ではもっとさまざまな検討や工夫をした上で、今回の「みまもりNP1」は生まれています。
ハードウェアが絡むという点で、パイオニアのスマホアプリ開発は難易度が上がりますが、その分アプリがローンチされたときには喜びもひとしおです。
今回ご紹介した「みまもりNP1」は業務用製品のアプリのため、なかなか目にする機会はないと思いますが、パイオニアが取り組んでいる製品・サービスの一環として知っていただけたら幸いです。
パイオニア株式会社では一緒に働く仲間を募集中です!
もしご興味を持たれましたら、カジュアル面談も実施しておりますので、お気軽にご連絡ください!