タベリー | とある仕様書

以下の機能をリリースするにあたり、作成した仕様書を公開する。

グループ共有機能

仕様書の公開に踏み切ったのは、10Xのプロダクトがどうやって作られているか、について部分的に触れてもらえると思ったから。

10Xでは「細かな実装・デザインの白兵戦」・「認知と理解を獲得していく空中戦」を一緒に戦えるプロダクト・マネージャーを育てていきたいと思っているので、この仕様書を読んで「10Xで力を試してみたい!」という方はぜひ以下のフォームから応募してほしい。ユーザーの感情を科学できる人が10XのPMにはフィットすると思う。

仕様書の前提となる考え

仕様書は「チームのワーキングスタイル」によってその役割をかえるものだ。今の10Xは「ユーザーの前に積まれた膨大な課題の山に優先度を付け、とにかく早くプロダクトをプッシュしていくこと」が最優先のチーム。

そのため、「膝を突き合わせて瞬発力の高いコミュニケーション」を重視している。リモートはしない。

この環境では議論のすべてが口頭で実施される。たとえば僕が作成したUIも一緒の画面を見ながらブラッシュアップの議論ができる。そんな状態だ。

そこで仕様書の立ち位置を以下としている。

  • 価値から認知獲得までの「Why」「What」「How」がミニマムで記載された設計書
  • 意思決定のプロセスと内容を端的に追えるストック情報

これを満たすためのドキュメントであれば十分である。実装における空白エリアは口頭で埋めることができる安心感がある。「完璧な仕様書」は志向していない。その必要性や姿はチームに合わせるべきであるというのが僕の基本的な考えだ。

この前提のもとに、以下の仕様書を公開する。


グループ招待機能仕様

達成したいこと

料理にまつわる最も強いコミュニティである、家族などのグループのコミュニケーションをサポートし、置き換える手段の提供。以下の対話を置き換える対象と考えている。

  • 献立予定の共有(「今夜の料理何?」)
  • 買い物リストの共有(「帰りにxxxを買ってきて」)
  • 献立作成のリクエスト(「食べたいモノある?」)

ユーザーフロー概略

1 / 招待者 — Must Login

招待者は会員登録マスト

  1. マイページ > グループを招待する
  2. 価値を訴求するページ > 招待する
    未登録ユーザーの場合、会員登録へ
    完了後、2へ戻る
  3. シェアシートから招待
    招待状は1通あたり1名に有効、有効期限は48h
  4. 招待完了ページ > ☓ >ホームへ

2 / 被招待者 — Guest Acceptable

ゲストでもOK

  1. DL > ホーム > はじめる
  2. 初回起動時のみ、ポップアップで「招待された人は~~~」 > 了解
  3. メール or LINE からinvitationリンクを踏む
  4. モーダル「~さんが招待しています」 > 参加する
  5. トップ > 「献立がシェアされています」

0 / 全体UI像

ペアリングまでの大きな流れ

1 / マイページ

共通の仕様

  • 未招待と招待後でマイページUIは上記のように変わる。
  • グループに参加している人は、だれでもグループへ招待できる。
  • リストページでは「あとX名までグループに招待できます」と表示。上限は自分も含めて5名。
  • 共有人数が5人に達した場合は、「グループへ招待する」ボタンを表示しない。かつ、リストの下のテキストを「グループは5人が上限です」に変更する。

共有解除

  • オーナーのみ、自分以外の誰でも共有解除できる。それ以外の人は、自分自身のみ解除できる。
  • 共有解除時は「Userさんとの共有を解除します よろしいですか?」のアラートを出す。

2 / 価値訴求ページ(LP)から招待の流れ

招待の流れ

価値訴求ページ→「グループへ招待する」ボタン の後はステータスによって分岐する。

訴求軸

  1. 献立の予定がシェアできる
  2. 買い物リストがシェアできる
  3. タベリープラスをシェア
コピーは追って変更予定。シェアはシェアシートに統一
検証したボツUI

3 / 献立予定のUI

・「献立を自分以外の誰かが作成したこと」が通知とセットで認知できる

・予定の有り/無し、ペアリングの有り/無しという4パターンに耐えうる汎用性

・レシピのAUTHERという誤認を与えない

などを同時に満たすUIである必要がある。結果として以下とする。

グループ形成時のみ、作成: を表示。

自分のアイコンは表示するか? — YES

  • ペアリング時は表示されたほうが良い(アイコン有り/なし)より(アイコン常に有り/中身が違う)の方が認識しやすいだろう。
  • またペアリングを使っている、ということが一目瞭然になるのも良いかな。

献立変更時はどうするか? — 作成者のみ表示

  • 献立の変更有無にかかわらず、作成者を表示。
  • 献立は作成者に所有が紐づくため。

4 / Inviteeの導線仕様

招待体験/UIで達成すべきこと

  • 共有方法が中長期に渡って安全であり、運用マインドシェアを奪わない。
  • 招待を受けてインストールした人が、初回起動時に何をすればよいか理解できる。
  • 招待を受けていない人の初回体験に負を残さない。

論点 : アクション忘れ

