スキルアップ

【連載】要求工学における「利用状況」の扱いをめぐる考察:SQuaREの「利用時の品質モデル」から「利用状況網羅性」はなぜ消えた?(第2回)

【連載】要求工学における「利用状況」の扱いをめぐる考察:SQuaREの「利用時の品質モデル」から「利用状況網羅性」はなぜ消えた?(第2回)

イントロダクション

前回は、「顧客は、〝なぜ〟他にもある競合製品ではなく、我が社の製品を購入してくれたのか?(購入してくれると見込めるのか?)」に応えていくためには、「特定の状況においてこそ、切望される価値を提供する必要がある」、という話をしました。

今回は、「利用状況」が品質モデルの中でどう位置付けられているのかについて説明します。

日頃から本サイトの記事を読んでくださっている皆さんは、ソフトウェア品質モデルが、SQuaRE(Systems and software Quality Requirements and Evaluation)の略称を持つ国際規格ISO/IEC25000ファミリーの中で定義されていることを、既にご存じでしょう(この規格は国内のJISにもなっており、ソフトウェア品質モデルはJIS X 25010:2013で示されています)。

一方、前回の記事から飛んできた人の中には、SQuaREが示す「ソフトウェア品質」について詳しくない方も含まれると思います。ISO 9000が示す「品質」と比較しやすいよう、両方の定義を以下に示しておきます。

JIS Q 9000:2015(ISO 9000:2015)3.6.2

品質(quality)

対象に本来備わっている特性の集まりが,要求事項を満たす程度。

注記1 “品質”という用語は,悪い,良い,優れたなどの形容詞とともに使われることがある。

注記2 “本来備わっている”とは,“付与された”とは異なり,対象の中に存在していることを意味する。

JIS X 25000:2017(ISO/IEC 25000:2014)4.33

ソフトウェア品質(software quality)

明示された条件下で使用するとき,明示的ニーズ又は暗黙のニーズを満たすためのソフトウェア製品の能力。

注記 この定義は,JIS Q 9000:2015の品質定義と異なる。主な理由は,ソフトウェア品質の定義が明示的ニーズ又は暗黙のニーズの満足に言及しているのに対し,JIS Q 9000の品質定義が要求事項の満足に言及していることによる。

SQuaREのソフトウェア品質の定義が、「明示的ニーズ又は暗黙のニーズ」[2]の満足に言及していることを覚えておいてください。

さて、SQuaREの中でも、とりわけ品質モデルは広く活用されるに至っています。その品質モデルは、大きく「利用時の品質モデル」、「製品品質モデル」、「データ品質モデル」の3つに分類されており、「状況」が明示的に扱われるのは「利用時の品質モデル」です。このJIS X 25010:2013で示される「利用時の品質(quality in use)モデル」の品質特性の中に、利用状況網羅性(context coverage)があったのでした。

今、「でした」と過去形で表現したのには理由があります。実は、この国際規格のISO/IEC 25010:2011は、2023年に改訂されています。その際、「状況」の表現が含まれていた品質特性は削除されました。つまり、「状況」は品質特性ではない、と整理されるに至ったということなのです。

「なんだ。結局、状況は品質の観点からも二の次なのか」と思われてしまったかもしれませんが、それは大きな誤解です。どういうことなのかを説明していきますが、その前に、このSQuaREの品質モデルの改訂について、ここでは「利用時の品質(quality in use)モデル」を確認することから始めましょう。

品質モデルの改訂について

まず、この原稿執筆時点の2024年10月現在、JISの方は依然としてISO/IEC 25010:2011を基にしたもののままとなっています。2023年に既に改訂されたと説明しましたが、それは国際規格の方だけですので、JISと版が違う状態になっています。

今回の改訂で従来のISO/IEC 25010:2011の内容は次の3つに分割されました(先に述べたように、この版に対応するJISは本稿執筆時点で存在しません。このため、本稿の日本語訳は参考文献[13]に示した理化学研究所革新知能統合研究センター/東京都立大学客員教授 福住伸一氏がJaSST’23Hokkaidoの資料に示したものを使わせていただいた他は、全て筆者による独自のものになっていますので、注意してください)。

●ISO/IEC 25002:2024

Systems and software engineering — Systems and software Quality Requirements and Evaluation(SQuaRE) — Quality model overview and usage(品質モデルの概念と利用方法)

