Cycle de vie des versions logicielles

Un article de Wikipédia, l'encyclopédie libre
Aller à la navigation Aller à la recherche

Un exemple de cycle de vie de version de logiciel de base

Un cycle de vie de version de logiciel est la somme des étapes de développement et de maturité d'un logiciel informatique . Les cycles vont de son développement initial à sa sortie éventuelle, et incluent des versions mises à jour de la version publiée pour aider à améliorer le logiciel ou à corriger les bogues logiciels encore présents dans le logiciel.

Les utilisateurs d'ordinateurs sont plus susceptibles de connaître la phase bêta , car les produits logiciels sont parfois annoncés publiquement comme étant bêta afin de réduire les attentes des utilisateurs quant à leur fiabilité. [1]

Histoire

L'utilisation de la terminologie de test « alpha/bêta » provient d' IBM . Des terminologies similaires pour le développement de logiciels d'IBM ont été utilisées par les personnes impliquées avec IBM depuis au moins les années 1950 (et probablement plus tôt). Le test « A » était la vérificationd'un nouveau produit avant l'annonce publique. Le test « B » était la vérification avant de libérer le produit à fabriquer. Le test "C" était le test final avant la disponibilité générale du produit. Alors que les logiciels devenaient une partie importante des offres d'IBM, la terminologie du test alpha a été utilisée pour désigner le test de pré-annonce et le test bêta a été utilisé pour montrer que le produit était prêt pour une disponibilité générale. Martin Belsky, un responsable de certains des premiers projets logiciels d'IBM, a affirmé avoir inventé la terminologie. IBM a abandonné la terminologie alpha/bêta au cours des années 1960, mais à ce moment-là, elle avait reçu un avis assez large. L'utilisation de "test bêta" pour désigner les tests effectués par les clients n'a pas été effectuée dans IBM. Au lieu de cela, IBM a utilisé le terme « test sur le terrain ».

Étapes de développement

Pré-alpha

Le pré-alpha fait référence à toutes les activités effectuées au cours du projet logiciel avant les tests formels. Ces activités peuvent inclure l' analyse des exigences , la conception de logiciels , le développement de logiciels et les tests unitaires . Dans le développement open source typique , il existe plusieurs types de versions pré-alpha. Les versions Milestone incluent des ensembles de fonctions spécifiques et sont publiées dès que la fonctionnalité est terminée.

Alpha