inviteeに「アプリをDL」 + 「リンククリック」という2ステップある。リンククリックというステップを忘れ、次のアクションがわからないということがおきうる。

解決策

  • 招待者が招待後に被招待者がやるべき事を伝える (1. アプリDL, 2. 招待リンククリック)。
  • ペアリングがうまくいかない場合に招待者にサポートしてもらう。
  • ・pro: 初回体験に負の影響がない
  • ・con: invitee自身が解決する道筋がない

5 / メール文面

プロセスの全体を把握できる、アクションが迷わない、迷っても解決のためのアクション ができるように。

献立アプリ「タベリー」への招待です。献立を共有すると、「これ食べたい」が簡単できます。
2ステップで「ゆまじろう」さんと共有できます!
①アプリをインストール
https://tabe.ly/hogehoge
(インストール済の方は②へ)
②インストール後、以下の招待リンクをタップ
https://tabe.ly/hogehogehoge
(有効期限 : 1/31 10:59)
招待を受けるには、アプリのバージョンが1.5.0以上である必要があります。
--------
何かご不明の点がありましたらタベリー運営事務局まで
info@tabe.ly

6 / 招待リンクタップ後の挙動

グループへの参加許諾、参加するとできることを端的に伝える。なおタップするユーザーの性質によって大きく4パターンに挙動が別れる。

1~4のケースを網羅する

7 / 通知とおしらせの仕様

通知は

  1. ペアリングに関するもの
  2. 献立に関するもの
  3. 買い物に関するもの
  4. 課金に関するもの

と4種類に大別できる。ただし、買い物リストの機能は大きく見直しを行うため、使用の検討や実装はその際に預ける。基本的にいずれも頻度が低いため、情報を適切に伝えるための通知・おしらせは全て送付する、という方針。

ペアリングに関する通知とおしらせ

便宜上、グループ招待をするオーナーをA, 招待されるグループをB, Cとする。

献立に関する通知とお知らせ

便宜上、自分をA、自分以外のグループメンバーをB,Cとする。

献立のレシピ変更と人数変更が同時に行われた場合は、「Bが献立のレシピを変更したとき」だけ送られる。

タベリープラスに加入時のコミュニケーション

唐突感を避けるために、以下のケースでユーザーにコミュニケーションが必要である。

  • ・参加したグループの誰かがタベリープラス加入済みだった時
  • ・グループ参加後、誰かがタベリープラス加入した時

マイページの文言と通知で対応する。

エッジケースとして「すでにタベリープラスに加入中の人がグループに参加した場合」に通知をいつどう送るか。グループのペアリングが完了時に上記の分類に当てはまる方には通知を送る、でよさそう。

通知の復帰導線 → 積み残し

本機能を利用する上で価値のある通知が届けることができる。システム設定で通知を許可していないユーザーに通知許可を促す導線を用意する。リリース時は除外。

8 / 課金のシェアについての仕様

  • グループの参加者の誰かがタベリープラスに加入していれば、全員がタベリープラスを利用できる。
  • タベリープラス加入者が訴求ページのリンクをタップしたときに表示されるモーダルには「加入済みです」と記載
  • 通知周りは7を確認。

9 / グループ解除時の献立の表示

  • グループにはそのグループに参加しているメンバーが作成した献立がすべて見える
  • グループ解除時は、「自分の過去に作った献立」のみがカレンダーに反映される。
  • 編集者は関係ない。

10 / バージョン配布について

1.5.0以前のバージョンの人は、グループ招待を受けられない。そのため、強制アップデートが必要となる。強制アップデートの影響を最小化するため以下の手順とする。

  1. 1.5.0では「グループを招待する」という導線を消した状態でアプリを配布。
  2. その普及率が80%を超えたあたりで導線を復活させた1.5.1をリリース。強制アップデートを行い、機能自体は1.5.1で開放することとする。

11 / プレスリリース → 価値を言語化できないのでやめる

機能紹介+アルファのリリースを出す。目的はユーザー伝達と方針の認知獲得。ただしこのままだと面白くない。フックを入れる。

→プレスリリースを書きましたが、パンチが弱くて辞めました。

12 / Datastoreの仕様

  • User EntityにGroupIdをもつ。一人あたり必ず一つのユニークなIDをもつ。
  • Group Entityが新たに作成。このGroupIdあたりのUserIDが2以上のグループは実際にユーザーがつながっているグループである。

以上。本来であればKPIの設計も組み込むのだが、それは現状口頭とダッシュボード直編集で済むので仕様書には掲載していない。

本来、仕様書というのは会社の特色が現れ、またなかなか表に出てこないアウトプットだと思う。しかし僕は「仕様書自体に一切の価値がない」と思っている。

価値があるのは仕様書ではなく「プロダクトを発明していくプロセス」自体にあり、それは10Xのチームだから再現するものでもある。ので、仕様書は僕らのチームの片鱗を感じてもらえればと思い公開に踏み切った。

繰り返しになるが、10Xのプロセスが気になる、そのなかで力を発揮してみたい、という方はぜひ以下のフォームよりご応募下さい。