●ISO/IEC 25010:2023

Systems and software engineering — Systems and software Quality Requirements and Evaluation(SQuaRE) — Product quality model(製品品質モデル)

●ISO/IEC 25019:2023

Systems and software engineering — Systems and software Quality Requirements and Evaluation(SQuaRE) — Quality-in-use model(利用時の品質モデル)

つまり、「利用時の品質モデル」は、ISO/IEC 25019:2023として示されるに至っているので、詳しく見てみることにしましょう。

図表1:改訂後の利用時の品質モデル

改訂前(JISにおいては現行)に示されている以下のモデルと比較してみましょう。

図表2:改訂前(JISにおいては現行)の利用時の品質モデル

改訂後(ISO/IEC 25019:2023)の品質特性の中に、改訂前(ISO/IEC 25010:2011)にはあった利用状況網羅性(context coverage)という表現がありません。またそれに相当するものも見つかりません。つまり削除されてしまったことが分かると思います。

「これはどうしたことなのだろうか?」

それが本稿の主題ですが、その説明の前に、せっかくなので他の改訂部分も見てみましょう。実は他の部分の変更とも関わりがあるのです。全体の比較に目を向けてみると、リスク回避性(Freedom from risk)以外は、結構大きく入れ替わってしまったという印象を持たれるかもしれません。

しかし丁寧に見ていくと、そうではないことが分かります。確かに追加されているものは多いですが、削除されているように見えるものの多くは、そう見えるだけで、実際には残っていると考えてよいと思います。

有効性(effectiveness)、効率性(efficiency)、満足性(satisfaction)は消えてしまったように見えますが、これら3つはユーザビリティ(Usability)にまとめられています。

その使用性(※)(usability)は、改訂前(ISO/IEC 25010:2011)には「製品品質モデル」に入っていたので、これがまた誤解を招くことになるかもしれません。「なるほど。使用性(usability)は製品品質モデルから利用時の品質モデルに移されたのだな」、などと早合点してしまう方がいるかもしれませんが、そうではありません。むしろ、そう考えない方が良いです。

先に述べましたように、新しく利用時の品質モデルに現れたユーザビリティ(Usability)は、有効性(effectiveness)、効率性(efficiency)、満足性(satisfaction)をまとめた上位に位置付けられる品質特性です。改訂前(ISO/IEC 25010:2011)の製品品質モデルの使用性(usability)とは内実が異なり、移動したわけではありません。

この新たなユーザビリティ(Usability)は、便益(Beneficialness)の下位に位置付けられています。主特性と副特性という区別をすると、ユーザビリティ(Usability)は副特性ということになります。そうすると、有効性(effectiveness)、効率性(efficiency)、満足性(satisfaction)は副副特性ということになるので、副特性までしか示さない図からは消えてしまったというだけの話です。

この部分の体系・構造を正しく理解するためには、他の関係する規格も合わせて理解すると良いでしょう。その関係する規格とは、『ISO 9241-11:2018 Ergonomics of human-system interaction Part 11: Usability: Definitions and concepts』です。対応するJISとしては、『JIS Z 8521:2020 人間工学―人とシステムとのインタラクション―ユーザビリティの定義及び概念(Ergonomics of human-system interaction -- Definitions and concepts of usability)』ということになります。この規格の中において、ユーザビリティは以下のように定義されています。

JIS Z 8521:2020 3.1.1

ユーザビリティ(usability)

特定のユーザが特定の利用状況において,システム,製品又はサービスを利用する際に,効果,効率及び満足を伴って特定の目標を達成する度合い。

つまり、この規格との整合を考慮した結果ということなのです。

国際規格をさかのぼってみると、ISO/IEC 25010: First edition 2011よりも前に規格化されたISO 9241-11:1998の3.1においてusabilityは以下のように定義されており、これが今に至るまで変わらずに(製品だけではなく、システムやサービスを含むようになりましたが)継承されているのが分かります。

ISO 9241-11:1998 3.1

usability:

Extent to which a product can be used by specified users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use.

有効性(effectiveness)、効率性(efficiency)、満足性(satisfaction)が、そのままこのユーザビリティ(Usability)の定義の中に、しっかり書き込まれていることが確認できます。

結局、どこに手が入ったのかを示しておいた方が理解しやすいと思いますので、以下に図示します。

図表3:利用時の品質モデルの改訂ポイント

