DX(デジタルトランスフォーメーション)で後れを取る日本企業。デジタル化そのものへの対応も遅く「デジタル敗戦」ともいわれる状況に陥っている。DXでの成果が求められる今こそ、デジタル敗戦の要因を理解した上で「ソフトウェアファースト」、つまり「ソフトウェアの手の内化」に取り組む必要がある。連載第2回は「製造業の開発工程に対する間違った信奉」の問題点と打開策について、『ソフトウェアファースト第2版 あらゆるビジネスを一変させる最強戦略』(及川卓也著)より抜粋してお届けする。
製造業では、製造と販売の活動が分離される「製販分離」のモデルが広く採用されています。これにより、製造部門は製品の品質と効率の最適化に集中でき、販売部門は市場のニーズに応じた戦略を展開することが可能になっています。
一方、ソフトウェアの世界では、工場で図面を基にモノを製造する工程(プロセス)がありません。その結果、製造業でいう「製造」と「販売」の段階が省略され、代わりに安定的にサービスを提供する「運用」が重要な役割を担います。この運用段階で得た知見は、企画や設計、開発にフィードバックされ、継続的な改善に生かされます。ソフトウェア開発のライフサイクルは、ソフトウェアが持つ柔軟性と迅速なアップデートの可能性を前提に構築されているのです。
ソフトウェアの開発プロセスとしてよく知られるウォーターフォールモデルは、製造業の工程管理を模範としています。要件定義、設計、実装、テストという段階を順に進めることで、プロジェクト管理の精度を高め、一定の品質を担保しています。この手法はIT業界で長年用いられており、必ずしも悪いものではありません。製造業のように手戻りが許されない開発には有効です。しかし、このアプローチは、途中で仕様が変更しにくく、完成までに時間がかかることから、開発が完了した時点で顧客のニーズに合わないプロダクトが完成してしまうリスクをはらんでいました。この問題を解決するためにアジャイル開発が生まれ、広く普及しました。
アジャイル開発は、短いサイクルで頻繁にプロダクトを作り、顧客のフィードバックを元に改善を繰り返す手法です。このプロセスは、言うならば、以前は避けていた「手戻り」を積極的に取り入れ、開発初期から反復して顧客の要求に応える設計変更を行います。これにより、顧客が本当に必要とする機能を持つプロダクトを効率的に開発することが可能になります。
このアジャイル開発では、顧客の実際の使用環境でプロダクトを検証することを重視し、顧客のニーズにそぐわないモノを作り続けるリスクを低減します。このアプローチでは、「手戻り」を避けるのではなく、制御下に置いて活用することで、プロダクトの品質と顧客満足度を高めていくのです。
ですから、製造業の製販分離をソフトウェア開発にも当てはめようとするのは間違いです。ソフトウェア開発では、開発を進めていく中で設計の見直しが必要になることがしばしばあります。設計と開発は表裏一体の関係にあるため、これらの工程を切り離して考えることは適切ではありません。
特に日本企業では、ソフトウェアの開発(実装)を、若手が経験を積むための場と見なす傾向があり、「田中君は3年ほど開発したから、そろそろ設計に移そう」といったキャリアパスが見られます。これも、設計と開発を分離する要因になります。要は、ソフトウェア技術の進化は速く、若手の頃に3年開発を経験して以来ずっと設計を担当するとなると、時代にそぐわない設計となってしまうリスクがあるのです。開発された時点ですでに技術的負債となることも少なくありません。
ソフトウェア開発では、設計と開発を一体として捉え、「行きつ戻りつしながら」進めることが求められます。このアプローチにより、現実の技術変化と市場のニーズに即した柔軟な対応が可能になり、より適切な製品開発が行えるようになるのです。
製造業を中途半端に模範にすることの弊害
このように、製造業を模範としたためにソフトウェアの正しい理解が阻害されたと同時に、製造業を中途半端に模範にすることの弊害もあります。
日本の製造業が強かった時代、日本企業は先行国における製品の「設計パターン」をしばしば参考にし、その後の製造プロセスでの差別化を通じて競争力を確立していきました。また、一時期の日本は、「安価な労働力を提供する世界の工場」としての役割を果たし、これが今の日本企業のソフトウェアに対する考え方にも大きな影響を与えています。しかし、日本の製造業が競争力を維持していたのは、単に製品をうまく複製する技術や安価な労働力に依存していたからではありません。
にもかかわらず、多くのソフトウェア開発は単に「世界の工場」としてのやり方を真似ているに過ぎず、「調達」や「開発委託」における徹底したこだわりを踏襲していません。この点が、なぜ日本企業が革新的なソフトウェアビジネスを生み出せないのかという問いの答えの1つであると私は考えています。
例えば、製造業は部品の調達に対して非常に厳格な基準を持っています。調達先がどこでも良いわけではなく、グローバル企業が現地生産を行う場合は、グローバルで調達しなければならないという難しい命題があります。それでも、自ら調達先を探し、常に品質に気を配っています。もし、品質に問題があった場合は、自らが現場を訪れ指導することも珍しくありません。実際の現場を見るのは当たり前であり、問題が続く場合は別の調達先に変更したり、自らが開発・生産することもあります。こうした徹底した品質管理と自律的な調達の取り組みが、製造業の強みとなっているのです。
実際、私の経験上、ソフトウェア開発の要点を説明しても納得してもらえない場合、製造業の開発プロセスに例えて説明すると理解してもらえることが多いのです。
つまり、日本の製造業が世界を席巻した成功体験の一部分だけをソフトウェア開発に持ち込むのではなく、包括的に成功のエッセンスを学び、その上でソフトウェアならではの価値の高め方を実践していくやり方が問われるのです。

及川卓也著、日経BP、2420円(税込み)


