program bug and bug: プログラムバグとバグ
上智大学 伊藤 潔
2006年1月11日
program
bug「プログラムバグ」とは,意図した通りにプログラムが振る舞わない,意味的な誤りです.
これは,プログラムのsyntax
error「構文エラー,文法エラー」とは異なります.プログラムの文法的な誤りは,プログラミング言語のコンパイラやインタプリタが検出します.
下記にも書きましたが,「プログラムバグ」は,@計算式の誤り,A式の中の変数の誤り,B代入先の変数の誤り,C判断条件の誤り,D分岐先の誤り,Eループのさせ方の誤り,F文や計算式の順序の誤り,など様々なものがあります.
伊藤,廣田,岡部,川端:情報システム技術の基礎,共立出版,
ISBN 4-320-12080-9,(2003).
以上のプログラムバグは,単なる書き誤りのレベルもあれば,プログラムが設計を満たしていない実装上のバグもあります.
ソフトウェアの開発工程を遡っていけば,設計が要求仕様を満たしていないという,設計上のバグもあります.発注者の意図を正しく把握できていないことから生ずる,要求分析上のバグもあります.
bug「バグ」の定義は次の通りです.
バグ=(発注者の意図通りに),(要求仕様の通りに) and/or (設計の通りに),
プログラムが振る舞わない.
and/orというのは,「条件の成立が,どれか1つだけの時もあれば,複数の時もある」ということを表します.
bugを見つけて直すことを,"debug", "bug fix"といいます.