2月24日に個人のブログに投稿した内容をこちらにも転載します。
海の向こうでトヨタのリコール問題がえらいことになってますが、我々組込みエンジニアにとったら他人事で済まされない問題なんです。
ちょっと長文になりますが、私が思ってる事をずらずらと書きたいと思います。
まずは組込みソフトの背景から。
昔からのメーカーっつうのはハードありきで商売が成り立ってます。
ソフトはあくまでもハードを動かすためのオマケ。確かに最初はそうでした。
20年ぐらい前に電化製品に「マイコンなになに」とうたいだした頃、初めて組込みのソフトウェアというのができました。その頃は確かにハードのオマケ。
ハード屋さんがついでにソフトも書いてた時代です。ハードの事もわかってるから「ここはハードにやらせるべき」とか判断できたし、「ここはソフトにしたほうが柔軟にできる」とかとか。上手い具合にハードとソフトが協調してた時代です。ただしソフトはあくまでもハードのオマケだから、ソフトだけ書いてお金くださいなんてなかなか言えない時代でもありました。
その後、マイコンの価格も下がり、使えるメモリは増えるし速くなるし、なんでもかんでもマイコンで!っていう大マイコンバブル到来です。
ソフト無しの電化製品ありえないぐらいになってきました。
ところが、大きなメーカーさんにとったら相変わらずソフトはハードのオマケだったみたい。
ハードは物があるからお金の計算しやすいんですよ。材費これだけかかって、基板つくるのにいくら、設計にいくら、筐体がいくらって。
これがソフトになるといきなりグレーな世界。
3ヶ月とか6ヶ月とか作業して、必要な納品物はCD1枚。これで500万ください!言っても大手メーカーさんはウンと言わないんです。
だからってわけでもないけど、わざわざソースをプリントしたものを一緒につけたり、設計書は内容よりも量重視で「最低100ページ」とかとか。とにかく金額に見合うだけの重さが必要なんですね。
断言します。紙で納品したソースを読んでるやつなんて居ませんから!!
バブリーな時代はこれでもまあなんとか時給に見合うだけの報酬がもらえたから良かったんです。
それでも、マイコン依存は着実に進んでまして、ソフトに求められる機能は膨大になってきました。もはや一人で全部を見渡して書くなんて無理。
そうなると必然的に分業化。レイヤー分けて「俺はOS、おまえはドライバ、おまえはアプリ」ってね。まあそれでもまだチーム内にハードまわりが詳しい奴が居てなんとかなってた時代です。
そうなると、今度はソフトの開発メンバーが多くなってきました。
上層部の人達は、ただでさえオマケと思われてた部分に更にお金をかけるってえのが納得できないんでしょうね。真っ先にコスト削減の槍玉にあげられたのがソフト部隊です。
ソフトの量は増え続けるのにソフトにかける費用は増やさない。そんな状態です。
そうなると、今度はソフト屋も考えました。「誰でも簡単にソフトが書ければ、安い労働力が使えるのでは!」と。分業化は更に進み、自分の担当以外はブラックボックス。過去の動作がはっきりしないソースも使いまわし。。フレームワークが進化してなんだかわかんないけど動いてるみたい。な状態に。
ほんとアプリ層担当の方とかすげー労働時間なのにすげー安い賃金でかわいそうですよ。
まあ私の場合はハードに近い部分やってたので、さすがにココを手を抜くとヤバイんで他のとこより高い単価をもらえてましたけど。
そして、ここ数年の不景気でこれが加速。もう大手メーカ上層部にとったらソフト屋は使い捨て。値切って値切ってとにかく安いとこを使うんです。こうなるともうわけわかりません。中国人やインド人が書いたソースを信用できますか?コメント文字化けですよ。ドキュメントありませんよ。
もうね、組込みソフトの品質って最悪状態です。でもとりあえず動いてるからいいんだそうです。これ偶然動いてるだけなのにね。
現場のエンジニアはみんなこの状態を把握してますよ。
危機感を持って「品質改善コンサルティング」とか「評価試験の徹底化」とかをやろうとしてるとこもありますけど、結局予算がとれなくて。。そりゃそうですよ。ただでさえオマケだと思ってるソフトのコンサルに更にお金を出そうなんて思う経営者はいないんです。
というわけで大手メーカの上層部連中は誰も現状を把握してないんです。
トヨタが言いました「電子制御には不具合ありません!」って。きっと豊田社長は本気でそう思ってるんだろうな。
「不具合ありません」ってありえないんですよ。現在の組込みソフトの構造、開発環境(期間や費用)考えたら不具合がないソフトなんて不可能なんです。
信用なくす前に(既に無くなってますが)瑕疵を認めて対応した方が良いと思いますよ。
まあ、きっと、現場エンジニアはいまごろ血眼になってバグ取りしてるんでしょうね(笑
(^^;;笑えない)
私が言いたいのは、もっと組込みソフトを重要視してほしい。もっとお金と時間をかけていいものを作って欲しい。いいものを作る環境を用意して欲しいんです。
尻拭いで何百億ものお金をかけるんだったら、作るときにもっと時間とお金をかけていいものを作りましょうよ。
以上、組込みソフトウェアエンジニアの愚痴でした。