Assiste.com - Sécurité informatique - Vie privée sur le Web - Neutralité d'Internet

cr  01.04.2012      r+  01.06.2024      r-  15.07.2024      Pierre Pinard.         (Alertes et avis de sécurité au jour le jour)

Quelles sont les étapes de l'évolution d'un logiciel et peut-on utiliser des versions dites « Alpha », « Betta », « RC », etc. ?

Les logiciels existant dans la durée sont modifiés, corrigés, améliorés par leurs auteurs et ces modifications sont identifiées en donnant un code de version au logiciel (version 1, version 2, version 2.01, etc.). Les logiciels en préversions, pour tests et critiques, portent des noms particuliers : version 2.01 alpha, version 2.01 Betta, version 2.01 RC, etc.

Il n'est pas bon d'utiliser « en production » des logiciels, quels qu'ils soient (pilotes de périphériques matériels, applications, système d'exploitation, etc.) tant qu'ils ne sont pas en version finale (officiellement publiés et donc cencés être stables).

Les versions précédant la version finale sont en préversions, pour des tests avancés réservés à des utilisateurs très avancés et capables d'analyser un comportement anormal ou améliorable et de faire remonter une information pointue aux techniciens de développement.

Ces préversions ne sont pas stables et ne doivent pas être utilisées par un utilisateur « normal » et encore moins dans le monde réel (entreprise...).

Ces noms de phases ne sont pas formels et peuvent être différents d'un laboratoire de développement à un autre, et d'une nature de projet à une autre. Par exemple :

  1. Au début nait l'idée
    Subites connexions neuronales ou lente maturation.

  2. Cahier des charges
    Formalisation.

  3. Conception
    Sur le papier

  4. Maquette
    Comment se présente le logiciel aux yeux de ses requérants amont et aval - personnes physiques utilisatrices ou couches d'abstraction ? Aucune fonctionnalité n'est encore implémentée. Simples modélisations, par exemple, des écrans (interfaces utilisateurs) et des documents de sortie (mise en page des impressions, etc. ...). La maquette peut n'être qu'un simple crayonné.

  5. Prototype
    Juste les premières lignes de code et les entrées/sorties, à montrer au client

  6. Pré-alpha
    Quelques formalisations

  7. Alpha-test
    Phase du premier jet d'écriture du logiciel. Quelques fonctionnalités seulement commencent à être implémentées afin de confirmer ou infirmer l'architecture des composants et sa validité. Version de tests, sur des jeux d'essais, réservée aux techniciens de la chose, généralement en interne (au sein de la société de développement - chef de projet, analystes) ou à un pool très restreint de personnes de confiance, souvent cooptées. Il peut y avoir plusieurs versions alpha successives (alpha 1; alpha 2; alpha 3; alpha 4; alpha 5; etc. ...).

  8. Bêta test
    Version de test ouverte à un public s'attendant à des erreurs, s'engageant à tester et faire des rapports de tests. Il peut y avoir plusieurs versions bêta successives (bêta 1; bêta 2; bêta 3; bêta 4; bêta 5; etc. ...).

  9. Nightly
    Hors du cycle des Alpha, Beta, RC, etc. Il y a les versions servant de laboratoire en continu, à destination d'utilisateurs avancés observant de près les injections de codes nouveaux répondant à une demande ou une suggestion. Il s'agit de tester ce nouveau code. Les compilations ont lieu en flux continu, généralement de nuit, tous les jours, d'où le qualificatif de Nightly. On y trouve des ébauches de fonctionnalités qui seront probablement incorporées officiellement dans la troisième ou quatrième version stable suivant celle actuelle (ou totalement abandonnées), mais, en attendant, il faut voir comment elles se comportent dans un vaste ensemble de contextes utilisateurs différents, et simplement voir si l'implémentation de la fonctionnalité répond à la suggestion faite auparavant, est critiquée, fait l'objet de nouvelles suggestions, d'une autre interface personne-machine, etc. C'est une soumission aux testeurs (appelée « commit » en anglais).

  10. Phase RC (Release Candidate ou préversion)
    Version très proche de la version finale, mais pas encore totalement finalisée. Il s'agit de confronter l'application à d'innombrables combinaisons de matériels / logiciels / situations utilisateurs et de faire les derniers ajustements. Il peut y avoir plusieurs versions RC successives (RC 1; RC 2; RC 3; RC 4; RC 5; etc.).

  11. Version finale
    Version « stable » (bien qu'il n'existe pas de programme 100% sans erreur). L'utilisateur « normal » (l'utilisateur final) ne doit utiliser que des versions finales des logiciels. Toutes les versions précédentes sont vivement déconseillées.

  12. Révisions
    Dans la vie d'un logiciel, il y aura plusieurs versions finales successives (révisions) apportant des correctifs (de sécurité ou de fonctionnalités).

