読者です 読者をやめる 読者になる 読者になる

sos の 作業メモ

プログラミングや英会話学習、マイルや旅行、日常生活など。最近はWebFormなASP.NETのお守りがお仕事です。

日々の生活にhappyをプラスする|ハピタス Gポイント

「Androidアプリ テスト技法」第2章中編

読書 android

Androidアプリテスト技法

Androidアプリテスト技法

前回の続き

非機能要求のテストについて

非機能要求とは、ユーザーが明示しなくても対応が必要な暗黙的な要求のこと。ISO9126(JIS X 0129)で、これらの非機能要求の分類が網羅されているが、適用するシステムや観点の違いから、様々な分類が提案されている。

ユーザビリティやUXのテスト

アプリの商業的な価値に対して重要。ユーザビリティとは、使いやすさのことで、利用者が目的を達成する際の有効さ、効率及び利用者の満足度の度合いを示す。

ユーザビリティ

有効さ 指定された目標を達成する上での正確さと完全さ
効率 目的を達成する際に費やした資源
満足度 不快さのないこと、及び製品使用者に対しての肯定的な態度

内閣府が発行する「電子政府ユーザビリティガイドライン」による評価の指標

有効さ 初めて利用した利用者の80%以上が手続きを完了する
効率 利用者の手続き完了までの平均所要時間を10分以内にする
満足度 利用者の80%以上が「再び利用したい」と感じる

有効さと効率に関しては計測による評価が可能だが、満足度のようなユーザーの感性評価に関しては定量的な検査が難しい。しかし、機能に差異のつきにくいAndroidアプリでは、製品の完成度を左右する重要な要素となる。

UX

ユーザビリティ同様に、UXも製品の感性評価に言及した物。「ユーザーのニーズを満たした上での、その製品のシンプルさ・上品さ・所有の喜び」

感性品質と商品評価

自動車のデザイン評価で利用される、感性評価の分類

品質要素 形態素要素 測定方法
第一次品質 機能、フットプリント、処理速度 機能テスト、自動化可能テスト
第二次品質 ユーザビリティ、セキュリティ ユーザビリティテスト(官能評価) 感性品質
第三次品質 ネーミング、ブランド、企業名 イメージ調査 感性品質

感性評価は、もともと官能評価と呼ばれる人間の五感(官能)を用いる、感覚的・主観的な品質評価手法で、心理学・生理学・統計学などを用いて官能評価を行う。

感性品質と品質モデル

狩野モデルと呼ばれる品質モデルでは、機能要求や非機能要求に関わらず、評価対象を構成する要素を以下に分類する。

  • 魅力的品質要素

    充足されれば満足を与えるが、不充足であっても仕方がないと受け取られる品質要素

  • 一元的品質要素

    充足されれば満足、不充足であれば不満を引き起こす品質要素

  • 当たり前品質要素

    充足されれば当たり前、不充足であれば不満を引き起こす品質要素

  • 無関心品質要素

    充足でも不充足でも、満足も不満も引き起こさない品質要素

  • 逆品質要素

    充足されているのに不満を引き起こしたり、不充足で満足を与えたりする品質要素

人間の満足度に対する心理的な非合理性は、いろいろな分野で知られている。例えば、10万円の価値のものでも、得た際の嬉しさと、失ったときのガッカリ感では、後者のほうが大きい。

どんなに魅了的な特性があろうとも、当たり前品質が達成していない場合は満足度につながらないため、 まずはそれを優先的にテストする必要がある。

感性品質と品質プロセス

ユーザビリティやUXは、触ったり使ったりしないと分からないという感性評価に依る所が大きいため、反復的なテストと再設計を行い、十分な品質を獲得することを目指す。

この、ユーザビリティのための反復的なテストプロセスの定義は、Human Centric Designとして知られている。

  • 利用状況の理解と明確化
  • ユーザの要求の明確化
  • ユーザの要求を満たす解決案の作成
  • 評価

