ユーザー インターフェイスの設計において、モードとは、コンピューター プログラムまたは任意の物理マシンインターフェイス内の明確な設定であり、同じユーザー入力によって、他の設定とは異なる認識結果が生成されます。モーダル インターフェイス コンポーネントには、標準のコンピューター キーボードのCaps LockキーとInsertキーが含まれます。通常、これらのキーは、押すとユーザーの入力モードが変わり、再度押すと通常のモードに戻ります。
モードを使用しないインターフェースはモードレスインターフェースと呼ばれます。[1]モードレスインターフェースは、ユーザーが1つのモードに適切なアクションを別のモードで実行してしまうモードエラーを、ユーザーがコミットできないようにすることで回避します。[2]
意味
ジェフ・ラスキンは著書『The Humane Interface』の中で、モダリティを次のように定義しています。
「ヒューマンマシンインターフェースは、(1)インターフェースの現在の状態がユーザーの注意の焦点ではない場合、および(2)インターフェースがシステムの現在の状態に応じてジェスチャーに対するいくつかの異なる応答のうちの1つを実行する場合、特定のジェスチャーに関してモーダルです。」(42ページ)
ラスキンの感覚と定義によれば、ユーザーが現在の状態を完全に認識している限り、インターフェースはモーダルではありません。ラスキンはこれを「注目の領域」( 「場所」または「位置」を意味するラテン語のlocusから)と呼んでいます。通常、ユーザーがシステム状態を認識するのは、状態の変化がユーザーによって意図的に開始された場合、またはシステムがインタラクションが発生する場所でユーザーに状態の変化を通知する強い信号を送信した場合です。ユーザーの注目の領域が別の領域に変わった場合、ユーザーはもはやその状態を認識しないため、インターフェースの状態はモードを表す可能性があります。
ラリー・テスラーはモードを「一定期間持続し、特定のオブジェクトに関連付けられておらず、オペレータの入力を解釈する以外の役割を持たないユーザーインターフェースの状態」と定義しました。[3]
例
モーダル
ソフトウェアの例としては、モーダルまたはインターフェース モードを使用するものとして説明されているものがいくつか挙げられます。
- テキスト エディター– 通常、デフォルトでは挿入モードになっていますが、 Insert キーを押すことで上書きモードのオン/オフを切り替えることができます。
- Bravo (エディタ) – Xerox PARCのButler LampsonとCharles SimonyiがXerox Altoコンピュータ用に作成した最初のWYSIWYGモーダル エディタ
- vi – テキストを挿入するためのモードと、コマンドを入力するための別のモードがあります。また、より複雑なコマンド (検索や置換など) を発行するための「ex」モードもあります。通常、コマンドを発行するとエディターは自動的に前のモードに戻りますが、Shift-Q を使用してこのモードに永続的に移動することもできます。
- Emacs – には「プレフィックスキー」という概念があり、コントロールキーと文字キーを押すことでモーダル状態がトリガーされます。その後、Emacs はキーバインディングを完了する追加のキー押下を待機します。これは、コマンドが呼び出されるとすぐにモードが終了する (コマンドをアクティブにするキー押下のシーケンスが完了するとき) という点でviと異なります。Emacs には、使用可能なコマンドを変更する多くの「メジャーモードとマイナーモード」もあり、ファイルタイプに基づいて自動的に呼び出され、そのタイプのファイルをより簡単に編集できます。Emacs モードはテキストファイルの編集に限定されません。ファイルブラウジング、ウェブブラウジング、IRC、電子メール用のモードがあり、それらの相互作用パターンは Emacs 環境内のアプリケーションソフトウェアと同等です。モードはEmacs Lispで記述されており、すべてのモードがすべてのバージョンに含まれているわけではありません。
- Cisco IOS – 特定のコマンドは「コマンド モード」で実行されます。
- 写真編集や描画アプリケーションでパレットから選択されるツールは、モーダル インターフェイスの例です。一部の高度な画像エディタには、同じツールにキーを押すことで非モーダルでアクセスでき、キーが押されている間はアクティブなままになる機能があります。キーを放すと、インターフェイスはパレットによってアクティブ化されたモーダル ツールに戻ります。
- ビデオゲームでは、ゲームプレイを強化するためのメカニズムとしてゲームモードを使用できます。
- モーダルウィンドウは、モーダルウィンドウが閉じられるまで、トップレベルプログラムのすべてのワークフローをブロックします。 [4]
モードレス
PARCのラリー・テスラーは、新しく雇われたシルビア・アダムスとのユーザーテストから集めたフィードバックから、モードレスワードプロセッサのアイデアを考案しました。アダムスは、デジタルテキストの校正マークを修正するために、アドリブでジェスチャーをするように求められました。 [5]このテストにより、テスラーのマネージャーであるビル・イングリッシュは、以前のモーダルインターフェースの問題点を確信しました。
モードエラー
モードは、ユーザーがインターフェースの状態を忘れて、別のモードに適したアクションを実行し、予期しない望ましくない応答を受け取った場合にモードエラーが発生する可能性があるため、インターフェース設計では好ましくないと見なされることが多い。 [6] [7]モードエラーは、ユーザーが自分の期待を突然裏切られたことに対処する際に、非常に驚き、混乱を引き起こす可能性がある。
システム状態の変化が気付かれずに起こった場合(システムまたは以前にマシンを使用していたユーザーなどの別の人物によって開始された場合)、またはしばらくしてユーザーが状態の変化を忘れた場合に問題が発生します。もう 1 つの典型的な問題は、フォーカス スティーリングなど、ユーザーのアクティビティを中断する突然の状態の変化です。このような状況では、脳が状態の変化を示す信号をまだ完全に処理していない間に、ユーザーが古い状態を念頭に置いて何らかの操作を行うことが簡単に起こり得ます。
モードエラーの例
- モード エラーの最も一般的な原因は、Caps Lockキーである可能性があります。PCキーボードで使用できる他の一般的なモードは、他のロック キー、Num Lock キー、およびScroll Lockキーで、多くの場合Insert キーです。発音区別符号用のデッド キーも、少なくとも次に入力した文字が変更されるという視覚的なフィードバックを提供しない場合は、短期モードを作成します。PC キーボードの Lock キーはモーダル キーとして使用することを目的として設計されていますが、IBM PC のハードウェア設計では、これらのキーやその他の特定のキーがモーダルである必要はなく、ソフトウェアが任意のキーをモーダルとして扱うことができます。(PC BIOS は通常、Caps Lock、Num Lock、および Scroll Lock の状態を実装するため、これらのキーのモーダリティは固有のように見えるかもしれませんが、キーボード I/O に BIOS を使用することは技術的にも実用的にも必要ではなく、実際、ほとんどの最新のオペレーティング システムでは BIOS キーボード I/O を使用しません。)
- ラテン アルファベットをベースとしない言語を使用する PC ユーザーは、通常、ローカル レイアウトとQWERTY レイアウトの 2 つの異なるキーボード レイアウトを使用して操作する必要があります。これにより、現在のキーボード レイアウトに関連するモード エラーが発生します。多くの場合、ユーザーとインターフェイス間の「現在のレイアウト」モードの同期が失われ、意図しないレイアウトでテキストが入力され、意味のないテキストと混乱が生じます。プログラムが翻訳されている場合、「(y/n)」などのユーザー インターフェイス要素のキーボード キーは、逆の効果をもたらす可能性があります。
- よくある例としては、ユーザーが入力しているときにアプリケーションに突然モーダル エラー ダイアログが表示されることがあります。これはフォーカス スティールの一種です。ユーザーは入力したテキストがテキスト フィールドに入力されることを期待しますが、予期しないダイアログによってすべての入力が破棄されたり、一部のキーストローク (「はい」の「Y」や「いいえ」の「N」など) がユーザーの意図しない方法で解釈されたりして、元に戻すことのできない破壊的なアクションがトリガーされることがよくあります。プログラマーは、モーダル ダイアログが表示されてからキーボード入力の受け入れが開始されるまでに短い遅延を実装することで、この問題を軽減できます。
- Unixテキスト エディターvi は、 モードを使用するため、また以前のバージョンではモード表示がデフォルトでオフになるように設定されていたため、初心者にとっては非常に難しいことで有名です。
- 多くのコンピュータ ビデオ ゲームでは、キーボードはゲームのコントロールとメッセージの入力の両方に使用されます。ユーザーは、ゲーム中の突然の出来事に反応しようとして「入力モード」になっていることを忘れ、コントロールが反応しない (代わりに、押されたコマンド キーでいっぱいのテキスト バーが表示される) ことに気付くことがあります。
交通事故の場合
- モードの混乱は、2009年にエールフランス447便が墜落し、228人の命が失われた原因の一部であった。パイロットは高度の低下に反応して操縦桿を引いたが、これはオートパイロットが完全に作動していれば適切な反応であり、機体は上昇姿勢になっていたはずである。しかし、機体のシステムは対気速度センサーの詰まりにより自動化の程度が低いモード(エアバスの用語では「直接法則」)に入っており、パイロットは機首を高くした失速姿勢に陥らせ、そこから回復することはできなかった。[8]
- NTSBによると、2013年のアシアナ航空214便墜落事故の原因の一つは「オートスロットルとオートパイロットのフライトディレクターシステムの複雑さ…それがモードエラーの可能性を高めた」ことだった。[9] [10]
- 2015年1月17日、オフショア補給船「レッド7アライアンス」がドイツのキール運河の閘門に衝突し、深刻な損傷を与えた。調査の結果、船の方位角スラスターを制御するレバーが、設定されたモードに適した方法で使用されていなかったため、船が閘門で停止する代わりに加速したことが判明した。[11]
- 2017年8月21日、アメリカ海軍の駆逐艦ジョン・S・マケインがマラッカ海峡で商用タンカーと 衝突し、乗組員10名が死亡した。米軍が実施した調査では、衝突直前に操舵と推進の制御がブリッジステーション間で再配分されていたが、ブリッジクルーはその再配分を完全には認識していなかったという結論に達した。[12]
- 2018年4月10日、5000トンの補給船VOSストーン号がバルト海で建設中の風力発電プラットフォームから離岸した。船長はシステムのテストを行うために操舵を代替モードにすることを決定した。当直士官とのコミュニケーション不足により、一時的に制御を失い、プラットフォームに衝突し、乗組員3名が負傷し、大きな損傷が発生した。[13]
- 2020年4月19日、エグリン空軍基地でF-35A戦闘機が着陸事故で破壊された。調査の結果、機体はオートスロットルのモードが誤って設定されており、着陸時に機体が制御不能になったと結論付けられた。[14] [15]
- 2024年10月5日、ニュージーランド海軍の水路測量船「マナワヌイ」がサモア・ウポル島シウム沖の岩礁に乗り上げ、翌日沈没した。公式調査によると、ブリッジクルーは船の自動操縦装置が作動していることに気づかなかったという。[16]
評価
モードは、特にユーザーからの重要な確認が必要な場合に、ユーザーの注意を完全に引き付け、その中にあるコンテンツを認識させることを目的としています。[17]この後者の使用法は、慣れのために、本来の用途(破壊的なアクションにおけるエラーからの保護)には効果がないとして批判されています。代わりに、アクションを実際に元に戻せるようにする(「元に戻す」オプションを提供する)ことが推奨されています。[18]ただし、モードは、特にユーザーが準モードとしてモードを積極的に維持している場合、危険な操作や望ましくない操作を制限する特定の用途では効果的です。
モードは、タスクに関連するがメインの視覚的流れにうまく適合しない情報を表すために使用されることがあります。[17]モードは、ペイントツールなどのよく理解されている規則として機能することもできます。[7]
モーダル支持者[誰? ] は、多くの一般的なアクティビティはモーダルであり、ユーザーはそれに適応すると主張するかもしれません。モーダルインタラクションの一例は、自動車の運転です。アクセルペダルを踏んでも車両が前進しないことにドライバーは驚くかもしれません。これはおそらく、車両がパーキング、ニュートラル、またはリバースなどの操作モードになっているためです。モーダルインターフェイスでは、このようなモードエラーを回避するためにトレーニングと経験が必要です。
インターフェースの専門家であるJef Raskin はモードに強く反対し、「モードはインターフェースにおけるエラー、混乱、不必要な制限、複雑さの大きな原因です」と書いています。その後、彼は「同僚の James Winter 博士は『罵り言葉が #&%!#$& で表されているのは偶然ではありません。これは『Caps Lock がオンの状態で数字を入力するとタイプライターが行う動作』です」と述べています。Raskin は著書『The Humane Interface』で、コンピューターのモードレス インターフェースの原理について説明しています。これらの原理は、Canon CatおよびArchyシステムに実装されました。
最近では、一部のインターフェース デザイナーが、ウィンドウの背景を暗くしたり、モーダル ウィンドウの外側でマウスをクリックするとウィンドウが強制的に閉じるようにしたりすることで、モーダル ウィンドウをよりわかりやすくユーザー フレンドリにするための措置を講じています (ライトボックス[19]と呼ばれるデザイン)。これにより、モーダル エラーのリスクが軽減されます。Jakob Nielsen は、モーダル ダイアログの利点として、ユーザーの認識が向上すると述べています。「何かを修正する必要がある場合は、ユーザーにそれを認識させる方がよいでしょう。」この目的のために、ライトボックス デザインは、ダイアログとその他のビジュアルとの強い視覚的コントラストを提供します。しかし、このような方法では、不注意による誤った操作のリスクは軽減されるかもしれませんが、モーダル ウィンドウによってアプリケーションの通常の機能の使用がブロックされ、ユーザーが問題を解決するためのアクションを実行できない、または画面をスクロールしてモーダル ウィンドウに表示されるオプションから正しく選択するために必要な情報を表示できないという問題は解決されません。また、多かれ少なかれ破壊的な結果を招くことなく抜け出すことができない行き止まりに誤って陥ったことに対するユーザーのフラストレーションを軽減することもできません。
ゼロックスPARCとアップルコンピュータのラリー・テスラーは、モードを嫌うあまり、自分の車に「NO MODES」と書かれたナンバープレートを付けていた。彼は1980年代初頭から2020年に亡くなるまで、このプレートを様々な車に使用していた。彼はまた、他の人々と共に「Don't Mode Me In」というフレーズを、モードを排除または削減するためのスローガンとして長年使用していた。[20] [21]
デンバー美術館の美術展のためのマルチタッチテーブルのデザイナーであるブルース・ワイマン氏[22]は、複数のユーザーが同時に使用するインターフェースは、特定のユーザーに焦点を当てないようにするためにモードレスでなければならないと主張している[23] 。
設計に関する推奨事項
可能な場合は避ける

