「アプリが必要だ」という言葉には、いくつかの意味があります。リンクから開くソフトウェアのこともあれば、スマートフォンにインストールするもののことも、その両方のこともあります。決める前に、どんなタスクを、どこで行うのかを理解したいと考えています。そのほうが、プロダクトの届け方を選ぶ確かな根拠になります。
検索結果からたまに予約するお客様と、一日中情報を記録する現場の作業員とでは、必要なものが違います。こうした場面をもとに何が大事かを決め、そのうえでプロダクトが頼りにする機能を試しましょう。
タスクと、そこにたどり着く経路から考える
初めてプロダクトを見つけるきっかけ、利用する頻度、使うデバイスを書き出してください。長いレポートを確認する営業担当者は、ノートパソコンを好むかもしれません。現場で写真を撮る技術者には、スマートフォンで使いやすい流れが必要です。一つの会社に、その両方の利用者がいることもあります。
人々はどうやってプロダクトを見つけ、開くのか。検索結果、招待、QR コード、アプリストアのどれか。
タスクはたまに行うものか、毎日のものか、長い作業時間の一部か。
通信が弱いとき、あるいはつながらないときに、何が動く必要があるか。
タスクを完了するのに欠かせないデバイスの機能は何か。
Web アプリから始めるのが向いている場合
Web アプリはブラウザで動き、リンクで共有できます。顧客ポータル、予約システム、ダッシュボードなど、多くの業務に向いています。レスポンシブデザインで画面サイズに合わせて表示は調整できますが、実際のタスクはそれぞれの画面で試す必要があります。
たとえば、仕入れ先向けのポータルで、お客様はスマートフォンから注文し、スタッフはパソコンで注文を処理する、という形が考えられます。一つの Web アプリケーションで、表示と権限を分けて両方のグループに対応できます。最初のリリースにアプリストアへの掲載を加えるなら、それに見合う具体的な利点が必要です。
インストールできる Web アプリでできること
プログレッシブウェブアプリ(PWA)は Web の技術を使い、対応するデバイスではインストールしたアプリのように使えます。オフラインでの動作や通知などの機能には、意図した実装と互換性の確認が必要です。ホーム画面にアイコンを置いただけで、オフラインで動くようになるわけではありません。
この手法の背景については、MDN のプログレッシブウェブアプリ入門をご覧ください。実際のプロジェクトでは、お客様が使うデバイスとブラウザで必要な機能を試し、使えない機能には代わりの手段を決めておきます。
モバイルアプリを独立した範囲として考えるべき場合
業務の流れがデバイスとの深い連携、インストール型の体験、特定の配信経路を必要とするなら、モバイルアプリが適しているかもしれません。その要件はできるだけ正確に書き出してください。「カメラを使う」だけでは曖昧すぎます。評価すべきなのは、撮影の手順、必要な権限、対応するデバイスです。
検査用のツールであれば、現場訪問のあいだ報告書の下書きを端末に保存しておき、写真は後でアップロードする必要があるかもしれません。その場合、作業が中断されても下書きが失われないか、同期がどう動くか、二人が同じ記録を編集したらどうなるかも判断に含めるべきです。これらはプロダクトとしての判断で、アプリをインストール型にしても決めなければならないことに変わりはありません。
ストアでの公開にも準備が必要です。アカウント、掲載ページ、審査の要件、公開済みバージョンを保守する体制などです。選択肢を比べるときは、その作業も考慮に入れましょう。承認や公開の時期は、各ストアの審査次第です。
コードを共有しても、プラットフォームごとのテストは必要
プラットフォーム間でコードを共有したり、既存の Web プロダクトを拡張したりする方法もあります。作業の再利用には役立ちますが、どこまで再利用できるかはアプリケーションと要件によります。Web アプリをそのままモバイルアプリにできると約束する前に、既存のコードを確認します。
サーバーとデータベースは、Web とモバイルの両方の画面から使えます。それでも、画面ごとに適したナビゲーション、入力の扱い、権限、テストが必要です。目指すのは、人々が実際に使うデバイスで一貫したプロダクトです。
次のリリースは根拠をもとに選ぶ
まず一つの経路から始め、はっきりした理由ができたら別の経路を加えることもできます。不確かなのがデバイスの機能なら、その機能を早めに試しましょう。不確かなのが、お客様にその流れが本当に必要かどうかなら、配信範囲を広げる前に、代表的な利用者と一緒に試してください。
主な利用者と、その人たちが使うデバイス:…
利用者にとって一番大事なタスク:…
プロダクトにたどり着く経路:…
確認が必要な機能:…
別のプラットフォームを追加する条件:…
こうした情報はプロジェクトのブリーフとあわせて送ってください。必要な作業に照らして選択肢を比べ、最初の役に立つリリースを計画するお手伝いをします。