問題31:相互運用性の不具合の識別
問題 #31
Section titled “問題 #31”あなたは、ユーザーが異なるウェブサイトで設定したすべてのパスワードを安全かつ簡単に管理できるようにするためのソフトウェアコンポーネントを開発している企業で働いています。このコンポーネントは数百のウェブサイトに統合され、世界中の何百万人もの人々に使用されています。
現在、このコンポーネントの新しいソフトウェアバージョンが開発されています。このバージョンの主な機能は、これまでこのコンポーネントをサポートしていなかった特定のオペレーティングシステム(OS)との統合です。
次のうち、相互運用性(interoperability)の不具合に該当しないものはどれですか?
- a) コンポーネントを統合しているすべてのウェブサイトでパスワードが保存されない。
- b) ウェブサイトの5%が、特定のOS上で動作しない。
- c) 一部のブラウザでパスワードが途切れて(切り捨てられて)しまう。
- d) パスワードの保存操作が、一部のユーザーにとって複雑になりすぎる。
d) パスワードの保存操作が、一部のユーザーにとって複雑になりすぎる。
この問題は、品質特性における「相互運用性(Interoperability)」の定義を正しく理解し、他の品質特性(この場合は使用性)の問題と明確に区別できるかを問うています。
- a) 不正解。 開発しているコンポーネントと、連携先の「ウェブサイト」という外部システム間でデータ(パスワード)のやり取りに失敗しているため、これは典型的な相互運用性の問題です。
- b) 不正解。 ウェブサイトと「特定のOS」という異なる環境・システム間の連携問題であるため、これも相互運用性の問題に該当します。
- c) 不正解。 コンポーネントと「一部のブラウザ」間の連携において情報が正しく交換(表示)されていないため、相互運用性の問題です。
- d) 正解。 ユーザーにとって操作が複雑すぎる(使いにくい)というのは、明らかに 「使用性(ユーザビリティ)」の不具合 であり、相互運用性の不具合ではありません。
JSTQB AL TA試験において、ISO/IEC 25010の 「互換性(Compatibility)」 とその副特性である 「相互運用性(Interoperability)」 は、非常によく出題されるテーマです。
- 相互運用性のキーワード:
相互運用性とは「2つ以上のシステムやコンポーネントが情報を交換し、その交換された情報を使用できる度合い」のことです。問題文や選択肢に以下のようなキーワードが出た場合、相互運用性のテスト対象になります。
- 「OS(Windows, macOS, Linuxなど)」
- 「ブラウザ(Chrome, Safariなど)」
- 「サードパーティのAPI」
- 「外部ウェブサイト」や「他のシステム」
- 消去法でのアプローチ: JSTQBの試験では「〜に該当しないものはどれか?」という否定形の問題が頻出します。選択肢(a)(b)(c)はすべて「システム vs 外部システム(または環境)」の構図になっていますが、(d)だけが「システム vs ユーザー」の構図になっています。この構図の違いに気づくことができれば、瞬時に(d)を正解として導き出すことができます。
ISO/IEC 25010 における「相互運用性」の位置づけ 以前の問題(#28)のポイントでも触れましたが、旧規格(ISO/IEC 9126)では「相互運用性」は「機能性」の一部でした。しかし、現行の ISO/IEC 25010 では、「機能適合性」とは完全に分かれ、「互換性(Compatibility)」という主特性の副特性として配置されています。この分類は暗記必須です。