可能であれば、元に戻すコマンドやごみ箱などのモードの代替手段が推奨されます。 [24] HCI研究者のドナルド・ノーマンは、モードエラーを回避する最善の方法は、状態を明確に示すことに加えて、ユーザーがシステムの正確なメンタルモデルを構築してモードを正確に予測できるように支援することであると主張しています。[25]
これは、たとえば道路の交差点にある一時停止標識で実証されています。ドライバーは、自宅近くの四方向一時停止標識によって、同様の交差点も四方向停止であると想定するようになります。たまたま二方向のみの場合、ドライバーは他の車が見えなければそのまま進むことができます。特に視界が遮られている場合は、車が通り抜けて最初の車に横から衝突する可能性があります。改良された設計では、どの方向に一時停止標識があり、どの方向にないのかを示す小さな図を含めることで、この問題を軽減し、ドライバーの 状況認識を向上させます。
適切な配置
モーダルコントロールは、タスクフローのフォーカスがある場所に配置するのが最適です。[24] たとえば、モーダルウィンドウは、そのアクティブ化をトリガーするグラフィカルコントロール要素の隣に配置できます。モーダルコントロールは混乱を招く可能性があるため、ユーザーの作業をブロックする可能性を減らすように努める必要があります。モードがアクティブ化されたタスクを完了した後、またはEscキーなどのキャンセルアクションの後、モードが解除されたときに前の状態に戻ると、悪影響が軽減されます。
準モード
ジェフ・ラスキンは著書『ヒューメイン・インターフェース』の中で、ユーザーが一定の操作をすることによってのみ維持されるモードである「準モード」を提唱した。このようなモードはスプリング・ローデッド・モードとも呼ばれる。[26]準モードという用語は、ラテン語の接頭辞quasi- (ほぼ、ある程度を意味する)と英語の「モード」 を組み合わせたものである。
Shift キー、Alt キー、Control キーなどのキーボードの修飾キーはすべて、準モーダル インターフェイスの例です。
ユーザーがキーを押し、コマンドを呼び出す間押し続けるなどの意識的なアクションを実行している限り、アプリケーションはそのモードになります。コマンドを実行せずに持続アクションを停止すると、アプリケーションはニュートラル状態に戻ります。
この技術の利点は、コマンドを呼び出すときにユーザーがアプリケーションの現在の状態を覚えておく必要がないことです。同じアクションは常に同じ認識された結果を生成します。[27]準モードのみを使用し、完全なモードを持たないインターフェースは、ラスキンの定義によれば、依然としてモードレスです。
StickyKeys機能は、修飾キーと通常のキーのキーストロークをシリアル化することで、擬似モードをモードに変換し、同時に押す必要がなくなります。この場合、モード エラーの可能性が高まりますが、身体に障害を持つユーザーのアクセシビリティが向上することで、その分が補われます。
参照
- アプリケーションの姿勢
- 自動化の驚き
- エラーメッセージ
- グラフィカルユーザーインターフェイス
- 人間とコンピュータの相互作用
- インタラクションデザイン
- モーダルウィンドウ
- モダリティとモード
- 州(コンピュータサイエンス)
- テキストモード
注記
- ^ ユーザビリティ用語集: modeless 2007-10-22 にWayback Machineでアーカイブ
- ^ ユーザビリティ用語集: モードエラー
- ^ Tesler, Larry (2012-07-01). 「モードレステキスト編集とカット/コピー/ペーストの個人史」. Interactions . 19 (4): 70– 75. doi :10.1145/2212877.2212896. S2CID 21399421.(pdf)
- ^ 「ダイアログでモダリティを使用する方法」。Oracle Corporation。
- ^ 「モードと人間について」IEEE Spectrum: テクノロジー、エンジニアリング、サイエンスニュース。2005年8月。 2020年2月21日閲覧。
- ^ 用語集: モードエラー
- ^ ab ユーザビリティ用語集: モーダル
- ^ エールフランス447便の墜落に関するBEA最終報告書
- ^ 国家運輸安全委員会
- ^ 貧弱なUIデザインは
- ^ M/V Red7 Alliance 調査報告書(ドイツ語)
- ^ 「USS McCain 衝突は UI の混乱が原因」 2017 年。
- ^ 調査報告書 118/18、連邦海上事故調査局(ドイツ)、2019 年 4 月 10 日
- ^ 米空軍事故報告書
- ^ エグリン空軍基地での F-35A 墜落事故、CW Lemoine、Youtube
- ^ ニュージーランド海軍の船がサモア沖で沈没したのは乗組員のミスが原因と調査で判明、シャーロット・グラハム・マクレイ、AP通信、2024年11月29日
- ^ ab "Modal Panel - Context". Infragistics.com . 2013-05-06 のオリジナルからアーカイブ。
- ^ アザ・ラスキン、A List Apart: 元に戻すことを意味するときは警告を使わない
- ^ Jakob Nielsen、Alertbox。「ベスト アプリケーション UI 10」。
- ^ ラリー・テスラー、クリス・エスピノーサ著『Apple ヒューマンインターフェースの起源』
- ^ Apple ヒューマンインターフェースの起源 - 全文
- ^ 体験のためのテクノロジー: ブルース・ワイマンによるゲスト投稿
- ^ Bruce Wyman の ixda.org メーリング リストへの投稿
- ^ ab "Modal Panel - Implementation". Infragistics.com]。2013 年 5 月 6 日時点のオリジナルよりアーカイブ。
- ^ Norman, Donald A. (1983). 「ヒューマンエラーの分析に基づく設計ルール」Communications of the ACM . 26 (4): 254– 258. doi : 10.1145/2163.358092 . S2CID 47103252.
- ^ ユーザビリティ用語集: スプリングローディングモード
- ^ スプリングロードモード、Jakob Nielsen。
参考文献
- バクストン、ウィリアム AS (1995)。「チャンキングとフレージング、および人間とコンピュータの対話の設計」。ベッカー、ロナルド M.、グルディン、ジョナサン、バクストン、ウィリアム AS、グリーンバーグ、ソール (編)。人間とコンピュータのインタラクションの読み物: 2000年に向けて(第 2 版)。カリフォルニア州サンフランシスコ: モーガン カウフマン。pp. 494– 499。ISBN 978-1-55860-246-5.acmid 212970。
外部リンク
- ユーザビリティにおけるモードレス性最初の用語集
- AppleのHIGガイドラインにおけるモードレス性
- Usability First におけるモードエラーの定義
- Excel のモード エラーの例
- John Rushby。モデル検査を使用してモードの混乱やその他の自動化の驚きを発見する。モード エラーを自動的に検出する方法について説明した論文。
- スプリングローデッドモードについて語るヤコブ・ニールセン
