2012年4月3日火曜日

ソフトウェアの品質を学びまくる:SQ1.1-品質の概念


━ 2010/10/16:faultの定義に関する誤記と、その他誤認を訂正。

 いわゆる「バグ」と、その周りの言葉は、定義が曖昧だったり使う人によったりして、誤解を招きやすいですよね。ちょっと整理してみました。

SQuBOKの定義

 SQuBOK(第1版)では、JIS X 0014に従って、次のように定義しています。

誤差・誤り(error)・・・JIS X 0014:1999、SQuBOK
計算、観測もしくは測定された値または状態と、真の、指定されたもしくは理論的に正しい値または状態との間の相違。

 ソフトウェア設計書の記述として、「または」「もしくは」を連発したこんな書きっぷりが蔓延していたら、0.01秒で差し戻しますが。。。


ロッキー山脈はどのように見えるのですか?
障害(fault)・・・JIS X 0014:1999、SQuBOK
要求された機能を遂行する機能単位の能力の、縮退または喪失を引き起こす、異常な状態。
故障(failure)・・・JIS X 0014:1999、SQuBOK
要求された機能を遂行する、機能単位の能力がなくなること。

 faultの「状態」という言葉に違和感がありますが、これは「間違っている」という現実を指すものと理解しています。その間違いがもたらす結果が、failureというわけです。ちょっとわかりづらいですね。

JSTQBの定義

 一方、JSTQBの用語集では、もう少しヒトに優しい高級言語で記されています。


モニタースピーカーは何ですか?
エラー(error、誤り)・・・JSTQB
間違った結果を生み出す人間の行為

 「10以上」は10を含まないと小学生時代から信じたままコードを書いたとか、そういう「バグを作るキッカケ」と思えばよいでしょうか。
 SQuBOKとはまったく立ち位置が違うので、要注意ですね。JSTQBでは「行為」、SQuBOKではその行為によって生じてしまった、あるべき姿との「差異」。


偽のクレジットカード番号を取得する方法
欠陥(defect、バグ、失敗)・・・JSTQB
要求された機能をコンポーネントまたはシステムに果たせなくする、コンポーネントまたはシステムの中の不備。(中略)実行中に欠陥に遭遇した場合、コンポーネントまたはシステムの故障を引き起こす。

 「10以上」は10を含まないという頑なな思いから、また指の激しい滑りから、「if i > 19 then」とコーディングしてしまった・・・。
 その結果が、欠陥ですね。JSTQBの「欠陥」は、「中の不備」とあるので、ドキュメント段階での問題点は含まないようにも見えます。
 ちなみにわたし(の周りで)は、「バグ」をプログラム内部の問題点、「不良」を、システム/ソフトウェア構築に伴う生産物に含まれる問題点(バグを含む)といった意味で使っております。


故障(failure)・・・JSTQB
コンポーネントやシステムが、期待した機能、サービス、結果を提供できないこと。

 指滑りコードがテストされる日がついにやってきた。境界値テストとして「i=9」と「i=10」を試してみる。この2つは結果が違うはずだが・・・。いや、何故か同じだ!
 というように、欠陥がある現象として白日の元にさらされた状態。これが「故障」ですね。SQuBOKの「error」は、どちらかといえば、JSTQBの「故障」に近いように思います。

ついでに・・・

 ついでながら、JSTQBの認定試験で、「故障率」と「欠陥密度」の定義に関する問いが出題されていました。


故障率(faiulre rate)
測定単位に発生したあるカテゴリの故障数の率。例えば、単位時間あたりの故障数、トランザクション数あたりの故障数、コンピュータの運用回数あたりの故障数。
欠陥密度(defect density)
コンポーネントまたはシステムの中で特定された欠陥の数をコンポーネントまたはシステムの大きさで割った値。

 しっかり覚えていなかったので、故障率の方は間違えた気が。「欠陥」と「故障」の意味をちゃんと覚えていれば、間違いようもないですけどね。

 余談ですが、「人間の行為」と書こうとして、「人間の」まで打った時点でgoogle先生が「人間のクズ」と予測変換してくれるのを見て、ネットの病を感じざるを得ません。



These are our most popular posts:

妥当性と信頼性

テストの妥当性と信頼性について. ... これはつまり、課題内容が内容的妥当性を持っ ていないため、ナンセンスであると言えるのです。 この内容的妥当 ... 構成概念妥当性. これは因子的妥当性とも呼ばれます。 テストや質問紙を作るとき、闇雲に作るわけでは ありません。何らかの要因を考えつつ作ります。 つまり、 ... 次に、期間を空けたこと により、その人の中で何か変化が起きたとしたら、当然回答のパターンは前回とは違っ てきます。 read more

概念 - Wikipedia

出典を明記し、記事の信頼性を高めるためにご協力をお願いします。議論はノートを ... 概念(がいねん)コンセプト(英: concept)とは、物事の総括的・概括的な意味のこと。 ある事柄に対して ... 概念は人間の精神内部に存在する何かであり、抽象的、普遍的な ものである。精神外部の ... この「概念」は、哲学に関連した書きかけ項目です。この記事 を ... read more

心理統計の注意点:信頼性についての注意点

余談ですが,この考え方を拡張し,「何に対する信頼性か」ということをしっかりと分離 する分析があります. ... 信頼性は先ほど述べたように多義的な概念であるため,研究者 が任意の信頼性を用いて希薄化を修正しても,それが正確な推定値(真値同士の相関) ... read more

税理士試験 簿記論 講師日記 : 概念フレームワークの読み方(信頼性)

2011年2月14日 ... 信頼性の下位概念として、概念フレームワークでは、(1)中立性、(2)検証可能性、(3) 表現の忠実性をあげています。 さすがにこのあたりまでを視野に入れた出題はない気が します。 飛ばすのも何ですので、簡単に整理しておきましょう。 read more

Related Posts



0 コメント:

コメントを投稿