BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース iOS 13ローンチ時のバグの理由と開発プロセスの改善

iOS 13ローンチ時のバグの理由と開発プロセスの改善

ブックマーク

原文(投稿日:2019/11/26)へのリンク

Appleの最新iOSリリースであるiOS 13が多くのバグに見舞われ、ユーザの間に失望の声があがっている。Bloombergによる報道では、Appleに近い情報筋が、iOS 13のリリースプロセスの問題と、Appleがこれを将来的にどのように修正しようとしているかを説明している

Bloombergの記事によると、ソフトウェア開発者による内部会議の席で、Appleの経営トップであるCraig Federighi氏とStacey Lysik氏は、iOS 13のバグの主因として、iOSデイリービルドの不安定性を指摘した。端的に言えば、あまりに多くの不完全ないしバグの残る機能を、デイリービルドにプッシュしていたのだ。新機能は完成度に関わらずデフォルトで有効になっているため、テスタのデバイス使用が難しくなり、結果としてバグの多いリリースにつながった。

現在、オペレーティングシステムの新たなメジャーバージョンのリリースは、デスクトップ、モバイルデバイスを問わず大きな取り組みであり、初期導入者が既知ないし未知の問題によって悩まされることも少なくない。その中にはユーザだけでなく、データ期間やそれ以降に自身のアプリを対応させようとする開発者も含まれる。

Appleのオペレーティング・システムもこのルールの例外ではなく、この数年間は、リリース時のバグの多さに対する不満や批判の声が高くなっていた。最も有名なのは、macOSとiOSの開発者であり、最近ではポッドキャストアプリのOvercastで、それ以前は大成功を収めたInstapaperアプリブログプラットフォームのTumblrで有名なMacro Arment氏だ。氏はiOS 13によって自身の開発者としての意欲が損なわれたと発言している。実際にArment氏は、数年前からAppleのソフトウェアのクオリティを最も強く批判していたひとりで、2015年にもmacOSリリースのクオリティを厳しく批判している

毎年のメジャーリリースは必要ありません。リリース毎に新機能のリストを長々と並べ立てる必要はありません。とにかく、私たちのコンピュータや携帯電話やタブレットが正しく動作して、新リリースを確実に、ひとつひとつ、継続的なペースで楽しめればよいのです。

しかしながら、iOS 13でAppleは、その歴史上初めての事として、iOS 13のイベントでの発表よりも前に、新OSの最初のパッチリリースを発表した。一部の人々はこれを、iPhoneやiPadを新しいiOS 13にアップグレードするのは見送って、iOS 13.1のリリースを待つべきだ、という明確なメッセージだと受け取った。そして言うまでもなく、iOS 13.1自体も完全とは程遠いものだったのだ。

Arment氏の意欲の問題に加えて、iOS 13をiOS 3と比較したTechCrunch編集者のMatthew Panzarino氏の意見にも傾聴の価値がある。

iOS 13になって、iOS 3時代に戻ったような気分になりました。起動終了型(launched-to-quit)アプリとほぼ1:1のペースで、バックグラウンドのアプリをramからドロップし続けるのです。コンテンツやリンクをドリルダウンした結果が失われるのですから、腹が立って仕方ありません。なんてくだらない仕様なんでしょう。

回避策としてFederighi氏は、すべての新機能をデフォルトで無効にすることを示唆した。最新ビルドでリグレッションが発生していないことを確認するためと、新たなバグによる機能不全を防止するためだ。新機能は、新たに設けられた内部のFlagsメニューを使って、必要に応じてテスタが個々に有効にする。この方法により、新機能を分離した形でテストできるようにするのだ。

この新たなアプローチが功を奏して、iOS 14の全体的な品質や安定性が向上するかどうかは、来年になれなければ分からない。しかし明らかなのは、これが新OSリリースを成功させる唯一の手段ではない、ということだ。Appleのベテラン開発者であるDavid Shayer氏が書いているように、リリースプロセスを改善する方法は他にもある。過剰な新機能を詰め込まないことや、修正するバグの順位付けを改めること、古いバグを無視しないこと、自動テストを拡張すること、などが考えられる。いずれの提案も、ソフトウェア製品をリリースしているすべての組織にとって価値のあるものだ。

この記事に星をつける

おすすめ度
スタイル

BT