削除された箇所は、利用状況に関連する部分だけであることが分かります。

(※)英語表現の「Usability」について、JISの製品品質モデルでは「使用性」と訳されてあり、それに合わせています。一方、改訂後(ISO/IEC 25019:2023)の利用時品質モデルは、JISが本稿執筆時点で存在しない、本稿で示しているとおり内容が同じではないことから、図中にも示した福住氏の訳に従って「ユーザビリティ」を採用しています。

今回の本題(SQuaREの「利用時の品質モデル」から「利用状況網羅性」はなぜ消えた?)

さあ、いよいよ本稿の本題に答える場面がやってきました。

先にJIS Z 8521(ISO 9241-11)におけるユーザビリティ(usability)の定義を示しましたが、それをもう一度見てください。今度は、先ほど注目した部分以外に注目することにします。具体的には次の部分です。

『特定のユーザが特定の利用状況において,……』

そうです。この表現の中に「状況(context)」についての言及が含まれています。

ユーザビリティ(usability)は、特定の利用状況(specified context of use)において考えるべきものであるということです。つまり、「状況はユーザビリティ(usability)を考える前提条件の一つだ」ということになります。

次のような例を考えてみると分かりやすいと思います。

ナビゲーションアプリを開発しているとしましょう。アプリを車の運転中に利用する前提と、歩行中に利用する前提とでは、機能要件も品質要件も違ってくるはずです。運転中の利用を前提に開発が始まり、ユーザビリティを高める努力をしてきたのに、後から突然「歩行中にも使用することにします」などと言われたとしたらどうでしょうか?そのままでは歩行中に使用したユーザーから不満が出るのは必定で、ユーザビリティは一気に低下してしまうことになります。

この例から分かるように、ユーザビリティは固定した特定の利用状況の土台の上に築くべきものであり、その土台となる利用状況の方が変わってしまうと、せっかく築き上げたユーザビリティが崩れてしまいかねないのです。

もう一つ、別の例、鉄道切符の発売のために開発されたマルスと呼ばれるシステムを考えてみましょう。このシステムに接続して各種切符を発券する端末は、駅員が操作する前提のもの顧客自身が操作する前提のもの、の大きく2つに分類できます。リンク先の動画で操作しているところを少し見ていただければ、それぞれが目指すべきユーザビリティが大きく異なるであろうことについて説明は要しないでしょう。

ところで、顧客自身が操作する前提のものは、ユニバーサルデザインになっているものが増えています。タッチパネルだけではなく、物理的なテンキーが付いていて、一部の操作はそちらを使ってできるほか、音声ガイダンスの開始を指示できるものもあるようです。小さな子どもや車いすユーザーも無理なく操作できるよう、低位置にボタンを配置する一方で、腰をかがめずに済むよう鉄道切符やおつりの取り出し口が低くなり過ぎないようになっています。訪日外国人観光客にも分かりやすいよう多言語対応がなされていたり、他にも多数の工夫がされています。

そこで、少しばかりアクセシビリティ(accessibility)の定義も確認してみましょう。アクセシビリティは、ISO/IEC 25019:2023が示す品質モデルの中では、beneficialnessの下位にユーザビリティと横並びに位置付けられています。その定義はISO 9241-112:2017からそのまま引き継がれており、対応するJISが存在しますので、以下に示します。

JIS Z8522:2022(ISO 9241-112:2017) 3.15

アクセシビリティ(accessibility)

製品,システム,サービス,環境及び施設が,特定の利用状況において特定の目標を達成するために,ユーザの多様なニーズ,特性及び能力で使える度合い

注釈1 利用状況は,ユーザが単独で利用する,又は支援技術を使って援助を受けながら利用する状況を含む。

この「特定の利用状況において」という部分は、ユーザビリティと共通していることが分かります。一方、ユーザビリティでは「特定のユーザーが」となっているのに対してアクセシビリティの方ではその限定が外されていることが分かると思います。

連載1回目で5W1Hのフレームワークに照らして考えてみましたが、ここでもそうするならば、WhenやWhereをまず固定しようとすることが共通しています。これに対して、Whoの場合、ユーザビリティは固定するのに対して、アクセシビリティの方はそこを固定しないわけです。固定しないからこそ、アクセシビリティということになるのだと思います。