上から下へと進んで行く。評価がユーザビリティテストに対応し、結果を基に上の3つを反復する 特に重要視されているのが、ユーザの要求を満たす解決案の作成である。

感性品質と第三次品質

UXの時間的位相
消費者 様々な情報による期待と予想
購入者 使用した印象
ユーザー インタラクションによる評価

第三次品質の商品は、「有用性と収益性を持ち、市場において貨幣と交換して売買される経済財」と定義される。以下、収益性に関する4Pを用いて商品と製品の関係を整理する。

  • Product - 製品 / 第二次品質
  • Price - 価格
  • Place - 流通
  • Promotion - プロモーション(販促)

製品を商品という視点で捉え直した場合、製品の第二次品質はマーケティング活動の一要素となる。

AndroidアプリをProductとした場合、以下の関係となる。

Price(価格 / 第三次品質) = Product(製品 / 第二次品質) + Promotion(販促)

テストの対象が製品のユーザビリティである場合、企業ブランドやキャラクター人気などが影響していないのを保証することが非常に重要である。

第三次品質とプロモーションリスク

インターネット普及以降では、消費者間でユーザー体験の共有できるようになったことが大きな変化である。

ユーザー同士の情報共有は諸刃の剣であり、第二次品質のポジティブな価値が第三次品質に反映されやすくなった反面、第一次品質である当たり前品質を損なった際のリスクが大きくなったといえる。

ユーザビリティとUXのテスト手法

ヒューリスティックテスト(有効さに対するテスト)

ユーザビリティの専門家が、経験則で品質を判断する手法。デモ製品を作り、ユーザー側の担当者が動かしながら判断するという、原始的なテスト手法もこれの範疇である。

有名なものにヤコブ・ニールセン博士の「ユーザビリティ10原則」がある。

  • シンプルで自然な対話
  • ユーザーの言葉で話す
  • ユーザーの記憶負荷を最小限にする
  • 一貫性
  • フィードバック
  • 出口を明らかにする
  • ショートカット
  • 適切なエラーメッセージ
  • エラーを防ぐ
  • ヘルプとドキュメンテーション
Android Design

一貫性という項目について、GoogleAndroid Designというサイトでガイドラインを出している。 こういったものに合致しているかの判断も、ヒューリスティックテストの重要な要素となる。

  • Enchant Me
  • Simplify my life
  • Make me amazing

の3本を柱に、17の原則が定義されている。 さらに、アプリの基本的な品質ガイドラインも出ているので、一読しておくと良い。
Core App Quality Guidelines

ユーザーテスト

製品のユーザー候補者数名に実際に製品を利用してもらい、その状況を観察して問題点を発見する手法。

観察者による影響を排除するために、マジックミラーや観察用カメラを用意した環境が理想的とされている。

効率に対するテスト

GOMS-KLM

GOMSとは定性的になりがちなUIの評価手法を定量化するためのモデルで、以下の頭文字をとったUIモデル。

  • Goals: ユーザーの達成したい目的
  • Operators: 目的を達成するためのデバイス操作手順
  • Methods: Operatorsの組み合わせによる選択肢
  • Selection rules: Methodを選択する際の規則

このモデルに従い、デバイスの操作単位(主にキーストローク)でモデル化を行ったのがKLM(Keystroke Level Model)。キー入力やマウス操作の各動作毎に単位時間を設定することで、目的に至るまでのデバイス操作手順を定量化する。

KLMは元々OA機器のようなデバイスを対象としていたため、タッチ操作が主流のAndroidに適用するには、若干考慮が必要となる。

NEM(Novice Expert ratio Method)

熟練者と初心者の比率。GOMS-KLMは、操作の単位時間を設定することで、理論値から操作の最適化を行うものだが、NEMでは熟練者と一般ユーザーから獲得したKLMの指標を比較し、各動作毎の「初心者に厳しい率」を算出することができる。

分子が初心者、分母が熟練者の指標なので、比率が1に近づくほど初心者に優しいインターフェースであることを示す。

満足度に対するテスト

