After Buggy iOS 13 Debut, Apple Changes Its Approach For Future iOS Builds

Buggy iOS 13

Apple's iOS 13 was one of the most anticipated mobile operating system upgrade this 2019. But with numerous quick fixes, the version saw many issues.

The main factor behind the bugginess of iOS 13 releases was caused by the rate at which developers were committing changes. At least weekly and often daily, Apple was forced to keep up with the commits, making releases rather unstable.

To prevent these things from happening again, starting iOS 14, Apple plans to overhaul how it tests software.

According to Apple's senior vice president of Software Engineering Craig Federighi, Apple calls for new approach from the development team to ensure that test versions, known as “daily builds,” of future software updates to disable unfinished or buggy features by default.

What this means, testers will have the option to selectively enable buggy features, through a new internal process and settings menu dubbed 'Flags', allowing them to isolate the impact of each individual addition on the system.

They can do this at their own risk.

Until iOS 13's developments, teams would add feature just about everyday that weren't fully tested, while others would contribute to changes just about weekly. This make the operating system crammed with changes, which at different stages of development, can make iOS devices difficult to use.

And because changes, or commits, often made test builds unusable, developers would go for days without a "livable" build. What this means, they wouldn't know what works and what doesn't, effectively defeating Apple's main goal of software testing.

As commits piled up, this led to some iOS 13's problems. The result was inevitable: iOS 13 became one of the most troubled and unpolished operating system updates in Apple’s history.

With the update, Apple should help early internal iOS versions to be more usable, or livable.

Craig Federighi
Craig Federighi on stage when he talked about iOS 13 during Apple's Worldwide Developer Conference (WWDC) in San Jose, California on June 3, 2019. (Credit: BRITTANY HOSEA-SMALL / Getty Images)

According to a report from Bloomberg

"Apple measures and ranks the quality of its software using a scale of 1 to 100 that’s based on what’s known internally as a “white glove” test. Buggy releases might get a score in the low 60s whereas more stable software would be above 80. iOS 13 scored lower on that scale than the more polished iOS 12 that preceded it. Apple teams also assign green, yellow and red color codes to features to indicate their quality during development. A priority scale of 0 through 5, with 0 being a critical issue and 5 being minor, is used to determine the gravity of individual bugs."

This strategy is being implemented to the development of iOS 14, codenamed 'Azul', internally. Apple has also considered delaying some iOS 14 features until 2021, in an update called 'Azul +1', internally.

With the change, Apple should also have some more time to focus on performance.

The testing shift is applied to all Apple’s operating systems, including iPadOS, watchOS, macOS and tvOS.

Apple executives hope that the overhauled testing approach can improve the quality of the company’s software over the long term.