GitHubリソースデザインの構成要素を作成する﻿デザインの構成要素を作成するシナリオ執筆の次のステップは、ターンの概要を説明したシナリオをストーリーボードに変換することです。これにより、一般的なすべての道筋を検討し、それ以外の状況やエラーへの対応を追加できます。ストーリーボードを作成するバリエーションを追加する再テストする対話モデルを定義するビルトインインテントを使用するスロットを決定するストーリーボードを作成するストーリーボードとは、時間に沿って1つの方向に進む会話の流れを表したものです。これは、会話のターンのシミュレーションに適しています。最初のストーリーボードはハッピーパス(ユーザーがスキルをたどるうえで一番望ましい道筋)にします。バリエーションを追加するハッピーパスを作成したら、その下にいくつかのバリエーションを追加します。スキルを開始する時に言うようこそメッセージを複数用意するなどです。この場合、ハッピーパスの最初のようこそメッセージの下に新しいターンを追加します。特定のターンでいくつかのバリエーションを作成したら、ユーザーが想定外のことを言ったときに対応するストーリーボードを作成します。ストーリーボードを作成することで、デザインの中でどんなバリエーションを作成すべきかを把握しやすくなります。あらゆるケースを想定してデザインすることで、スキルを使用するユーザーのエクスペリエンスが向上します。再テストする音声デザインの問題点を見つけるには、ストーリーボード内のセリフを読み上げるのが効果的です。シナリオと同様に、友人に手伝ってもらい、ストーリーボードを流れに沿って読み上げてテストしてください。テストするたびにほかのバリエーションを試し、思い浮かんだ変更点をメモしていきます。シナリオと同様に、スキルにおける自然な部分だけでなく、不自然な、あるいは機械的な部分も簡単に把握できます。対話モデルを定義する対話とデザインの流れを決めたら、これをスキル開発に結び付けていきます。スキル開発をしたことがあれば、既にご存知のはずです。ユーザーの発話はインテントにマッピングされて、スキルが行う固有のアクションを表します。休暇の計画ができるスキルの場合、インテントは旅行の計画や旅行の予約などとなります。すべてのユーザーが同じようにインテントを呼び出すとは限りません。スキルに対してユーザーがどのようなアクションを要求するのかを幅広く想定しておく必要があります。ユーザーは、「旅行を計画して」ではなく「次の金曜日にハワイに行きたい」と言ってアクションを呼び出すかもしれません。使いやすいスキルにするためには、完璧な発話だけでなく、情報が一部欠けている発話やあいまいで断片的な発話まで、いろいろなパターンを網羅します。Alexaが対応できる範囲をさらに広げるために、細かな表現の違いや誤った発音の表現も含めるようにしてください。贈り物の場合、「プレゼント」だけでなく「ギフト」や「お土産」など、ほぼ同じ意味であってもさまざまな表現を含めるようにしてください。次の例は、発話が各要素にどう分解されるかを示しています。先ほどの「次の金曜日にハワイに行きたい」の例では、ユーザーはワンショット発話と呼ばれるある種の過剰応答をしています。この発話には、スキルがインテントを起動するために必要な情報が、ほぼすべて含まれています。ワンショット発話は、スキルの途中だけでなく、スキルの起動時にも行われることがあります。「アレクサ、トリッププランを開いてハワイへのフライトを予約して」といった具合です。した過剰応答への対応は、ダイアログ管理を使用して処理する必要があります。ユーザーからのコマンドが不完全で、部分的な情報しか含まれていないこともあります。そのような場合は、プロンプトを出してさらに情報を求める必要があります。「出発予定日はいつですか?」ユーザーのニーズに応えるために必要な情報がすべて得られるまで、Alexaに質問させる必要があります。やり取りの中で、ユーザーは一度言ったことを訂正して正しい内容を話すこともあります。した場合に会話の中で必要な情報を取得できるようにしておきます。