いずれの品質特性から見ても、利用状況は前提として特定されていなければならないことをここでは確認してきました。つまり、「利用状況」は品質特性とするのではなく、他の品質特性の前提であると考えられているのです。これが「利用状況網羅性(context coverage)」が品質モデルから削除されるに至った理由です。

まとめ

ISO/IEC 25019:2023の冒頭(1.Scope)に次の記述が含まれています。

本文書では、利用状況が利用時の品質の前提条件として特定されているため、製品やサービスが利用状況の変更に対応しようとする場合、前提条件を変更するために利用状況を再特定する必要がある。

In this document, because context of use is specified as prerequisite of quality-in-use, context of use is necessary to be re-specified to change prerequisite when a product or service intend to fulfil to context of use changes.

つまり、利用時品質は利用状況(context of use)を特定した上で考えるものということです。利用状況網羅性(context coverage)は品質特性ではなくなりましたが、それは「重要ではないから」ではありません。利用時の品質を扱う前提なわけですから、これが定まらないと何も始めようがないということです。むしろ、その重要さがより明確に示されたと考えると良いでしょう。

それではその利用状況(context of use)とは、何のことなのかと言えば、ISO/IEC 25019:2023はISO 9241-11:2018(JIS Z 8521:2020 人間工学―人とシステムとのインタラクション―ユーザビリティの定義及び概念)の定義をそのまま引き継いでいます(繰り返しの説明になりますが、ISO/IEC 25019:2023には現時点で対応するJISがありませんので、原文としては全く同じものが日本語訳されているJIS Z 8521:2020を引用して以下に示します)。

JIS Z 8521:2020(ISO 9241-11:2018) 3.1.15

利用状況(context of use)

ユーザ,目標及びタスク,資源並びに環境の組合せ。

注記 利用状況の“環境”は,技術的,物理的,社会的,文化的及び組織的環境を含む。

ただし、利用者(user)の定義はSQuaREとISO 9241-11:2018との間では異なるものとなっています。ISO 9241-11:2018の利用者(user)は、SQuaREでの直接利用者(direct user)に対応しており、 SQuaREでの利用者(user)は、その直接利用者(direct user)だけではなく、間接利用者(indirect user)も含んでいることに注意が必要です。

図表4:SQuaREとISO 9241シリーズ、それぞれにおける利用者(user)の対応関係

つまり、利用時品質の対象は、直接的な相互作用に限定されません。システム、ソフトウェア製品、ITサービスの使用によって間接的に影響を受ける利害関係者や社会的要素も含まれることになります。

「利用時品質」の定義は、以下に示すように時と共に少しずつ変遷しています。SQuaREにおいて品質モデルが示された2011年当時から利用者(user)には間接利用者(indirect user)が含まれており、それは変わりないのですが、わざわざそのことを注記に追加したり、他の利害関係者を含めたりして、扱う範囲の広さに注意を向けさせようとしているように思います。

図表5:利用時の品質の変遷

上述したように、確かにSQuaREの扱う範囲は変化していますが、体系や構成の見直しをしながら拡充されています。変化は全体の整理が進んでいるからなのだと理解できます。その表層的な部分だけを見て、流行に合わせてコロコロ入れ替わっていると解釈するのは間違いです。

要求工学の要求の検証・妥当性確認・評価において、個々の要件の特性評価に比べて、要件集合の特性である抜け漏れがなく完全であることや、矛盾なく一貫性があることの確認や評価がずっと難しいのと同じように、SQuaREも体系としての理解は簡単ではないと感じます。だからこそ、個々の品質特性をばらばらに理解するだけではなく、全体の体系や考え方を理解することは大いに役立つのです。

かくいう筆者も未熟者なので、上記で述べた認識の下、日々精進を続けています。関連する規格を読み比べ、それらの間の関係性を自分なりに整理して理解しようとあれこれと考えると、それぞれの特徴が際立って見え、新たな気付きが得られます。それは結構楽しい時間でもあります。

おまけ

さて、SQuaREの「利用時の品質モデル」から「利用状況網羅性(context coverage)」が消えた謎解きが終わり、それを通してお伝えしたかった内容は以上の通りです。ですので、本稿は以上でおしまいなのですが、「製品品質モデル」の方はISO/IEC 25010:2011から同じ規格番号のISO/IEC 25010:2023へと改訂され、その内容も一部変更になっています。どう変更されたのか気になる方もいらっしゃると思います。どこに手が入ったのかが分かる程度の情報でしかありませんが、以下に図示しましたので参考にしてください。