La phase alpha du cycle de vie de la version est la première phase des tests logiciels (alpha est la première lettre de l' alphabet grec , utilisée comme chiffre 1). Dans cette phase, les développeurs testent généralement le logiciel en utilisant des techniques de boîte blanche . Une validation supplémentaire est ensuite effectuée en utilisant des techniques de boîte noire ou de boîte grise , par une autre équipe de test. Le passage aux tests en boîte noire au sein de l'organisation est connu sous le nom de version alpha . [2] [ une meilleure source est nécessaire ]

Le logiciel Alpha n'est pas testé de manière approfondie par le développeur avant d'être mis à la disposition des clients. Le logiciel Alpha peut contenir des erreurs graves, et toute instabilité qui en résulte pourrait provoquer des plantages ou une perte de données. [3] Le logiciel Alpha peut ne pas contenir toutes les fonctionnalités prévues pour la version finale. [4] En général, la disponibilité externe de logiciels alpha est rare dans les logiciels propriétaires , tandis que les logiciels open source ont souvent des versions alpha accessibles au public. La phase alpha se termine généralement par un gel des fonctionnalités , indiquant qu'aucune autre fonctionnalité ne sera ajoutée au logiciel. À l'heure actuelle, le logiciel est considéré comme complet . Un test bêta est effectué aprèstests d'acceptation sur le site du fournisseur (test alpha) et immédiatement avant la sortie générale du logiciel en tant que produit. [5]

Bêta

Beta, du nom de la deuxième lettre de l'alphabet grec , est la phase de développement du logiciel suivant l'alpha. Les logiciels en phase bêta sont également connus sous le nom de bêtaware . [6] Une phase bêta commence généralement lorsque le logiciel est complet mais contient probablement un certain nombre de bogues connus ou inconnus. [7] Les logiciels en phase bêta contiennent généralement beaucoup plus de bogues que les logiciels terminés et les problèmes de vitesse ou de performances, et peuvent toujours provoquer des plantages ou des pertes de données. L'objectif des tests bêta est de réduire les impacts sur les utilisateurs, en incorporant souvent des tests d'utilisabilité . Le processus de livraison d'une version bêta aux utilisateurs est appelé version bêtaet c'est généralement la première fois que le logiciel est disponible en dehors de l'organisation qui l'a développé. Les versions bêta du logiciel peuvent être publiques ou privées, selon qu'elles sont librement disponibles ou uniquement disponibles pour un public limité. La version bêta du logiciel est souvent utile pour les démonstrations et les aperçus au sein d'une organisation et pour les clients potentiels. Certains développeurs appellent cette étape un aperçu , une version d'aperçu , un prototype , un aperçu technique ou un aperçu technologique ( TP ), [8] ou un accès anticipé . Depuis l'introduction de Windows 8 , Microsofta qualifié le logiciel de pré-version d' aperçu plutôt que de bêta . Toutes les versions préliminaires publiées via le programme Windows Insider lancé en 2014 sont appelées « builds Insider Preview ». "Bêta" peut également indiquer quelque chose comme une version candidate , ou comme une forme de démonstration limitée dans le temps, ou une technique de marketing. [9]

Les bêta-testeurs sont des personnes qui signalent activement des problèmes de logiciels bêta. Ce sont généralement des clients ou des représentants de clients potentiels de l'organisation qui développe le logiciel. Les bêta-testeurs ont tendance à proposer leurs services gratuitement, mais reçoivent souvent des versions du produit qu'ils testent, des remises sur la version de sortie ou d'autres incitations. [ citation nécessaire ]

Bêta perpétuelle

Certains logiciels sont conservés en version bêta perpétuelle , où de nouvelles fonctionnalités sont continuellement ajoutées au logiciel sans établir une version finale "stable". Comme Internet a facilité la distribution rapide et peu coûteuse de logiciels, les entreprises ont commencé à adopter une approche plus souple quant à l'utilisation du mot bêta . [10] En février 2005, ZDNet a publié un article sur le phénomène d'une version bêta restant souvent pendant des années et utilisée comme si elle était au niveau de la production. [11] Il a noté que Gmail et Google News, par exemple, était en version bêta depuis longtemps bien que largement utilisé ; Google News a quitté la version bêta en janvier 2006, suivi de Google Apps (maintenant nommé Google Workspace ), y compris Gmail, en juillet 2009. [12]

Bêta ouverte et fermée

Les développeurs peuvent publier soit une bêta fermée , également appelée bêta privée , soit une bêta ouverte , également appelée bêta publique ; les versions bêta fermées sont distribuées à un groupe restreint d'individus pour un test utilisateur sur invitation, tandis que les bêta-testeurs ouverts appartiennent à un groupe plus large ou à toute personne intéressée. La version bêta privée pourrait convenir au logiciel capable de fournir de la valeur, mais n'est pas prêt à être utilisé par tout le monde en raison de problèmes de mise à l'échelle, d'un manque de documentation ou de fonctionnalités vitales manquantes. Les testeurs signalent tous les bogues qu'ils trouvent et suggèrent parfois des fonctionnalités supplémentaires qui, selon eux, devraient être disponibles dans la version finale. Voici quelques exemples d'un test bêta public majeur :

  • Les premiers clients ont acheté une "édition pionnière" du traitement de texte WordVision pour le PC IBM pour 49,95 $. En 1984, Stephen Manes a écrit que "dans un coup marketing brillant, Bruce et James Program Publishers ont réussi à faire payer aux gens le privilège de tester le produit". [13]
  • En Septembre 2000 , une version en boîte de pomme de Mac OS X Public Beta système d'exploitation a été libéré. [14]
  • Publication par Microsoft des aperçus technologiques communautaires ( CTP ) pour Windows Vista , entre septembre 2005 et mai 2006. [15]
  • De 2009 à 2011, Minecraft était en version bêta publique.

Les bêta ouvertes ont le double objectif de démontrer un produit aux consommateurs potentiels et de tester parmi une large base d'utilisateurs susceptibles de mettre en lumière des erreurs obscures qu'une équipe de test beaucoup plus petite pourrait ne pas trouver. [ citation nécessaire ]

Libérer le candidat

Une version candidate ( RC ), également connue sous le nom de « Going Silver », est une version bêta avec le potentiel d'être un produit stable, qui est prêt à être publié à moins que des bogues importants n'apparaissent . Dans cette étape de stabilisation du produit, toutes les fonctionnalités du produit ont été conçues, codées et testées au cours d'un ou plusieurs cycles bêta sans aucun bogue de classe showtopper connu. Une version est appelée code completlorsque l'équipe de développement convient qu'aucun code source entièrement nouveau ne sera ajouté à cette version. Il peut toujours y avoir des modifications du code source pour corriger les défauts, des modifications de la documentation et des fichiers de données, et du code périphérique pour les cas de test ou les utilitaires. Les bêta-testeurs, s'ils sont sélectionnés en privé, seront souvent crédités pour avoir utilisé la version candidate comme s'il s'agissait d'un produit fini. Les tests bêta sont effectués sur le site d'un client ou d'un client et pour tester le logiciel du point de vue de l'utilisateur.

Version stable

Également appelée version de production , la version stable est la dernière version candidate ( RC ) qui a réussi toutes les vérifications/tests. Les bugs restants sont considérés comme acceptables. Cette version passe en production. Certains domaines (par exemple, les distributions Linux ) ont deux types de versions stables : des versions normales ou stables et des versions de support à long terme (LTS) qui sont maintenues pendant une période plus longue.

Libérer

Une fois publié, le logiciel est généralement connu sous le nom de "version stable". Le terme formel dépend souvent du mode de diffusion : support physique, diffusion en ligne ou application web.

Libération à la fabrication (RTM)

Le terme release to manufacturing (RTM), également connu sous le nom de "Going Gold", est un terme utilisé lorsqu'un produit logiciel est prêt à être livré. Cette version peut être signée numériquement , permettant à l'utilisateur final de vérifier l'intégrité et l'authenticité de l'achat du logiciel. Une copie de la version RTM connue sous le nom de « gold master » ou GM [16] [17] est envoyée pour duplication de masse ou réplication de disque le cas échéant. Cette terminologie est tirée de l'industrie du disque audio, en particulier du processus de mastering . La RTM précède la disponibilité générale (GA) lorsque le produit est rendu public. Une version Golden Master (GM) est généralement la version finale d'un logiciel en phase bêta pour les développeurs. Généralement, pour iOS, il s'agit de la version finale avant une version majeure, cependant, il y a eu quelques exceptions.

Il est généralement utilisé dans certains contextes de vente au détail de logiciels de production de masse - par opposition à une production ou un projet de logiciel spécialisé dans une production et une distribution commerciales ou gouvernementales - où le logiciel est vendu dans le cadre d'un ensemble dans une vente de matériel informatique connexe et généralement où le logiciel et le matériel connexe doivent finalement être disponibles et vendus en masse/au public dans les magasins de détail pour indiquer que le logiciel a atteint un niveau de qualité défini et est prêt pour la distribution de masse au détail. RTM pourrait également signifier dans d'autres contextes que le logiciel a été livré ou publié à un client ou un client pour installation ou distribution sur les ordinateurs ou machines des utilisateurs finaux matériels associés. Le terme ne pasdéfinir le mécanisme ou le volume de livraison ; il indique seulement que la qualité est suffisante pour une distribution de masse. Le livrable de l'organisation d'ingénierie se présente fréquemment sous la forme d'un support de référence utilisé pour la duplication ou pour produire l'image pour le Web.

Disponibilité générale (GA)

Étapes du cycle de vie d'un produit : disponibilité générale (GA), annonce de fin de vie (EOLA), date de dernière commande (LOD) et fin de vie (EOL)

La disponibilité générale ( GA ) est l'étape de commercialisation à laquelle toutes les activités de commercialisation nécessaires ont été réalisées et un produit logiciel est disponible à l'achat, en fonction, toutefois, de la langue, de la région, de la disponibilité électronique par rapport aux médias. [18] Les activités de commercialisation pourraient inclure des tests de sécurité et de conformité, ainsi que la localisation et la disponibilité mondiale. Le délai entre RTM et GA peut aller d'une semaine à plusieurs mois dans certains cas avant qu'une version généralement disponible puisse être déclarée en raison du temps nécessaire pour mener à bien toutes les activités de commercialisation requises par GA. À ce stade, le logiciel est « en ligne ».

Publication sur le Web (RTW)

La diffusion sur le Web ( RTW ) ou diffusion Web est un moyen de diffusion de logiciels qui utilise Internet pour la distribution. Aucun support physique n'est produit dans ce type de mécanisme de libération par le fabricant. Les versions Web deviennent de plus en plus courantes à mesure que l'utilisation d'Internet augmente.

Soutenir

Au cours de sa durée de vie prise en charge, le logiciel est parfois soumis à des versions de service, des correctifs ou des packs de service , parfois également appelés « versions provisoires » ou « version de maintenance » (MR). Par exemple, Microsoft a publié trois service packs majeurs pour les éditions 32 bits de Windows XP et deux service packs pour les éditions 64 bits . Ces versions de service contiennent un ensemble de mises à jour, de correctifs et d'améliorations, fournis sous la forme d'un package installable unique. Ils peuvent également implémenter de nouvelles fonctionnalités. Certains logiciels sont publiés dans l'attente d'un support régulier. Les classes de logiciels qui impliquent généralement une assistance prolongée en tant que norme comprennent les suites antivirus etjeux en ligne massivement multijoueurs . Poursuivant cet exemple de Windows XP, Microsoft a proposé des mises à jour payantes pendant cinq ans supplémentaires après la fin du support étendu. Cela signifie que le support a pris fin le 8 avril 2019.

Fin de vie

Lorsqu'un logiciel n'est plus vendu ou pris en charge, on dit que le produit a atteint la fin de sa vie, qu'il est interrompu, retiré, obsolète, abandonné ou obsolète, mais la fidélité des utilisateurs peut continuer à exister pendant un certain temps, même longtemps après sa plate-forme est obsolète - par exemple, l' Atari ST et le Sinclair ZX Spectrum .

Après la date de fin de vie, le développeur ne mettra généralement pas en œuvre de nouvelles fonctionnalités, ne corrigera pas les défauts, bogues ou vulnérabilités existants (qu'ils soient connus avant cette date ou non) ni ne fournira de support pour le produit. Si le développeur le souhaite, il peut publier le code source, de sorte que la plate-forme vivra à nouveau et sera maintenue par des bénévoles.

Voir aussi

Références

  1. ^ "Pourquoi Google a gardé Gmail en "bêta" pendant tant d'années" . 2009-07-07.
  2. ^ "Définition encyclopédique de la version alpha" . Revue PC . Archivé de l'original le 2011-04-27 . Récupéré le 2011-01-12 .
  3. ^ Ince, Darrel, éd. (2013). "Logiciel Alpha". Un dictionnaire de l'Internet (3 éd.) . Presses de l'Université d'Oxford. ISBN 9780191744150. Récupéré le 2019-07-15 .
  4. ^ "Le lexique de la génération suivante 1996 A à Z". Prochaine génération . N° 15. Imaginez les médias . Mars 1996. p. 29. Le logiciel Alpha fonctionne généralement à peine et manque de fonctionnalités majeures telles que le gameplay et les niveaux complets.
  5. ^ Un dictionnaire d'informatique (7e éd.). Presses de l'Université d'Oxford. 2016. p. 44. ISBN 9780199688975.
  6. ^ "Définition de betaware dans l'Encyclopédie en ligne gratuite" . thefreedictionary.com . Récupéré le 06/04/2015 .
  7. ^ "Le lexique de la génération suivante 1996 A à Z". Prochaine génération . N° 15. Imaginez les médias . Mars 1996. p. 30.
  8. ^ "Portée de prise en charge des fonctionnalités d'aperçu technologique" . Chapeau rouge . Récupéré le 18/03/2015 .
  9. ^ Les vérités qui dérangent derrière les bêtas Archivé 2011-04-30 à la Wayback Machine
  10. ^ "En attendant avec Beta'd Breath TidBITS #328 (13 mai 1996)" . Archivé de l'original le 2006-05-15.
  11. ^ "Une longue route sinueuse hors de la version bêta | Tech News sur ZDNet" . 2005-02-14. Archivé de l'original le 2005-02-14 . Récupéré le 2019-04-28 .
  12. ^ "Google Apps n'est plus en version bêta (oui, vraiment)" . Blogue de Google . 2009-07-07. Archivé de l'original le 2011-01-21 . Récupéré le 2011-01-12 .
  13. ^ Manes, Stephen (1984-04-03). "Prendre un pari avec Word Vision" . PC Magazine - Le guide indépendant des ordinateurs personnels IBM . Vol. 3 non. 6. PC Communications Corp. p. 211-221. ISSN 0745-2500 . Archivé de l'original le 2015-03-17 . Récupéré le 15-02-2015 . 
  14. ^ "Apple publie la version bêta publique de Mac OS X" (communiqué de presse). Apple Inc. 2000-09-13. Archivé de l'original le 2011-05-01 . Récupéré le 22/02/2011 .
  15. ^ "Fiche d'information sur l'aperçu de la technologie communautaire d'octobre de Microsoft Windows Vista" (communiqué de presse). Microsoft. Octobre 2005. Archivé de l'original le 2011-04-30 . Récupéré le 22/02/2011 .
  16. ^ "Qu'est-ce que le Golden Master (GM)? - Définition de Techopedia" . Techopedia.com .
  17. ^ "Mac OS X "Gold Master" publié pour la fabrication" . Salle de presse Apple .
  18. ^ Luxembourg, Yvan Philippe (2013-05-20). "Top 200 des termes SAM - Un glossaire des termes de gestion des actifs logiciels" . OMTCO. Archivé de l'original le 2013-08-10 . Récupéré le 21-05-2013 . Cite journal requires |journal= (help)

Bibliographie

  • Livraison continue : versions logicielles fiables grâce à l'automatisation de la construction, des tests et du déploiement par Jez Humble, David Farley ; ISBN 0-321-60191-2