いずれにせよ、ソフトウェア品質の観点から見ると、Apple にとって iOS 11 と macOS High Sierra のリリースは厳しい一年だったと言えるだろう。しかし、そこから学ぶべき教訓があり、Apple のリーダーシップが維持されることによってのみ完全に実行できる是正措置が存在する。
編集者注:WWDCが迫る中、Appleが新機能の追加を控え、OSの改良に注力するという噂が再び流れています。2017年末から2018年初頭にかけて得られた教訓は、改めて強調する価値があります。
わずか1ヶ月の間に、Appleは1つどころか複数のソフトウェアバグに見舞われました。その一つは、Appleにとってこれまでで最も深刻なセキュリティ関連の欠陥の一つでした。ユーザーが最高レベルの権限を持つルートアカウントを作成し、Appleの保護とセキュリティ対策のほとんどを回避できるというものでした。
ルート化バグの影響で、App Storeを通じて、そして自動的に、一連の重要なアップデートが配信されましたが、それぞれに欠陥がありました。12月2日にはiOS通知センターに新たな問題が発生し、土曜日の早朝にiOS 11.2が先行リリースされたようです。
もし Apple が実際にその時点でリリースを計画していたとしたら (ありそうにないが)、土曜日の朝のリリースは確かに Apple のソフトウェア リリース史上前例のないものであった。
AppleのCEOティム・クック氏や上級副社長クレイグ・フェデリギ氏の仮想首脳を皿に盛って差し出すよう求める社説やソーシャルメディアの騒ぎが始まっている。もしそうなれば、状況はさらに悪化するだけだ。
歴史的類似点
現代のハードウェアはかつてないほど複雑になっています。多くのシステムが相互に関連し、密接に結びついているため、ユーザーの十分な知識不足、システムの誤動作、ソフトウェアルーチンの不具合などが、甚大な影響を及ぼす可能性があります。
原子力潜水艦USSスレッシャーは、初出航時に同級艦の名称の由来となった。建造当時、世界最速かつ最静粛な潜水艦であり、当時最先端の兵器システムを備えていた。
不具合を解消するための最初の海上試運転の後、9ヶ月間の造船所稼働を経て、スレッシャー号は出航した。しかし、試験深度での航海後、乗組員全員が行方不明となった。
災害からの復旧・復興後、海軍は海水配管システムの接合部の破損が連鎖的な破損を引き起こし、艦艇の沈没につながったと判断しました。配管の接合部が不十分であり、品質保証試験では様々な理由から問題が発見されなかったのです。
当時の米海軍原子力プログラムの責任者は、依然として創始者であるハイマン・リッコーバー提督であった。
ハイマン・G・リックオーバー海軍中将とジョン・F・ケネディ大統領
「スレッシャーの喪失は、特定のろう付け、溶接、システム、あるいは部品の不具合だけが原因ではなく、海軍造船プログラムにおいて認められてきた設計、建造、検査の理念の帰結として捉えるべきだと私は考えています」とリックオーバー氏は述べた。「進歩を求めるあまり、優れたエンジニアリングの基礎を放棄してしまったかもしれない現在の慣行を再評価することが重要だと考えています。」
このテストと失敗の物語は、Apple ファンにはおなじみのものに思えるかもしれない。
iPhoneと潜水艦?
iPhoneは兵器プラットフォームではありませんし、ソフトウェアのバグが人命損失の原因になったわけでもありません。しかし、現代生活がデバイスに依存していることを考えると、iPhoneは私たちに対する兵器プラットフォームとして利用される可能性があります。
安全でないMacやiPhoneは、認証方法の無効化やクラウドアクセスのパスワードリセットに利用される可能性があります。適切に攻撃されれば、理論上は、パスワード不要のルートアクセスのようなバグによって、Appleの様々なロックやリセット方法を用いて、iCloudやGoogleの様々なデータストアに保存されているユーザーのデータ全体を消去することが可能です。
これには、銀行情報が紛失したり、攻撃を受けたユーザーから他の金融情報が盗まれたりすることで発生する潜在的な損害は含まれていません。
災害の余波
リッコーバー提督はスレッシャー号の事故で職を失ったわけではなく、当時整備を担当していた造船所で大規模な解雇があったようにも見えません。当時リッコーバー提督を解雇していたら、海軍の原子力発電は停滞し、おそらく二度と回復できなかったでしょう。しかし、この海難事故を直接の結果として、米海軍はSUBSAFE品質保証プログラムを導入しました。このプログラムは、潜水艦のサプライチェーンを徹底的に刷新し、部品の組み立て・製造から設置に至るまで、部品の責任を明確にするものでした。
「悪魔は細部に宿る、だが救いもまた細部に宿る。」 - ハイマン・G・リッコーバー海軍中将
それ以来、米国は物的故障による艦艇の喪失を経験していない。同時期に、他の数カ国も艦艇の喪失を経験しており、ロシアは6隻の艦艇を失った。しかし、ロシアの部品や人員の審査は米海軍ほど厳格ではない。
元の論点に戻ると、Apple は自社のオペレーティング システムとそれに伴うユーザーを保護するために独自の SUBSAFE システムを必要としており、今すぐに始める必要があります。
価値のあることはすぐにはできない
大きな問題に対する反射的な対応は、長期的な解決策としては適切ではありません。SUBSAFEの基本構想はすぐに実行されましたが、実際に機能するまでには数年かかりました。サプライチェーンから不良品を取り除き、パイプライン全体に変更を加えるのに長い時間がかかりました。
ティム・クックはサプライチェーンの達人なので、そこが問題ではありません。クックはスティーブ・ジョブズによって直接抜擢され、Appleの創業者によって長年かけてその地位に就くよう仕込まれてきました。
実際、今回の危機を理由にクック氏の辞任を求める声は馬鹿げている。新たに選出された人物は、サプライチェーンの運営をうまくこなせないだろう。さらに、秩序ある人事が行われないため、アップルのトップは他の業務に慣れるのに時間がかかるだろう。これが問題をさらに悪化させる。
同様に、フェデリギ氏を解任しても、スケープゴートが必要になる可能性以外には何も解決しません。突然のトップの不在は、ソフトウェア品質保証体制の整備が必要な企業に混乱と集中力の欠如をもたらすでしょう。
人間的要素
手続きとオペレーターに関しては、潜水艦隊では常にそのプロセスが進行中です。運が良ければ、Appleも同様の時間を取り、社内開発者と社内的に、そしてユーザーと社外的に状況を再評価してくれるでしょう。
海軍がエンジニアに要求するような、9ヶ月間の集中的な教室トレーニングと、それに続く厳重な監督下でのデバイス操作を経て初めてユーザーが自由に使えるようになることを求めているわけではありません。しかし、Appleのセキュリティに関する約束は、教育を受けていないユーザーにとっては限界があります。
デバイスを家電製品とみなすユーザーは今後も存在し続けるでしょう。また、デバイスがなぜそのように動作するのか、そしてそのデバイスを最大限に活用するにはどうすればよいのかを知りたいと考えるAppleInsiderの読者も常に存在するでしょう。
理想的には、両者が協力し、後者が前者とセキュリティのベストプラクティスについて話し合うことになります。例えば、物理的なセキュリティとソフトウェアセキュリティの組み合わせが、究極のユーザー安全の鍵となるでしょう。
前進への道
Appleは改善を約束しました。同社はルート化バグが公表された後、すぐに声明を発表しました。
Appleは、「この誤りを深く反省し、この脆弱性を残したままリリースしたこと、そしてそれが引き起こした懸念について、すべてのMacユーザーの皆様にお詫び申し上げます。お客様には、よりよい対応を期待しています。このような事態の再発防止のため、開発プロセスを監査しております。」と述べています。
これは、Appleのバージョン番号の昇格が問題を引き起こしているとか、インターネットに起因するその他の愚行についてではありません。Sierraの最初のリリースである10.12.0は、El Capitan 10.11.7と簡単に呼ぶこともできたし、High Sierraの最初のバージョンも10.12.6と呼んでもよかったのですが、マーケティング上の理由から、Appleはバージョン番号を上げて派手な名前を付けました。iOSでも同じです。X=X+1というバージョン番号の昇格は、マーケティングツールというよりは、むしろその方が都合が良いのです。
監査だけでは、検査プログラムの問題点を解決するには不十分のようだ。しかし、それは回復への第一歩となる。
オペレーティング システムの「寿命」を延ばしても何も変わりません。また、「スティーブが生きていたら、こんなことは起きなかったはずだ」という誤った考えから、会社のトップを落とすことも意味がありません。