iOS 13 et macOS Catalina, les raisons qui peuvent expliquer la somme de bugs

Florian Innocente |

Dire que la sortie de macOS Catalina et d'iOS/iPadOS 13 n'a pas été un long fleuve tranquille relève d'un euphémisme. Si la première grosse mise à jour pour Catalina est en bêta-test (10.15.1) le nouveau système en a reçu une à titre intermédiaire. Apple prépare aussi la révision 13.2 de son système mobile qui succèdera aux quatre déjà distribuées en l'espace d'un mois !

iOS 13.0 n'était pas encore envoyé aux utilisateurs que la 13.1 était déjà annoncée avec un cortège de correctifs. Des fonctions et services comme le partage de dossiers sur iCloud, les routeurs compatibles HomeKit, le Secure Video pour les caméras domestiques, la mise à jour du HomePod ou la version de watchOS 6 pour les Series 1 et 2, manquent toujours à l'appel ou ont été remis à plus tard.

Craig Federighi à la WWDC 2019. Toujours tout sourire lorsque les futures nouveautés sont dévoilées. Image : Apple

David Shayer, un ancien développeur d'Apple, avance dans un article sur TidBITS, quelques hypothèses pour expliquer cette situation. Aujourd'hui chez GoDaddy, hébergeur et gestionnaire de noms de domaine, il a passé en totalité 18 ans chez Apple, qu'il a quitté en 2015. Lors de sa deuxième période à Cupertino il a beaucoup travaillé sur les iPod et pendant les trois dernières années sur différents pans logiciels de watchOS.

Parmi les suggestions qu'il avance, certaines reflètent des situations qu'il a pu observer parmi ses collègues. Sa première piste d'explication est celle d'un calendrier de développement trop chargé et contraint par des délais rigides, certains imposés par l'activité matérielle :

Apple pourrait résoudre ce problème de planification en n'incluant pas autant de fonctionnalités dans chaque version, mais ce n'est tout simplement pas la culture de l'entreprise. Les produits ne faisant pas l’objet d’un calendrier de sortie défini, tels que les AirPods ou le fameux tag Bluetooth, peuvent être retardés jusqu’à ce qu’ils soient vraiment fiables. Toutefois, les produits dont le calendrier de sortie est annuel, comme les iPhone et les systèmes d’exploitation, doivent être lancés en septembre, quel que soit leur état.

David Shayer évoque au passage des situations où dans une équipe, personne ne veut admettre le premier que la partie d'une fonction dont il a la charge a pris du retard. Si aucun ne fait ce premier pas, tout le monde se tait, ces dysfonctionnements s'accumulent et la fonction finit par être repoussée.

Ensuite il peut y avoir ces bugs qui ne provoquent aucun plantage et n'entrainent donc pas l'affichage du rapport de crash que l'on peut envoyer à Apple :

Ça ne repèrera pas les photos qui ne sont jamais téléchargées sur iCloud ; la fiche de contact qui ne synchronise pas entre mon Mac et mon iPhone ; les sauvegardes sur une Time Capsule qui sont corrompues et doivent être redémarrées tous les quelques mois ; ni l'application de configuration de mon nouvel iPhone 11 qui est prise dans une boucle et qui me demande à plusieurs reprises de me connecter à mon compte iCloud.

On pourrait citer également le bug de l'assistant d'installation de Catalina qui ne comprenait pas que l'opération était terminée et refusait de rendre la main au système. Des bugs dont il est compliqué d'identifier l'origine pour les ingénieurs en qualité ou ceux qui collectent les retours d'utilisateurs sur les forums ou en Apple Store.

Plus on approche de la date de lancement des systèmes, plus les efforts se concentrent sur les bugs les plus sévères, plantogènes ou qui impliquent des pertes de données, continue David Shayer. Alors qu'au tout début du cycle des bêtas, tout est bon à apporter des corrections.

S'atteler à des problèmes plus mineurs c'est prendre le risque d'introduire d'autres bugs par inadvertance :

Les bugs générant beaucoup de visites en Apple Store ou d'appels au support technique sont généralement corrigés. Après tout, payer suffisamment de personnes pour aider de nombreux utilisateurs ça coûte très cher. Cela l'est beaucoup moins pour corriger ce bug. Lorsque je travaillais sur des produits Apple, nous avions une liste des principaux bugs qui généraient les visites en Apple Store et les appels au support technique, et nous devions les résoudre.

Malheureusement, les bugs plus rares ou moins graves, ceux qui provoquent surtout des incompréhensions chez l'utilisateur mais pas de pertes de données, ceux-là sont continuellement mis au second plan par le système de triage.

