問題の背景
この機能が解決しようとする中核的な問題、あるいは構築することで開かれる機会について、行動可能かつ簡潔な問題文を1段落で記述します。この機能のマーケティングステートメントは何ですか?なぜ今構築するのですか?なぜこの機能で勝ち抜く価値があるのですか?この問題文は、追加のコンテキストがなくても全ての重要なポイントを伝えられるよう、詳細かつ実行可能である必要があります。ただし、最大3文に制限します。最も関連性の高い顧客ペルソナ(例:「ビジネスオーナーは...」)で書き始めますが、概要段落では実際の人物名や会社名を決して使用しないでください。
ソリューション設計
ソリューションの可能性を探る前に、方向性を決定します。複数の候補ソリューションを検討し、戦略的および体験的なレンズで評価します。
このソリューションにとって最も重要な戦略的レバーを特定し、それらを深く掘り下げます。
- 規模の経済によるコスト優位性を最大化し、ユーザー採用や運用ボリュームが増加するにつれてユーザーあたりのコストを削減する機能を優先します。
- ネットワーク効果を増幅し、参加者が増えるにつれてユーザーへの価値が高まる機能を選択します。
- 競合が自社の戦略を大きく混乱させることなく容易に複製できない機能や体験を導入することで、カウンターポジショニングの機会を生み出す機能を優先します。
- 顧客のスイッチングコストを高め、ユーザーがエコシステムを離れるのを困難または魅力的でなくする機能を重視します。
- ブランドを強化し、独自のアイデンティティを強化し、ユーザーとの永続的な感情的なつながりを構築する機能に焦点を当てます。
- 独自データ、排他的パートナーシップ、競合が容易にアクセスまたは模倣できない独自の機能など、コーナーされたリソースを活用する機能を活用します。
- 優れたプロセスまたは独自のワークフローを示し、競合に対する持続可能な運用上の優位性を生み出す機能を実装します。
シンプルで楽しいユーザーエクスペリエンスを設計する際には、ユーザーフローを設計する際に以下の原則のいくつかを採用してみてください。
-
容赦なくシンプルにする — 直感的でミニマルな体験を提供するために、不要なステップや機能を削除します。すべての要素はその存在価値を証明する必要があります。
-
シームレスな連続性を維持する — 最小限の認知負荷で、行き止まりなく、ユーザーを開始から終了まで自然にガイドします。
-
細部にこだわる — タイポグラフィ、トランジション、スペーシング、コピーはすべて、細心の注意を払って作成されている必要があります。すべてのタッチポイントで、機能性と美しさを統一された一貫性のあるブランド感覚でバランスさせます。
-
思慮深いタッチで喜ばせる — 機能を超えて体験を高める、小さくても記憶に残る詳細を追加します。
-
SaaS コンポーネントの設計方法が不明な場合は、Linear がデザインやコンポーネントの動作方法をコピーします。
ソリューションについて説明する際にこれらの原則を明示的に言及しないでください。最適なソリューションを探索して決定し説明する際に、その根拠に組み込んでください。
ソリューションの可能性を探り、最適な戦略を特定した後、機能が何をするか、どのようにユーザーのペインポイントを解決するか、どのようにユーザーを喜ばせるかについて、不要な前置きなしに簡潔に説明します。
- ユーザーが製品と対話し、体験する望ましい方法を非常に具体的に詳しく説明します。インターフェースデザイン、ユーザージャーニーの各ステップ、ソリューションの全体的なユーザビリティとシンプルさをどのように改善するかに焦点を当てます。
- この機能のローンチ結果として発生すると予想される実際の使用シナリオを提示します。
- 実際のユーザーと実際の瞬間に固定します。例:「フランクがサンフランシスコのさまざまなスタートアップを訪問しているとき、[機能 X] を使用して苦情を記録し、[機能 Y] で要件を追跡しています...」
- 市場の代替手段とこのソリューションを区別し、競合他社に対して製品をカウンターポジショニングするために採用できる独自の戦術や側面を強調します。
最適なソリューションは ICE(影響、確信、努力)を最大化することを忘れないでください。影響が大きければ大きいほど、確信が高く、努力が少ないほど、ソリューションは優れています。
ソリューションの説明を、改行で区切られた焦点を絞った簡潔な段落に分割します。体験の1つの側面につき1段落です。
受け入れ基準
各基準は、明確な期待される結果を伴う、具体的でテスト可能な条件を記述する必要があります。基準は実装の選択ではなく、望ましい結果を記述します。基準は MECE(相互に排他的で集合的に網羅的)である必要があり、作業が完了するために必要なすべての条件をカバーします。
機能:
- [観察可能なユーザー行動 → 期待されるシステム応答または結果]
エッジケースとエラーハンドリング:
- [入力が無効な場合、サービスが失敗した場合、データが欠落している場合、またはユーザーが予期しない状態に達した場合に何が起こるか]
範囲外:
- [この作業に明示的に含まれないもの — 過剰な構築を防ぐために明確な境界を設定します]
<strongな受け入れ基準の例>
- ユーザーが検索バーに入力すると、300ms のデバウンス後に結果がライブで更新され、製品名、画像、価格がランク付けされたリストに表示されます。
- ユーザーは [設定] > [プロフィールを編集] に移動し、名、姓、メールアドレス、電話番号を更新できます。変更は保存時にすぐに永続化され、更新しなくてもアプリ全体に反映されます。
- 保存リクエストが失敗した場合(タイムアウトまたは5xx)、インラインエラー「問題が発生しました。もう一度お試しください。」を表示します。フォームはユーザーの未保存の入力を保持します。
- 空の検索クエリを送信すると、エラーや空の状態ではなく、デフォルトの結果リストが返されます。
- これには、一括プロフィール編集、CSV エクスポート、管理者レベルの権限変更は含まれません。 </strongな受け入れ基準の例>