« 継承→Aspect→DI へプログラミング言語は進化している | トップページ | テスト・ビルドプロセスの重要性 »

2005/01/31

MSはCMMに取り組む必要なし

 とある勉強会MLで「ソフトウエア企業の競争戦略」の話が出た折、著者クスマノ氏が「MSはビジネス上CMMに取り組む必要はない」という指摘を昨年の講演で話したらしい。
 うーむ、すごすぎ(^^)

 どんな文脈でそんな話があったのか知らないが、インパクトがある。
 僕の少ない経験では、日本のソフト会社でCMMに取り組んでいるとしたら、それは製造業のISO等の品質管理のソフトウェア版に相当する。その作業はドキュメントが非常に多すぎて、普通の業務にも支障が出るぐらいなのに、やらざるを得ない。
 CMMでレベル5を取ったからと言って、それでビジネスの利益に結びつくのか、と言われると、心もとない所は確かにある。

 CMMのようなプロセスはウォーターフォール型開発に近い。しかし、今のソフト開発の流れは、繰り返し型開発プロセスが主流。
 重要な点は、ウォーターフォール型開発では、設計や実装を重視してテストを軽視するが、繰り返し型開発プロセスでは、ビルドやテストの方を重視していることだと考える。

 「ソフトウエア企業の競争戦略」感想文が載っているここのBlogでは、下記の問いが投げられている。

「Windows開発プロジェクトチームのうち、最も強い「権力」を持っていた
のはどれか?

  1.プログラマ
  2.テスタ
  3.ビルダ

 僕は「テスタ」だと思っていたが、実は「ビルダ」だった。
 ビルドって、1日の最後に夜間バッチで働いてくれるぐらいしか思いつかないし、ビルド担当者は新人SEが任せられる時が多いけれど、実は一番重要なんだよね。

 最近、「構成管理」という言葉が流行しているけれど、その概念は「ビルド」プロセスに密接に絡んでいる。
 なのに、構成管理の概念はCMMなどのプロセス管理の本でよく出るのに、ビルドプロセスとの関連を説明している本は少ないらしい。

 日本人は品質管理にうるさい面はある。その特徴が製造業では有利に働くが、IT産業では実は優位性がそれほどないのだろう。少なくとも、日本のどのソフト会社よりもMSの方がITビジネスで成功しているし。
 ソフトウェア開発のプロセスはもっと研究する余地があるように思う。

|

« 継承→Aspect→DI へプログラミング言語は進化している | トップページ | テスト・ビルドプロセスの重要性 »

日記・コラム・つぶやき」カテゴリの記事

プロジェクトマネジメント」カテゴリの記事

コメント

どもっ。『著者クスマノ氏が「M$はビジネス上CMMに取り組む必要はない」という指摘』はSPES2004でも語ってましたよ。どうしてそういうことになったかは、またご説明します(^-^;分科会のMLでも投げてくださいませ。ははは。
『ウォーターフォール型開発では、設計や実装を重視してテストを軽視するが、繰り返し型開発プロセスでは、ビルドやテストの方を重視していることだ』という点もいろいろな視点で考えると面白いですね。このあたりもゆっくり議論できるといいですね。
ということで、分科会早めにやります!すんません。
ではでは。

投稿: なおまる | 2005/01/31 22:56

素早い反応ありがとうございます!
昨日のSEA関西の勉強会で上記の本が話題となり、「M$はビジネス上CMMに取り組む必要はない」話を初めて聞いて今日1日中気になってます(^^)
誰か解説して欲しいです(m_m)
個人的にはCMMよりもアジャイルがいい!と思っているのですが。。。
CMMI分科会の復活は首を長くしてお待ちしております(^^)

投稿: あきぴー | 2005/01/31 23:05

引用ありがとうございます。

トヨタの工場では「製品として問題あり」の場合、作業者がラインを止められるぐらいの権限が与えられています。ビルダも一緒ですね。↓が守られない場合は、プログラマを帰宅させないぐらいの権限をもっているようです(言い換えると、↓を守っていれば、何をやってもOK)

 (1)チェックインタイムを厳守させる
 (2)ビルドを通った「製品」が問題なく動作する

コードのカイゼン・デバッグ・リファクタリングは一流プログラマに一任。変更依頼はどんどんやってくる。全体として(製品として)売れる程度の品質は保ちたい。しかし、最も重視するべきは開発スピード…という条件を見事に満たしたやり方だと思います。

投稿: Dain | 2005/02/01 13:06

コメントありがとうございます。Dainさんの感想文は何度も参考にさせてもらっています。
最近のシステム開発の流れとして、テストやビルドに着目した考え方が多いように感じます。だからアジャイルプロセスが流行しているのかな、と。「最も重視するべきは開発スピード」はまさに「変化を抱擁せよ」ですよね。
ビルドプロセスはもう少し調査して、Blogで考えをまとめたいと思います。

投稿: あきぴー | 2005/02/01 21:32

今日メールでお返事する暇がなかったので、こっちで。明日も暇がないかも(T-T)
(あ、そうそうメールのやり取りSEAに戻しましょうか?資料は添付できないですが)

で、上にも書かれていましたが「日本のソフト会社でCMMに取り組んでいるとしたら、それは製造業のISO等の品質管理のソフトウェア版に相当する。」ということですが、CMMとISO9001などは、似ているようでちょっと違います(^-^;
これを同じとり方で進めて、失敗している企業はたくさんあります。
CMM/CMMIは品質を保証するものではないです。
あくまでも、プロセスのモデルです。うまく活用すればQCD全体に効果はありますが、一言も「これをやれば大成功!」ということは書かれておりませんし、品質の保証もしてくれません。
なので、M$がCMMを気にしてなくても言い訳ですよ。自分たちの企業が、自分たちがビジネスとして成功させるためのプロセスモデルを持っていれば、問題なしです!
CMMに取り組んでないから品質を確保できないっていうのはつながらないのです。逆にレベル1でもQCDのQは完璧!も可能といえば可能です。
CMM/CMMIはISOと違って、監査ではないです。
アセスメント、アプレイザルは「一緒に改善しとくぅ?」です。
ということで、びっくりするほどではないのですよぉ。

投稿: なおまる | 2005/02/03 22:49

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: MSはCMMに取り組む必要なし:

» CMMと品質 [Meatlook Software]
最近、こんな本を読みました。ソフトウェア開発のためのプロジェクトマネジメント入門―CMM導入の手引きこの本はソフトウェアのオフシェア開発を主に行っているインドの企業 Infosysが実際に行っているソフトウェア開発のマネジメントプロセスを紹介した本です。InfosysはCMM...... [続きを読む]

受信: 2007/07/16 03:40

« 継承→Aspect→DI へプログラミング言語は進化している | トップページ | テスト・ビルドプロセスの重要性 »