頻繁にアップデートを繰り返すiOS 13
バグだらけだったiOS 13を反省して次期OS「iOS 14」では開発手法を変更し、不具合がある新機能の搭載を見送るとBloombergが報じている。
iOS 13は過去にないほどアップデートを繰り返した。 iOS 13登場からすでに8回のアップデートを行い、現在のバージョンは13.2.3。Appleとしては異例の措置である。
頻繁にアップデートを行う理由は以前に推察したが、新しい開発手法により発生するかもしれない新たな問題を考えます。
テスト方法を変更
Bloombergの報道によると、開発中のテスト方法が変わるようだ。通常OSのテストは、ある程度完成後、全体がうまく稼働するかを個別の機能毎にテストしていく。それでOKなら、そのOS全体が正常に稼働するとみなしてリリースされる。
これだと問題が発生したときに、どの機能が原因で不具合を発生しているのかわかりづらいことがある。OSのように様々な機能が入り組んだ複雑なソフトウェアだと原因究明が非常に困難な場合も多い。
新しい方法では、新機能がすべてオフになっており、テスト時に新機能を1つずつオンにしてテストができるようだ。
このテスト方法なら、問題が発生したときにオンにした機能に原因があると特定しやすい。
進化が遅れる可能性も
新しいテスト方法でバグがなくなって万々歳にも聞えるが、この変更によりOSの進化が停滞する可能性もある。
機能毎に問題の有無がわかれば、問題が解決するまでその新機能を導入しないことが起こるだろう。バグなしの機能が導入されれば、それはもちろん結構な話だが、ソフトウェアにはバグはつきものだ。すべてのバグが払拭されたソフトウェアなど存在しない。ある程度のパフォーマンス低下、不具合があっても致命的な問題でなければ、全体的なバランスを考えてソフトウェアをリリースすることはよくある。
ソフトウェアを公開することで、多くのユーザーが使用し、それにより不具合が出る条件が明確になることもある。言い方は悪いが、ユーザーの使用情報が実験データになることもある。
もちろん不具合の程度による話だ。セキュリティなど致命的な問題は払拭してもらわなくて困るが、機能毎にオン・オフができるようになると、問題がある機能は搭載を見送る決定になるに違いない。そうなると、新しい機能をユーザーは一切使えなくなる。
ベータ版という逃げ道
Webサービスの世界ではベータ版と称して、不具合があるサービスを無償で提供する習慣があった。今では多くのユーザーが使用しているグーグルのGmailは長らくベータ版扱いだった。2004年に登場してから、5年後の2009年までずっとベータ版としてユーザーに提供されてきた。正規版が導入されてから、ビジネスユーザーには有償での提供がはじまり、Gmailは商業ベースのサービスとなった。
「ベータ版」の表記は「ベータ版だから不具合が出ても仕方がないよ」という企業側のメッセージ(言い訳?)になっていた。
最近は正式ローンチ前にテストとしてベータ版が提供されることはあっても、ユーザーが日常的に使用するソフトウェア・サービスで「ベータ版」と称することが少なくなったように思う。
ユーザーとしては、バグがないソフトウェアが提供される方が安心して利用できるが、新機能を早く使ってみたい思いもある。
悩ましいところだけど、Appleに限らず各ソフトウェア企業には、リスクと安全のバランスが取れたリリースを期待したい。