料理三昧の週末
Why Software Quality Stinks

ソフトウェアの品質は本当に悪いのか

今日は課題提起だけです。

いま私が読んでいる本」でも書いた通り、ソフトウェア産業の今後を予想する上で、製品開発や組織のあり方はどうなっていくんだろう、課題は何なんだろう、と、ぼんやり考えていました。製品の品質を改善するうえで、自動車産業に学べ、という議論を私自身もMake Software More Reliableというエントリで紹介したことがあり、日本でもけっこう話題になっているみたいなのですが、

そもそも、ソフトウェアの品質は本当に悪いのか?

について、少し考えてみたいと思っています。

今の時点で、私は、「いいのか、悪いのか、どの程度なのか、まだ業界として把握できていないので何とも言えないのではないか」という仮説を持っています。

ソフトウェアと自動車の比較において、MS製品の凄腕エンジニア黄昏さんという友人が、「自動車産業におけるJAFの存在」というGood Point を指摘しています。ここでは、自動車という製品が、究極的には「道路を走って、曲がって、止まる」という機能しかないということと対比させるには「ソフトウェア」と漠然と語るだけでは意味がないので、「パソコン(プリインストールのOSとパソコンのハードベンダが付加した機能・ソフトが入った状態)」との比較で考えてみたいと思います。

「JAFの存在」の意味をもう少し噛み砕くと、


  • 「自動車」という製品を構成する部品は「サプライヤ間の高度な摺り合わせが必要」と言われるが、完成品になってしまえば、何が問題なのか第三者でも切り分けが可能 → 使われる部品の種類と、各部品が果たす機能(インプットとアウトプット)が業界全体で標準化され、共有されている
  • トラブルシューティングや修理といったメンテナンス業務自体が商売として成立している

ということなのではないかと思います。また、(日本はどうか知りませんが少なくともアメリカでは)自動車事故は人命に関わるため、製造物責任の規制が厳しく、リコールや死亡事故の情報は公開を義務付けられることになりました(TREAD Act)。どの会社の自動車が、どういう事故を起こしたのか、それはどの部品が原因だったのか(OEM等の場合、自社の製品で直接事故を起こしたことがなくても、モノとして同じ部品を使っている他社製品が事故を起こした場合も報告の義務がある)会社として、業界としてデータが共有化されているというのは、品質を改善する上で重要なベンチマークになるでしょう。

それに対して、ソフトウェアはどうか? というと、業界全体としての品質の測定・統計というのは、私の知っている限り、まだ取られていないように思います。

また、トラブルシューティングや修理に関してですが、JAFを呼んで「金を取るのか」と怒る人はいないと思うのですが、パソコンのケアに関して、お金を払おうという意識はユーザー側にはないようです。(参考:日本パーソナルコンピュータソフトウェア協会による「エンドユーザの有償パソコンサポートに対する意識調査」)

サポートできる技術者が足りないというのは、「儲からないから」というのがベンダの本音なのかもしれないと思いました。JAF含め、自動車のアフターマーケットの規模がどれぐらいなのか、今手元にデータがないので検証はできていませんが。

エンタープライズ向けのビジネスアプリケーション、特にメインフレームのソフトウェアであれば、メンテナンスが大きなビジネスになるので、ベンダは保守ができる技術者を囲い込むし、顧客も半ば仕方なく高いお金を払い続けてきたというのがこれまでのIT業界の構図ですが、「所謂パソコン」に関しては、これまではあまりクリティカルユースされていなかった、言い換えれば、半分オモチャとして位置づけられていたのではないでしょうか。

他には、プロダクトライフサイクルが短すぎて保守運用で十分な儲けを出してる暇がない、というのも理由に挙げられるかもしれません。某社のパソコンのマーケティングを担当している友人が「家電の類は新製品が出るのが年1度なので忙しい時期はある程度決まっているが、パソコンは3ヶ月に一度なので、年中忙しい」とぼやいていたのを思い出しました。

「イノベーションのジレンマ」ではないですが、パソコンの性能が消費者の要求を上回って、スペックだけで新製品がガンガン売れる時代が終わったら(ホントに終わる時が来るのか、確証はないです。これもそのうち少し検証してみたい)、パソコンも、アフターマーケットが重視されるようになり、保守エンジニアの層も厚くなるのかな、と、今は思っています。

ちなみに、「自動車とソフトウェア」って最近けっこう流行りなのか、AlwaysOnでもMorris Pannerという人が"The Wal-Mart of Software"という記事でオープンソースの潮流と絡めて、

Companies will devote every dollar to writing the best code. Open source, with its zero cost advantage—imagine building a car with free steel—will become a crucial competitive weapon.

などと語っており、アメリカのIT業界人はオープンソース礼賛派が多いのだろうか?(たまたま私の読んでる記事が偏ってるんだろうか)

高炉の制御システムとか、原子力発電所の制御システムをLinuxプラットフォームでやってます、なんて言われたらあたしゃ背筋が凍るね。

という我が夫の意見(オープンアーキテクチャ化のパラダイムシフトは自動車産業に訪れるのかコメントより)に同感してしまう私はやっぱり日本人、ということなのでしょうか。

「皆が良いと言うものは良い」ではないですが、Webサービスなんかが、信頼性とかがRatingされて、それを参照できる仕組みになればある程度品質は担保されるのでしょうか。

でも、品質の良いモノをそこまで作ろうとするモチベーションは、どういう人に・どういう場合に働くのか、オープンソースで開発できるものが、どのぐらいビジネスに役に立つのかどうかは、イマイチ確証がありません。

Comments

伴大作

ども、始めまして。

コンサルタントやっています。
車載用コンピュータ大変ですね。開発費の
相当な部分を占めているとは聞いていましたが、
そんなウエートを占めるようになったとは
驚きです。

確か、トヨタはアイシンとデンソーで開発させている
筈ですが、
(日産は日立系のルネッサステクノロジーですかね、
32ビットかでNECが力を入れているとの話もあります。)

ヨーロッパ車はボッシュとシーメンスですか?

この世界も覇権争いが激しくなっているようですね。

技術のことですが、
http://www.kumikomi.net/article/explanation/2005/03osek/01.html
にかなり詳しく載っています。

一方覇権争いは
http://www.randdmanagement.com/c_defact/de_042.htm
です。
米国ではITS用の5.8Ghz開放が決定されたので、今後は
こちらででも覇権争いが勃発しそうですね。

Tomomi

伴さん、貴重な情報へのポインタ、どうもありがとうございました。
(ホームページも拝見しました。光栄です!)

テレマティクス、以前から興味はあったのですが、どうもやはり「車は車、ITはIT」という頭があったものですから、とても興味深かったです。
車自体がこれだけソフトウェア化していてネットワークを活用しているとなると、ますます「モジュール化」思想が必要になりそうですね。
また、日本はどうも「標準化」世界でのルール作りは得意でないイメージがあるのですが、せめて自動車業界は標準化でも頑張って欲しいです!

The comments to this entry are closed.