図表6:改訂前(ISO/IEC 25010:2011)の製品品質モデル
図表7:製品品質モデルの2023年改訂のポイント
図表8:改訂後(ISO/IEC 25010:2023)の製品品質モデル

使用性(usability)は「製品品質モデル」から「利用時の品質モデル」に移されたわけではないと、既に説明しました。こちらにあった使用性は、Interaction capabilityのところを見てもらえば分かるとおり、改訂前後で名前は変わりましたが、ほぼそのままここにあることが分かると思います。

“usability”と“interaction”は異なる概念であり、またここに使用性(usability)として示されていた内実はISO9241-110において“Interaction principles”として示されていた内容とほぼ同じであることから、改名するのが適切ということになったようです[13]。

これもまたややこしいですが、改訂の前後で移植性(portability)が改名されてフレキシビリティ(flexibility)になっています。これも製品の品質特性ということであって、利用時の品質モデルにあった利用状況網羅性(context coverage)の品質副特性の一つである柔軟性(flexibility)がこちらに移されたということではありません。

参考文献

[1] JIS Q 9000:2015 (ISO 9000:2015) 品質マネジメントシステム―基本及び用語 Quality management systems -- Fundamentals and vocabulary

[2] JIS X 25000:2017 (IS0/IEC 25000:2014) システム及びソフトウェア製品の品質要求及び評価(SQuaRE)―SQuaREの指針 Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- Guide to SQuaRE

[3] JIS X 25010:2013 (ISO/IEC 25010:2011) システム及びソフトウェア製品の品質要求及び評価(SQuaRE)―システム及びソフトウェア品質モデル Systems and software engineering -- Systems and software Quality Requirements and Evaluation (SQuaRE) -- System and software quality models

[4] ISO/IEC 25002:2024 Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — Quality model overview and usage

[5] ISO/IEC 25010:2023 Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — Product quality model

[6] ISO/IEC 25019:2023 Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — Quality-in-use model

[7] JIS Z 8521:2020 (ISO 9241-11:2018) 人間工学―人とシステムとのインタラクション―ユーザビリティの定義及び概念 Ergonomics of human-system interaction -- Definitions and concepts of usability

[8] ISO 9241-11:2018 Ergonomics of human-system interaction Part 11: Usability: Definitions and concepts

[9] ISO 9241-11:1998 Ergonomic requirements for office work with visual display terminals (VDTs) Part 11: Guidance on usability

[10] JIS Z 8522:2022(ISO 9241-112:2017) 人間工学―人とシステムとのインタラクション―情報提示の原則 Ergonomics of human-system interaction -- Principles for the presentation of information

[11] JIS Z 8520:2022(ISO 9241-110:2020) 人間工学―人とシステムとのインタラクション―インタラクションの原則 Ergonomics of human-system interaction -- Interaction principles

[12] ISO 9241-110:2020 Ergonomics of human-system interaction Part 110: Interaction principles

[13] 福住伸一『ユーザビリティとソフトウェア品質』JaSST’23 Hokkaido 基調講演 https://jasst.jp/symposium/jasst23hokkaido/pdf/S2.pdf

[14] 黒須正明『UX原論 ユーザビリティからUXへ』近代科学社

[15] https://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%AB%E3%82%B9_(%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0) マルス (システム) , Accessed Oct 29, 2024.

[16] Dotaku, “Japanese ticketmaker 'MARS' and very high speed employee!” . YouTube, 2011/01/29, https://youtu.be/DCrM4nIs9ns?si=MrsTkraQzsbj4UVe, Accessed Oct 29, 2024.

[17] JR東日本公式チャンネル, “特急券のご購入方法(座席未指定券を発売する列車)” . YouTube, 2021/03/15, https://youtu.be/pLdVwQOLY8Q?si=tpLt9UdSXDD7dsHX, Accessed Oct 29, 2024.

[18] JR東日本, “おからだの不自由なお客さまへ”, https://www.jreast.co.jp/equipment/equipment_2/, Accessed Oct 29, 2024.

SNSシェア

この記事は面白かったですか?

今後の改善の参考にさせていただきます!

Search Articles By The Cast出演者/執筆者から記事を探す

Search Articless By The Categoryカテゴリから記事を探す

Ranking

ランキング

もっと見る