web-dev-qa-db-ja.com

混乱しない大きなユーザー設定メニューを設計する

enter image description here

私のアプリは、ピアニストが scales を練習するのに役立ちます。ボタンを押すと、ランダムなスケールで再生されます。彼らはもう一度ボタンを押して、彼らは別のものを得ます。

ユーザーが設定画面でスケールを「オフ」にしたり、スケールのブールバリアントを切り替えたりできるようにする必要があります。

問題:非常に多くのスケールがあり、設定画面が扱いにくいです。私はすでに108個の一意のスケールをアプリに持っています(それぞれ3つのブール「バリアント」を使用)。これは、プロのピアニストが練習する必要があるものの1/3にすぎません定期的に。

背景情報

スケールは、キーボードの同じキーで開始および終了するノートの昇順のパターンと降順のパターンです。

enter image description here

これらの12のキーのそれぞれに、メジャーまたはマイナーのフレーバーを持つ4つの異なる「タイプ」のスケールがあります。

  • オクターブスケール(メジャー、ハーモニックマイナー、またはメロディックマイナー)
  • アルペジオ(メジャーまたはマイナー)
  • 6分の1のスケール(メジャーまたはマイナー)
  • 3分の1のスケール(メジャーまたはマイナー)

これらのそれぞれについて、ピアニストはスケールを演奏できなければなりません:

  • 両手を一緒に[〜#〜]または[〜#〜]手を別々に
  • レガート(スムーズで接続されている)[〜#〜]または[〜#〜]スタッカート(パーカッシブで接続されていない)
  • 類似の動き(同じ方向の手)[〜#〜]または[〜#〜]反対の動き(反対方向の手)

私の問題があります。これらのオプションを混乱させずに、ユーザーがこれらすべてのオプションから選択できるようにする方法は思いつきません。これまでの私の取り組みは次のとおりです。

enter image description here

最初の設計では、ユーザーはバリアントを切り替えることができますが、個々のキーに基づいてスケールをオフにすることはできません。 2番目の設計では、逆のことが可能です。バリアントを切り替える方法はありません。

その他の問題:

  • ユーザーがallマイナースケールをオフにしたい場合はどうなりますか?
  • ユーザーがallスケールをスタッカートに切り替えたい場合はどうなりますか?
  • たとえば、ユーザーがAフラットに基づいてすべてのスケールをオフにしたい場合はどうなりますか?
9
glcheetham

彼らのために決定を下します。システムからではなく、ユーザーの視点から考えてください。はい、108のスケールがあり、それらすべてを個別にオン/オフにすることができますが、画面が複雑すぎることを除いて、自分のニーズについてそのような特定の知識を持っているユーザーは誰ですか?今回、108音階を練習するかどうかは、どのピアニストが決定できますか?これは信じられないほどの認知的負荷であり、人々があなたのアプリを使い始めることを要求する多くの努力です。

ユーザーが何を必要としているかを理解します。どうやら、プロのピアニストは何百種類ものスケールを練習する必要があるので、それはあなたが知っていることの1つです。他の種類のピアニストはどうですか?外に出て、何人かと話し、彼らの実践体制に何が合うかを考えてください。

あなたはこのようなものを思いつくかもしれません:

  • 初心者に圧倒されたくない。これらは、上位3つのスケールのみで表示されます。彼らはやる気を失う可能性が高いので、彼らは進歩のリマインダーが必要です。
  • Mediumこれらは、スケールの大きなセットに向けて取り組んでいる人々です。あなたは彼らのためにペースを選択し、彼らがやる気を維持するのに十分なスケールを各セッションに追加する必要がありますが、セットが彼らにとって大きすぎるほどではありません。
  • Professionalこれらは、投げるのと同じくらい多くのスケールが必要です。しかし、彼らは難しいと思う部分に焦点を合わせる何らかの方法が必要です。おそらくシンプルなフィードバックボタンを使用すると、難しいものに表示される可能性を高くできます。

レベルをユーザーに尋ねる必要はないかもしれません。フィードバックから十分な速さでレベルを検出できれば、それに応じてスケーリングできます。専門家は新しいスケールがすぐに選択されることを確認する必要があります。

ここにあなたがそれに取り組むかもしれない1つの方法があります:

mockup

download bmml sourceBalsamiq Mockups で作成されたワイヤーフレーム

インスピレーションを得るために、フラッシュカードアプリと Leitner system をご覧ください。ユーザーの目標は常にすべてのカードを習得することであるため、ユーザーは各カードを個別にオンまたはオフにするオプションを提供していません。代わりに、カードをランダムに選択するインテリジェントな方法を作成することに重点を置いています。

12
Peter

答えだけではなく(なぜ最後の行を参照してください)、観察とアイデアだけです。

観察:ユーザーが選択するオプションは、オプションの3次元空間を構成します:12キー×9スケール×3オプション。 1次元空間はリスト、2次元オプション空間は行列(「チェックボックス地獄」)ですが、3次元空間の場合、画面にはそれを表示するための1次元がありません。

アイデア:オクターブは円形のものですよね?この循環性を利用していただけないでしょうか。画面を回転させる場合、縦軸にスケールを、横軸に開始キーを使用できます。または、ノートを時計回りに、目盛りを内側から外側に向けて、オプションを円形に配置することもできます。ただし、3番目のオプションを追加する方法を見つける必要があります。

繰り返しますが、これは解決策ではありませんが、このパズルの解決に役立つ可能性のある追加のピースである可能性があります。

Arranging notes in a cirlce

enter image description here

3
Ideogram