私のアプリは、ピアニストが scales を練習するのに役立ちます。ボタンを押すと、ランダムなスケールで再生されます。彼らはもう一度ボタンを押して、彼らは別のものを得ます。
ユーザーが設定画面でスケールを「オフ」にしたり、スケールのブールバリアントを切り替えたりできるようにする必要があります。
問題:非常に多くのスケールがあり、設定画面が扱いにくいです。私はすでに108個の一意のスケールをアプリに持っています(それぞれ3つのブール「バリアント」を使用)。これは、プロのピアニストが練習する必要があるものの1/3にすぎません定期的に。
背景情報
スケールは、キーボードの同じキーで開始および終了するノートの昇順のパターンと降順のパターンです。
これらの12のキーのそれぞれに、メジャーまたはマイナーのフレーバーを持つ4つの異なる「タイプ」のスケールがあります。
これらのそれぞれについて、ピアニストはスケールを演奏できなければなりません:
私の問題があります。これらのオプションを混乱させずに、ユーザーがこれらすべてのオプションから選択できるようにする方法は思いつきません。これまでの私の取り組みは次のとおりです。
最初の設計では、ユーザーはバリアントを切り替えることができますが、個々のキーに基づいてスケールをオフにすることはできません。 2番目の設計では、逆のことが可能です。バリアントを切り替える方法はありません。
その他の問題:
彼らのために決定を下します。システムからではなく、ユーザーの視点から考えてください。はい、108のスケールがあり、それらすべてを個別にオン/オフにすることができますが、画面が複雑すぎることを除いて、自分のニーズについてそのような特定の知識を持っているユーザーは誰ですか?今回、108音階を練習するかどうかは、どのピアニストが決定できますか?これは信じられないほどの認知的負荷であり、人々があなたのアプリを使い始めることを要求する多くの努力です。
ユーザーが何を必要としているかを理解します。どうやら、プロのピアニストは何百種類ものスケールを練習する必要があるので、それはあなたが知っていることの1つです。他の種類のピアニストはどうですか?外に出て、何人かと話し、彼らの実践体制に何が合うかを考えてください。
あなたはこのようなものを思いつくかもしれません:
レベルをユーザーに尋ねる必要はないかもしれません。フィードバックから十分な速さでレベルを検出できれば、それに応じてスケーリングできます。専門家は新しいスケールがすぐに選択されることを確認する必要があります。
ここにあなたがそれに取り組むかもしれない1つの方法があります:
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
インスピレーションを得るために、フラッシュカードアプリと Leitner system をご覧ください。ユーザーの目標は常にすべてのカードを習得することであるため、ユーザーは各カードを個別にオンまたはオフにするオプションを提供していません。代わりに、カードをランダムに選択するインテリジェントな方法を作成することに重点を置いています。
答えだけではなく(なぜ最後の行を参照してください)、観察とアイデアだけです。
観察:ユーザーが選択するオプションは、オプションの3次元空間を構成します:12キー×9スケール×3オプション。 1次元空間はリスト、2次元オプション空間は行列(「チェックボックス地獄」)ですが、3次元空間の場合、画面にはそれを表示するための1次元がありません。
アイデア:オクターブは円形のものですよね?この循環性を利用していただけないでしょうか。画面を回転させる場合、縦軸にスケールを、横軸に開始キーを使用できます。または、ノートを時計回りに、目盛りを内側から外側に向けて、オプションを円形に配置することもできます。ただし、3番目のオプションを追加する方法を見つける必要があります。
繰り返しますが、これは解決策ではありませんが、このパズルの解決に役立つ可能性のある追加のピースである可能性があります。