Il peut s'écouler plusieurs mois à plusieurs années entre la conception d'un logiciel et sa première version finale. Le cas du navigateur appelé Chromium, par exemple, depuis sa première version, en 2008, à ce jour (dernière vérification en juillet 2018), n'a jamais eu de réelle et officielle version « stable ». C'est plutôt un laboratoire de mise au point permanente.


Un autre découpage vu par le laboratoire de développement d'OVH (un hébergeur de sites Web français de taille mondiale) :

Versions des logiciels (alpha, bêta, RC)
Versions des logiciels (alpha, bêta, RC)


Clauses d'exclusions pour les versions non finales des produits logiciels. Par exemple :


McAfee écrit, dans ses clauses (au 13.11.2014 à 21h34)

Versions d'essai, d'évaluation, préliminaires ou bêta du logiciel.

  1. Absence de garantie. ABSENCE DE GARANTIE. LE LOGICIEL QUE NOUS VOUS DONNONS SUR UNE BASE D'ESSAI OU D'ÉVALUATION OU LES VERSIONS « BÊTA », PRÉLIMINAIRES (« PRE-RELEASE ») OU AUTREMENT QUALIFIÉES D'EXPÉRIMENTALES, NON TESTÉES OU QUI NE SONT PAS ENTIÈREMENT OPÉRATIONNELLES, SONT FOURNIS « TELS QUELS », SANS AUCUNE FORME DE GARANTIE, INDEMNISATION, NI ASSISTANCE, EXPRESSES OU IMPLICITES.

  2. Prévention des pertes. Il est de votre seule responsabilité de prendre des mesures appropriées pour sauvegarder votre ordinateur et toute autre mesure nécessaire pour prévenir la perte de fichiers ou de données.


Avertissement de Malwarebytes à propos de Malwarebytes Anti-Rootkit (MBAR) bêta

Ceci est un logiciel en bêta test, pour un usage uniquement par les clients de Malwarebytes et les partenaires approuvés. Vous l'utilisez à vos propres risques et, en l'utilisant, vous acceptez les termes de l'accord de licence de Malwarebytes, contenu dans les fichiers du produit sous le nom de « License.rtf ».

Toutes les versions bêta sont des produits non finis. Malwarebytes ne garantit pas l'absence d'erreurs qui pourraient conduire à une interruption dans les opérations normales de l'ordinateur ou des pertes de données. Des précautions doivent être prises. Les types d'infections ciblées par Malwarebytes Anti-Rootkit peuvent être très difficiles à enlever. S'il vous plaît, assurez-vous d'avoir une sauvegarde exploitable de vos données importantes avant de continuer, comme mesure de précaution.

Bien que nous (Malwarebytes) encouragions et invitions à participer, les utilisateurs de Malwarebytes Anti-Rootkit (MBAR) BETA exécutent l'outil à leurs propres risques. Malwarebytes n'assume aucune responsabilité pour les problèmes qui peuvent survenir lors de l'utilisation de cet outil, toutefois tous les efforts raisonnables seront faits par Malwarebytes pour aider à la récupération en cas de besoin.


Si le code du logiciel connait des évolutions (des versions successives) :

  • Cela ne se voit pas forcément dans le nom du logiciel téléchargé lorsque son code est directement utilisable, sans phase d'installation. Ceci évite aux utilisateurs de modifier toutes leurs commandes de lancements de cette application.

  • Cela peut se voir dans son nom de téléchargement si le logiciel téléchargé nécessite une phase d'installation. L'installeur installera le code sous son nom standard, toujours le même et l'utilisateur n'aura rien à faire.
  • Bien qu'installable, l'auteur d'un logiciel peut ne pas faire apparaitre le numéro de version dans le nom du logiciel téléchargé. Il faut alors rechercher ce code de version sur son site Web.


Certains logiciels, comme les antivirus, peuvent avoir un code (des algorithmes) parfaitement stable durant de très longues périodes (voire des années), mais avoir des paramètres, complètement hors du code, changeant fréquemment, à la minute près. Le code de version ne change pas, mais la « version » sera la date et heure, à la minute près, de dernière mise à jour des tables (bases de données) des paramètres.