・はじめに
この記事では、テストで考えるべき基本的なことについて書いていく。・テストの必要性
テストが必要な理由は、作ったソフトウェアがきちんと動作するかを確認しなければならないためである。たとえば、電卓を使う際足し算をしているのに掛け算がされたり、閉じるボタンを押しても閉じず毎回毎回タスクマネージャーからアプリを落とさなければらならないなど、不具合や誤作動を起こさないソフトウェアを作らなければならないためである。そしてテストが必要な理由は、もう1つ理由があり、それはユーザーが求めているものをしっかりとソフトウェアに落とし込めているかを確認する必要があるためである。たとえば、スマホのカメラアプリで写真を撮って保存する際、毎回保存をするか、削除(保存しない)かを選ばなければならない仕様になっていたり、タイマー機能を使う際、わざわざパスコードを入力しなければならない仕様になっているような、ユーザーのニーズとはまったく合わないようなソフトウェアになっていないかということを確認するためである。
このようにテストとは「不具合や誤作動がないかというまずソフトウェアがきちんと動くかを確認すること、さらにソフトウェアがユーザーのニーズにきちんと合致しているかを確認するため」に行うものである。
・ユーザのニーズとは
次にユーザーのニーズについて考えていく。ソフトウェアにおける欠陥とは、わかりやすいもので一言でいえばソフトウェアが機能しなければ、そのソフトウェアに欠陥があるということができる。しかし、ユーザーのニーズにあっているかどうかというのはとても抽象的なもので、具体的にどうすればユーザーのニーズにあったソフトウェアになるのかということは難しい。
・狩野モデルとは
そこで考えたいのが「ユーザー満足」と「品質」の関係を示した「狩野モデル」である。
狩野モデルは、品質モデルを「当たり前品質」、「一元的品質」、「魅力的品質」に分けて考える。
「当たり前品質」とは、あって当たり前の機能がある品質のことである。キーボードにおける当たり前品質とは、きちんと文字が入力されることである。当たり前品質は無ければ商品、ソフトウェアとしてありえないレベルの品質を「当たり前品質」という。
次に「一元的品質」とは、なければ不満が出る、あれば評価があがるような機能である。電子書籍リーダーを例に挙げると、しおり機能などである。もし電子書籍リーダーにしおり機能が無ければ、不便に感じ、もししおり機能があれば便利だと感じる。このようなあれば評価があがり、なければ不満が出るような品質のことを「一元的品質」という。
最後に「魅力的品質」とは、あればすごいと評価が上がり、なくても仕方がない、なくて当然と感じさせるような機能である。例としては、動かすことによって電気を作り出す機能があるマウスなどです。このような人が期待していないような品質のことを「魅力的品質」という。
このように「狩野モデル」はユーザーのニーズに合っているかどうかをこの基準に考えることに役に立つのである。
・テストをする際に大切な目線
次に、テストをする際に担当者が持つべき視点、大切な視点について2点考えていく。・V&V
V&Vとは、「Verification & Validation(検証と妥当性確認)」の略である。「Verification」の視点とは、ソフトウェアの設計図通りに作られているかどうかを確認することである。このVerificationを行う際は実際にソフトウェアを動かして確認する。ソフトウェアの設計図は開発工程ごとに作成されるため、Verificationも開発工程ごとに行われる。
「Validation」の視点とは、ユーザーの要望通りにソフトウェアが作られているかどうかを確認売ることである。Validationは、ソフトウェアを実際に動かして確認する。そしてそれに加えて実際に動かしてユーザーの要望通りに作られているかを確認する。
すべての欠陥はこの「V&V」のどちらかに分けることができる。
・Never・Must・Wantの視点
Never・Must・Wantの視点とは、Never:あってはならないこと
Must:できればなければならないこと
Want:できたらよいこと
この3つの視点からテストを考えることである。
具体的には
Neverとは、生命や財産などに悪影響を及ぼすような事態がないかどうか
Mustとは、ユーザーのニーズにあっているかどうか
Wantとは、改善するべき点や使いやすさを向上させるような点がないかどうか
このような視点でテストをすることである。
【参考】
この1冊でよくわかるソフトウェアテストの教科書[増補改訂 第2版] 著: 布施昌弘ら
https://www.amazon.co.jp/dp/481560875X