組み込みソフトがこの10年で変わったこと、変わらないこと山浦恒央の“くみこみ”な話(MONOist10周年特別寄稿)(1/3 ページ)

MONOist開設10周年に合わせて、MONOistで記事を執筆していただいている方々からの特別寄稿を掲載していきます。第1弾は、間もなく連載100回を迎える「“くみこみ”な話」を執筆していただいている山浦恒央氏の寄稿です。

» 2017年08月09日 11時00分 公開

はじめに

 まず、MONOistの10周年、おめでとうございます。定期刊行物は、MONOistのようなWebメディアだけでなく、書店売りの月刊雑誌であっても、短いと半年で潰れ、廃刊となります※1)。長きに渡って読者から支持されるWebメディアを作ってきたMONOist関係者の皆さまにあらためて心から祝意を表したいと思います。

雑誌 ※写真はイメージです

※1)筆者は、ソフトウェア開発系以外に、ペンネームでワイン系の原稿も書いています。1999年に平凡社の「VIOLA」という女性向け月刊誌でシャンパン特集を組むことになり、原稿依頼を受けました。その時、編集者から、「書いていただいた原稿は第5号に掲載しますが、「VIOLA」はその号で最後になります。廃刊になることは、第2号の時に決まっていました」と悲しそうな顔で言われました(出版業界では、「廃刊」は体裁が悪いので、表向きは「休刊」になります)。その時の会話と編集者の表情は今でも鮮明に覚えていて、脳内再生できます。

 紙媒体にせよ、電子媒体にせよ、10年も出版が続くのは偉業です。特に、激動の組み込み系の業界誌では、時代の流れや読者のニーズをキチンと把握するだけでなく(ソフトウェア開発の場合、要求仕様定義に相当します)、出版社や社員が抱える課題や問題を解決せねばなりません(こちらは、プロジェクト管理ですね)。MONOistが10周年を迎えることは、10年かけた巨大ソフトウェアの開発プロジェクトが完成したのと同じぐらい素晴らしいことだと思います。本当に、おめでとうございます。

1.10年で劇的に変わったこと

 MONOistの創刊年である2007年は、世界の組み込み系製品史を象徴する大きな出来事がありました。同年1月19日にデビューした「iPhone」です。IBMに押されて、倒産の危機にあったアップル(Apple)は(筆者自身、アップルは、ワング・ラボラトリーズ(Wang Laboratories)、DEC(Digital Equipment Corporation)、アポロコンピュータ(Apollo Computer)同様、倒産、あるいは、他社に吸収されることは時間の問題と思っていました)、「iMac」「iPod」を発表して持ち直し、ついに、iPhoneで完全復活どころか、組み込み業界を完全に制覇したのです。

 10年前の携帯電話機は、音声通話とテキストの送受信が可能な「持ち運びができる電話(いわゆるガラケー)」でしたが、iPhoneの登場により、「ネットワークにつながった持ち運び可能なコンピュータ」となったのです。

 1969年、アメリカが「アポロ11号」を打ちあげ、月面に人が立つ偉業を成し遂げました。その時に使用した超大型コンピュータ(月面着陸時に、演算性能不足によってオーバーフローが起きたそうです)よりも圧倒的に高性能のコンピュータが手の平に乗るくらい小さくなり、中学生のお年玉で買えるようになったのです。しかも、ネットワークにつながっています。ネットワークにつながっていないコンピュータは、単なる「スタンドアロンの高速演算機械」。「1つの点」に過ぎませんが、相互に通信することで3次元に膨らみ、世界中の携帯電話機やコンピュータがつながり、1つの巨大な「データベース」、あるいは、「ファイルシステム」を作るようになりました。

 「ネットワークでつながっている」ことは非常に重要で、Webサイトが急速に整備されたことにより、あらゆる情報にiPhoneから瞬時にアクセス可能になりました(グーグル(Google)が携帯電話機専用の検索エンジンを提供したのも2007年です)。自分のポケットに、日本最大の蔵書を誇る国立国会図書館や、世界最大の展示物を所蔵するスミソニアン博物館が入っているのです。この「知恵のネットワーク」は人類の生活を大きく変えました。元祖三大発明が「火薬、羅針盤、活版印刷」なら、iPhoneは新三大発明の1つになると思います。

 iPhone上で動作するアプリケーションプログラムが大量に開発され、「アプリケーションの開発」という1つの産業を作りました。これは、「ヘンリー・フォードが自動車だけでなく自動車産業を作り、ロバート・モンダヴィがワインだけでなく、カリフォルニアのワイン産業を作った」のと同じぐらい画期的なことだと思っています。

 余談ながら、iPhoneは朝晩の通勤の状況も大きく変えました。10年前の通勤電車では、サラリーマンは日経新聞(当時は、第1次安倍内閣で、防衛大臣が現在東京都知事の小池百合子氏でした)やデーリースポーツ紙、あるいは、「ねじまき鳥クロニクル」や「のだめカンタービレ」から週刊誌に至るまで、紙媒体の活字を読んでいましたが、今では(いい悪いは別にして)、全員、下を向いて静かに携帯電話機をいじっています。

2.現代の組み込み系プログラマーが直面している課題

 iPhoneに代表される組み込み製品の爆発的な普及により、3000万行を越える超大型プログラムを短期間で開発しなければならなくなりました。しかも、携帯電話機で採用しているリアルタイムOSは、古き良き時代のバッチ処理と異なり、後で生成されたプロセスでも優先順位が高いと、先行プロセスを追い抜いてCPU時間を総取りします(例えば、YouTubeで映像データを見ている最中にメールが着信すると、メールの受信処理の方が優先度は高く、さらに、そのメールを受信中に音声通話が届くと、音声通話処理の優先度が最も高くなります)。

 これは、従来ならOSが実施していたプロセスのスケジューリングを、アプリケーションプログラム側(すなわち、iPhoneを開発するプログラマー)が処理せねばならず、開発の複雑度は急激に上がります。いろいろな場合を想定してテストするのは非常に大変です。

 ビジネス戦略上、小さくて安価な組み込み系製品を大量に販売するには、販売のタイミングが非常に重要です。例えば、冬のボーナス商戦に間に合わないと販売台数は10分の1以下になるでしょう。これは、開発スケジュールが非常にタイトであることを示しています。

 販売台数が多いことは、品質にも直結します。バグの発生確率が1万分の1とすると、1台10億円のスーパーコンピュータが100台ある状況では、バグは1日に100分の1個でほぼゼロですが、販売総額が同じでも、1台10万円の携帯電話機が100万台ある状態では、バグは1日に100個も出ます。大量に販売するということは、非常に高い品質レベルを求められるのです。

 つまり、組み込み系技術者は、10年前に比べて、非常に複雑な処理をする超大規模プログラムをスケジュール通り(=短期間で)に開発し、超高品質に仕上げなければならなくなったのです。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.