Personal tools
You are here: Home ブログ 井上 ソフトウェアインスペクションの試行
« December 2010 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Recent entries
Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23
Herokuの発音 inoue 2010-12-20
雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18
IPA未踏のニュース inoue 2010-12-15
労基法とチキンゲーム inoue 2010-12-06
フロントエンドエンジニア inoue 2010-12-03
ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25
技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24
雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22
RESTの当惑 inoue 2010-11-22
「プログラマのためのUXチートシート」を作りました inoue 2010-11-19
「ビューティフルコード」を読みました inoue 2010-11-16
Categories
カテゴリなし
 
Document Actions

ソフトウェアインスペクションの試行

基本的に、本に書いてあることはあまり信用しません。特に、ソフトウェアの開発手法に関することは信用しません。

マイクロソフトでうまくいった開発手法と聞けば、少し信用度は上がります。なぜなら、マイクロソフトは腐ってもマイクロソフトで、批判する人も多いですが、マイクロソフトの作るソフトウェアは相対的に良くできているからです。 IBMでうまくいった開発手法と聞くと、ほとんど信用しません。なぜなら、IBMの作るソフトウェアはほとんど腐っているからです。

ただ、信用するかどうかと、試してみるかは別の話です。そもそもほとんど最初は信用しないので、信用するものしか試さないとしたら、試すものがほぼゼロになります。

ソフトウェア(コード)インスペクションは、ものの本によれば、欠陥(バグ)の8割を検出できるとあります。8割という数字は、IBMの最初の論文の数字だけ独り歩きしている気がします。こんな数字は条件次第でいくらでも変わります。例えば、初心者がCで書いたコードなら、コードを見ただけで、かなりの数のバグを見つける自信があります。一方、上級者の書いたJavaのコードだと、コードを見ただけでバグを見つけられるか自信がありません。要は、IBMにいるぐらいヘボなプログラマがコードを書いて、IBMにいるぐらい優秀な人がレビューすれば、バグもいっぱい見つかる理屈です。

IBMの最初の論文:

論文からいくつか引用(日本語は井上のコメント):

A piece of the design of a large operating system component (all done in structured programming) was selected as a study sample (これだけでは何作ったかは不明)

the design was submitted for coding in PL/S (PL/SはPL/Iの派生らしい...)

Three programmers designed it, and it was coded by 13 programmers

An important aspect to consider in any production experiment involving human beings is the Hawthorne Effect. (ホーソン効果に言及しているのは、流石IBM)

an application program of eight modules was written in COBOL (システムプログラムの対比としてのアプリケーション。やはりCOBOL...)

The program size was 4,439 Non-Commentary Source Statements (約4500行。ぬるい)

The inspections were obviously very thorough when judged by the inspection error detection efficiency of 82 percent (たぶん、これが8割の根拠)

全体的に、いくらなんでも、色々と古すぎます。

参考サイト(日本語):

文句ばかり書いていますが、ソフトウェアインスペクションを試す予定です。面白い成果が得られれば、ここで発表します。

試行錯誤の中で良い手法を確立しようと考えています。今のところ、以下のことをやる予定です。基本的にスモールスタートです。欲張って続かないより、ささやかでも継続、が重要だと思っているからです。

  • 少人数で定期的に開催
  • 事前に作成者に知らせる(突然なので準備していない、という言い訳を防ぐため)
  • 指摘した問題を記録にとる
  • 「チェックリスト」は状況を見て徐々に作成
  • 5分で解決できない問題はペンディングリストに記入
The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/software-inspection/tbping

Re:ソフトウェアインスペクションの試行

Posted by horii at 2008-03-31 21:51
>IBMでうまくいった開発手法と聞くと、ほとんど信用しません。なぜなら、IBMの作るソフトウェアはほとんど腐っているからです。

WebSphereApplicationServerに関しては同意見です。
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.