Part1:バグって何?

穂乃果「で、これから穂乃果たちのやることって、バグを見つけることなんだよね?」
花陽「でも・・・この前挙げたような動きは明らかに駄目なのだったけど、バグなのか仕様なのか、よくわからないのもあったよね」
穂乃果「むむむ・・・私たちにはバグに見えても、にこちゃんや海未ちゃんたちから見れば仕様だったりするのか・・・」
花陽「バグって何か、考えると哲学的だよね・・・」
穂乃果「バグであると同時に仕様でもある・・・シュレーディンガーの凛ちゃん・・・むむむ」
花陽「り、凛ちゃんを殺さないでぇ!」
ことり「そこはね、ちゃんと言葉の定義があるの」
穂乃果「おおっ、さすがはことりちゃん!どんなの?」
ことり「まあ、バグか仕様かの論争は収められないんだけど、これから勉強していくことの基礎になると思うから・・・」


ことり「えへん。というわけで今日はことり先生がレクチャーしちゃいますよ~」
ほのぱな「わー、ぱちぱち」

ことり「ことりたちが普段バグの一言で片付けている現象は、実は4つに分類されるの。エラー、欠陥、故障、インシデント」
花陽「なんか、似たような言葉に聞こえるけど・・・」
ことり「これはね、ISTQBっていうソフトウェアテストの国際組織が定義してる用語がベース。どれも実際よく似てるから、ここからの説明は気を付けて聞いてね」

ことり「最初はエラー。『誤った結果を生み出す人間の行為』なんだって。にこちゃんが閏年忘れてたのはエラーだね」
花陽「そっか、システムの動きがおかしくなるのって、誰かがどこかで間違えたからだもんね」

ことり「次は欠陥。これは『要求された機能をコンポーネントまたはシステムに果たせなくする、コンポーネントまたはシステム中の不備』って定義されてるの」
穂乃果「う・・・なんか難しい」
ことり「まあ、エラーの結果ってとこかな。にこちゃんが閏年を忘れた結果、閏年を処理するコードが実装されなかった。これが欠陥。厳密な意味では、バグっていうのはこの欠陥のことなの」
花陽「エラーと欠陥は対になってると思えばいいんだね」
ことり「今後、バグって言ったらこの欠陥を指すことにするね」

ことり「それから故障。これは『コンポーネントやシステムが、期待した機能、サービス、結果を提供できないこと』。欠陥が顕在化しちゃうと故障になる、ってとこかな」
穂乃果「欠陥のあるシステムに、穂乃果が閏日を入力したから故障が起きた、ってことだねっ!」
ことり「そうそう、そんな感じ♪」

ことり「最後はインシデント。これはね、テストするときに、ここはこう動くべき、っていうのがあるよね。実際にテストしてみて、その期待動作と違ったら、それがインシデント」
花陽「それって、えーと・・・故障じゃないの?」
ことり「故障のことも多いけど、期待動作が間違ってたりとか、テストの仕方が間違ってたりとかして、実際には故障じゃないこともあるんだ」
穂乃果「そっか、テストが間違えてることもあるんだ」
ことり「もし穂乃果ちゃんが、2001年2月29日を処理できないからおかしいって言ったら・・・それはテストの間違いだよね。2001年は閏年じゃないから、むしろ処理できちゃったらおかしいし」
花陽「まあ、だとしても内部エラーはないよね・・・」

穂乃果「じゃあ穂乃果たちのやることは、この欠陥を見つけ出していくことなんだねっ!」
ことり「うん。そのためにテストをして、インシデントから故障を選び出して、故障の原因になる欠陥を見つけていくんだよ♪」
花陽「まだ最初の一歩だけど、頑張ります・・・!」
穂乃果「そうそう、それで二歩目はしっかりと三歩目は大胆に!」
ことり「おそれず!」
花陽「行けそうな!」
3人「予感でDANCE!!」


LINEで送る
Pocket


返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です