- 井上 みやび子
- すぐ使える株式会社 代表取締役
- 東京都
- Webエンジニア
対象:システム開発・導入
- 清水 圭一
- (IT経営コンサルタント)
- 清水 圭一
- (IT経営コンサルタント)
システム発注をされる方など、技術者でない方向けに技術用語の解説を致します。
用語解説インデックス
(この回は恐る恐る書きます。)
バグとは
「バグ」とは、システムを作る時のミスが原因で作ったシステムが期待どおりに動かなかった時、そのミスした部分の事を呼ぶプログラム業界(?)用語です。(本来の英語では「虫」という意味です。)
ミスの内容は、設計をする時に考慮し忘れた条件がある、条件は揃っていたが考え方を間違えた、考えは素晴らしかったがプログラムを作る時にミスをした、など色々です。
バグが出たら(=エラーなどの期待しない動作がシステム開発時のミスが原因である事が分ったら)、緊急度に応じてシステム改修の対象項目とするのが普通です。
バグはなくならないのか
(これを書くのはちょっと緊張しますが)無くなりません。少なくとも作ったばかりのシステムについては。
システムを作るという作業は人が行うものです。人が行うものである限り、開発中に発揮できる個々のエンジニアの想像力と配慮には限界があります。優れた想像力と配慮する能力を持つエンジニアには相対的にバグの少ないシステムを作れる人もいますが、そのシステムのあらゆる使われ方を予め完璧にカバーできる能力を持つ人はいないでしょう。(世界は無限に多様です!)
お客様の目に触れる前にバグを減らす方法としては、なるべく多人数の手により多角的な検討、テストを行うという事です。
ここて、量とコストの問題が出てきます。1つの製品を量産して何万個、何十万個と売る場合にかけられつテストのコストと、ほぼオーダーメードであるシステム開発に掛けられるテストのコストでは、後者の方が割高です。量産型の工業製品に比べてシステムソフトウェアの不具合がお客様の目に触れやすいのは、そこそこ、ほどほどのコストでそこそこ、ほどほどのテストをしているためです。
完璧を求めない
「そこそこ、ほどほど」はそんなに悪い意味でもないのです。
門−玄関−部屋−金庫 と四重に鍵をかけるのか、玄関と部屋の鍵だけでいいやとするかは、守っている物の重要度や毎回鍵を掛ける手間、盗難のリスクなどのバランスを考慮して決めるべきでしょう。
Perl 開発 すぐ使える株式会社
このコラムに類似したコラム
Google Apps が必ずしも素晴らしくはない理由 井上 みやび子 - Webエンジニア(2013/07/10 08:00)
第213号:開発は面白い。皆さんも挑戦しよう! 小笠原 宏之 - ITコンサルタント(2010/11/17 09:57)
クラウドシステムの開発は難しい? 清水 圭一 - IT経営コンサルタント(2010/08/17 07:00)
中小企業向けクラウドシステム構築会社を選ぶポイント 清水 圭一 - IT経営コンサルタント(2010/08/05 07:00)
発注側の体制強化が、IT業界を変える!(1) 坂本 俊輔 - ITコンサルタント(2010/08/02 20:08)