(文責:川勝)
実装が終わったらテストをすることが必要である。 自分たちの環境でアプリケーションが動いていても それが実際に様々な環境、使い方で正常に動くかはやってみないことには分からないからである。 また、外部の人に利用して貰うためには内部でのテストは欠かせないということもある。
私たちはちょうど人が集まる研究会の授業を利用してデモを行い、どの程度使えるものかについて実験した。 みるみるの場合、ユーザテストを実施する意義は次のようなことであった。
なお、第1回ユーザテストでは担当者の部分が完全に動く保障がなかったのでCUIを利用してテストを行った。
結果は失敗に終わった。あちこちで「動かない」「進まない」という声が上がる。 私たちは自動更新版と手動更新版を設けていたのだが、 自動更新版ではエラーが多発したため、途中から手動更新版でテストして貰うことにした。
バグが出る度に全て個別に対処していてはテストが進まないので、 何人もの人に共通するバグに関してはできるだけその場で対処するようにして、 その他に関してはユーザからの意見をメールで送って貰い、後で対処することにした。
利用者である松澤氏の意見、協力者のメールのよる報告も受け、結果から問題点を洗い出した。 テスト協力者から得たバグ報告メールとその後議論した問題点は次のとおりである。
第1回ユーザテスト障害メール Netscape 4.78だと トップページのボタンが表示されませんでした. --------------------------------------------- 先日のみるみるのデモについてのエラー報告ということですが 自分はトップページを開くこと自体が出来ませんでした。 ネットワークに繋がってるにもかかわらずping自体が通らなかったため ipconfig /release ipconfig /renew と続けて,IPアドレスの再取得をすることでトップページを開くことが出来ました。 それ以外は特に問題はありませんでした。 ――――−−−−−−‐‐‐‐‐‐‐‐ 名前:有田○○ ログイン名:t01036na OS:winXP ブラウザ:IE バージョン:6.02 JavaScript:あり Javaアプレットとバージョン:よくわかりません 動作報告:2つのブラウザで同時に入った場合はサーバー側でどう扱われるのかが 気になりました。(回答の反映など) ------------------------------------------ お名前(テストで使った名前):嶋田 ○○ ログイン名:shimada 環境について OS:Windows2000 Professional ブラウザとバージョン:タブブラウザ Sleipnir (on IE6.0) 及び NN 7.0 JavaScriptのありなし:JS 動作可 Javaアプレットのありなし、version:on 動作/エラー報告、感想など(その他細かいこと何でも自由に書いて下さい): 特にありませんでした。 2つのブラウザで同時アクセスしたらどうなるのだろうと 試していましたが、とくに重要なエラーはなかったようです。 最新のクリック(回答)が反映されていたように思います。 ---------------------------------------------- > お名前(テストで使った名前):小林○○ > ログイン名:t01350ak > 環境について > OS:Windows2000 > ブラウザ:IE, Netscape > ブラウザのバージョン:IE 5.5 Netscape 6 > JavaScriptのありなし:あり > Javaアプレットのありなし、version:? > 動作/エラー報告、感想など(その他細かいこと何でも自由に書いて下さい): IE 5.5では「ページでエラーが発生しました」と言われ 手動でもできませんでしたが Netscapeではできました。 ---------------------------------------------- > Syntax error while loading (line 10) > > -^ > > Error: > name: ReferenceError > message: Reference to undefined variable: No such variable 'setWindow' > > > です。 > あとsetMessageのエラーもでました > -- > N.AoyamA -------------------------------
これらを踏まえて私たちは議論し、画面遷移を見直したり、実装に修正を加えていった。
第1回ユーザテストを終えた後、第2回ユーザテストに向けて次の3つのことを行った。
まずはバグをリストアップして対処していった。 また、どのバグに対してどう対処したかを書いたバグリストを作成した。
第1回ユーザテストで分かりにくいと指摘があった画面遷移を分かりやすく修正した。変更したのは主に学生の画面遷移である。次に変更点を挙げる。
自動更新版の変更点
手動更新版の変更点
みるみるを安定して動かすには安定したサーバにインストールをする必要があったので、 大岩研究室のetudeというサーバにインストールした。
最初に、CreWのサーバにインストールしたとき、1つだけ問題があった。 みるみるアプリケーションが扱うログとデータのファイルの保存先が、 みるみるのアプリケーションの外の書き込み宣言のないディレクトリになっていた。 これは、ファイルの保存先が実行環境依存になっていたためである。 必ずみるみるの管理するディレクトリに保存する形に変えた。 その他には、サーバにインストールする上で、問題はなかった。 これは、環境に依存する部分が他に存在していなかったということを意味する。
バグリストを作成して、対処していたおかげでエラーはほぼなくなり、 システムとして使える、使いやすいとの報告を受けることができた。
それでもまだ少し対処が足りない点があったことは事実だ。 第2回ユーザテストで出た意見は次のとおりである。
7/17ユーザテスト ユーザ意見・エラー 回答後に未回答に戻したい。あるいは回答拒否をしたい 学生新規登録からログイン画面に戻ってもその間にサポートを開始した授業が表示されない 締め切られた問題に答えたとき、500番エラー(NullポインタException)が出ることがあった 学生で、選択肢以外の記述ができるその他欄が欲しい 学生も集計結果だけは見たい(回答した個人リストは見えるとまずいが) 「"」などの特殊文字を質問内容に入れると表示がおかしくなる 授業名に(株)など通常使わない文字を入れると化ける 質問の内容を2行以上入力したい 学生が2重ログインをすると古い方はログアウト扱いされるが、ユーザには前のログアウトがされたことがわからない。 開発者とオーナとの意思疎通のミス オーナ:回答者一覧のウィンドウを開く部分は、各選択肢毎にウィンドウが開くことを想定していた。(開発者は各選択肢で共通のウィンドウが開くと解釈) 今期プログラムの改良 「"」などの特殊文字と500番エラーの対策を取る
後は上記の意見にあるように、 授業の名前に「""」を入れた時の対処やウインドウの開き方など細かい部分を修正し、 できるだけ色々な環境でテストを繰り返すことで完成に近づけた。 「テスト→対処」を繰り返すことで完成度が高まるのである。