« Apple est feignante lorsqu'il s'agit de corriger de vieux bugs », observe l'ancien employé. Un bug touchant un tout nouveau produit, comme l'iPhone 11 en ce moment, sera promptement éradiqué, dit-il. Sinon c'est une toute autre histoire :

Vous vous souvenez de ce que j'ai dit à propos des changements causant de nouveaux bugs ? Si un ingénieur casse accidentellement une fonction, ça s’appelle une régression. Ils sont censés la réparer.

Mais si vous enregistrez un rapport de bug et que l’ingénieur en qualité détermine que ce bug existe également dans les versions précédentes du logiciel, il est identifié comme « pas de régression ». Par définition, ce n’est pas un nouveau bug, c’est un ancien bug. Il y a des chances alors que personne ne soit jamais affecté à sa résolution.

Tous les groupes chez Apple ne travaillent pas de cette manière, mais beaucoup le font. Ça me rendait dingue. Un groupe que j'ai connu chez Apple a même fabriqué des tee-shirts avec marqué « Pas une régression ». Si un bug n’est pas une régression, ils n’ont pas à le corriger. C’est pourquoi les problèmes de téléchargement de photos iCloud et le celui de la synchronisation de contacts que j’ai mentionnés peuvent ne jamais être rectifiés.

Un propos qui a fait réagir Peter Steinberger, cofondateur de l'éditeur de PSPDFKit, un moteur de gestion de fichiers PDF. Il se souvient d'une anecdote il y a quelques années, lors d'une WWDC. Il faisait état devant des ingénieurs d'Apple de bugs toujours existants, et on lui avait répondu : « Pourquoi ça vous embête ? Puisque vous avez déjà trouvé un moyen pour le contourner ? ».

Plus loin dans son article, David Shayer regrette qu'Apple n'utilise pas davantage des batteries de tests automatisés pour déceler des problèmes. Il cite des exceptions comme des tests automatiques menés quotidiennement pour étudier l'impact du système sur les batteries des iPhone, avec comme réserve le fait que n'est observé apparemment que le code produit par Apple. Ce qui écarte pas mal de scénarios avec des logiciels tiers. Ou encore l'équipe Safari qui fait grand usage de ces évaluations automatiques pour déterminer tout ce qui peut ralentir le navigateur.

Enfin, il y a le fait que l'écosystème d'Apple ne cesse de se complexifier avec plus de systèmes et de matériels, des interdépendances permanentes à tous les niveaux :

Les produits Apple actuels sont beaucoup plus complexes que par le passé, ce qui rend le développement et les tests plus difficiles. La matrice de test ne comporte pas simplement plus de lignes (pour les fonctionnalités et les versions de système d'exploitation), elle a également plus de dimensions (pour tous les produits compatibles avec lesquels elle doit être utilisée).

Pire, des événements asynchrones tels que plusieurs tâches s'exécutant sur plusieurs cœurs ; des notifications push et une latence du réseau font qu'il est pratiquement impossible de créer une suite de tests complète.

Il n'y a pas de solution simple à ce qui est un problème en constante évolution, mais l'ancien ingénieur d'Apple espère voir des correctifs sortir à un rythme plus élevé. Ne serait-ce que parce qu'en laissant cette situation inchangée, cela finit par se payer en termes de coût en support technique et en image pour Apple.

Source
avatar Winitri | 

Quelqu’un ayant un minimum de connaissance en numérologie sait qu’il ne faut pas utiliser le nombre 13

avatar Bigdidou | 

@Winitri

« Quelqu’un ayant un minimum de connaissance en numérologie sait qu’il ne faut pas utiliser le nombre 13 »

Évidemment.
Ceci étant, à la décharge de Tim Cook, je travaille dans le soin depuis 30 ans et je viens de découvrir qu’il n’y a pas de chambre X13 dans ma propre clinique et plus généralement dans beaucoup de lieux de soin, m’a-t-on dit.
Comme quoi, on découvre des choses mémé très tard dans sa vie professionnelle.
Je parie que Tim l’a découvert aussi et qu’il s’opposera à toute version 113 des systèmes d’Apple : je mets en jeu une tonne de saucisses rares et chères avec ceux qui le veulent qu’on passera directement de la version 112 à la version 114.

Ceci étant je suis passé entre les gouttes et je vois mes systèmes 13 plutôt bien fonctionner.

avatar Winitri | 

@Bigdidou

Autre exemple : aucune salle 13 dans les cinémas de France.

La RATP n’était pas au courant en utilisant le 13 pour sa ligne de métro ;)