SUS(System Usability Scale)

満足度はユーザーの主観で決まるため、アンケートによってテストを行うことになる。質問の作り方によっては結論を誘導することも可能なため、質問方法の設計は充分に考慮された構成にする必要がある。

商品満足度計測のためのアンケートとしてすぐに利用可能で有名なものにSUSがある。

10項目の質問に5段階で答えると、満足度が点数として算出される仕組み。

  1. この商品をしばしば使いたいと思う
  2. この商品は不必要なほど複雑であると感じる
  3. この商品は容易に使えると思った
  4. この商品を使うのに専門家のサポートがいるかもしれない
  5. この商品にある様々な機能が良くまとまっていると感じた
  6. この商品では一貫性のない所が多くあったと思った
  7. 大抵のユーザーは、この商品の使用方法を素早く学ぶだろう
  8. この商品はとても扱いにくいと思った
  9. この商品を使う自信がある
  10. この商品を使い始める前に学ぶべきことが多くあると思った

集計手順

  • 奇数番の評価値: 回答値-1
  • 偶数番の評価値: 5-回答値
  • 評価値合計 x 2.5 を総合評価結果とする

同様のものに、QUIS,SUMI,WAMMI,WUSなどもある。

充足質問調査

狩野モデルに基づいて要素毎の満足度をテストするために以下の2つの質問を用いたアンケート手法が用意されている。

  • この要素があったらどう思うか(充足質問)
  • この要素がなかったらどう思うか(不充足質問)

これに対し、「気に入る・当然である・なんとも感じない・しかたない・気に入らない」で評価してもらうことで、各要素の満足度に与える影響を把握する。

縦は充足、横は不充足質問への回答

気に入る 当然 何とも 仕方ない 気に入らない
気に入る 懐疑的 魅力的 魅力的 魅力的 一元的
当然 逆効果 無関心 無関心 無関心 必須
何とも 逆効果 無関心 無関心 無関心 必須
仕方ない 逆効果 無関心 無関心 無関心 必須
気に入らない 逆効果 逆効果 逆効果 逆効果 懐疑的

懐疑的は回答自体に矛盾があるため質問に誤りがあるか、回答自体の信頼性に疑問がある項目。

ユーザーフィードバックによる品質影響要素獲得

狩野モデルに基づく要素別品質評価を行う際は、一般的に機能仕様書を参照しながらテストしたい機能を選別して行く。

しかし、リリース後にベンダーが予想もしない機能にユーザーの関心が集まることも多々ある。こうしたユーザー視点の評価を拾い上げるために、ソーシャルツールで意見を収集しつつ情報工学のDIKWモデルに基づいて検討要素を抽出する方法が有効となる。

  1. Data: 未編集の状態

    アプリレビューコメント、ソーシャルメディア、アンケートからの意見を収集する

  2. Information: Dataの属性が整理分類された状態

    ISO 9241-11に基づいて、ユーザー、タスク、環境の利用状況を分類する

  3. Knowledge: Information同士の原因と結果が分析された状態

    このユーザーの要望は、これが原因なので、こんな修正で対策できる

  4. Wisdom: Knowledgeが統合されて判断基準となった状態

    修正について充足質問調査をおこない、「必須/魅力的/一元的」を分類する

主観的なユーザーの意見を統計的に評価する理論的手法も存在するが、そのまま使えるほどの材料を確保するのは容易ではない。それでも、矛盾するコメントやクレームをある程度定型化して修正可否を判断する必要がある。

ユーザーコメントの分析やTwitter窓口対応はコストがかかる。一定期間、社内テストでは気づかなかったユーザー視点の評価観点獲得に絞って実施することが有効。


ちょっとずつですが進んできました。写経っぽくなっているので、もう少しまとめなきゃいけないのですが、こうやって書いていると結構記憶に残っています。テストのやり方も朧げながらわかってきたような?

いよいよあと20ページで理論の第2章も終わります。はやく実際にテストを書いてみる第3章へ進みたいなぁ。

次回へ続く