「システム開発能力」の向上の鍵は、製造業が握っている。


数年ほど前に、ある記事を見た。

開発とテストの融合こそゴール。続、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?

バグは発見するよりも作り込まないことが重要で、品質のためにテスターを多く投入するというのは解決にならないとWhittaker氏。

Quality is a development issue, not a testing issue. To the extent that we are able to embed testing practice inside development, we have created a process that is hyper incremental where mistakes can be rolled back if any one increment turns out to be too buggy.

品質とは開発の問題であって、テストの問題ではない。これを推し進めて、私たちは開発の中にテストを組み込んでいる。ハイパーインクリメンタルなプロセスを作り、だれかがバグを組み込んでしまったらそれ以前の状態にまでロールバックできるのだ。

言っていることは尤もである。

品質というのは、テストのときには既に決定してしまっているので、テストでは品質は向上しない。

テストを強化しても、せいぜい、欠陥品でないものをお客さんに納品できるだけにすぎない。

 

プロジェクトマネジメントの世界標準、PMBOKガイドにおいても、それは明確に述べられている。

「検査よりも予防」

品質とは、計画され、設計され、プロジェクトのマネジメントやプロジェクトの成果物に組み込まれるものであり、検査によって実現されるものではない。

一般に、誤りを予防するためのコストは、検査により、または使用中に発見された誤りを是正するコストに比較すると、遥かに少ない。

 

だが、これらのことは、製造業においてはあまりにも常識である。

例えば、トヨタは「品質は上流で作り込む」という方針のもと、設計段階、製造の上流で徹底した品質の作り込みにより、後工程での歩留まりを高めているのは、当たり前すぎて誰も語らないほどである。

 

つまり、「先進的な品質管理をしている」とされるGoogleは、ようやくトヨタの「普通にやっている」レベルの品質管理を行っているにすぎない。

というよりも、製造業では常識となっているにも関わらず、システム開発においては「ごく一部の先進的企業だけが行っている」という管理があまりにも多いのである。

 

システム開発に於けるプロジェクトの失敗は、「デスマーチ」と呼ばれる。

そして、デスマーチの原因はプログラマーの技量に依る部分もあるが、マネジメントの失敗に依るもののほうが遥かに深刻である。

「作業が進まない」よりも「間違った作業を延々とやらせる」ほうがより深刻な事態であるからだ。

 

システム開発におけるマネジメントはまだまだ、製造業のそれの足元にも及ばない。

だから、逆に言えば手っ取り早くプロジェクトのレベルをあげるためには、製造業におけるマネジメントの方法論、QCや統計的手法を学ぶことだ。

 

実際、プログラマーの技量をインスタントにあげることはできないが、マネジメントの方法論は標準化できるがゆえに、効果が出るのも早い。

 

「システム開発能力」の向上の鍵は、製造業が握っている。

技術者たちは、一度は製造業に「留学」すべきだろう。

 

写真:astrid westvang


関連記事一覧

we love develop
アプリやシステムの開発を通じて、お客様のビジネスを成長させることが私たちのビジネスです。お気軽にお問い合わせください。
 お問い合せ

お電話でのお問い合わせはこちらから
TEL:03-5297-2871

メールマガジンの登録

キャパでは誰かに話したくなるようなIT小ネタを、週に一回メルマガで配信しています。
ぜひ購読してみませんか?
 購読する

ホワイトペーパーの入手

ITブログ月間20万PV達成!自社オウンドメディアの運用ノウハウを無料公開しています。
 ダウンロード

記事カテゴリ記事カテゴリ

月別投稿記事

PAGE TOP