avatar marc_os | 

@Winitri

Autre exemple :
Pas de coffre nº 13 à la banque de France.

avatar Kinky | 

@ Winitri

J'habite près de la ligne 13 du métro et je confirme qu'elle ne porte pas plus malheur que les autres. La pire c'est la 1, pas la plus dégradée mais très bruyante et éclairage agressif.

Je pense donc que la RATP doit inverser les numéros de ces lignes afin que la mauvaise réputation du 13 soit préservée.

avatar Jeanlucesi | 

C'est vrai dans ma famille personne n'a jamais eu 13 ans nous sommes tous passé de 12 à 14 directement.

avatar Sergio_bzh | 

Et dans les avions occidentaux pas de rang 13 .

A part ça, calé ou ignorant en numérologie , ça reste du flan ce chiffre 13. Tout comme le Vendredi 13 ou tout autre sottise du même genre.

avatar Kinky | 

Et dans certains pays asiatiques c'est le 8, pour d'autres le 4…

avatar frouboy19 | 

@Winitri

Très vrai

avatar _Teo_ | 

@Winitri

Je ne comprends pas pourquoi ce chiffre 13 est si problématique
Ici il y a certaines tours qui n’ont pas d’étage 13 et je pensais sincèrement que c’était une grosse blague
En fait on dirai plutôt une superstition à l’échelle humaine, c’est complètement naze

avatar pacou | 

@_Teo_

Un petit cours d’histoire s’impose :
12 apôtres + juda
Le jour du dernier repas avec le Christ (Jesus de Nazareth, a l’époque), ce 13eme a trahi par son baisé de mort.
Dans notre civilisation judéo-chrétienne, le nombre 13 est donc devenu maudit.

On ne met pas non plus 13 couverts à table pour cette raison.

avatar _Teo_ | 

@pacou

Ça je me doutais que ça venait de quelque chose de religieux...

avatar Phiphi | 

@pacou

Ah merci je découvre à 60 ans qu’il l’avait baisé à mort ‼️

J’avais toujours cru qu’il lui avait seulement fait un baiser ‼️‼️‼️

avatar pacou | 

@Phiphi

C’est parce que vous avez voulu mal lire ce que j’ai écrit, certainement

avatar Phiphi | 

@pacou

Non non, vous avez vraiment écrit baisé au lieu de baiser, relisez-vous. 😉

avatar LeonlegranD | 

Juste une petite correction d'histoire : Juda faisait partie des douze apôtres non ? Donc, 11 + 1 = 12, et pas 13. Alors comment faut-il comprendre ?

avatar TheUMan | 

12 apôtres + Jesus = 13 à table (cf. la Cène) c'est la mode en ce moment avec l'expo Lèonard de Vinci ;-)

avatar Kinky | 

@ pacou

Judas était le plus cool de cette bande de rabats joie mythomanes et coincés du cul. Voici le chiffre 13 réhabilité ! Merci !! ;-)

avatar Rin-Kun | 

@_Teo_

C’est simplement une croyance encrée dans le commun des mortels, avec des variantes selon les pays...
Par exemple au Japon c’est le 4, il se prononce "shi", ce qui signifie aussi "la mort"

avatar pme | 

Personnellement je ne suis pas superstitieux, ça porte malheur :P

avatar jb33 | 

Suis-je le seul à être maudit avec le nouveau partage de connexion sur un iPhone 11 Pro qui ne dure pas plus de 20 secondes (quand ce n'est pas la pop-up d'erreur d'activation qui s'affiche sur le Mac)?

avatar armandgz123 | 

@jb33

La partage de connexion de mon iPhone 6s activé à distance depuis l’iPad a aussi pas mal de raté depuis iOS 13...

avatar jb33 | 

@armandgz123

Exact. Pareil sur mon iPad mini 5 le Hotspot ne tient pas. Malgré une réinitialisation des réglages réseaux. Il y a de longs fils de discussion sur les forums Apple.com...

avatar mszy | 

@jb33

Bonjour,
J’ai eu le même problème, le partage de connection qui s’éteint régulièrement au bout de quelques secondes, et il se trouve que c’était lié au mode économie d’énergie. Quand il est désactivé, aucun problème.

En espérant que ça résolve vos problèmes

avatar Armand07 | 

Synchro iCloud, Mac et iPhone pas toujours faite : Contacts qq soucis, Photo aussi. Attendons les mises à jour !

Pages

CONNEXION UTILISATEUR